procedure Joy_Init(var x,y,taste1,taste2: integer; max,xjust,yjust:word);
begin
asm
jmp @begin 
@init:
mov dx,$201 {Joystick Interrupt}
@x:
in al,dx
test al,3
jnz @x
mov cx,max {Parameter max holen}
out dx,al
ret
@begin:
call @init {Initroutine aufrufen}
in al,dx
mov al,$10 {Abfrage der Joysticktaste 1}
jnz @1
mov bx,1
@1:
les di,[bp+14]
mov es:[di],bx
mov bx,0
test al,$20 {Abfrage der Joysticktaste 2}
jnz @2
mov bx,1
@2:
les di,[bp+10]
mov es:[di],bx
@3:
in al,dx
test al,1 {Abfrage Joystick links oder rechts}
loopnz @3
mov bx,xjust
sub bx,cx
les di,[bp+22]
mov es:[di],bx
call @Init
@4:
in al,dx
test al,2 {Abfrage Joystick oben oder unten}
loopnz @4
mov bx,yjust
sub bx,cx
les di,[bp+18]
mov es:[di],bx
end;
end;