Windows.


- 3


mov ah, byte ptr stick ;

;

r l,l ; AL

r , ;

mov dx,JOYPORT ; DX

out dx,al ;

discharge:

in al,dx ;

test al,ah ; ?

loopne discharge ; -

sti ;

, ;

sub , ;

} //

} //

//////////////////////////////////////////////////////

unsigned int Joystick_Bios(unsigned char stick)

(

//

// BIOS

union _REGS inregs, outregs;

inregs.h.ah = 084; // 84h

inregs.x.dx = 001;

// 01h -

_int86(015,&inregs, &outregs); // BIOS

//

switch(stick)

{

case JOYSTICK_1_X:

{

return(outregs.x.ax);

} break;

case JOYSTICK1_Y:

{

return(outregs. x. bx} ;

} break;

case JOYSTICK_2_X:

{

return(outregs.x.ex);

} break;

case JOYSTICK_2_Y:

{

return(outregs.x.dx) ;

} break;

default:break;

} // switch

} //

///////////////////////////////////////////////////////

unsigned char Buttons_Bios(unsigned char button)

{

// ,

// BIOS

union _REGS inregs, outregs;

inregs.h.ah = 084; // - 84h

inregs.x.dx = 000; // 0 -

_int86 (015, &inregs, &outregs);

//

return((~outregs.h.al) & button);

} // //////////////////////////////////////////////////////

void Joystick_Calibrate(int stick)

{

//