Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.20;
Скачать: CL | DM;

Вниз

Ошибка ассемблера в XP   Найти похожие ветки 

 
DimaK ©   (2004-01-08 19:49) [0]

Привер всем!

Такая проблема, на 98 все работало, перешол на XP и возникли проблемы при использовании ассемблерных вставок. Вот мой код:

procedure TForm1.Timer1Timer(Sender: TObject);
var v: Byte; // Для состояния CTS (5 ножка)
begin
// Проверка CTS (5 ножка)
if Label1.Caption="1" then // Если используется COM1
begin
asm
mov AH,3; // Номер функции прерывания 14 BIOS
mov DX,0; // Выбираем порт (0-COM1, 1-COM2)
int 14H; // Получаем байт статуса
mov v,AL; // Записываем значение AL в переменную v
end;
end
else
if Label1.Caption="2" then // Если используется COM2
begin
asm
mov AH,3; // Номер функции прерывания 14 BIOS
mov DX,1; // Выбираем порт (0-COM1, 1-COM2)
int 14H; // Получаем байт статуса
mov v,AL; // Записываем значение AL в переменную v
end;
end;
//
if (v AND 16)=16 then Label2.Caption:="1"
else
if (v AND 0)=0 then Label2.Caption:="0";
end;

Смысл был такой, каждую секунду проверяется COM порт, а именно состояние его 5 ножки. На XP сразу же падает, ругается на строку (int 14H). В чем дело и как это исправить?
Заранее спасибо/


 
KSergey ©   (2004-01-09 08:39) [1]

На NT платформе нельзя напрямую из пользовательских программ обращаться к аппаратуре.
Изучайте написание драйверов или используйте имеющиеся готовые наработки по этой теме.
Искать на торри.



Страницы: 1 вся ветка

Текущий архив: 2004.01.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
1-63204
Андреев
2004-01-09 21:28
2004.01.20
Новый пункт в MainMenu


14-63337
Passlight
2003-12-30 13:27
2004.01.20
Яндекс и гугль - не предлагать :-)


1-63073
Delph
2004-01-08 16:10
2004.01.20
TStrings


14-63358
Борец Анатолий
2003-12-10 15:44
2004.01.20
Где взять Delphi 7 Help на Русском?


3-62964
Элина
2003-12-23 17:29
2004.01.20
BDE программно