Space I
Item Preview
Share or Embed This Item
Flag this item for
Notes
Disk info for Space_I_1978_Edu_Ware.do:
File Name: a2_Space_I_1978_Edu_Ware/Space_I_1978_Edu_Ware.do
Disk Name: DISK VOLUME #254
Physical Size (bytes): 143360
Free Space (bytes): 29440
Used Space (bytes): 113920
Physical Size (KB): 140
Free Space (KB): 28
Used Space (KB): 111
Archive Order: DOS
Disk Format: DOS 3.3
Total Sectors: 560
Free Sectors: 115
Used Sectors: 445
Tracks On Disk: 35
Sectors On Disk: 16
Disk directory for Space_I_1978_Edu_Ware.do:
a2_Space_I_1978_Edu_Ware/Space_I_1978_Edu_Ware.do DISK VOLUME #254
* A 002 HELLO
* A 007 SPACE
* A 030 CHARACTERS
* A 047 FIRST BLOOD
* A 037 DEFEND
* A 043 EXPLORE
* A 042 TRADER
* A 052 HIGH FINANCE
* A 027 CH2
* A 032 CH3
* A 029 CH4
* B 003 CHAIN
* B 004 IF.SHAPE
* T 004 BATTLE INPUTS
* T 002 ADVERSARY
* B 025 EWS2
* A 008 EDU-WARE
* T 002 IGMO
DOS 3.3 format; 29,440 bytes free; 113,920 bytes used.
Text found in Space_I_1978_Edu_Ware.do/ADVERSARY.txt:
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
3
0
0
0
3
0
100000
0
9
9
9
90
2
2
0
0
20
444444.7
Text found in Space_I_1978_Edu_Ware.do/BATTLE INPUTS.txt:
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
UNARMED
SWORD
AUTOMATIC PISTOL
SUBMACHINE GUN
LASER RIFLE
LEATHER JACKET/BODY SUIT
BULLETPROOF JACKET/METAL SUIT
LASER REFLECTIVE SUIT
HEAT RESISTANT SUIT
POWERED COMBAT ARMOR
PLAIN/PRAIRIE
DESERT
FOREST/WOODS
SWAMP/MARSHLAND
CITY/EXTERIOR
CLOSE - IN PHYSICAL CONTACT
SHORT - 1 TO 5 METERS
MEDIUM - 6 TO 50 METERS
LONG - 51 TO 250 METERS
EXTREME - 251 TO 500 METERS
STOPPED
CREEPING/CRAWLING
WALKING SPEED
TROTTING
FULL RUN
FROM FRONT/NO SURPRISE
FROM FRONT/WITH SURPRISE
FROM BACK/NO SURPRISE
FROM BACK/WITH SURPRISE
ATTACK COMPLETELY HIDDEN
USES CONSTRUCTED BARRIER
USES PHYSICAL STRENGTH
USES PSYCHOLOGICAL METHODS
USES HIGH TECHNOLOGY
USES COUNTERATTACK
Text found in Space_I_1978_Edu_Ware.do/CH2.bas:
1 NORMAL : SPEED= 255: POKE 33,40: POKE 32,0: POKE 34,0
3 REM CHARACTERS (CH2)
4 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
9 GOTO 3920
100 C9% = 2
120 FLASH : PRINT "ENTERING TRAINING... PLEASE WAIT": NORMAL
138 PRINT D$;"BLOADCHAIN, A520"
139 CALL 520"CH3"
300 PRINT "---------------------------------------": RETURN
2000 INVERSE
2001 PRINT : PRINT " "
2002 NORMAL
2005 HTAB 2: PRINT "NAME: ";NAME$;" AGE: ";SK(39)
2006 INVERSE : PRINT " ": NORMAL
2010 FOR I = 1 TO 6: PRINT : HTAB 2: PRINT SK$(30 +I);
2015 PRINT SPC( 21 - LEN(SK$(30 +I)));CH(I)
2020 NEXT I
2100 RETURN
2105 PRINT "INITIAL PRE-ENLISTMENT FILE:"
2110 RETURN
2200 PRINT "MILITARY SERVICE MASTER RECORD JACKET"
2205 PRINT "MILITARY SERVICE: "SE$(V)
2210 PRINT "CURRENT RANK: ";RA$(V,PS(1))
2215 PRINT "CURRENT AGE: ";SK(39);" SERVICE TERM #";TE
2220 GOSUB 300
2225 PRINT "THE FOLLOWING SECTIONS ARE AVAILABLE": PRINT "FOR INSPECTION, BY THE SUBJECT, PUSUANT": PRINT "TO THE EARTH FREEDOM OF INFORMATION ": PRINT "ACT, TITLE IX, SUBSEC B.1.2 FIRST": PRINT "EARTH CONGRESS YEAR 2727 GALACTIC"
2230 GOSUB 300
2235 PRINT "<1> BASIC ATTRIBUTE STATUS"
2236 PRINT "<2> RESULTS OF PHYSICAL EXAMINATION"
2237 PRINT "<3> RESULTS OF PSYCHOLOGICAL TESTING"
2238 PRINT "<4> CURRENT SKILLS AND TRAINING"
2239 PRINT "<5> PROMOTIONS, DEMOTION AND DISCHARGE":
2240 PRINT " RECORDS"
2241 PRINT "<6> FINANCIAL ACCRUALS, RETIREMENT AND"
2242 PRINT " INSURANCE RECORDS"
2245 PRINT "<7> FINISHED WITH INSPECTION"
2246 GOSUB 300
2250 INVERSE : INPUT "WHICH ONE?";IP: NORMAL : IF IP < >7 THEN HOME
2255 RETURN
2300 HOME : PRINT "SUMMARY OF PHYSICAL EXAMINATION -1-": PRINT "SUBJECT NAME: ";NAME$
2305 PRINT "CURRENT RANK: ";RA$(V,PS(1))
2306 PRINT "AGE: ";SK(39);" TERM #";TE
2308 GOSUB 300: PRINT "SYSTEM REVIEW"
2309 GOSUB 300
2311 PRINT "CARDIO-VASCULAR: ";PH$(1,PH(1))
2312 PRINT "PULMONARY:";PH$(2,PH(2))
2313 PRINT "SKELETO-MUSCULAR: ";PH$(3,PH(3))
2314 PRINT "NEUROLOGIC: ";PH$(4,PH(4))
2315 PRINT "VISION: ";PH$(5,PH(5))
2316 PRINT "HEARING: ";PH$(6,PH(6))
2317 GOSUB 300: PRINT "SUMMARY OF FINDINGS"
2318 GOSUB 300: PRINT
2319 IF PH(1) >2 AND PH(4) <3 THEN GOSUB 52090: GOTO 2324
2320 ON PH(1) GOSUB 52050,52060,52070,52080
2324 X = X
2399 RETURN
2400 HOME : PRINT "SUMMARY OF PSYCHIATRIC EXAM -2-": PRINT "SUBJECT NAME: ";NA$
2405 PRINT "CURRENT RANK: ";RA$(V,PS(1))
2406 PRINT "AGE: ";SK(39);" TERM #";TE
2408 GOSUB 300: PRINT "TEST FINDINGS": GOSUB 300
2410 IF F < >0 THEN 2460
2460 PRINT "I.Q. = ";SK(34)
2465 GOSUB 300: PRINT "PERSONALITY SUMMARY:": PRINT
2466 IF SK(34) <101 GOTO 2471
2467 ON PS +1 GOTO 2470,2472,2474,2476,2478,2480,2482,2484
2470 PRINT " SUBJECT IS NORMAL AND WELL-ADAPTED": PRINT "TO THE REQUIREMENTS OF MILITARY LIFE.": GOTO 2485
2471 PRINT "LIMITED INTELLIGENCE LIMITS SKILLS THIS": PRINT "PATIENT CAN AQUIRE. PT SHOULD EMPHASIZE": PRINT "IMPROVEMENT OF I.Q.": GOTO 2485
2472 PRINT " SUBJECT WILL SHOW SOME DECOMPENSA-": PRINT "TION UNDER SITUATIONS OF COMBAT": PRINT "STRESS.": GOTO 2485
2474 PRINT " SUBJECT IS PRONE TO EXTREME": PRINT "VIOLENCE, AND MUST BE CAREFULLY CON-": PRINT "TROLLED AT ALL TIMES.": GOTO 2485
2476 PRINT " SUBJECT WILL BE UNABLE TO FUNCTION": PRINT "IN ANY STRESSFUL SITUATION, AND WILL": PRINT "CAUSE SEVERE PROBLEMS TO HIS OFFICERS.": GOTO 2485
2478 PRINT " SUBJECT IS PSYCHOTIC AND OUT OF": PRINT "CONTACT WITH REALITY.": GOTO 2485
2480 PRINT " SUBJECT MAY BE PRONE TO PERVERSE": PRINT "TENDENCIES, WITH A VARIETY OF OBJECTS,": PRINT "AND MAY DEMONSTRATE BIZZARE BE-": PRINT "HAVIOR AT UNPREDICTABLE TIMES.": GOTO 2485
2482 PRINT " PSYCHOPATHIC LIAR--TOTALLY WITHOUT": PRINT "COMMITMENT TO ANY CAUSE BUT HIS OWN.": GOTO 2485
2484 PRINT " PSYCHOPATHIC KILLER: COOL, CALCU-": PRINT "LATING, AND SKILLED AT HIS TRADE.": GOTO 2485
2485 PRINT : GOSUB 300: PRINT "RECOMMENDATIONS:"
2486 IF SK(34) <101 THEN PRINT "SUBJECT ENLISTED MAN SHOULD DEVELOP": PRINT "INTELLIGENCE"
2488 ON PS +1 GOTO 2490,2491,2492,2493,2494,2495,2496,2497
2490 PRINT "PT WILL WORK WELL, WHEREVER PLACED": GOTO 2499
2491 PRINT " UNDER STRONG LEADERSHIP, SUBJECT": PRINT "WILL DO WELL IN MOST SITUATIONS.": GOTO 2499
2492 PRINT " PLACEMENT IN MILITARY POLICE ": PRINT "JOB ASSIGNMENT": GOTO 2499
2493 PRINT " PLACEMENT IN NON-COMBATANT": PRINT "POSITION.": GOTO 2499
2494 FLASH : PRINT "***** WARNING *****": PRINT "DISCHARGE IMMEDIATELY!": NORMAL : GOTO 2499
2495 PRINT " FURTHER STUDY AND CLOSE SUPER-": PRINT "VISION REQUIRED. SEPARATE FROM FRIEND-": PRINT "LY ANIMALS AND NATIVES.": GOTO 2499
2496 PRINT " PLACEMENT IN INTELLIGENCE GATHER-": PRINT "ING ORGANIZATIONS, SO LONG AS HIGH": PRINT "REWARDS ARE PROVIDED.": GOTO 2499
2497 PRINT " PLACEMENT WITH ELITE ASSASSINATION": PRINT "TEAMS. MONEY WILL SERVE AS CONTROLLING": PRINT "INCENTIVE.": GOTO 2499
2499 PRINT : GOSUB 300: RETURN
2500 HOME : PRINT "SKILLS ACCRUED BY CATEGORY -3-": PRINT "SUBJECT NAME: ";NAME$
2505 PRINT "CURRENT RANK: "RA$(V,PS(1))
2506 PRINT "AGE: ";SK(39);" TERM #";TE
2509 VTAB 5: PRINT "PERSONAL DEV . SKILLS": VTAB 6: GOSUB 300
2510 PRINT : FOR I = 0 TO 5:X = NS%(0,I,V): VTAB I +7: PRINT SK$(X): VTAB I +7: HTAB 17: PRINT SK(X): NEXT I
2511 VTAB 5: HTAB 25: PRINT "SERVICE SKILLS"
2512 PRINT : FOR I = 0 TO 5:X = NS%(1,I,V): VTAB I +7: HTAB 22: PRINT SK$(X): VTAB I +7: HTAB 39: PRINT SK(X): NEXT I
2513 VTAB 14: PRINT "TECH. ED. ": VTAB 14: HTAB 22: PRINT "PROF. EDUCATION": VTAB 15: GOSUB 300
2514 FOR I = 0 TO 5:X = NS%(3,I,V): VTAB I +16: HTAB 22: PRINT SK$(X): VTAB I +16: HTAB 39: PRINT SK(X): NEXT I
2515 PRINT : FOR I = 0 TO 5:X = NS%(2,I,V): VTAB I +16: PRINT SK$(X): VTAB I +16: HTAB 17: PRINT SK(X): NEXT I
2516 GOSUB 300
2599 RETURN
2600 PRINT "RANK CHANGE AND DISCHARGE -4-"
2605 PRINT "MILITARY SERVICE: "SE$(V)
2610 PRINT "CURRENT RANK: ";RA$(V,PS(1))
2615 PRINT "CURRENT AGE: ";SK(39);" SERVICE TERM #";TE
2620 GOSUB 300
2625 PRINT : PRINT "PROMOTIONAL ATTEMPTS THIS TERM: ";PA
2630 PRINT : PRINT "TOTAL PROMOTIONAL ATTEMPTS: ";TP +PA
2635 PRINT : PRINT "DEMOTIONS FOR CAUSE: ";DE
2654 PRINT : GOSUB 300
2655 PRINT "DISCHARGE STATUS"
2659 GOSUB 300
2660 PRINT : GOSUB 300
2699 RETURN
2700 HOME : PRINT "SUMMARY OF FINANCIAL STATUS -6-": PRINT "SUBJECT NAME: ";NA$: NORMAL
2702 PRINT "SERVICE: ";SE$(V)
2703 PRINT "CURRENT RANK: ";RA$(V,PS(1))
2710 PRINT "AGE: ";SK(39);" TERM #";TE
2715 PRINT : GOSUB 300: PRINT
2730 PRINT "MONEY THIS TERM TO DATE: GCR "; INT(GC/1000);"K"
2739 PRINT
2740 PRINT "ACCUMULATED PAY TO DATE: GCR ";AM;"K"
2745 PRINT
2750 PRINT "RETIREMENT PAY TO DATE: GCR ";RP;"K"
2755 PRINT
2760 PRINT "INSURANCE PAYED ON DEATH: GCR "; INT(AM *.5) +1;"K"
2765 PRINT : GOSUB 300
2770 PRINT : PRINT "TOTAL PAY AT RETIREMENT= ";AM +RP;"K"
2799 RETURN
2800 RETURN
2900 X = X: RETURN
3920 GOSUB 2200
3925 ON IP GOSUB 2000,2300,2400,2500,2600,2700,2800
3930 IF IP = 7 THEN 3950
3939 VTAB 23: INVERSE : INPUT "REVIEW OTHER PAGES? (Y/N) ";I$: NORMAL : IF I$ = "Y" THEN 3920
3950 GOTO 100
50000 R1 = INT( RND(1) *6 +1)
50010 R2 = INT( RND(1) *6 +1) + INT( RND(1) *6 +1): RETURN
52015 IF CH(1) >6 AND CH(3) >6 THEN PH(1) = 4: GOTO 52024
52016 IF CH(1) >5 AND CH(3) >5 THEN PH(1) = 3: GOTO 52024
52017 IF CH(1) AND CH(3) >3 THEN PH(1) = 2: GOTO 52024
52018 PH(1) = 1
52024 PH(2) = PH(1):PH(3) = PH(1)
52025 FOR I = 4 TO 2 STEP -1
52026 IF CH(2) >I +2 THEN PH(4) = I: GOTO 52029
52027 NEXT I
52028 PH(4) = 1
52029 PH(5) = PH(4):PH(6) = PH(4)
52050 PRINT " THIS ";SK(39);" YEAR OLD PT. SHOWS": PRINT "DANGEROUS IMPAIRMENT OF THE CARDIO-": PRINT "VASCULAR AND PULMONARY SYSTEM.": FLASH : PRINT "IMMEDIATE DISCHARGE RECCOMENDED":RJ = 2: RETURN
52051 RETURN
52060 PRINT " WITH MODERATE IMPAIRMENT OF CARDIO": PRINT "VASCULAR SYSTEM, ONLY LIMITED PHYSICAL": PRINT "ACTIVITY IS RECCOMENDED FOR THIS PT."
52061 RETURN
52070 PRINT " THE IMPAIRMENT SHOWN IS CORRECTABLE": PRINT "BY SURGERY. PT. SHOULD HAVE THIS DONE": PRINT "PRIOR TO COMBAT TRAINING"
52071 RETURN
52080 PRINT " CARDIO-PULMONARY, SKELETO-MUSCULAR": PRINT "SYSTEMS QUALIFY THIS PT. FOR COMBAT": PRINT "ASSIGNMENT"
52089 RETURN
52090 PRINT " WHILE HEART AND LUNGS ARE WITHIN": PRINT "ACCEPTABLE LIMITS, DEFECTS IN VISION": PRINT "AUDITION OR NEUROLOGY MAKE THIS": PRINT "SUBJECT UNQUALIFIED FOR COMBAT":RJ = 3
52091 RETURN
52100 RETURN
52300 X = X: RETURN
Text found in Space_I_1978_Edu_Ware.do/CH3.bas:
1 HOME : NORMAL : SPEED= 255: POKE 33,40: POKE 32,0: POKE 34,0: HOME
3 REM CHARACTERS (CH3)
4 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
8 IF C9% = 2 THEN 1168
9 GOTO 1060
100 C8% = 3
104 PRINT D$;"NOMONI,O,C"
108 PRINT D$;"BLOADCHAIN,A520"
109 CALL 520"CH2"
110 PRINT D$;"BLOADCHAIN,A520"
111 CALL 520"CH4"
149 PRINT D$;"RUNCHARACTERS"
300 PRINT "---------------------------------------": RETURN
1060 REM MAIN LOOP STARTS HERE
1061 GOSUB 52700
1062 GOSUB 3000
1085 IF RJ = 0 THEN GOSUB 4200
1100 NORMAL : GOSUB 3900
1106 GOSUB 8000
1107 IF RI = 1 THEN 149
1108 IF RI = 2 THEN END
1109 GOSUB 9000
1110 IF RJ = 1 THEN 5000
1115 SK(X) = SK(X) +1
1117 GOSUB 52710
1120 IF PH(1) <2 THEN GOSUB 5200
1130 IF (PH(1) <3 OR PH(4) <3 OR SK(34) <90 OR PS = 3 OR PS = 4) AND TE = 1 THEN GOSUB 5300
1160 HOME : INVERSE : FOR J = 1 TO 1000: VTAB 9: PRINT " BEFORE CONTINUING, DO YOU WISH TO ": INPUT "REVIEW CURRENT STATUS? (Y/N)";I$: NORMAL
1161 GOSUB 52015
1164 SK(39) = SK(39) +1
1166 IF LEFT$(I$,1) < >"Y" THEN 1168
1167 HOME : FLASH : VTAB 14: PRINT "FILE RETRIEVAL ...PLEASE WAIT": NORMAL : PRINT : PRINT : PRINT ">> END OF YEAR ";YE;" REVIEW": GOTO 100
1168 YE = YE +1:YV = YE/4
1170 IF YE >4 THEN 110
1173 GOSUB 53100
1175 GOTO 1060
3000 POKE 33,40: POKE 32,0: POKE 34,0: HOME
3001 HOME : PRINT "TO: ";NA$: PRINT : PRINT "FROM: DIRECTOR OF TRAINING, GALACTIC"
3005 PRINT " ";SE$(V);" HQ"
3010 PRINT : PRINT "SUBJECT: SELECTION OF TERM #";TE
3020 PRINT : PRINT " HAVING REVIEWED YOUR FILE IT IS NOW": PRINT "TIME FOR YOU TO SELECT YOUR TRAINING"
3025 PRINT "FOR YEAR ";YE;" OF THIS TERM OF SERVICE"
3030 PRINT
3031 POKE 34,13
3032 VTAB 16
3035 POKE 34,13
3040 PRINT "<1> PERSONAL DEVELOPMENT"
3045 PRINT "<2> SERVICE SKILLS"
3050 PRINT "<3> ADVANCED ED."
3055 PRINT "<4> PROF. ED.": PRINT
3059 VTAB 14
3060 INVERSE : INPUT "WHICH TABLE (1-4)?";TA: NORMAL : HOME
3066 TA = TA -1: IF TA = 3 AND CH(4) <8 OR TA = 3 AND CH5(5) <8 THEN GOSUB 3910: GOTO 3000
3067 IF TA <0 OR TA >3 THEN 3035
3068 FOR I = 1 TO 6: VTAB 16 +(I -1): PRINT "<";I;">": NEXT I
3070 FOR J = 1 TO 6: VTAB 16 +(I -1)
3071 PRINT : FOR I = 0 TO 5:X = NS%(TA,I,V): HTAB 5: VTAB I +16: PRINT SK$(X): VTAB I +16: HTAB 22: PRINT SK(X): NEXT I
3072 NEXT J
3073 VTAB 14: INVERSE : INPUT "WHICH SKILL (1-6)?";S: NORMAL
3074 IF S <1 OR S >6 THEN GOTO 3073
3075 S = S -1
3080 POKE 33,13: POKE 32,26: VTAB 14: FLASH : PRINT "CHECKING": PRINT "ACCEPTANCE": FOR J = 1 TO 1500: NEXT J: HOME
3085 GOSUB 3200
3099 ZZ = FRE(0): RETURN
3200 REM 3200-3399 CHECKS PHYSICAL CONDITION AGAINST DATA ENTRY FOR APPROVAL
3202 X = NS%(TA,S,V):RJ = 0
3204 IF (PH(1) <3 OR PH(4) <3) AND (X = 7 OR X = 15 OR X = 22 OR X = 27 OR X = 23 OR X = 17) THEN 3251
3210 IF X = 34 THEN CH(4) = CH(4) +1
3220 IF X <37 AND X >33 THEN GOSUB 52100
3245 PRINT "CHOICE": PRINT "APPROVED": PRINT "PENDING": PRINT "PSYC OKAY": FOR J = 1 TO 2000: NEXT J: HOME
3250 RETURN
3251 PRINT "REJECTED": PRINT : NORMAL : PRINT "PHYSICAL": PRINT "CONDITION": PRINT "LIMITS": PRINT "CHOICE": PRINT : FOR J = 1 TO 2000: NEXT J
3260 RJ = 1: RETURN
3900 POKE 33,40: POKE 32,0: POKE 34,0: HOME : RETURN
3910 VTAB 14: FLASH : PRINT "EDUCATION LOW CHOOSE AGAIN": FOR J = 1 TO 1000: NEXT J: NORMAL
3911 HOME
3915 RETURN
4200 REM 4200-4299 CHECKS PSYC (PS) VARIABLE TO ACCEPT/REJECT SKILL SELECTION - RJ=REJECTION FLAG
4202 IF X <11 AND SK(34) <90 THEN 4289
4203 IF X >10 AND X <21 AND SK(34) <100 THEN 4289
4205 IF PS = 0 GOTO 4299
4207 ON PS GOTO 4290,4210,4215,4220,4225,4230,4235,4250
4210 IF X = 3 OR X = 5 OR X = 6 OR (X >10 AND X <21) THEN 4291
4211 GOTO 4299
4215 IF X = 0 OR X = 3 OR X = 4 OR X = 5 OR X = 7 OR X = 8 OR X = 15 OR X = 16 OR X = 20 OR (X <28 AND X >21) THEN 4291
4216 GOTO 4299
4220 IF (X >3 AND X <8) OR (X >14 AND X <28) THEN 4291
4221 GOTO 4299
4225 IF X = 7 THEN 4291
4226 GOTO 4299
4230 IF (X >7 AND X <13) OR X = 15 OR X = 16 THEN 4291
4231 GOTO 4299
4235 IF X = 3 OR X = 20 THEN 4291
4236 GOTO 4299
4250 GOTO 4299
4289 PRINT "REJECTED": NORMAL : PRINT : PRINT "LIMITED": PRINT "INTELLIGENCE": FOR K = 1 TO 2000: NEXT K:RJ = 1: RETURN
4290 PRINT "ACCEPTANCE": NORMAL : PRINT "PENDING": PRINT "PSYCHIATRIC": PRINT "TREATMENT": FOR K = 1 TO 2000: NEXT K: RETURN
4291 PRINT "REJECTED": NORMAL : PRINT "PSYCHIATRIC": PRINT "INSTABILITY": FOR K = 1 TO 2000: NEXT K:RJ = 1: RETURN
4292 PRINT "ACCEPTANCE": NORMAL : PRINT "IDEAL": PRINT "PERSONALITY": PRINT "FOR THIS": PRINT "SKILL": FOR K = 1 TO 2000: NEXT K: RETURN
4299 PRINT "PSYCHIATRIC": PRINT "ACCEPTANCE": FOR K = 1 TO 2000: NEXT K: RETURN
5000 HOME
5001 REM CHARACTER REJECTION - PHYSICAL OR PSYCHIATRIC - RELOOP TO SKILL ENTRY ROUTINE
5002 PRINT "TO: ";NA$
5005 PRINT : PRINT "FROM: ";SE$(V);" TRAINING ": PRINT " COMMAND"
5006 PRINT
5010 PRINT "SUBJECT: SELECTING ANOTHER SKILL"
5015 GOSUB 300
5020 PRINT : PRINT " SINCE YOU HAVE PHYSICAL, PSYCHIATRIC, ": PRINT "OR INTELLECTUAL LIMITATIONS, WHICH ": PRINT "MADE IT IMPOSSIBLE TO BE ADMITTED TO"
5025 PRINT "TRAINING FOR THE SKILL YOU SELECTED,": PRINT "YOU MUST NOW SELECT ANOTHER SKILL.": GOSUB 300
5030 VTAB 23: INVERSE : INPUT "HIT TO REENTER SKILL";I$
5035 NORMAL : HOME
5040 GOTO 1060
5200 X = X
5205 HOME : PRINT "TO: CHARACTERS PLAYER": PRINT
5210 PRINT "FROM: GAME CONTROL COMPUTER": PRINT
5214 FLASH
5215 PRINT "SUBJECT: DEATH OF ";NA$: NORMAL : GOSUB 300
5220 PRINT : PRINT " AS YOU ARE AWARE, YOUR CHARACTER, ": PRINT NAME$;" SUFFERED FROM MAJOR "
5225 PRINT "PHYSICAL DISABILITIES. THIS COMPUTER, ": PRINT "IN MONITORING CHARACTER TELEMETRY, HAS"
5230 PRINT "DETERMINED THAT THE CHARACTER YOU WERE": PRINT "GENERATING HAS SUFFERED A MASSIVE": PRINT "CORONARY, AND HAS CEASED TO FUNTION.": PRINT "YOU THE PLAYER, NOW HAVE TWO OPTIONS:": PRINT
5235 PRINT "----<1> RESTART THE GAME"
5240 PRINT : PRINT "----<2> END THE GAME FOR NOW"
5250 VTAB 23: INVERSE : INPUT "WHICH CHOICE? ";IP: NORMAL : HOME
5255 IF IP = 1 THEN 149
5260 IF IP = 2 THEN 1999
5265 GOTO 5200
5270 RETURN
5300 X = X
5305 HOME : PRINT "TO: CHARACTERS PLAYER": PRINT
5310 PRINT "FROM: GAME CONTROL COMPUTER": PRINT
5320 PRINT "SUBJECT: QUALITY OF CHARACTER": GOSUB 300
5325 PRINT : PRINT " HAVING REVIEWED ALL ATTRIBUTES OF ": PRINT "THE CHARACTER, THE PLAYER IS WARNED ": PRINT "THAT PROJECTIONS INDICATE FINAL": PRINT "CHARACTERSITICS OF THIS CHARACTER"
5330 PRINT "WILL RESULT IN AN INFERIOR PRODUCT.": PRINT "WITH THIS IN MIND THE PLAYER IS GIVEN": PRINT "THE FOLLOWING OPTIONS:"
5335 PRINT
5340 PRINT "----<1> START THE GAME WITH A NEW ": PRINT " CHARACTER": PRINT
5345 PRINT "----<2> CONTINUE WITH THIS CHARACTER": PRINT
5350 PRINT "----<3> END THE GAME FOR NOW
5355 VTAB 23: INVERSE : INPUT "WHICH ONE? ";IP: NORMAL : HOME
5360 IF IP = 1 THEN 149
5365 IF IP = 2 THEN 1160
5370 IF IP = 3 THEN END
5375 GOTO 5300
5399 RETURN
8000 IF V = 0 OR V = 4 THEN DD = 1
8001 IF V = 2 OR V = 5 THEN DD = 2
8002 IF V = 1 OR V = 3 THEN DD = 4
8004 DD = RND(1)/DD:KIA = .0125:IJ = .0225
8005 IF KI > = DD THEN 8100
8010 IF IJ >DD THEN 8200
8020 GOTO 8999
8100 HOME
8105 PRINT "TO: CHARACTERS PLAYER": PRINT
8110 PRINT "GAME CONTROL COMPUTER": PRINT
8115 PRINT "SUBJECT: DEATH OF ";NA$: GOSUB 300
8120 PRINT " TELEMETRY REPORTS YOUR CHARACTER": PRINT NAME$;" TO HAVE BEEN KILLED": PRINT "IN A TRAINING ACCIDENT. YOU MAY PROCEED"
8125 PRINT "IN THE FOLLOWING WAYS:": PRINT
8130 PRINT " <1> RESTART THE GAME": PRINT
8135 PRINT " <2> ABORT GAME FOR NOW": PRINT : GOSUB 300
8140 VTAB 23: INVERSE : INPUT "WHICH CHOICE? ";RI: NORMAL
8145 IF (RI <1 OR RI >2) THEN 8140
8150 HOME : GOTO 8999
8200 HOME
8205 PRINT "TO: CHARACTERS PLAYER": PRINT
8210 PRINT "GAME CONTROL COMPUTER": PRINT
8215 PRINT "SUBJECT: INJURY TO ";NA$: GOSUB 300
8220 PRINT " TELEMETRY REPORTS YOUR CHARACTER": PRINT NAME$;" TO HAVE BEEN INJURED": PRINT "IN A TRAINING ACCIDENT. YOU MAY PROCEED"
8225 PRINT "IN THE FOLLOWING WAYS:": PRINT
8230 PRINT " <1> RESTART THE GAME": PRINT
8235 PRINT " <2> ABORT GAME FOR NOW": PRINT
8236 PRINT " <3> CONTINUE WITH DEFECTIVE"
8237 PRINT " CHARACTER"
8240 VTAB 23: INVERSE : INPUT "WHICH CHOICE? ";RI: NORMAL
8245 IF (RI <1 OR RI >3) THEN 8220
8250 IF RI = 3 THEN 8260
8255 HOME : GOTO 8999
8260 FOR I = 31 TO 33:SK(I) = SK(I) -3: IF SK(I) <1 THEN SK(I) = 1
8265 NEXT I: HOME
8999 RETURN
9000 IF SK(39) >50 THEN 9015
9005 IF SK(39) >34 THEN 9020
9010 RETURN
9015 R0 = INT( RND(1) *3): IF R0 = 4 THEN R0 = 3
9020 FOR I = 31 TO 33:SK(I) = SK(I) -1: IF SK(I) <4 THEN SK(I) = 4
9021 R0 = 30 +R0: IF R0 >40 THEN R0 = 40
9025 SK(R0) = SK(R0) -1: IF SK(R0) <4 THEN SK(R0) = 4: RETURN
50000 R1 = INT( RND(1) *6 +1)
50010 R2 = INT( RND(1) *6 +1) + INT( RND(1) *6 +1): RETURN
52015 IF CH(1) >6 AND CH(3) >6 THEN PH(1) = 4: GOTO 52024
52016 IF CH(1) >5 AND CH(3) >5 THEN PH(1) = 3: GOTO 52024
52017 IF CH(1) AND CH(3) >3 THEN PH(1) = 2: GOTO 52024
52018 PH(1) = 1
52024 PH(2) = PH(1):PH(3) = PH(1)
52025 FOR I = 4 TO 2 STEP -1
52026 IF CH(2) >I +2 THEN PH(4) = I: GOTO 52029
52027 NEXT I
52028 PH(4) = 1
52029 PH(5) = PH(4):PH(6) = PH(4)
52099 RETURN
52100 ADJ = ABS(CH(4) -CH(6)):ACH = CH(5) -CH(4): REM ROUTINE FOR ASSIGNING ADJUSTMENT TO PSYCHIATRIC QUALITIES
52101 AD = -AD:AC = AC -20
52102 IF AD < -8 THEN AD = 6
52103 IF AD < -5 THEN AD = 5
52104 IF AD < -2 THEN AD = 4
52105 IF AD < -1 THEN AD = 3
52106 IF AD <0 THEN AD = 2
52107 IF AD = 0 THEN AD = 1
52110 IF AC < -25 THEN AC = 1
52111 IF AC < -22 THEN AC = 2
52112 IF AC < -20 THEN AC = 3
52113 IF AC < -19 THEN AC = 4
52114 IF AC < -17 THEN AC = 5
52115 IF AC < -14 THEN AC = 6
52116 IF AC <0 THEN AC = 7
52120 SK(34) = (CH(4) *10 +37) + INT( RND(1) *10): IF SK(34) <79 THEN SK(34) = 81
52130 ON AC GOTO 52141,52142,52143,52144,52145,52146,52147
52141 Y = 123444: GOTO 52151
52142 Y = 123444: GOTO 52151
52143 Y = 101221: GOTO 52151
52144 Y = 010162: GOTO 52151
52145 Y = 101226: GOTO 52151
52146 Y = 114267: GOTO 52151
52147 Y = 111676: GOTO 52151
52151 IF AD = 1 GOTO 52153
52152 FOR I = 1 TO AD -1:Y0 = Y/(10 ^(6 -I)):Y0 = INT(Y0):Y0 = Y0 *(10 ^(6 -I)):Y = Y -Y0: NEXT
52153 PS = Y/(10 ^(6 -AD)):PS = PS +.1:PS = INT(PS)
52155 GOSUB 50010: IF R2 = 12 THEN PS = 5
52158 F0 = 1: RETURN
52500 F4 = F4 +1
52501 IF F4 = >4 THEN F4 = 0
52502 IF F4 <1 THEN 52505
52504 YE = YE +1
52505 IF YE = 5 THEN YE = 1
52510 IF YE = 4 THEN TE = TE +1
52515 YV = YE/4
52520 SK(39) = SK(39) +1
52599 RETURN
52700 FOR K = 1 TO 6: IF CH(K) >12 THEN CH(K) = 12
52701 NEXT K
52702 SK(31) = CH(1):SK(32) = CH(2):SK(33) = CH(3):SK(35) = CH(5):SK(36) = CH(6): RETURN
52710 FOR K = 31 TO 33: IF SK(K) >12 THEN SK(K) = 12
52711 NEXT K
52712 IF SK(35) >12 THEN SK(35) = 12
52713 IF SK(36) >12 THEN SK(36) = 12
52720 CH(1) = SK(31):CH(2) = SK(32):CH(3) = SK(33):CH(5) = SK(35):CH(6) = SK(36): RETURN
52900 IF PH(1) = 1 THEN RJ = 2
52905 IF PH(1) <3 OR PH(4) <3 THEN RJ = 3
52999 RETURN
53100 REM COMPUTES PAY TO DATE, ACCUMULATED PAY, RETUREMENT TO DATE, AND TOTAL OWED
53115 IF V = 0 THEN V1 = .5
53116 IF V = 1 THEN V1 = .4
53117 IF V = 2 THEN V1 = .4
53118 IF V = 3 THEN V1 = .1
53119 IF V = 4 THEN V1 = .4
53120 IF V = 5 THEN V1 = 1.0
53124 V2 = TE: IF V2 >5 THEN V2 = 5
53125 GC = 50000/(6 -V2) *V1 *YV
53130 AM = AM + INT(GC/1000)
53135 RP = .07 *AM
53199 RETURN
Text found in Space_I_1978_Edu_Ware.do/CH4.bas:
1 HOME : NORMAL : SPEED= 255: POKE 33,40: POKE 32,0: POKE 34,0: HOME
3 REM CHARACTERS (CH4)
4 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
5 REM VER 2.0.2 REV 12-1-79
9 GOTO 6000
100 PRINT D$;"BLOAD CHAIN, A520"
101 CALL 520"CH3"
150 PRINT D$;"NOMON I,O,C": HOME : NORMAL
151 PRINT D$;"OPEN";NA$: PRINT D$;"WRITE";NA$
152 FOR I = 0 TO 40: PRINT SK(I): NEXT I
153 PRINT P$
154 PRINT D$;"CLOSE";NA$: PRINT D$;"LOCK";NA$
159 RETURN
200 PRINT D$;"RUN SPACE"
300 PRINT "---------------------------------------": RETURN
1060 GOTO 100
1200 SK(28) = RP:SK(29) = AM:SK(30) = 1 +(AM/2):
1202 SK(38) = SK(38) +(V/10)
1204 FOR I = 0 TO 6:SK(40) = SK(40) +(PH(I) *10 ^(I -1)): NEXT :SK(40) = SK(40) +(PS/10)
1210 IF SK(26) = 0 THEN P$ = "LP-"
1211 IF SK(26) = 5 THEN P$ = "BL-"
1212 IF SK(26) = 6 THEN P$ = "GN-"
1213 IF SK(26) = 7 THEN P$ = "TR-"
1214 IF SK(26) = 8 THEN P$ = "HP-"
1215 IF SK(26) = 9 THEN P$ = "MP-"
1216 IF SK(26) = 10 THEN P$ = "SS-"
1217 IF SK(26) = 14 THEN P$ = "MS-"
1218 IF SK(26) = 0 THEN P$ = "LP-"
1220 SK(26) = 0: GOSUB 150
1300 HOME
1301 GOSUB 300: FLASH : PRINT NA$;" HAS JUST ENTERED": PRINT "CIVILIAN LIFE IN THE GALAXY"
1302 NORMAL : PRINT : PRINT "YOU, AS THE PLAYER, HAVE THE FOLLOWING": PRINT "CHOICES:"
1304 PRINT : PRINT " <1> PLAY THROUGH SOME OF HIS/HER": PRINT " ADVENTURES."
1306 PRINT : PRINT " <2> EXIT THIS GAME AND COME BACK TO"
1307 PRINT " PLAY THIS CHARACTER LATER"
1310 INVERSE : PRINT : PRINT : INPUT "ENTER YOUR SELECTION.";IP
1311 NORMAL
1312 IF IP < >1 AND IP < >2 THEN 1300
1320 IF IP = 1 THEN GOTO 200
1999 END
2700 HOME : PRINT "SUMMARY OF FINANCIAL STATUS -6-": PRINT "SUBJECT NAME: ";NA$: NORMAL
2702 PRINT "SERVICE: ";SE$(V)
2703 PRINT "CURRENT RANK: ";RA$(V,PS(1))
2710 PRINT "AGE: ";SK(39);" TERM #";TE
2715 PRINT : GOSUB 300: PRINT
2730 PRINT "MONEY THIS TERM TO DATE: GCR "; INT(GC/1000);"K"
2739 PRINT
2740 PRINT "ACCUMULATED PAY TO DATE: GCR ";AM;"K"
2745 PRINT
2750 PRINT "RETIREMENT PAY TO DATE: GCR ";RP;"K"
2755 PRINT
2760 PRINT "INSURANCE PAYED ON DEATH: GCR "; INT(AM *.5) +1;"K"
2765 PRINT : GOSUB 300
2770 PRINT : PRINT "TOTAL PAY AT RETIREMENT= ";AM +RP;"K"
2799 RETURN
6000 HOME : PRINT "TO: ";NA$
6001 REM SELECTS RETIREMENT/REENLISTMENT OPTION
6005 PRINT : PRINT "FROM: GALACTIC SPACE SERVICES, DEPT. OF": PRINT " ";SE$(V): PRINT
6010 PRINT "RE: REENLISTMENT/RETIREMENT": GOSUB 300: PRINT
6015 PRINT " HAVING SUCCESSFULLY COMPLETED ": PRINT "TERM #";TE;" WITH THE SERVICE TO WHICH "
6020 PRINT "YOU WERE ASSIGNED, YOU NOW HAVE THREE": PRINT "CHOICES AVAILABLE TO YOU:": PRINT
6025 FLASH : PRINT "WARNING!!": NORMAL
6026 PRINT : INVERSE
6035 PRINT "ADDTIONAL REENLISTMENTS ENTAIL ": PRINT "CUMULATIVE RISKS OF DEATH OR DISABLING ": PRINT "INJURY!! CONSIDER THIS BEFORE CHOOSING "
6040 PRINT : INVERSE : INPUT "HIT FOR MORE. ";I$: NORMAL : HOME
6045 PRINT "REENLISTMENT/RETIREMENT -2-": PRINT : GOSUB 300: PRINT
6050 PRINT " <1> REENLIST IF QUALIFIED": PRINT
6055 PRINT " <2> RETIRE WITH CASH BENIFITS": PRINT
6060 PRINT " <3> RETIRE WITH MATERIAL REWARD"
6065 PRINT : GOSUB 300: PRINT : INVERSE : INPUT "WHICH ONE? ";IP
6066 NORMAL
6067 FL = INT( RND(1) *10 +1): IF FL = 1 THEN GOSUB 6100
6068 IF FL >7 THEN GOSUB 6200
6069 IF IP = 1 THEN 40000
6074 SK(38) = 1: IF IP = 2 THEN GOTO 40100
6075 IF IP = 3 THEN 40200
6099 GOTO 1200
6100 HOME : PRINT "NOTICE TO ALL PERSONNEL ENDING THE ": PRINT "CURRENT TERM OF SERVICE": PRINT : GOSUB 300
6105 PRINT " RECENT GALACTIC ECONOMIC CONDITIONS": PRINT "REQUIRE THE REDUCTION OF MILITARY FORCE": PRINT "STRENGTH, IMMEDIATELY."
6110 PRINT : PRINT " YOU ARE HEARBY IMMEDIATELY RELEASED": PRINT "FROM THE ";SE$(V);"AND"
6115 PRINT "ISSUED AN HONORABLE DISCHARGE FOR YOUR": PRINT "SERVICE TO THE GALAXY"
6120 PRINT : GOSUB 300: PRINT : INVERSE : INPUT "HIT FOR MONETARY ACCRUAL";I$: NORMAL : HOME
6125 GOTO 40100
6199 RETURN
6200 HOME : VTAB 8: FLASH : HTAB 16: PRINT "NOTICE": NORMAL : PRINT
6205 PRINT "A STATE OF WAR NOW EXISTS BETWEEN THE ": PRINT "GALACTIC FEDERATION, AND INVADERS FROM ": PRINT "OUTSIDE THE GALAXY. ALL PERSONNEL ARE,": PRINT "BY ORDER OF THE EXECUTIVE COUNCIL, TO ": PRINT "REPORT IMMEDIATELY FOR ASSIGNMENT
6210 PRINT "DUTY. ALL PROMOTIONS, RETIREMENTS, AND": PRINT "DISCHARGES ARE SUSPENDED FOR THE ": PRINT "DURATION OF THIS EMERGENCY."
6220 FOR J = 1 TO 8000: NEXT J:TE = TE +1:YE = 1: GOTO 1060
6225 RETURN
6999 RETURN
7000 IF MB(V,TE) = 1 AND SK(34) <171 THEN SK(34) = SK(34) +5
7041 IF MB(V,TE) = 2 AND SK(34) <166 THEN SK(34) = SK(34) +10
7042 IF MB(V,TE) = 3 AND SK(35) <11 THEN SK(35) = SK(35) +2
7043 IF MB(V,TE) = 4 AND SK(35) <12 THEN SK(35) = SK(35) +1
7044 IF MB(V,TE) = 5 THEN SK(23) = SK(23) +1
7045 IF MB(V,TE) = 6 THEN SK(27) = SK(27) +1
7046 IF MB(V,TE) = 12 AND SK(36) <11 THEN SK(36) = SK(36) +2
7047 IF MB(V,TE) = 13 AND SK(36) <12 THEN SK(36) = SK(36) +1
7050 SK(26) = MB(V,TE)
7099 RETURN
7999 RETURN
9000 IF SK(39) >50 THEN 9100
9005 IF SK(39) >34 THEN 9020
9010 RETURN
9015 R0 = INT( RND(1) *3): IF R0 = 4 THEN R0 = 3
9020 FOR I = 31 TO 33:SK(I) = SK(I) -1: IF SK(I) <4 THEN SK(I) = 4
9021 R0 = 30 +R0: IF R0 >40 THEN R0 = 40
9025 SK(R0) = SK(R0) -1: IF SK(R0) <4 THEN SK(R0) = 4: RETURN
9100 PRINT "TO: ";RA$;"";NA$
9105 PRINT "FROM: ";SE$(V);" RETIREMENT OFFICE": PRINT
9110 PRINT "SUBJECT: MANDATORY RETIREMENT": GOSUB 300
9120 PRINT : PRINT " HAVING NOW REACHED MANDATORY RETIRE-": PRINT "MENT, PLEASE REPORT TO THIS OFFICE FOR": PRINT "PROCESSING."
9125 VTAB 23: INVERSE : INPUT "HIT TO PROCEED.";I$
9130 HOME : NORMAL : PRINT "SELECT ONE OF THESE OPTIONS:"
9132 PRINT : PRINT : PRINT " <1> RETIRE WITH FINANCIAL BENEFITS.": PRINT : PRINT : PRINT " <2> RETIRE WITH MATERIAL BENEFITS."
9134 INVERSE : PRINT : PRINT : INPUT "WHICH ONE";IP: IF IP < >1 AND IP < >2 THEN 9134
9140 ON IP GOSUB 40100,40200
9150 GOTO 1200
40000 NORMAL : HOME
40005 PRINT "TO: ";NA$: PRINT
40010 PRINT "FROM: ";SE$(V);" HEADQUARTERS": PRINT
40015 PRINT "SUBJECT: REQUEST FOR REENLISTMENT": PRINT : GOSUB 300
40020 IF PH(1) <3 OR PH(4) <3 THEN 40050
40021 R0 = RND(1): IF PS = 4 OR (PS = 3 AND R0 >.6) OR (PS = 5 AND R0 >.9) OR (PS = 2 AND R0 >.6) OR (PS = 1 AND R0 >.95) THEN 40060
40022 IF SK(34) <100 AND (V = 0 OR V = 2 OR V = 4) THEN 40070
40025 PRINT : FLASH : PRINT "ACCEPTED": NORMAL : PRINT : PRINT "STANDBY FOR NEXT ASSIGNMENT"
40026 TE = TE +1:YE = 1
40030 FOR J = 1 TO 1000: NEXT J
40035 PS(1) = TE -1
40040 C9% = 0: GOTO 100
40050 HOME : FLASH : VTAB 5: HTAB 13: PRINT "REQUEST REJECTED": NORMAL : PRINT
40055 PRINT "POOR PHYSICAL CONDITION MAKES FURTHER ": PRINT "INVESTMENT BY THE ";SE$(V):: PRINT "INAPROPRIATE": PRINT
40056 PRINT "YOU ARE THEREFORE DISCHARGED WITH A": PRINT
40057 INVERSE : PRINT DI$(3);" DISCHARGE": NORMAL :SK(38) = 3
40058 GOSUB 300: VTAB 22: INVERSE : INPUT "HIT FOR MONETARY ACCRUAL";I$: NORMAL : HOME
40059 FOR J = 1 TO 2000: NEXT J: GOSUB 40100: RETURN
40060 HOME : FLASH : VTAB 5: HTAB 13: PRINT "REQUEST REJECTED": NORMAL : PRINT
40061 PRINT "PSYCHIATRIC DISABILITY MAKES FURTHER": PRINT "INVESTMENT BY THE ";SE$(V):: PRINT "INAPROPRIATE": PRINT
40062 PRINT "YOU ARE THEREFORE DISCHARGED WITH A": PRINT
40063 IF PS = 5 THEN 40067
40064 INVERSE : PRINT DI$(6);" DISCHARGE": NORMAL :SK(38) = 6: GOTO 40068
40067 INVERSE : PRINT DI$(4);" DISCHARGE": NORMAL :SK(38) = 4
40068 GOSUB 300: VTAB 22: INVERSE : INPUT "HIT FOR MONETARY ACCRUAL";I$: NORMAL : HOME
40069 FOR J = 1 TO 2000: NEXT J: GOSUB 40100: RETURN
40070 HOME : FLASH : VTAB 5: HTAB 13: PRINT "REQUEST REJECTED": NORMAL : PRINT
40071 PRINT "INTELLECTUAL LIMITATION MAKES FURTHER": PRINT "INVESTMENT BY THE ";SE$(V): PRINT "INAPROPRIATE": PRINT
40072 PRINT "YOU ARE THEREFORE DISCHARGED WITH A": PRINT
40073 INVERSE : PRINT DI$(3);" DISCHARGE": NORMAL :SK(38) = 3
40074 GOSUB 300: VTAB 22: INVERSE : INPUT "HIT FOR MONETARY ACCRUAL";I$: NORMAL : HOME
40079 FOR J = 1 TO 2000: NEXT J: GOSUB 40100
40099 RETURN
40100 REM COMPUTES AND DISPLAYS FINANCIAL BENIFITS AT DISCHARGE
40110 GOSUB 53100: GOSUB 2700
40112 INVERSE : VTAB 23: INPUT "HIT TO CONTINUE.";I$
40115 AM = AM +RP +(V1 *TE *12)
40120 HOME : PRINT NA$: PRINT "*** DISCHARGE/RETIREMENT DATA ***": NORMAL : GOSUB 300
40122 PRINT : PRINT "CASH RETIREMENT BONUS: GCR ";V1 *TE *12;"K": PRINT : PRINT "TOTAL CASH ON DISCHARGE:GCR ";AM;"K": GOSUB 300
40125 PRINT : PRINT "YOU HAVE RECEIVED AN HONORABLE DIS-": PRINT "CHARGE. THE ";SE$(V);" THANK YOU": PRINT "FOR A JOB WELL DONE."
40130 VTAB 23: INVERSE : INPUT "HIT TO ENTER CIVILIAN LIFE";I$: NORMAL
40135 SK(38) = 1:SK(26) = 11
40199 GOTO 1200
40200 NORMAL : HOME
40205 PRINT "TO: ";NAME$: PRINT
40210 PRINT "FROM: ";SE$(V);" RETIREMENT OFFICE": PRINT
40215 PRINT "SUBJECT: AWARD OF BENIFITS": GOSUB 300
40219 GOSUB 53100
40220 AM = AM +RP
40230 PRINT : PRINT "ACCORDING TO ";SE$(V);" POLICY": PRINT "YOU ARE ENTITLED TO THE FOLLOWING": PRINT "RETIREMENT BENIFITS, HAVING ELECTED "
40235 PRINT "THIS RETIREMENT OPTION: ": PRINT
40240 PRINT " <1> FINANCIAL BENIFITS: GCR";AM;"K": PRINT
40245 PRINT " <2> MATERIAL BENIFITS AS LISTED:": PRINT : GOSUB 7000: INVERSE : PRINT MB$(MB(V,TE)): NORMAL
40250 GOSUB 300
40260 PRINT "THE GALACTIC ";SE$(V);" EXTENDS": PRINT "ITS APPPRECIATION FOR A JOB WELL DONE": PRINT "AND AWARDS AN HONORABLE DISCHARGE.": GOSUB 300
40270 INVERSE : INPUT "TO RETURN TO CIVILIAN LIFE HIT ";I$: NORMAL
40299 GOTO 1200
40999 RETURN
50000 R1 = INT( RND(1) *6 +1)
50010 R2 = INT( RND(1) *6 +1) + INT( RND(1) *6 +1): RETURN
53100 REM COMPUTES PAY TO DATE, ACCUMULATED PAY, RETUREMENT TO DATE, AND TOTAL OWED
53115 IF V = 0 THEN V1 = .5
53116 IF V = 1 THEN V1 = .4
53117 IF V = 2 THEN V1 = .4
53118 IF V = 3 THEN V1 = .1
53119 IF V = 4 THEN V1 = .4
53120 IF V = 5 THEN V1 = 1.0
53124 V2 = TE: IF V2 >5 THEN V2 = 5
53125 GC = 50000/(6 -V2) *V1 *YV
53130 AM = AM + INT(GC/1000)
53135 RP = .07 *AM
53199 RETURN
Text found in Space_I_1978_Edu_Ware.do/CHAIN.txt:
Offset Hex Data Characters
======= ================================================ =================
$000000 20 85 03 20 A6 03 A9 07 85 8F A5 69 A6 6A 85 9D .. &.). ..%i&j..
$000010 86 9E E4 6C D0 04 C5 6B F0 05 20 7E 02 F0 F3 85 ..dlP.Ek p. ~.ps.
$000020 9F 86 A0 A9 03 85 8F A5 9F A6 A0 E4 6E D0 07 C5 .. )...% .& dnP.E
$000030 6D D0 03 4C E0 02 85 9D 86 9E A0 00 B1 9D AA C8 mP.L`... .. .1.*H
$000040 B1 9D 08 C8 B1 9D 65 9F 85 9F C8 B1 9D 65 A0 85 1..H1.e. ..H1.e .
$000050 A0 28 10 D3 8A 30 D0 C8 B1 9D A0 00 0A 69 05 65 (.S.0PH 1. ..i.e
$000060 9D 85 9D 90 02 E6 9E A6 9E E4 A0 D0 04 C5 9F F0 .....f.& .d P.E.p
$000070 BA 20 88 02 F0 F3 B1 9D 30 46 C8 B1 9D 10 41 C8 : ..ps1. 0FH1..AH
$000080 B1 9D F0 3C C8 B1 9D AA C8 B1 9D 85 9C 86 9B C5 1.p5!.<5
$000160 69 95 42 CA F0 EF A0 00 20 2C FE 6C AE 03 18 B5 i.BJpo . ,~l...5
$000170 00 65 9D 95 71 E8 B5 00 65 9E 95 71 60 AD 00 E0 .e..qh5. e..q`-.`
$000180 A0 0B C9 4C F0 02 A0 17 A2 0B B9 B8 03 9D AC 03 .ILp. . ".98..,.
$000190 88 CA 10 F6 60 6C AC 03 6C B2 03 6C B0 03 6C B4 .J.v`l,. l2.l0.l4
$0001A0 03 6C B6 03 00 00 00 00 00 00 00 00 00 00 00 00 .l6..... ........
$0001B0 65 D6 D2 D7 FB DA 5C DB 84 E4 9A D3 65 0E D4 0F eVRW{Z\[ .d.Se.T.
$0001C0 FC 12 5F 13 7B 1C 9A 0B .. .. .. .. .. .. .. .. |._.{...
** END **
Text found in Space_I_1978_Edu_Ware.do/CHARACTERS.bas:
1 HOME : NORMAL : SPEED= 255: POKE 33,40: POKE 32,0: POKE 34,0: HOME
2 D$ = CHR$(4)
3 REM CHARACTERS (CHARACTERS)
4 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
5 REM VER2.2 4-1-80
8 PRINT D$;"NOMONI,O,C"
9 GOTO 1000
100 C8% = 1
110 PRINT D$;"BLOAD CHAIN, A520"
112 CALL 520"CH2"
119 END
120 PRINT D$;"BLOADCHAIN, A520"
122 CALL 520"CH3"
129 END
300 PRINT "---------------------------------------": RETURN
400 IF PEEK( -16384) >128 THEN RETURN
401 R = RND(1):SP% = SP% +1: GOTO 400
1000 DIM SERVICE$(5),RANK$(5,7),SK(40),SK$(36),PH(12),PH$(12,5),PS$(7),CH(6): DIM PS(1)
1003 R = RND( RND(1))
1005 HOME : GOSUB 50100
1006 SK(39) = 18:YE = 0:TE = 1
1007 INVERSE : HTAB 15: PRINT "CHARACTERS": NORMAL : PRINT
1008 PRINT "TO THE PLAYER: FOLLOW ALL PROMPTS ": PRINT "AS THEY APPEAR IN INVERSE PRINT. THE": PRINT "GAME IS SELF EXPLNATORY DURING PLAY."
1010 INVERSE : VTAB 8: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 9: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
1011 NORMAL
1012 VTAB 11: HTAB 6: GOSUB 400: INPUT "";NA$
1013 IF LEN(NA$) >16 THEN 1010
1014 RI = 0
1020 HOME
1021 FOR I = 1 TO 6: GOSUB 50010:CH(I) = R2: NEXT I
1030 GOSUB 50025: GOSUB 63200: GOSUB 50030
1035 GOSUB 52000: GOSUB 52400
1036 FLASH : VTAB 15: PRINT "ACCESSING FILE DATA... PLEASE WAIT": NORMAL : PRINT : PRINT : PRINT ">> INITIAL PRE-ENLISTMENT FILE"
1037 GOTO 100
50000 R1 = INT( RND(1) *6 +1)
50010 R2 = INT( RND(1) *7 +1) + INT( RND(1) *7 +1): IF R2 >12 THEN R2 = 12
50011 RETURN
50025 FOR I = 0 TO 5: READ SE$(I): NEXT I: RETURN
50030 V = 6
50033 FOR I = 1 TO 6: READ R3: IF SS = I AND R2 >R3 THEN V = I -1: GOTO 50040
50035 NEXT I
50040 IF I >5 THEN 50047
50042 FOR J = I TO 5: READ R3: NEXT J
50047 IF V = 6 THEN 50055
50050 GOSUB 50075: RETURN
50055 GOSUB 50061: RETURN
50060 GOSUB 50075: RETURN
50061 RD = INT( RND(1) *5):DR = 1
50062 PRINT "TO: DRAFTEE ";NAME$: PRINT
50063 PRINT "FROM: OFFICE OF MILITARY TRAINING": PRINT
50064 PRINT "SUBJECT: ASSIGNMENT TO SERVICE": PRINT
50065 GOSUB 300: PRINT
50066 PRINT " SINCE YOU EITHER ELECTED TO BE": PRINT "DRAFTED, OR WERE FOUND UNQUALIFIED TO "
50067 PRINT "BE ACCEPTED TO THE SERVICE OF YOUR ": PRINT "CHOICE, YOU ARE IMMEDIATELY TO REPORT ": PRINT "TO THE ";SE$(RD);" TRAINING "
50068 PRINT "FACILITY CLOSEST TO YOUR RESIDENCE"
50069 PRINT : GOSUB 300: PRINT
50070 INVERSE : INPUT "TO CONTINUE HIT ";I$: NORMAL : HOME :V = RD: RETURN
50075 PRINT "TO: ";NAME$;", TRAINEE": PRINT
50076 PRINT "FROM: COMMANDER, ";SE$(V): PRINT " TRAINING FACILITY"
50077 PRINT
50078 PRINT "SUBJECT: ENLISTMENT": GOSUB 300
50079 PRINT "WELCOME TO ";SE$(V): PRINT "THE ";SE$(V);" HAS A PROUD
50080 PRINT "TRADITION, SPANNING MANY CENTEARS. ALL"
50081 PRINT "OF THE TRAINING STAFF FEEL CERTAIN YOU": PRINT "WILL COME TO SHARE IN OUR PROUD ": PRINT "TRADITIONS": PRINT
50082 PRINT "BEFORE BEGINNING TRAINING YOU ARE TO": PRINT "REPORT TO THE MEDICAL FACILITY TO GET"
50083 PRINT "A COMPLETE PHYSICAL AND PSYCHOLOGICAL ": PRINT "EXAMINATION. THE RESULTS OF THIS EXAM": PRINT "WILL SERVE TO BEST DETERMINE YOUR": PRINT "TRAINING NEEDS."
50085 GOSUB 300: PRINT
50095 INVERSE : INPUT "HIT TO GET EXAM RESULTS ";I$: NORMAL : HOME
50096 EN = 1
50099 RETURN
50100 DIM NS%(3,5,5),MB$(15)
50101 REM NEW SKILLS ARRAY (NS%)
50110 FOR I1 = 0 TO 3
50115 FOR I2 = 0 TO 5
50120 FOR I3 = 0 TO 5
50130 READ NS%(I1,I2,I3)
50140 NEXT I3,I2,I1
50200 DATA 31,31,31,31,31,31,32,32,32,32,32,32
50202 DATA 33,33,33,33,33,33
50203 DATA 36,0,0,27,31,23,34,22,22,34,23,22
50204 DATA 35,23,35,35,1,36,12,10,10,9,18,2
50205 DATA 8,8,9,8,8,0,7,23,7,16,31,22
50206 DATA 23,23,23,13,27,23,27,27,27,14,14,27
50207 DATA 17,27,27,21,21,1
50210 DATA 8,10,10,9,4,4,13,13,13,13,13,13
50211 DATA 14,14,14,14,14,14,19,6,6,21,16,0
50212 DATA 17,23,23,17,17,22,21,27,27,20,20,2
50220 DATA 20,20,20,20,20,20,16,6,6,16,16,2
50221 DATA 19,6,6,19,19,14,11,11,11,11,11,11
50222 DATA 15,5,5,15,15,4,3,3,3,3,21,21
50250 DATA GAMBLING, BRIBERY, FORGERY, ADMINISTRATIVE, STREETWISE, LEADERSHIP, TACTICS, FORWARD OBSERVER, VACCUUM SUIT, AIR/RAFT
50252 DATA ALL TER. VEH, COMPUTER, SHIP'S BOAT, MECHANICAL, ELECTRONIC, PILOT, NAVIGATION, GUNNERY, STEWARD, ENGINEER, MEDICAL, JACK O'TRADES, BRAWLING, BLADE COMBAT
50254 DATA GUN COMBAT, STRENGTH, DEXTERITY, ENDURANCE, INTELLIGENCE, EDUCATION, SOCIAL STANDING
50300 FOR I = 0 TO 23: READ SK$(I): NEXT I
50305 READ SK$(27)
50310 FOR I = 31 TO 36: READ SK$(I): NEXT I
50400 DATA 1,2,1,2,1,1,3,4,3,3,4,4,5,5,5,6,6,6,7,7,8,6,5,8
50402 DATA 8,8,9,10,0,11,12,12,13,11,14,11
50410 DATA STARSHIP LOW PASSAGE, ADD 5 TO IQ, ADD 10 TO IQ, ADD 2 TO EDUCATION, ADD 1 TO EDUCATION, ADD 1 TO BLADE SKILLS AND COMBAT SABRE, ADD 1 TO GUN SKILLS AND LASER PISTOL
50412 DATA MEMBERSHIP IN TRAVELLER'S AID SOCIETY, STARSHIP HIGH PASSAGE, STARSHIP MIDDLE PASSAGE, SCOUT STAR CRUISER, NO AWARD MADE AT THIS RANK/TERM LEVEL
50414 DATA ADD 2 TO SOCIAL POSITION, ADD 1 TO SOCIAL POSITION, USE OF MERCHANT STAR TRADER
50500 FOR I2 = 2 TO 7
50505 FOR I1 = 0 TO 5
50510 READ MB(I1,I2)
50520 NEXT I1,I2
50550 FOR I = 0 TO 14: READ MB$(I): NEXT I
50999 RETURN
51000 DATA NAVY, MARINES, ARMY, SCOUTS, MERCHANT MARINES, OTHER SERVICES
51001 DATA 8,8,4,6,6,2
52000 X = X
52001 IF TE = 1 AND DR = 1 THEN PS(1) = 6
52002 FOR A = 0 TO 5:RA$(A,6) = "TERM 1 INDUCTEES UNRANKED"
52003 NEXT A
52004 FOR A = 0 TO 5:RA$(3,A) = "SCOUTS UNRANKED":RA$(5,A) = "OTHER SERVICES UNRANKED": NEXT A
52005 IF EN = 1 AND TE = 1 THEN PS(1) = 7: GOTO 52010
52006 GOTO 52011
52010 FOR A = 0 TO 5:RA$(A,7) = "1ST TERM TRAINEE": NEXT A
52011 RA$(0,0) = "ENSIGN"
52012 RA$(0,1) = "LIEUTENANT":RA$(1,0) = RA$(0,1):RA$(2,0) = RA$(0,1):RA$(0,3) = "LT. COMMANDER":RA$(0,4) = "CAPTAIN":RA$(1,1) = RA$(0,4):RA$(2,1) = RA$(0,4):RA$(0,3) = "COMMANDER":RA$(0,5) = "ADMIRAL"
52013 RA$(1,2) = "FORCE COMNDR.":RA$(1,3) = "LT. COLONEL":RA$(2,3) = RA$(1,3):RA$(1,4) = "COLONEL":RA$(2,4) = RA$(1,4):RA$(1,5) = "BRIGADIER"
52014 RA$(2,2) = "MAJOR":RA$(2,5) = "GENERAL":RA$(4,0) = "4TH OFFICER":RA$(4,1) = "3RD OFFICER":RA$(4,2) = "2ND OFFICER":RA$(4,3) = "1ST OFFICER":RA$(4,4) = "CAPTAIN":RA$(4,5) = "ADMIRAL"
52015 IF CH(1) >6 AND CH(3) >6 THEN PH(1) = 4: GOTO 52024
52016 IF CH(1) >5 AND CH(3) >5 THEN PH(1) = 3: GOTO 52024
52017 IF CH(1) AND CH(3) >3 THEN PH(1) = 2: GOTO 52024
52018 PH(1) = 1
52024 PH(2) = PH(1):PH(3) = PH(1)
52025 FOR I = 4 TO 2 STEP -1
52026 IF CH(2) >I +2 THEN PH(4) = I: GOTO 52029
52027 NEXT I
52028 PH(4) = 1
52029 PH(5) = PH(4):PH(6) = PH(4)
52030 DATA SEVERE HEART PROBLEM, MODERATE HEART PROBLEM, MINOR HEART PROBLEM, NORMAL HEART
52031 DATA SEVERE BREATHING DIFFICULTIES, MODERATE BREATHING PROBLEM, CORRECTABLE PULMONARY PROBLEM, NORMAL LUNGS
52032 DATA SEVERE DEFICIT, MODERATE DEFICIT, MINOR DEFICIT, NORMAL MUSCULATURE
52033 DATA GROSS DAMAGE SHOWN, MODERATE DAMAGE SHOWN, CORRECTABLE DEFICIT, NORMAL
52034 DATA LEGALLY BLIND, SEVERE IMPAIRMENT, CORRECTABLE IMPAIRMENT, 20/20 BOTH EYES
52035 DATA TOTALLY DEAF, 30 DB HEARING LOSS, 10 DB HEARING LOSS, NORMAL
52038 FOR I1 = 1 TO 6: FOR I2 = 1 TO 4: READ PH$(I1,I2): NEXT I2,I1
52100 ADJ = ABS(CH(4) -CH(6)):ACH = CH(5) -CH(4)
52101 AD = -AD:AC = AC -20
52102 IF AD < -8 THEN AD = 6
52103 IF AD < -5 THEN AD = 5
52104 IF AD < -2 THEN AD = 4
52105 IF AD < -1 THEN AD = 3
52106 IF AD <0 THEN AD = 2
52107 IF AD = 0 THEN AD = 1
52110 IF AC < -25 THEN AC = 1
52111 IF AC < -22 THEN AC = 2
52112 IF AC < -20 THEN AC = 3
52113 IF AC < -19 THEN AC = 4
52114 IF AC < -17 THEN AC = 5
52115 IF AC < -14 THEN AC = 6
52116 IF AC <0 THEN AC = 7
52120 SK(34) = (CH(4) *10 +37) + INT( RND(1) *10): IF SK(34) <79 THEN SK(34) = 81
52130 ON AC GOTO 52141,52142,52143,52144,52145,52146,52147
52141 Y = 123444: GOTO 52151
52142 Y = 123444: GOTO 52151
52143 Y = 101221: GOTO 52151
52144 Y = 010162: GOTO 52151
52145 Y = 101226: GOTO 52151
52146 Y = 114267: GOTO 52151
52147 Y = 111676: GOTO 52151
52151 IF AD = 1 GOTO 52153
52152 FOR I = 1 TO AD -1:Y0 = Y/(10 ^(6 -I)):Y0 = INT(Y0):Y0 = Y0 *(10 ^(6 -I)):Y = Y -Y0: NEXT
52153 PS = Y/(10 ^(6 -AD)):PS = PS +.1:PS = INT(PS)
52155 GOSUB 50010: IF R2 = 12 THEN PS = 5
52158 F0 = 1: RETURN
52400 DATA ON ACTIVE DUTY
52402 DATA HONORABLE, DISCHARGE, KILLED WHILE ON DUTY-INS. POD., GOOD OF SERVICE HONORABLE, GOOD OF SERVICE UNDESIREABLE, MEDICAL, PSYCHIATRIC, BAD CONDUCT, DISHONORABLE
52410 FOR I = 0 TO 8: READ DI$(I): NEXT I: RETURN
63200 PRINT "TO: ";NAME$;", UNCLASSIFIED CHILD": PRINT
63205 PRINT "FROM: OFFICE OF MILITARY SELECTION": PRINT
63210 PRINT "SUBJECT: ENLISTMENT/INDUCTION TO EARTH ": PRINT " MILITARY SERVICES": PRINT
63215 GOSUB 300
63220 PRINT " PURSUANT TO THE POWERS VESTED IN": PRINT "OFFICE OF MILITARY SELECTION, YOU ": PRINT "ARE HEARBY DIRECTED TO MAKE YOURSELF"
63225 PRINT "AVAILABLE TO ONE OF THE SIX (6) UNITS": PRINT "OF MILITARY SERVICE LISTED BELOW.": PRINT
63230 PRINT " FAILURE TO COMPLY WITH THIS ORDER": PRINT "WITHIN ONE DECHOUR WILL RESULT IN AN": PRINT "ORDER FOR YOUR ARREST AS A SERVICE ": PRINT "FUGITIVE": PRINT
63231 GOSUB 300: PRINT
63235 INVERSE : INPUT "TO GET CHOICES HIT ";I$: NORMAL : HOME
63240 INVERSE : HTAB 12: PRINT "SERVICE CHOICES": NORMAL : PRINT
63245 PRINT "MAKE ONE OF THE CHOICES LISTED BELOW:"
63270 FOR I = 1 TO 6: PRINT : PRINT " <";I;"> ";SE$(I -1): NEXT I
63301 PRINT
63305 PRINT " <7> I DON'T CARE. DRAFT ME"
63310 PRINT : INVERSE : INPUT "WHICH CHOICE (1-7)? ";SS: NORMAL : HOME
63315 IF SS <1 OR SS >7 THEN GOTO 63240
63320 RETURN
Text found in Space_I_1978_Edu_Ware.do/DEFEND.bas:
1 POKE 32,0: POKE 34,0: POKE 33,40: NORMAL : SPEED= 255: TEXT : HOME
4 REM DEFEND
5 REM VER 2.0.1 12-1-79
6 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
9 GOTO 1000
100 D$ = CHR$(4)
105 PRINT D$;"NOMON C, I, O"
110 PRINT D$;"OPEN";NA$: PRINT D$;"READ";NA$
112 FOR I = 0 TO 40
113 INPUT SK(I)
114 NEXT I
115 INPUT SK$
120 PRINT D$;"CLOSE";NA$
149 RETURN
150 NORMAL
152 PRINT D$;"OPEN";NA$: PRINT D$;"UNLOCK";NA$: PRINT D$;"WRITE";NA$
155 FOR I = 0 TO 40
156 PRINT SK(I)
157 NEXT I
158 PRINT SK$
170 PRINT D$;"CLOSE";NA$: PRINT D$;"LOCK";NA$
199 END
250 NORMAL
251 PRINT D$;"UNLOCK";NA$: PRINT D$;"DELETE";NA$: RETURN
300 PRINT "---------------------------------------": RETURN
301 INVERSE : PRINT " ": NORMAL : RETURN
302 PRINT "=======================================": RETURN
304 INVERSE : INPUT " HIT TO CONTINUE..... ";I$: NORMAL : RETURN
1000 DIM SK(40)
1005 INVERSE : HTAB 16: PRINT "DEFEND!"
1010 INVERSE : VTAB 8: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 9: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
1012 VTAB 11: HTAB 6: INPUT NA$
1015 IF NA$ = "ADVERSARY" THEN RUN
1020 GOSUB 50000: GOSUB 100
1100 GOSUB 3000
2000 GOSUB 20000
2005 FOR I = 0 TO 50 *S: NEXT I
2010 X = PEEK( -16384)
2020 POKE -16368,0
2100 IF X >127 AND F0 = 0 THEN GOSUB 21000
2200 GOSUB 5000
2999 GOTO 2000
3000 PS = INT(10 *(SK(40) - INT(SK(40))))
3010 PP = INT(60 +( RND(1) *40) +4 *SK(36))
3012 P1 = PP
3020 D = 1 +.5 *SK(6)
3030 EP = 15 -SK(5): IF EP <10 THEN EP = 10
3040 NE = 20 -5 *SK(3): IF NE <0 THEN NE = 0
3050 S = 15 +5 *SK(11): IF S >40 THEN S = 40
3060 E0 = INT(400 + RND(1) *(250 *SK(19)))
3070 SK(39) = SK(39) +2
3075 SK(29) = SK(29) +5000
3099 RETURN
4000 R0 = RND(1) *10:F9 = 1
4010 IF R0 <5 THEN 4200
4012 IF R0 <8 THEN 4300
4100 AA = 1
4110 E1 = RND(1) *1000 +200
4199 RETURN
4200 AA = 2
4210 E1 = RND(1) *200 +100
4299 RETURN
4300 AA = 3
4310 E1 = RND(1) *200 +1000
4399 RETURN
5000 T = T +1
5002 FOR I = 0 TO 9:QQ(I) = 0: NEXT I
5005 IF C(4) < >3 THEN E0 = E0 +21 - RND(1) *NE
5010 FOR I = 0 TO 5:E0 = E0 -SH(I): NEXT I
5020 E0 = E0 -EE -W
5090 IF AA = 0 THEN 5200
5100 R0 = INT( RND(1) *3)
5110 FOR I = 0 TO R0
5115 R1 = INT( RND(1) *10):R2 = RND(1) *20: IF R2 >E1/10 THEN R2 = E1/10
5120 E1 = E1 -R2
5125 IF R1 >5 THEN 5150
5135 IF R2 >SH(R1) THEN C(R1) = C(R1) +1
5137 IF R2 >10 *SH(R1) THEN C(R1) = C(R1) +1
5140 IF C(R1) >3 THEN C(R1) = 3
5150 QQ(R1) = 1
5190 IF E1 <1 THEN E1 = 0
5199 NEXT I
5200 R0 = 1
5205 IF W <11 THEN 5220
5210 R0 = INT( RND(1) *2 +1)
5220 Z = 800 -.7 *E1
5250 FOR I = 1 TO R0
5255 R1 = RND(1) *1000
5260 IF R1 PP THEN X = PP
5315 IF X >24 THEN X = 24
5320 PP = PP -X:EV = EV +X
5400 IF C(1) = 3 THEN W = 0
5405 IF C(3) = 3 THEN PP = 0
5410 IF E0 >0 THEN 5500
5420 FOR I = 0 TO 5:SH(I) = 0: NEXT I
5430 EE = 0:W = 0:ST = 3:E0 = 0
5500 GOSUB 8000
5510 IF C(5) = 3 THEN F0 = 1
5520 IF PP = 0 AND EV >0 THEN 6300
5530 IF C(5) = 3 AND C(3) = 3 THEN 6400
5540 IF E1 <3 AND AA >0 THEN 6200
5600 ST = 1: IF AA >0 THEN ST = 2
5610 IF M = 3 THEN 5900
5620 M = 0: IF W >0 THEN M = 1
5630 IF EE >EP THEN M = 2
5700 IF F9 = 0 THEN GOSUB 4000
5800 E0 = INT(E0):E1 = INT(E1)
5900 IF M = 3 AND F0 = 2 THEN 6100
5910 IF M = 3 AND F0 = 1 THEN F0 = 2
5999 RETURN
6100 RD = RND(1)
6105 IF AA = 0 THEN AA = 1
6109 ON AA GOTO 6110,6120,6130
6110 IF RD <.6 THEN RD = 10
6112 SK(36) = SK(36) -3
6119 GOTO 6140
6120 IF RD <.3 THEN RD = 10
6122 SK(36) = SK(36) -2
6129 GOTO 6140
6130 IF RD <.15 THEN RD = 10
6132 SK(36) = SK(36) -1
6140 IF SK(36) <1 THEN SK(36) = 1
6150 IF RD = 10 THEN 7000
6155 TEXT : HOME : NORMAL : PRINT "SURRENDER OF 9.7 COLONY NOW COMPLETE."
6160 ON AA GOTO 6162,6170,6180
6162 R0 = RND(1) *100000 -65000: GOTO 6185
6170 R0 = -SK(29): GOTO 6185
6180 R0 = RND(1) *100000: GOTO 6185
6185 PRINT : PRINT "THE VICTORS GIVE ";NA$: PRINT R0;" GCR FOR COOPERATION."
6187 SK(29) = SK(29) +R0: IF SK(29) <0 THEN SK(29) = 0
6190 PRINT "TOTAL WORTH OF ";NA$;" NOW:": HTAB 10: PRINT SK(29);" GCR. "
6199 GOTO 150
6200 HOME : PRINT "": FOR I = 0 TO 1000: NEXT I
6201 REM VICTORY SEQUENCE
6210 FLASH : PRINT "CONGRATULATIONS!!": NORMAL
6215 SPEED= 100: PRINT : PRINT " YOU HAVE SUCCESSFULLY DEFENDED THE": PRINT "9.7 COLONY FROM A VICIOUS AND UNPROVOKEDATTACK.": PRINT " THE FEDERATION IS CURRENTLY CALCU-": PRINT "LATING A BONUS TO REWARD ";NA$: PRINT "FOR YOUR SUPERIOR SENSE OF DUTY."
6218 SPEED= 255: FOR I = 0 TO 2000: NEXT I
6220 SK(36) = SK(36) +2: IF AA = 2 THEN SK(36) = SK(36) -1
6225 ON AA GOTO 6240,6250,6230
6230 RR = 1 + RND(1) *3
6240 RR = RR +1 + RND(1)
6250 RR = RR +.5 + RND(1)
6255 RR = ( INT(100 *RR))/100
6260 INVERSE : PRINT : PRINT : PRINT : PRINT "CASH BONUS FOR SUPERIOR SERVICE:": NORMAL : HTAB 20: PRINT "GCR ";RR;"M."
6270 SK(29) = SK(29) +RR *(10 ^6)
6271 FOR I = 0 TO 1000: NEXT I
6280 INVERSE : PRINT : PRINT "TOTAL ASSETS OF ";NA$;":": NORMAL : HTAB 20: PRINT "GCR ";SK(29)
6299 GOTO 150
6300 HOME : PRINT "TO: ";NA$: PRINT "FROM: GALLACTIC CONTROL"
6301 REM EVACUATION COMPLETE FOR BETTER OR WORSE
6302 PRINT : PRINT
6304 FOR I = 0 TO 1000: NEXT I: SPEED= 100
6305 ON AA GOTO 6310,6340,6370
6310 PRINT " THE EVACUATION OF THE 9.7 COLONY": PRINT "IS NOW COMPLETE, WITH ";EV: PRINT "RESIDENTS REMOVED TO SAFETY, AND ";P1 -EV: PRINT "KILLED.
6315 PRINT " UNFORTUNATELY, AS THE COLONY HAS": PRINT "BEEN OVERRUN, THE SERVICES OF": PRINT NA$;" ARE NO LONGER REQURIED."
6320 RR = AA *(2 *EV -P1) *10000: IF RR <0 THEN RR = 0
6322 RR = RR +50000:SK(29) = SK(29) +RR
6325 FOR I = 0 TO 1000: NEXT I
6330 INVERSE : PRINT "CASH BONUS FOR SERVICES:": NORMAL : HTAB 20: PRINT "GCR ";RR
6332 FOR I = 0 TO 1000: NEXT I: INVERSE : PRINT "TOTAL ASSETS OF ";NA$;":": HTAB 20: NORMAL : PRINT "GCR ";SK(29)
6335 SPEED= 255: GOTO 150
6340 FLASH : PRINT "YOU FOOL!!": NORMAL
6345 PRINT " YOU HAVE JUST TURNED OVER THE": PRINT "ENTIRE 9.7 COLONY OVER TO A BUNCH OF": PRINT "MOTLEY BARBARIANS!": PRINT : PRINT " BE ADVISED THAT THE FEDERATION NO": PRINT "LONGER HAS ANY NEED FOR YOUR SERVICES."
6350 SPEED= 255:SK(36) = SK(36) -1
6365 SPEED= 255: GOTO 150
6370 SK(36) = SK(36) +1: GOTO 6310
6395 SPEED= 255: GOTO 150
6400 GOSUB 250
6405 TEXT : HOME : PRINT "THE ENTIRE 9.7 COLONY HAS BEEN": PRINT "DESTROYED BY ATTACKERS, LEAVING NO": PRINT "SURVIVORS."
6410 FOR I = 0 TO 1000: NEXT I
6420 PRINT " HAVING FAILED TO MAKE A SUCCESSFUL": PRINT "DEFENSE, ESCAPE OR SURRENDER,": PRINT NA$;" IS NOW DEAD."
6430 FOR I = 0 TO 1000: NEXT I
6440 END
7000 TEXT : GOSUB 250: HOME : FLASH
7005 SPEED= 100
7010 PRINT " IN VIEW OF THE SURRENDER OF COLONY": PRINT "9.7, THE VICTORIOUS ATTACKERS HAVE OR- ": PRINT "DERED THE EXECUTION OF ALL INHBITANTS!!": PRINT " YOU WILL REPORT TO DISINTEGRATION ": PRINT "IMMEDIATELY!!"
7020 FOR I = 0 TO 1500: NEXT I
7030 NORMAL : VTAB 18: PRINT "DEATH OF ";NA$;"NOW RECORDED.
7040 END
8000 SS = 0: FOR I = 0 TO 5:SS = SS +C(I): NEXT I
8005 SS = C(2) +C(5) + RND(1) *5 +SS
8010 SS = SS +P1 -PP -EV
8012 R0 = RND(1) *10
8015 ON PS +1 GOTO 8020,8025,8030,8035,8040,8050,8060,8070
8020 RETURN
8025 IF SS >15 AND R0 >9 THEN 8100
8029 RETURN
8030 IF SS >15 AND R0 >8 THEN 8100
8034 RETURN
8035 IF SS >15 AND R0 >5 THEN 8100
8039 RETURN
8040 IF SS >10 AND R0 >9 THEN 8100
8044 RETURN
8050 IF PP <10 AND SS >10 AND R0 >5 THEN 8100
8055 RETURN
8060 RETURN
8070 RETURN
8100 F0 = 1
8110 HOME : FLASH : PRINT "ATTENTION.": NORMAL : PRINT " ";NA$;" HAS JUST SUFFERED": PRINT "A PSYCHOLOGICAL BREAKDOWN."
8120 PRINT " THOUGH YOU HAVE BEEN RELIEVED FROM": PRINT "YOUR POST, THE COMPUTER WILL CONTINUE": PRINT "TO DISPLAY BATTLE DATA, ONCE YOU HIT": INVERSE : INPUT " ";I$: NORMAL
8199 RETURN
20000 I = I
20100 HOME : INVERSE : HTAB 6: PRINT ">> COMPUTER COLONY CONTROL 9.7 <<"
20101 NORMAL
20105 VTAB 5: GOSUB 300
20108 IF (SH >0 OR WE >0) AND M = 0 THEN M = 1
20109 IF EE >0 AND M < >3 THEN M = 2
20110 FOR I = 0 TO 5
20111 IF QQ(I) = 1 THEN FLASH
20112 VTAB P(I,0): HTAB P(I,1): PRINT A$(I): VTAB P(I,2): HTAB P(I,3): PRINT "CND:";C$(0)
20116 NORMAL
20118 NEXT I
20120 VTAB 21: PRINT ">STATUS:";ST$(ST): PRINT "> MODE:";M$(M): VTAB 21: HTAB 30: PRINT "TIME=";T
20125 VTAB 23: IF F0 = 0 THEN FLASH : PRINT "<< HIT ANY KEY TO EXECUTE A COMMAND. >>"
20130 INVERSE
20132 FOR I = 0 TO 5: IF C(I) = 0 THEN 20138
20134 VTAB P(I,2): HTAB P(I,3): PRINT "CND:";C$(C(I))
20138 NEXT I
20140 NORMAL
20145 SH = 0: FOR I = 0 TO 5:SH = SH +SH(I): NEXT I
20148 IF (SH >0 OR WE >0) AND M = 0 THEN M = 1
20149 IF QQ(1) = 1 THEN FLASH
20150 VTAB 8: HTAB 15: PRINT "WEAPONS:";W;" ": VTAB 9: HTAB 15: PRINT "SHIELDS:";SH;" "
20152 NORMAL
20158 IF QQ(3) = 1 THEN FLASH
20160 VTAB 14: HTAB 7: PRINT "POP:";PP;" "
20161 NORMAL : IF QQ(4) = 1 THEN FLASH
20162 VTAB 16: HTAB 22: PRINT "ENERGY:";E0;" "
20170 NORMAL
20200 IF C(0) = 3 THEN 20300
20210 VTAB 2: FLASH : PRINT AA$(AA)
20220 IF AA < >0 THEN PRINT "EST. ATTACK ENERGY: ";E1 + RND(1) *(50 +(E1/4)) -(E1/8)
20300 NORMAL
20400 FOR I = 6 TO 9
20410 FLASH
20415 IF QQ(I) = 0 THEN 20450
20420 VTAB Q(I,0) -1: HTAB Q(I,1) +2: PRINT "*"
20430 VTAB Q(I,0): HTAB Q(I,1): PRINT ">*+*<"
20440 VTAB Q(I,0) +1: HTAB Q(I,1) +2: PRINT "^"
20450 NEXT I
20460 NORMAL
20500 FOR I1 = 0 TO S *100: NEXT I1
20999 RETURN
21000 HOME : FLASH : HTAB 9: PRINT "--COMMAND SELECTION--"
21001 REM COMMAND MENU AND SUBS
21002 INVERSE : PRINT : PRINT "COLONY DATA: "
21010 NORMAL : PRINT "RESIDENT POPULATION: ";PP: PRINT "ENERGY RESERVES: ";E0: PRINT "ENERGY ALLOCATIONS>>"
21012 PRINT " SENSOR SHIELDS: ";SH(0): PRINT " WEAPONS SHIELDS: ";SH(1): PRINT " STARPORT SHIELD: ";SH(2): PRINT " RESIDENCE SHIELDS: ";SH(3): PRINT " ENERGY BANK SHIELD: ";SH(4): PRINT " CONTROL CENTER SHIELD: ";SH(5)
21014 PRINT " -OFFENSIVE WEAPONS: ";W: PRINT " -EVACUATION: ";EE
21020 INVERSE : PRINT "COMMAND CHOICES: ": NORMAL
21025 PRINT " CHANGE EVACUATION STATUS": PRINT " CHANGE ENERGY TO DEFENSE SHIELDS": PRINT " CHANGE OFFENSIVE WEAPON ENERGIES": PRINT " SURRENDER": PRINT " ATTEMPT PERSONAL ESCAPE": PRINT " NO COMMAND"
21030 X = 0
21035 INVERSE : INPUT "** WHICH CHOICE?";I$
21040 IF I$ = "EV" THEN X = 1
21041 IF I$ = "DS" THEN X = 2
21042 IF I$ = "WE" THEN X = 3
21043 IF I$ = "SX" THEN X = 4
21044 IF I$ = "PE" THEN X = 5
21045 IF I$ = "NN" THEN X = 6
21050 IF X = 0 THEN 21000
21060 ON X GOTO 21100,21200,21300,21400,21500,21600
21100 INPUT "ENERGY ALLOCATION FOR EVACUATION:";EE
21110 IF EE <0 OR EE >E0 THEN 21100
21199 RETURN
21200 FOR I = 0 TO 5
21210 PRINT "DEFENSE SHIELD FOR ";A$(I): PRINT "SECTOR--CURRENT STRENGTH=";SH(I)
21220 INPUT "NEW STRENGTH:";SH(I)
21230 IF SH(I) <0 OR SH(I) >E0 THEN 21210
21240 NEXT I
21299 RETURN
21300 INPUT "NEW OFFENSIVE WEAPONS STRENGTH:";W
21310 IF W <0 OR W >E0 THEN 21300
21320 IF W >70 THEN PRINT ">>FEDERATION WEAPONS HAVE A LIMIT OF 70": GOTO 21300
21399 RETURN
21400 M = 3:F0 = 1
21499 RETURN
21500 R0 = RND(1) *10: NORMAL
21501 REM CHEAP ESCAPE CHOICE
21502 FOR J = 0 TO 10: FOR I = 0 TO 1000: NEXT I: PRINT "": NEXT J
21505 IF R0 >(SK(15) +SK(29)) THEN 21550
21510 HOME : SPEED= 100: PRINT "THE PERSONAL ESCAPE OF ";NA$: PRINT "HAS BEEN SUCCESSFUL. YOU RECEIVE NO": PRINT "BENEFITS, BUT YOU ARE ALIVE AND WELL,": PRINT "STILL READY TO FIGHT ON ANOTHER DAY."
21520 SK(36) = SK(36) -2
21525 IF SK(36) <1 THEN SK(36) = 1
21530 SPEED= 255
21540 GOTO 150
21545 NORMAL : GOSUB 250
21550 FLASH : PRINT "!!!";NA$;"HAS BEEN SHOT": PRINT "DOWN AND DESTROYED WHILE ATTEMPTING TO": PRINT "ESCAPE FROM THE BESIEGED 9.7 COLONY."
21560 FOR I = 0 TO 1000: NEXT I
21570 PRINT : PRINT "DEATH OF ";NA$;" NOW RECORDED."
21575 NORMAL
21580 END
21600 RETURN
50000 DIM P(5,3)
50100 P(0,0) = 6:P(0,1) = 4:P(0,2) = 7:P(0,3) = 4
50102 P(1,0) = 7:P(1,1) = 16:P(1,2) = 10:P(1,3) = 16
50104 P(2,0) = 10:P(2,1) = 28:P(2,2) = 11:P(2,3) = 28
50106 P(3,0) = 13:P(3,1) = 7:P(3,2) = 15:P(3,3) = 8
50108 P(4,0) = 15:P(4,1) = 22:P(4,2) = 17:P(4,3) = 23
50110 P(5,0) = 18:P(5,1) = 1:P(5,2) = 19:P(5,3) = 2
50122 Q(6,0) = 10:Q(6,1) = 3:Q(7,0) = 18:Q(7,1) = 36:Q(8,0) = 3:Q(8,1) = 27:Q(9,0) = 3:Q(9,1) = 2
50200 C$(0) = "GREEN ":C$(1) = "YELLOW":C$(2) = "RED ":C$(3) = "BLUE "
50210 ST$(0) = "NORMAL":ST$(1) = "ALERT":ST$(2) = "*UNDER ATTACK*":ST$(3) = "+DEFENSELESS+"
50220 M$(0) = "PEACE":M$(1) = "DEFENSE":M$(2) = "EVACUATING":M$(3) = "SURRENDER"
50300 A$(0) = "^ SENSORS":A$(1) = "**DEFENSES":A$(2) = "^^STARPORT":A$(3) = "++RESIDENCES":A$(4) = "**ENERGY BANKS":A$(5) = "*^+CONTROL CENTER"
50400 AA$(1) = "=ALIEN ATTACK=":AA$(2) = "=BARBARIC PIRATES ATTACKING=":AA$(3) = "==ENEMY ATTACK=="
50999 RETURN
Text found in Space_I_1978_Edu_Ware.do/EDU-WARE.bas:
0 TEXT : HOME : NORMAL : CLEAR :ZZ = FRE(0): SPEED= 255
1 HIMEM: 32511: LOMEM: 24576
2 PRINT CHR$(4)"BLOADEWS2"
5 REM COPYRIGHT 1981 EDU-WARE SERVICES, INC. ALL RIGHTS RESERVED.
8 HCOLOR= 3: SCALE= 1: ROT= 0: POKE 232,0: POKE 233,86
9 GOTO 1000
10 POKE 38321,128: INVERSE : RETURN
11 POKE 38321,0: NORMAL : RETURN
25 TEXT
26 PR# 0: CALL 1002: RETURN
81 CALL 37891: RETURN
82 CALL 37894: RETURN
83 CALL 37897: RETURN
91 CALL 37891: POKE 55,127: RETURN
92 CALL 37894: POKE 55,127: RETURN
500 IF PEEK( -16384) <128 THEN 500
501 POKE -16368,0: RETURN
1000 HGR : HGR2 : GOSUB 10000
1003 HCOLOR= 3: HPLOT 3,4 TO 276,4 TO 276,188 TO 3,188 TO 3,4
1005 FOR I = 1 TO 15: HCOLOR= INT( RND(1) *3) +1: HPLOT 7,184 TO 133,72: HPLOT 273,184 TO 133,72:P1% = INT( RND(1) *20) +30: POKE 38331,P1%: POKE 38332,P1%: CALL 37900: NEXT I
1008 HCOLOR= 0: HPLOT 7,184 TO 133,72: HPLOT 273,184 TO 133,72: VTAB 9: HTAB 15: PRINT "SPACE"
1010 CALL 37894: VTAB 23: HTAB 15: PRINT "Version 2.5": HCOLOR= 3
1015 FOR I = 1 TO 1500: NEXT I: FOR I = 2 TO 23: VTAB I: HTAB 2: PRINT SPC( 38): POKE 38331,I *2: POKE 38332,I *2: CALL 37900: NEXT I
1018 DIM PR$(6):PR$(1) = "CHARACTERS":PR$(2) = "FIRST BLOOD":PR$(3) = "DEFEND":PR$(4) = "EXPLORE":PR$(5) = "TRADER":PR$(6) = "HIGH FINANCE"
1020 POKE 55,127: VTAB 3: HTAB 15: PRINT "SPACE": CALL 37894: VTAB 7: HTAB 3: PRINT "<1> "PR$(1): FOR I = 2 TO 6: VTAB 8 +I: HTAB 3: PRINT "<"I"> "PR$(I): NEXT I
1025 VTAB 18: HTAB 3: PRINT "<0> End For Now"
1030 HPLOT 38,44 TO 115,44 TO 115,60 TO 38,60 TO 38,44: HPLOT 143,68 TO 269,68 TO 269,156 TO 143,156 TO 143,68
1035 VTAB 10: HTAB 23: PRINT "SPACE scenarios": HTAB 23: PRINT "require the": HTAB 23: PRINT "generation of": HTAB 23: PRINT "characters.": PRINT
1038 HTAB 23: PRINT "If you have no": HTAB 23: PRINT "characters, play": HTAB 23: PRINT "CHARACTERS": HTAB 23: PRINT "first."
1040 POKE 38321,128: FOR I = 21 TO 23: VTAB I: HTAB 3: PRINT SPC( 25): NEXT I: VTAB 22: HTAB 4: PRINT "WHICH ONE (0-6) ?? ";: POKE 38321,0: PRINT " ";
1043 P% = PEEK( -16384): IF P% <128 THEN 1043
1045 POKE -16368,0:P% = P% -176: IF P% <0 OR P% >6 THEN 1043
1048 HTAB 23: PRINT P%: IF NOT P% THEN TEXT : HOME : NEW : END
1049 TEXT
1050 GOSUB 26: PRINT CHR$(4)"RUN"PR$(P%): END
10000 N1% = 1:N2% = 2:N3% = 3:N4% = 34:N5% = 18::N8% = 8: HGR2 : CALL 37894:P1 = 38323: POKE -16300,0
10003 FOR I = 1 TO 50: VTAB N2% + RND(1) *N5%: HTAB N2% + RND(1) *N4%: PRINT ".": NEXT I
10005 POKE 55,127: POKE -16300,0: FOR I = 1 TO 50: VTAB N3% + RND(1) *N5%: HTAB N3% + RND(1) *N4%: POKE P1, INT( RND(1) *N8%): PRINT ".": NEXT I
10008 POKE -16299,0: RETURN
63900 POKE 216,0: GOSUB 25: HTAB 1
63902 FLASH : PRINT "++ ERROR ++"
63904 NORMAL : PRINT "ERR CODE " PEEK(222): PRINT "LINE # " PEEK(218) + PEEK(219) *256
Text found in Space_I_1978_Edu_Ware.do/EXPLORE.bas:
2 POKE 32,0: POKE 34,0: POKE 33,40: NORMAL : SPEED= 255: TEXT : HOME
4 REM EXPLORE
5 REM VER 2.0.1 12-1-79
6 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
9 GOTO 1000
100 D$ = CHR$(4)
110 PRINT D$;"OPEN";NA$: PRINT D$;"READ";NA$
112 FOR I = 0 TO 40
113 INPUT SK(I)
114 NEXT I
115 INPUT SK$
120 PRINT D$;"CLOSE";NA$
149 RETURN
150 NORMAL
152 PRINT D$;"OPEN";NA$: PRINT D$;"UNLOCK";NA$: PRINT D$;"WRITE";NA$
155 FOR I = 0 TO 40
156 PRINT SK(I)
157 NEXT I
158 PRINT SK$
170 PRINT D$;"CLOSE";NA$: PRINT D$;"LOCK";NA$
199 END
250 NORMAL
251 PRINT D$;"UNLOCK";NA$: PRINT D$;"DELETE";NA$: RETURN
300 PRINT "---------------------------------------": RETURN
301 INVERSE : PRINT " ": NORMAL : RETURN
302 PRINT "=======================================": RETURN
304 INVERSE : INPUT " HIT TO CONTINUE..... ";I$: NORMAL : RETURN
400 R0 = ( RND(1) *10) -( RND(1) *SK(SK)): RETURN
1000 DIM SK(40): GOSUB 50000
1005 INVERSE : HTAB 16: PRINT "EXPLORE!"
1010 INVERSE : VTAB 8: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 9: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
1012 VTAB 11: HTAB 6: INPUT NA$
1015 IF NA$ = "ADVERSARY" THEN RUN
1100 GOSUB 100
1150 HOME : FOR I = 0 TO 1000: NEXT I: PRINT ""
1200 GOSUB 3100
1300 GOSUB 2000
1400 GOSUB 3000
1450 HOME : FOR J = 0 TO 10: FOR I = 0 TO 1000: NEXT I: PRINT "": NEXT J
1460 INVERSE : SPEED= 50: PRINT : PRINT "LANDING ON ";PL$(P);" SUCCESSFUL."
1470 FOR I = 0 TO 2000: FLASH : PRINT : PRINT "COMMENCE EXPLORATION!!"
1475 SPEED= 255
1480 FOR I = 0 TO 3000: NEXT I
1500 GOSUB 4000
1999 END
2000 HOME : INVERSE : PRINT ">> WORLD EXPLORATION SELECTION": NORMAL
2010 PRINT : PRINT : PRINT " >CHOICES:"
2020 FOR I = 1 TO 3
2030 PRINT : PRINT " <";I;"> ";PL$(I -1)
2040 NEXT I
2050 PRINT : PRINT : PRINT " <0> NEED MORE INFORMATION."
2060 PRINT : PRINT : INVERSE : INPUT "** WHICH CHOICE (0-3) ?";IP
2065 IF IP <0 OR IP >3 THEN 2060
2070 IF IP = 0 THEN 2100
2075 IP = IP -1
2080 NORMAL :W = PL(IP):P = IP
2099 RETURN
2100 INPUT "**WHICH WOULD YOU LIKE DATA ON (1-3)?";IP:IP = IP -1
2102 IF IP <0 OR IP >2 THEN 2100
2105 HOME : INVERSE : PRINT "KNOWN DATA ON PLANET ";PL$(IP)
2110 FOR I = 1 TO 9
2115 IF IN(I) = 0 THEN 2140
2120 INVERSE : PRINT "->";Q$(I): NORMAL : PRINT " ";T$(I, VAL( MID$ (W$(PL(IP)),I,1)))
2140 NEXT I
2150 GOSUB 304
2199 GOTO 2000
3000 FOR I = 1 TO 9
3020 W(I) = VAL( MID$ (W$(W),I,1))
3040 NEXT I
3099 RETURN
3100 SK(29) = SK(29) +8000:PH = INT(SK(40)/100000)
3110 PS = SK(40) - INT(SK(40))
3112 PS = INT(PS *11)
3120 FU = 250:FO = 50
3125 NORMAL : SPEED= 150
3130 PRINT "TO: ";NA$: PRINT : PRINT "FROM: FEDERATION FRONTIER CONTROL."
3135 PRINT : PRINT : PRINT " YOU ARE HEREBY ASSIGNED THE TASK": PRINT "OF EXPLORING AN UNCIVILIZED PLANET IN": PRINT "THE GALAXY. YOUR SUCCESS WILL DEPEND"
3137 PRINT "ON YOUR ABILITY TO SURVIVE IN AN": PRINT "UNFAMILIAR ENVIRONMENT, AND YOUR SUC-": PRINT "CESS IN GATHERING RARE AND PRECIOUS": PRINT "MINERALS."
3140 SPEED= 255: PRINT : PRINT : PRINT
3150 INVERSE : INPUT "HIT TO CHOOSE A PLANET";I$: NORMAL
3199 RETURN
4000 R0 = 3 - RND(1) *W(2): IF R0 <2.2 THEN GOSUB 5000: GOSUB 304
4100 ON W(5) GOTO 4110,4140,4170
4110 GOSUB 5600: GOSUB 304: GOTO 4200
4140 R0 = RND(1): IF R0 >.6 THEN 4110
4170 R0 = RND(1): IF R0 >.9 THEN 4110
4200 IF W(4) = 3 THEN GOSUB 5300: GOSUB 304
4300 ON W(7) GOTO 4310,4340,4370
4310 GOSUB 5700: GOSUB 304: GOTO 4400
4340 R0 = RND(1): IF R0 >.6 THEN 4310
4370 R0 = RND(1): IF R0 >.9 THEN 4310
4400 IF W(1) = 1 THEN 4500
4410 IF W(1) = 2 THEN 4450
4420 R0 = RND(1): IF R0 <.6 THEN 4450
4430 GOSUB 5200: GOSUB 304: GOTO 4500
4450 R0 = RND(1): IF R0 >.9 THEN 4430
4500 IF W(4) = 1 THEN 4600
4510 IF W(4) = 3 THEN 4550
4520 R0 = RND(1): IF R0 <.4 THEN 4600
4530 GOSUB 5400: GOSUB 304: GOTO 4600
4550 R0 = RND(1): IF R0 >.8 THEN 4530
4600 IF W(8) = 2 THEN 4650
4610 GOSUB 5800: GOSUB 304: GOTO 4700
4650 R0 = RND(1): IF R0 >.6 THEN 4610
4700 IF W(3) <3 THEN 4800
4710 IF W(3) < >4 THEN 4730
4720 GOSUB 5100: GOSUB 304: GOTO 4800
4730 R0 = RND(1): IF R0 >.4 THEN 4720
4800 IF W(6) = 1 THEN 4900
4810 R0 = RND(1): IF R0 <.9 THEN 4900
4820 GOSUB 5500: GOSUB 304
4900 GOSUB 7000: GOTO 4000
5000 HOME : PRINT "": FLASH : PRINT "BAD WEATHER HAS HIT THE PARTY OF": PRINT NA$: NORMAL
5003 FOR I = 0 TO 1000: NEXT I
5005 SK = 16: GOSUB 400: IF R0 <9 THEN 5020
5010 MN = 0: PRINT : PRINT "DUE TO NAVIGATIONAL ERROR, THE PARTY": PRINT "HAS LOST ALL RESOURCES GATHERED SO FAR."
5015 FOR I = 0 TO 1000: NEXT I
5020 SK = 20: GOSUB 400: IF R0 <8 THEN 5030
5025 GOSUB 6000
5030 SK = 21: GOSUB 400: IF R0 <7 THEN 5099
5035 PRINT : PRINT "SUBSTANTIAL PORTION OF FOOD SUPPLIES": PRINT "LOST IN STORM."
5040 FO = FO *( RND(1) *.5 +.5)
5099 RETURN
5100 SK = 7: GOSUB 400: IF R0 <5 THEN RETURN
5110 FLASH : PRINT "** WILD ANIMALS APPROACHING!! **": NORMAL
5115 FOR I = 0 TO 1000: NEXT I
5120 SK = 27: GOSUB 400: IF R0 <5 THEN 5170
5130 FLASH : PRINT : PRINT NA$;" HAS BEEN ATTACKED!!": NORMAL
5135 FOR I = 0 TO 1000: NEXT I
5140 SK = 20: GOSUB 400: IF R0 <7 THEN 5150
5145 GOSUB 6000: RETURN
5150 PRINT "ONLY MINOR WOUNDS INCURRED."
5170 PRINT : PRINT "ANIMALS SUFFICIENTLY NEUTRALIZED.":F0 = F0 +1
5199 RETURN
5200 SK = 8: GOSUB 400: IF R0 <8 THEN RETURN
5210 FLASH : PRINT "";NA$;" HAS HAD A VACCUUM SUIT MISHAP.": FOR I = 0 TO 1000: NEXT
5211 NORMAL
5220 SK = 21: GOSUB 400: IF R0 <5 THEN 5290
5230 SK = 20: GOSUB 400: IF R0 <5 THEN 5290
5240 GOSUB 6000
5290 PRINT "PROBLEMS CORRECTED."
5299 RETURN
5300 SK = 4: GOSUB 400: IF R0 <5 THEN RETURN
5310 FLASH : PRINT "": PRINT "NATIVES APPROACHING WITH ATTACK!!": NORMAL : FOR J = 0 TO 4: FOR I = 0 TO 500: NEXT I: PRINT "": NEXT J
5320 R0 = ( RND(1) *20) -( RND(1) *SK(23)) -( RND(1) *SK(27)) -( RND(1) *SK(22)): IF R0 <10 THEN 5390
5330 FLASH : PRINT : PRINT "SERIOUS FIGHTING PREVAILS!": FOR I = 0 TO 1500: NEXT I: NORMAL
5340 R0 = RND(1): IF R0 <.6 THEN 5390
5350 PRINT NA$;" HAS BEEN WOUNDED":SK = 20: GOSUB 400: IF R0 <.5 THEN GOSUB 6100: RETURN
5390 PRINT "ATTACKERS NEUTRALIZED."
5399 RETURN
5400 HOME : FLASH : PRINT "FRIENDLY NATIVES ON THE HORIZON."
5410 IF PS = 5 THEN 5450
5420 FOR I = 0 TO 2000: NEXT I
5425 A1 = INT(FO/4):A2 = INT(A1 *2.79)
5430 PRINT "THE NATIVES WOULD LIKE TO TRADE ";A2: PRINT "UNITS OF THE PLANETS RESOURCES FOR": PRINT A1;"UNITS OF YOUR FOOD."
5440 FOR I = 0 TO 1000: NEXT I: INVERSE : INPUT "** DO YOU WANT TO TRADE? (Y/N)";I$
5442 IF I$ < >"Y" AND I$ < >"N" THEN 5440
5444 IF I$ = "N" THEN RETURN
5446 FO = FO -A1:MN = MN +A2
5449 RETURN
5450 R0 = RND(1): IF R0 <.6 THEN 5499
5460 HOME : FOR I = 0 TO 1000: SPEED= 100: PRINT NA$;" HAS EXCHANGED FOOD AND RE-": PRINT "SOURCES FOR AN INTIMATE ENCOUNTER WITH": PRINT "THE NATIVES."
5465 PRINT " IT IS SUGGESTED THAT ";NA$: PRINT "BE RETURNED TO HOME PLANET AS SOON AS": PRINT "POSSIBLE.": FOR I = 0 TO 2500: NEXT I
5470 MN = MN/2:FO = FO/1.8
5499 RETURN
5500 IF SK(34) <130 THEN RETURN
5510 R0 = ( RND(1) *5) +( RND(1) *SK(0))
5512 IF R0 <4 THEN RETURN
5515 SPEED= 190
5520 FOR I = 23 TO 1 STEP -1: VTAB I: GOSUB 301: NEXT I: PRINT "": FOR I = 0 TO 2000: NEXT I
5525 SPEED= 100
5530 INVERSE : PRINT "ATTENTION: ";NA$: PRINT " YOU HAVE ENTERED THE DOMAIN OF THE": PRINT "INNER LIGHT."
5540 PRINT : PRINT " HAVING REACHED THIS PLANE OF": PRINT "EXISTENCE, YOU HAVE THE OPPORTUNITY": PRINT "TO CHOOSE ONE OF THE FOLLOWING GIFTS."
5542 PRINT " HOWEVER, YOU SHOULD BE AWARE THAT": PRINT "CHOOSING ONE OF THE WISHES WILL END": PRINT "YOUR STAY ON THIS PLANET.": GOSUB 302
5544 SPEED= 255: GOSUB 304: HOME : INVERSE : PRINT ">> CHOICES:": NORMAL
5546 PRINT " <1> RECEIVE 5 MILLION GCR.": FOR I = 0 TO 1000: NEXT : PRINT : PRINT " <2> BECOME THE STRONGEST CHARACTER IN THE GALAXY.": FOR I = 0 TO 1000: NEXT
5548 PRINT : PRINT " <3> BECOME AN EIGHTEEN-YEAR-OLD WITH": PRINT "PERFECT HEALTH.": FOR I = 0 TO 1500: NEXT I: PRINT : PRINT " <4> GO BACK TO THE PLANET, AND FORGET": PRINT "THE WHOLE THING."
5550 PRINT : PRINT : INVERSE : INPUT "** WHICH CHOICE (1-4)?";IP
5551 NORMAL
5552 ON IP GOTO 5560,5570,5580,5590
5560 SK(29) = SK(29) +5000000: GOTO 150
5570 SK(31) = 13:SK(33) = SK(33) +21: GOTO 150
5580 SK(40) = 444444:SK(39) = 18: GOTO 150
5590 RETURN
5600 HOME : FLASH : PRINT "THE PARTY OF ";NA$;" HAS COME": PRINT "UPON A FOOD SOURCE."
5610 UF = RND(1) *10 +10:EF = RND(1): IF EF <.1 THEN EF = .5
5612 UF = INT(UF +.5):EF = INT(100 *EF)/100
5615 NORMAL : PRINT "FOOD UNITS AVAILABLE: ";UF: PRINT "FOOD OBTAINABLE FROM AN ENERGY UNIT:": PRINT " ";EF: PRINT "UNITS OF FUEL AVAILABLE TO PARTY:": PRINT " ";FU
5620 PRINT : PRINT : INVERSE : INPUT "HOW MUCH FUEL FOR FOOD PRODUCTION?";IP: IF IP <0 OR IP >FU THEN 5620
5625 IF IP *EF >UF THEN IP = UF/EF
5630 FO = INT(FO +IP *EF):FU = INT(FU -IP)
5699 RETURN
5700 HOME : FLASH : PRINT "THE PARTY OF ";NA$;" HAS": PRINT "JUST FOUND A SOURCE OF USABLE FUEL!"
5705 UF = 42 + RND(1) *50 + RND(1) *(10 *SK(19)) + RND(1) *(5 *SK(21))
5707 UF = INT(UF)
5710 NORMAL : PRINT : PRINT "UNITS AVAILABLE: ";UF
5715 FOR I = 0 TO 2000: NEXT I
5720 FU = FU +UF: IF FU <250 THEN RETURN
5730 PRINT : PRINT "** UNFORTUNATELY, THE EXPEDITION CAN": PRINT "ONLY STORE 250 UNITS OF FUEL."
5740 FU = 250
5799 RETURN
5800 HOME : PRINT "": SPEED= 100: FLASH : PRINT "THE PARTY OF ";NA$: PRINT "HAS JUST DISCOVERED A MINERAL FIND OF": PRINT T$(9,W(9));" VALUE."
5810 FOR I = 0 TO 2000: NEXT I
5815 SPEED= 160: NORMAL :
5820 PRINT : PRINT "IN FACT, THIS FIND SEEMS ONLY TO BE": PRINT "LIMITED BY THE AMOUNT OF FUEL THE": PRINT "EXPEDITION HAS TO MINE OUT THE RESOURCE!"
5830 FM = 5 - RND(1) *5 + RND(1) *(.5 *SK(13)) + RND(1) *(.9 *SK(19))
5835 GOSUB 302: FOR I = 0 TO 1500: NEXT I: PRINT "ESTIMATED MINERAL UNITS OBTAINABLE PER": PRINT "UNIT OF FUEL EXPENDED: "; INT(FM +.5)
5840 PRINT "TOTAL EXPEDITION FUEL RESERVES:": HTAB 25: PRINT FU
5845 PRINT "ESTIMATED HOME VALUE OF MINERALS, IN": PRINT "GCR/UNIT: "; INT( RND(1) *(10 ^(1 +W(9))))
5850 FOR I = 0 TO 1500: NEXT I: INVERSE : INPUT "**HOW MUCH ENERGY FOR MINING?";IP: NORMAL : SPEED= 255
5855 IF IP <0 OR IP >FU THEN 5850
5860 MN = INT(MN +IP *FM):FU = FU - INT(IP)
5899 RETURN
6000 FOR I = 0 TO 2000: NEXT : HOME : FOR I = 0 TO 1000: NEXT
6005 PRINT "BIO-SCANNERS HAVE DETECTED DETERIOR-": PRINT "ATION IN THE HEALTH OF ";NA$
6007 FOR I = 0 TO 2000: NEXT I
6010 R0 = RND(1) *150 - RND(1) *SK(39): IF R0 <80 THEN 6040
6020 PRINT : PRINT "--COMPLETE RECOVERY APPARENT!!": RETURN
6040 PH = PH -1
6050 IF PH <1 THEN 6090
6060 IF PH >1 THEN RETURN
6070 FLASH : PRINT "**WARNING**": INVERSE : PRINT "BIO-CONTROL REPORTS THAT ";NA$: PRINT "SHOULD RETURN HOME FOR TREATMENT!!"
6079 RETURN
6090 FOR I = 0 TO 1000: SPEED= 120: PRINT NA$;"'S BIO-SYSTEMS HAVE CEASED."
6100 FOR I = 0 TO 4: FOR J = 0 TO 1000: NEXT J: PRINT "": NEXT I: HOME
6105 NORMAL : GOSUB 250
6110 SPEED= 100: NORMAL : PRINT "REGRETFULLY, ";NA$;" WAS NOT": PRINT "WELL SUITED FOR ";PL$(P)
6120 FOR I = 0 TO 2500: PRINT : PRINT : PRINT : FLASH : PRINT "BIO-SCANNERS NOW READ >> DEATH <<": INVERSE :
6125 FOR I = 0 TO 2500: NEXT I: PRINT : PRINT : PRINT
6130 PRINT : PRINT "WHILE DEATH IS ALWAYS A WASTE, THE FED-": PRINT "ERATION DOES HONOR ";NA$;"'S": PRINT "CONTRIBUTION TO THE GROWTH OF HUMANITY"
6140 PRINT : PRINT : GOSUB 301: PRINT : SPEED= 255: GOSUB 301: END
7000 HOME : INVERSE : PRINT "++EXPEDITION UPDATE++"
7002 SK(39) = SK(39) +1:SK(29) = SK(29) +SK(28)
7005 FO = INT(FO -8 - RND(1) *5): IF FO <0 THEN GOSUB 7100
7010 FU = INT(FU - RND(1) *20): IF FU <0 THEN FU = 0
7020 SPEED= 120
7025 PRINT : PRINT ">> UNITS OF FOOD REMAINING: ";FO: PRINT : PRINT ">> UNITS OF FUEL REMAINING: ";FU: PRINT : GOSUB 301
7030 PRINT : PRINT "++MINERAL UNITS OBTAINED: ";MN
7035 PRINT : PRINT "++LATEST ESTIMATE OF TOTAL VALUE, GCR:": HTAB 25: PRINT INT(MN * RND(1) *(10 ^(W(W) +1)))
7038 PRINT : GOSUB 301
7040 FOR I = 0 TO 2500: NEXT I: INVERSE : PRINT "EXPEDITION CHOICES............. ": NORMAL
7045 PRINT : PRINT " <1> CONTINUE EXPLORATION OF ";PL$(P): PRINT : PRINT " <2> PACK UP, LEAVE, AND TRY TO CASH IN"
7050 INVERSE : INPUT "**WHICH CHOICE (1-2) ?";IP
7054 IF IP = 1 THEN RETURN
7056 IF IP < >2 THEN 7050
7060 FM = 30 + RND(1) *60: IF FM >FU THEN GOSUB 8100: RETURN
7099 GOTO 8000
7100 FLASH : PRINT "OUT OF FOOD."
7102 IF FO < -5 THEN PRINT NA$;" HAS STARVED TO DEATH!": GOTO 7150
7104 FO = 0: RETURN
7150 FOR I = 0 TO 4000: NEXT I: GOTO 6100
8000 FOR J = 0 TO 10: FOR I = 0 TO 700: NEXT I: PRINT "": NEXT J
8005 FLASH : SPEED= 150: PRINT "RETURN JUMP TO HOME PLANET SUCCESSFUL!!"
8010 MM = INT(MN *( RND(1) *8 +2) *(10 ^W(9))):SK(29) = SK(29) +MM
8011 PRINT : INVERSE : PRINT "VALUE OF MINERALS AFTER SALE, GCR: ": NORMAL
8012 IF MM >10 ^6 THEN 8020
8015 HTAB 30: PRINT MM: GOTO 8025
8020 HTAB 25: PRINT INT(100 *(MM/(10 ^6)))/100;" M."
8025 PRINT : PRINT "ACCUMULATED EARNINGS OF ";NA$;":": HTAB 25: PRINT INT(SK(29))
8030 PRINT : PRINT "CURRENT AGE OF ";NA$;": ";SK(39)
8099 GOTO 150
8100 SPEED= 150
8105 FLASH : HOME : PRINT "** TRANSPORT HAS INSUFFICIENT ENERGY **": NORMAL : FOR I = 0 TO 2000
8108 GOSUB 301
8110 PRINT : PRINT "YOU HAVE THE FOLLOWING OPTIONS:"
8115 PRINT : PRINT " <1> CALL FOR RESCUE AND WAIT.": PRINT : PRINT " <2> GO BACK AND SEARCH FOR ADDITIONAL": PRINT "FUEL."
8118 SPEED= 255
8120 PRINT : INVERSE : INPUT "** WHICH CHOICE (1-2) ?";IP
8125 IF IP = 2 THEN RETURN
8128 IF IP < >1 THEN 8120
8130 HOME : FOR I = 0 TO 2000: FLASH : PRINT "==AWAITING RESCUE=="
8135 FOR I = 0 TO 1000: NEXT I
8140 NORMAL : PRINT "FOOD UNITS: ";FO
8150 R0 = RND(1) *10: IF R0 <3 THEN 8190
8160 INVERSE : PRINT : PRINT "NO SIGN OF RESCUE."
8170 FOR I = 0 TO 5000: NEXT I
8175 IF FO < -5 THEN PRINT NA$;"HAS STARVED TO DEATH.": GOTO 6100
8177 FO = INT(FO - RND(1) *6):SK(39) = SK(39) +1
8180 GOTO 8130
8190 PRINT "": FLASH : PRINT "RESCUE SUCCESSFUL!!": FOR I = 0 TO 2000: NEXT I
8199 GOTO 8000
50000 W$(0) = "112211231":W$(1) = "123221122":W$(2) = "231131133":W$(3) = "124311123":W$(4) = "331132321"
50010 Q$(1) = "ATMOSPHERE":Q$(2) = "CLIMATE":Q$(3) = "ANIMAL LIFE":Q$(4) = "NATIVE HUMAN POPULATION":Q$(5) = "HUMAN FOODSTUFFS":Q$(6) = "SUPERNATURAL POWERS":Q$(7) = "USABLE FUEL":Q$(8) = "AVAILABILITY OF RESOURCES"
50012 Q$(9) = "VALUE OF AVAILABLE RESOURCES"
50020 T$(1,1) = "SUPPORTIVE OF LIFE":T$(1,2) = "NO OXYGEN":T$(1,3) = "HARSH AND DANGEROUS"
50022 T$(2,1) = "MILD":T$(2,2) = "SOMETIMES HARSH":T$(2,3) = "NORMALLY HAZARDOUS"
50024 T$(3,1) = "NONE":T$(3,2) = "FEW AND HARMLESS":T$(3,3) = "MANY, SOME DANGEROUS":T$(3,4) = "WILD AND THREATENING"
50026 T$(4,1) = "NONE":T$(4,2) = "PRIMITIVE, FRIENDLY":T$(4,3) = "PRIMITIVE, WARLIKE"
50028 T$(5,1) = "READILY AVAILABLE":T$(5,2) = "ABUNDANT, BUT HIDDEN":T$(5,3) = "SCARCE OR NON-EXISTANT"
50030 FOR I = 1 TO 3:T$(7,I) = T$(5,I): NEXT I
50032 T$(6,1) = "EXISTENCE DOUBTFUL":T$(6,2) = "EXISTENCE POSSIBLE"
50034 T$(8,2) = "THEORETICALLY AVAILABLE":T$(8,3) = "ABUNDANT"
50036 T$(9,1) = "LIMITED":T$(9,2) = "MODERATE TO LARGE":T$(9,3) = "SUBSTANTIAL TO INCREDIBLE"
51000 FOR I = 0 TO 2:L = INT( RND(1) *5 +3)
51010 FOR J = 0 TO L
51015 C = INT( RND(1) *46 +55)
51020 IF C >90 THEN C = C -43: GOTO 51030
51022 IF C <65 THEN C = C -7
51030 PL$(I) = PL$(I) + CHR$(C)
51040 NEXT J: NEXT I
51050 FOR I = 0 TO 2
51055 PL(I) = INT( RND(1) *5)
51060 IF F(PL(I)) = 1 THEN 51055
51065 F(PL(I)) = 1
51070 NEXT I
51100 FOR I = 1 TO 9
51110 R0 = RND(1) *10
51120 IF R0 <5 +SK(11) THEN IN(I) = 1
51130 NEXT I
51999 RETURN
Text found in Space_I_1978_Edu_Ware.do/FIRST BLOOD.bas:
1 POKE 33,40: POKE 34,0: POKE 32,0: HOME : SPEED= 255: NORMAL
2 DIM SK(40),KS(40),BV(7,5),B1$(5),B2$(5),B3$(5),B4$(5),B5$(5),B7$(5),B6$(5)
3 D$ = CHR$(4)
4 REM COPYRIGHT STEVEN W. PEDERSON AND SHERWIN A. STEFFIN 1979. ALL RIGHTS RESERVED.
5 REM FIRST BLOOD
6 REM VER 2.0.1 REV 12-1-79
9 GOTO 1000
14 IF (KS(22) = >1 AND WE(2) = 1 THEN S1 = 1
100 D$ = CHR$(4): PRINT D$;"NOMON,I,O,C": HOME : RETURN
115 FOR J = 1 TO 5: FOR I = 1 TO 20: INPUT BV(J,I): NEXT I: NEXT J
125 PRINT D$;"OPEN";NA$: PRINT D$;"READ";NA$
128 FOR I = 0 TO 40: INPUT SK(I): NEXT I
129 INPUT P$
130 PRINT D$;"CLOSE";NA$: PRINT D$;"LOCK";NA$
135 RETURN
150 PRINT D$;"OPENADVERSARY"
155 PRINT D$;"READADVERSARY"
160 FOR I = 0 TO 40: INPUT KS(I): NEXT I: INPUT P1$: PRINT D$;"CLOSEADVERSARY": RETURN
175 PRINT D$;"OPEN";N1$
180 PRINT D$;"READ";N1$
190 FOR I = 0 TO 40: INPUT KS(I): NEXT I: INPUT P2$: PRINT D$;"CLOSE";N1$: RETURN
195 PRINT D$;"OPEN BATTLE INPUTS": PRINT D$;"READ BATTLE INPUTS"
196 FOR J = 1 TO 7: FOR I = 1 TO 5: INPUT BV(J,I): NEXT I: NEXT J
197 FOR I = 1 TO 5: INPUT B1$(I): NEXT
198 FOR I = 1 TO 5: INPUT B2$(I): NEXT
199 FOR I = 1 TO 5: INPUT B3$(I): NEXT
200 FOR I = 1 TO 5: INPUT B4$(I): NEXT
201 FOR I = 1 TO 5: INPUT B5$(I): NEXT
202 FOR I = 1 TO 5: INPUT B6$(I): NEXT
203 FOR I = 1 TO 5: INPUT B7$(I): NEXT
215 PRINT D$;"CLOSE BATTLE INPUTS": RETURN
220 NORMAL : PRINT D$;"UNLOCK";L$
221 PRINT D$;"DELETE";L$: HOME : PRINT "THE GAME IS NOW FINISHED - WHAT ": PRINT "DO YOU WISH TO DO NEXT?": PRINT : RETURN
225 NORMAL : PRINT D$;"UNLOCK";W$
226 PRINT D$;"OPEN";W$
227 PRINT D$;"WRITE";W$
229 IF W$ = NA$ THEN 235
231 IF W$ = N1$ THEN 245
235 FOR I = 0 TO 40: PRINT SK(I): NEXT I: PRINT PS$: GOTO 250
245 FOR I = 0 TO 40: PRINT KS(I): NEXT I: PRINT PS$
250 PRINT D$;"CLOSE";W$: PRINT D$;"LOCK";W$: RETURN
480 PR(1) = INT( RND(1) *5 +1))
481 PRINT : PRINT : PRINT : PRINT "ADVERSARY HAS CHOSEN HIS WEAPONS AND": PRINT "HIS PROTECTIVE ARMOR. BEWARE -COMBAT IS": PRINT "ABOUT TO BEGIN! ": NORMAL : FOR J = 1 TO 3000: NEXT : HOME
1000 INVERSE : HTAB 15: PRINT "FIRST BLOOD": NORMAL
1010 GOSUB 195: GOSUB 2000
1020 HOME : VTAB 8: PRINT "READY TO ACCEPT BATTLE VARIABLES"
1025 HOME : FOR J = 1 TO 2000: NEXT : FOR I = 1 TO 3: CALL -1050: NEXT : GOSUB 2400
1030 POKE 34,0
1031 GOSUB 3100
1035 GOSUB 3200: GOSUB 3700
1040 GOSUB 4000: GOSUB 5000
1041 SPEED= 255
1050 FOR J = 1 TO 2000: NEXT J: HOME
1060 GOTO 1040
1999 END
2000 HOME : PRINT "OPTIONS": PRINT
2005 PRINT " <1> SOLITARE": PRINT
2010 PRINT " <2> PLAYER-VS-PLAYER"
2011 PRINT
2015 PRINT " <3> PLAYER -VS- 'ADVERSARY'"
2020 VTAB 22: INVERSE : INPUT "WHICH ONE (1-3)?";S0: NORMAL : HOME
2025 IF (S0 <1 OR S0 >3) THEN 2000
2030 IF S0 = 1 THEN GOSUB 2100: GOTO 2034
2031 IF S0 = 2 THEN GOSUB 2200: GOTO 2036
2033 IF S0 = 3 THEN GOSUB 2300: GOTO 2038
2034 GOSUB 2125: GOSUB 2170: GOSUB 2175: GOTO 2099
2036 GOSUB 2125: GOSUB 2270: GOSUB 2175: GOTO 2099
2038 GOSUB 2125: GOSUB 2370
2099 RETURN
2100 HOME : PRINT "PLAYER: SPECIFY THE CHARACTER YOU WISH ": PRINT "TO TEST IN COMBAT:": RETURN
2124 V = 4
2125 INVERSE : VTAB 4: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 5: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
2130 NORMAL
2140 HTAB 5: VTAB 7: INPUT NAME$: HOME
2150 IF LEN(NA$) >16 THEN 2100
2155 GOSUB 100: PRINT "STANDBY FOR TRANSPORT AND REASSEMBLY OF": INVERSE : PRINT : PRINT : PRINT NA$: FOR I = 1 TO 3: CALL -1050: NEXT I: NORMAL
2160 FOR J = 1 TO 1000: NEXT : GOSUB 125
2161 FOR I = 1 TO 3: CALL -1050: NEXT : FOR J = 1 TO 2000: NEXT
2162 VTAB 10
2165 PRINT "SUBJECT WARRIOR ";NA$;" IS": PRINT "NOW REASSEMBLED AND AVAILABLE FOR ": PRINT "ASSIGNMENT OF BATTLE EQUIPMENT": FOR J = 1 TO 2000: NEXT J
2166 : PRINT : RETURN
2170 PRINT "IT IS NOW TIME FOR TRANSPORT AND RE-": PRINT "ASSEMBLY OF THE 'DEFENDER' CHARACTER": FOR I = 1 TO 3: CALL -1050: NEXT I: RETURN
2175 INVERSE : VTAB 17: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 18: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
2177 NORMAL
2178 VTAB 20: HTAB 6: INPUT N1$
2180 IF LEN(N1$) >16 THEN 2176
2181 FOR J = 1 TO 2000: NEXT J: FOR I = 1 TO 3: CALL -1050: NEXT I
2182 PRINT : PRINT "STANDBY FOR TRANSPORT AND REASSEMBLY OF": INVERSE : PRINT : PRINT : PRINT N1$: FOR I = 1 TO 3: CALL -1050: NEXT I: NORMAL
2183 GOSUB 175
2185 PRINT : PRINT "SUBJECT WARRIOR ";N1$;" IS": PRINT "NOW REASSEMBLED AND AVAILABLE FOR ": PRINT "ASSIGNMENT OF BATTLE EQUIPMENT": FOR J = 1 TO 2000: NEXT J
2199 RETURN
2200 HOME : PRINT "PLAYER #1: SPECIFY THE CHARACTER YOU ": PRINT "WISH TO DEPLOY IN COMBAT:": RETURN
2225 INVERSE : VTAB 4: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 5: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
2230 NORMAL
2240 VTAB 7: HTAB 6: INPUT NAME$
2245 HOME
2250 IF LEN(NA$) >16 THEN 2100
2255 GOSUB 100: PRINT "STANDBY FOR TRANSPORT AND REASSEMBLY OF": INVERSE : PRINT : PRINT : PRINT NA$: FOR I = 1 TO 3: CALL -1050: NEXT I: NORMAL
2260 FOR J = 1 TO 1000: NEXT : GOSUB 125
2265 PRINT "SUBJECT WARRIOR ";NA$;" IS": PRINT "NOW REASSEMBLED AND AVAILABLE FOR ": PRINT "ASSIGNMENT OF BATTLE EQUIPMENT": FOR J = 1 TO 2000: NEXT J
2266 : PRINT
2270 HOME : PRINT "PLAYER #2: SPECIFY THE CHARACTER YOU ": PRINT "WISH TO DEPLOY IN COMBAT:": RETURN
2276 INVERSE : VTAB 17: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 18: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
2278 VTAB 20: HTAB 6: INPUT N1$
2280 IF LEN(N1$) >16 THEN 2176
2299 RETURN
2300 HOME : PRINT "PLAYER: SPECIFY THE CHARACTER YOU WISH ": PRINT "TO TEST IN COMBAT:": RETURN
2370 FOR I = 1 TO 3: CALL -1050: NEXT I: PRINT "STANDBY FOR TRANSPORT AND": PRINT "REASSEMBLY OF ADVERSARY": FOR J = 1 TO 2000: NEXT J
2375 GOSUB 100: GOSUB 150: PRINT : PRINT "ADVERSARY READY! ";NA$;" YOU": PRINT "NEED ALL YOUR LIMITED HUMAN SKILLS": PRINT "TO SURVIVE! BE WARNED...": FOR J = 1 TO 4000: NEXT J: HOME : RETURN
2400 PRINT "BATTLE INPUTS FROM ";NA$
2405 POKE 34,1: PRINT "WEAPONS:": FOR I = 1 TO 5: PRINT " <";I;"> ";B1$(I): NEXT
2410 INVERSE : PRINT : INPUT "WHICH ONE (1-5)? ";WE(1): NORMAL : HOME
2411 IF (WE(1) <1 OR WE(1) >5) THEN 2400
2420 PRINT "BODY ARMOR": PRINT : FOR I = 1 TO 5: PRINT " <";I;"> ";B2$(I): NEXT
2424 VTAB 22
2425 INVERSE : PRINT : INPUT "WHICH ONE (1-5)?";AR(1): NORMAL : HOME
2426 IF (AR(1) <1 OR AR(1) >5) THEN 2420
2430 PRINT "TERRAIN": PRINT : FOR I = 1 TO 5: PRINT " <";I;"> ";B3$(I): NEXT
2435 INVERSE : PRINT : INPUT "WHICH ONE (1-5)? ";TE(1): NORMAL : HOME
2436 IF (TE(1) <1 OR TE(1) >5) THEN 2430
2437 POKE 34,0: HOME
2440 IF S0 = 2 THEN 2450
2441 IF S0 = 3 THEN 2475
2442 GOTO 2499
2450 PRINT "BATTLE INPUTS FROM ";N1$
2454 POKE 34,1: PRINT "WEAPONS:": FOR I = 1 TO 5: PRINT " <";I;"> ";B1$(I): NEXT
2455 INVERSE : PRINT : INPUT "WHICH ONE (1-20)?";WE(2): NORMAL : HOME
2456 IF (WE(2) <1 OR WE(2) >20) THEN 2450
2457 PRINT "BODY ARMOR": PRINT : FOR I = 1 TO 5: PRINT " <";I;"> ";B2$(I): NEXT
2458 VTAB 22
2459 INVERSE : PRINT : INPUT "WHICH ONE (1-5)?";AR(2): NORMAL : HOME
2460 IF (AR(2) <1 OR AR(2) >5) THEN 2457
2461 PRINT "TERRAIN": PRINT : FOR I = 1 TO 5: PRINT " <";I;"> ";B3$(I): NEXT
2464 INVERSE : PRINT : INPUT "WHICH ONE (1-5 )?";TE(2): NORMAL : HOME
2465 IF (TE(2) <1 OR TE(2) >5) THEN 2461
2466 POKE 34,0: HOME
2467 GOSUB 3000
2470 GOTO 2499
2475 FOR I = 1 TO 3: CALL -1050: NEXT : FLASH : PRINT "ATTENTION!!": FOR J = 1 TO 2000: NEXT : INVERSE
2476 N1$ = "ADVERSARY"
2481 PRINT : PRINT : PRINT : PRINT "ADVERSARY HAS CHOSEN HIS WEAPONS AND": PRINT "HIS PROTECTIVE ARMOR. BEWARE -COMBAT IS": PRINT "ABOUT TO BEGIN! ": NORMAL : FOR J = 1 TO 3000: NEXT : HOME
2499 RETURN
3000 WE(3) = INT( RND(1) *5 +1)
3001 AR(3) = INT( RND(1) *4 +1)
3002 TE(3) = INT( RND(1) *5 +1)
3003 MO(3) = INT( RND(1) *5 +1)
3004 RN(3) = INT( RND(1) *5 +1)
3005 OF(3) = INT( RND(1) *5 +1)
3006 PR(3) = INT( RND(1) *5 +1)
3099 RETURN
3100 INVERSE : PRINT "BATTLE SELECTION": NORMAL : PRINT
3105 BS = RND(1) *1: IF BS >.5 THEN BS = 1
3106 IF BS < = .5 THEN BS = 0
3109 IF BS = 1 THEN N1 = 1:NA = 0
3110 IF BS = 0 THEN NA = 1:N1 = 0
3199 RETURN
3200 IF NA = 1 AND S0 = 1 THEN GOSUB 3400: GOTO 3225
3210 IF NA = 1 AND S0 = 2 THEN GOSUB 3400: GOTO 3230
3220 IF NA = 1 AND S0 = 3 THEN GOSUB 3400: GOTO 3235
3221 IF N1 = 1 AND S0 = 1 THEN GOSUB 3600: GOTO 3250
3222 IF N1 = 1 AND S0 = 2 THEN GOSUB 3500: GOTO 3255
3223 IF N1 = 1 AND S0 = 3 THEN GOSUB 3000: GOTO 3260
3225 GOSUB 3600: RETURN
3230 GOSUB 3550: RETURN
3235 GOSUB 3000: GOSUB 3600: RETURN
3250 GOSUB 3450: RETURN
3255 GOSUB 3450: RETURN
3260 GOSUB 3450: GOSUB 3600: RETURN
3400 PRINT : PRINT NA$;" IS THE ATTACKER": PRINT
3410 INVERSE : PRINT "SELECT ATTACK MODE": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B6$(I): NEXT
3415 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";OF(1)
3416 HOME : IF (OF(1) <1 OR OF(1) >5) THEN 3400
3420 INVERSE : PRINT "SELECT ATTACK RANGE": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B4$(I): NEXT
3425 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";RN(1)
3426 HOME : IF (RN(1) <1 OR RN(1) >5) THEN 3420
3430 INVERSE : PRINT "SELECT ATTACK SPEED": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B5$(I): NEXT
3435 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";MO(1)
3436 HOME : IF (MO(1) <1 OR MO(1) >5) THEN 3430
3439 NORMAL
3440 PR(1) = INT( RND(1) *5 +1)
3449 RETURN
3450 PRINT : PRINT NA$;" IS THE DEFENDER"
3460 PRINT : INVERSE : PRINT "SELECT DEFENSE MODE": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B7$(I): NEXT
3465 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";PR(1)
3466 HOME : IF (PR(1) <1 OR PR(1) >5) THEN 3450
3470 MO(1) = INT( RND(1) *5 +1)
3475 RN(1) = INT( RND(1) *5 +1)
3480 OF(1) = INT( RND(1) *5 +1)
3498 NORMAL
3499 RETURN
3500 PRINT : PRINT N1$;" IS THE ATTACKER": PRINT
3510 INVERSE : PRINT "SELECT ATTACK MODE": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B6$(I): NEXT
3515 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";OF(2)
3516 HOME : IF (OF(2) <1 OR OF(2) >5) THEN 3500
3520 INVERSE : PRINT "SELECT ATTACK RANGE": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B4$(I): NEXT
3525 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";RN(2)
3526 HOME : IF (RN(2) <1 OR RN(2) >5) THEN 3520
3530 INVERSE : PRINT "SELECT ATTACK SPEED": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B4$(I): NEXT
3535 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";MO(2)
3536 HOME : IF (MO(2) <1 OR MO(2) >5) THEN 3530
3540 PR(2) = INT( RND(1) *5 +1)
3548 NORMAL
3549 RETURN
3550 PRINT : PRINT N1$;" IS THE DEFENDER": PRINT
3560 INVERSE : PRINT "SELECT DEFENSE MODE": PRINT : NORMAL : FOR I = 1 TO 5: PRINT : PRINT "<";I;"> ";B7$(I): NEXT
3565 INVERSE : VTAB 23: INPUT "WHICH ONE (1-5)? ";PR(2)
3566 HOME : IF (PR(2) <1 OR PR(2) >5) THEN 3550
3570 OF(2) = INT( RND(1) *5 +1)
3575 MO(2) = INT( RND(1) *5 +1)
3580 RN(2) = INT( RND(1) *5 +1)
3598 NORMAL
3599 RETURN
3600 FOR I = 1 TO 3: CALL -1050: NEXT : INVERSE : PRINT N1$;" IS READY FOR BATTLE!": NORMAL
3601 PRINT
3605 PR(2) = INT( RND(1) *5 +1)
3610 OF(2) = INT( RND(1) *5 +1)
3615 RN(2) = INT( RND(1) *5 +1)
3620 MO(2) = INT( RND(1) *5 +1)
3625 WE(2) = INT( RND(1) *5 +1)
3630 AR(2) = INT( RND(1) *5 +1)
3635 TE(2) = INT( RND(1) *5 +1)
3649 RETURN
3700 IF S0 = 1 AND NA = 1 THEN GOSUB 10000
3710 IF S0 = 1 AND NA = 0 THEN GOSUB 11000
3720 IF S0 = 2 AND NA = 1 THEN GOSUB 12000
3730 IF S0 = 2 AND NA = 0 THEN GOSUB 13000
3740 IF S0 = 3 AND NA = 1 THEN GOSUB 10000
3750 IF S0 = 3 AND NA = 0 THEN GOSUB 11000
3760 RETURN
4000 FOR J = 1 TO 2000: NEXT J: HOME :TURN = TURN +1
4010 INVERSE : PRINT "BATTLE ROUND #";TU: NORMAL : PRINT
4015 FOR J = 1 TO 2000: NEXT
4020 SPEED= 200
4025 PRINT "...TURN #";TU;" HAS STARTED": PRINT
4030 IF NA = 1 THEN PRINT NA$;" HAS ATTACKED": PRINT
4031 IF NA = 0 THEN PRINT N1$;" HAS ATTACKED": PRINT
4035 FOR J = 1 TO 2000: NEXT J
4040 GOSUB 17000
4045 PRINT "....ATTACK MET WITH RESPONSE": PRINT
4050 FOR J = 1 TO 2000: NEXT J: PRINT "..COMPUTER MONITORING RESULTS": PRINT
4051 PRINT
4999 RETURN
5000 DW = DW +SD:AW = AW +SA
5016 IF (AW <2 AND DW <2) THEN PRINT "INJURY THIS ROUND MINOR TO BOTH": RETURN
5018 IF (NA = 0 AND AW >DW AND AW <3) THEN PRINT NA$;" IS IN BETTER CONDITION ": RETURN
5020 IF (NA = 1 AND AW DW AND AW <3) THEN PRINT N1$;" IS IN BETTER CONDITION ": RETURN
5025 IF (AW >3 AND AW <4 AND DW >3 AND DW <4) THEN PRINT "BOTH COMBATANTS SERIOUSLY INJURED": RETURN
5026 IF (AW >3 AND AW <4 AND AW >DW) THEN PRINT "ATTACKER SERIOUSLY INJURED": RETURN
5028 IF (DW >3 AND DW <4 AND AW 4 AND AW <5) THEN PRINT "ATACKER IS CLOSE TO DEATH"
5032 IF (DW >4 AND DW <5) THEN PRINT "DEFENDER IS CLOSE TO DEATH"
5033 IF AW > = 5 THEN GOSUB 5100
5034 IF DW > = 5 THEN GOSUB 5140
5099 RETURN
5100 W$ = NA$:L$ = N1$
5102 IF NA = 0 THEN 5110
5104 W$ = N1$:L$ = NA$
5110 FOR I = 1 TO 3: CALL -1050: NEXT : FLASH : VTAB 20: PRINT L$;" HAS BEEN KILLED!": NORMAL : PRINT
5111 PRINT W$;" TAKES ALL MONEY AND ": PRINT "POSSESSIONS. ATTACKER'S FILE IS DELETED"
5120 GOTO 5200
5140 W$ = NA$:L$ = N1$
5142 IF NA = 1 THEN 5150
5144 W$ = N1$:L$ = NA$
5150 FOR I = 1 TO 3: CALL -1050: NEXT : FLASH : VTAB 20: PRINT L$;" HAS BEEN KILLED!": NORMAL : PRINT
5151 IF L$ = "ADVERSARY" THEN 5180
5170 PRINT W$;" TAKES ALL MONEY AND ": PRINT "POSSESSIONS. DEFENDERS FILE IS DELETED"
5171 FOR J = 1 TO 2000: NEXT : GOTO 5200
5180 PRINT W$;" TAKES ALL MONEY AND ": PRINT "POSSESSIONS. DEFENDER'S FILE REMAINS, SINCE"
5185 PRINT L$;" IS AUTOMATICALLY": PRINT "RESTORED FOR OTHER BATTLES"
5190 GOTO 5200
5199 RETURN
5200 IF N1$ = W$ THEN KS(29) = KS(29) +SK(29)
5205 IF NA$ = W$ THEN SK(29) = SK(29) +KS(29)
5210 GOSUB 225
5220 INVERSE : IF L$ = "ADVERSARY" THEN PRINT "GAME IS OVER - WHAT'S NEXT?": GOTO 5249
5225 GOSUB 220
5249 NORMAL
5250 PRINT " <1> CONTINUE WITH OTHER GAMES": PRINT
5255 PRINT " <2> END FOR NOW"
5260 VTAB 22: INVERSE : INPUT "WHICH ONE? ";IP
5261 IF IP = 1 THEN 5265
5262 GOTO 1999
5265 PRINT D$;"RUN SPACE"
5270 RETURN
6000 A1 = A1/4: IF A1 = 0 THEN A1 = .2
10000 ON WE(1) GOSUB 10900,10901,10902,10902,10902
10001 REM --SOLITAIRE/ INPUT ATTACKER
10100 GOSUB 16000
10110 VI = INT((SK(40)/100000) +.1)
10115 IV = INT((KS(40)/100000) +.1)
10120 GOSUB 16100
10150 A3 = ((SK(32) -2 *MO(1)) +20)/30
10155 D3 = ((KS(32) -2 *MO(1)) +21)/30
10200 GOSUB 16200: RETURN
10900 A1 = SK(22):D1 = KS(22) +.5: RETURN
10901 A1 = SK(23):D1 = KS(23) +.5: RETURN
10902 A1 = SK(27):D1 = KS(27) +.5: RETURN
11000 ON WE(1) GOSUB 11900,11901,11902,11902,11902
11001 REM --SOLITAIRE/ INPUT DEFENDER
11100 GOSUB 16000
11110 VI = INT((KS(40)/100000) +.1)
11115 IV = INT((SK(40)/100000) +.1)
11120 GOSUB 16100
11150 D3 = ((SK(32) -2 *MO(1)) +20)/30
11155 A3 = ((KS(32) -2 *MO(1)) +21)/30
11200 GOSUB 16200: RETURN
11900 D1 = SK(22):A1 = KS(22) +.5: RETURN
11901 D1 = SK(23):A1 = KS(23) +.5: RETURN
11902 D1 = SK(27):A1 = KS(27) +.5: RETURN
12000 IF WE(1) = 1 THEN A1 = SK(22): GOTO 12010
12001 REM P V. P---PLAYER 1 IS ATTACKER
12004 IF WE(1) = 2 THEN A1 = SK(23): GOTO 12010
12006 A1 = SK(27)
12010 IF WE(2) = 1 THEN D1 = KS(22): GOTO 12020
12012 IF WE(2) = 2 THEN D1 = KS(23): GOTO 12020
12014 D1 = KS(27)
12020 VI = INT((SK(40)/100000) +.1)
12025 IV = INT((KS(40)/100000) +.1)
12130 GOSUB 16100
12150 A3 = ((SK(32) -2 *MO(1)) +20)/30
12155 D3 = ((SK(32) -2 *MO(2)) +21)/30
12200 GOSUB 16200
12210 AD = RND(1) *((AR(1) -WE(2)) -(AR(2) -WE(1)))
12220 GOSUB 16300: RETURN
13000 IF WE(1) = 1 THEN D1 = SK(22): GOTO 13010
13001 REM P V. P---PLAYER 1 IS DEFENDER
13004 IF WE(1) = 2 THEN D1 = SK(23): GOTO 13010
13006 D1 = SK(27)
13010 IF WE(2) = 1 THEN A1 = KS(22): GOTO 13020
13012 IF WE(2) = 2 THEN A1 = KS(23): GOTO 13020
13014 A1 = KS(27)
13020 VI = INT((KS(40)/100000) +.1)
13025 IV = INT((SK(40)/100000) +.1)
13130 GOSUB 16100
13150 A3 = ((KS(32) -2 *MO(2)) +20)/30
13200 GOSUB 16200
13210 AD = - RND(1) *((AR(1) -WE(2)) -(AR(2) -WE(1)))
13220 GOSUB 16350: RETURN
16000 A1 = A1/4: IF A1 = 0 THEN A1 = .2
16001 D1 = D1/4: IF D1 = 0 THEN D1 = .2: RETURN
16100 A2 = (2 *(VI -RN(1)) +12)/10
16125 D2 = (2 *(IV -RN(1)) +12)/10
16130 IF A2 >1 THEN A2 = 1
16140 IF D2 >1 THEN D2 = 1
16199 RETURN
16200 AP = A1 *A2 *A3:DP = D1 *D2 *D3:AD = RND(1) *8 -4.2: RETURN
16300 IF AR(1) >SK(33)/2 THEN AD = AD -1.5
16301 IF AR(2) >KS(33)/2 THEN AD = AD +1.5
16302 IF SK(31) >KS(31) +2 THEN AD = AD -1 +(SK(31) -KS(31))/2
16303 IF KS(31) >SK(31) +2 THEN AD = AD +1 -(KS(31) -SK(31))/2
16304 IF AD >10 THEN AD = 10
16305 IF AD < -10 THEN AD = -10
16349 RETURN
16350 IF AR(1) >SK(33)/2 THEN AD = AD +1.5
16351 IF AR(2) >KS(33)/2 THEN AD = AD -1.5
16352 IF SK(31) >KS(31) +2 THEN AD = AD +1 -(SK(31) +KS(31))/2
16353 IF KS(31) >SK(31) +2 THEN AD = AD -1 +(KS(31) +SK(31))/2
16354 IF AD >10 THEN AD = 10
16355 IF AD < -10 THEN AD = -10
16399 RETURN
17000 R0 = RND(1) *20 -10:R1 = RND(1) *20 -10
17001 SA = DP/5:SD = AP/5:ZZ = 3
17002 IF R0 >AD THEN GOSUB 17100
17004 IF R1
Text found in Space_I_1978_Edu_Ware.do/HELLO.bas:
100 TEXT : HOME
110 PRINT CHR$(4)"RUN SPACE"
120 END
Text found in Space_I_1978_Edu_Ware.do/HIGH FINANCE.bas:
1 POKE 32,0: POKE 34,0: POKE 33,40: NORMAL : SPEED= 255: TEXT : HOME
4 REM HIGH FINANCE
5 REM VER 2.0.1 12-1-79
6 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
9 GOTO 1000
100 D$ = CHR$(4)
105 PRINT D$;"NOMONI,O,C"
110 PRINT D$;"OPEN";NA$: PRINT D$;"READ";NA$
112 FOR I = 0 TO 40
113 INPUT SK(I)
114 NEXT I
115 INPUT SK$
120 PRINT D$;"CLOSE";NA$
149 RETURN
150 NORMAL
152 PRINT D$;"OPEN";NA$: PRINT D$;"UNLOCK";NA$: PRINT D$;"WRITE";NA$
155 FOR I = 0 TO 40
156 PRINT SK(I)
157 NEXT I
158 PRINT SK$
170 PRINT D$;"CLOSE";NA$: PRINT D$;"LOCK";NA$
199 END
250 NORMAL
251 PRINT D$;"UNLOCK";NA$: PRINT D$;"DELETE";NA$: END
300 PRINT "---------------------------------------": RETURN
301 INVERSE : PRINT " ": NORMAL : RETURN
302 PRINT "=======================================": RETURN
304 INVERSE : INPUT " HIT TO CONTINUE..... ";I$: NORMAL : RETURN
1000 DIM SK(40),IN$(10),IN(10,7)
1005 HTAB 14: INVERSE : PRINT "HIGH FINANCE"
1010 INVERSE : VTAB 8: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 9: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
1012 VTAB 11: HTAB 6: INPUT NA$
1020 GOSUB 100: GOSUB 50100: GOSUB 6000
1100 GOSUB 2000
1200 GOSUB 5000
1300 GOSUB 31000: GOSUB 32000: GOSUB 33000
1400 GOSUB 15100
1500 GOTO 1100
1999 END
2000 HOME
2005 GOSUB 301: INVERSE : PRINT "GALLACTICA INVESTMENT SERVICES, UNLTD. ": GOSUB 301
2010 PRINT "YEAR: ";YE;" QUARTER: ";QR
2020 GOSUB 302: PRINT : PRINT " <1> PERSONAL PORTFOLIO MASTER.": PRINT : PRINT " <2> REVIEW INVESTMENT PROSPECTUS.": PRINT : PRINT " <3> LOCK IN INVESTMENTS, AND CONTINUE."
2030 GOSUB 302: INVERSE : INPUT "WHICH CHOICE (1-3) ?";IP: IF IP <1 OR IP >3 THEN 2020
2035 NORMAL
2040 ON IP GOTO 2100,2200,2300
2100 HOME : GOSUB 302: INVERSE : PRINT " ***** MASTER PORTFOLIO/RECORD ***** ": GOSUB 302
2108 NORMAL
2110 PRINT "***INVESTMENT*********SHARES*PRICE*CHG*"
2120 FOR IX = 0 TO 10
2121 VTAB (IX +5): PRINT IN$(IX)
2122 VTAB (IX +5): HTAB 24: PRINT IN(IX,2)
2123 VTAB (IX +5): HTAB 30: PRINT IN(IX,0)
2124 VTAB (IX +5): HTAB 36: PRINT IN(IX,1)
2130 NEXT IX
2133 VTAB 16: GOSUB 302
2135 PRINT "CASH ON HAND, GCR: ";SK(29)/(10 ^6);"M."
2137 PRINT "LOANS PAYABLE, GCR: ";LL/(10 ^6);"M."
2138 PRINT "CALENDAR AGE = ";SK(39)
2139 NW = SK(29) -LL
2140 FOR IX = 0 TO 10:NW = NW +(10 ^6) *IN(IX,0) *IN(IX,2): NEXT IX
2145 PRINT : PRINT "NET TOTAL WORTH, GCR:";NW/(10 ^6);"M."
2150 GOSUB 300: INVERSE : INPUT "ANY TRANSACTIONS TO MAKE (Y/N) ?";I$
2160 NORMAL : IF I$ = "Y" OR I$ = "YES" THEN GOSUB 3000
2199 GOTO 2000
2200 NORMAL : FOR IX = 0 TO 10: PRINT IX;".> ";IN$(IX): NEXT IX
2210 GOSUB 300: INVERSE : PRINT : INPUT "** WHICH PROSPECTUS?";IX
2220 IF IX <0 OR IX >10 THEN 2210
2230 NORMAL : GOSUB 20100: INVERSE : INPUT " ANOTHER ?";I$
2240 IF I$ = "N" OR I$ = "NO" THEN 2000
2250 GOTO 2200
2300 RETURN
3000 HOME : PRINT : PRINT " <1> BUY ADDITIONAL INVESTMENTS.": PRINT : PRINT " <2> SELL INVESTMENTS AT GOING RATE.": PRINT
3010 PRINT " <3> PAYOFF SOME OR ALL OF LOAN(S).": PRINT : FLASH : PRINT " <4> EXIT THE GAME.": INVERSE : PRINT : INVERSE : INPUT "** WHICH CHOICE";IP: NORMAL : IF IP >4 OR IP <0 THEN 30
3020 ON IP GOTO 3100,3200,3300,3400
3100 HOME
3110 FOR IX = 0 TO 10
3115 NORMAL : GOSUB 4000
3120 PRINT "AVAILABLE CASH, GCR: ";SK(29)/(10 ^6);"M."
3130 INVERSE : PRINT "ANY PURCHASES OF ";IN$(IX);"? (Y/N)": GET G$
3140 IF G$ = "N" THEN 3180
3141 IF G$ < >"Y" THEN 3130
3150 PRINT : INPUT "HOW MANY SHARES?";IP
3151 IF IP < > INT(IP) OR IP *IN(IX,0) *(10 ^6) >SK(29) THEN PRINT "SORRY, BUT THAT IS IMPOSSIBLE.": GOTO 3130
3160 IN(IX,2) = IN(IX,2) +IP:SK(29) = SK(29) -IP *(10 ^6) *IN(IX,0)
3170 FLASH : PRINT "TRANSACTION COMPLETE."
3180 NORMAL : NEXT IX
3199 FOR I = 0 TO 1000: NEXT I: RETURN
3200 HOME
3210 FOR IX = 0 TO 10
3220 IF IN(IX,2) = 0 THEN 3250
3225 GOSUB 4000
3230 INVERSE : PRINT "WISH TO SELL ANY? (Y/N)": GET G$: IF G$ = "N" THEN 3250
3232 INPUT "HOW MANY SHARES?";IP
3234 IF IP < > INT(IP) OR IP <0 OR IP >IN(IX,2) THEN PRINT "SORRY, BUT THAT IS IMPOSSIBLE.": GOTO 3250
3240 IN(IX,2) = IN(IX,2) -IP:SK(29) = SK(29) +IN(IX,0) *(10 ^6) *IP
3245 FLASH : PRINT "TRANSACTION COMPLETE."
3250 NORMAL : NEXT IX
3299 FOR I = 0 TO 1000: NEXT I: RETURN
3300 GOSUB 302: PRINT "TOTAL LOANS, GCR: ";LL/(10 ^6);"M.": INPUT "HOW MUCH WILL YOU PAY OFF?";IP
3310 IF IP <0 OR IP *(10 ^6) >SK(29) THEN PRINT "SORRY, BUT THAT IS IMPOSSIBLE!": GOTO 3399
3315 IP = IP *(10 ^6): IF IP >LL THEN IP = LL
3320 LL = LL -IP:SK(29) = SK(29) -IP
3399 FOR I = 0 TO 1000: NEXT I: RETURN
3400 HOME : FLASH : PRINT : PRINT "SELLING ALL SECURITIES."
3410 FOR IX = 0 TO 10:N = IN(IX,2) *IN(IX,0) +N: NEXT IX
3420 SK(29) = SK(29) +N *(10 ^6): NORMAL : PRINT : PRINT "TOTAL CASH,MGCR: ";SK(29)/(10 ^6)
3430 FLASH : PRINT "PAYING OFF ALL LOANS"
3440 FOR I = 0 TO 1000: NEXT I:SK(29) = SK(29) -LL
3450 IF SK(29) <0 THEN SK(29) = 0
3460 PRINT : NORMAL : PRINT "NET CASH, MGCR: ";SK(29)/(10 ^6)
3499 GOTO 150
4000 PRINT IN$(IX);" ";IN(IX,2);" SHARES@";IN(IX,0);"M.": RETURN
5000 R0 = RND(1): IF R0 >.4 THEN RETURN
5003 R0 = RND(1) *3 -2:OZ = 10 +SK(29)/(10 ^6)
5005 OZ = R0 *OZ -LL/(10 ^6)
5010 LL = LL *1.035
5020 IF OZ >0 THEN 5100
5099 RETURN
5100 HOME : PRINT : PRINT "THE GALLACTICA FINANCIAL FAMILY WISHES": PRINT "THE HONOR AND PLEASURE OF MAKING A LOAN": PRINT "TO ";NA$
5105 PRINT : PRINT
5110 PRINT "PREVIOUS OUTSTANDING LOANS, GCR:": HTAB 25: PRINT INT(LL/(10 ^6));"M."
5115 PRINT : PRINT "NEW ADDITIONAL LOAN OFFER, GCR: ": HTAB 25: PRINT OZ;"M.": PRINT "TERMS: INTEREST OF 14% PER ANNUM, COM-": PRINT "POUNDED QUARTERLY. PAYABLE AT WILL OR": PRINT "UPON EXIT FROM THE WORLD OF HIGH FINANCE."
5117 GOSUB 302: INVERSE
5120 PRINT "IN MILLIONS OF GCR, HOW MUCH WOULD YOU": INPUT "LIKE TO BORROW?";IP
5125 IF IP >OZ OR IP <0 THEN PRINT "SORRY, BUT THAT IS IMPOSSIBLE.": GOTO 5199
5150 LL = LL +IP *(10 ^6):SK(29) = SK(29) +IP *(10 ^6)
5155 LP = INT(LP)
5160 IF IP = 0 THEN NORMAL : RETURN
5175 FLASH : PRINT "TRANSACTION FINALIZED AND COMPLETED.": NORMAL
5199 NORMAL : FOR I = 0 TO 2000: NEXT I
6000 FOR IX = 0 TO 10
6010 P = RND(1) *IN(IX,3)
6020 P = ( INT(P *100))/100
6030 IN(IX,0) = P
6040 NEXT IX
6050 YE = 2727 + RND(1) *3000:YE = INT(YE):QR = 1
6099 RETURN
10000 REM FOR NEWS ROUTINES CAL LING / NE IS THE ROUTINE INDEX
10500 ON NE +1 GOSUB 10510,10520,10530,10540,10550,10560,10570,10580,10590,10600,10610
10510 IN(0,5) = IN(0,5) +3:IN(5,5) = IN(5,5) -.2:IN(6,5) = IN(6,5) -2
10519 RETURN
10520 IN(1,5) = IN(1,5) +2:IN(10,5) = IN(10,5) +1
10529 RETURN
10530 IN(0,5) = IN(0,5) -1:IN(2,5) = IN(2,5) +3:IN(3,5) = IN(3,5) +.1:IN(8,5) = IN(8,5) +1
10531 IN(5,5) = IN(5,5) +.1
10539 RETURN
10540 IN(0,5) = IN(0,5) -1:IN(1,5) = IN(1,5) -1:IN(3,5) = IN(3,5) +.5:IN(8,5) = IN(8,5) -2
10549 RETURN
10550 IN(1,5) = IN(1,5) -1:IN(2,5) = IN(2,5) -1:IN(3,5) = IN(3,5) -.7:IN(4,5) = IN(4,5) -.2:IN(8,5) = IN(8,5) +1
10559 RETURN
10560 IN(2,5) = IN(2,5) -1:IN(5,5) = IN(5,5) -.2
10569 RETURN
10570 IN(0,5) = IN(0,5) +1:IN(4,5) = IN(4,5) -.1:IN(6,5) = IN(6,5) +1
10571 IN(5,5) = IN(5,5) +.3
10579 RETURN
10580 IN(0,5) = IN(0,5) -1:IN(2,5) = IN(2,5) -1:IN(7,5) = IN(7,5) -1:IN(8,5) = IN(8,5) +1
10589 RETURN
10590 FOR I = 6 TO 10:IN(I,5) = IN(I,5) -1: NEXT I
10591 IN(6,5) = IN(6,5) -2:IN(9,5) = IN(9,5) -1
10592 RETURN
10600 IN(0,5) = IN(0,5) -1
10601 IN(8,5) = IN(8,5) -1
10602 FOR I = 6 TO 10:IN(I,5) = IN(I,5) +2: NEXT I
10609 RETURN
10610 IN(4,5) = IN(4,5) +.3:IN(6,5) = IN(6,5) +2:IN(10,5) = IN(10,5) -2
10619 RETURN
15100 QR = QR +1: IF QR = 5 THEN YE = YE +1:QR = 1
15105 IF QR = 1 THEN SK(39) = SK(39) +1
15110 FOR IX = 0 TO 10: GOSUB 15900: NEXT IX
15200 REM CALL NEWS ITEM(S)
15210 R0 = INT( RND(1) *4 -1): IF R0 = 3 THEN 15210
15215 IF R0 <1 THEN 15299
15216 HOME
15217 GOSUB 301: INVERSE : PRINT " *** > INTERGALLACTIC NEWS < *** ": GOSUB 301: GOSUB 300
15218 PRINT "YEAR ";YE,"","QTR. ";QR: GOSUB 302
15220 FOR I = 1 TO R0
15225 NE = INT( RND(1) *11): IF NE = 11 THEN 15225
15230 SPEED= 150: PRINT "";NE$(NE)
15235 GOSUB 10500
15240 FOR J = 0 TO 1000: NEXT J
15245 GOSUB 302
15250 NEXT I
15255 GOSUB 301
15260 FOR J = 0 TO 1500: NEXT J
15270 SPEED= 255
15299 RETURN
15900 S = IN(IX,4):P = IN(IX,0):D = IN(IX,1):U = IN(IX,3):B = IN(IX,5)/10
15905 S = 6 -S:R0 = RND(1) *2 -1
15907 D = ((D +2 *B)/3 +(1.8 *R0 *S))/4
15910 IF D < -P/2 THEN D = D/2: GOTO 15910
15915 NP = P +D: IF NP <.1 THEN NP = .1
15920 NP = ( INT(NP *100)/100)
15922 D = NP -P
15925 IN(IX,1) = NP -P:IN(IX,0) = NP
15930 IF NP < = IN(IX,3) THEN RETURN
15935 PRINT "": GOSUB 301: PRINT "*** NOTICE ***": PRINT IN$(IX);" SHARES HAVE SPLIT!!!"
15936 PRINT : PRINT : GOSUB 301
15937 FOR I = 0 TO 2000: NEXT I
15940 IN(IX,2) = INT(2 *(IN(IX,2) +.01))
15945 NP = NP/2:NP = ( INT(NP *100)/100)
15950 IN(IX,0) = NP
15999 RETURN
20000 REM
20001 REM 20100PRINTS PROSPECTUS CALLED IF IX= THE INDEX NUMBER OF INVESTMENT CALLED
20100 HOME : INVERSE : HTAB 2: PRINT ">";IN$(IX): GOSUB 301
20102 PRINT "CONFIDENTIAL INVESTMENT PROFILE": PRINT " SUPERSOLAR INVESTMENT SERVICES": FLASH : HTAB 10: PRINT "** EYES ONLY**": NORMAL
20104 IF IX <6 THEN PRINT "AVAILABILITY: INTERGALLACTIC EXCHANGE": GOTO 20106
20105 PRINT "AVAILABILITY: PRIVATE NON-MARKET SALES"
20106 PRINT "CURRENT PRICE PER SHARE/UNIT:GCR ";IN(IX,0);"M"
20107 SIGN$ = "+"
20108 IF IN(IX,1) <0 THEN SI$ = ""
20110 PRINT "NET INCREASE/DECREASE LAST QTR: ";SI$;IN(IX,1);"M"
20112 GOSUB 300
20114 PRINT "** NATURE OF OPERATIONS:"
20116 ON IX +1 GOTO 20118,20119,20120,20121,20122,20123,20124,20125,20126,20127,20128
20118 PRINT " MANUFACTURE OF MODERN WEAPONS SYS-": PRINT "FOR HUMAN NATIONS, PRIVATE ARMIES, AND": PRINT "STARSHIP OPERATIONS.": GOTO 20130
20119 PRINT " RESEARCH, DEVELOPMENT, LEASING AND": PRINT "SALE OF HIGH-TECHNOLOGY COMPUTING SYS-": PRINT "TEMS.": GOTO 20130
20120 PRINT " MANUFACTURE OF SMALL MILITARY AND": PRINT "ALL VARIETIES OF COMMERCIAL VESSELS.": GOTO 20130
20121 PRINT " GROWTH OF HUMAN FOODSTUFFS USING": PRINT "MODERN TECHNIQUES.": GOTO 20130
20122 PRINT " RENTAL AND LEASING OF INTERSTELLAR": PRINT "DATA AND COMMUNICATIONS LINES.": GOTO 20130
20123 PRINT " ALL CLASSES OF TRANSPORTATION FOR": PRINT "CIVILIAN PASSENGERS, AS WELL AS SHIP-": PRINT "PING FOR HIGH-VALUED CARGO.": GOTO 20130
20124 PRINT " RENTAL AND SELF-SERVING USE OF": PRINT "PRIVATE PARAMILITARY OPERATIONS.": PRINT " STRICTLY CLANDESTINE.": GOTO 20130
20125 PRINT " A FINANCIALLY PRODUCTIVE OPERATION": PRINT "DERIVING ITS INCOME FROM THE CONTROL,": PRINT "DISTRIBUTION AND UNDERWRITING OF THE": PRINT "GALAXY'S OLDEST AND MOST BASIC PROFFES-": PRINT "SION.": GOTO 20130
20126 PRINT " MANUFACTURING, SHIPPING, DISTRIBU-": PRINT "TION AND SALE OF RECREATIONAL SUBSTAN-": PRINT "CES, PLUS THE FINANCING OF 'FAVORABLE'": PRINT "TREATMENT FROM GOVERNMENTAL AUTHORITIES.": GOTO 20130
20127 PRINT " SALE OF INSURANCE PACKAGES, MADE": PRINT "NECESSARY BY THIS ORGANIZATION'S CON-": PRINT "TROL OF VARIOUS SHIPPING AND COMMUNICA-": PRINT "TIONS LINES.": GOTO 20130
20128 PRINT " EMBEZELLMENT, THEFT, FRAUD, AND": PRINT "BLACKMAIL ALL PERPETRATED THROUGH THE": PRINT "UNDERGROUND MANIPULATION OF VARIOUS": PRINT "DATA SOURCES AND MEDIA IN THE GALLAXY.": GOTO 20130
20130 PRINT : GOSUB 302: PRINT : PRINT "FINANCIAL POTENTIAL:"
20132 X = IN(IX,5): IF X <2 THEN RT$ = "LOW": GOTO 20135
20133 IF X <6.5 THEN RT$ = "MEDIUM": GOTO 20135
20134 RT$ = "HIGH"
20135 PRINT " POTENTIAL GAINS: ";RT$
20137 X = IN(IX,4): IF X = 0 OR X = 1 THEN RT$ = "LOW"
20138 IF X = 2 OR X = 3 THEN RT$ = "MEDIUM"
20139 IF X = 4 OR X = 5 THEN RT$ = "HIGH"
20140 PRINT " FINANCIAL RISK: ";RT$
20142 IF IX >5 THEN RT$ = "SUBSTANTIAL": GOTO 20145
20143 RT$ = "SLIGHT"
20145 PRINT "PERSONAL RISK: ";RT$
20150 GOSUB 301: GOSUB 304
20199 RETURN
31000 R0 = RND(1) *100
31004 MB = 1
31005 FOR IX = 6 TO 10
31010 IF IN(IX,2) >0 AND IN(IX,7) >0 THEN MB = MB *IN(IX,7)/10
31020 NEXT IX
31030 IF R0 <94 THEN RETURN
31050 R0 = RND(1): IF R0 ": FLASH : PRINT "*** ATTENTION ***": PRINT : PRINT
31120 NORMAL : PRINT " FINANCIAL WIZARD, ";NA$: PRINT "HAS BEEN KIDNAPPED BY RUTHLESS PLANETARYBARBARIANS.": INVERSE : PRINT : PRINT ">> STAND BY FOR MORE <<"
31125 GOSUB 300: FOR I = 0 TO 5000: NEXT I
31130 HOME : FOR I = 0 TO 3000: NEXT I
31135 SPEED= 150: NORMAL
31140 PRINT "OPTIONS:"
31145 R0 = RND(1):RR = R0 *SK(29)
31150 PRINT : PRINT " <1> PAY THE DEMANDED RANSOM OF": PRINT "GCR: ";RR/(10 ^6);"M."
31160 PRINT : PRINT " <2> HIRE A RESCUE TEAM AT A COST OF": PRINT "GCR: ";((RR/2 +SK(29)/3)/2)/(10 ^6);"M. "
31170 PRINT : PRINT " <3> NOTIFY APPORPIATE AUTHORITIES AND": PRINT "LET THEM TAKE CARE OF IT."
31180 PRINT : PRINT : PRINT : INVERSE : INPUT "WHICH OPTION (1-3)?";IP
31190 NORMAL : SPEED= 255: IF IP <1 OR IP >3 THEN 31140
31200 ON IP GOTO 31300,31400,31500
31300 SK(29) = SK(29) -RR
31310 R0 = RND(1)
31320 IF R0 >.9 THEN GOSUB 39000: GOTO 31399
31330 HOME : FOR I = 0 TO 2000: PRINT "": PRINT : PRINT ">> RANSOM ATTEMPT SUCCESSFUL!!": FOR I = 0 TO 3000: NEXT I
31399 RETURN
31400 R0 = RND(1) *100
31402 SK(29) = SK(29) -((RR/2 +SK(29)/3)/2)
31405 IF SK(39) >100 THEN R0 = R0 +SK(39) -100
31409 R0 = R0 -SK(31) -SK(32) -(SK(34)/20)
31410 IF R0 <60 THEN PRINT "": PRINT : PRINT : FLASH : PRINT "** RESCUE A SUCCESS!!": GOTO 31498
31425 IF R0 >40 THEN GOSUB 39000
31498 FOR I = 0 TO 3000: NEXT I
31499 RETURN
31500 R0 = RND(1) *100
31510 IF SK(21) >2 THEN R0 = R0 -10
31520 R0 = R0 -SK(31) -SK(32) -SK(33) -SK(36)
31530 IF R0 >29 THEN GOSUB 39000: GOTO 31599
31550 R0 = INT( RND(1) *20000)
31555 HOME
31560 FOR I = 0 TO R0: NEXT I
31570 FLASH : PRINT : PRINT "POLICE RESCUE!!"
31575 PRINT : PRINT ""
31580 FOR I = 0 TO 3000: NEXT I
31599 RETURN
32000 RR = .01: FOR K = 6 TO 10
32010 IF IN(K,0) >0 THEN RR = RR +IN(K,6)/100
32020 NEXT K
32030 RR = RR *25:R0 = RND(1) *100
32040 IF RR ": FOR I = 0 TO 3000: NEXT I
32060 FLASH : PRINT : PRINT NA$;" HAS JUST BEEN THE VICTIM": PRINT "OF A CRUEL AND VICIOUS MOB ATTACK!!": FOR I = 0 TO 2000
32065 NORMAL
32070 R0 = RND(1) *100 -(SK(4) *10)
32080 IF R0 >50 THEN 39000
32100 PRINT : PRINT " ATTACK SURVIVED WITH SIGNIFICANT,": PRINT "BUT RECOVERABLE INJURIES. HOWEVER,": PRINT "IT WAS AN EXTREMELY CLOSE CALL!!": FOR I = 0 TO 3000: NEXT I
32110 SK(31) = SK(31) -1:SK(33) = SK(33) -2
32120 IF SK(31) <2 THEN SK(31) = 2
32122 IF SK(33) <2 THEN SK(33) = 2
32150 RETURN
33000 R0 = RND(1) *100
33010 IF SK(39) >100 THEN R0 = R0 +SK(39) -100
33020 IF R0 <90 THEN RETURN
33030 HOME : NORMAL : PRINT "ILL HEALTH STRIKES ";NA$
33040 FOR I = 0 TO 3000: NEXT I
33050 R0 = RND(1): IF R0 >.9 THEN 39000
33060 PRINT : PRINT : FLASH : PRINT "SUCCESSFUL RECOVERY APPARENT!": NORMAL : PRINT "":SK(33) = SK(33) -1: IF SK(33) <2 THEN SK(33) = 4
33999 RETURN
39000 HOME : SPEED= 255
39002 FLASH : PRINT "NOTICE": NORMAL
39004 PRINT " CHARACTER ";NA$;" IS EX-": PRINT "TREMELY CLOSE TO HIS/HER FINAL DEMISE.": FOR I = 0 TO 1000: NEXT I
39006 PRINT : PRINT " ALLOW ME TO INTRODUCE MYSELF......": FOR I = 0 TO 1000: NEXT I
39008 PRINT " I AM THE LORD OF MANY OF YOUR": PRINT "WORLDS": FOR I = 0 TO 1000: NEXT I
39010 PRINT : PRINT " OFTEN, I CAN SAVE A TERMINAL CHAR-": PRINT "ACTER SUCH AS ";NA$: FOR I = 0 TO 1000: NEXT I
39012 PRINT : PRINT " HOWEVER, MY PRICE IS HIGH.": FOR I = 0 TO 1000: NEXT I: PRINT " I WILL CLAIM ALL MONEYS AND INVEST-MENT HOLDINGS OF ";NA$
39014 FOR I = 0 TO 1000: NEXT I: GOSUB 301: INVERSE : PRINT "----NOTE: THERE ARE =NO= GUARANTEES---": PRINT : PRINT : INPUT "INTERESTED (Y/N) ?";I$
39016 IF I$ = "Y" OR I$ = "YES" THEN 39100
39020 HOME : FOR I = 0 TO 3500: NEXT I
39022 FLASH : PRINT : PRINT "NOTICE:": PRINT " CHARACTER ";NA$;"IS DEAD.": PRINT " HIS DATA IS NOW BEING FLUSHED."
39050 GOSUB 250: GOTO 39999
39100 HOME :R0 = RND(1) *100
39110 R0 = R0 -SK(33): IF R0 >70 THEN 39022
39120 FLASH : PRINT : PRINT "TO: ";NA$: PRINT : PRINT " YOU HAVE BEEN SPARED DEATH, BUT ": PRINT "HAVE LOST YOUR POSITION IN THE WORLD OF": PRINT "HIGH FINANCE."
39130 SK(29) = 100 +SK(30): GOSUB 150
39999 END
50100 IN$(0) = "MILKYWY.MUNITIONS":IN$(1) = "STAR DATA SYSTEMS":IN$(2) = "STARSHIPS, UNLTD.":IN$(3) = "HYBRID FOODSTUFFS":IN$(4) = "COSMIC COMM. CORP":IN$(5) = "HYPER TRANSLINERS"
50102 IN$(6) = "RENT-A-FORCE LTD.":IN$(7) = ">+SOCIAL SERVICES":IN$(8) = "^STATIONARY TRIPS":IN$(9) = "*STELLAR SECURITY":IN$(10) = "DATACONTROL SRVCS"
50110 IN(0,3) = 4.5:IN(1,3) = 3.5:IN(2,3) = 4:IN(3,3) = 3:IN(4,3) = 5:IN(5,3) = 3:IN(6,3) = 20:IN(7,3) = 8:IN(8,3) = 9:IN(9,3) = 15:IN(10,3) = 10
50112 IN(0,4) = 2:IN(1,4) = 4:IN(2,4) = 2:IN(3,4) = 3:IN(4,4) = 5:IN(5,4) = 5:IN(6,4) = 0:IN(7,4) = 2:IN(8,4) = 1:IN(9,4) = 3:IN(10,4) = 4
50114 IN(0,5) = 3:IN(1,5) = 2:IN(2,5) = 2:IN(3,5) = .7:IN(4,5) = .3:IN(5,5) = .2:IN(6,5) = 5:IN(7,5) = 4:IN(8,5) = 5:IN(9,5) = 3:IN(10,5) = 4
50116 IN(6,6) = 1:IN(7,6) = 2:IN(8,6) = 1:IN(9,6) = 2:IN(10,6) = 3
50118 IN(6,7) = .2:IN(9,7) = 9:IN(10,7) = 5
50120 NE$(0) = "MAJOR STELLAR WAR IMPENDING--- WEAPONS STOCKPILING BEGINS":NE$(1) = "STAR DATA ANNOUNCES NEW REVOLUTIONARY LIVING TISSUE MEMORY.":NE$(2) = "GALLACTIC TRADE LOOKING FOR RECORD YEAR"
50122 NE$(3) = "MAJOR BLIGHT HITS A-52 STAR SYSTEM":NE$(4) = "GALLACTIC RADIATION LEVELS REACH NEW ALL TIME HIGHS":NE$(5) = "2,000 DEAD IN FIERY TRANSPORT MISJUMP"
50124 NE$(6) = "ALIENS OVERRUN ZINTARIAN COLONY":NE$(7) = "AUTHORITIES DROP ALL SANCTIONS AGAINST VICTIMLESS CRIMES":NE$(8) = "INTERNAL DISPUTE PARALYZES ORGANIZED CRIME"
50126 NE$(9) = "INVESTIGATION FINDS CORRUPTION UNIVERSALAMONGST AUTHORITIES":NE$(10) = "MICROWAVE DATA THIEVES APPREHENDED"
50199 RETURN
Text found in Space_I_1978_Edu_Ware.do/IF.SHAPE.txt:
Offset Hex Data Characters
======= ================================================ =================
$000000 03 4D 08 00 5B 00 B5 00 0A 09 09 09 09 11 1B 1B .M..[.5. ........
$000010 1B 1B 1B 0A 09 29 2D 2D 11 1B 1F 1B 1F 1B 0A 09 .....)-- ........
$000020 29 2D 2D 11 1B 1B 1B 1B 1B 0A 09 29 2D 2D 11 1B )--..... ...)--..
$000030 1F 1B 1F 1B 0A 09 29 09 29 11 1B 1F 1B 1F 1B 0A ......). ).......
$000040 09 29 09 29 11 1B 1F 1B 1F 1B 0A 09 29 09 29 11 .).).... ....).).
$000050 1B 1F 1B 1F 1B 0A 09 29 2D 2D 00 0A 09 2D 2D 2D .......) --...---
$000060 15 3B 1B 1B 1B 1F 0A 29 09 09 09 15 3B 3F 1B 1B .;.....) ....;?..
$000070 1F 0A 29 09 29 09 11 1B 1B 1F 1B 1F 0A 29 09 29 ..).)... .....).)
$000080 09 11 3B 3F 1B 1B 1F 0A 29 09 09 09 15 3B 1B 1B ..;?.... )....;..
$000090 1B 1F 0A 29 09 09 2D 15 1B 1B 1F 1B 1F 0A 29 09 ...)..-. ......).
$0000A0 29 09 11 1B 1B 1F 1B 1F 0A 29 09 29 09 11 1B 1B )....... .).)....
$0000B0 3F 3F 1F 18 00 0A 09 09 09 09 09 29 2D 2D 2D 11 ??...... ...)---.
$0000C0 1B 1F 1B 1B 3B 1B 1B 1B 1B 1B 0A 09 09 09 09 09 ....;... ........
$0000D0 0D 09 09 29 11 1B 3F 1F 1B 3B 1B 1B 3F 3F 1F 0A ...)..?. .;..??..
$0000E0 29 09 29 09 09 0D 09 0D 09 11 1B 1B 3B 1B 3B 1B ).)..... ....;.;.
$0000F0 1B 3F 3F 1F 0A 09 09 09 09 09 0D 09 0D 09 11 1B .??..... ........
$000100 3F 1F 1B 3B 1B 1B 3F 3F 1F 0A 29 09 29 09 09 0D ?..;..?? ..).)...
$000110 09 09 29 11 1B 1F 1B 1B 3B 1B 1B 1F 1B 1F 0A 29 ..)..... ;......)
$000120 09 29 09 09 0D 09 29 2D 11 1B 1B 3B 1B 3B 1B 1B .)....)- ...;.;..
$000130 1F 1B 1F 0A 29 09 29 09 09 0D 09 0D 09 11 1B 1B ....).). ........
$000140 3B 1B 3B 1B 1B 1F 1B 1F 0A 2D 09 29 09 09 0D 09 ;.;..... .-.)....
$000150 0D 09 11 1B 1B 3B 3F 3F 1B 1B 3F 3F 1F 18 00 6C .....;?? ..??...l
$000160 00 00 00 64 00 00 00 00 00 00 64 7C 00 00 00 6C ...d.... ..d|...l
$000170 00 00 00 64 00 00 00 00 00 00 64 7C 00 00 00 6C ...d.... ..d|...l
$000180 00 00 00 80 00 00 00 00 00 00 80 E4 00 00 00 80 ........ ...d....
$000190 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 00 ........ ...d....
$0001A0 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 00 ........ ...d....
$0001B0 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 00 ........ ...d....
$0001C0 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 00 ........ ...d....
$0001D0 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 00 ........ ...d....
$0001E0 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 00 ........ ...d....
$0001F0 00 00 00 00 00 00 00 00 00 00 00 60 00 00 00 00 ........ ...`....
** END **
Text found in Space_I_1978_Edu_Ware.do/IGMO.txt:
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
1.82
27.82
14.91
8
8
8
148
12
5
0
1.4
25
444444.2
Text found in Space_I_1978_Edu_Ware.do/SPACE.bas:
0 TEXT : HOME : NORMAL : CLEAR :ZZ = FRE(0): SPEED= 255
1 HIMEM: 32511: LOMEM: 24576
2 PRINT CHR$(4)"BLOADEWS2"
3 ONERR GOTO 63900
4 PRINT CHR$(4)"BLOADIF.SHAPE"
5 REM COPYRIGHT 1981 EDU-WARE SERVICES, INC. ALL RIGHTS RESERVED.
7 F$ = "EDU-WARE"
8 HCOLOR= 3: SCALE= 1: ROT= 0: POKE 232,0: POKE 233,86
9 GOTO 1000
10 POKE 38321,128: INVERSE : RETURN
11 POKE 38321,0: NORMAL : RETURN
25 TEXT
26 PR# 0: CALL 1002: RETURN
81 CALL 37891: RETURN
82 CALL 37894: RETURN
83 CALL 37897: RETURN
91 CALL 37891: POKE 55,127: RETURN
92 CALL 37894: POKE 55,127: RETURN
250 X% = PEEK(P1%) + PEEK(P1%) - PEEK(P1%) + PEEK(P1%): RETURN
300 GOSUB 250: DRAW N8% AT N1% -N% *N2%,N3% -N% *N4%: POKE P1,N% *3 +30: POKE P2,10: RETURN
1000 HGR : CALL 37891: POKE 38321,0: GOSUB 10000
1010 FOR I = N5% TO N6% STEP -N7%:N% = I: SCALE= N%: HCOLOR= C%(N%): GOSUB 300
1015 NEXT I
1020 HCOLOR= N0%: FOR I = N5% TO N6% STEP -N7%:N% = I: SCALE= N%: GOSUB 300: NEXT I
1030 FOR I = 2 TO 7: HCOLOR= C%(I): SCALE= I: GOSUB 250: DRAW 3 AT I *12 -10,I *4 +21: NEXT I
1035 HCOLOR= 0: FOR I = 2 TO 7: SCALE= I: GOSUB 250: DRAW 3 AT I *12 -10,I *4 +21: NEXT I
1040 GOSUB 2000
1050 FOR I = 30 TO 90 STEP 30: POKE P1,I: POKE P2,I: CALL P3: NEXT I
1060 GOSUB 26: PRINT CHR$(4)"RUN"F$
1999 END
2000 FOR I = 0 TO 6 STEP 3: HCOLOR= C%(I): HPLOT 91 +I,96 +I TO 113 +I,96 +I TO 113 +I,160 +I TO 91 +I,160 +I TO 91 +I,96 +I
2003 HPLOT 91 +I,72 +I TO 113 +I,72 +I TO 113 +I,88 +I TO 91 +I,88 +I TO 91 +I,72 +I
2005 HPLOT 133 +I,48 +I TO 140 +I,40 +I TO 175 +I,40 +I TO 175 +I,64 +I TO 168 +I,64 +I TO 161 +I,72 +I TO 161 +I,96 +I TO 175 +I,96 +I
2008 HPLOT TO 175 +I,121 +I TO 161 +I,121 +I TO 161 +I,160 +I TO 133 +I,160 +I TO 133 +I,48 +I: NEXT I: RETURN
10000 HCOLOR= 1: HPLOT 21,12 TO 3,12 TO 3,188 TO 277,188 TO 277,12 TO 107,12: HCOLOR= 3
10003 DRAW 1 AT 23,1: DRAW 2 AT 32,15
10005 VTAB 2: HTAB 6: PRINT "nteractive": HTAB 7: PRINT "antasies"
10008 DATA 5,4,1,2,5,6,1,2
10010 DIM C%(7): FOR I = 0 TO 7: READ C%(I): NEXT I
10030 N5% = 7:N8% = 3:N7% = 1:N1% = 275:N2% = 35:N3% = 105:N4% = 10:N6% = 2
10040 P1% = -16336
10045 P1 = 38331:P2 = 38332:P3 = 37900: POKE P2,30
10050 POKE 38321,128: FOR I = 3 TO 5: VTAB I: HTAB 29: PRINT SPC( 11): NEXT I: VTAB 4: HTAB 32: PRINT "SPACE": POKE 38321,0
10099 RETURN
63900 POKE 216,0: GOSUB 25: HTAB 1
63902 FLASH : PRINT "++ ERROR ++"
63904 NORMAL : PRINT "ERR CODE " PEEK(222): PRINT "LINE # " PEEK(218) + PEEK(219) *256
Text found in Space_I_1978_Edu_Ware.do/TRADER.bas:
2 POKE 32,0: POKE 34,0: POKE 33,40: NORMAL : SPEED= 255: TEXT : HOME
4 REM TRADER
5 REM VER 2.0.1 12-1-79
6 REM COPYRIGHT 1979 STEVEN W. PEDERSON AND SHERWIN A. STEFFIN. ALL RIGHTS RESERVED.
9 GOTO 1000
100 D$ = CHR$(4)
105 PRINT D$;"NOMON C,I,O"
110 PRINT D$;"OPEN";NA$: PRINT D$;"READ";NA$
112 FOR I = 0 TO 40
113 INPUT SK(I)
114 NEXT I
115 INPUT SK$
120 PRINT D$;"CLOSE";NA$
149 RETURN
150 NORMAL
152 PRINT D$;"OPEN";NA$: PRINT D$;"UNLOCK";NA$: PRINT D$;"WRITE";NA$
155 FOR I = 0 TO 40
156 PRINT SK(I)
157 NEXT I
158 PRINT SK$
170 PRINT D$;"CLOSE";NA$: PRINT D$;"LOCK";NA$
199 END
250 NORMAL
251 PRINT D$;"UNLOCK";NA$: PRINT D$;"DELETE";NA$
252 RETURN
300 PRINT "---------------------------------------": RETURN
301 INVERSE : PRINT " ": NORMAL : RETURN
302 PRINT "=======================================": RETURN
304 INVERSE : INPUT " HIT TO CONTINUE..... ";I$: NORMAL : RETURN
1000 DIM SK(40)
1005 INVERSE : HTAB 17: PRINT "TRADER"
1010 INVERSE : VTAB 8: PRINT "ENTER CHARACTER NAME - 16 CHARACTERS OR": VTAB 9: PRINT "LESS SHOULD BE INPUT ": PRINT : PRINT "NAME: ----------------/STOP///"
1012 VTAB 11: HTAB 6: INPUT NA$
1015 IF NA$ = "ADVERSARY" THEN RUN
1020 GOSUB 50000
1030 GOSUB 100
1200 GOSUB 2000
1300 HOME : GOSUB 3000
1400 GOSUB 4000
1500 GOSUB 5000
1600 GOSUB 6000
1700 GOTO 1300
1999 END
2000 L = LEN(SK$)
2001 REM SHIP ONE WAY OR ANOTHER
2002 FOR I = 1 TO L -2: IF MID$ (SK$,I,3) = "SS-" THEN SH = 1
2004 IF MID$ (SK$,I,3) = "MS-" THEN SH = 2
2006 NEXT I
2008 CR = 7 *SK(36) +10 *SK(0): IF CR >100 THEN CR = 100
2010 IF SH >0 THEN RETURN
2012 HOME : SPEED= 120: PRINT "BEFORE ENTERRING INTERSTELLAR COMMERCE": PRINT "AS A TRADER, YOU MUST AQUIRE A STARSHIP.TWO VARIETIES ARE AVAILABLE."
2014 INVERSE : PRINT : PRINT "SCOUT SHIP": NORMAL : PRINT " A SMALL SHIP CARRING UP TO 10": PRINT "PASSENGERS AND 10 THOUSAND TONS OF": PRINT "CARGO.": PRINT "** PRICE: 1 M GCR."
2016 INVERSE : PRINT : PRINT "MERCHANT VESSEL": NORMAL : PRINT " A FULL-SIZED VESSEL EQUIPPED FOR": PRINT "70 PASSENGERS AND 100 TONS OF CARGO.": PRINT "** PRICE: 8 M GCR."
2018 VTAB 21: INVERSE : INPUT "HIT FOR SHIP PURCHASE TERMS";I$
2019 SPEED= 255
2020 HOME : PRINT "SHIP AQUISITION TERMS": GOSUB 301
2022 PRINT : PRINT "PURCHASER: ";NA$: PRINT "CREDIT RATING:";CR
2024 GOSUB 300: PRINT " SCOUT MERCHANT"
2025 REM HTAB20/HTAB30
2026 IR = (240 -CR)/10
2028 PRINT "PRICE": PRINT "AVAIL. CREDIT": PRINT "INTEREST RATE: ";IR;"%": GOSUB 300: PRINT "MIN. DOWN PAYMENT": GOSUB 302
2030 FOR I = 1 TO 2
2031 VTAB 8
2032 II = 12 +10 *I
2034 HTAB II: PRINT SA(I,10);"M": HTAB II: PRINT SA(I,10) *(CR/100): PRINT : PRINT : HTAB II: PRINT SA(I,10) +.01 -(SA(I,10) *(CR/100));"M GCR"
2036 NEXT I
2040 VTAB 14: PRINT "CASH ON HAND:";SK(29)
2042 PRINT : INVERSE : INPUT "WHICH SHIP (S/M)?";I$: IF I$ < >"S" AND I$ < >"M" THEN 2042
2044 INPUT "DOWN PAYMENT IN MILLIONS OF GCR:";IP
2050 IF I$ = "S" THEN SH = 1
2052 IF I$ = "M" THEN SH = 2
2054 IF IP >SA(SH,10) -(SA(SH,10) *(CR/100)) AND IP TO EXIT THE GAME....": PRINT "ANY OTHER KEY TO CONTINUE.": GET G$
2063 SPEED= 255
2064 IF G$ = "E" THEN END
2066 GOTO 2020
2070 SK(29) = SK(29) -IP *(10 ^6):LP = (SA(SH,10) -IP) *(10 ^6)
2080 FLASH : PRINT "AWAITING SHIP DELIVERY": FOR I = 0 TO 2500: NEXT I: HOME : FOR I = 0 TO 2000: NEXT I
2082 PRINT "YOUR ";SH$(SH);" IS READY!!"
2084 FOR I = 0 TO 2000: NEXT : NORMAL : GOSUB 304
2090 IF SH = 1 THEN SK$ = SK$ +"SS-"
2092 IF SH = 2 THEN SK$ = SK$ +"MS-"
2099 RETURN
3000 FOR I = 0 TO 1
3002 A(I) = G(2 *DR +I,DR,0):A(I) = A(I) + RND(1) *(G(2 *DR +I,DR,1) -A(I))
3004 NEXT I
3006 IF DR = 1 THEN RD = 0: GOTO 3010
3008 RD = 1
3010 FOR I = 0 TO 1
3012 B(I) = G(2 *DR +I,RD,0):B(I) = B(I) + RND(1) *(G(2 *DR +I,RD,1) -B(I))
3014 NEXT I
3016 FOR I = 0 TO 1:M(I) = GW(2 *DR +I):A$(I) = C$(2 *DR +I): NEXT I
3020 FOR I = 0 TO 1
3022 A(I) = INT(A(I) *100)/100
3024 B(I) = INT(B(I))
3026 NEXT I
3100 INVERSE : PRINT P$(DR);" WHOLESALE MARKET": GOSUB 301
3102 POKE 34,2
3110 FOR I = 0 TO 1
3112 V = 8 +I *2
3114 VTAB V: PRINT A$(I)
3116 VTAB V: HTAB 15: PRINT A(I)
3118 VTAB V: HTAB 25: PRINT B(I)
3120 VTAB V: HTAB 35: PRINT M(I)
3122 NEXT I
3130 VTAB 17: PRINT "VESSEL: ";SH$(SH)
3132 VTAB 19: PRINT "WEIGHT CAPACITY: ";SA(SH,0) *1000
3134 VTAB 5: HTAB 14: PRINT P$(DR): VTAB 5: HTAB 24: PRINT P$(RD)
3136 VTAB 4: HTAB 26: PRINT "EST."
3140 : VTAB 6: PRINT "* GOOD ****** PRICE *** PRICE **WT/UNIT"
3142 VTAB 13: GOSUB 302
3150 VTAB 22: INVERSE : INPUT "** HIT TO AQUIRE CARGO.";I$: NORMAL
3160 LL = (SA(SH,10) *(10 ^6) -LP) *(CR/100)
3200 U(0) = 0:U(1) = 0
3202 HOME
3210 FOR I = 0 TO 1:V = 5 +I *2
3212 VTAB V: PRINT A$(I);"/";M(I)
3214 VTAB V: HTAB 16: PRINT U(I)
3216 VTAB V: HTAB 23: PRINT A(I)
3218 VTAB V: HTAB 32: PRINT INT(U(I) *A(I))
3220 NEXT I
3222 : VTAB 9: GOSUB 302
3228 Z = A(0) *U(0) +A(1) *U(1)
3230 VTAB 11: PRINT "CASH-ON-HAND: "; INT(SK(29)): PRINT "CREDIT AVAILABLE: ";LL: PRINT "CURRENT PURCHASES: ";Z
3240 : VTAB 4: PRINT " GOOD/WEIGHT * UNITS PRICE *** COST **"
3242 : VTAB 14: GOSUB 300: PRINT "AVAILABLE FUNDS LEFT: "; INT(SK(29) +LL -Z): GOSUB 302
3244 PRINT "WEIGHT CAPACITY: ";SA(SH,0) *1000: PRINT "WEIGHT OF GOODS :"; INT(U(0) *M(0) +U(1) *M(1))
3246 GOSUB 301
3248 PRINT " <1> CHANGE PURCHASES FROM LIST.": PRINT " <2> LOCK IN TRANSACTIONS AS LISTED.": INVERSE : INPUT "** WHICH CHOICE (1-2)?";IP: NORMAL
3250 IF IP = 2 THEN 3300
3252 IF IP < >1 THEN 3248
3262 POKE 34,19: HOME
3270 VTAB 20: INVERSE : INPUT "** WHICH GOOD (1-2)?";IP: INPUT "** HOW MANY UNITS?";UP
3272 NORMAL : IF (UP < > INT(UP)) OR (UP <0) OR (IP < >1 AND IP < >2) THEN 3262
3274 U(IP -1) = UP
3280 POKE 34,2: GOTO 3202
3300 POKE 34,0
3310 IF (SK(29) +LL -Z) <0 OR (M(0) *U(0) +M(1) *U(1)) >SA(SH,0) *1000 THEN 3350
3312 FOR I = 0 TO 3:C(I) = 0: NEXT I
3314 FOR I = 0 TO 1:C(I +DR *2) = U(I): NEXT I
3320 IF SK(29) >Z THEN SK(29) = SK(29) -Z: GOTO 3400
3325 Z = Z -SK(29):SK(29) = 0:LP = LP +Z
3349 GOTO 3400
3350 FLASH : SPEED= 120: PRINT "FISCAL OR WEIGHT LIMITATION PROHIBIT THE TRANSACTIONS YOU HAVE JUST MADE.": PRINT : PRINT "TRY AGAIN.": GOSUB 304
3352 SPEED= 255: HOME : GOTO 3000
3400 LL = 0: HOME : INVERSE
3402 PRINT P$(DR);" PASSENGER AQUISITION": GOSUB 301
3410 PH = RND(1) *SA(SH,1) + RND(1) *2 *SK(18): IF PH >SA(SH,1) THEN PH = SA(SH,1)
3412 PL = RND(1) *SA(SH,2) + RND(1) *2 *SK(18): IF PL >SA(SH,2) THEN PL = SA(SH,2)
3414 PH = INT(PH):PL = INT(PL)
3420 PRINT : PRINT "HIGH PASSAGES SOLD @ 1000 GCR: ";PH
3422 PRINT : PRINT " LOW PASSAGES SOLD @ 100 GCR: ";PL
3423 GOSUB 300
3424 PRINT : PRINT "REVENUE FROM PASSAGES, GCR: ";(PH *10 +PL) *100
3425 VTAB 12: GOSUB 301: GOSUB 304
3430 SK(29) = SK(29) +(PH *10 +PL) *100
3500 HOME : INVERSE : PRINT P$(DR);" FUELING DOCK": GOSUB 301
3502 Z = 20 + RND(1) *8 -4:Z = ( INT(Z *100))/100
3510 PRINT : PRINT "CURRENT PRICE (GCR/UNIT): ";Z
3512 VTAB 6: GOSUB 301
3520 PRINT : PRINT "AVERAGE/RECOMMENDED FUEL FOR TRIP:"
3522 PRINT : PRINT "SCOUT SHIP : 98 /122"
3524 PRINT "MERCHANT SHIP: 789 /850"
3530 PRINT : GOSUB 301
3540 VTAB 17: PRINT "UNITS OF FUEL IN SHIP: ";FU
3550 VTAB 19: INVERSE : INPUT "** FUEL PURCHASE: ";IP: NORMAL
3552 IF IP <0 OR IP >1000 THEN 3550
3554 FU = INT(FU +IP):SK(29) = SK(29) -IP *Z
3556 IF SK(29) <0 THEN LP = LP -SK(29):SK(29) = 0
3560 GOSUB 302: PRINT : PRINT "FUEL FOR VOYAGE: ";FU
3600 GOSUB 304
3999 RETURN
4000 HOME : FOR I = 0 TO 2000
4001 VTAB 22: FLASH : PRINT "^^^^^^^^^^^^^^": PRINT "ESCAPING ORBIT": NORMAL
4002 FOR I = 0 TO 8: FOR J = 0 TO 1000 -(I *120)
4004 NEXT J
4006 PRINT "": PRINT ""
4008 NEXT I: FOR I = 0 TO 15: PRINT : NEXT I
4010 GOSUB 9000
4015 VTAB 21
4020 INVERSE : PRINT "DESTINATION: ";P$(RD)
4025 FT = 0
4026 FOR I = 0 TO 3:R(I) = RND(1): NEXT I
4030 R(0) = R(0) *40 -20 +SA(SH,3)
4035 IF R(1) 75 AND RND(1) >.1 THEN GOSUB 4500
4130 IF FT = 2 AND II >75 AND RND(1) >.1 THEN GOSUB 4600
4140 IF FT = 3 AND II >75 AND RND(1) >.1 THEN 4700
4150 FU = FU -7
4160 IF FU < = 0 THEN GOSUB 4900
4199 NEXT II
4200 HOME : PRINT "": FLASH : SPEED= 100: PRINT "SUCCESSFUL AQUISITION OF ORBIT AROUND": PRINT P$(RD)
4210 IF DR = 1 THEN DR = 0: GOTO 4220
4215 DR = 1
4220 IF DR = 1 THEN RD = 0: GOTO 4290
4230 RD = 1
4290 VTAB 19
4299 FOR I = 0 TO 3000: GOSUB 304: RETURN
4300 REM 4500=ENCOUNTER;4600=HIJACKING;4700=DESTRUCTION
4400 PRINT "": RETURN
4402 SPEED= 120: FLASH : VTAB 5: PRINT "UNIDENTIFIED VEHICLE APPROACHING": SPEED= 255: NORMAL : RETURN
4404 SPEED= 100: FLASH : VTAB 7: PRINT "UNDER FIRE!!": SPEED= 255: NORMAL : RETURN
4406 SPEED= 100: INVERSE : VTAB 11: PRINT "CREW AND PASSENGERS HELD HOSTAGE........CARGO BEING PIRATED. ": FOR I = 0 TO 3500: NEXT I: SPEED= 255: NORMAL : RETURN
4408 VTAB 20: FLASH : PRINT "*** >SEVERE DAMAGE<": FOR I = 0 TO 5000: NEXT I: HOME : SPEED= 100: VTAB 10: PRINT "SHIP DESTROYED!!!!!": SPEED= 255: NORMAL : RETURN
4500 GOSUB 4400: GOSUB 4402: FOR I = 0 TO 2000: NEXT I: GOSUB 9000:FT = 0: RETURN
4600 GOSUB 4400: GOSUB 4402: GOSUB 4404: FOR I = 0 TO 2500: NEXT I: GOSUB 9000: GOSUB 4406
4610 FOR I = 0 TO 3:C(I) = 0: NEXT I
4699 RETURN
4700 GOSUB 4400: GOSUB 4402: GOSUB 4404: FOR I = 0 TO 2000: NEXT I: GOSUB 4400: GOSUB 4408
4710 IF SK(9) = 0 AND SK(12) = 0 THEN 4750
4715 FOR I = 0 TO 2000: NEXT I: HOME : FOR I = 0 TO 3000: NEXT I
4720 SPEED= 100: NORMAL : PRINT NA$;" HAS SUCCESSFULLY ESCAPED FROM": PRINT "HIS DISINTEGRATED SHIP...": PRINT " BUT HAS SUFFERED TREMENDOUS FINANCIAL": PRINT "AND PHYSICAL CONSEQUENCES FROM ITS": PRINT "DEMISE."
4725 SK(40) = SK(40) -111111:SK(29) = SK(29) -LP: IF SK(29) <0 THEN SK(29) = 0
4730 GOTO 150
4750 GOSUB 250
4755 GOSUB 4400: PRINT "HAVING NO SKILLS IN AIR/RAFT OR SHIP'S": PRINT "BOAT, ";NA$;" FAILED TO ESCAPE": PRINT "THE INFERNO THAT WAS ONCE A SHIP."
4760 FOR I = 0 TO 2000: NEXT I
4770 FLASH : SPEED= 50: PRINT "FEDERATION AUTHORITIES EXTEND THEIR CONDOLENCES."
4799 END
4900 GOSUB 9000: SPEED= 100: PRINT "OUT OF FUEL."
4910 SPEED= 255
4920 FOR I = 0 TO 5000: NEXT I
4930 HOME
4940 FOR I = 0 TO 5000: NEXT I
4950 GOSUB 4600
4960 SK(29) = SK(29) = 100000
4970 FU = 800
4999 RETURN
5000 FOR I = 0 TO 2000: HOME
5010 SPEED= 120: FLASH : PRINT "GOODS NOW BEING SOLD THROUGH THE": PRINT P$(DR);" COMMODITY EXCHANGE."
5020 NORMAL : SPEED= 255
5030 Z = 0
5040 FOR I = 0 TO 3:R(I) = G(I,DR,0):R(I) = R(I) + RND(1) *(G(I,DR,1) -R(I)):R(I) = ( INT(R(I) *100))/100: NEXT I
5050 FOR I = 0 TO 3:Z = Z +C(I) *R(I): NEXT I
5100 VTAB 8: PRINT "PROCEEDS FROM SALE, GCR: "; INT(Z)
5110 VTAB 10: PRINT "COST OF GOODS: ";A(0) *U(0) +A(1) *U(1)
5120 PRINT : GOSUB 300: PRINT "RETURN THIS TRIP.......";Z -(A(0) *U(0) +A(1) *U(1))
5130 PRINT : PRINT : GOSUB 301
5140 PRINT : GOSUB 304
5999 RETURN
6000 HOME
6010 INVERSE : PRINT "FINANCIAL STATUS": GOSUB 301
6020 A = (10 -SK(3)) *.11 *SA(SH,4): IF A >NET CASH ON HAND:": GOSUB 302
6104 VTAB 10: PRINT "INTEREST:"
6106 VTAB 12: PRINT ">>TOTAL LOANS PAYABLE:"
6108 VTAB 14: GOSUB 300: PRINT ">>> NET WORTH:": GOSUB 301
6110 VTAB 4: HTAB 20: PRINT A
6112 VTAB 6: HTAB 30: PRINT SK(29)
6114 VTAB 10: HTAB 20: PRINT C
6116 VTAB 12: HTAB 30: PRINT LP
6118 VTAB 15: HTAB 30: PRINT D
6200 POKE 34,16: HOME
6210 INVERSE : PRINT "OPTIONS:": NORMAL
6212 PRINT " <1> PAYOFF SOME OUTSTANDING LOANS.": PRINT " <2> GO ONTO ANOTHER VOYAGE.": PRINT " <3> EXIT GAME (PAY LOANS, KEEP SHIP)"
6220 INVERSE : VTAB 22: INPUT "** WHICH CHOICE (1-3) ?";IP: NORMAL
6222 IF IP <1 OR IP >3 THEN 6200
6230 ON IP GOTO 6300,6400,6500
6300 HOME
6302 PRINT "INTEREST RATE: ";IR;"%"
6310 PRINT : INVERSE : INPUT "** PAYMENT: ";IP: NORMAL
6320 IF IP >LP OR IP <0 THEN 6300
6330 IP = INT(IP):LP = LP -IP:SK(29) = SK(29) -IP
6335 IF SK(29) <0 THEN 8001
6399 GOTO 6200
6400 Q = Q +1: IF Q = 4 THEN SK(39) = SK(39) +1:Q = 0
6402 PRINT : FLASH : PRINT "EST. LENGTH OF TRIP = 3 EARTH MONTHS."
6410 FOR I = 0 TO 2000: NEXT I: PRINT "": FOR I = 0 TO 2000: NEXT I
6499 POKE 34,0: RETURN
6500 IF SK(29) > OPTIONS:"
6620 PRINT : NORMAL : PRINT " <1> ALLOW AUTHORITIES TO FORCLOSE ON": PRINT "THE SHIP.": PRINT
6625 PRINT " <2> SKIP OFF TO ANOTHER STAR SYSTEM": PRINT "WITH THE SHIP, AND HOPE TO ESCAPE FUTUREDETECTION."
6630 PRINT : PRINT : FLASH : PRINT "** WARNING. SEVERE PENALTIES APPLY FOR SKIPPING TO AVOID PAYMENT ON A STARSHIP LOAN!!!!"
6632 PRINT : NORMAL : PRINT ">> ADDITIONAL NOTE: FORCLOSURE INVOLVESTHE LOSS OF ALL POSSESSIONS... NOT JUST THE SHIP!"
6633 SPEED= 255: NORMAL
6635 PRINT : PRINT : INVERSE : INPUT "** WHICH CHOICE (1-2)?";IP
6640 IF IP <1 OR IP >2 THEN 6635
6650 ON IP GOTO 6700,6800
6700 SK$ = "": GOTO 150
6800 SK$ = SK$ +"XX-": GOTO 150
6999 POKE 34,0: RETURN
8000 SK(29) = -SK(29):LP = LP +2 *SK(29): RETURN
8001 FLASH : SPEED= 120: HOME
8010 PRINT "YOU ARE OUT OF MONEY, AND UNABLE TO": PRINT "MEET YOUR OBLIGATIONS."
8020 NORMAL : PRINT " AS PUNISHMENT, THE FEDERATION IS": PRINT "SEIZING ALL OF YOUR POSSESSIONS, INCLU-": PRINT "DING YOUR SHIP."
8030 SK$ = "":SK(29) = 0
8040 SPEED= 255: FOR I = 0 TO 2000: NEXT I
8050 HOME : FLASH : PRINT "GOOD-BYE"
8060 GOTO 150
9000 HOME : FOR V = 1 TO 22 STEP 2
9010 FOR H = 1 TO 38 STEP 2
9020 R0 = RND(1): IF R0 >.1 THEN 9050
9025 VTAB V: HTAB H: PRINT "*": GOTO 9080
9050 IF R0 >.3 THEN 9080
9060 VTAB V: HTAB H: PRINT "."
9080 NEXT H
9090 NEXT V
9999 RETURN
50000 C$(0) = "WEAPONS":C$(1) = "ELECTRONICS":C$(3) = "CRYSTALS":C$(2) = "DRUGS"
50010 P$(0) = "XENON-12":P$(1) = " Y732A"
50020 SH$(1) = "SCOUT SHIP":SH$(2) = "MERCHANT VESSEL"
50100 SA(1,0) = 10:SA(2,0) = 100:SA(1,1) = 10:SA(2,1) = 20:SA(1,2) = 0:SA(2,2) = 50:SA(1,3) = 100:SA(2,3) = 800
50102 SA(1,4) = 1500:SA(2,4) = 10000:SA(1,5) = .01:SA(2,5) = .02:SA(1,6) = .02:SA(2,6) = .05
50104 SA(1,7) = .2:SA(2,7) = .35:SA(1,8) = .3:SA(2,8) = .1:SA(1,9) = 100:SA(2,9) = 2000:SA(1,10) = 1:SA(2,10) = 8
50110 G(0,0,0) = 3000:G(0,0,1) = 6000:G(0,1,0) = 5000:G(0,1,1) = 8000
50111 REM (GOOD, PLANET,L0-HI)
50112 G(1,0,0) = 10:G(1,0,1) = 14:G(1,1,0) = 15:G(1,1,1) = 17
50114 G(2,0,0) = 6:G(2,0,1) = 8:G(2,1,0) = 3:G(2,1,1) = 5
50116 G(3,0,0) = 150:G(3,0,1) = 250:G(3,1,0) = 120:G(3,1,1) = 155
50118 GW(0) = 100:GW(1) = 10:GW(2) = 2:GW(3) = 50
50999 RETURN
- Addeddate
- 2014-06-12 22:20:52
- Emulator
- apple2e
- Emulator_ext
- do
- Identifier
- a2_Space_I_1978_Edu_Ware
- Scanner
- Internet Archive Python library 0.6.5
comment
Reviews
1,021 Views
DOWNLOAD OPTIONS
IN COLLECTIONS
Uploaded by Jason Scott on