Prev: 948C Up: Map Next: 9500
94A8: Handle description string control values.
Used by the routine at Bg_CalcAndDraw.
Input
Output
The follow are control codes that can exist within a description string.
Bg_StrCtrlCodes 94A8 LD A,(IX+$00) check for 'skip' value, if not check for other values.
94AB AND $F0
94AD CP $00
94AF JR NZ,Bg_StrCtrlCodes_0
94B1 XOR (IX+$00) String value means skip by the number of column units.
94B4 LD E,A
94B5 LD D,$00
94B7 LD HL,(Bg_ColumnsLeft)
94BA SBC HL,DE
94BC JR C,Bg_BlitItemEnd
94BE JP Bg_CalcAndDraw_13
Bg_StrCtrlCodes_0 94C1 CP $10 Reverse image value.
94C3 JR NZ,Bg_StrCtrlCodes_1
94C5 LD A,$80
94C7 LD (_92d8_ReverseBit),A
94CA INC IX
94CC POP BC
94CD DEC C
94CE JP NZ,Bg_CalcAndDraw_11
94D1 RET
Bg_StrCtrlCodes_1 94D2 CP $20
94D4 JR NZ,Bg_StrCtrlCodes_2
94D6 POP BC
94D7 XOR (IX+$00)
94DA LD B,A
94DB DEC C
94DC RET Z
94DD INC IX
94DF LD ($92D9),IX
94E3 LD ($92DB),BC
94E7 JP Bg_CalcAndDraw_11
Bg_StrCtrlCodes_2 94EA CP $60
94EC JR NZ,Bg_StrCtrlCodes_3
94EE XOR (IX+$00)
94F1 LD (Draw_RoomObjectBmpIndex),A
94F4 LD HL,(Bg_ColumnsLeft)
94F7 LD ($92E3),HL
94FA JP Bg_CalcAndDraw_14
Bg_StrCtrlCodes_3 94FD JP Bg_BlitItemEnd Ignore any unknown codes by ending the walking of string.
Prev: 948C Up: Map Next: 9500