Mr. Boom
05.08.2002, 21:08
function Portlesen(addre:word):integer;
var x : char;
begin
asm
MOV DX,addre; { 279h, wäre hier auch direkt möglich}
IN AL,DX; ------------------ Fehler!!! ------------------------
MOV x,AL;
end;
Portlesen:=Ord(x);
end;
Die Zeile (IN AL,DX) funktioniert unter NT-basierenden Systemen (sprich: XP) nicht. Irgendeine Schutzverletzung tritt dort ein. Unter Win9x funktoniert alles wunderbar. Wie kann man dieses Problem lösen???
Ich will unter NT-basierenden System eine Schnittstelle ansteuern. Hier ist es die LPT-Schnittstelle.
var x : char;
begin
asm
MOV DX,addre; { 279h, wäre hier auch direkt möglich}
IN AL,DX; ------------------ Fehler!!! ------------------------
MOV x,AL;
end;
Portlesen:=Ord(x);
end;
Die Zeile (IN AL,DX) funktioniert unter NT-basierenden Systemen (sprich: XP) nicht. Irgendeine Schutzverletzung tritt dort ein. Unter Win9x funktoniert alles wunderbar. Wie kann man dieses Problem lösen???
Ich will unter NT-basierenden System eine Schnittstelle ansteuern. Hier ist es die LPT-Schnittstelle.