реклама на сайте
подробности

 
 
> Вопрос про прерывания в паскале, Как кроме моего оставить и штатное?
Diusha
сообщение Aug 26 2008, 14:14
Сообщение #1


Вечный студент
****

Группа: Участник
Сообщений: 500
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Упрощенно прога:

Var xxx : pointer;
{$F+}
Procedure pr; interrupt;
begin
. . . . . .
end;
{F-}
BEGIN
getintvec($08, xxx);
setintvec($08, addr(pr));
. . . . . . .
END.

Вместо срандартного прерывания $08 назначена и выполняется моя процедурка pr, это работает. А как бы так сделать, чтобы кроме pr выполнялась и штатная ПП этого прерывания? (то биш в pr надо как-то вставить CALL (xxx) ???)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AHTOXA
сообщение Aug 26 2008, 16:09
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Я делал так:
Код
  GetIntVec($08,Save_08);
  SetIntVec($60,Save_08);
  SetIntVec($08,@Int_08);

и в прерывании:
Код
procedure Int_08;
begin
...
  Intr($60,Reg);
  Port[$20]:=$20;
end;

Но я перепрограммировал таймер, потому вынужден был висеть на 8м прерывании. Если такой нужды нет, то лучше 1C конечно.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 26 2008, 17:31
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AHTOXA @ Aug 26 2008, 18:09) *
SetIntVec($60,Save_08);

Только вот гарантий свободости 60h вектора в общем случае нет.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Aug 26 2008, 18:09
Сообщение #4


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Конечно. Но это не помешает работать нашей программеsmile.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 26 2008, 18:18
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AHTOXA @ Aug 26 2008, 20:09) *
Конечно. Но это не помешает работать нашей программеsmile.gif

Еще как помешает sad.gif - именно в качестве софтового прерывания его именно и используют, например Ethernet пакетный драйвер попытается общаться с обработчиком.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Aug 26 2008, 18:31
Сообщение #6


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(zltigo @ Aug 27 2008, 00:18) *
Еще как помешает sad.gif - именно в качестве софтового прерывания его именно и используют, например Ethernet пакетный драйвер попытается общаться с обработчиком.


Это настраивается. И в пакетном драйвере, и в программе.
Однако же не припоминаю конфликтов. У меня это работало под всеми дос от 3.3 до 7.0 и с несколькими драйверами сетевух.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Diusha   Вопрос про прерывания в паскале   Aug 26 2008, 14:14
- - zltigo   Цитата(Diusha @ Aug 26 2008, 16:14) ...то...   Aug 26 2008, 14:27
- - Diusha   1. А Вы не могли бы написать с правильным синтакси...   Aug 26 2008, 14:47
|- - zltigo   Цитата(Diusha @ Aug 26 2008, 16:47) 1. А ...   Aug 26 2008, 16:03
|- - zltigo   Цитата(AHTOXA @ Aug 26 2008, 20:31) Это н...   Aug 26 2008, 18:38
- - Diusha   zltigo, AHTOXA, спасибо!   Aug 26 2008, 16:24
- - Demeny   Не нужно придумывать лишнего, усложняя себе жизнь ...   Aug 27 2008, 05:33
- - AHTOXA   Цитата(zltigo @ Aug 27 2008, 00:38) Естес...   Aug 27 2008, 08:11
|- - zltigo   Цитата(AHTOXA @ Aug 27 2008, 10:11) А как...   Aug 27 2008, 08:36
|- - Demeny   Цитата(AHTOXA @ Aug 27 2008, 12:11) А где...   Aug 27 2008, 08:38
|- - zltigo   Цитата(Demeny @ Aug 27 2008, 10:38) Сохра...   Aug 27 2008, 08:49
|- - Demeny   Цитата(zltigo @ Aug 27 2008, 12:49) Понят...   Aug 27 2008, 09:25
- - AHTOXA   Цитата(zltigo @ Aug 27 2008, 14:36) Надо ...   Aug 27 2008, 10:15
- - zltigo   Цитата(AHTOXA @ Aug 27 2008, 12:15) Челов...   Aug 27 2008, 16:29
- - AHTOXA   Цитата(zltigo @ Aug 27 2008, 22:29) Помоч...   Aug 27 2008, 17:38
- - zltigo   Цитата(AHTOXA @ Aug 27 2008, 19:38) Однак...   Aug 27 2008, 19:07
- - AHTOXA   Цитата(zltigo @ Aug 28 2008, 01:07) Декла...   Aug 27 2008, 19:18
- - zltigo   Цитата(AHTOXA @ Aug 27 2008, 21:18) Кстат...   Aug 27 2008, 19:25
- - AHTOXA   Цитата(zltigo @ Aug 28 2008, 01:25) Для Б...   Aug 28 2008, 05:30


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 2nd August 2025 - 15:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01451 секунд с 7
ELECTRONIX ©2004-2016