Routines |
Prev: 28615 | Up: Map | Next: 28635 |
Used by the routine at 28357. Returns with a randomly chosen message number (different from the last one used) in A. On entry, A holds 197 or 198 depending on the type of message required: 197 for a person or group of people, 198 for a verb.
|
||||||||
28616 | LD C,A | Point BC at the relevant last used message number (see 28613) | ||||||
28617 | LD B,111 | |||||||
28619 | LD A,(BC) | E=last used message number (8-15, 16-23) | ||||||
28620 | LD E,A | |||||||
28621 | AND 248 | Discard bits 0-2 | ||||||
28623 | LD D,A | D=8 or 16 | ||||||
28624 | CALL 61823 | Get a random number in A | ||||||
28627 | AND 7 | A=message number (8-15, 16-23) | ||||||
28629 | ADD A,D | |||||||
28630 | CP E | Is this the same message number as last time? | ||||||
28631 | JR Z,28624 | Jump back to try again if so | ||||||
28633 | LD (BC),A | Store the randomly chosen message number for comparison next time | ||||||
28634 | RET |
Prev: 28615 | Up: Map | Next: 28635 |