![]() |
Routines |
| Prev: $2AA9 | Up: Map | Next: $2AF9 |
| $2AAA | LDA $D41B | Generate a random value between $00 and $14. | ||
| $2AAD | CMP #$15 | |||
| $2AAF | BCS $2AAA | |||
| $2AB1 | ASL A | Double it and add $D5. Now $D5<=A<=$FD and A is odd. | ||
| $2AB2 | CLC | |||
| $2AB3 | ADC #$D5 | |||
| $2AB5 | STA $A5 | Store this value at $A5. | ||
| $2AB7 | SEC | Subtract 1. Now $D4<=A<=$FC and A is even. | ||
| $2AB8 | SBC #$01 | |||
| $2ABA | PHA | Save this value temporarily. | ||
| $2ABB | LDA #$4D | Initialise the battle year message address MSB at $1E to $4D. | ||
| $2ABD | STA $1E | |||
| $2ABF | PLA | |||
| $2AC0 | AND #$7F | Now $54<=A<=$7C and A is even. | ||
| $2AC2 | CMP #$16 | Is A less than $16? | ||
| $2AC4 | BCC $2AE0 | Branch if so (this never happens). | ||
| $2AC6 | INC $1E | Increment the message address MSB at $1E to $4E. | ||
| $2AC8 | CMP #$2B | Is A less than $2B? | ||
| $2ACA | BCC $2AE0 | Branch if so (this never happens). | ||
| $2ACC | INC $1E | Increment the message address MSB at $1E to $4F. | ||
| $2ACE | CMP #$40 | Is A less than $40? | ||
| $2AD0 | BCC $2AE0 | Branch if so (this never happens). | ||
| $2AD2 | INC $1E | Increment the message address MSB at $1E to $50. | ||
| $2AD4 | CMP #$56 | Is the random value less than $56? | ||
| $2AD6 | BCC $2AE0 | Branch if so. | ||
| $2AD8 | INC $1E | Increment the message address MSB at $1E to $51. | ||
| $2ADA | CMP #$6B | Is the random value less than $6B? | ||
| $2ADC | BCC $2AE0 | Branch if so. | ||
| $2ADE | INC $1E | Increment the message address MSB at $1E to $52. | ||
| $2AE0 | ASL A | Multiply A by 12. | ||
| $2AE1 | ASL A | |||
| $2AE2 | STA $57 | |||
| $2AE4 | ASL A | |||
| $2AE5 | CLC | |||
| $2AE6 | ADC $57 | |||
| $2AE8 | STA $1D | Store this battle year message address LSB at $1D. | ||
| $2AEA | LDY #$00 | Copy the battle year to $94-$97. | ||
| $2AEC | LDX #$00 | |||
| $2AEE | LDA ($1D),Y | |||
| $2AF0 | STA $94,X | |||
| $2AF2 | INX | |||
| $2AF3 | INY | |||
| $2AF4 | CPY #$04 | |||
| $2AF6 | BNE $2AEE | |||
| $2AF8 | RTS | |||
| Prev: $2AA9 | Up: Map | Next: $2AF9 |