Prev: 9A8B Up: Map Next: 9AB9
9AA9: Graphic layout routine: (245) Decrease timer value, and if zero, reset and write random graphic index from list into next instruction
Decrease timer value (1st parameter). If now zero, then reset timer to value in 2nd parameter, then load one of the n (3rd parameter) following values chosen at random into the graphic index field of the next instruction.
Input
IX Address of first parameter in current graphic layout data instruction
Output
B Do-not-recalculate-display-buffer-address flag (00)
IX Address of next graphic layout data instruction to process
9AA9 LD B,$00 Prepare to recalculate display buffer address.
9AAB DEC (IX+$00) Decrease timer value.
9AAE JR NZ,$9AC0 If timer is not zero, then advance IX to start of next instruction and process.
9AB0 CALL $9ACF Reset timer to maximum, advance IX to start of next instruction and set value here (graphic index) to random value from sequence of data following previous instruction.
9AB3 LD (IX+$00),E
9AB6 JP $989E Read / process data at address in IX.
Prev: 9A8B Up: Map Next: 9AB9