Prev: D0D4 Up: Map Next: D108
D0E2: Set Kempston Joystick
Used by the routine at TitleScreen.
SetKempstonJoystick D0E2 LD DE,$D9B6 DE=Messaging_ReleaseJoystick.
D0E5 CALL PrintString Call PrintString.
Pause to let the message sink in...
D0E8 LD B,$64 B=64 (pause loops).
SetKempstonJoystick_PauseLoop D0EA PUSH BC Stash the pause loop counter on the stack.
D0EB CALL SmallPause Call SmallPause.
D0EE POP BC Restore the pause loop counter from the stack.
D0EF DJNZ SetKempstonJoystick_PauseLoop Decrease the pause loop counter by one and loop back to SetKempstonJoystick_PauseLoop until the counter is zero.
After the above loop we loop again, this gives the player the chance to abort setting this control method.
D0F1 LD BC,$03E8 BC=03E8 (counter).
SetKempstonJoystick_Read D0F4 IN A,($1F) Read from the Kempston joystick port.
D0F6 CP $00 Jump to TitleScreen if any control is being pressed.
D0F8 JP NZ,TitleScreen
D0FB DEC BC Decrease BC by one.
D0FC LD A,B Jump to SetKempstonJoystick_Read until BC is zero.
D0FD OR C
D0FE JR NZ,SetKempstonJoystick_Read
Else, finally, set this control method.
D100 LD A,$0C Set Kempston joystick (0C) to *ControlMethod.
D102 LD ($5BEA),A
D105 JP Print_TitleScreen Jump to Print_TitleScreen.
Prev: D0D4 Up: Map Next: D108