{ Универсальный ввод/вывод в порты } //--------------------- 2003 г ------------------------------ // Дополнительные функции драйвера //-------------------------------- {--------------------------------------------------------------------------- The control units for mass-spectrometer MI1201-AGM (c) Copyright Aleksandrov O.E., 1999, 2003 Molecular Physics department, USTU, Ekaterinsburg, K-2, 620002, RUSSIA phone 75-47-15 E-mail: aleks@dpt.ustu.ru Модуль управления масс-спектрометром МИ1201-АГМ (c) Собственность Александрова О.Е., 1999, 2003 620002, Екатеринбург, К-2, УГТУ, Кафедра молекулярной физики тел. 75-47-15 E-mail: aleks@dpt.ustu.ru ----------------------------------------------------------------------------} { эквиваленты инструкций IN AL,DX и OUT DX,AL для использования в операционных системах Windows NT (через драйвер устройства, см. cDeviceName) и Windows 9x (прямо в порты)} unit PortsIO; interface USES Windows, DirectPortsIO, DriverPortsIO; type tIOType=(ioDirect, ioViaFileSystem, ioError, ioEmulator, ioUnknown); type { Вход: AL=b; DX=Port. Выход: ничего. Изменения: по соглашению о вызовах Delphi;} TOutB_Proc=procedure(b:Byte; Port:word); register; { Вход: AX=Port. Выход: AL=значение в порту. Изменения: по соглашению о вызовах Delphi;} TInB_Func =function(Port:word):byte; register; { ВВОД массива Bytes из порта Port. Возвращает: TRUE, если все хорошо } TInByteBuffer_Func =function(Port:word; var Bytes; Size:word):boolean; register; { ВЫВОД массива Bytes в порт Port. Возвращает: TRUE, если все хорошо } TOutByteBuffer_Func =function(Port:word; const Bytes; Size:word):boolean; register; { Ожидает