![]() |
Routines |
| Prev: 99E5 | Up: Map | Next: 9A50 |
|
Entry 2 of PIXEL_DRAWERS. Each screen byte is gathered a bit at a time from one bit column of eight successive rows, starting from the right-hand column, so the source's bottom edge ends up on the left: the picture turned a quarter clockwise. The combining instruction is patched in by SPRITE_COMBINE_OPCODE, as in every routine of the two tables.
|
||||
| DRAW_TURNED_RIGHT | 9A0A | POP BC | ||
| 9A0B | CALL SPRITE_COMBINE_OPCODE | |||
| 9A0E | LD (DRAW_TURNED_RIGHT_OP),A | |||
| 9A11 | CALL FETCH_SPRITE | |||
| 9A14 | LD A,B | |||
| 9A15 | EXX | |||
| 9A16 | LD L,$01 | |||
| 9A18 | LD B,A | |||
| 9A19 | EXX | |||
| 9A1A | CALL NEXT_SPRITE_ROW | |||
| 9A1D | DEC DE | |||
| DRAW_TURNED_RIGHT_0 | 9A1E | PUSH BC | ||
| 9A1F | PUSH DE | |||
| 9A20 | PUSH HL | |||
| DRAW_TURNED_RIGHT_1 | 9A21 | LD A,(DE) | ||
| 9A22 | EXX | |||
| 9A23 | AND L | |||
| 9A24 | JR Z,DRAW_TURNED_RIGHT_2 | |||
| 9A26 | SCF | |||
| DRAW_TURNED_RIGHT_2 | 9A27 | RL H | ||
| 9A29 | EXX | |||
| 9A2A | CALL NEXT_SPRITE_ROW | |||
| 9A2D | DEC C | |||
| 9A2E | LD A,C | |||
| 9A2F | AND $07 | |||
| 9A31 | JR NZ,DRAW_TURNED_RIGHT_1 | |||
| 9A33 | EXX | |||
| 9A34 | LD A,H | |||
| 9A35 | EXX | |||
| DRAW_TURNED_RIGHT_OP | 9A36 | NOP | ||
| 9A37 | LD (HL),A | |||
| 9A38 | INC L | |||
| 9A39 | LD A,C | |||
| 9A3A | AND A | |||
| 9A3B | JR NZ,DRAW_TURNED_RIGHT_1 | |||
| 9A3D | POP HL | |||
| 9A3E | CALL SCREEN_ROW_UP | |||
| 9A41 | POP DE | |||
| 9A42 | POP BC | |||
| 9A43 | EXX | |||
| 9A44 | RLC L | |||
| 9A46 | EXX | |||
| 9A47 | JR NC,DRAW_TURNED_RIGHT_0 | |||
| 9A49 | EXX | |||
| 9A4A | DEC B | |||
| 9A4B | EXX | |||
| 9A4C | RET Z | |||
| 9A4D | DEC DE | |||
| 9A4E | JR DRAW_TURNED_RIGHT_0 | |||
| Prev: 99E5 | Up: Map | Next: 9A50 |