--- title: "Cosmos" id: 71903 type: "computer_media" slug: "cosmos" url: "http://localhost/computer_media/cosmos/" markdown_url: "http://localhost/computer_media/cosmos.md" published_at: "2026-10-20T14:07:50+00:00" modified_at: "2026-10-20T14:09:16+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2026/10/COSMOS.png" excerpt: "Guard a space convoy against waves of alien attack ships while dodging space mines, with a machine code game engine and a six-place high score table." category: - name: "Archived Media" slug: "archived-media" taxonomy: "category" url: "http://localhost/category/archived-media/" post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "Mindware" slug: "mindware" taxonomy: "post_tag" url: "http://localhost/tag/mindware/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" model: - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" indiv: - name: "Costa Panayi" slug: "costa-panayi" taxonomy: "indiv" url: "http://localhost/indiv/costa-panayi/" genre: - name: "Game" slug: "game" taxonomy: "genre" url: "http://localhost/type/game/" media_type: "Cassette" programmers: - name: "Costa Panayi" slug: "costa-panayi" taxonomy: "indiv" url: "http://localhost/indiv/costa-panayi/" download_url: "https://archive.org/download/timex-sinclair-software-archive/Cosmos%20%281982%29%28Panayi%2C%20Costa%29%28TS1000%29%28US%29%28Cassette%29.zip" mediadate: "1982" producer_company: - id: 11120 title: "Mindware, Inc." type: "company" url: "http://localhost/company/mindware/" images: - url: "http://localhost/wp-content/uploads/2026/10/COSMOS.png" - url: "http://localhost/wp-content/uploads/2026/10/COSMOS-scaled.jpg" related_products: - id: 12248 title: "Cosmos" type: "product" url: "http://localhost/product/cosmos/" media_type_tags: "Game" --- # Cosmos Puts you in charge of protecting a space convoy from alien attack ships while avoiding alien space mines. Each wave opens with a "CONVOY ALERT" briefing that types out the distance in light years and the number of attacking ships, then hands over to a machine code routine that runs the combat. The controls are rotate up, rotate down, rotate left, rotate right and fire, shown on a keyboard layout screen before play. Alien ships are worth 30 or 60 points and each convoy ship that survives is worth 300. The six best scores are kept with players’ names. The title screen and the opening `REM` read "COPYRIGHT 1982 VORTEX SOFTWARE WRITTEN BY C. PANAYI, HATFIELD". Vortex Software was based in the UK, and Mindware sold the game in the US. This copy is on a cassette with a handwritten "Cosmos" label. Side B holds a short INDEX loader menu that offers Pilot, Cosmos, Bowling, Robot and Bingo. It asks for 16K RAM and loads the chosen title by name. The rest of side B holds a copy of Mindware’s Pilot, which is already in the archive. Bowling, Robot and Bingo are not on the tape. ## Program Analysis ### Program Structure - Line 1: a long `REM` holding the copyright notice, then the machine code and graphics data for the game. - Lines 900–912: set up the high score arrays `D$` (scores) and `E$` (names). - Line 1000: `POKE 16418,0`, then a `USR` call that sets up the machine code before jumping to the title sequence at 5000. - Lines 1010–2090: the main game loop. It POKEs wave settings into the machine code (ship count, speed and a random number of attackers from 10 to 24), shows the briefing, draws one of five random alien formations, and calls the combat routine at 18397. When the routine ends, the number of convoy ships left is read back with `PEEK 18354`, and the game is over when none are left. - Lines 2500–2830: the briefing box. Subroutine 2800 prints a string one character at a time for a typewriter effect. - Lines 3000–4100: game over. The score is read off the screen and placed in the table. - Lines 5000–5120: the animated title sequence, with VORTEX SOFTWARE PRESENTS, the large COSMOS logo built line by line, scoring hints and a flashing PRESS ANY KEY TO START prompt. It alternates with the high score table until a key is pressed. - Lines 6000–6015: the keyboard layout screen and the player’s name. - Lines 9000–9002: `SAVE "COSMOS"`, then `SLOW` and restart, so a saved copy runs itself. ### Machine Code Most of the game is machine code in the line 1 `REM`, reached through calls at 17344, 17408, 17539, 17698, 18161, 18397 and 18592. BASIC controls the game by POKEing values into the code’s working area at around 17958–18494 and reading results back from it. The code itself is not decoded here. ### Notable Techniques - `POKE 16418,0` sets the system variable DF_SZ to zero, which gives up the two lower lines normally kept for input. That lets the score line be printed at row 23. The program sets it to 2 while asking for the player’s name and back to 0 afterwards. - The score is never stored in a BASIC variable. At game over, line 3005 works out an address in the display file (`D_FILE`+766, row 23) and reads the six score digits straight off the screen with `PEEK`, changing the dot padding to spaces. - Line 2060 uses `RAND USR` inside nested loops to run a machine code effect a set number of times for each surviving convoy ship. - The high score table is sorted by insertion: entries below the new score move down one place in both arrays (lines 4000–4050). ### Potential Issues - Line 3110 compares the whole of `A$` with `VAL`. Any character other than a digit, a dot or a space in the score area would make `VAL` fail. ## Source Code ``` 1 REM [C][O][S][M][O][S] COPYRIGHT 1982 VORTEX SOFTWARE WRITTEN BY C. PANAYI, HATFIELD --------------------------------OOOOOOO RETURN[6]C4 RETURN[9]C0 RETURN[O]C▌ RETURN[Q]C▘TAN RETURN[O]C▖Y[.]/▝Y█# FASTLN LET # LPRINT #[V]PIY█# FASTLN (# LPRINT #[V]PIOE£RND▞ 7# PLOT █ RETURN[0] IF PINKEY$ RETURN[O]4▖ FAST▖/ LOAD RETURN[Q]C SAVE RETURN[6]4▌Y[9]#/ LLIST RETURN[9]4▌Y[6]#/ OR RETURN[S]4STR$ 5[O]##[J][S]TAB [N]##USR #OOOOOOOOOOOOOO█▀█▌▒▐█▄█ COPY▛▄▜▐▒▌▙▀▟ COPY▚▀▞▌ ▐▞▄▚ COPY▞ ▚ ▚ ▞ COPY▛▄▜▐▒▌▙▀▟ COPY▚█▞███▞█▚ COPY███ █████ RETURNOO GOSUB #MRND#I CLEAR#[R] GOSUB # THEN GOSUB # THEN #- GOSUB #K▘76MRNDTAN OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO COPY COPY THEN COPY TO COPY STEP COPY4 5 6 ▘ [E]3 RETURN COPY TO COPY STEP COPYRND 5 6 ▘ [E] COPY COPY THEN COPY TO COPY"" COPY4 5 ▝ LPRINT COPY[E] LET LEN # PRINT # GOSUB # LET LEN [▒] PRINT # GOSUB #OOO COPY COPYSTR$ ▝CHR$ ▝NOT ▝4 5 6 ▘ [E]3 PRINT ▝CHR$ ▝NOT ▝RND 5 6 ▘ [E] COPY COPYSTR$ ▝CHR$ ▝[R]▝4 5 ▝ LPRINT COPY[E]OOOOOOOOOOOOOOOOO COPY COPY THEN COPY TO COPY STEP COPYD CLEARE CLEARF CLEAR▘ [E]3 RETURN COPY TO COPY STEP COPY# CLEARE CLEARF CLEAR▘ [E] COPY COPY THEN COPY TO COPY"" COPYD CLEARE CLEAR" CLEAR LPRINT COPY[E]) THEN COPY;6>#Y▀)[Q]INKEY$ ▘▀ GOSUB [K]▘2 ,,X4 POKE 5#INKEY$ GOSUB #>#▘▀ GOSUB [K]▘2 FOR ,, FOR # RETURN RETURNCOS RETURN COPY4 GOSUB :>▞ COPY( RETURN$4 RAND 7/<>OOOOO[=]▘ PI##[6]#E£RND▘6 ,,6 RETURNPI76 #▘2 ,,6▝#▘[<]▝,,6▖#TAN # PLOT █#TAN E RETURNPI76 RETURNPI)5 ▞+LN 7#;( IF E▝#F6▝#▞+LN 7#;( IF TAN E #▞2LN 7#7( IF 7776 #E▖#▞2LN 7#F( IF FFF6▖#TAN :▌LN C#$4 IF E▝#76▝#:~~LN ##LN C#$▞ COPY( RETURN4 NEXT ▞ COPY( RETURNTAN TAN LN ▞#) NEW# GOSUB #8#LN ##LN ▞#) PLOT █ GOSUB #8#LN #####OOOOOOOOOOOOOOOO[=]#▘#▘E£RND,,6[Y]#TAN GOSUB #[Y]#~~ PLOT █▝TAN GOSUB #[Y]#~~ NEW#▝TAN ████████████████████[.]███████████OOO GOSUB #£RNDE£RNDLN ACS #Y* PRINT 77<,▘3 GOSUB [K]>< LET X4 LIST LN USR #TAN OOOO)<>#E£RND7▘4 GOSUB [K]LN ACS #▘5 GOSUB #£RNDE£RND,,▘CHR$ ▝ GOSUB [K]LN USR #▘NOT ▝E£RND,,##5<>#▘4 GOSUB [K]TAN OOOOOE£RND▘ RUN ▝,,##LN ACS #Y* PRINT FF.,▘3 GOSUB [S]>. LET X4 LIST LN USR #TAN OOOO)<>#▘NOT ▝E£RND,,▘4 GOSUB [K]LN ACS #▘ RUN ▝E£RND,,##▘CHR$ ▝E£RND,, GOSUB [S]LN USR # GOSUB #£RND<5<>#▘4 GOSUB [K]TAN OOOOOOOOEMRND##DD;DDD;6MRND#TAN O▘ $ [;]▘[$]▘ RETURN7 H #▘#▘ RETURN# # #▘#▘ RETURN# # N▘H▘ RETURN[,,] [$] )▘$▘ RETURN[F] [H] LOAD GOSUB COPYLN < #▘#▘##7#VAL :,,▞ COPY( RETURN$4 RAND AT TAN LN ""# NEW▞LEN ~~#A##7#E£RND;6>#)LN ;# RETURN█C▀ RETURN[.]""▘<>#5ABS ## RETURN RETURNATN =# RETURN COPYC>#7#7 FASTE>#;#▝▀Y[.]# LPRINT / SLOW▘<>#5ABS ## RETURN RETURNATN =# RETURN COPYC?#7#7 FASTE>#;~~▀# LPRINT / SCROLL7#7#E>#;# RETURN█C▖Y[Q]/▝Y[O]#TAN OOOOOOOOOOOOOOOOOOOOOOOOOOOVAL LN ACS #AT [J] GOSUB # RETURNPI LPRINT FAST PRINT F# RETURN#4▛ LET LEN ) PRINT 7/£77# RETURN#4▖ LET LEN 6 PRINT F)5 [B] GOSUB ## RETURN# IF NPI;;# RETURN# IF UPIAPI LET #6 #SGN , RETURN C#STR$ # RETURN[E]C6#7#7 FOR LPRINT FAST,,# FOR RETURN[6]C▖ RETURN[9]4 DIM LPRINT STR$ GOSUB # RETURNPI▖ GOSUB # RETURNPIY >/8LN ""# NEW▞ PLOT ▖E #▐##7# LPRINT FAST;SGN # RETURN█C▒ RETURN[.]46Y[Q]/▝Y[O]# FOR FASTLN ""# LPRINT RETURN RETURNS▌Y[*]#/£# RETURN[O]C▖Y[.]/▝Y█# GOSUB # RETURNPI▌TAB [S]##USR # GOSUB #>#) CONT ## RETURN[E]C?#7#7 FASTE>#,,#>< LPRINT / GOTO LN (#)""#E ## RETURN[E]C?#7#7 FASTE>#,,,<# LPRINT / GOTO LN USR #:)▞ COPY( RETURN$4 RAND LN ACS #, RETURN COPY4STR$ E>#Y█#/[5]O▀█▐██▌█▄▗█▖██▝█▘▟▀▙▐▌▜▄▛▀▚▐▞▞▌▚▄▚█▞██▞█▚████████ COPY▞▀E£RND)▝▀;# RETURN.4▝Y0W RETURNA4▌Q0F/ LOAD #( FASTTAN OE£RND)*▀;#X#M[M]#TAN OOE[Y]## RETURN*""E£RND)"▀;# RETURN*C▞7# RETURN* RETURN*4;[J]#-Z GOSUB #:▛▞ COPY( RETURN$4 RAND W+4 LET [J]E[Y]##TAN 7LN V#Y0M[M]#TAN OOOOOOOOOOOOOOOOOOE[Y]## FAST PRINT RETURNOATN LET # LET PRINT RETURNQATN LET # LET LPRINT PLOT █LN INKEY$ LN USR #5 PI# RETURN[E]COS #7#7 FASTE[Y]#,,#LN INKEY$ LPRINT / GOTO OOOOOOOOOOOOO 9 ▘ ? ""# ▘O4#▝ ~~▒:▞:£▒ ▞ ~~ :▖:▒▞▖ COPYOOOOOOOO▞▌VAL /~~VAL :▖▞ COPY( RETURN$4 RAND LN [V]▝ FASTACS #ATN ## LPRINT FASTACS #ATN # LPRINT FASTACS #C▖ LPRINT FASTACS #ATN ▄# LPRINT FASTACS #C▖ LPRINT FASTACS #ATN 8#AT LN LIST # LN 4#AT U[M]# RETURN0COS ([J]LN KINKEY$ U[K]#WM[K]# RETURNC4[0][J]M[K]#U[Q]# RETURN C,,XM[Q]#LN 6#/▞U[O]# RETURN COS U[U]#WM[U]#ACS #ASN <>#[J]M[U]#E[S]## RETURN COPY4▌) GOTO COPY;#MA#7#MC#76[S]#U▄RND RETURN[O]4▛U[E]RND RETURNOASN <>## OOOOOOOOOO:RNDVAL LN ▄#AT E£RND7▞4Y█#7( UNPLOT VAL :▌▞ COPY( RETURN$4 RAND AT $4 LPRINT :#VAL LN ▄#AT E£RND7▞4VAL FASTLN TAB INKEY$ LPRINT AT RETURN POKE S▖Y[.]/▝Y█#7( FOR $4<>TAN OOOOOOOOOE£RND)▒▀;6[Y]## RETURN▒43ACS INKEY$ C▖ACS #4*E[Y]#F# RETURN▒4▝/ SAVE 7[J]#YHM[W]#LN [)]#TAN U[W]#XM[W]# RETURN ""▞▖E[Y]#Y▒#F( UNPLOT TAN OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 2 REM 900 DIM A$(6) 902 DIM B$(16) 904 DIM D$(6,6) 906 DIM E$(6,16) 908 FOR N=1 TO 6 910 LET D$(N,6)="0" 912 NEXT N 1000 POKE 16418,0 1008 LET Z=USR 17344 1009 GOTO 5000 1010 PRINT AT 23,0;"SCORE:.....0▌▒▒▒▒▛▌*** ▌CONVOY:9" 1050 POKE 18360,192 1051 POKE 18361,71 1052 POKE 18362,0 1053 POKE 17958,6 1054 POKE 17960,4 1062 POKE 18404,4 1063 POKE 18494,40 1065 LET SP=6 1069 REM [L][O][O][P] 1070 POKE 18364,1 1071 POKE 18354,37 1072 POKE 18352,0 1075 RAND 1076 LET AL=10+INT (RND*15) 1077 POKE 18358,AL 1078 LET Z=PEEK 18494 1079 IF Z>=20 AND (SP=2 OR SP=1) THEN LET Z=Z-5 1080 POKE 18494,Z 1085 IF SP>1 THEN LET SP=SP-1 1086 POKE 18398,(SP) 1090 RAND 1092 GOSUB 2500 1096 LET Z=USR 18592 1097 PRINT AT 23,13;"▒▒▒▒▛▌*** ▌CONVOY:9" 1189 RAND 1190 LET Z=INT (RND*5) 1200 IF Z=0 THEN PRINT AT 5,15;"[6][6][6]";TAB 14;"[9]█[9]█[9]";TAB 15;"[6][6][6]" 1210 IF Z=1 THEN PRINT AT 5,15;"[9]█[9]";TAB 14;"[6][9][6][9][6]";TAB 15;"[9]█[9]" 1220 IF Z=2 THEN PRINT AT 5,14;"[9][9][9][9][9]";TAB 15;"[9][9][9]";TAB 16;"[9]" 1230 IF Z=3 THEN PRINT AT 4,16;"[9]";TAB 15;"[6]█[6]";TAB 14;"[9]█[9]█[9]";TAB 15;"[6]█[6]";TAB 16;"[9]" 1240 IF Z=4 THEN PRINT AT 5,14;"[9]█[9]█[9]";TAB 15;"[9][9][9]";TAB 14;"[9]█[9]█[9]" 2010 LET Z=USR 18397 2020 LET C=PEEK 18354-28 2030 IF C=0 THEN GOTO 3000 2040 FOR N=1 TO C 2050 FOR M=1 TO 10 2060 RAND USR 18161 2070 NEXT M 2080 NEXT N 2090 GOTO 1070 2500 PRINT AT 11,3;"▗▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▖" 2510 FOR N=1 TO 7 2520 PRINT TAB 3;"▐ ▌" 2530 NEXT N 2540 PRINT TAB 3;"▝▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▘" 2550 PRINT AT 13,5;"CONVOY ALERT";TAB 5;"~~~~~~~~~~~~~~~~~~~~~~~~" 2560 LET Y$="DISTANCE: "+STR$ INT (RND*98+2)+" LIGHTYEARS" 2562 PRINT AT 15,4;"[>]"; 2564 GOSUB 2800 2570 LET Y$="ALIEN ATTACK SHIPS: "+STR$ AL 2572 PRINT AT 15,4;">";TAB 4;"[>]"; 2574 GOSUB 2800 2580 LET Y$="PREPARE FOR COMBAT" 2582 PRINT AT 16,4;">";TAB 4;"[>]"; 2584 GOSUB 2800 2600 FOR N=0 TO 50 2605 PRINT AT 17,5;"PREPARE FOR COMBAT" 2606 IF N/4=INT N/4 THEN PRINT AT 17,5;" " 2610 NEXT N 2620 RETURN 2800 FOR N=1 TO LEN Y$ 2810 PRINT Y$(N); 2820 NEXT N 2825 FOR N=0 TO 10 2826 NEXT N 2830 RETURN 3000 PRINT AT 2,8;"** GAME OVER **" 3005 LET SC=PEEK 16396+256*PEEK 16397+766 3010 FOR N=1 TO 6 3020 LET A$(N)=CHR$ PEEK SC 3030 IF A$(N)="." THEN LET A$(N)=" " 3040 LET SC=SC+1 3050 NEXT N 3100 FOR N=1 TO 6 3110 IF VAL A$>VAL D$(N) THEN GOTO 4000 3120 NEXT N 3130 GOTO 4100 4000 FOR M=5 TO N STEP -1 4010 LET D$(M+1)=D$(M) 4020 LET E$(M+1)=E$(M) 4030 NEXT M 4040 LET D$(N)=A$ 4050 LET E$(N)=B$ 4100 GOTO 7000 5000 PRINT AT 23,0;"▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄" 5001 RAND 5005 LET Z=USR 18592 5010 RAND 9 5011 LET Z=USR 17698 5016 LET C$="[V][O][R][T][E][X]█[S][O][F][T][W][A][R][E]" 5017 FOR N=1 TO LEN C$ 5018 PRINT AT 6,N+4;C$(N) 5019 NEXT N 5027 FOR N=0 TO 3 5028 RAND USR 17408 5029 NEXT N 5030 PRINT AT 7,1;"[P][R][E][S][E][N][T][S]" 5031 FOR N=0 TO 15 5032 NEXT N 5033 PRINT AT 12,1;" ▐ ▐ ▐ █ ▐ ▐ ▐" 5034 RAND USR 17539 5035 PRINT AT 12,1;"▒▒▒██▒▒▒▌▐▒▒▒▌▐▒▒▒█ ▐▒▒▒▌▐▒▒▒▌▐" 5036 RAND USR 17539 5040 PRINT AT 12,1;" ▐██ ▐▌▐▄▄▄▖▐ ▐█▌▐ ▐▌▐▄▄▄▖▐" 5041 RAND USR 17539 5045 PRINT AT 12,1;" ███ █▌▐ ▀▀▜ ▌ ▌▐ █▌▐ ▀▀▜" 5046 RAND USR 17539 5050 PRINT AT 12,1;" █ █ █ █ █ " 5055 FOR N=0 TO 14 5056 RAND USR 17539 5057 NEXT N 5060 FOR N=0 TO 20 5061 NEXT N 5064 FOR N=30 TO 1 STEP -1 5065 PRINT AT 13,N;"[O]█" 5066 IF N=17 OR N=18 THEN PRINT AT 13,18;"[*]" 5067 NEXT N 5068 PRINT AT 13,2;"[:][D][E][S][T][R][O][Y]█[T][H][E]";TAB 3;"[A][L][I][E][N]█[A][T][T][A][C][K]";TAB 3;"[S][H][I][P][S]";TAB 3;"[(][3][0][/][6][0]█[P][T][S][)]" 5069 PRINT AT 13,19;"[:][A][V][O][I][D]█[T][H][E]";TAB 20;"[A][L][I][E][N]█[S][P][A][C][E]";TAB 20;"[M][I][N][E][S]" 5070 FOR N=0 TO 20 5071 NEXT N 5072 FOR N=26 TO 4 STEP -1 5073 PRINT AT 18,N+1;"[6][6][6]█";TAB N;"[9]█[9]█[9]█";TAB N+1;"[6][6][6]█" 5075 NEXT N 5076 FOR N=0 TO 10 5077 PRINT AT 18,4;"[9][9][9]█";TAB 3;"[6]█[6]█[6]█";TAB 4;"[9][9][9]█" 5078 PRINT AT 18,4;"[6][6][6]█";TAB 3;"[9]█[9]█[9]█";TAB 4;"[6][6][6]█" 5079 NEXT N 5080 PRINT AT 18,9;"[:][P][R][O][T][E][C][T]█[Y][O][U][R]█[S][P][A][C][E]";TAB 10;"[C][O][N][V][O][Y]█[(][3][0][0]█[P][T][S]█[F][O][R]";TAB 10;"[E][A][C][H]█[S][H][I][P]█[S][A][V][E][D][)]" 5090 LET T=0 5092 FOR N=0 TO 80 5093 RAND 5094 IF INKEY$ <>"" THEN GOTO 6000 5096 PRINT AT 22,5;"PRESS ANY KEY TO START" 5098 IF INT (N/2)=N/2 THEN PRINT AT 22,5;" " 5100 NEXT N 5110 IF T=0 THEN GOTO 7000 5120 GOTO 5000 6002 LET S$=" " 6004 PRINT AT 22,0;S$;S$ 6006 PRINT AT 10,0;"█[,,]KEYBOARD LAYOUT[,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,]██[▒][▒][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][▒][▒]██[▒][▒]█ ROTATE UP ███[▒][▒]█" 6007 PRINT "█[▒][▒]██████████████████████████[▒][▒]██[▒][▒]██ ROT.LEFT ▐ ROT.RIGHT ██[▒][▒]██[▒][▒]██████████████████████████[▒][▒]█" 6008 PRINT "█[▒][▒]███ ROTATE DOWN █[▒][▒]██[▒][▒]██████████████████████████[▒][▒]██[▒][▒]█ ▌ FIRE ███[▒][▒]██[▒][▒][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][▒][▒]██[~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~][~~]█" 6009 PRINT AT 21,0;"ENTER YOUR NAME: " 6010 POKE 16418,2 6012 INPUT B$ 6013 POKE 16418,0 6014 PRINT AT 10,2;"[,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,][,,]";AT 21,0;"████████████████████████████████" 6015 GOTO 1010 7000 PRINT AT 11,1;"▒~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~▒" 7010 FOR N=1 TO 8 7020 PRINT TAB 1;"▒ ▒" 7030 NEXT N 7040 PRINT TAB 1;"▒,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,▒" 7050 PRINT AT 12,4;"[P][L][A][Y][E][R] [S][C][O][R][E]" 7060 PRINT TAB 4;"---------------- ------" 7070 FOR N=1 TO 6 7080 PRINT TAB 4;E$(N);" ";D$(N) 7090 NEXT N 7095 LET T=1 7100 GOTO 5092 9000 SAVE "COSMO[S]" 9001 SLOW 9002 GOTO 900 9999 REM ********************************* ```