![]() |
Routines |
Prev: 25731 | Up: Map | Next: 25799 |
Used by the routine at GameInit.
|
||||
25752 | LD BC,31958 | BC=31958 (one byte past the end of MapPoints). | ||
25755 | LD A,R | A=random number. | ||
Limit the number to 0-63.
|
||||
25757 | AND %00111111 | Keep only bits 0-5. | ||
25759 | LD D,A | Store the result in D. | ||
25760 | LD HL,0 | HL=0000. | ||
25763 | ADD HL,DE | DE=HL + DE. | ||
25764 | EX DE,HL | |||
25765 | LD HL,30739 | HL=30739. | ||
25768 | LD A,(HL) | A=HL. | ||
25769 | CP 32 | If A is 32 jump to HandlerSpriteCup. | ||
25771 | JR Z,HandlerSpriteCup | |||
25773 | CP 96 | If A is not 96 jump to 25788. | ||
25775 | JR NZ,25788 | |||
25777 | LD (HL),32 | |||
HandlerSpriteCup | 25779 | DEC HL | Decrease HL by one. | |
25780 | LD A,(DE) | A=DE. | ||
25781 | INC DE | Increment DE by one. | ||
25782 | AND %01111111 | Keep only bits 0-6. | ||
25784 | ADD A,32 | A=A + 32. | ||
25786 | LD (HL),A | Store A at HL. | ||
25787 | INC HL | Increment HL by one. | ||
25788 | INC HL | Increment HL by three. | ||
25789 | INC HL | |||
25790 | INC HL | |||
25791 | PUSH HL | Stash HL on the stack. | ||
25792 | AND A | |||
25793 | SBC HL,BC | |||
25795 | POP HL | Restore HL from the stack. | ||
25796 | JR C,25768 | If ... jump to 25768. | ||
25798 | RET | Return. |
Prev: 25731 | Up: Map | Next: 25799 |