Prev: AF6F Up: Map Next: B61C
B4EC: Print Line
Used by the routines at 8F60, 910C, 93F8, B765 and BDB3.
PrintLine B4EC EX DE,HL
B4ED LD E,(HL)
B4EE INC HL
B4EF LD D,(HL)
B4F0 INC HL
B4F1 LD A,(HL)
B4F2 LD ($B618),A
B4F5 INC HL
B4F6 LD B,(HL)
B4F7 INC HL
B4F8 XOR A
B4F9 LD ($B550),A
B4FC INC A
B4FD LD ($B617),A
B500 LD A,B
B501 AND $3F
B503 LD ($B616),A
B506 BIT 7,B
B508 JR Z,PrintLine_0
B50A BIT 6,B
B50C JR NZ,PrintLine_0
B50E LD A,$0C
B510 LD ($B550),A
B513 LD A,$02
B515 LD ($B617),A
B518 JR PrintLine_0
PrintLine_0 B51A EX DE,HL
B51B PUSH BC
B51C PUSH DE
B51D LD A,H
B51E SUB $03
B520 LD H,A
B521 CALL PrintLine_18
B524 POP DE
B525 POP BC
B526 LD A,H
B527 ADD A,$03
B529 LD H,A
B52A CALL PrintLine_7
B52D LD A,B
B52E AND $3F
B530 LD B,A
PrintLine_1 B531 PUSH BC
B532 CALL PrintLine_2
B535 POP BC
B536 INC DE
B537 DJNZ PrintLine_1
B539 RET
PrintLine_2 B53A PUSH DE
B53B LD A,(DE)
B53C EX DE,HL
B53D PUSH DE
B53E LD L,A
B53F LD H,$00
B541 ADD HL,HL
B542 LD E,L
B543 LD D,H
B544 ADD HL,HL
B545 ADD HL,DE
B546 LD DE,$6A1A
B549 ADD HL,DE
B54A POP DE
B54B EX DE,HL
B54C PUSH HL
B54D LD B,$06
PrintLine_3 B54F JR PrintLine_3
PrintLine_4 B551 LD A,(DE)
B552 LD (HL),A
B553 DEC DE
B554 CALL PrintLine_6
B557 DJNZ PrintLine_4
B559 POP HL
B55A INC L
B55B POP DE
B55C RET
PrintLine_5 B55D LD A,(DE)
B55E LD (HL),A
B55F CALL PrintLine_6
B562 LD A,(DE)
B563 LD (HL),A
B564 CALL PrintLine_6
B567 DEC DE
B568 DJNZ PrintLine_5
B56A POP HL
B56B INC L
B56C POP DE
B56D RET
This entry point is used by the routines at 8F60 and DrawFrame.
PrintLine_6 B56E LD A,H
B56F DEC H
B570 AND $07
B572 RET NZ
B573 LD A,L
B574 SUB $20
B576 LD L,A
B577 RET C
B578 LD A,H
B579 ADD A,$08
B57B LD H,A
B57C RET
This entry point is used by the routines at 8F60 and 974A.
PrintLine_7 B57D LD A,L
B57E RRC A
B580 RRC A
B582 RRC A
B584 AND $1F
B586 LD L,A
B587 LD A,H
B588 RLC A
B58A RLC A
B58C AND $E0
B58E OR L
B58F LD L,A
B590 LD A,H
B591 AND $07
B593 EX AF,AF'
B594 LD A,H
B595 RRC A
B597 RRC A
B599 RRC A
B59B AND $18
B59D OR $40
B59F LD H,A
B5A0 EX AF,AF'
B5A1 OR H
B5A2 LD H,A
B5A3 RET
This entry point is used by the routines at 961C and B61C.
PrintLine_8 B5A4 SRL H
B5A6 SRL H
B5A8 SRL H
B5AA SRL H
B5AC RR L
B5AE SRL H
B5B0 RR L
B5B2 SRL H
B5B4 RR L
B5B6 LD A,H
B5B7 ADD A,$58
B5B9 LD H,A
B5BA RET
This entry point is used by the routines at 8D4C, 8E72, 961C, 974A, B8E6 and BDCF.
PrintLine_9 B5BB ADD A,L
B5BC LD L,A
B5BD RET NC
B5BE INC H
B5BF RET
This entry point is used by the routine at BDCF.
PrintLine_10 B5C0 PUSH HL
B5C1 CALL $C03D
B5C4 LD A,(DE)
B5C5 LD ($B5D9),A
B5C8 ADD A,$1F
B5CA LD ($B5E3),A
B5CD INC DE
B5CE LD A,(DE)
B5CF POP BC
B5D0 PUSH BC
B5D1 CP B
B5D2 JR C,PrintLine_11
B5D4 INC B
B5D5 LD A,B
PrintLine_11 B5D6 INC DE
B5D7 LD C,A
PrintLine_12 B5D8 LD B,$00
PrintLine_13 B5DA LD A,(DE)
B5DB LD (HL),A
B5DC INC DE
B5DD INC L
B5DE DJNZ PrintLine_13
B5E0 DEC L
B5E1 LD A,L
B5E2 SUB $00
B5E4 LD L,A
B5E5 JP NC,PrintLine_14
B5E8 DEC H
PrintLine_14 B5E9 DEC C
B5EA JR NZ,PrintLine_12
B5EC POP HL
B5ED LD A,H
B5EE CP $17
B5F0 RET NZ
B5F1 LD A,$08
B5F3 ADD A,E
B5F4 LD E,A
B5F5 RET NC
B5F6 INC D
B5F7 RET
This entry point is used by the routine at 93F8.
PrintLine_15 B5F8 PUSH HL
B5F9 CALL PrintLine_7
B5FC LD A,(DE)
B5FD LD ($B606),A
B600 INC DE
B601 LD A,(DE)
B602 INC DE
B603 LD C,A
PrintLine_16 B604 PUSH HL
B605 LD B,$00
PrintLine_17 B607 LD A,(DE)
B608 LD (HL),A
B609 INC DE
B60A INC L
B60B DJNZ PrintLine_17
B60D POP HL
B60E CALL PrintLine_6
B611 DEC C
B612 JR NZ,PrintLine_16
B614 POP HL
B615 RET
B616 NOP
B617 NOP
B618 NOP
PrintLine_18 B619 LD DE,$B616
Prev: AF6F Up: Map Next: B61C