![]() |
Routines |
| Prev: 58123 | Up: Map | Next: 58209 |
|
Used by the routines at InitialiseGame, AnimalsEventTiming, Handler_BadDoor and Controller_BombCheck.
|
||||||||
|
(((B + C) % 256 + 171) % 256) * 256 + (C + 205) % 256
|
||||||||
| GetRandomNumber | 58185 | PUSH BC | Stash BC on the stack. | |||||
| 58186 | LD BC,(62275) | BC=*RandomNumberSeed. | ||||||
| 58190 | XOR A | Reset the flags. | ||||||
| 58191 | LD A,C | B=B+C. | ||||||
| 58192 | ADD A,B | |||||||
| 58193 | LD B,A | |||||||
| 58194 | XOR A | Reset the flags. | ||||||
| 58195 | LD A,205 | C=205+C. | ||||||
| 58197 | ADD A,C | |||||||
| 58198 | LD C,A | |||||||
| 58199 | LD A,171 | B+=171. | ||||||
| 58201 | ADC A,B | |||||||
| 58202 | LD B,A | |||||||
| 58203 | LD (62275),BC | Write the updated BC backit to *RandomNumberSeed. | ||||||
| 58207 | POP BC | Restore BC from the stack. | ||||||
| 58208 | RET | Return. | ||||||
| Prev: 58123 | Up: Map | Next: 58209 |