This is an updated version of “The Picture” written in assembly using a line drawing routine by Simeon Dwyer. This version uses a double buffer to move the boat.
PROG : 16509
D-FILE: 18603
VARS : 19396
E-LINE: 19397
STKBOT: 19397
STKEND: 19397
9999 means line number
PRINT means treat as KEYWORD P
1 REM /P BY STEVEN REID 2021
* * PICTURE IN MOTION * *
30208 5 6ORND6QRND6RRNDLN +
INKEY$RETURN QASN ,INKEY$LN ?
INKEY$5 6ORND5RINKEY$LN 1INKEY$
EQRND6ORND5 STEP INKEY$LN 1
INKEY$LN ?INKEY$USRNDBTAB ö
INKEY$URRNDXMRRNDRETURN RETURN
TAB VAL RNDYñMSRND?VAL RNDURRNDW
MRRNDRETURN TAB VAL RNDY MSRND?
VAL RND?>=£ORND MU?7?UPRND MV?7?
UORND MW?7?UPRND MX?7FAST LN ??
LPRINT ?1INKEY$GOSUB ?£RND5¹?ñ
NOT òGOSUB KTAN )¹?E£RNDñNOT ò
GOSUB KTAN )Z?5??Y-ñ5 GOSUB SX
TAB ?INKEY$TAN úñ M?INKEY$EORND
ùF?NEW ??6?INKEY$U?INKEY$?LN B
INKEY$LN Vò???=YñCOS LN X÷INKEY$
X?: " ?L4IF TAN -A-P-RND-ôôùô!ô
úõùõù÷ùö÷!!!ô!ô!ò÷ò÷òöòöôõCOPY ;
AXAWARDRD2D2D;BKAK!K!H"H"K"K£,7,
7W7V7K£COPY LN /PIUM?ACS ?TAB Q
PILN ?PITAN UO?ACS ?""CHR$ RND
LIST UP?ACS ?""CHR$ ILIST Y MQ?U
O?ACS ZMO?KõYñMQ?UP?ACS ZMP?K!UQ
?ACS INT MQ?5¹?7)5 UP?RETURN Cô
?;(CLEAR ) UO??;6R?TAN ER?UQ?
RETURN C$RETURN ñC-RETURN òC3
RETURN óCCTAN SIN ?TAN ACS ·?
TAN INT ?TAN ACS ??TAN NOT ?TAN
ACS *?TAN INPUT ÷?TAN ER?UQ?
RETURN C$RETURN ñC-RETURN òC3
RETURN óCCTAN ·?TAN ACS SIN ?
TAN ??TAN ACS INT ?TAN *?TAN
ACS NOT ?TAN INPUT ÷?TAN TAN UY?
?URND?(MPI?UZ??UINKEY$?(M??5??Qñ
UPI?ACS ?C$YCOPY M??UPI?GOSUB ?M
PI?U???UPI?ACS B(M??UY?M??UZ?M??
?UINKEY$?(C??VAL U??MP?WM??U??MO
?LN ùPIU??ACS ?43U???U?? M??U???
UPI?(ACS B?U?? M??/$UPI?ACS B?U?
? M??AT (Q5M?ACS :TAN UU?MO?UV?M
P?LN ùPITAN UY??URND?(MPI?UZ??U
INKEY$?(M??5??QñACS ?C$YCOPY M??
U??GOSUB ?M??UPI??U??ACS B(M??UZ
?M??UY?M???URND?(C8?VAL U??MO?WM
??U??MP?LN ùPIU??ACS ?43U???U??
M??UPI??U??(ACS B?U?? M??/$U??
ACS B?U?? M??AT (Q5M?ACS :TAN 5M
?ACS EXP UU?MY?UW?MRND?UV?MZ?UX?
MINKEY$?UV??UX?(KòGOSUB ??UU??UW
?(KòGOSUB ?)S)UW??UU?( AND J?LN
B??J?UX??UV?( AND COPY PILN B??
COPY PIUV??UX?MZ??MINKEY$?UU??UW
?MY??MRND?TAN CHR$ RNDRETURN RND
Kú5??) ?;CHR$ RND5¸?) ?RZ
GOSUB ?CHR$ 5??) ?;5¸?) ?RZ
GOSUB ?ZRETURN C3?UT?5 ?FAST
SGN ;(CLEAR ö÷ACS XACS WKòACS
CLEAR (PLOT ACS ?COS ?GOSUB ??
TAN óöù£
(<-;0369CFILNQTWZINKEY$?????????
?????????????????
30841 ????
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30208 RAND USR 16569
3 STOP
4 SAVE "PIM"
5 RUN