- Синтаксис языка
- Типы данных
- Стандартные модули
- Процедуры и функции
- Зарезервированные слова
- Директивы компилятора
- Сообщения об ошибках
- Примеры программ
- Описание среды разработки
|
|||
Процедура GetIntVecМодуль WinDOSВозвращает адрес, сохраненный в заданном векторе прерывания. Объявление: Procedure GetIntVec(IntNo : Byte; Var Vector : Pointer); Режим: Замечания: Пример: Uses WinDos, Crt; Var Int1CSave : Pointer; Fl : Boolean; {$F+} Procedure TimerHandler; Interrupt; Begin { ISR на события таймера } {*** Обратитесь к документации по DDK или DPMI для информации по созданию ISR *** } { ISR на события таймера вызываются 18 раз в секунду } { Данный пример включает внутренний динамик 9 раз в секунду с частотой 1000 } If Fl Then NoSound Else Sound(1000); Fl:=Not Fl; End; {$F-} Begin { Получаем старый вектор прерывания $1C - (системный таймер) } { и сохраняем его в переменной Int1CSave } GetIntVec($1C, Int1CSave); { Переназначаем его на нашу процедуру обработки прерывания } SetIntVec($1C, @TimerHandler); WriteLn('Нажмите любую клавишу для снятия обработчика...'); Repeat Until Keypressed; { Возвращаем обработчик прерывания в исходное состояние } SetIntVec($1C, Int1CSave); End. См. также: SetIntVec | |||
© 2009–2023 Russian Pascal Developer Network.
Техническая площадка: ISBIZ Хостинг |