Random game
Random game
Entry name:
 Space Outpost 
Publisher/Developer:

BELLCOM - Public Domain Library
(Software library)
  • Category:

    Games
  • Year:

    1984
  • Inlay/Poster artCode:

    Don Bell
  • Maximum players:

    1
  • Programming language:

    Atari BASIC
Space Outpost Space Outpost Space Outpost Space Outpost Space Outpost Space Outpost Space Outpost
Listing 1
1REM
2REM
3REM
5GOSUB12000:GOSUB30000
7SETCOLOR2,7,2:SETCOLOR1,1,10:SETCOLOR3,7,4:SETCOLOR0,8,14:IFAGAIN=1THENGOTO55
10GOTO50
20X=INT(RND(0)*X+1):RETURN
30Z=INT(SQR((EX(G)-6)^2+(EY(G)-6)^2)):RETURN
40Z=INT(1/(ED(G))*100+(C/2)):RETURN
50DIMS$(11),R$(40):OPEN#1,4,0,"K":G=1
51DIMET(5),EH(5),EX(5),EE(5),EY(5),ED(5)
52R$="":R$(40)="":R$(2)=R$
53S$=R$(1,11):REM11SPACES
55C=99:G=1:GOSUB8000:GOSUB5110:GOSUB2000
200GOSUB5000:GOSUB1000:GOSUB6000:GOSUB3000:GOSUB4000
210GOTO200
1000GOSUB1280
1020SOUND3,230,10,14:?"CLASS";
1030FORG=1TO4
1040IFET(G)=0THEN?"---";
1050IFET(G)=1THEN?"TIE.";
1060IFET(G)=2THEN?"BTL.";
1075IFET(G)=3THEN?"BASE";
1080NEXTG
1100?:?"RANGE":?"PROB.%":?"ENERGY";
1120FORG=1TO4
1122X=G*7+5
1124?""
1126?R$(1,X);ED(G);""
1128?R$(1,X);EH(G);""
1130?R$(1,X);EE(G);"";
1140NEXTG:POKE201,11:SOUND3,0,0,0
1145RETURN
1280POSITION0,0:?#6;"^]>]^@]@"
1282POSITION0,1:?#6;"@":POSITION5,1:?#6;"@":POSITION8,1:?#6;">":POSITION11,1:?#6;"]"
1283POSITION14,1:?#6;"":POSITION18,1:?#6;"@"
1285POSITION0,2:?#6;"@@]]@]>@>"
1290POSITION0,4
1300?#6;"___COMMAND_STATUS___"
1310?#6;"ENERGY";E
1320?#6;"COMPUTER";C;"%"
1330?#6;"STANDING";VP
1340?#6;"=T-PMISSL";T
1350?#6;"=MAIN";M;"%"
1360?#6;"=SECONDARY";S;"%"
1400?#6;"=CHGENERGY"
1410?#6;"=REPCOMPUTER"
1450POSITION0,14:?#6;"____________________"
1470POSITION0,18:?#6;"___BATTLE__REPORT___"
1480POSITION0,19:?#6;""
1500POSITION2,8
1510A=0
1520FORY=1TO11
1530FORX=1TO11
1540FORG=1TO5
1550IFY<>EY(G)THEN1615
1560IFX<>EX(G)THEN1615
1570A=1:IFG<>5THENGOSUB16000:FORW=150TO0STEP-10:SOUND0,W,12,W:NEXTW
1610IFG=5THENGOSUB16000:FORW=150TO0STEP-10:SOUND0,I,10,W/10:NEXTW
1615REM
1620NEXTG
1630IFX=6ANDY=6THENA=1
1640IFA=1THENA=0:GOTO1660
1660SOUND0,0,0,0:NEXTX
1680NEXTY
1990RETURN
2000ET(5)=0:EX(5)=0:EY(5)=0:G=0
2010E=99:M=99:S=99
2020T=T+5:IFT>9THENT=9
2030RETURN
3000FORG=1TO5:IFET(G)>0THEN3100
3010NEXTG:RETURN
3100IFG<5ANDINT(9*RND(0)+1)>5THEN3010
3200IFEX(G)>6THENEX(G)=EX(G)-1
3210IFEX(G)<6THENEX(G)=EX(G)+1
3220IFEY(G)<6THENEY(G)=EY(G)+1
3230IFEY(G)>6THENEY(G)=EY(G)-1
3240IFET(5)=5ANDEY(5)=6ANDEX(5)=6THENGOSUB2000
3250IFEY(G)=6ANDEX(G)=6THEN9500
3265IFG<5ANDEX(G)=EX(5)ANDEY(G)=EY(5)THENET(5)=0:EX(5)=0:EY(5)=0
3300GOSUB30:ED(G)=Z
3330GOSUB40:EH(G)=Z:IFEH(G)>99THENEH(G)=99
3400GOTO3010
4000?"":POSITION1,15:?#6;"":POSITION1,16:?#6;""
4001GOSUB10900
4002LOW=57:HIGH=45:O=45
4003FORAGAIN=1TO3:SOUND0,O,10,14
4004FORWAIT=1TO75:NEXTWAIT
4005O=LOW:LOW=HIGH:HIGH=O
4006NEXTAGAIN
4007SOUND0,0,0,0
4010FORG=1TO4:IFET(G)<>0THEN4100
4020NEXTG:RETURN
4100IFINT(99*RND(0)+1)>(EE(G)+INT(30*RND(0)+1))OREE(G)<10THEN4020
4110E=E-INT(5*RND(0)+1)*ET(G)
4150EE(G)=EE(G)-INT(10*RND(0)+1)
4160IFRND(1)<0.1THENC=C-INT(25*RND(0)+1):IFC<1THEN9500
4170IFRND(1)<0.1THENM=M-INT(25*RND(0)+1):IFM<0THENM=0
4180IFRND(1)<0.1THENS=S-INT(25*RND(0)+1):IFS<0THENS=0
4200IFE<0THEN9500
4210GOTO4020
5000G=INT(5*RND(0)+1)
5005IFG=5ANDET(5)=0ANDINT(4*RND(0)+1)>1THENET(5)=5:GOTO5160
5010IFG=5ORET(G)<>0ORINT(9*RND(0)+1)>6THEN5400
5110A=4-INT(LOG(INT(50*RND(0)+1)+2))
5120ET(G)=A:EE(G)=99
5160EX(G)=INT(11*RND(0)+1)
5170EY(G)=INT(11*RND(0)+1)
5180A=INT(4*RND(0)+1):IFA=1THENEY(G)=1
5190IFA=2THENEY(G)=11
5200IFA=3THENEX(G)=11
5210IFA=4THENEX(G)=1
5300GOSUB30:ED(G)=Z
5320GOSUB40:EH(G)=Z:IFEH(G)>99THENEH(G)=99
5400RETURN
6000POSITION1,15:?#6;"":POSITION1,16:?#6;"":A=0
6010TRAP6010:GET#1,K:TRAP40000
6020IFK=ASC("M")ANDM>0THENA=6:M=M-INT(5*RND(0)+1):IFM<0THENM=0
6025IFK=ASC("C")THENE=E+INT(20*RND(0)+1)+5:GOSUB10800:IFE>99THENE=99
6030IFK=ASC("C")THENRETURN
6032IFK=ASC("R")THENC=C+INT(10*RND(0)+1)+5:SOUND0,42,8,15:IFC>99THENC=99
6034IFK=ASC("R")THENFORFL=1TO40:POSITION0,13:?#6;"=REP":POSITION0,13:?#6;"=REPCOMPUTER":NEXTFL
6036IFK=ASC("R")THENSOUND0,0,0,0:RETURN
6040IFK=ASC("S")ANDS>0THENA=4:S=S-INT(5*RND(0)+1):IFS<0THENS=0
6045IFK=ASC("T")ANDT>0THENA=9:T=T-1
6050IFT=0ANDA<3THENPOSITION1,15:?#6;"":POSITION1,16:?#6;"":GOTO6010
6060IFA<3THENPOSITION1,15:?#6;"":POSITION1,16:?#6;"":GOTO6010
6100POSITION1,15:?#6;"":POSITION1,16:?#6;""
6120TRAP6120:GET#1,K:TRAP40000
6125B=K-48:B=B*(B>=1ANDB<=4)
6130IFET(B)=0THENPOSITION1,15:?#6;"":POSITION1,16:?#6;"":GOTO6120
6140IFA=6THENGOSUB10600
6150IFA=4THENGOSUB10500
6160IFA=9THENGOSUB10400
6200MISS=INT(99*RND(0)+1):TT=INT(100*RND(0)+1):IFTT<>50THENIFMISS>85THENMISS=MISS-12:IFTT<=20THENGOTO6210
6202IFMISS>EH(B)THENPOSITION1,15:?#6;"":POSITION1,16:?#6;"":GOSUB10100:RETURN
6210EE(B)=INT(EE(B)-((A*INT(15*RND(0)+1))/ET(B)))
6215POSITION1,15:?#6;"":POSITION1,16:?#6;"":GOSUB10200
6220IFEE(B)<1THEN6500
6230E=E-INT(5*RND(0)+1)
6300RETURN
6500VP=VP+ET(B)
6505EX(B)=0:EY(B)=0
6507LETGETVALUE=G:G=B:ED(G)=0:GOSUB16000
6510ET(B)=0:EH(B)=0:ED(B)=0:EE(B)=0
6570POSITION1,15:?#6;"":POSITION1,16:?#6;"":GOSUB10300
6580G=GETVALUE:RETURN
8000FORI=0TO5:ET(I)=0:EH(I)=0:EX(I)=0:EY(I)=0:ED(I)=0:EE(I)=0:NEXTI:RETURN
9500GOSUB10700
9510POSITION1,15:?#6;"":POSITION1,16:?#6;""
9520POKE53248,0:POKE53249,0
9530POKE53277,0:POKE559,34
9550POSITION1,15:?#6;"":POSITION1,16:?#6;""
9555IFVP>HSTHENHS=VP
9560FORDLAY=1TO500:NEXTDLAY:POSITION1,15:?#6;"":POSITION1,15:?#6;"SCORE=";VP;"HIGH=";HS
9605POSITION1,16:?#6;"anotherround?";
9630TRAP9630:GET#1,K:TRAP40000
9635IFK=ASC("N")THENGOTO9900
9640AGAIN=1
9650POSITION0,1:?#6;""
9660VP=0:?""
9690GOTO7
9900POSITION1,16:?#6;"THEEND":GOTO9900
10000REMSOUNDROUTINES
10100REMMISS
10110FORW=100TO250STEP2:SOUND0,W,10,6:NEXTW:SOUND0,0,0,0:RETURN
10200REMHIT
10210FORW=0TO30:SOUND0,W*8,8,15-W/2:SOUND1,W*8,16,15-W/2:POKE712,PEEK(53770):NEXTW
10220POKE712,0:RETURN
10300REMDESTROY
10310FORW=0TO255STEP10
10320POKE704,PEEK(53770):POKE705,PEEK(704)
10330SOUND0,W,8,W/15:SOUND1,PEEK(53770),0,15*RND(1)
10340NEXTW:SOUND0,0,0,0:SOUND1,0,0,0
10350POKE704,192:POKE705,192
10360RETURN
10400REMTORPEDO
10410FORL=0TO150:SOUND0,L,152,14:NEXTL:SOUND0,0,0,0:RETURN
10500REMSECONDFIRE
10510FORI=1TO10:FORW=0TO3:SOUND0,W,2,14:SOUND1,W*3,2,10:NEXTW:NEXTI:SOUND0,0,0,0:SOUND1,0,0,0:RETURN
10600REMMAINFIRE
10610FORSO=1TO3:FORL=1TO28:SOUND0,L,86,14:SOUND1,L+15,86,10:NEXTL:SOUND1,0,0,0:SOUND0,0,0,0:NEXTSO:RETURN
10700REMLOST
10710FORW=0TO255STEP10
10720POKE710,PEEK(53770):POKE712,PEEK(53770)
10730SOUND0,W,0,15-W/17:SOUND1,128+W/2,8,8+7*RND(1)
10740NEXTW:FORW=0TO10:POKE710,68:FORI=0TO5:NEXTI:POKE710,0:NEXTW
10780SOUND0,0,0,0:SOUND1,0,0,0
10790SETCOLOR2,9,4:SETCOLOR4,0,0:RETURN
10800REMRECHARGE
10810FORW=1TO80:SOUND0,5+5*RND(0),10,12:NEXTW
10820SOUND0,0,0,0:RETURN
10900REMENEMY
10910NOISE=INT(5*RND(0)+1):FORSO=1TONOISE:POKE712,0
10920FORL=1TO30:SOUND0,L,16+NOISE*7,14:SOUND1,L+35,26,10:IFL>20THENPOKE712,PEEK(53770)
10930NEXTL:NEXTSO:POKE712,0:SOUND0,0,0,0:SOUND1,0,0,0:RETURN
12000REM
12010POKE106,PEEK(106)-5:GRAPHICS1:SETCOLOR2,7,2:SETCOLOR0,7,12
12011POSITION1,6:?#6;"''":POSITION2,8:?#6;"PC"
12012POSITION2,10:?#6;"UPS":POSITION1,12:?#6;"''"
12013POKE752,1:?:?:?"INITIALIZING...PLEASESTANDBY"
12019CSTART=(PEEK(106)+1)*256
12020FORMLIST=0TO1023:POKECSTART+MLIST,PEEK(57344+MLIST):NEXTMLIST
12030POKE756,CSTART/256
12040FORCHR=1TO24:READDATA:FORMLIST=0TO7:READVALUE:POKEDATA+CSTART+MLIST,VALUE:NEXTMLIST:NEXTCHR
12050POKE752,1:?"":RETURN
16000REM
16010IFG=1THENPOSITION4,1:GOTO16100
16020IFG=2THENPOSITION7,1:GOTO16200
16030IFG=3THENPOSITION10,1:GOTO16300
16040IFG=4THENPOSITION13,1:GOTO16400
16050IFG=5THENPOSITION16,1:GOTO16500
16060IFG=0THENPOSITION16,1:GOTO16500
16100REM1
16110IFET(G)=1THENGOTO17100
16120IFET(G)=2THENGOTO17200
16130IFET(G)=3THENGOTO17300
16200REM2
16210IFET(G)=1THENGOTO17100
16220IFET(G)=2THENGOTO17200
16230IFET(G)=3THENGOTO17300
16300REM3
16310IFET(G)=1THENGOTO17100
16320IFET(G)=2THENGOTO17200
16330IFET(G)=3THENGOTO17300
16400REM4
16410IFET(G)=1THENGOTO17100
16420IFET(G)=2THENGOTO17200
16430IFET(G)=3THENGOTO17300
16500REMSUPPLY
16505IFET(G)=0THEN?#6;"":RETURN
16510IFED(G)=6THEN?#6;"":RETURN
16520IFED(G)=5THEN?#6;"":RETURN
16530IFED(G)=4THEN?#6;"":RETURN
16540IFED(G)=3THEN?#6;"":RETURN
16550IFED(G)=2THEN?#6;"":RETURN
16560IFED(G)=1THEN?#6;"":RETURN
16570?#6;"":RETURN
17100REMPT
17110IFED(G)=5THEN?#6;"#":RETURN
17120IFED(G)=4THEN?#6;"$":RETURN
17130IFED(G)=3THEN?#6;",":RETURN
17140IFED(G)=2THEN?#6;"&":RETURN
17150IFED(G)=1THEN?#6;"'":RETURN
17160IFED(G)=0THEN?#6;"":RETURN
17200REMBTL
17210IFED(G)=5THEN?#6;"#":RETURN
17220IFED(G)=4THEN?#6;"(":RETURN
17230IFED(G)=3THEN?#6;")":RETURN
17240IFED(G)=2THEN?#6;"*":RETURN
17250IFED(G)=1THEN?#6;"+":RETURN
17260IFED(G)=0THEN?#6;"":RETURN
17300REMAIR
17310IFED(G)=5THEN?#6;"#":RETURN
17320IFED(G)=4THEN?#6;"/":RETURN
17330IFED(G)=3THEN?#6;":":RETURN
17340IFED(G)=2THEN?#6;";":RETURN
17350IFED(G)=1THEN?#6;"<":RETURN
17360IFED(G)=0THEN?#6;"":RETURN
20000REMSPACE
20010DATA432,0,0,31,245,255,127,8,28
20020DATA392,0,0,0,8,28,0,0,0
20030DATA344,0,0,24,60,60,60,0,0
20040DATA336,0,24,60,126,90,126,36,0
20050DATA448,24,60,126,90,255,255,102,66
20060DATA496,0,0,32,0,0,0,4,0
20070DATA24,0,0,0,8,8,0,0,0
20080DATA32,0,0,20,28,20,0,0,0
20090DATA96,0,0,36,60,60,36,0,0
20100DATA48,0,66,90,102,126,90,66,0
20110DATA56,66,153,189,231,255,189,153,66
20120DATA488,0,0,0,0,8,0,0,0
20130DATA304,0,0,0,8,8,0,0,0
20140DATA64,0,0,8,28,20,0,0,0
20150DATA72,0,0,24,60,36,36,0,0
20160DATA80,0,24,60,36,126,102,66,0
20170DATA88,24,24,60,36,126,231,195,129
20180DATA256,0,8,0,0,0,0,0,0
20200DATA120,0,0,0,8,28,8,0,0
20210DATA208,0,0,24,60,60,24,0,0
20220DATA216,0,24,60,102,126,60,24,0
20230DATA224,24,60,126,231,255,126,60,24
20240DATA240,0,0,0,0,0,32,0,0
20250DATA464,6,30,255,94,255,254,64,224
30000REM
30010RESTORE30020:FORI=0TO10:READC:POKE1536+I,C:NEXTI
30020DATA72,169,6,141,10,212,141,26,208,104,64
30030POKE512,0:POKE513,6
30050START=PEEK(560)+256*PEEK(561)
30060POKESTART+8,10+128
30070POKE54286,192
30080RETURN	

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!