--- title: "Island Kingdom" id: 51905 type: "computer_media" slug: "island-kingdom" url: "http://localhost/computer_media/island-kingdom/" markdown_url: "http://localhost/computer_media/island-kingdom.md" published_at: "2023-08-16T01:42:21+00:00" modified_at: "2026-04-03T07:59:12+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2019/02/20230809-041332.jpg" excerpt: "Govern a fiefdom for eight years, balancing treasury spending, crop planting, pollution control, and population growth before a tidal wave — or your own mismanagement — ends your reign." category: - name: "Archived Media" slug: "archived-media" taxonomy: "category" url: "http://localhost/category/archived-media/" post_tag: - name: "American Micro Products" slug: "american-micro-products-inc" taxonomy: "post_tag" url: "http://localhost/tag/american-micro-products-inc/" - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" model: - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" genre: - name: "Game" slug: "game" taxonomy: "genre" url: "http://localhost/type/game/" - name: "Resource Management" slug: "resource-management" taxonomy: "genre" url: "http://localhost/type/resource-management/" media_type: "Cassette" download_url: "https://archive.org/download/timex-sinclair-software-archive/Island Kingdom (1983)(American Micro Products)(US)(TS1000)(Cassette).zip" mediadate: "1983" producer_company: - id: 10643 title: "American Micro Products, Inc" type: "company" url: "http://localhost/company/american-micro-products-inc/" related_products: - id: 12974 title: "Island Kingdom" type: "product" url: "http://localhost/product/island-kingdom/" media_type_tags: "Game, Resource Management" --- # Island Kingdom Island Kingdom is a resource-management simulation game in which the player governs the fictional fiefdom of Pyromania for an eight-year term. Each turn the player allocates funds across land sales and purchases, peasant welfare payments, agricultural planting, education spending, and pollution control, with outcomes affecting population growth, crop yields, and tourist revenue. The game tracks a pollution variable (S1) that accumulates based on developed land area minus anti-pollution spending, directly reducing harvest yields and tourist income and causing peasant deaths. Title and publisher name banner sequences use scrolling character-by-character display loops driven by string arrays, and the map of Pyromania at line 7190 is rendered entirely with block graphics characters. Multiple end-game conditions include starvation, Parexian revolt, assassination, impeachment, and a random tidal-wave disaster triggered at line 1196. *** ## Program Analysis ### Program Structure The program is organized into a main game loop and a collection of subroutines. Initialization occupies lines 5–90, the introductory text display runs through line 160, per-turn variable setup is at lines 170–310, and the main yearly decision loop runs from line 300 through line 2240, jumping back to line 300 at line 2240 after decrementing the year counter `N5`. End-game and special-event branches occupy lines 3000–3560, subroutines for display utilities are at 3700, 4000–4320, 6000–6160, and the congratulations screen is at 7000. Graphical display routines for the title banner and map are at lines 7190–7540, 7700–7790, and 8000–8090. ### Key Variables | Variable | Meaning | | --- | --- | | `M` | National treasury (Gellers) | | `P` | Peasant population | | `L` | Total land area (sq. miles); 1000 reserved as forest | | `W` | Number of Parexian immigrants | | `S1` | Current pollution level | | `S0` | Baseline (minimum) pollution level | | `N5` | Years remaining in term (counts down from N4=8) | | `L2` | Land sold to Owatika this turn | | `L3` | Land planted this turn | | `M1` | Gellers distributed to peasants | | `M2` | Education spending | | `M3` | Anti-pollution spending | | `E0`,`E1` | Education effect carried across years | ### Game Mechanics Each year the player makes five sequential decisions: how much land to sell to Owatika, how many Gellers to distribute to peasants, how many square miles to plant, how much to spend on education, and how much to spend on pollution control. Each decision reduces the treasury `M`, and the game enforces non-negativity checks after each input. At least 1000 square miles of land must always be retained (described as forest too costly to develop). Starvation deaths are computed at line 1190 as `D2 = INT(P - M1/100)`, meaning 100 Gellers per peasant per year is the threshold to prevent starvation. Pollution deaths at line 1230 scale as `S1/100000 * (0.1 + 0.4*RND) * P`. Population migration (lines 1520–1580) uses a formula based on the difference between a target population of 500 and current population, adjusted for pollution and starvation deaths, providing a self-regulating population mechanic. Pollution accumulates each year at line 2080 as `S2 = (2000-L)^2 - M3/0.44`, meaning pollution grows as the square of developed land and decreases proportionally with anti-pollution spending. The baseline pollution floor `S0` is updated at line 2170 only when pollution is increasing, creating a ratchet effect that prevents pollution from falling below a historical minimum. The education system uses a two-year rolling average: `E0` holds last year’s normalized education spend and `E1` holds the current year’s value. Both contribute to the crop yield multiplier at line 1740: `T1 = INT((39 + RND*20) * (1 + 0.25*(E0+E1)/20))`, so sustained education spending improves yields over multiple turns. ### Display Techniques The scrolling title banner at lines 7700–7790 and 8000–8090 uses string arrays `Y$` and `X$` to hold both a plain-text and an inverse-character version of each title. A loop iterates character by character, printing each character at a fixed row using `PRINT AT 8,I`, creating a character-reveal animation. The outer loop `B` runs the whole sequence twice for visual effect. The map of Pyromania at lines 7190–7380 is drawn entirely with `PRINT AT` statements using block graphics characters to form coastlines and terrain. Lines 7360–7375 add the neighboring kingdoms Owatika and Parexia with their map labels. An animation loop at lines 7510–7540 alternates a flashing cursor character `[*]` and `*` at position (12,5) while waiting for a keypress. The utility subroutine at line 6000 clears the message area (rows 15–18) by printing the blank string `Z$(1)`, which is initialized at line 6 as a 32-space string. Similarly, `GOSUB 6100` clears rows 20–21, and `GOSUB 4140` clears rows 4–7. This pattern avoids `CLS` mid-screen, preserving the status display in the upper portion of the screen. ### VAL-Based Display Pattern Throughout the program, variables are displayed using the idiom `VAL "expression"` inside `PRINT` statements, such as `PRINT VAL "M"` or `PRINT VAL "INT (M/L1)"`. This is a well-known memory optimization technique: rather than storing an intermediate result in a new variable, the string is evaluated at runtime, saving memory that would otherwise be consumed by additional numeric variables. ### End-Game Conditions - More than 200 peasant deaths in one year → impeachment (line 1400 → 3100) - Population of Parexians exceeds total peasants → revolt or assassination (lines 3300–3350) - More than one-third of original population dead → hatred and possible revolt (lines 3400–3430) - Treasury surplus remaining when peasants starved → forced resignation (lines 3500–3560) - Insufficient land after funeral debt → prison (lines 1350–1370 → 3000) - Random tidal wave event (1% chance per year at line 1196) → no survivors (lines 7800–7850) - Eight years completed successfully → congratulations and option to run again (line 2190 → 3020/7000) ### Bugs and Anomalies - Line 3170 checks `IF T0=1` and line 3180 also checks `IF T0=1` (identical condition). The intended check at line 3180 is almost certainly `IF T0=2`, making the “drawn and quartered” outcome (line 3200) unreachable and the “bad reputation” outcome (line 3240) also unreachable — execution always falls through to line 3190 (“declared national fink”). - Line 2170 assigns `LET SO=...` (letter O) rather than `LET S0=...` (digit zero), creating a separate variable `SO` that is never read. The intended pollution floor update to `S0` never occurs from this branch, though `S0` is correctly used in the comparison at line 2130. - Line 6160 (`LET T0=INT(RND*2.01)+1`) is unreachable dead code; no `GOTO` or `GOSUB` targets it. - Line 120 contains `"DURINGYOUR"` (missing space), and line 3150 contains `"OFOFFICE"` — both are string literal typos that will display incorrectly. - The tourism decrease message at line 1960 prints “DECREASE BECAUSE” before the random reason is selected, but the decrease message block is only entered when `INT(T0-T1) > M5` AND `S1 > S9` (lines 1920–1930). When tourist income is increasing AND pollution is rising, the message incorrectly says “decrease.” - The variable `X9` is set at line 650 as `INT(44*(2000-L))` and referenced in a `PRINT` at line 2090 as payment received from Owatika, but it is never actually added to `M`, making it an informational display with no financial effect. ## Source Code ``` 5 DIM Z$(1,32) 6 LET Z$(1)=" " 7 CLS 8 DIM Y$(2,29) 9 DIM X$(2,14) 10 DIM A$(6) 20 LET N4=8 30 LET N5=8 40 LET D9=1 50 LET Y$(1)="AMERICAN MICRO PRODUCTS, INC." 60 LET Y$(2)="[A][M][E][R][I][C][A][N]█[M][I][C][R][O]█[P][R][O][D][U][C][T][S][,]█[I][N][C][.]" 70 GOSUB 7700 80 CLS 82 LET X$(1)="ISLAND KINGDOM" 83 LET X$(2)="[I][S][L][A][N][D]█[K][I][N][G][D][O][M]" 84 GOSUB 8000 89 CLS 90 GOSUB 7190 91 CLS 100 PRINT AT 5,3;"YOU HAVE JUST BEEN APPOINTED REGENT TO THE FIEFDOM OF","[P][Y][R][O][M][A][N][I][A]." 110 PRINT AT 9,3;"I AM [S][I][N][C][L][A][I][R]█[T][H][E]█[M][A][D]." 120 PRINT AT 11,3;"I WILL BE YOUR ADVISOR DURINGYOUR STAY IN [P][Y][R][O][M][A][N][I][A]" 130 PRINT AT 18,2;">>PRESS ANY KEY WHEN READY<<" 140 IF INKEY$ <>"" THEN GOTO 160 150 GOTO 130 160 CLS 170 LET M=INT (70000+RND*1000-RND*1000) 180 LET P=INT (500+RND*10-RND*10) 190 LET L=2000 200 LET W=0 210 LET X2=0 220 LET E0=0 230 LET X1=0 240 LET E1=0 250 LET S9=0 260 LET S0=0 270 LET M5=0 280 LET S1=0 290 LET D1=INT (P/3) 300 LET L1=INT (RND*5+10) 310 LET L0=INT (RND*10+95) 314 LET VN=VAL "9-N5" 316 LET VM=VAL "M" 320 PRINT "YR. ";VN;":YOU HAVE ";VM;" GELLERS," 330 LET VP=VAL "P" 340 PRINT VP;" PEASANTS," 345 LET VL=VAL "L" 350 IF W<>0 THEN GOTO 360 352 PRINT AT 1,14;VL;" SQ. MILES OF LAND." 354 PRINT 356 GOTO 400 360 LET VW=VAL "W" 370 PRINT AT 1,14;VW;" [P][A][R][E][X][I][A][N]," 390 PRINT AT 2,0;VL;" SQ. MILES OF LAND." 395 PRINT 400 PRINT "THIS YEAR [O][W][A][T][I][K][A] WILL BUY LAND" 410 LET VL0=VAL "L0" 420 PRINT "FOR ";VL0;" GELLERS/SQ. MILE." 450 IF S1=0 THEN GOTO 480 460 LET VS1=VAL "S1" 470 PRINT "POLLUTION LEVEL IS ";VS1;" UNITS." 480 PRINT AT 14,0;"▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀" 490 PRINT AT 19,0;"▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀" 500 PRINT AT 20,0;"HOW MANY SQ. MILES TO SELL TO [O][W][A][T][I][K][A]" 510 INPUT L2 520 IF L2<0 THEN GOTO 500 530 IF L20 THEN GOTO 590 570 PRINT "(FOREST NOT WANTED-TOO COSTLY TO DEVELOP)" 580 LET X1=1 590 GOTO 500 600 GOSUB 3700 620 GOSUB 6000 630 LET M=INT (M+L2*L0) 635 PRINT AT 12,0;VAL "M" 640 LET L=INT (L-L2) 641 GOSUB 4146 642 GOSUB 4140 644 GOSUB 4000 650 LET X9=INT (44*(2000-L)) 660 LET M2=0 670 LET M3=0 680 LET M4=0 690 PRINT AT 20,0;"HOW MANY GELLERS TO DISTRIBUTE TO YOUR PEASANTS" 700 INPUT M1 710 IF M1<0 THEN GOTO 690 720 IF M1<=M THEN GOTO 750 730 GOSUB 6050 740 GOTO 690 750 GOSUB 6000 752 GOSUB 3700 760 LET M=INT (M-M1) 762 PRINT AT 12,0;" " 764 PRINT AT 12,0;VAL "M" 770 IF M=0 THEN GOTO 1170 774 GOSUB 6100 775 PRINT AT 4,0;"LAND CURRENTLY COSTS ";VAL "L1";" GELLERS/SQ. MILE TO PLANT" 780 PRINT AT 20,0;"HOW MANY SQ. MILES TO PLANT" 790 INPUT L3 795 GOSUB 6000 800 IF L3<0 THEN GOTO 780 810 IF L3<=P*2 THEN GOTO 850 820 PRINT AT 15,0;"EACH PEASANT CAN ONLY PLANT 2 SQ. MILES" 830 GOTO 910 850 IF L3<=L-1000 THEN GOTO 890 860 PRINT AT 15,0;"ONLY GOT ";VAL "L-1000";" SQ. MILES OF FARM LAND." 870 GOTO 910 890 LET M4=INT (L3*L1) 900 IF M4<=M THEN GOTO 950 904 GOSUB 6050 910 PRINT AT 17,0;"YOU CAN AFFORD ";VAL "INT (M/L1)";" SQ. MILES" 920 PRINT AT 18,0;"AND HAVE LABOR FOR ";VAL "(P*2)";" SQ. MILE" 930 GOTO 780 950 LET M=INT (M-M4) 951 PRINT AT 12,0;" " 952 PRINT AT 12,0;VAL "M" 953 GOSUB 4140 960 IF M=0 THEN GOTO 1170 970 GOSUB 6100 980 PRINT AT 20,0;"HOW MUCH TO SPEND FOR EDUCATION" 990 INPUT M2 995 GOSUB 6000 1000 IF M2<0 THEN GOTO 980 1010 IF M2<=M THEN GOTO 1050 1020 GOSUB 6050 1030 GOTO 980 1050 LET M=INT (M-M2) 1051 PRINT AT 12,0;" " 1052 PRINT AT 12,0;VAL "M" 1060 IF M=0 THEN GOTO 1170 1070 IF L=2000 THEN GOTO 1170 1080 GOSUB 6100 1090 PRINT AT 20,0;"HOW MUCH TO SPENT FOR COMBAT POLLUTION" 1100 INPUT M3 1110 GOSUB 6000 1120 IF M3<0 THEN GOTO 1090 1130 IF M3<=M THEN GOTO 1160 1140 GOSUB 6050 1150 GOTO 1090 1160 LET M=INT (M-M3) 1161 PRINT AT 12,0;" " 1162 PRINT AT 12,0;VAL "M" 1170 LET D0=0 1180 LET E2=M2/P 1190 LET D2=INT (P-M1/100) 1195 CLS 1196 IF INT (RND*100)=12 THEN GOTO 7800 1200 IF D2<=0 THEN GOTO 1230 1210 LET D0=D2 1220 PRINT VAL "D2";" PEASANTS DIE OF STARVATION" 1230 LET D3=INT (S1/100000*(.1+.4*RND)*P) 1240 IF D3<=0 THEN GOTO 1270 1249 PRINT 1250 PRINT VAL "D3";" PEASANTS DIED FROM EXCESS" 1251 PRINT "POLLUTION." 1260 LET D0=D0+D3 1270 IF D0<=0 THEN GOTO 1400 1280 LET F=D0*9 1285 PRINT 1290 PRINT "YOU WERE FORCED TO SPEND ";VAL "F","GELLERS FOR FUNERAL EXPENSES" 1300 LET M=INT (M-F) 1310 IF M<=0 THEN GOTO 1400 1315 PRINT 1320 PRINT "INSUFFICIENT RESOURCES FORCED SALE OF THE LAND" 1330 LET T0=INT ((M-L0+1)/L0) 1340 LET L=L-T0 1350 IF L>=1000 THEN GOTO 1380 1355 PRINT 1360 PRINT "NOT ENOUGH LAND TO SELL" 1370 GOTO 3000 1380 LET M=M+T0*L0 1400 IF D0>200 THEN GOTO 3100 1410 LET P=P-D0 1420 LET D1=D1-D0 1430 IF D1<0 THEN GOTO 3400 1440 IF D2<=2 THEN GOTO 1460 1450 IF M>500 THEN GOTO 3500 1460 IF L2=0 THEN GOTO 1520 1470 LET T0=INT (L2+L2*RND*2) 1480 IF W=0 THEN GOTO 1500 1490 LET T0=INT (T0+.1*W) 1495 IF T0=0 THEN GOTO 1580 1499 PRINT 1500 PRINT VAL "T0";" [P][A][R][E][X][I][A][N][S] CAME TO [P][Y][R][O][M][A][N][I][A]" 1510 LET W=W+T0 1520 LET T0=INT (((500-P)/10-D3/3-D2/5)*.75*(1+RND)) 1530 PRINT 1532 PRINT VAL "ABS (T0)";" PEASANTS "; 1540 IF T0<0 THEN GOTO 1570 1550 PRINT "CAME TO [P][Y][R][O][M][A][N][I][A]" 1560 GOTO 1580 1570 PRINT "LEFT [P][Y][R][O][M][A][N][I][A]." 1580 LET P=P+T0 1590 IF P=2 THEN GOTO 1740 1700 PRINT "(DUE TO "; 1710 IF X2=0 THEN GOTO 1730 1720 PRINT "INCREASED "; 1730 PRINT "POLLUTION LEVEL)" 1735 LET X2=X2+1 1740 LET T1=INT ((39+RND*20)*(1+.25*(E0+E1)/20)) 1750 PRINT " MAKING ";VAL "INT (T1*(L3-T0))";" GELLERS." 1760 LET M=M+INT (T1*(L3-T0)) 1770 LET E0=E1 1780 IF E2<=10 THEN GOTO 1800 1790 LET E2=10 1800 LET E1=E2 1810 LET T0=2000-L 1820 IF T0<2 THEN GOTO 2060 1830 IF T0<=26 THEN GOTO 1850 1840 LET T0=26 1850 LET T0=INT (T0*500*(.52+.5*RND)) 1860 LET T1=S1/100000 1870 IF T1<=1 THEN GOTO 1890 1880 LET T1=1 1890 LET T1=T1*T0 1900 PRINT 1905 PRINT "YOU MADE ";VAL "INT (T0-T1)";" GELLERS FROM","TOURIST TRADE" 1910 LET M=M+INT (T0-T1) 1920 IF INT (T0-T1)<=M5 THEN GOTO 2060 1930 IF S1<=S9 THEN GOTO 2060 1960 PRINT " DECREASE BECAUSE " 1970 LET T2=RND*10 1980 LET TT=INT (T2/2)+1 1990 IF TT=1 THEN GOTO 2000 1991 IF TT=2 THEN GOTO 2020 1992 IF TT=3 THEN GOTO 2030 1993 IF TT=4 THEN GOTO 2040 1998 PRINT "HOTELS ARE LOOKING SHABBY BECAUSE OF SMOG GRIT" 1999 GOTO 2060 2000 PRINT "FISH POPULATION HAS DWINDLED DUETO WATER POLLUTION" 2005 GOTO 2060 2020 PRINT "AIR POLLUTION IS KILLING GAME BIRD POPULATION" 2025 GOTO 2060 2030 PRINT "MINERAL BATHS ARE BEING RUINED BY WATER POLLUTION" 2035 GOTO 2060 2040 PRINT "UNPLEASANT SMOG IS DISCOURAGING SUN BATHERS" 2060 LET M5=INT (T0-T1) 2070 LET S9=S1 2080 LET S2=(2000-L)*(2000-L)-M3/.44 2084 IF L2=0 THEN GOTO 2110 2085 IF X9<=0 THEN GOTO 2110 2086 PRINT 2090 PRINT "YOU RECEIVED ";VAL "X9";" GELLERS FROM" 2100 PRINT "[O][W][A][T][I][K][A]" 2110 IF S2>=0 THEN GOTO 2160 2120 LET S1=INT (S1+S2/2) 2130 IF S1>=S0 THEN GOTO 2150 2140 LET S1=S0 2150 GOTO 2180 2160 LET S1=INT (S1+S2) 2170 LET SO=INT (S0+S2/10) 2180 LET N5=N5-1 2190 IF N5<=0 THEN GOTO 3020 2200 PRINT AT 20,2;">>PRESS ANY KEY WHEN READY<<" 2210 IF INKEY$ <>"" THEN GOTO 2230 2220 GOTO 2200 2230 CLS 2240 GOTO 300 3000 PRINT AT 17,0;"YOU HAVE BEEN THROWN OUT OF" 3010 PRINT "OFFICE AND YOU ARE NOW RESIDING IN PRISON." 3020 PRINT AT 21,0;"DO YOU WISH TO TRY AGAIN (Y/N)?" 3030 IF INKEY$ ="Y" THEN GOTO 7150 3040 IF INKEY$ ="N" THEN GOTO 3070 3050 PRINT AT 21,0;"[D][O]█[Y][O][U]█[W][I][S][H]█[T][O]█[T][R][Y]█[A][G][A][I][N]" 3060 GOTO 3020 3070 CLS 3075 PRINT AT 7,10;"GOOD BYE" 3076 PRINT AT 9,6;"HAPPY RETIREMENT" 3080 STOP 3100 PRINT 3110 PRINT VAL "D0";" PEASANTS DIED IN ONE YEAR" 3120 PRINT 3130 PRINT "DUE TO THIS EXTREME" 3140 PRINT "MISMANAGEMENT YOU HAVE NOT ONLY" 3150 PRINT "BEEN IMPEACHED AND THROWN OUT OFOFFICE BUT YOU"; 3160 LET T0=INT (RND*2.01)+1 3170 IF T0=1 THEN GOTO 3200 3180 IF T0=1 THEN GOTO 3240 3190 PRINT " HAVE ALSO BEEN DECLARED NATIONAL FINK." 3195 GOTO 3020 3200 PRINT " ALSO WILL BE DRAWN AND QUARTERED IN THE PUBLIC SQUARE NEXT TUESDAY" 3210 GOTO 3020 3240 PRINT " HAVE ALSO GAINED A VERY BAD REPUTATION." 3250 GOTO 3020 3300 PRINT 3310 PRINT "THE NUMBER OF [P][A][R][E][X][I][A][N] HAS EXCEEDED THE NUMBER OF PEASANTS." 3320 PRINT "AS A MAJORITY THEY HAVE REVOLTEDAND TAKEN OVER [P][Y][R][O][M][A][N][I][A]." 3330 IF RND<=.5 THEN GOTO 3000 3340 PRINT 3345 PRINT "YOU HAVE BEEN ASSASSINATED." 3350 GOTO 3020 3400 PRINT 3410 PRINT "OVER ONE THIRD OF THE POPULATIONHAS DIED SINCE YOU WERE ELECTED" 3420 PRINT "THE PEOPLE (REMAINING) HATE YOURGUTS." 3430 GOTO 3330 3500 PRINT 3510 PRINT "GELLERS WAS LEFT OVER IN THE TREASURY WHICH YOU DID NOT SPEND" 3520 PRINT "AS A RESULT SOME OF YOUR PEASANTS DIED OF STARVATION." 3530 PRINT 3540 PRINT "THE PUBLIC IS ENRAGED AND YOU HAVE BEEN FORCED TO EITHER" 3550 PRINT "RESIGN OR COMMIT SUICIDE." 3560 GOTO 3020 3700 PRINT AT 11,0;"NATIONAL TREASURY CONTAINS: " 3720 RETURN 4000 REM 4010 PRINT 4020 PRINT AT 4,0;"THIS YEAR [P][A][R][E][X][I][A] WILL SELL LAND" 4030 LET L8=INT (RND*10+50) 4035 LET L7=INT (RND*200) 4040 PRINT "FOR ";VAL "L8";" GELLERS/SQ. MILE." 4050 PRINT AT 20,0;"HOW MANY SQ. MILES TO BUY FROM [P][A][R][E][X][I][A]" 4055 REM 4060 INPUT L9 4065 GOSUB 6000 4070 IF L9>L7 THEN GOTO 4200 4080 LET M9=L8*L9 4090 IF M9>M THEN GOTO 4300 4100 LET M=M-M9 4110 PRINT AT 12,0;VAL "M" 4120 LET L=L+INT (L9) 4140 FOR I=4 TO 7 4142 PRINT AT I,0;Z$(1) 4144 NEXT I 4146 PRINT AT 8,0;"PRESENTLY YOU HAVE ";VAL "L";" SQ. MILES OF LAND." 4150 RETURN 4200 PRINT AT 15,0;"[P][A][R][E][X][I][A] WILL ONLY SELL ";VAL "L7";" SQ.";AT 16,0;"MILES THIS YEAR." 4210 GOTO 4055 4300 PRINT AT 15,0;"YOU HAVE ONLY ";VAL "M";" GELLERS" 4310 PRINT AT 16,0;"LEFT. DO NOT TRY TO CHEAT YOUR NEIGHBOR." 4320 GOTO 4055 6000 FOR I=15 TO 18 6010 PRINT AT I,0;Z$(1) 6020 NEXT I 6030 RETURN 6050 PRINT AT 15,0;"YOU ONLY HAVE ";VAL "M";" GELLERS LEFT" 6060 RETURN 6100 PRINT AT 20,0;Z$(1) 6110 PRINT AT 21,0;Z$(1) 6120 RETURN 6160 LET T0=INT (RND*2.01)+1 7000 CLS 7010 PRINT AT 5,5;"CONGRATULATIONS" 7020 PRINT 7030 PRINT "YOU HAVE SUCCESFULLY COMPLETED YOUR ";N4;" YEAR TERM OF OFFICE." 7040 PRINT 7050 PRINT "YOU HAVE DONE SUCH A GOOD JOB THAT YOU MIGHT WANT TO RUN FOR" 7060 PRINT "ELECTION AGAIN." 7070 PRINT 7080 PRINT AT 15,1;"DO YOU WANT TO RUN (Y/N)?" 7090 IF INKEY$ ="Y" THEN GOTO 7150 7100 IF INKEY$ ="N" THEN GOTO 3070 7110 PRINT AT 15,1;"[D][O]█[Y][O][U]█[W][A][N][T]█[T][O]█[R][U][N]" 7120 GOTO 7080 7150 LET N5=N4 7155 CLS 7160 GOTO 90 7190 PRINT AT 1,5;"[K][I][N][G][D][O][M]█[O][F]█[P][Y][R][O][M][A][N][I][A]" 7200 PRINT AT 4,11;"▛▀▀▀▀▀▀▀▜▄" 7210 PRINT AT 5,11;"▌ . ▐" 7220 PRINT AT 6,9;"▛▀▘,,,,,, ▐" 7230 PRINT AT 7,7;"▟▀▘[▒][▒][▒][▒][▒][▒][▒][▒] ▝▀▜" 7240 PRINT AT 8,7;"▌ [▒][▒][▒][▒][▒][▒][▒][▒] ▐" 7250 PRINT AT 9,2;"▖ ▌ [▒][▒][▒]~~~~~~,,,,,, ▐" 7260 PRINT AT 10,1;"▝▜ ▗▄▄▌ ▒▒▒▒ ▝▀▀▀▀▜" 7270 PRINT AT 11,3;"▐▀ ▒▒▒▒ ▒▒ ▐" 7280 PRINT AT 12,3;"▛ * ▒▒▒ ▐▀▀▀" 7290 PRINT AT 13,3;"▌ * ▛▀▀▀▀▀▀" 7300 PRINT AT 14,3;"▌▒ ▗▛▀▀▘" 7310 PRINT AT 15,3;"▙▖ ▒,, ▗▄▄▄▟" 7320 PRINT AT 16,4;"▌ ▒~~ ▐" 7330 PRINT AT 17,4;"▙▄▄▄▖ ▐" 7340 PRINT AT 18,8;"▙▄▄▟" 7350 PRINT AT 15,20;"▀▗";AT 16,20;"▀▘" 7360 PRINT AT 4,18;"▜";AT 5,18;"▗";AT 6,18;"▗";AT 7,18;"▗";AT 8,18;"▗" 7370 PRINT AT 8,19;"▗";AT 9,19;"▗";AT 10,19;"▗";AT 11,19;"▗";AT 12,19;"▗" 7375 PRINT AT 4,22;"[O][W][A][T][I][K][A]" 7376 PRINT AT 15,23;"[P][A][R][E][X][I][A]" 7380 PRINT AT 2,3;"N";AT 3,3;":";AT 4,1;"W<+>E";AT 5,3;":";AT 6,3;"S" 7500 PRINT AT 21,2;">>PRESS ANY KEY TO CONTINUE<<" 7510 PRINT AT 12,5;"[*]" 7520 IF INKEY$ <>"" THEN RETURN 7530 PRINT AT 12,5;"*" 7540 GOTO 7370 7700 FOR B=1 TO 2 7705 FOR J=1 TO 2 7710 FOR I=1 TO 29 7720 PRINT AT 8,I;Y$(J,I) 7750 NEXT I 7760 NEXT J 7770 PRINT AT 17,7;"RICHARDSON, TEXAS" 7780 PRINT AT 19,8;"COPYRIGHT, 1982" 7785 NEXT B 7790 RETURN 7800 PRINT AT 7,2;"FREAK TITAL WAVE HAS PLACED";AT 9,3; "WHOLE COUNTRY UNDER WATER" 7810 PRINT AT 12,8;"**[N][O]█[S][U][R][V][I][V][O][R][S]**" 7850 GOTO 3020 8000 FOR B=1 TO 2 8005 FOR J=1 TO 2 8010 FOR I=1 TO 14 8030 PRINT AT 8,8+I;X$(J,I) 8050 NEXT I 8060 NEXT J 8070 NEXT B 8080 CLS 8090 RETURN 9000 SAVE "ISLAN[D]" 9010 RUN ```