Routines |
Prev: 6D12 | Up: Map | Next: 6E32 |
Used by the routines at HandlerCanAccelerate and 6D12.
|
||||
Increase speed (see HandlerCanAccelerate).
|
||||
HandlerAccelerate | 6D73 | LD ($5E0D),A | Write A to Speed. | |
This entry point is used by the routines at HandlerCanAccelerate and 6D12.
|
||||
HandlerAccelerate_0 | 6D76 | LD A,($5E0D) | A=Speed. | |
6D79 | LD HL,$49E2 | HL=49E2. | ||
6D7C | CALL DrawGaugeLine | Call DrawGaugeLine. | ||
6D7F | LD A,($5E11) | A=5E11. | ||
6D82 | INC A | Increment A by one. | ||
6D83 | LD C,A | Store the result in C. | ||
6D84 | LD A,($5E10) | A=Player_Direction. | ||
6D87 | RRA | Shift A right three times. | ||
6D88 | RRA | |||
6D89 | RRA | |||
6D8A | AND %00011111 | Keep bits 0-4. | ||
6D8C | BIT 0,C | |||
6D8E | JR NZ,HandlerAccelerate_1 | |||
6D90 | XOR %00011111 | Unset bits 0-4. | ||
HandlerAccelerate_1 | 6D92 | LD E,A | Create an offset; E=A and D=00. | |
6D93 | LD D,$00 | |||
6D95 | PUSH DE | Stash DE on the stack. | ||
6D96 | LD HL,$7F6B | HL=7F6B + offset. | ||
6D99 | ADD HL,DE | |||
6D9A | LD A,($5E0D) | Create an offset; E=Speed and D=00. | ||
6D9D | LD E,A | |||
6D9E | LD D,$00 | |||
6DA0 | PUSH DE | Stash DE on the stack. | ||
6DA1 | LD A,(HL) | |||
6DA2 | CALL $6F2F | Call 6F2F. | ||
6DA5 | LD A,($5E09) | A=5E09. | ||
6DA8 | LD DE,($5E07) | DE=5E07. | ||
6DAC | CALL $6EC2 | Call 6EC2. | ||
6DAF | BIT 1,C | |||
6DB1 | JR NZ,HandlerAccelerate_6 | |||
6DB3 | ADD HL,DE | |||
6DB4 | ADC A,$00 | |||
6DB6 | CP $0C | |||
6DB8 | JR NC,HandlerAccelerate_7 | |||
HandlerAccelerate_2 | 6DBA | LD ($5E09),A | Store A at 5E09. | |
6DBD | LD ($5E07),HL | Store HL at 5E07. | ||
HandlerAccelerate_3 | 6DC0 | POP HL | ||
6DC1 | POP DE | |||
6DC2 | PUSH HL | |||
6DC3 | LD HL,$7F8A | HL=7F8A. | ||
6DC6 | AND A | |||
6DC7 | SBC HL,DE | |||
6DC9 | LD A,(HL) | |||
6DCA | POP DE | |||
6DCB | CALL $6F2F | Call 6F2F. | ||
6DCE | LD A,($5E06) | A=5E06. | ||
6DD1 | LD DE,($5E04) | DE=5E04. | ||
6DD5 | CALL $6EC2 | Call 6EC2. | ||
6DD8 | DEC C | |||
6DD9 | BIT 1,C | |||
6DDB | JR NZ,$6E32 | |||
6DDD | ADD HL,DE | |||
6DDE | ADC A,$00 | |||
6DE0 | CP $18 | |||
6DE2 | JR NC,HandlerAccelerate_8 | |||
This entry point is used by the routine at 6E32.
|
||||
HandlerAccelerate_4 | 6DE4 | LD ($5E04),HL | ||
6DE7 | LD ($5E06),A | |||
HandlerAccelerate_5 | 6DEA | CALL $6C2D | Call 6C2D. | |
6DED | JR $6E43 | Jump to 6E43. | ||
HandlerAccelerate_6 | 6DEF | EX DE,HL | ||
6DF0 | AND A | |||
6DF1 | SBC HL,DE | |||
6DF3 | SBC A,$00 | |||
6DF5 | JR NZ,HandlerAccelerate_2 | |||
6DF7 | EX AF,AF' | |||
6DF8 | LD A,H | |||
6DF9 | CP $80 | |||
6DFB | JR C,HandlerAccelerate_7 | |||
6DFD | EX AF,AF' | |||
6DFE | JR HandlerAccelerate_2 | |||
HandlerAccelerate_7 | 6E00 | LD A,($5E11) | ||
6E03 | XOR $01 | |||
6E05 | LD ($5E11),A | |||
6E08 | LD A,($5E10) | |||
6E0B | CPL | |||
6E0C | LD ($5E10),A | |||
6E0F | LD A,$05 | |||
6E11 | LD ($5E45),A | |||
6E14 | CALL SoundsBounce | |||
6E17 | JR HandlerAccelerate_3 | |||
This entry point is used by the routine at 6E32.
|
||||
HandlerAccelerate_8 | 6E19 | LD A,($5E11) | ||
6E1C | XOR $03 | |||
6E1E | LD ($5E11),A | |||
6E21 | LD A,($5E10) | |||
6E24 | CPL | |||
6E25 | LD ($5E10),A | |||
6E28 | LD A,$05 | |||
6E2A | LD ($5E45),A | |||
6E2D | CALL SoundsBounce | |||
6E30 | JR HandlerAccelerate_5 |
Prev: 6D12 | Up: Map | Next: 6E32 |