Prev: 28942 Up: Map Next: 29203
29067: Find Shape In Picture Font
Used by the routines at PlotShape and ScaleShape.
Looks the shape number up in the picture font that follows this routine and remembers its address.
FindShape 29067 LD HL,29064
29070 CP (HL)
29071 JR NZ,FindShape_0
29073 LD HL,(29065)
29076 LD B,0
29078 LD C,A
29079 JR FindShape_3
FindShape_0 29081 LD HL,50952
29084 LD B,A
29085 LD C,A
29086 LD (29064),A
29089 OR A
29090 JR Z,FindShape_3
FindShape_1 29092 INC HL
29093 LD A,(HL)
29094 CP 254
29096 JR Z,FindShape_2
29098 JR FindShape_1
FindShape_2 29100 DJNZ FindShape_1
29102 INC HL
FindShape_3 29103 LD (29065),HL
29106 LD A,(HL)
29107 PUSH AF
29108 AND 240
29110 RRA
29111 RRA
29112 RRA
29113 RRA
29114 INC A
29115 PUSH AF
29116 LD A,C
29117 CP 13
29119 JR Z,FindShape_4
29121 CP 34
29123 JR Z,FindShape_4
29125 CP 111
29127 JR Z,FindShape_4
29129 CP 15
29131 JR Z,FindShape_4
29133 CP 17
29135 JR Z,FindShape_4
29137 CP 85
29139 JR NZ,FindShape_5
FindShape_4 29141 POP AF
29142 ADD A,16
29144 PUSH AF
FindShape_5 29145 POP AF
29146 LD (23492),A
29149 LD (23494),A
29152 POP AF
29153 AND 15
29155 INC A
29156 LD (23493),A
29159 LD (23495),A
29162 RET
This entry point is used by the routines at ReadShapeByte and PaintShape.
FindShape_6 29163 LD A,(23454)
29166 OR A
29167 JR Z,FindShape_7
29169 DEC A
29170 LD (23454),A
29173 LD HL,23455
29176 LD A,(HL)
29177 RET
FindShape_7 29178 LD HL,(23500)
29181 LD A,(HL)
29182 RET
This entry point is used by the routines at SpecialShape and PaintShape.
FindShape_8 29183 INC HL
29184 LD C,(HL)
29185 LD B,0
29187 LD DE,23454
29190 INC HL
29191 LDIR
29193 LD (23500),HL
29196 LD HL,23455
29199 LD A,251
29201 LD (DE),A
29202 RET
Prev: 28942 Up: Map Next: 29203