10 DEFFNS="AssRnd" :REM Program name 20 MODE0 30 ?&90=RND(255) 40 ?&91=RND(255) 50 ?&92=RND(255) 60 FORL%=0TO2 STEP2 :REM Assembler option 70 P%=&900 :REM Memory location routine will start at 80 [ \ Start of assembler 90 OPTL% \ Listing option 100 LDX#&60 \ Offset for Sheila. &FE60 110 LDY#0 \ Value to poke sheila with 120 LDA#&97 \ OSBYTE call number (poke sheila) 130 JSR&FFF4 \ OSBYTE call 135 .E% 140 LDX#&62 \ Offset for Sheila. &FE62 150 JSR random \ Get some random numbers 160 LDA&91 170 TAY \ Put it in Y 180 LDA#&97 \ OSBYTE call number (poke sheila) 190 JSR&FFF4 \ OSBYTE call 200 RTS \ Back to basic (or to main routine) 210 .random \ Get a random number in &91 and &92 220 LDA&90 230 AND#&48 240 ADC#&38 250 ASLA:ASLA 260 ROL&92 270 ROL&91 280 ROL&90 290 LDA&90 300 CLC 310 SBC&AF 320 BCS random 330 LDA&91 340 CLC 350 SBC&DF 360 BCS random 370 RTS 380 ] 390 NEXT 395 CALL&900 400 *K.0CALLE%|MP.~?&FE62|M 410 *K.1CALLE%|MP.~?&91:P.~?&92|M 420 PRINT"Press F0 to get random number (into the user port)" 430 PRINT"Press F1 to get 2 random numbers"