Prev: $3AD5 Up: Map Next: $3B5E
$3B46: Select a special PLAYTIME occasionally
This corresponds to $6E33 in the ZX Spectrum version.
Used by the routine at $3AD5.
Input
($42) Current lesson identifier
$3B46 LDA $42 Pick up the current lesson identifier from $42.
$3B48 CMP #$F3 Is it less than $F3 (i.e. not a playtime)?
$3B4A BCC $3B5D Return if so.
$3B4C LDA $46 Pick up the game mode indicator from $46.
$3B4E BEQ $3B5D Return if we're in demo mode.
$3B50 LDA $D41B Generate a random value between 0 and 7.
$3B53 AND #$07
$3B55 CMP #$03 Is it 3 or more?
$3B57 BCS $3B5D Return if so.
$3B59 ADC #$F3 Now A=$F3, $F4 or $F5 (one of the 'special' playtimes).
$3B5B STA $42 Make this special playtime the actual playtime.
$3B5D RTS
Prev: $3AD5 Up: Map Next: $3B5E