Prev: 42172 Up: Map Next: 42333
42189: Compare Location Data
Used by the routine at ProcessDisplayPointer.
CompareLocationData 42189 PUSH DE
42190 PUSH HL
42191 PUSH IY
42193 LD DE,6
42196 ADD HL,DE
42197 ADD IY,DE
42199 CALL CompareLocationData_3
42202 JR NZ,CompareLocationData_2
42204 POP IY
42206 POP HL
42207 POP DE
This entry point is used by the routines at ProcessLocationDisplay, ProcessObjectEntry and ProcessObjectEntryAlternate.
CompareLocationData_0 42208 PUSH DE
42209 PUSH HL
42210 PUSH IY
42212 CALL CompareLocationData_3
42215 JR NZ,CompareLocationData_2
42217 LD A,1
42219 LD (41006),A
42222 CALL CompareLocationData_3
42225 JR NZ,CompareLocationData_1
42227 CALL CompareLocationData_3
42230 LD A,0
42232 JR Z,CompareLocationData_2
CompareLocationData_1 42234 POP IY
42236 POP HL
42237 PUSH HL
42238 PUSH IY
42240 LD DE,4
42243 ADD IY,DE
42245 INC HL
42246 INC HL
42247 CALL CompareLocationData_3
42250 JR NZ,CompareLocationData_2
42252 LD DE,65532
42255 ADD IY,DE
42257 CALL CompareLocationData_3
42260 LD A,1
CompareLocationData_2 42262 POP IY
42264 POP HL
42265 POP DE
42266 RET
CompareLocationData_3 42267 PUSH HL
42268 LD A,(HL)
42269 INC HL
42270 OR (HL)
42271 JR Z,CompareLocationData_4
42273 LD A,(IY+1)
42276 XOR (HL)
42277 AND 15
42279 JR NZ,CompareLocationData_4
42281 DEC HL
42282 LD A,(HL)
42283 CP (IY+0)
CompareLocationData_4 42286 POP HL
42287 INC HL
42288 INC HL
42289 INC IY
42291 INC IY
42293 RET
42294 PUSH HL
42295 LD HL,(41019)
CompareLocationData_5 42298 CALL GetKeypress
42301 BIT 7,A
42303 JR NZ,CompareLocationData_7
42305 LD A,0
CompareLocationData_6 42307 DEC A
42308 PUSH HL
42309 POP HL
42310 JR NZ,CompareLocationData_6
42312 DEC HL
42313 LD A,H
42314 OR L
42315 JR NZ,CompareLocationData_5
42317 POP HL
42318 PUSH HL
42319 CALL 55735
42322 XOR A
CompareLocationData_7 42323 AND 127
42325 LD HL,3000
42328 LD (41019),HL
42331 POP HL
42332 RET
Prev: 42172 Up: Map Next: 42333