Routines |
Prev: A77E | Up: Map | Next: A7E1 |
Used by the routine at Player_Name.
|
||||||||
Controller_NameSelect | A78C | LD A,($AB8A) | A=*Game_Flags. | |||||
A78F | AND %11110000 | Keep only bits 4-7. | ||||||
A791 | OR %00001000 | Set bit 3. | ||||||
A793 | LD ($AB8A),A | Write A back to Game_Flags. | ||||||
Handler_NameSelect_Loop | A796 | LD A,$00 | Write 00 to CC3D. | |||||
A798 | LD ($CC3D),A | |||||||
This entry point is used by the routine at Handler_NameSelect_Up.
|
||||||||
Controller_NameSelect_0 | A79B | PUSH HL | Stash HL on the stack. | |||||
A79C | LD B,$0A | B=0A. | ||||||
Controller_NameSelect_1 | A79E | CALL $CB9C | Call CB9C. | |||||
A7A1 | LD HL,$CC3D | HL=CC3D. | ||||||
A7A4 | LD (HL),$00 | Write 00 to *HL. | ||||||
A7A6 | DJNZ Controller_NameSelect_1 | Decrease counter by one and loop back to Controller_NameSelect_1 until counter is zero. | ||||||
A7A8 | LD (HL),$01 | Write 01 to *HL. | ||||||
A7AA | LD HL,$0080 | Write 0080 HL to *CC3B. | ||||||
A7AD | LD ($CC3B),HL | |||||||
A7B0 | CALL Handler_DebounceSpace | Call Handler_DebounceSpace. | ||||||
A7B3 | POP HL | Restore HL from the stack. | ||||||
A7B4 | CALL Handler_Controls | Call Handler_Controls. | ||||||
A7B7 | LD A,E | A=E. | ||||||
Was "up" pressed?
|
||||||||
A7B8 | CP $18 | Jump to Handler_NameSelect_Up if A is 18 | ||||||
A7BA | JR Z,Handler_NameSelect_Up | |||||||
Was "down" pressed?
|
||||||||
A7BC | CP $08 | Jump to Handler_NameSelect_Down if A is 08. | ||||||
A7BE | JR Z,Handler_NameSelect_Down | |||||||
Was "fire" not pressed?
|
||||||||
A7C0 | CP $80 | Jump to Handler_NameSelect_Loop if A is not 80. | ||||||
A7C2 | JR NZ,Handler_NameSelect_Loop | |||||||
A7C4 | PUSH HL | Stash HL on the stack. | ||||||
A7C5 | LD HL,$0040 | Write 0040 to *CC3B. | ||||||
A7C8 | LD ($CC3B),HL | |||||||
A7CB | LD HL,$AB8A | Decrease *Game_Flags by one. | ||||||
A7CE | DEC (HL) | |||||||
A7CF | LD A,$07 | A=07. | ||||||
A7D1 | AND (HL) | Merge the bits from *HL. | ||||||
A7D2 | JR Z,Controller_NameSelect_2 | Jump to Controller_NameSelect_2 if the result is zero. | ||||||
A7D4 | CALL $A83A | Call A83A. | ||||||
A7D7 | CALL Handler_Debounce_Controls | Call Handler_Debounce_Controls. | ||||||
A7DA | POP HL | Restore HL from the stack. | ||||||
A7DB | INC HL | Increment HL by one. | ||||||
A7DC | HALT | Halt operation (suspend CPU until the next interrupt). | ||||||
A7DD | JR Controller_NameSelect_0 | Jump to Controller_NameSelect_0. | ||||||
Controller_NameSelect_2 | A7DF | POP HL | Restore HL from the stack. | |||||
A7E0 | RET | Return. |
Prev: A77E | Up: Map | Next: A7E1 |