Prev: DC5C Up: Map Next: DD63
DC74: Routine at DC74
Used by the routine at E901.
DC74 LD IX,$DD63
DC78 LD B,$00
DC7A LD A,($E0D2)
DC7D LD C,$03
DC7F CP $15
DC81 JP M,$DC8B
DC84 SUB $14
DC86 DEC C
DC87 JR NZ,$DC7F
DC89 LD A,$01
DC8B DEC A
DC8C RLCA
DC8D RLCA
DC8E LD C,A
DC8F ADD IX,BC
DC91 LD C,(IX+$00)
DC94 LD B,(IX+$01)
DC97 LD E,(IX+$02)
DC9A LD D,(IX+$03)
DC9D LD IX,($E0D3)
DCA1 ADD IX,BC
DCA3 LD HL,($E0D3)
DCA6 LD BC,$0A00
DCA9 ADD HL,BC
DCAA ADD HL,DE
DCAB PUSH HL
DCAC POP IY
DCAE LD B,$04
DCB0 LD H,$28
DCB2 PUSH BC
DCB3 LD A,$08
DCB5 PUSH IX
DCB7 LD BC,$0014
DCBA PUSH AF
DCBB LD L,A
DCBC CALL $DC5C
DCBF LD A,(IX+$00)
DCC2 LD (DE),A
DCC3 ADD IX,BC
DCC5 POP AF
DCC6 INC A
DCC7 CP $28
DCC9 JP NZ,$DCBA
DCCC PUSH IY
DCCE POP IX
DCD0 LD DE,$5825
DCD3 LD B,$04
DCD5 PUSH HL
DCD6 PUSH BC
DCD7 LD A,(IX+$00)
DCDA LD (DE),A
DCDB LD BC,$0014
DCDE ADD IX,BC
DCE0 LD HL,$0020
DCE3 ADD HL,DE
DCE4 EX DE,HL
DCE5 POP BC
DCE6 DJNZ $DCD6
DCE8 POP HL
DCE9 POP IX
DCEB POP BC
DCEC LD A,B
DCED PUSH BC
DCEE PUSH IX
DCF0 PUSH HL
DCF1 CP $01
DCF3 JP Z,$DD56
DCF6 LD A,$05
DCF8 LD C,$23
DCFA LD B,C
DCFB SLA B
DCFD DJNZ $DCFD
DCFF XOR $10
DD01 OUT ($FE),A
DD03 DEC C
DD04 JP NZ,$DCFA
DD07 LD HL,$1388
DD0A LD DE,$04E2
DD0D LD A,(HL)
DD0E AND $F0
DD10 OR $05
DD12 OUT ($FE),A
DD14 INC HL
DD15 DEC DE
DD16 LD A,D
DD17 OR E
DD18 JP NZ,$DD0D
DD1B LD A,$01
DD1D LD ($E56A),A
DD20 LD B,$04
DD22 PUSH BC
DD23 LD A,($E56A)
DD26 LD B,A
DD27 LD C,$07
DD29 CALL Calculate_ScreenBlockAddress
DD2C LD A,$08
DD2E PUSH HL
DD2F LD BC,$0003
DD32 PUSH HL
DD33 POP DE
DD34 INC DE
DD35 PUSH HL
DD36 LDDR
DD38 INC HL
DD39 LD (HL),C
DD3A POP HL
DD3B INC H
DD3C DEC A
DD3D JP NZ,$DD2F
DD40 POP HL
DD41 CALL Calculate_AttributeAddress
DD44 PUSH DE
DD45 POP HL
DD46 INC DE
DD47 LD BC,$0003
DD4A LDDR
DD4C LD A,$00
DD4E LD (DE),A
DD4F LD HL,$E56A
DD52 INC (HL)
DD53 POP BC
DD54 DJNZ $DD22
DD56 POP HL
DD57 POP IX
DD59 DEC IX
DD5B DEC IY
DD5D POP BC
DD5E DEC B
DD5F JP NZ,$DCB2
DD62 RET
Prev: DC5C Up: Map Next: DD63