diff --git a/basic/moon/Makefile b/basic/moon/Makefile new file mode 100644 index 00000000..f07fcf40 --- /dev/null +++ b/basic/moon/Makefile @@ -0,0 +1,33 @@ +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft +EMPTY_DISK = ../../empty_disk/empty.dsk + +all: moon.dsk + +moon.dsk: HELLO LANDER.BAS LANDER_BOT.BAS + cp $(EMPTY_DISK) moon.dsk + $(DOS33) -y moon.dsk SAVE A HELLO + $(DOS33) -y moon.dsk SAVE A LANDER.BAS + $(DOS33) -y moon.dsk SAVE A LANDER_BOT.BAS + +#### + +HELLO: hello.bas + $(TOKENIZE) < hello.bas > HELLO + +#### + +LANDER.BAS: lander.bas + $(TOKENIZE) < lander.bas > LANDER.BAS + +#### + +LANDER_BOT.BAS: lander_bot.bas + $(TOKENIZE) < lander_bot.bas > LANDER_BOT.BAS + +#### + +clean: + rm -f *~ *.o *.lst HELLO LANDER.BAS LANDER_BOT.BAS diff --git a/basic/moon/hello.bas b/basic/moon/hello.bas new file mode 100644 index 00000000..133a44bb --- /dev/null +++ b/basic/moon/hello.bas @@ -0,0 +1,2 @@ +5 HOME +10 PRINT CHR$(4);"CATALOG" diff --git a/basic/moon/lander.bas b/basic/moon/lander.bas new file mode 100644 index 00000000..5b95a469 --- /dev/null +++ b/basic/moon/lander.bas @@ -0,0 +1,8 @@ +2POKE232,20:POKE233,8 +5REM#%%-... +6HGR:X=128:HPLOT0,125TO50,110TO113,XTO144,XTO217,94TO253,112TO267,106TO279,118 +7ROT=0:SCALE=2:XDRAW1ATX,Y:H%=127-Y:VTAB22:?CHR$(7)"ALT="H%" " +8IFA=4THENSCALE=1:ROT=32:XDRAW1ATX+6,Y+2:A=1:?CHR$(7):XDRAW1ATX+6,Y+2:ROT=0:SCALE=2:XDRAW1ATX,Y:GOTO7 +9XDRAW1ATX,Y:Y=Y+A:A=A+1/4 +10IFH%>0THEN7 +11FORI=2TO32:SCALE=I/2:ROT=I*4:XDRAW1ATX,Y:NEXT diff --git a/basic/moon/lander_bot.bas b/basic/moon/lander_bot.bas new file mode 100644 index 00000000..81e6bcd5 --- /dev/null +++ b/basic/moon/lander_bot.bas @@ -0,0 +1,6 @@ +2POKE232,20:POKE233,8 +5REM#%%-... +6HGR:X=128:HPLOT0,XTO50,110TO113,XTO144,XTO217,94TO253,112 +7ROT=0:SCALE=2:XDRAW1ATX,Y:H%=127-Y:VTAB22:?CHR$(7)"ALT="H%" ":XDRAW1ATX,Y:Y=Y+A:A=A+1/4:IFA=4THENSCALE=1:XDRAW1ATX+2,Y+4:A=1 +8IFH%>0THEN7 +9FORI=2TO16:SCALE=I/2:ROT=I*4:XDRAW1ATX,Y:NEXT