Jump to content

blackbox

Recommended Posts

It has been a long search but I believe I have found a TI Basic program written nearly 4 decades ago by Mark Sumner, for PS Software, sold originally as Crazy Caver, subsequently rewritten as an Extended Basic program called "Starprobe 99".

The TI Gamebase has a lot of mis-attributed pirated programs in its vast collection. One of the programs in the Gamebase is called "Caverns of Mars".

It has been 38 years since I saw Crazy Caver but this Caverns program:

Matches the game description of Crazy Caver.
Has the same gameplay and screen display.
and the look of the Basic listing is the same.
I cannot be 100% certain but this Caverns program looks to be 95% at least Mark Sumner's work!
When programs have original names removed it can be quite difficult to identify them but I am fairly certain of
this one.

bb

  • Like 7
Link to comment
Share on other sites

 

2 hours ago, blackbox said:

subsequently rewritten as an Extended Basic program called "Starprobe 99".

 

The only thing I have to add to this is that certainly, there is a version of it written in TI BASIC which is branded Starprobe 99.  Really good game, for sure. 

 

100 REM   STARPROBE 99  
110 REM    M.C. SUMNER  
120 REM    9 JAN. 1983  
130 REM  ***************  
140 REM  *  TI BASIC   *  
150 REM  ***************  
160 CALL CLEAR
165 RANDOMIZE
166 M$="PAUSE"
167 CV=1
170 CALL COLOR(2,12,2)
180 CALL COLOR(9,7,2)
190 FOR A=3 TO 8
200 CALL COLOR(A,5,2)
210 NEXT A
220 CALL SCREEN(2)
230 CALL CHAR(43,"80C0E0F0F8FCFEFF")
240 CALL CHAR(44,"0103070F1F3F7FFF")
250 CALL CHAR(42,"FFFFFFFFFFFFFFFF")
260 CALL CHAR(97,"FFFEFCF8F0E0C080")
270 CALL CHAR(98,"FFFFFFFFFFFFFFFF")
280 CALL CHAR(99,"0103070F1F3F7FFF")
285 CALL CHAR(100,"FEFDFBF7EFDFBF7F")
290 PRINT "c*** c*** c*** c***         b*ba dd*a b*d* b*d* c***    b***  b*  b*** b*** dbba  "
300 PRINT "dbd*  b*  b*d* b**a         c***  b*  b*b* b*d*         dbba  da  dada dada        "
310 PRINT:"    c*** c*** c*** c*** c***    b*d* b*d* b*d* b*d* b*ba    b*** b*** b*b* b**a b***"
320 PRINT "    b*ba b**a b*b* b*d* b*ba    b*   b*d* b*** b*** b***    da   dada dbba dbba dbba"
330 PRINT:"          c***  c***                  b*d*  b*d*                  b***  b***      "
340 PRINT "          dbd*  dbd*                    b*    b*                    da    da"
350 PRINT "     (C)1983 M..C..SUMNER        PRESS ANY KEY TO BEGIN"
360 CALL KEY(0,K,S)
370 CALL SOUND(-3000,180,20,181,20,999,30,-4,10)
380 CALL COLOR(2,7,2)
382 CALL COLOR(2,9,2)
384 CALL COLOR(2,10,2)
386 CALL COLOR(2,14,2)
388 CALL COLOR(2,11,2)
390 CALL COLOR(2,16,2)
400 IF S=0 THEN 360
410 CALL CLEAR
420 PRINT "SET-UP UNDERWAY: PLEASE WAIT": : : : :
430 CALL CHAR(97,"80E0E0E8F8FEFEFF")
440 CALL CHAR(98,"010307070F6F7FFF")
450 CALL CHAR(99,"FFFEFEFAFAD0D080")
460 CALL CHAR(100,"FFFF3F3F3F372723")
470 CALL CHAR(101,"FFFFFFFFFFFFFFFF")
480 CALL CHAR(102,"0000C4EFFFFFFFFF")
490 CALL CHAR(103,"FFFFFFEE54404000")
500 CALL CHAR(104,"3C429999817E995A")
510 CALL CHAR(105,"3C428199997E5A99")
520 CALL CHAR(106,"001818")
530 CALL CHAR(107,"3C42E1E1817E5A3C")
535 CALL CHAR(108,"3C428787817E5A3C")
540 CALL CHAR(112,"8142182424184281")
550 CALL CHAR(113,"815A245A5A245A81")
560 CALL CHAR(120,"80C0AAFFFFAAC080")
570 CALL CHAR(121,"010355FFFF550301")
580 CALL CHAR(128,"000004864A492810")
590 CALL CHAR(129,"183C7E18183CFF81")
600 CALL CHAR(130,"18242418243C66E7")
610 CALL CHAR(136,"FF81FF81FF81FF81")
620 CALL CHAR(93,"FF99A5A5BDA5A5FF")
630 CALL CHAR(94,"7E819D9199917E81")
632 CALL CHAR(131,"0028245C2A1462")
634 CALL CHAR(132,"2882208520904210")
640 DEPTH=-130
645 RESTORE
650 AMMO=15
660 SCORE=0
670 FUEL=1500
680 OB=0
682 OBC=0
685 X=16
686 CAVE=1
690 REM  *** COLORS ***  
700 CALL COLOR(9,RND*10+3,2)
710 CALL COLOR(10,15,1)
720 CALL COLOR(11,7,1)
730 CALL COLOR(12,11,1)
740 CALL COLOR(13,8,1)
750 CALL COLOR(14,14,1)
760 CALL COLOR(15,4,1)
770 PRINT "        STARPROBE 99          K=HOLD POSITION(THRUST)    S=LEFT            D=RIGHT"
775 PRINT "        F=FIRE(BOMB)"
776 PRINT "*PRESS L FOR SUPER BLASTER*"
777 PRINT "   PRESS ANY KEY TO BEGIN": : : : : : : : : : : : : : : : : :
780 CALL HCHAR(10,16,104)
790 CALL KEY(0,K,S)
800 IF S=0 THEN 790
810 RANDOMIZE CV
1000 REM  MAIN LOOP  
1010 CALL KEY(1,K1,S1)
1011 CALL KEY(2,K2,S2)
1012 IF S1<>0 THEN 1200
1013 IF S2<>0 THEN 2600
1015 DEPTH=DEPTH+10
1016 IF DEPTH/500=INT(DEPTH/500)THEN 2500
1030 IF OB<1 THEN 1060
1040 ON OB GOTO 2000,3000,4000,5000,6000,7000,4100,3500
1060 READ T$
1062 IF T$<>"end" THEN 1070
1064 RESTORE 9020
1066 GOTO 1060
1070 PRINT T$
1075 CALL SOUND(-2000,-5,15)
1080 CALL HCHAR(9,X,32)
1090 CALL GCHAR(10,X,G)
1100 IF G<>32 THEN 10000
1110 CALL HCHAR(10,X,104)
1120 GOTO 1010
1200 REM  *KEY COMMANDS*  
1205 IF FUEL<1 THEN 1030
1210 IF K1<>2 THEN 1300
1220 CALL HCHAR(10,X,32)
1230 X=X-1
1240 CALL GCHAR(10,X,G)
1250 IF G<>32 THEN 10000
1260 CALL HCHAR(10,X,107)
1270 CALL SOUND(-50,-5,10)
1280 FUEL=FUEL-20
1290 GOTO 1013
1300 IF K1<>3 THEN 1400
1310 CALL HCHAR(10,X,32)
1320 X=X+1
1330 CALL GCHAR(10,X,G)
1340 IF G<>32 THEN 10000
1345 CALL HCHAR(10,X,108)
1350 CALL SOUND(-50,-5,10)
1360 FUEL=FUEL-20
1370 GOTO 1013
1400 IF K1<>12 THEN 1700
1405 IF AMMO<1 THEN 1013
1410 CALL HCHAR(10,X,105)
1420 FOR A=1 TO 5
1430 CALL GCHAR(10+A,X,G)
1440 IF G<96 THEN 1450
1442 IF G>119 THEN 1465
1444 GOTO 1515
1450 IF G=93 THEN 1530
1460 IF G=94 THEN 1590
1465 IF G=120 THEN 1710
1466 IF G=121 THEN 1710
1470 CALL SOUND(-10,-3,10)
1480 CALL HCHAR(10+A,X,106)
1500 CALL HCHAR(10+A,X,32)
1510 NEXT A
1515 CALL VCHAR(9+A,X,32)
1520 GOTO 1013
1530 AMMO=AMMO+5
1540 FOR B=1 TO 3
1550 CALL SOUND(10,110,5,-5,1)
1560 NEXT B
1570 CALL VCHAR(9+A,X,32,2)
1580 GOTO 1013
1590 FUEL=FUEL+150
1600 FOR B=1 TO 9
1610 CALL SOUND(-1000,110+(B*100),10-B,111+(B*100),10-B,112+(B*100),10-B)
1620 NEXT B
1630 CALL VCHAR(9+A,X,32,2)
1640 GOTO 1013
1700 GOTO 1000
1710 Z=0
1712 CALL VCHAR(9+A,X,32,2)
1720 GOTO 1013
2000 REM  *FIXED MINES*  
2010 GOSUB 8000
2020 FOR A=1 TO 4
2030 CALL HCHAR(23,INT(RND*18)+8,112)
2040 NEXT A
2045 CALL SOUND(-100,440,9,441,9,442,9)
2050 GOTO 1080
2500 OB=INT(RND*8)+1
2510 GOTO 1040
2600 IF K2<>3 THEN 2650
2605 IF FUEL<1 THEN 1030
2610 CALL HCHAR(10,X,105)
2620 CALL SOUND(-100,-5,5)
2630 GOTO 1010
2650 IF K2<>12 THEN 2720
2655 IF AMMO<5 THEN 1030
2656 IF FUEL<100 THEN 1030
2660 CALL VCHAR(11,X,136,13)
2670 CALL SOUND(-100,-2,0)
2680 CALL VCHAR(11,X,32,13)
2690 AMMO=AMMO-5
2700 FUEL=FUEL-100
2705 Z=0
2710 GOTO 1010
2720 IF K2<>11 THEN 1030
2730 FOR A=1 TO 5
2735 B$=SEG$(M$,A,1)
2740 B=ASC(B$)
2750 CALL HCHAR(A,4,B)
2760 NEXT A
2761 M$="DEPTH: "&STR$(DEPTH)
2762 FOR A=1 TO LEN(M$)
2763 CALL HCHAR(1,5+A,ASC(SEG$(M$,A,1)))
2764 NEXT A
2765 M$="FUEL : "&STR$(FUEL)
2766 FOR A=1 TO LEN(M$)
2767 CALL HCHAR(2,5+A,ASC(SEG$(M$,A,1)))
2768 NEXT A
2769 M$="AMMO : "&STR$(AMMO)
2770 FOR A=1 TO LEN(M$)
2771 CALL HCHAR(3,5+A,ASC(SEG$(M$,A,1)))
2772 NEXT A
2773 M$="PAUSE"
2775 CALL KEY(0,K,S)
2780 A=A+1
2790 IF A=400 THEN 2810
2800 IF S<1 THEN 2775
2805 GOTO 1030
2810 CALL SOUND(200,220,5)
2820 CALL SOUND(200,440,5)
2830 CALL SOUND(200,880,5)
2840 A=1
2850 GOTO 2775
3000 REM  SUPRISE MINES  
3010 GOSUB 8000
3020 IF OBC<15 THEN 1080
3030 FOR A=1 TO 4
3040 CALL HCHAR(RND*9+11,RND*17+8,113)
3045 CALL SOUND(-10,-2,5)
3050 NEXT A
3060 GOTO 1080
3500 REM  *WIDER WALLS*  
3510 GOSUB 8000
3520 IF OBC<5 THEN 1080
3530 IF OBC/3<>INT(OBC/3)THEN 1080
3540 CALL HCHAR(23,8,101,18)
3550 CALL HCHAR(23,8+RND*10,32,2)
3560 CALL SOUND(-100,-3,10)
3570 GOTO 1080
4000 REM  *ZAPPER*  
4010 GOSUB 8000
4011 IF OBC>22 THEN 2020
4015 CALL SOUND(-300,1000,9,1001,5,1002,5)
4020 IF OBC<>8 THEN 4050
4030 CALL HCHAR(23,8,120)
4040 CALL HCHAR(23,25,121)
4045 Z=1
4046 GOTO 1080
4050 IF OBC<>22 THEN 2020
4060 IF Z=0 THEN 1080
4070 CALL HCHAR(9,9,128,16)
4080 CALL SOUND(-100,-3,1)
4090 GOTO 10000
4100 REM  *SHORT ZAPPER*  
4110 GOSUB 8000
4120 IF OBC>10 THEN 4140
4125 Z=1
4140 IF OBC<>14 THEN 4180
4150 CALL HCHAR(23,8,120)
4160 CALL HCHAR(23,25,121)
4170 GOTO 1080
4180 IF OBC<>28 THEN 1080
4185 IF OBC<14 THEN 1080
4190 IF Z=0 THEN 1080
4200 CALL HCHAR(9,9,128,16)
4210 CALL SOUND(-100,-3,1)
4220 GOTO 10000
5000 REM  *MINE WALLS*  
5010 GOSUB 8000
5012 IF OBC<5 THEN 1080
5015 CALL SOUND(-200,880,9,881,9,882,9)
5020 CALL HCHAR(RND*3+20,RND*12+8,112,RND*6+1)
5030 GOTO 1080
6000 REM  *EVERY OTHER WALLS*      
6010 GOSUB 8000
6015 CALL SOUND(-200,-7,10)
6020 IF OBC/2<>INT(OBC/2)THEN 1080
6021 IF OBC>30 THEN 1080
6022 IF OBC=0 THEN 1080
6030 CALL HCHAR(23,8,101,18)
6040 CALL HCHAR(23,RND*10+8,32)
6041 CALL HCHAR(23,RND*10+8,32)
6042 IF OBC<>35 THEN 6050
6045 CALL HCHAR(23,8,32,18)
6050 GOTO 1080
7000 REM  CROSS CUTS  
7010 GOSUB 8000
7020 IF OBC<14 THEN 1080
7025 CALL SOUND(-100,-7,10)
7030 IF OBC/2<>INT(OBC/2)THEN 7060
7040 CALL VCHAR(RND*8+11,RND*18+8,113,RND*4+1)
7050 GOTO 1080
7060 CALL HCHAR(RND*10+12,RND*11+8,112,RND*6+1)
7070 GOTO 1080
8000 REM  *CHAMBER*  
8010 PRINT "eeeee                  eeeee"
8020 OBC=OBC+1
8022 IF OBC<35 THEN 8030
8024 OBC=0
8026 OB=0
8030 RETURN
9000 REM  *TERRAIN DATA*   
9010 DATA "ffffffa   bfffa  bfffa bffff","eeeeeeea  eeeeea deeee eeeee","eeeeeeee beeeeee  eeeeaeeeee"
9020 DATA "eeeeeeee eeeeeec  deeeeeeeee","eeeeeeec eeeeec    deeeeeeee","eeeeeec  deeec      deeeeeee"
9030 DATA eeeeec    dee        eeeeeee,eeeec      dc        eeeeeee,eeeea               beeeeeee
9040 DATA eeeeea            beeeeeeeee,eeeeeea    ba   beeeeeeeeeee,eeeeeeea  beeabeeeeeeeeeeeee
9050 DATA eeeeeeee  eeeeeeeeeeeeeeeeee,eeeeeeec  deeeeeeeeeeeeeeeee,eeeeeec    deeeeeeeeeeeeeeee
9060 DATA eeeeec      deeeeeeeeeeeeeee,eeeee       beeeeeeeeeeeeeee,eeeee      beeeeeeeeeeeeeeee
9070 DATA eeeee   ^ beeeeeeeeeeeeeeeee,eeeeea  eeeeeeeeeeeeeeeeeeee,eeeeeea deeeeeeeeeeeeeeeeeee
9080 DATA eeeeeee    deeeeeeeeeeeeeeee,eeeeeee      deeeeeeeeeeeeee,eeeeeee         deeeeeeeeeee
9090 DATA eeeeeee          deeeeeeeeee,eeeeeee   ] ^     eeeeeeeeee,eeeeeee  beeea   eeeeeeeeeee
9100 DATA eeeeeec  eeeeea  eeeeeeeeeee,eeeeec  beeeee   deeeeeeeeee,eeeee  beeeee    eeeeeeeeeee
9110 DATA eeeeeabeeeeec    deeeeeeeeee,eeeeeeeeeeec      deeeeeeeee,eeeeeeeeeec   ^    deeeeeeee
9120 DATA eeeeeeeeec   bea   beeeeeeee,eeeeeeeec  beeeeabeeeeeeeeee,eeeeeeec   eeeeeeeeeeeeeeeee
9130 DATA eeeeeee    eeeeeeec  deeeeee,eeeeeeea   deeeec     deeeee,eeeeeeee    e ee           e
9140 DATA eeeeeeee      dc        ^^^e,eeeeeeee               eeeee,eeeeeeee              beeeee
9150 DATA eeeeeeeea            beeeeee,eeeeeeeeea      ^ ] beeeeeee,eeeeeeeeee   ba eeeeeeeeeeee
9160 DATA eeeeeeeeee  bee deeeeeeeeeee,eeeeeeeeee  eee  deeeeeeeeee,eeeeeeeee  beee    deeeeeeee
9170 DATA eeeeeeeee beeec     deeeeeee,eeeeeeeee eee        eeeeeee,eeeeeeeee eee       beeeeeee
9180 DATA eeeeeeeee eee      beeeeeeee,eeeeeeeee eee     beeeeeeeee,eeeeeeeee eee    beeeeeeeeee
9190 DATA eeeeeeeec eee   beeeeeeeeeee,eeeeeeee  eee  beeeeeeeeeeee,eeeeeec   eee eeeeeeeeeeeeee
9200 DATA eeeeee   beee eeeeeeeeeeeeee,eeeeeea beeee^eeeeeeeeeeeeee,eeeeeeebeeeee eeeeeeeeeeeeee
9210 DATA eeeeeeeeeeeee deeeeeeeeeeeee,eeeeeeeeeeeee  deeeeeeeeeeee,eeeeeeeeeeeee   deeeeeeeeeee
9220 DATA eeeeeeeeeeeec    deeeeeeeeee,eeeeeeeeeeee      eeeeeeeeee,eeeeeeeeeeee      eeeeeeeeee
9230 DATA end
10000 CALL SOUND(-50,-2,5)
10001 IF FUEL>0 THEN 10010
10002 FUEL=0
10010 CALL HCHAR(9,X,103)
10020 CALL SOUND(-300,-5,0)
10030 CALL HCHAR(9,X,132)
10040 FOR A=1 TO 1000
10050 NEXT A
10060 PRINT "****STAR PROBE DESTROYED****"
10070 PRINT
10080 PRINT "TOTAL DEPTH:";DEPTH
10090 PRINT "RESERVE FUEL:";FUEL
10100 PRINT "RESERVE AMMO:";AMMO
10105 IF DEPTH<GDEPTH THEN 10110
10106 GDEPTH=DEPTH
10110 PRINT "DEEPEST PROBE:";GDEPTH
10115 PRINT
10120 PRINT "*SELECT CAVE(1-9)  0= EXIT *"
10130 CALL KEY(0,K,S)
10140 IF S<1 THEN 10130
10145 IF K=48 THEN 10200
10150 IF K<49 THEN 10130
10160 IF K>58 THEN 10130
10170 CV=K-48
10180 GOTO 640
10200 PRINT "GOODBYE "

 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...