mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-10-24 23:25:28 +00:00
Merge branch 'master' of git://github.com/deater/dos33fsprogs
This commit is contained in:
commit
4ff7df1a55
@ -17,6 +17,12 @@ PORTAL.BAS: portal.bas
|
||||
STILL_ALIVE.BAS: still_alive.bas
|
||||
$(TXT2BAS) < still_alive.bas > STILL_ALIVE.BAS
|
||||
|
||||
JOYSTICK_TEST.BAS: joystick_test.bas
|
||||
$(TXT2BAS) < joystick_test.bas > JOYSTICK_TEST.BAS
|
||||
|
||||
MOUSE_TEST.BAS: mouse_test.bas
|
||||
$(TXT2BAS) < mouse_test.bas > MOUSE_TEST.BAS
|
||||
|
||||
shape_test.bas: objects.shape
|
||||
$(SHAPETABLE) < objects.shape > shape_test.bas
|
||||
|
||||
@ -31,7 +37,8 @@ SOUND_TEST.BAS: sound_test.bas
|
||||
$(TXT2BAS) < sound_test.bas > SOUND_TEST.BAS
|
||||
|
||||
glados33.dsk: STILL_ALIVE.BAS OBJECTS.SHAPE SHAPE_TEST.BAS SOUND_TEST.BAS \
|
||||
PORTAL.BAS CUBE.BAS PORTAL_TITLE.HGR GLADOS.HGR
|
||||
PORTAL.BAS CUBE.BAS PORTAL_TITLE.HGR GLADOS.HGR MOUSE_TEST.BAS \
|
||||
JOYSTICK_TEST.BAS
|
||||
$(DOS33) -y glados33.dsk SAVE A STILL_ALIVE.BAS
|
||||
$(DOS33) -y glados33.dsk SAVE B OBJECTS.SHAPE
|
||||
$(DOS33) -y glados33.dsk SAVE B PORTAL_TITLE.HGR
|
||||
@ -40,6 +47,8 @@ glados33.dsk: STILL_ALIVE.BAS OBJECTS.SHAPE SHAPE_TEST.BAS SOUND_TEST.BAS \
|
||||
$(DOS33) -y glados33.dsk SAVE A SOUND_TEST.BAS
|
||||
$(DOS33) -y glados33.dsk SAVE A PORTAL.BAS
|
||||
$(DOS33) -y glados33.dsk SAVE A CUBE.BAS
|
||||
$(DOS33) -y glados33.dsk SAVE A MOUSE_TEST.BAS
|
||||
$(DOS33) -y glados33.dsk SAVE A JOYSTICK_TEST.BAS
|
||||
|
||||
clean:
|
||||
rm -f *~ *.BAS *.SHAPE sound_test.bas shape_test.bas *.lst
|
||||
|
Binary file not shown.
28
glados3.3/joystick_test.bas
Normal file
28
glados3.3/joystick_test.bas
Normal file
@ -0,0 +1,28 @@
|
||||
1 HOME:HGR:D$=CHR$(4):ROT=0:SCALE=2
|
||||
8 POKE 232,38:POKE 233,3
|
||||
9 PRINT D$;"BLOAD OBJECTS.SHAPE,A$326"
|
||||
100 X=140:Y=80:D0=0:D1=0:O0=0:O1=0
|
||||
105 XDRAW 1 AT X,Y
|
||||
110 OX=X:OY=Y:O0=D0:O1=D1
|
||||
115 Q=PDL(0):R=PDL(1)
|
||||
120 IF Q > 160 THEN X=X+4
|
||||
122 IF Q > 220 THEN X=X+24
|
||||
125 IF Q < 96 THEN X=X-4
|
||||
127 IF Q < 36 THEN X=X-24
|
||||
130 IF R > 160 THEN Y=Y+4
|
||||
132 IF R>220 THEN Y=Y+24
|
||||
135 IF R < 96 THEN Y=Y-4
|
||||
137 IF R < 36 THEN Y=Y-24
|
||||
200 IF X<10 THEN X=10
|
||||
210 IF X>270 THEN X=270
|
||||
220 IF Y<10 THEN Y=10
|
||||
230 IF Y>150 THEN Y=150
|
||||
232 D0=PEEK(-16286)
|
||||
232 D1=PEEK(-16287)
|
||||
233 IF D0>127 AND O0<127 THEN XDRAW 6 AT X,Y
|
||||
234 IF D1>127 AND O1<127 THEN XDRAW 7 AT X,Y
|
||||
235 IF X=OX AND Y=OY GOTO 110
|
||||
237 XDRAW 1 AT OX,OY
|
||||
240 XDRAW 1 AT X,Y
|
||||
250 GOTO 110
|
||||
|
15
glados3.3/mouse_test.bas
Normal file
15
glados3.3/mouse_test.bas
Normal file
@ -0,0 +1,15 @@
|
||||
' Cheat and assume the mouse card is in slot #4
|
||||
' (which is where it is on the Apple IIc)
|
||||
' This means no Mockingboard support under Linapple
|
||||
'
|
||||
20 IF PEEK(50188) = 32 AND PEEK(50427) = 214 THEN GOTO 30
|
||||
25 PRINT "NO MOUSE IN SLOT #4":END
|
||||
30 PRINT "MOUSE FOND SLOT #4"
|
||||
' Enable the mouse
|
||||
100 PRINT CHR$(4)"PR#4":PRINT CHR$(1):PRINT CHR$(4)"PR#0"
|
||||
105 PRINT CHR$(4)"IN#4":INPUT "";X,Y,B:PRINT CHR$(4)"IN#0"
|
||||
' X,Y,Button state (1 button) 4=up, 2=pressed, 1=down, 3=release
|
||||
110 PRINT X,Y,B
|
||||
130 GOTO 105
|
||||
|
||||
|
@ -19,6 +19,7 @@
|
||||
' UX,UY = old object X,Y
|
||||
' ZY,PY=Laser Y ZX,PX = Laser Begin/End
|
||||
' T = TIME L = Current Level
|
||||
' JS = Joystick Enabled
|
||||
'
|
||||
' Title Screen
|
||||
'
|
||||
@ -30,7 +31,7 @@
|
||||
6 FOR L=770 TO 804:READ V:POKE L,V:NEXT L
|
||||
'
|
||||
' Load Shape Table
|
||||
' We just *barely* fit above the soud but below DOS vectors
|
||||
' We just *barely* fit above the sound but below DOS vectors
|
||||
8 POKE 232,38:POKE 233,3
|
||||
9 PRINT D$;"BLOAD OBJECTS.SHAPE,A$326"
|
||||
'
|
||||
@ -39,7 +40,7 @@
|
||||
10 I=0:VTAB 24:PRINT "H FOR HELP";
|
||||
11 IF PEEK(-16384)>=128 THEN GET A$:GOTO 13
|
||||
12 I=I+1:IF I<500 GOTO 11
|
||||
13 HGR:PR=0:LR=0
|
||||
13 HGR:PR=0:LR=0:JS=0
|
||||
'
|
||||
'14 L=19:PR=1:LR=1
|
||||
14 L=1
|
||||
@ -74,8 +75,9 @@
|
||||
'
|
||||
' Check keyboard
|
||||
'
|
||||
37 IF PEEK(-16384)<128 THEN GOTO 100
|
||||
37 IF PEEK(-16384)<128 THEN GOTO 64
|
||||
40 GET A$
|
||||
41 IF A$="1" THEN JS=1-JS
|
||||
42 IF A$="I" AND SY>4 THEN SY=SY-4
|
||||
44 IF A$="J" AND SX>4 THEN SX=SX-4
|
||||
45 IF A$="U" AND SX>24 THEN SX=SX-24
|
||||
@ -92,6 +94,22 @@
|
||||
60 IF A$="," THEN GOSUB 6000
|
||||
62 IF A$="." THEN GOSUB 6100
|
||||
63 IF A$=";" THEN PR=1-PR
|
||||
64 IF JS=0 THEN GOTO 100
|
||||
' JOYSTICK CODE
|
||||
70 Q=PDL(0):R=PDL(1)
|
||||
71 O0=D0:O1=D1
|
||||
72 IF Q > 160 THEN SX=SX+4
|
||||
74 IF Q > 220 THEN SX=SX+24
|
||||
76 IF Q < 96 THEN SX=SX-4
|
||||
78 IF Q < 36 THEN SX=SX-24
|
||||
80 IF R > 160 THEN SY=SY+4
|
||||
82 IF R>220 THEN SY=SY+24
|
||||
84 IF R < 96 THEN SY=SY-4
|
||||
86 IF R < 36 THEN SY=SY-24
|
||||
88 D0=PEEK(-16287)
|
||||
90 D1=PEEK(-16286)
|
||||
92 IF D0>127 AND O0<127 THEN GOSUB 6000
|
||||
94 IF D1>127 AND O1<127 THEN GOSUB 6100
|
||||
'
|
||||
' PHYSICS ENGINE
|
||||
'
|
||||
@ -274,12 +292,13 @@
|
||||
5030 PRINT " CHELL PORTAL GUN"
|
||||
5035 PRINT " ~~~~~~~~~~~~~ ~~~~~~~~~~~~~"
|
||||
5040 PRINT " A = MOVE LEFT I = UP"
|
||||
5045 PRINT " D = MOVE RIGHT J = LEFT"
|
||||
5050 PRINT " SPACE = JUMP K = RIGHT"
|
||||
5045 PRINT " D = MOVE RIGHT J,U = LEFT"
|
||||
5050 PRINT " SPACE = JUMP K,O = RIGHT"
|
||||
5055 HTAB 24:PRINT "M = DOWN"
|
||||
5060 HTAB 24:PRINT ", = SHOOT BLUE"
|
||||
5065 HTAB 24:PRINT ". = SHOOT ORANGE"
|
||||
5070 PRINT " Q = QUIT ; = ROTATE PORTAL"
|
||||
5080 PRINT " 1 = ENABLE JOYSTICK"
|
||||
5100 PRINT:GET A$
|
||||
' return to hires
|
||||
5110 POKE -16304,0
|
||||
@ -338,7 +357,7 @@
|
||||
8011 HTAB 20:VTAB 21
|
||||
8012 IF R=0 THEN PRINT "Firing. "
|
||||
8013 IF R=1 THEN PRINT "There you are. "
|
||||
8014 IF R=2 THEN PRINT "I see you. "
|
||||
8014 IF R=2 THEN PRINT "I see you. "
|
||||
8015 RETURN
|
||||
'
|
||||
' Level Transition
|
||||
|
Loading…
Reference in New Issue
Block a user