Portzugriff unter Windows


Indem Sie Ports direkt ansteuern, haben Sie einen direkten Zugriff auf Peripheriegeräte. Unter DOS und mit Delphi 1 haben Sie über das port- Array Zugriff (siehe unten). Dieses Array steht jedoch unter den 32-Bit Entwicklungsumgebungen (ab Delphi 2) nicht mehr zur Verfügung. Mit ein wenig Assembler (siehe unten) haben Sie auch dort Zugriff auf die Ports. Die Variable ist vom Typ Byte und die Portadresse vom Typ Word. Mit InPort lesen Sie und mit OutPort schreiben Sie ein Wort eines Portes.

Zugriff unter DOS bzw. Delphi 1:

Eingabe: Variable:= port[Portadresse];
Ausgabe: port[Portadresse]:= Variable;

Zugriff ab Delphi 2:

function InPort(Portadresse: word): byte; assembler; stdcall;
asm
  mov dx, Portadresse;
  in al, dx;
end;

procedure OutPort(Portadresse: word; Datenbyte: byte); assembler; stdcall;
asm
  mov al, Datenbyte;
  mov dx, Portadresse;
  out dx, al;
end;