This site hosted by Free.ProHosting.com
Google
06/23/04

New code

A simple joystick routine:

Here's a newer version: Joyfinal04.asm
Here's the original version: Joyfinal.asm
               ;---------------------------------------
2000 AD 00 DC  TOP      LDA 56320    ;POLL JOYSTICK
2003 A0 30              LDY #$30     ;ONLY USING Y FOR
                                     ;THE FILL ROUTINE
               ;---------------------------------------
2005 C9 7E              CMP #$7E     ;UP    JOY02
2007 F0 1D              BEQ UP
2009 C9 7D              CMP #$7D     ;DOWN  JOY02
200B F0 1F              BEQ DOWN
200D C9 7B              CMP #$7B     ;LEFT  JOY02
200F F0 21              BEQ LEFT
2011 C9 77              CMP #$77     ;RIGHT JOY02
2013 F0 23              BEQ RIGHT
2015 C9 6F              CMP #$6F     ;FIRE  JOY02
2017 F0 25              BEQ FIRE
               ;---------------------------------------
2019 A9 31              LDA #$31     ;LOAD A WITH '1'
201B A2 08              LDX #$08     ;LOAD X WITH 8
201D 9D FF 03  RLOOP    STA $03FF,X  ;STORE A IN $03FF
                                     ;OFFSET BY X
2020 CA                 DEX          ;DECREMENT X
2021 D0 FA              BNE RLOOP    ;IF X=0 THEN
2023 4C 00 20           JMP TOP      ;JUMP TO TOP
               ;---------------------------------------
2026 8C 07 04  UP       STY $0407    ;PUT Y IN POS 8
2029 4C 00 20           JMP TOP
202C 8C 06 04  DOWN     STY $0406    ;PUT Y IN POS 7
202F 4C 00 20           JMP TOP
2032 8C 05 04  LEFT     STY $0405    ;PUT Y IN POS 6
2035 4C 00 20           JMP TOP
2038 8C 04 04  RIGHT    STY $0404    ;PUT Y IN POS 5
203B 4C 00 20           JMP TOP
203E 8C 03 04  FIRE     STY $0403    ;PUT Y IN POS 4
2041 4C 00 20           JMP TOP
               ;---------------------------------------