From 0fabbe0643c029adcf60e6ad332c6b86f94799e2 Mon Sep 17 00:00:00 2001 From: tilleul Date: Sun, 5 Jun 2022 15:30:00 +0200 Subject: [PATCH] Add files via upload --- .../001 - Space Maze/files/htc1.png | Bin 0 -> 13663 bytes .../001 - Space Maze/files/htc1_spacemaze.dsk | Bin 0 -> 143360 bytes .../001 - Space Maze/files/htc2.png | Bin 0 -> 8491 bytes .../001 - Space Maze/files/htc3.png | Bin 0 -> 36089 bytes .../001 - Space Maze/files/spacemaze.bas | 87 ++++++++++ .../files/spacemaze_htc_v1.bas | 148 ++++++++++++++++++ .../files/spacemaze_quickfix.bas | 87 ++++++++++ .../files/spacemaze_quickfix2.bas | 87 ++++++++++ 8 files changed, 409 insertions(+) create mode 100644 honoring_the_code/001 - Space Maze/files/htc1.png create mode 100644 honoring_the_code/001 - Space Maze/files/htc1_spacemaze.dsk create mode 100644 honoring_the_code/001 - Space Maze/files/htc2.png create mode 100644 honoring_the_code/001 - Space Maze/files/htc3.png create mode 100644 honoring_the_code/001 - Space Maze/files/spacemaze.bas create mode 100644 honoring_the_code/001 - Space Maze/files/spacemaze_htc_v1.bas create mode 100644 honoring_the_code/001 - Space Maze/files/spacemaze_quickfix.bas create mode 100644 honoring_the_code/001 - Space Maze/files/spacemaze_quickfix2.bas diff --git a/honoring_the_code/001 - Space Maze/files/htc1.png b/honoring_the_code/001 - Space Maze/files/htc1.png new file mode 100644 index 0000000000000000000000000000000000000000..e35641fa539cd2792278c7e84c0af43331c57d0d GIT binary patch literal 13663 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 literal 0 HcmV?d00001 diff --git a/honoring_the_code/001 - Space Maze/files/htc1_spacemaze.dsk b/honoring_the_code/001 - Space Maze/files/htc1_spacemaze.dsk new file mode 100644 index 0000000000000000000000000000000000000000..64ca83043d72285a831f9f1a2edc8f7297c0e5c6 GIT binary patch literal 143360 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 literal 0 HcmV?d00001 diff --git a/honoring_the_code/001 - Space Maze/files/htc3.png b/honoring_the_code/001 - Space Maze/files/htc3.png new file mode 100644 index 0000000000000000000000000000000000000000..f08ab78d4460061c65c2da46a0e3394cac2b9574 GIT binary patch literal 36089 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 l(Zk>T`yO* "N" THEN GOSUB 500 + 50 GOTO 200 + 97 REM THE FOLLOWING SUBROUTINE TESTS WHETHER X AND Y ARE CONTAINED IN THE SERIES OF 11 RECTANGLES MAKING UP THE MAZE + 98 REM IF X AND Y ARE SENSED, THEN Z IS SET THE NUMBER OF THE RECTANGLE. AT THE END OF THE TEST, Z IS TESTED. IF Z IS GREATER THAN + 99 REM ZERO IT MEANS X AND Y ARE IN BOUNDS. IF Z=0 THEN NO X AND Y HAVE BEEN SENSED IN BOUNDS AND THE PROGRAM GOES TO THE CRASH SUBRTNE. + 100 IF (X > = 10 AND X < = 80) AND (Y > = 80 AND Y < = 100) THEN Z = 1 + 110 IF (X > = 60 AND X < = 100) AND (Y > = 100 AND Y < = 120) THEN Z = 2 + 120 IF (X > = 80 AND X < = 100) AND (Y > = 120 AND Y < = 158) THEN Z = 3 + 125 IF (X > = 100 AND X < = 140) AND (Y > = 140 AND Y < = 158) THEN Z = 4 + 130 IF (X > = 120 AND X < = 180) AND (Y > = 120 AND Y < = 140) THEN Z = 5 + 135 IF (X > = 160 AND X < = 220) AND (Y > = 140 AND Y < = 158) THEN Z = 6 + 137 IF (X > = 200 AND X < = 220) AND (Y > = 110 AND Y < = 140) THEN Z = 6 + 138 IF (X > = 220 AND X < = 265) AND (Y > = 110 AND Y < = 130) THEN Z = 6 + 139 IF (X > = 245 AND X < = 265) AND (Y > = 40 AND Y < = 110) THEN Z = 6 + 140 IF (X > = 215 AND X < = 245) AND (Y > = 40 AND Y < = 60) THEN Z = 6 + 141 IF (X > = 215 AND X < = 235) AND (Y > = 60 AND Y < = 100) THEN Z = 6 + 142 IF (X > = 180 AND X < = 235) AND (Y > = 80 AND Y < = 100) THEN Z = 6 + 145 IF (X > = 180 AND X < = 200) AND (Y > = 60 AND Y < = 100) THEN Z = 8 + 150 IF (X > = 140 AND X < = 180) AND (Y > = 60 AND Y < = 80) THEN Z = 9 + 160 IF (X > = 100 AND X < = 160) AND (Y > = 40 AND Y < = 60) THEN Z = 10 + 162 IF (X > = 100 AND X < = 120) AND (Y > = 60 AND Y < = 80) THEN Z = 11 + 165 IF (X > = 106 AND X < = 114) AND (Y > = 66 AND Y < = 74) THEN 3000: REM BRANCH TO WIN + 170 IF Z < = 0 THEN 4000: REM BRANCH TO CRASH...NO FLAGS WERE SET TO INDICATE PRESENCE IN THE MAZE...THEREFORE MUST BE OUTSIDE. + 175 Z = 0: RETURN : REM RESET Z EACH TEST + 200 X = 15:Y = 90:HV = 0:VV = 0:TM = 600:XO = 15:YO = 90: CALL - 936 + 210 IF PDL (0) > = 165 THEN HV = HV + 1 + 220 IF PDL (0) < = 90 THEN HV = HV - 1 + 230 IF PDL (1) > = 165 THEN VV = VV + 1 + 231 IF HD$ = "E" THEN 240 + 232 IF RND (1) < .05 THEN HV = HV + 1 + 233 IF RND (1) > .95 THEN VV = VV + 1 + 240 IF PDL (1) < = 90 THEN VV = VV - 1 + 242 X = XO + HV:Y = YO + VV + 243 TM = TM - 1: VTAB 21: PRINT TAB( 10)"FUEL LEFT= ";TM: IF TM < 100 THEN VTAB 21: CALL - 868: PRINT TAB( 10)"FUEL LEFT= ";TM + 245 VTAB 22: CALL - 868: PRINT "HORIZ =";HV;: PRINT TAB( 25)"VERTICAL =";VV + 260 HCOLOR= 3: HPLOT X,Y: IF PT = 0 THEN 267 + 265 VTAB 23: PRINT TAB( 4)"PREVIOUS RECORD SCORE IS: ";PT + 267 IF TM < = 0 THEN CALL - 936: FLASH : PRINT TAB( 10)"OUT OF FUEL";: PRINT TAB( 10)" ": GOSUB 4000 + 270 IF X = XO AND Y = YO THEN 300 + 280 HCOLOR= 0: HPLOT XO,YO: IF NS$ = "N" THEN 300 + 285 POKE 780,150: POKE 781,10: CALL 782 + 300 XO = X:YO = Y: GOSUB 100: GOTO 210 + 498 REM THE 500 SUBRTNE SETS UP THE MUSIC. M1=PITCH, M2=DURATION. 700 PLAYS IT. + 500 M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700:M1 = 190:M2 = 75: GOSUB 700 + 510 M1 = 203:M2 = 75: GOSUB 700:M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700 + 515 M1 = 190:M2 = 100: GOSUB 700:M1 = 203:M2 = 100: GOSUB 700:M1 = 190:M2 = 100: GOSUB 700:M1 = 230:M2 = 250: GOSUB 700: RETURN + 700 POKE 780,M1: POKE 781,M2: CALL 782: RETURN + 2000 HCOLOR= 3: HPLOT 0,0 TO 279,0 TO 279,159 TO 0,159 TO 0,0 + 2001 HPLOT 70,10 TO 60,10 TO 60,20 TO 70,20 TO 70,30 TO 60,30: HPLOT 75,30 TO 75,10 TO 85,10 TO 85,20 TO 75,20: HPLOT 90,30 TO 90,10 TO 100,10 TO 100,30: HPLOT 90,20 TO 100,20 + 2002 HPLOT 115,10 TO 105,10 TO 105,30 TO 115,30: HPLOT 130,10 TO 120,10 TO 120,30 TO 130,30: HPLOT 120,20 TO 125,20: HPLOT 140,30 TO 140,10 TO 146,20 TO 152,10 TO 152,30 + 2003 HPLOT 158,30 TO 158,10 TO 168,10 TO 168,30: HPLOT 158,20 TO 168,20: HPLOT 173,10 TO 183,10 TO 173,30 TO 183,30: HPLOT 198,10 TO 188,10 TO 188,30 TO 198,30: HPLOT 188,20 TO 193,20 + 2005 HPLOT 10,80 TO 80,80 TO 80,100 TO 100,100 TO 100,140 TO 120,140 TO 120,120 TO 180,120 + 2010 HPLOT 180,120 TO 180,140 TO 200,140 TO 200,110 TO 245,110 TO 245,60 TO 235,60 TO 235,100 TO 180,100 TO 180,80 TO 140,80 TO 140,60 TO 120,60 TO 120,80 TO 100,80 + 2015 HPLOT 100,80 TO 100,40 TO 160,40 TO 160,60 TO 200,60 TO 200,80 TO 215,80 TO 215,40 TO 265,40 TO 265,130 TO 220,130 TO 220,158 TO 160,158 + 2020 HPLOT 220,158 TO 160,158 TO 160,140 TO 140,140 TO 140,158 TO 80,158 TO 80,120 TO 60,120 TO 60,100 TO 10,100 + 2030 HCOLOR= 3: HPLOT 106,66 TO 114,66 TO 114,74 TO 106,74 TO 106,66 + 2033 HPLOT 108,68 TO 112,72: HPLOT 108,72 TO 112,68: RETURN + 3000 POP : TEXT : FOR NN = 250 TO 0 STEP - 15: PRINT "** WINNER **";: POKE 780,NN: POKE 781,10 + 3005 CALL 782: NEXT NN: FOR N = 1 TO 500: NEXT N: PRINT : PRINT + 3010 IF TM > PT THEN HOME : VTAB 10: FLASH : PRINT "CONGRATULATIONS!": NORMAL : PRINT "YOU'VE BEATEN THE PREVIOUS HIGH SCORE ": PRINT "OF ";PT;" WITH YOUR SCORE OF ";TM + 3011 GC = GC + 1: IF GC = 1 THEN PRINT : PRINT "IF YOU'VE BEEN PLAYING THE EASY GAME": PRINT "YOU'RE A WINNER! NOW WE'LL ADVANCE TO": PRINT "THE HARD GAME":HD$ = "H" + 3012 IF TM > PT THEN PT = TM + 3015 GOTO 4007 + 4000 POP : TEXT : FLASH : FOR NN = 1 TO 100: PRINT "** CRASH **";: NEXT NN: NORMAL + 4005 FOR NN = 1 TO 250 STEP 50: POKE 780,NN: POKE 781,50: CALL 782: NEXT NN + 4006 FOR NN = 1 TO 2000: NEXT NN: CALL - 936 + 4007 INPUT "ANOTHER MISSION? HIT RETURN";A$: HGR : GOTO 40 \ No newline at end of file diff --git a/honoring_the_code/001 - Space Maze/files/spacemaze_htc_v1.bas b/honoring_the_code/001 - Space Maze/files/spacemaze_htc_v1.bas new file mode 100644 index 0000000..a9b25a5 --- /dev/null +++ b/honoring_the_code/001 - Space Maze/files/spacemaze_htc_v1.bas @@ -0,0 +1,148 @@ + 0 GOTO 5000 + + 100 IF (X > = 10 AND X < = 80) AND (Y > = 80 AND Y < = 100) THEN Z=1: GOTO 180 + 110 IF (X > = 60 AND X < = 100) AND (Y > = 100 AND Y < = 120) THEN Z=2: GOTO 180 + 120 IF (X > = 80 AND X < = 100) AND (Y > = 120 AND Y < = 158) THEN Z=3: GOTO 180 + 125 IF (X > = 100 AND X < = 140) AND (Y > = 140 AND Y < = 158) THEN Z=4: GOTO 180 + 130 IF (X > = 120 AND X < = 180) AND (Y > = 120 AND Y < = 140) THEN Z=5: GOTO 180 + 135 IF (X > = 160 AND X < = 220) AND (Y > = 140 AND Y < = 158) THEN Z=6: GOTO 180 + 137 IF (X > = 200 AND X < = 220) AND (Y > = 110 AND Y < = 140) THEN Z=7: GOTO 180 + 138 IF (X > = 220 AND X < = 265) AND (Y > = 110 AND Y < = 130) THEN Z=8: GOTO 180 + 139 IF (X > = 245 AND X < = 265) AND (Y > = 40 AND Y < = 110) THEN Z=9: GOTO 180 + 140 IF (X > = 215 AND X < = 245) AND (Y > = 40 AND Y < = 60) THEN Z=10: GOTO 180 + 141 IF (X > = 215 AND X < = 235) AND (Y > = 60 AND Y < = 100) THEN Z=11: GOTO 180 + 142 IF (X > = 180 AND X < = 235) AND (Y > = 80 AND Y < = 100) THEN Z=12: GOTO 180 + 145 IF (X > = 180 AND X < = 200) AND (Y > = 60 AND Y < = 100) THEN Z=13: GOTO 180 + 150 IF (X > = 140 AND X < = 180) AND (Y > = 60 AND Y < = 80) THEN Z=14: GOTO 180 + 160 IF (X > = 100 AND X < = 160) AND (Y > = 40 AND Y < = 60) THEN Z=15: GOTO 180 + 162 IF (X > = 106 AND X < = 114) AND (Y > = 66 AND Y < = 74) THEN 3000: REM BRANCH TO WIN + 165 IF (X > = 100 AND X < = 120) AND (Y > = 60 AND Y < = 80) THEN Z=16: GOTO 180 + 170 GOTO 4000: REM BRANCH TO CRASH...NO FLAGS WERE SET TO INDICATE PRESENCE IN THE MAZE...THEREFORE MUST BE OUTSIDE. + 180 IF J THEN 210 + 190 K=PEEK(H): IF K = 201 THEN VV=VV-1: POKE C,0: GOTO 242 + 195 IF K = 202 THEN HV=HV-1: POKE C,0: GOTO 242 + 200 IF K = 203 THEN VV=VV+1: POKE C,0: GOTO 242 + 205 IF K = 204 THEN HV=HV+1: POKE C,0: GOTO 242 + 206 GOTO 242 + + 210 IF PDL (0) > = 165 THEN HV = HV + 1: REM IF HV> 1 THEN HV=1 + 220 IF PDL (0) < = 90 THEN HV = HV - 1: REM IF HV<-1 THEN HV=-1 + 230 IF PDL (1) > = 165 THEN VV = VV + 1: REM IF VV>1 THEN VV=1 + + 231 IF E THEN 240 + 232 IF RND (1) < .05 THEN HV = HV + 1 + 233 IF RND (1) > .95 THEN VV = VV + 1 + 240 IF PDL (1) < = 90 THEN VV = VV - 1: REM IF VV<-1 THEN VV=-1 + 242 X = XO + HV:Y = YO + VV + + 243 TM = TM - 1: VTAB 21: HTAB 25: PRINT TM" " + 245 HTAB 13: PRINT HV" ";: HTAB 38: PRINT VV" " + + 260 HCOLOR= 3: HPLOT X,Y + + 267 IF TM < = 0 THEN HOME: FLASH : PRINT TAB( 10)"OUT OF FUEL";: PRINT TAB( 10)" ": GOTO 4000 + 270 IF X = XO AND Y = YO THEN 300 + + + 280 HCOLOR= 0: HPLOT XO,YO: IF M THEN 300 + 285 POKE D,10: CALL S + 300 XO = X:YO = Y: ON Z GOTO 100, 100, 110, 120, 125,130,135,137,138,139,140,141,142,145,150,160,165: GOTO 210 + + + 498 REM THE 500 SUBRTNE SETS UP THE MUSIC. M1=PITCH, M2=DURATION. 700 PLAYS IT. + 499 REM *********** PLAY STAR WARS THEME ********** + 500 M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700:M1 = 190:M2 = 75: GOSUB 700 + 510 M1 = 203:M2 = 75: GOSUB 700:M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700 + 515 M1 = 190:M2 = 100: GOSUB 700:M1 = 203:M2 = 100: GOSUB 700:M1 = 190:M2 = 100: GOSUB 700:M1 = 230:M2 = 250: GOSUB 700: RETURN + 700 POKE P,M1: POKE D,M2: CALL S: RETURN + + + + + 1999 REM ******** DRAW MAZE ************** + 2000 HCOLOR= 3: HPLOT 0,0 TO 279,0 TO 279,159 TO 0,159 TO 0,0 + 2001 HPLOT 70,10 TO 60,10 TO 60,20 TO 70,20 TO 70,30 TO 60,30: HPLOT 75,30 TO 75,10 TO 85,10 TO 85,20 TO 75,20: HPLOT 90,30 TO 90,10 TO 100,10 TO 100,30: HPLOT 90,20 TO 100,20 + 2002 HPLOT 115,10 TO 105,10 TO 105,30 TO 115,30: HPLOT 130,10 TO 120,10 TO 120,30 TO 130,30: HPLOT 120,20 TO 125,20: HPLOT 140,30 TO 140,10 TO 146,20 TO 152,10 TO 152,30 + 2003 HPLOT 158,30 TO 158,10 TO 168,10 TO 168,30: HPLOT 158,20 TO 168,20: HPLOT 173,10 TO 183,10 TO 173,30 TO 183,30: HPLOT 198,10 TO 188,10 TO 188,30 TO 198,30: HPLOT 188,20 TO 193,20 + 2005 HPLOT 10,80 TO 80,80 TO 80,100 TO 100,100 TO 100,140 TO 120,140 TO 120,120 TO 180,120 + 2010 HPLOT 180,120 TO 180,140 TO 200,140 TO 200,110 TO 245,110 TO 245,60 TO 235,60 TO 235,100 TO 180,100 TO 180,80 TO 140,80 TO 140,60 TO 120,60 TO 120,80 TO 100,80 + 2015 HPLOT 100,80 TO 100,40 TO 160,40 TO 160,60 TO 200,60 TO 200,80 TO 215,80 TO 215,40 TO 265,40 TO 265,130 TO 220,130 TO 220,158 TO 160,158 + 2020 HPLOT 220,158 TO 160,158 TO 160,140 TO 140,140 TO 140,158 TO 80,158 TO 80,120 TO 60,120 TO 60,100 TO 10,100 + 2030 HCOLOR= 3: HPLOT 106,66 TO 114,66 TO 114,74 TO 106,74 TO 106,66 + 2033 HPLOT 108,68 TO 112,72: HPLOT 108,72 TO 112,68: RETURN + + 2999 REM ******** WINNER ************* + 3000 TEXT : FOR I = 250 TO 0 STEP - 15: PRINT "** WINNER **";: POKE P,I: POKE D,10 + 3005 CALL S: NEXT : FOR I = 1 TO 500: NEXT: PRINT : PRINT + 3010 IF TM > PT THEN HOME : VTAB 10: FLASH : PRINT "CONGRATULATIONS!": NORMAL : PRINT "YOU'VE BEATEN THE PREVIOUS HIGH SCORE ": PRINT "OF ";PT;" WITH YOUR SCORE OF ";TM + 3011 GC = GC + 1: IF GC = 1 THEN PRINT : PRINT "IF YOU'VE BEEN PLAYING THE EASY GAME": PRINT "YOU'RE A WINNER! NOW WE'LL ADVANCE TO": PRINT "THE HARD GAME":HD$ = "H" + 3012 IF TM > PT THEN PT = TM + 3015 PRINT: GOTO 4010 + + 3999 REM ********** CRASH ! ********** + 4000 TEXT : FLASH : FOR I = 1 TO 80: PRINT "** CRASH **";: POKE P,I: POKE D,2: CALL S: NEXT: NORMAL + 4005 FOR I = 1 TO 250 STEP 50: POKE P,I: POKE D,50: CALL S: NEXT + 4006 FOR I = 1 TO 1000: NEXT: HOME + + 4009 REM ********** PLAY AGAIN ? ******** + 4010 POKE C,0: PRINT "ANOTHER MISSION (";:INVERSE:?"Y";:NORMAL:?"/N)? ";: GET A$: IF A$<>"N" THEN HGR : GOTO 6000 + 4020 END + + + 4098 REM THE FOLLOWING SUBROUTINE GOES INTO MEMORY BLOCK HEX $30E (782), THE TONES RESPOND TO POKE 0 TO 255 + 4099 REM PITCH= POKE 780,PITCH DURATION=POKE 781,DURATION + 5000 POKE 782,173: POKE 783,48: POKE 784,192: POKE 785,136: POKE 786,208: POKE 787,5: POKE 788,206: POKE 789,13: POKE 790,3 + 5010 POKE 791,240: POKE 792,9: POKE 793,202: POKE 794,208: POKE 795,245: POKE 796,174: POKE 797,12: POKE 798,3: POKE 799,76 + 5020 POKE 800,14: POKE 801,3: POKE 802,96 + 5030 TEXT: HOME: S=782: P=780: D=781: H= 49152: C=49168 + 5040 VTAB 2: INVERSE : HTAB 13: PRINT "** SPACE MAZE **": VTAB 22: HTAB 4: PRINT "COPYRIGHT 1980..MICRO-SPARC, INC.": VTAB 24: HTAB 2: NORMAL: PRINT "*CODE HONORED* IN 2022 BY FVL FOR A2SE"; + 5050 FOR I = 250 TO 0 STEP - 15: POKE P, I: POKE D,10: CALL S: NEXT + 5060 VTAB 6: HTAB 1: PRINT "YOU WILL PILOT A SPACE CRUISER THRU THE": PRINT "STAR MAZE TO REACH THE PRIZED DILITHIUM": PRINT "CRYSTALS AT THE CENTER OF THE MAZE": INVERSE : PRINT + 5070 PRINT "BE CAREFUL! IN THE HARD VERSION OF THE": PRINT "GAME YOUR SHIP IS PULLED BY HOSTILE ": PRINT "MAGNETIC FORCES.. SO TAKE CARE " + 5080 PRINT "NOT TO CRASH!!!!!!!!!!!!!!!!!!!!!!!!!!!" + 5090 NORMAL : PRINT: PRINT "DO YOU WANT YOUR SHIP SIGNAL": ?"SOUNDS (";:INVERSE:?"Y";:NORMAL:?"/N)? ";: GET A$: M=A$="N": PRINT: PRINT "EASY OR HARD GAME (";:INVERSE: ?"E";: NORMAL: ?"/H)? "; : GET A$: E= A$<>"H" + 5100 PRINT: PRINT "DO YOU WANT STARWARS MUSIC EACH": PRINT "GAME (Y/";:INVERSE:?"N";:NORMAL:?")? ";: GET M$ + 5110 PRINT: PRINT "JOYSTICK OR KEYBOARD (J/";:INVERSE:?"K";:NORMAL:?")? ";: GET J$: J=J$="J": IF NOT J THEN PRINT: PRINT "USE I/J/K/L TO MOVE. PRESS ANY KEY. ";: GET A$ + + 5999 REM *********** START NEW GAME ************ + 6000 HOME: HGR : GOSUB 2000: IF PT>0 THEN VTAB 24: PRINT TAB(7)"PREVIOUS RECORD SCORE IS: ";PT; + 6010 IF M$ = "Y" THEN GOSUB 500 + 6020 Z=1: X = 15:Y = 90:HV = 0:VV = 0:TM = 600:XO = X:YO = Y: POKE P,150 + 6030 VTAB 21: HTAB 14: PRINT "FUEL LEFT= "TM" " + 6040 PRINT "HORIZONTAL= "HV;: HTAB 28: PRINT "VERTICAL= "VV + 6100 GOTO 180 + + + + + + 7000 REM ************************* + 7010 REM ** SPACE MAZE ** + 7020 REM ** MICRO-SPARC ** + 7030 REM ** P.O. BOX 325 ** + 7040 REM ** LINCOLN MASS 01773 ** + 7050 REM ** COPYRIGHT C 1980 ** + 7060 REM ** ** + 7070 REM ** HONORING THE CODE ** + 7080 REM ** IN 2022 BY FVL ** + 7090 REM ** FOR A2SE FB GROUP ** + 7100 REM ************************* + + 8000 REM VARIABLES + 8010 REM ************** + 8020 REM P = ADDRESS FOR PITCH + 8030 REM D = ADDRESS FOR DURATION + 8040 REM K = KEY READ + 8050 REM C = CLEAR KEYBOARD STROBE ADDRESS (49168) + 8060 REM H = READ LAST KEY PRESSED ADDRESS (49152) + 8070 REM Z = ZONE THE SPACESHIP IS IN + 8080 REM X, Y = SPACESHIP POSITION ON SCREEN + 8090 REM XO, YO = SPACESHIP PREVIOUS POSITION + 8100 REM HV, VV = HORIZONTAL AND VERTICAL SPEED + 8110 REM TM = TIME LEFT (FUEL) + 8120 REM PT = HI SCORE + 8130 REM I = GENERIC FOR/NEXT LOOP COUNTER + 8140 REM J = JOYSTICK CONTROL TRUE/FALSE + 8150 REM E = EASY DIFFICULTY TRUE/FALSE + 8160 REM A$ = GENERIC VARIABLE TO HOLD KEY PRESSED WHEN PROMPTING USER FOR OPTIONS + 8170 REM M$ = MUSIC AT THE START OF EACH GAME (Y/N) \ No newline at end of file diff --git a/honoring_the_code/001 - Space Maze/files/spacemaze_quickfix.bas b/honoring_the_code/001 - Space Maze/files/spacemaze_quickfix.bas new file mode 100644 index 0000000..d136133 --- /dev/null +++ b/honoring_the_code/001 - Space Maze/files/spacemaze_quickfix.bas @@ -0,0 +1,87 @@ + 3 REM ************************* + 4 REM ** SPACE MAZE ** + 5 REM ** MICRO-SPARC ** + 6 REM ** P.O. BOX 325 ** + 7 REM ** LINCOLN MASS 01773 ** + 8 REM ** COPYRIGHT C 1980 ** + 9 REM ************************* + 12 REM THE FOLLOWING SUBROUTINE GOES INTO MEMORY BLOCK HEX $30E (782), THE TONES RESPOND TO POKE 0 TO 255 + 13 REM PITCH= POKE780,P DURATION=POKE781,D + 15 POKE 782,173: POKE 783,48: POKE 784,192: POKE 785,136: POKE 786,208: POKE 787,5: POKE 788,206: POKE 789,13: POKE 790,3 + 20 POKE 791,240: POKE 792,9: POKE 793,202: POKE 794,208: POKE 795,245: POKE 796,174: POKE 797,12: POKE 798,3: POKE 799,76 + 25 POKE 800,14: POKE 801,3: POKE 802,96 + 27 CALL - 936 + 30 VTAB 7: INVERSE : HTAB 10: PRINT "** SPACE MAZE **": VTAB 23: HTAB 4: PRINT "COPYRIGHT 1980..MICRO-SPARC, INC.": NORMAL + 31 VTAB 9: PRINT "YOU WILL PILOT A SPACE CRUISER THRU THE": PRINT "STAR MAZE TO REACH THE PRIZED DILITHIUM": PRINT "CRYSTALS AT THE CENTER OF THE MAZE": INVERSE : PRINT + 32 PRINT "BE CAREFUL! IN THE HARD VERSION OF THE": PRINT "GAME YOUR SHIP IS PULLED BY HOSTILE ": PRINT "MAGNETIC FORCES.. SO TAKE CARE " + 33 PRINT "NOT TO CRASH!!!!!!!!!!!!!!!!!!!!!!!!!!!" + 34 NORMAL : PRINT "DO YOU WANT YOUR SHIP SIGNAL SOUNDS? ": INPUT "TYPE Y OR N";NS$: INPUT "EASY OR HARD GAME? TYPE 'E' OR 'H'";HD$ + 38 GOSUB 500: PRINT "DO YOU WANT STARWARS MUSIC EACH GAME?": INPUT "Y OR N ";M$ + 40 HGR : GOSUB 2000 + 45 IF M$ < > "N" THEN GOSUB 500 + 50 GOTO 200 + 97 REM THE FOLLOWING SUBROUTINE TESTS WHETHER X AND Y ARE CONTAINED IN THE SERIES OF 11 RECTANGLES MAKING UP THE MAZE + 98 REM IF X AND Y ARE SENSED, THEN Z IS SET THE NUMBER OF THE RECTANGLE. AT THE END OF THE TEST, Z IS TESTED. IF Z IS GREATER THAN + 99 REM ZERO IT MEANS X AND Y ARE IN BOUNDS. IF Z=0 THEN NO X AND Y HAVE BEEN SENSED IN BOUNDS AND THE PROGRAM GOES TO THE CRASH SUBRTNE. + 100 IF (X > = 10 AND X < = 80) AND (Y > = 80 AND Y < = 100) THEN Z = 1: GOTO 175 + 110 IF (X > = 60 AND X < = 100) AND (Y > = 100 AND Y < = 120) THEN Z = 2: GOTO 175 + 120 IF (X > = 80 AND X < = 100) AND (Y > = 120 AND Y < = 158) THEN Z = 3: GOTO 175 + 125 IF (X > = 100 AND X < = 140) AND (Y > = 140 AND Y < = 158) THEN Z = 4: GOTO 175 + 130 IF (X > = 120 AND X < = 180) AND (Y > = 120 AND Y < = 140) THEN Z = 5: GOTO 175 + 135 IF (X > = 160 AND X < = 220) AND (Y > = 140 AND Y < = 158) THEN Z = 6: GOTO 175 + 137 IF (X > = 200 AND X < = 220) AND (Y > = 110 AND Y < = 140) THEN Z = 6: GOTO 175 + 138 IF (X > = 220 AND X < = 265) AND (Y > = 110 AND Y < = 130) THEN Z = 6: GOTO 175 + 139 IF (X > = 245 AND X < = 265) AND (Y > = 40 AND Y < = 110) THEN Z = 6: GOTO 175 + 140 IF (X > = 215 AND X < = 245) AND (Y > = 40 AND Y < = 60) THEN Z = 6: GOTO 175 + 141 IF (X > = 215 AND X < = 235) AND (Y > = 60 AND Y < = 100) THEN Z = 6: GOTO 175 + 142 IF (X > = 180 AND X < = 235) AND (Y > = 80 AND Y < = 100) THEN Z = 6: GOTO 175 + 145 IF (X > = 180 AND X < = 200) AND (Y > = 60 AND Y < = 100) THEN Z = 8: GOTO 175 + 150 IF (X > = 140 AND X < = 180) AND (Y > = 60 AND Y < = 80) THEN Z = 9: GOTO 175 + 160 IF (X > = 100 AND X < = 160) AND (Y > = 40 AND Y < = 60) THEN Z = 10: GOTO 175 + 162 IF (X > = 100 AND X < = 120) AND (Y > = 60 AND Y < = 80) THEN Z = 11: GOTO 175 + 165 IF (X > = 106 AND X < = 114) AND (Y > = 66 AND Y < = 74) THEN 3000: REM BRANCH TO WIN + 170 IF Z < = 0 THEN 4000: REM BRANCH TO CRASH...NO FLAGS WERE SET TO INDICATE PRESENCE IN THE MAZE...THEREFORE MUST BE OUTSIDE. + 175 Z = 0: RETURN : REM RESET Z EACH TEST + 200 X = 15:Y = 90:HV = 0:VV = 0:TM = 600:XO = 15:YO = 90: CALL - 936 + 210 IF PDL (0) > = 165 THEN HV = HV + 1 + 220 IF PDL (0) < = 90 THEN HV = HV - 1 + 230 IF PDL (1) > = 165 THEN VV = VV + 1 + 231 IF HD$ = "E" THEN 240 + 232 IF RND (1) < .05 THEN HV = HV + 1 + 233 IF RND (1) > .95 THEN VV = VV + 1 + 240 IF PDL (1) < = 90 THEN VV = VV - 1 + 242 X = XO + HV:Y = YO + VV + 243 TM = TM - 1: VTAB 21: PRINT TAB( 10)"FUEL LEFT= ";TM: IF TM < 100 THEN VTAB 21: CALL - 868: PRINT TAB( 10)"FUEL LEFT= ";TM + 245 VTAB 22: CALL - 868: PRINT "HORIZ =";HV;: PRINT TAB( 25)"VERTICAL =";VV + 260 HCOLOR= 3: HPLOT X,Y: IF PT = 0 THEN 267 + 265 VTAB 23: PRINT TAB( 4)"PREVIOUS RECORD SCORE IS: ";PT + 267 IF TM < = 0 THEN CALL - 936: FLASH : PRINT TAB( 10)"OUT OF FUEL";: PRINT TAB( 10)" ": GOSUB 4000 + 270 IF X = XO AND Y = YO THEN 300 + 280 HCOLOR= 0: HPLOT XO,YO: IF NS$ = "N" THEN 300 + 285 POKE 780,150: POKE 781,10: CALL 782 + 300 XO = X:YO = Y: GOSUB 100: GOTO 210 + 498 REM THE 500 SUBRTNE SETS UP THE MUSIC. M1=PITCH, M2=DURATION. 700 PLAYS IT. + 500 M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700:M1 = 190:M2 = 75: GOSUB 700 + 510 M1 = 203:M2 = 75: GOSUB 700:M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700 + 515 M1 = 190:M2 = 100: GOSUB 700:M1 = 203:M2 = 100: GOSUB 700:M1 = 190:M2 = 100: GOSUB 700:M1 = 230:M2 = 250: GOSUB 700: RETURN + 700 POKE 780,M1: POKE 781,M2: CALL 782: RETURN + 2000 HCOLOR= 3: HPLOT 0,0 TO 279,0 TO 279,159 TO 0,159 TO 0,0 + 2001 HPLOT 70,10 TO 60,10 TO 60,20 TO 70,20 TO 70,30 TO 60,30: HPLOT 75,30 TO 75,10 TO 85,10 TO 85,20 TO 75,20: HPLOT 90,30 TO 90,10 TO 100,10 TO 100,30: HPLOT 90,20 TO 100,20 + 2002 HPLOT 115,10 TO 105,10 TO 105,30 TO 115,30: HPLOT 130,10 TO 120,10 TO 120,30 TO 130,30: HPLOT 120,20 TO 125,20: HPLOT 140,30 TO 140,10 TO 146,20 TO 152,10 TO 152,30 + 2003 HPLOT 158,30 TO 158,10 TO 168,10 TO 168,30: HPLOT 158,20 TO 168,20: HPLOT 173,10 TO 183,10 TO 173,30 TO 183,30: HPLOT 198,10 TO 188,10 TO 188,30 TO 198,30: HPLOT 188,20 TO 193,20 + 2005 HPLOT 10,80 TO 80,80 TO 80,100 TO 100,100 TO 100,140 TO 120,140 TO 120,120 TO 180,120 + 2010 HPLOT 180,120 TO 180,140 TO 200,140 TO 200,110 TO 245,110 TO 245,60 TO 235,60 TO 235,100 TO 180,100 TO 180,80 TO 140,80 TO 140,60 TO 120,60 TO 120,80 TO 100,80 + 2015 HPLOT 100,80 TO 100,40 TO 160,40 TO 160,60 TO 200,60 TO 200,80 TO 215,80 TO 215,40 TO 265,40 TO 265,130 TO 220,130 TO 220,158 TO 160,158 + 2020 HPLOT 220,158 TO 160,158 TO 160,140 TO 140,140 TO 140,158 TO 80,158 TO 80,120 TO 60,120 TO 60,100 TO 10,100 + 2030 HCOLOR= 3: HPLOT 106,66 TO 114,66 TO 114,74 TO 106,74 TO 106,66 + 2033 HPLOT 108,68 TO 112,72: HPLOT 108,72 TO 112,68: RETURN + 3000 POP : TEXT : FOR NN = 250 TO 0 STEP - 15: PRINT "** WINNER **";: POKE 780,NN: POKE 781,10 + 3005 CALL 782: NEXT NN: FOR N = 1 TO 500: NEXT N: PRINT : PRINT + 3010 IF TM > PT THEN HOME : VTAB 10: FLASH : PRINT "CONGRATULATIONS!": NORMAL : PRINT "YOU'VE BEATEN THE PREVIOUS HIGH SCORE ": PRINT "OF ";PT;" WITH YOUR SCORE OF ";TM + 3011 GC = GC + 1: IF GC = 1 THEN PRINT : PRINT "IF YOU'VE BEEN PLAYING THE EASY GAME": PRINT "YOU'RE A WINNER! NOW WE'LL ADVANCE TO": PRINT "THE HARD GAME":HD$ = "H" + 3012 IF TM > PT THEN PT = TM + 3015 GOTO 4007 + 4000 POP : TEXT : FLASH : FOR NN = 1 TO 100: PRINT "** CRASH **";: NEXT NN: NORMAL + 4005 FOR NN = 1 TO 250 STEP 50: POKE 780,NN: POKE 781,50: CALL 782: NEXT NN + 4006 FOR NN = 1 TO 2000: NEXT NN: CALL - 936 + 4007 INPUT "ANOTHER MISSION? HIT RETURN";A$: HGR : GOTO 40 \ No newline at end of file diff --git a/honoring_the_code/001 - Space Maze/files/spacemaze_quickfix2.bas b/honoring_the_code/001 - Space Maze/files/spacemaze_quickfix2.bas new file mode 100644 index 0000000..88c203a --- /dev/null +++ b/honoring_the_code/001 - Space Maze/files/spacemaze_quickfix2.bas @@ -0,0 +1,87 @@ + 3 REM ************************* + 4 REM ** SPACE MAZE ** + 5 REM ** MICRO-SPARC ** + 6 REM ** P.O. BOX 325 ** + 7 REM ** LINCOLN MASS 01773 ** + 8 REM ** COPYRIGHT C 1980 ** + 9 REM ************************* + 12 REM THE FOLLOWING SUBROUTINE GOES INTO MEMORY BLOCK HEX $30E (782), THE TONES RESPOND TO POKE 0 TO 255 + 13 REM PITCH= POKE780,P DURATION=POKE781,D + 15 POKE 782,173: POKE 783,48: POKE 784,192: POKE 785,136: POKE 786,208: POKE 787,5: POKE 788,206: POKE 789,13: POKE 790,3 + 20 POKE 791,240: POKE 792,9: POKE 793,202: POKE 794,208: POKE 795,245: POKE 796,174: POKE 797,12: POKE 798,3: POKE 799,76 + 25 POKE 800,14: POKE 801,3: POKE 802,96 + 27 CALL - 936 + 30 VTAB 7: INVERSE : HTAB 10: PRINT "** SPACE MAZE **": VTAB 23: HTAB 4: PRINT "COPYRIGHT 1980..MICRO-SPARC, INC.": NORMAL + 31 VTAB 9: PRINT "YOU WILL PILOT A SPACE CRUISER THRU THE": PRINT "STAR MAZE TO REACH THE PRIZED DILITHIUM": PRINT "CRYSTALS AT THE CENTER OF THE MAZE": INVERSE : PRINT + 32 PRINT "BE CAREFUL! IN THE HARD VERSION OF THE": PRINT "GAME YOUR SHIP IS PULLED BY HOSTILE ": PRINT "MAGNETIC FORCES.. SO TAKE CARE " + 33 PRINT "NOT TO CRASH!!!!!!!!!!!!!!!!!!!!!!!!!!!" + 34 NORMAL : PRINT "DO YOU WANT YOUR SHIP SIGNAL SOUNDS? ": INPUT "TYPE Y OR N";NS$: INPUT "EASY OR HARD GAME? TYPE 'E' OR 'H'";HD$ + 38 GOSUB 500: PRINT "DO YOU WANT STARWARS MUSIC EACH GAME?": INPUT "Y OR N ";M$ + 40 HGR : GOSUB 2000 + 45 IF M$ < > "N" THEN GOSUB 500 + 50 GOTO 200 + 97 REM THE FOLLOWING SUBROUTINE TESTS WHETHER X AND Y ARE CONTAINED IN THE SERIES OF 11 RECTANGLES MAKING UP THE MAZE + 98 REM IF X AND Y ARE SENSED, THEN Z IS SET THE NUMBER OF THE RECTANGLE. AT THE END OF THE TEST, Z IS TESTED. IF Z IS GREATER THAN + 99 REM ZERO IT MEANS X AND Y ARE IN BOUNDS. IF Z=0 THEN NO X AND Y HAVE BEEN SENSED IN BOUNDS AND THE PROGRAM GOES TO THE CRASH SUBRTNE. + 100 IF (X > = 10 AND X < = 80) AND (Y > = 80 AND Y < = 100) THEN Z = 1: RETURN + 110 IF (X > = 60 AND X < = 100) AND (Y > = 100 AND Y < = 120) THEN Z = 2: RETURN + 120 IF (X > = 80 AND X < = 100) AND (Y > = 120 AND Y < = 158) THEN Z = 3: RETURN + 125 IF (X > = 100 AND X < = 140) AND (Y > = 140 AND Y < = 158) THEN Z = 4: RETURN + 130 IF (X > = 120 AND X < = 180) AND (Y > = 120 AND Y < = 140) THEN Z = 5: RETURN + 135 IF (X > = 160 AND X < = 220) AND (Y > = 140 AND Y < = 158) THEN Z = 6: RETURN + 137 IF (X > = 200 AND X < = 220) AND (Y > = 110 AND Y < = 140) THEN Z = 6: RETURN + 138 IF (X > = 220 AND X < = 265) AND (Y > = 110 AND Y < = 130) THEN Z = 6: RETURN + 139 IF (X > = 245 AND X < = 265) AND (Y > = 40 AND Y < = 110) THEN Z = 6: RETURN + 140 IF (X > = 215 AND X < = 245) AND (Y > = 40 AND Y < = 60) THEN Z = 6: RETURN + 141 IF (X > = 215 AND X < = 235) AND (Y > = 60 AND Y < = 100) THEN Z = 6: RETURN + 142 IF (X > = 180 AND X < = 235) AND (Y > = 80 AND Y < = 100) THEN Z = 6: RETURN + 145 IF (X > = 180 AND X < = 200) AND (Y > = 60 AND Y < = 100) THEN Z = 8: RETURN + 150 IF (X > = 140 AND X < = 180) AND (Y > = 60 AND Y < = 80) THEN Z = 9: RETURN + 160 IF (X > = 100 AND X < = 160) AND (Y > = 40 AND Y < = 60) THEN Z = 10: RETURN + 162 IF (X > = 100 AND X < = 120) AND (Y > = 60 AND Y < = 80) THEN Z = 11: RETURN + 165 IF (X > = 106 AND X < = 114) AND (Y > = 66 AND Y < = 74) THEN 3000: REM BRANCH TO WIN + 170 GOTO 4000: REM BRANCH TO CRASH...NO FLAGS WERE SET TO INDICATE PRESENCE IN THE MAZE...THEREFORE MUST BE OUTSIDE. + + 200 X = 15:Y = 90:HV = 0:VV = 0:TM = 600:XO = 15:YO = 90: CALL - 936 + 210 IF PDL (0) > = 165 THEN HV = HV + 1 + 220 IF PDL (0) < = 90 THEN HV = HV - 1 + 230 IF PDL (1) > = 165 THEN VV = VV + 1 + 231 IF HD$ = "E" THEN 240 + 232 IF RND (1) < .05 THEN HV = HV + 1 + 233 IF RND (1) > .95 THEN VV = VV + 1 + 240 IF PDL (1) < = 90 THEN VV = VV - 1 + 242 X = XO + HV:Y = YO + VV + 243 TM = TM - 1: VTAB 21: PRINT TAB( 10)"FUEL LEFT= ";TM: IF TM < 100 THEN VTAB 21: CALL - 868: PRINT TAB( 10)"FUEL LEFT= ";TM + 245 VTAB 22: CALL - 868: PRINT "HORIZ =";HV;: PRINT TAB( 25)"VERTICAL =";VV + 260 HCOLOR= 3: HPLOT X,Y: IF PT = 0 THEN 267 + 265 VTAB 23: PRINT TAB( 4)"PREVIOUS RECORD SCORE IS: ";PT + 267 IF TM < = 0 THEN CALL - 936: FLASH : PRINT TAB( 10)"OUT OF FUEL";: PRINT TAB( 10)" ": GOSUB 4000 + 270 IF X = XO AND Y = YO THEN 300 + 280 HCOLOR= 0: HPLOT XO,YO: IF NS$ = "N" THEN 300 + 285 POKE 780,150: POKE 781,10: CALL 782 + 300 XO = X:YO = Y: ON Z GOSUB 100, 100, 110, 120, 125,130,135,137,138,139,140,141,142,145,150,160: GOTO 210 + 498 REM THE 500 SUBRTNE SETS UP THE MUSIC. M1=PITCH, M2=DURATION. 700 PLAYS IT. + 500 M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700:M1 = 190:M2 = 75: GOSUB 700 + 510 M1 = 203:M2 = 75: GOSUB 700:M1 = 230:M2 = 75: GOSUB 700:M1 = 126:M2 = 250: GOSUB 700:M1 = 170:M2 = 250: GOSUB 700 + 515 M1 = 190:M2 = 100: GOSUB 700:M1 = 203:M2 = 100: GOSUB 700:M1 = 190:M2 = 100: GOSUB 700:M1 = 230:M2 = 250: GOSUB 700: RETURN + 700 POKE 780,M1: POKE 781,M2: CALL 782: RETURN + 2000 HCOLOR= 3: HPLOT 0,0 TO 279,0 TO 279,159 TO 0,159 TO 0,0 + 2001 HPLOT 70,10 TO 60,10 TO 60,20 TO 70,20 TO 70,30 TO 60,30: HPLOT 75,30 TO 75,10 TO 85,10 TO 85,20 TO 75,20: HPLOT 90,30 TO 90,10 TO 100,10 TO 100,30: HPLOT 90,20 TO 100,20 + 2002 HPLOT 115,10 TO 105,10 TO 105,30 TO 115,30: HPLOT 130,10 TO 120,10 TO 120,30 TO 130,30: HPLOT 120,20 TO 125,20: HPLOT 140,30 TO 140,10 TO 146,20 TO 152,10 TO 152,30 + 2003 HPLOT 158,30 TO 158,10 TO 168,10 TO 168,30: HPLOT 158,20 TO 168,20: HPLOT 173,10 TO 183,10 TO 173,30 TO 183,30: HPLOT 198,10 TO 188,10 TO 188,30 TO 198,30: HPLOT 188,20 TO 193,20 + 2005 HPLOT 10,80 TO 80,80 TO 80,100 TO 100,100 TO 100,140 TO 120,140 TO 120,120 TO 180,120 + 2010 HPLOT 180,120 TO 180,140 TO 200,140 TO 200,110 TO 245,110 TO 245,60 TO 235,60 TO 235,100 TO 180,100 TO 180,80 TO 140,80 TO 140,60 TO 120,60 TO 120,80 TO 100,80 + 2015 HPLOT 100,80 TO 100,40 TO 160,40 TO 160,60 TO 200,60 TO 200,80 TO 215,80 TO 215,40 TO 265,40 TO 265,130 TO 220,130 TO 220,158 TO 160,158 + 2020 HPLOT 220,158 TO 160,158 TO 160,140 TO 140,140 TO 140,158 TO 80,158 TO 80,120 TO 60,120 TO 60,100 TO 10,100 + 2030 HCOLOR= 3: HPLOT 106,66 TO 114,66 TO 114,74 TO 106,74 TO 106,66 + 2033 HPLOT 108,68 TO 112,72: HPLOT 108,72 TO 112,68: RETURN + 3000 POP : TEXT : FOR NN = 250 TO 0 STEP - 15: PRINT "** WINNER **";: POKE 780,NN: POKE 781,10 + 3005 CALL 782: NEXT NN: FOR N = 1 TO 500: NEXT N: PRINT : PRINT + 3010 IF TM > PT THEN HOME : VTAB 10: FLASH : PRINT "CONGRATULATIONS!": NORMAL : PRINT "YOU'VE BEATEN THE PREVIOUS HIGH SCORE ": PRINT "OF ";PT;" WITH YOUR SCORE OF ";TM + 3011 GC = GC + 1: IF GC = 1 THEN PRINT : PRINT "IF YOU'VE BEEN PLAYING THE EASY GAME": PRINT "YOU'RE A WINNER! NOW WE'LL ADVANCE TO": PRINT "THE HARD GAME":HD$ = "H" + 3012 IF TM > PT THEN PT = TM + 3015 GOTO 4007 + 4000 POP : TEXT : FLASH : FOR NN = 1 TO 100: PRINT "** CRASH **";: NEXT NN: NORMAL + 4005 FOR NN = 1 TO 250 STEP 50: POKE 780,NN: POKE 781,50: CALL 782: NEXT NN + 4006 FOR NN = 1 TO 2000: NEXT NN: CALL - 936 + 4007 INPUT "ANOTHER MISSION? HIT RETURN";A$: HGR : GOTO 40 \ No newline at end of file