![]() |
Routines |
Prev: 53348 | Up: Map | Next: 53456 |
53368 | PUSH IX | Stash IX, IY and BC on the stack. | ||
53370 | PUSH IY | |||
53372 | PUSH BC | |||
53373 | LD IX,(40983) | IX=*40983. | ||
53377 | LD A,(IX+4) | A=*IX+4. | ||
53380 | AND %10000000 | Keep only bit 7. | ||
53382 | JR Z,53446 | Jump to 53446 if ?? is equal to 0. | ||
53384 | CALL 51310 | Call 51310. | ||
53387 | INC A | Increment A by one. | ||
53388 | JR NZ,53406 | Jump to 53406 if A is not equal to 0. | ||
53390 | CALL 54076 | Call 54076. | ||
53393 | BIT 7,(IX+0) | Jump to 53446 if bit 7 of *IX+0 is set. | ||
53397 | JR NZ,53446 | |||
53399 | CALL 49164 | Call 49164. | ||
53402 | CP 1 | Jump to 53446 if A is not equal to 1. | ||
53404 | JR NZ,53446 | |||
53406 | LD IX,35695 | IX=Table_Objects. | ||
53410 | CALL FetchNextObject | Call FetchNextObject. | ||
53413 | JR Z,53449 | Jump to 53449 if A is equal to 1. | ||
53415 | LD A,(IY+0) | Jump to 53410 if *IY+0 is not equal to 1. | ||
53418 | CP 1 | |||
53420 | JR NZ,53410 | |||
53422 | LD A,(IY+5) | A=*IY+5. | ||
53425 | XOR %10110111 | Flip bits 0-2, 4-5, 7. | ||
53427 | AND %01011100 | Keep only bits 2-4, 6. | ||
53429 | JR NZ,53410 | Jump to 53410 if A is not equal to 1. | ||
53431 | LD A,(IY+4) | A=*IY+4. | ||
53434 | AND %10000000 | Keep only bit 7. | ||
53436 | JR Z,53410 | Jump to 53410 if A is equal to 1. | ||
53438 | LD A,(IX+0) | A=*IX+0. | ||
53441 | CALL 51233 | Call 51233. | ||
53444 | JR Z,53410 | Jump to 53410 if A is equal to 1. | ||
53446 | AND A | Set flags. | ||
53447 | JR 53450 | Jump to 53450. | ||
53449 | SCF | Set the carry flag. | ||
53450 | POP BC | Restore BC, IY and IX from the stack. | ||
53451 | POP IY | |||
53453 | POP IX | |||
53455 | RET | Return. |
Prev: 53348 | Up: Map | Next: 53456 |