![]() |
Routines |
| Prev: 8666 | Up: Map | Next: 86B9 |
|
Used by the routines at RunTitleMenu and ShowTitleScreen.
Slides the icon for a player's control method towards the row of the selected method and draws it.
|
||||||||||
| UpdateControlIcon | 8690 | LD A,(IX+$02) | Fetch the selected control method. | |||||||
| 8693 | LD HL,$8704 | Use the table of icon positions at ControlIconPositions. | ||||||||
| 8696 | CALL AddAToHL | Add the control method to the address. | ||||||||
| 8699 | LD A,(HL) | Fetch the target position of the icon. | ||||||||
| 869A | SUB (IX+$01) | Subtract the current position of the icon. | ||||||||
| 869D | JR Z,UpdateControlIcon_Draw | Jump to UpdateControlIcon_Draw if the icon is already in place. | ||||||||
| 869F | BIT 7,A | Jump to UpdateControlIcon_Up if the icon is above the target. | ||||||||
| 86A1 | JR NZ,UpdateControlIcon_Up | |||||||||
| 86A3 | INC (IX+$01) | Move the icon one pixel closer. | ||||||||
| 86A6 | JR UpdateControlIcon_Draw | Jump to UpdateControlIcon_Draw. | ||||||||
| UpdateControlIcon_Up | 86A8 | LD A,(IX+$01) | Fetch the current position of the icon. | |||||||
| 86AB | SUB $04 | Move the icon four pixels closer. | ||||||||
| 86AD | LD (IX+$01),A | Store the new position. | ||||||||
| UpdateControlIcon_Draw | 86B0 | LD L,(IX+$00) | Fetch the pixel position of the icon into HL. | |||||||
| 86B3 | LD H,(IX+$01) | |||||||||
| 86B6 | JP DrawBitmap | Draw the icon. | ||||||||
| Prev: 8666 | Up: Map | Next: 86B9 |