Prev: 9A47 Up: Map Next: 9BDE
9A4C: Draw a sprite
Used by the routines at 9D08, 9E98, A0C8, A256 and A37F.
Input
HL Co-ordinates
A ID of the sprite to draw
9A4C PUSH AF
9A4D PUSH BC
9A4E PUSH DE
9A4F PUSH IX
9A51 PUSH HL
9A52 LD C,L
9A53 LD HL,$8DF0
9A56 LD E,A
9A57 XOR A
9A58 RL E
9A5A RLA
9A5B RL E
9A5D RLA
9A5E RL E
9A60 RLA
9A61 RL E
9A63 RLA
9A64 RL E
9A66 RLA
9A67 LD D,A
9A68 ADD HL,DE
9A69 LD DE,$72A0
9A6C LD B,$10
9A6E XOR A
9A6F LDI
9A71 LDI
9A73 INC BC
9A74 INC BC
9A75 LD (DE),A
9A76 INC DE
9A77 DJNZ $9A6F
9A79 LD A,$07
9A7B AND C
9A7C CP $00
9A7E JR Z,$9A93
9A80 LD B,$10
9A82 LD HL,$72A0
9A85 SRL (HL)
9A87 INC HL
9A88 RR (HL)
9A8A INC HL
9A8B RR (HL)
9A8D INC HL
9A8E DJNZ $9A85
9A90 DEC A
9A91 JR NZ,$9A80
9A93 POP HL
9A94 PUSH HL
9A95 LD IX,$72DD
9A99 EX DE,HL
9A9A LD HL,$61A8
9A9D LD A,D
9A9E AND $F8
9AA0 LD B,$00
9AA2 SLA A
9AA4 RL B
9AA6 SLA A
9AA8 RL B
9AAA LD C,A
9AAB ADD HL,BC
9AAC LD B,$00
9AAE LD C,E
9AAF SRL C
9AB1 SRL C
9AB3 SRL C
9AB5 ADD HL,BC
9AB6 EX DE,HL
9AB7 LD BC,$0303
9ABA PUSH BC
9ABB LD HL,$84F0
9ABE LD A,(DE)
9ABF LD B,$00
9AC1 SLA A
9AC3 RL B
9AC5 SLA A
9AC7 RL B
9AC9 SLA A
9ACB RL B
9ACD LD C,A
9ACE ADD HL,BC
9ACF LD B,$08
9AD1 LD A,(HL)
9AD2 LD (IX+$00),A
9AD5 INC IX
9AD7 INC IX
9AD9 INC IX
9ADB INC HL
9ADC DJNZ $9AD1
9ADE LD B,$17
9AE0 DEC IX
9AE2 DJNZ $9AE0
9AE4 POP BC
9AE5 INC DE
9AE6 DJNZ $9ABA
9AE8 EX DE,HL
9AE9 LD DE,$0023
9AEC AND A
9AED SBC HL,DE
9AEF LD DE,$0015
9AF2 ADD IX,DE
9AF4 EX DE,HL
9AF5 LD B,$03
9AF7 DEC C
9AF8 JR NZ,$9ABA
9AFA POP HL
9AFB PUSH HL
9AFC LD A,H
9AFD AND $07
9AFF XOR $07
9B01 LD H,A
9B02 SLA A
9B04 ADD A,H
9B05 LD C,A
9B06 LD B,$00
9B08 LD HL,$72DD
9B0B LD DE,$72A0
9B0E ADD HL,BC
9B0F LD B,$30
9B11 LD A,(DE)
9B12 OR (HL)
9B13 LD (DE),A
9B14 INC DE
9B15 INC HL
9B16 DJNZ $9B11
9B18 POP DE
9B19 PUSH DE
9B1A LD HL,$4000
9B1D LD BC,$0800
9B20 LD A,D
9B21 CP $80
9B23 JR NC,$9B2B
9B25 CP $40
9B27 JR NC,$9B2A
9B29 ADD HL,BC
9B2A ADD HL,BC
9B2B AND $38
9B2D LD C,A
9B2E LD A,$38
9B30 SUB C
9B31 SLA A
9B33 SLA A
9B35 LD C,A
9B36 LD B,$00
9B38 ADD HL,BC
9B39 LD A,D
9B3A AND $07
9B3C LD C,A
9B3D LD A,$07
9B3F SUB C
9B40 LD D,A
9B41 SRL E
9B43 SRL E
9B45 SRL E
9B47 ADD HL,DE
9B48 EX DE,HL
9B49 LD B,$10
9B4B LD HL,$72A0
9B4E LD A,(HL)
9B4F LD (DE),A
9B50 INC HL
9B51 INC E
9B52 LD A,(HL)
9B53 LD (DE),A
9B54 INC HL
9B55 INC E
9B56 LD A,(HL)
9B57 LD (DE),A
9B58 INC HL
9B59 DEC E
9B5A DEC E
9B5B INC D
9B5C LD A,D
9B5D AND $07
9B5F JR NZ,$9B6F
9B61 LD A,D
9B62 SUB $08
9B64 LD D,A
9B65 LD A,E
9B66 ADD A,$20
9B68 LD E,A
9B69 JR NC,$9B6F
9B6B LD A,D
9B6C ADD A,$08
9B6E LD D,A
9B6F DJNZ $9B4E
9B71 POP HL
9B72 PUSH HL
9B73 LD C,$03
9B75 LD A,L
9B76 CP $F1
9B78 JR C,$9B7B
9B7A DEC C
9B7B LD B,$03
9B7D LD A,H
9B7E AND $07
9B80 XOR $07
9B82 JR Z,$9B89
9B84 LD A,H
9B85 CP $11
9B87 JR NC,$9B8A
9B89 DEC B
9B8A CALL $9BDE
9B8D LD DE,$0020
9B90 LD IXl,C
9B92 PUSH HL
9B93 LD (HL),$06
9B95 INC HL
9B96 DEC IXl
9B98 JR NZ,$9B93
9B9A POP HL
9B9B ADD HL,DE
9B9C DJNZ $9B90
9B9E LD HL,$7348
9BA1 LD A,($72D8)
9BA4 ADD A,$08
9BA6 JR NC,$9BAA
9BA8 LD A,$FF
9BAA CP (HL)
9BAB JR C,$9BD7
9BAD SUB $10
9BAF JR NC,$9BB2
9BB1 XOR A
9BB2 CP (HL)
9BB3 JR NC,$9BD7
9BB5 INC HL
9BB6 LD A,($72D9)
9BB9 ADD A,$09
9BBB CP (HL)
9BBC JR C,$9BD7
9BBE SUB $12
9BC0 JR NC,$9BC3
9BC2 XOR A
9BC3 CP (HL)
9BC4 JR NC,$9BD7
9BC6 LD B,$05
9BC8 POP HL
9BC9 DJNZ $9BC8
9BCB LD BC,$A410
9BCE POP HL
9BCF PUSH HL
9BD0 AND A
9BD1 SBC HL,BC
9BD3 RET NC
9BD4 POP HL
9BD5 JR $9BCE
9BD7 POP HL
9BD8 POP IX
9BDA POP DE
9BDB POP BC
9BDC POP AF
9BDD RET
Prev: 9A47 Up: Map Next: 9BDE