Prev: DADC Up: Map Next: DB7E
DAE7: Routine at DAE7
Used by the routine at E901.
DAE7 LD A,($E569)
DAEA DEC A
DAEB LD ($E56B),A
DAEE LD A,($E56C)
DAF1 LD B,A
DAF2 PUSH BC
DAF3 LD A,($E568)
DAF6 DEC A
DAF7 LD ($E56A),A
DAFA LD B,$04
DAFC PUSH BC
DAFD LD A,($E56A)
DB00 LD B,A
DB01 LD A,($E56B)
DB04 LD C,A
DB05 CALL Calculate_ScreenBlockAddress
DB08 PUSH HL
DB09 DEC B
DB0A CALL Calculate_ScreenBlockAddress
DB0D PUSH HL
DB0E POP DE
DB0F POP HL
DB10 LD A,$08
DB12 LD BC,$0004
DB15 PUSH HL
DB16 PUSH HL
DB17 PUSH DE
DB18 LDIR
DB1A DEC HL
DB1B PUSH HL
DB1C LD (HL),C
DB1D POP DE
DB1E DEC DE
DB1F LD BC,$0003
DB22 LDDR
DB24 POP DE
DB25 POP HL
DB26 INC D
DB27 INC H
DB28 LD BC,$0004
DB2B DEC A
DB2C JP NZ,$DB16
DB2F POP HL
DB30 CALL Calculate_AttributeAddress
DB33 LD HL,$FFE0
DB36 ADD HL,DE
DB37 EX DE,HL
DB38 LD BC,$0004
DB3B LDIR
DB3D LD BC,$0003
DB40 LD A,$47
DB42 DEC HL
DB43 LD (HL),A
DB44 PUSH HL
DB45 POP DE
DB46 DEC DE
DB47 LDDR
DB49 LD HL,$E56A
DB4C INC (HL)
DB4D POP BC
DB4E DJNZ $DAFC
DB50 POP BC
DB51 PUSH BC
DB52 CALL $DB5D
DB55 LD HL,$E568
DB58 DEC (HL)
DB59 POP BC
DB5A DJNZ $DAF2
DB5C RET
This entry point is used by the routines at D989, D9F0 and DA56.
DB5D LD HL,$E56C
DB60 LD A,$14
DB62 SUB (HL)
DB63 LD C,B
DB64 SLA C
DB66 SLA C
DB68 ADD A,C
DB69 LD C,A
DB6A LD A,$05
DB6C LD B,C
DB6D SLA B
DB6F DJNZ $DB6F
DB71 XOR $10
DB73 OUT ($FE),A
DB75 DEC C
DB76 JP NZ,$DB6C
DB79 RET
DB7A OR B
DB7B LD H,B
DB7C EX (SP),HL
DB7D XOR D
Prev: DADC Up: Map Next: DB7E