Как сделать процедуру которую можно использовать как прерывание. Я знаю что такой пример вызывает Stack overflow, потому что такой вызов отличается от обычного передачей еще и регистра флагов, котрый из стека никто не удаляет, так что можно сделать? Заранее спасибо.
Процедура должна быть паскалевская. И решение проблемы ЖЕЛАТЕЛЬНО(но не обязательно) тоже на Паскале без asm вставок.
Код | var Reg: Registers;
procedure Timer; far; begin
end;
begin Reg.dx := ofs(Timer); Reg.ds := seg(Timer); Reg.ax := $251c; intr($21,Reg);
while true do; end.
|
[Модератор: Используйте пожалуйста теги [ code=delphi][/code]] |