9B14: Drawing mode 6: furniture's pixels mirrored across the top-left to bottom-right diagonal
| DRAW_FLIP_DIAGONAL |
9B14 |
POP BC |
|
9B15 |
CALL SPRITE_COMBINE_OPCODE |
|
9B18 |
LD (DRAW_FLIP_DIAGONAL_OP),A |
|
9B1B |
CALL FETCH_SPRITE |
|
9B1E |
LD A,B |
|
9B1F |
EXX |
|
9B20 |
LD B,A |
|
9B21 |
LD L,$01 |
|
9B23 |
EXX |
|
9B24 |
CALL NEXT_SPRITE_ROW |
|
9B27 |
DEC DE |
|
9B28 |
CALL START_AT_LAST_ROW |
| DRAW_FLIP_DIAGONAL_0 |
9B2B |
PUSH BC |
|
9B2C |
PUSH DE |
|
9B2D |
PUSH HL |
| DRAW_FLIP_DIAGONAL_1 |
9B2E |
LD A,(DE) |
|
9B2F |
EXX |
|
9B30 |
AND L |
|
9B31 |
JR Z,DRAW_FLIP_DIAGONAL_2 |
|
9B33 |
SCF |
| DRAW_FLIP_DIAGONAL_2 |
9B34 |
RL H |
|
9B36 |
EXX |
|
9B37 |
CALL PREVIOUS_SPRITE_ROW |
|
9B3A |
DEC C |
|
9B3B |
LD A,C |
|
9B3C |
AND $07 |
|
9B3E |
JR NZ,DRAW_FLIP_DIAGONAL_1 |
|
9B40 |
EXX |
|
9B41 |
LD A,H |
|
9B42 |
EXX |
| DRAW_FLIP_DIAGONAL_OP |
9B43 |
NOP |
|
9B44 |
LD (HL),A |
|
9B45 |
INC L |
|
9B46 |
LD A,C |
|
9B47 |
AND A |
|
9B48 |
JR NZ,DRAW_FLIP_DIAGONAL_1 |
|
9B4A |
POP HL |
|
9B4B |
CALL SCREEN_ROW_UP |
|
9B4E |
POP DE |
|
9B4F |
POP BC |
|
9B50 |
EXX |
|
9B51 |
RLC L |
|
9B53 |
EXX |
|
9B54 |
JR NC,DRAW_FLIP_DIAGONAL_0 |
|
9B56 |
EXX |
|
9B57 |
DEC B |
|
9B58 |
EXX |
|
9B59 |
RET Z |
|
9B5A |
DEC DE |
|
9B5B |
JR DRAW_FLIP_DIAGONAL_0 |