This program is Part 1 of a two-part 1983 US income tax computation aid. It guides users through entering wages, interest, dividends, capital gains, other income, adjustments to income, and itemized deductions (medical, taxes, interest, contributions, and miscellaneous), then calculates gross income and total deductions. A subroutine at line 5500 parses colon-delimited string literals (C$ and D$) into a string array V$(21,20) and numeric array V(21) for storing deduction category names and values. At the end of Part 1 the program instructs the user to note key computed values (adjusted income AI and deductions DE), flip the cassette tape, and LOAD “TAX 2” to continue with tax calculation in Part 2. The program uses SLOW/FAST mode switching and INKEY$-based menu navigation throughout.
Program Structure
The program is divided into clearly separated functional blocks, invoked via GOSUB from two main menu loops:
- Lines 1–78: Initialisation — arrays, variables, and the category-string parser (
GOSUB 5500). - Lines 80–600: Income sub-sections — wages (
80), dividends (180), interest (300), other income (430). - Lines 610–820: Income summary screen with letter-key dispatch.
- Lines 840–1350: Capital gains — short-term (
1100) and long-term (1230) entry, carry-forward calculation. - Lines 1360–1480: Main Part-1 menu (gross income, adjustments, deductions, jump to Part 2).
- Lines 1490–1770: Adjustments-to-income sub-menu (moving, IRA, Keogh, alimony, etc.).
- Lines 1840–2870: Deductions — medical (
1980), taxes (2280), interest (2430), contributions (2570), miscellaneous (2700), losses (2691). - Lines 2880–2936: Display/input helper subroutines using the
V$()/V()arrays. - Lines 3000–4000: Part-2 handoff — prints computed values, instructs LOAD “TAX 2”.
- Lines 5500–5570: String parser — splits
F$on:/;intoV$(H). - Lines 9000–9030: Utility block for saving the program (not reached in normal execution).
Category String Parser (lines 5500–5570)
Rather than embedding each deduction category name as a separate string variable or DATA statement, the author encodes all names into two long strings C$ (line 14) and D$ (line 15), delimited by : between fields and terminated by ;. The subroutine at 5500 walks the string character by character, accumulating characters into E$ until a : triggers storage of E$ into V$(H), and a ; terminates the loop. This is a compact way to initialise a string array from a single literal, saving both line overhead and memory.
Each entry in V$(21,20) holds a 20-character padded name. The display subroutine at line 2880 slices columns 1–4 as a line-number prefix (L$), column 5 as a colour/highlight character (M$), and columns 6 onward as the label text (R$). It then adds 128 to the character code of M$ to produce an inverse-video character — a simple way to render menu key letters in inverse.
Key BASIC Idioms
- INKEY$ polling loops — e.g.
IF INKEY$="" THEN GOTO 770— used throughout instead ofINPUTfor single-key menu selection, giving immediate response. - SLOW/FAST toggling —
SLOWat line 2 and 77,FASTat line 70, brackets the string-parser calls to allow display during the loop. - Array reuse —
V(21)stores numeric values for all deduction categories by index, allowing a single pair of subroutines (2880,2930) to handle display and input for any category. - Zero-entry sentinel —
IF D(I)=0 THEN GOTO 280(line 250) terminates a data-entry loop on a zero input rather than requiring a fixed count, a common idiom for variable-length lists.
Capital Gains Computation (lines 840–1010)
The capital-gains section implements the 1983 US tax rules with some complexity:
- If net gain
NG = NS + NLis positive, 60% of the long-term portion (GG) is excluded:CG = NG - 0.6*GG. - If net gain is negative and short-term is positive:
CG = 0.5*NG. - If net loss exceeds −3000, carry-forwards are computed and displayed (lines 950–1006), and
CGis clamped to −3000.
There is a structural anomaly: lines 910–930 contain orphaned conditional branches (IF NS>0, IF NL>0, LET CG=NS+.5*NL) that are never reached because the preceding GOTO 940 at line 902 skips them entirely. These appear to be dead code from an earlier version of the logic.
Notable Techniques
| Technique | Location | Purpose |
|---|---|---|
Inverse-video key hint via CODE + 128 | Lines 2902–2906 | Highlights menu letter in display without separate PRINT AT/INK statements |
| Delimited string as array initialiser | Lines 14–15, 5500–5570 | Compresses 21 category names into two string literals |
| Part handoff via cassette flip | Lines 3100–3165 | Splits computation across two cassette sides; user notes AI and DE manually |
INT(x + 0.5) rounding | Lines 1020, 2000, 2100 | Banker-friendly rounding of currency values |
CHR$ 118 as ENTER key test | Line 1072 | Allows pressing ENTER as an alternative to “R” to return |
Content
Source Code
1 REM "TAX 1"
2 SLOW
3 PRINT AT 11,9;"PLEASE WAIT"
4 LET GI=0
5 LET AD=0
6 LET DE=0
7 LET TX=0
8 LET P=0
9 LET TT=0
12 DIM V$(21,20)
13 DIM V(21)
14 LET C$=" 1 MEDICINE:: 4A DOCTORS, ETC.: 4B TRANSPORT.: 4C OTHER MEDICAL: 8 INCOME TAXES: 9 PROPERTY:10A SALES TAXES:10B VEHICLE:11 OTHER TAXES:13A BANK MORT:13B IND. MORT:14 CREDIT CARDS:15 OTHER INTER.:17ABCASH CONT.:18 OTHER CONT.:19 PRIOR YEARS:;"
15 LET D$="21 CASUALTY:22 DUES-UN. AND PR.:23 TAX FEE:24 OTHER DEDUC.:;"
22 LET H$="NO"
24 LET EX=1
25 LET NN=0
26 LET FS=1
28 LET SD=2300
30 DIM I(10)
31 LET ND=0
32 DIM D(10)
33 LET NS=0
34 LET NL=0
35 LET IG=0
36 DIM S(10)
37 DIM L(10)
38 LET IL=0
39 DIM O(10)
40 LET W2=0
41 LET IN=0
42 LET D=0
43 LET EC=0
44 LET CG=0
45 LET IO=0
47 LET MV=0
48 LET BS=0
49 LET IR=0
50 LET K=0
51 LET SP=0
52 LET AL=0
53 LET MP=0
54 LET DS=0
55 LET M=0
56 LET T=0
57 LET ID=0
58 LET CO=0
59 LET MS=0
60 LET LO=0
62 LET B=0
65 LET H=0
66 LET F$=C$
68 CLS
70 FAST
72 GOSUB 5500
74 LET F$=D$
76 GOSUB 5500
77 SLOW
78 GOTO 1360
80 CLS
84 PRINT AT 1,0;"7.TYPE TOTAL WAGES"
94 PRINT AT 4,0;" ";W2
120 INPUT W2
124 PRINT AT 4,0;" ";W2;" "
170 RETURN
180 CLS
184 PRINT AT 1,0;"9.TYPE DIVIDEND"
185 PRINT "TYPE 0 TO QUIT"
186 PRINT
190 IF ND=0 THEN GOTO 220
200 FOR I=14 TO ND
210 PRINT " ";D(I)
212 NEXT I
220 LET D=0
230 FOR I=1 TO 10
240 INPUT D(I)
245 PRINT D(I);" "
250 IF D(I)=0 THEN GOTO 280
260 LET D=D+D(I)
270 NEXT I
280 LET ND=I-1
290 RETURN
300 CLS
302 PRINT AT 1,0;"8.TYPE INTEREST"
306 PRINT "TYPE 0 TO QUIT"
308 PRINT
310 IF NN=0 THEN GOTO 350
320 FOR I=1 TO NN
330 PRINT " ";I(I)
332 NEXT I
340 PRINT AT 3,0
350 LET IN=0
360 FOR I=1 TO 10
370 INPUT I(I)
375 PRINT " ";I(I);" "
380 IF I(I)=0 THEN GOTO 410
390 LET IN=IN+I(I)
400 NEXT I
410 LET NN=I-1
420 RETURN
430 CLS
432 PRINT AT 1,0;"OTHER INCOME"
436 PRINT
440 PRINT "10%TAX REFUND ";O(1)
450 PRINT "11%ALIMONY REC. ";O(2)
460 PRINT "12%BUSINESS INC.";O(3)
470 PRINT "14%OTHER GAIN ";O(4)
480 PRINT "15%SUPP. GAIN ";O(5)
490 PRINT "16/17%PENSION ";O(6)
500 PRINT "18R%ENTS, ROYAL.";O(7)
510 PRINT "19%FARM INCOME ";O(8)
520 PRINT "20%UNEMP. COM. ";O(9)
530 PRINT "21OTHER %INCOME ";O(10)
531 PRINT
532 PRINT " %RETURN"
533 PRINT
534 PRINT "TYPE BLACK LETTER"
535 PRINT
536 IF INKEY$="" THEN GOTO 536
538 LET A$=INKEY$
540 IF A$="R" THEN GOTO 593
541 IF A$<>"T" THEN GOTO 546
542 PRINT "TAX REFUND"
543 INPUT O(1)
544 PRINT AT 3,15;O(1);" "
545 GOTO 590
546 IF A$<>"A" THEN GOTO 551
547 PRINT "ALIMONY REC."
548 INPUT O(2)
549 PRINT AT 4,15;O(2);" "
550 GOTO 590
551 IF A$<>"B" THEN GOTO 556
552 PRINT "BUSINESS INC."
553 INPUT O(3)
554 PRINT AT 5,15;O(3);" "
555 GOTO 590
556 IF A$<>"O" THEN GOTO 561
557 PRINT "OTHER GAIN"
558 INPUT O(4)
559 PRINT AT 6,15;O(4);" "
560 GOTO 590
561 IF A$<>"S" THEN GOTO 566
562 PRINT "SUPP. GAIN"
563 INPUT O(5)
564 PRINT AT 7,15;O(5);" "
565 GOTO 590
566 IF A$<>"P" THEN GOTO 571
567 PRINT "PENSION"
568 INPUT O(6)
569 PRINT AT 8,15;O(6);" "
570 GOTO 590
571 IF A$<>"E" THEN GOTO 576
572 PRINT "RENTS, ROYAL."
573 INPUT O(7)
574 PRINT AT 9,15;O(7);" "
575 GOTO 590
576 IF A$<>"F" THEN GOTO 581
577 PRINT "FARM INC."
578 INPUT O(8)
579 PRINT AT 10,15;O(8);" "
580 GOTO 590
581 IF A$<>"U" THEN GOTO 586
582 PRINT "UNEMP. COM."
583 INPUT O(9)
584 PRINT AT 11,15;O(9);" "
585 GOTO 590
586 IF A$<>"I" THEN GOTO 590
587 PRINT "OTHER INCOME"
588 INPUT O(10)
589 PRINT AT 12,15;O(10);" "
590 PRINT AT 18,0;" "
591 PRINT AT 17,0
592 GOTO 536
593 LET IO=0
594 FOR I=1 TO 10
596 LET IO=IO+O(I)
598 NEXT I
600 RETURN
610 CLS
612 PRINT
614 PRINT "1983 TAX: INCOME"
616 PRINT "TYPE BLACK LETTERS"
620 PRINT
622 PRINT " 7%WAGES, SAL.",W2
630 PRINT " 8%INTEREST",IN
640 LET DV=D-EC
642 IF DV<0 THEN LET DV=0
650 PRINT " 9%DIVIDEND",DV
660 PRINT "(";D;"-";EC;")"
670 PRINT " (%EXCL.)",EC
680 PRINT "13%CAP. GAIN",CG
690 PRINT " %OTHER INCOME",IO
700 LET GI=W2+DV+IN+IO+CG
710 IF GI<0 THEN LET GI=0
720 PRINT
722 PRINT "22TOTAL INCOME",GI
740 PRINT
742 PRINT " %RETURN"
750 PRINT AT 21,0;"COPR 1983 PRACTIC PROG"
770 IF INKEY$="" THEN GOTO 770
772 LET A$=INKEY$
780 IF A$="R" THEN RETURN
790 IF A$="W" THEN GOSUB 80
792 IF A$="D" THEN GOSUB 180
800 IF A$="I" THEN GOSUB 300
802 IF A$="O" THEN GOSUB 430
804 IF A$="C" THEN GOSUB 840
810 IF A$="E" THEN GOSUB 830
820 GOTO 610
830 CLS
832 PRINT
834 PRINT "EXCLUSION"
836 INPUT EC
837 PRINT " ";EC
838 RETURN
840 CLS
842 PRINT
844 PRINT "D.CAPITAL GAIN"
850 PRINT
852 PRINT "I. %SHORT",NS
860 PRINT
862 PRINT "II.%LONG",NL
870 LET NG=NS+NL
880 IF NG<0 THEN GOTO 910
890 LET GG=NG
892 IF NL<NG THEN LET GG=NL
894 IF GG<0 THEN LET GG=0
900 LET CG=NG-.6*GG
902 GOTO 940
910 IF NS>0 THEN LET CG=.5*NG
912 GOTO 940
920 IF NL>0 THEN LET CG=NG
922 GOTO 940
930 LET CG=NS+.5*NL
940 IF CG>-3000 THEN GOTO 1010
950 LET CF=CG+3000
952 LET CG=-3000
960 LET S1=NS+3000
970 IF S1>0 THEN LET S1=0
980 IF S1<CF THEN LET S1=CF
990 LET S2=2*(CF-S1)
1000 PRINT
1002 PRINT "CARRYFORWARDS:"
1004 PRINT "30SHORT",S1
1006 PRINT "36LONG",S2
1010 LET A=22
1012 IF CG<0 THEN LET A=24
1020 LET CG=INT (CG+.5)
1030 PRINT
1032 PRINT A;"TOTAL",CG
1040 PRINT
1042 PRINT "%RETURN"
1050 PRINT "TYPE LETTER"
1060 IF INKEY$="" THEN GOTO 1060
1062 LET A$=INKEY$
1070 IF A$="R" THEN RETURN
1072 IF A$=CHR$ 118 THEN RETURN
1080 IF A$="S" THEN GOSUB 1100
1082 IF A$="L" THEN GOSUB 1230
1090 GOTO 840
1100 CLS
1102 PRINT
1104 PRINT "I.TYPE SHORT TERM CAPITAL GAINS."
1105 PRINT "TYPE 0 TO QUIT"
1106 PRINT
1110 IF IG=0 THEN GOTO 1150
1120 FOR I=1 TO IG
1130 PRINT " ";S(I)
1132 NEXT I
1150 LET NS=0
1152 PRINT AT 3,0
1160 FOR I=1 TO 10
1170 INPUT S(I)
1175 PRINT " ";S(I);" "
1180 IF S(I)=0 THEN GOTO 1210
1190 LET NS=NS+S(I)
1200 NEXT I
1210 LET IG=I-1
1220 RETURN
1230 CLS
1232 PRINT
1234 PRINT "II.TYPE LONG TERM CAPITAL GAINS."
1235 PRINT "TYPE 0 TO QUIT"
1236 PRINT
1240 IF IL=0 THEN GOTO 1280
1250 FOR I=1 TO IL
1260 PRINT " ";L(I)
1262 NEXT I
1280 LET NL=0
1285 PRINT AT 3,0
1290 FOR I=1 TO 10
1300 INPUT L(I)
1302 PRINT " ";L(I);" "
1310 IF L(I)=0 THEN GOTO 1340
1320 LET NL=NL+L(I)
1330 NEXT I
1340 LET IL=I-1
1350 RETURN
1360 CLS
1362 PRINT
1364 PRINT "1983 INCOME TAX COMPUTATION PROG"
1366 PRINT "TYPE BLACK LETTERS"
1370 PRINT
1372 PRINT "22TOT. %INC",GI
1380 PRINT
1382 PRINT "31%ADJUSTMENTS",AD
1390 LET AI=GI-AD
1392 IF AI<0 THEN LET AI=0
1400 PRINT
1402 PRINT "32ADJ. INC.",AI
1404 PRINT
1406 PRINT "34%DEDUCTIONS",DE
1408 PRINT
1410 PRINT " %GOTO PART 2 OF PROG."
1416 PRINT
1418 PRINT " %QUIT"
1420 PRINT AT 20,0;"COPR 1983 PRACTICAL PROGRAMS, INC."
1422 SLOW
1430 IF INKEY$="" THEN GOTO 1430
1432 LET A$=INKEY$
1440 IF A$="Q" THEN STOP
1450 IF A$="A" THEN GOSUB 1490
1452 IF A$="I" THEN GOSUB 610
1454 IF A$="D" THEN GOSUB 1840
1456 IF A$="G" THEN GOSUB 3000
1460 GOTO 1360
1470 PRINT "TOTAL INC."
1472 INPUT GI
1474 PRINT AT 12,0;GI
1480 GOTO 1360
1490 CLS
1491 PRINT
1492 PRINT "TYPE ADJUSTMENTS TO INCOME"
1500 PRINT
1502 PRINT "23M%OVING EXP.",MV
1510 PRINT "24%BUSINESS",BS
1520 PRINT "25%IRA PAYMENTS",IR
1530 PRINT "26%KEOGH PAYM.",K
1540 PRINT "27%SAV. PENALTY",SP
1550 PRINT "28%ALIMONY PAID",AL
1560 PRINT "29%MARRIAGE",MP
1570 PRINT "30%DISABILITY",DS
1580 LET AD=MV+BS+IR+K+SP+AL+MP+DS
1590 GOSUB 1740
1600 IF A$="R" THEN RETURN
1610 IF A$="O" THEN GOTO 1650
1612 IF A$="B" THEN GOTO 1660
1614 IF A$="I" THEN GOTO 1680
1620 IF A$="K" THEN GOTO 1690
1622 IF A$="S" THEN GOTO 1700
1624 IF A$="A" THEN GOTO 1710
1630 IF A$="M" THEN GOTO 1720
1632 IF A$="D" THEN GOTO 1730
1640 GOTO 1490
1650 PRINT
1652 PRINT "MOVING"
1654 INPUT MV
1656 GOTO 1490
1660 PRINT
1662 PRINT "BUSINESS EXPENSE"
1664 INPUT BS
1670 GOTO 1490
1680 PRINT
1682 PRINT "IRA CONTRIB."
1684 INPUT IR
1686 GOTO 1490
1690 PRINT
1692 PRINT "KEOGH"
1694 INPUT K
1696 GOTO 1490
1700 PRINT
1702 PRINT "SAVING PEN."
1704 INPUT SP
1706 GOTO 1490
1710 PRINT
1712 PRINT "ALIMONY"
1714 INPUT AL
1716 GOTO 1490
1720 PRINT
1722 PRINT "MARRIAGE"
1724 INPUT MP
1726 GOTO 1490
1730 PRINT
1732 PRINT "DISIBILITY"
1734 INPUT DS
1736 GOTO 1490
1740 PRINT
1742 PRINT "%RETURN"
1750 PRINT
1752 PRINT "TYPE LETTER"
1760 IF INKEY$="" THEN GOTO 1760
1762 LET A$=INKEY$
1770 RETURN
1840 CLS
1842 PRINT
1844 PRINT "DEDUCTIONS"
1850 PRINT
1852 PRINT "32ADJUST. INC",AI
1860 PRINT
1862 PRINT " 7%MEDICAL DED.",M
1865 PRINT "12%TAXES",T
1870 PRINT "16%INTEREST EXP.",ID
1875 PRINT "20%CONTRIBUTIONS",CO
1877 PRINT "21%LOSSES",LO
1880 PRINT "24%OTHER DEDUCT.",MS
1890 LET DE=M+T+ID+CO+LO+B+MS
1900 PRINT
1902 PRINT "25TOTAL DEDUCT.",DE
1910 PRINT
1912 PRINT " %RETURN"
1914 PRINT
1916 PRINT "TYPE LETTER"
1920 IF INKEY$="" THEN GOTO 1920
1922 LET A$=INKEY$
1930 IF A$="R" THEN RETURN
1950 IF A$="M" THEN GOSUB 1980
1952 IF A$="T" THEN GOSUB 2280
1960 IF A$="I" THEN GOSUB 2430
1962 IF A$="C" THEN GOSUB 2570
1964 IF A$="O" THEN GOSUB 2700
1966 IF A$="L" THEN GOSUB 2691
1970 GOTO 1840
1980 CLS
1981 PRINT
1982 PRINT "MEDICAL DEDUCTIONS"
1990 LET I=1
1992 GOSUB 2880
2000 LET L2=INT (.01*AI+.5)
2010 PRINT " 2 1PERCENT INC. ";L2
2020 LET L3=V(1)-L2
2022 IF L3<0 THEN LET L3=0
2030 PRINT " 3"," ";L3
2050 LET I=3
2052 GOSUB 2880
2060 LET I=4
2062 GOSUB 2880
2070 LET I=5
2072 GOSUB 2880
2080 LET L6=L3
2082 FOR I=2 TO 5
2084 LET L6=L6+V(I)
2086 NEXT I
2090 PRINT " 5"," ";L6
2100 LET L7=INT (.05*AI+.5)
2110 PRINT " 6 5PERCENT INC. ";L7
2120 LET M=L6-L7
2122 IF M<0 THEN LET M=0
2170 PRINT " 7 TOTAL MEDICAL ";M
2180 GOSUB 2840
2190 IF A$="R" THEN RETURN
2200 IF A$="M" THEN LET I=1
2220 IF A$="D" THEN LET I=3
2230 IF A$="T" THEN LET I=4
2240 IF A$="O" THEN LET I=5
2250 IF I=0 THEN GOTO 1980
2260 GOSUB 2930
2270 GOTO 1980
2280 CLS
2282 PRINT
2284 PRINT "TAXES"
2290 LET T=0
2300 FOR I=6 TO 10
2302 GOSUB 2880
2310 LET T=T+V(I)
2312 NEXT I
2320 PRINT "12TOTAL TAXES ";T
2330 GOSUB 2840
2340 IF A$="R" THEN RETURN
2350 IF A$="I" THEN LET I=6
2360 IF A$="P" THEN LET I=7
2370 IF A$="S" THEN LET I=8
2380 IF A$="V" THEN LET I=9
2390 IF A$="O" THEN LET I=10
2400 IF I=0 THEN GOTO 2280
2410 GOSUB 2930
2420 GOTO 2280
2430 CLS
2432 PRINT
2434 PRINT "INTEREST EXPENSE"
2440 LET ID=0
2450 FOR I=11 TO 14
2452 GOSUB 2880
2460 LET ID=ID+V(I)
2462 NEXT I
2470 PRINT "16TOTAL INTEREST ";ID
2480 GOSUB 2840
2490 IF A$="R" THEN RETURN
2500 IF A$="B" THEN LET I=11
2510 IF A$="I" THEN LET I=12
2520 IF A$="C" THEN LET I=13
2530 IF A$="O" THEN LET I=14
2540 IF I=0 THEN GOTO 2430
2550 GOSUB 2930
2560 GOTO 2430
2570 CLS
2572 PRINT
2574 PRINT "CONTRIBUTIONS"
2580 LET CO=0
2590 FOR I=15 TO 17
2592 GOSUB 2880
2600 LET CO=CO+V(I)
2602 NEXT I
2610 PRINT "20TOTAL CONTRIB. ";CO
2620 GOSUB 2840
2630 IF A$="R" THEN RETURN
2640 IF A$="C" THEN LET I=15
2650 IF A$="O" THEN LET I=16
2660 IF A$="P" THEN LET I=17
2670 IF I=0 THEN GOTO 2570
2680 GOSUB 2930
2690 GOTO 2570
2691 CLS
2692 PRINT "21 LOSSES ";LO
2693 INPUT LO
2694 RETURN
2700 CLS
2702 PRINT
2704 PRINT "MISCELLANEOUS"
2710 LET MS=0
2720 FOR I=19 TO 21
2722 GOSUB 2880
2730 LET MS=MS+V(I)
2732 NEXT I
2740 PRINT "25TOTAL MISCEL. ";MS
2750 GOSUB 2840
2760 IF A$="R" THEN RETURN
2780 IF A$="D" THEN LET I=19
2790 IF A$="T" THEN LET I=20
2800 IF A$="O" THEN LET I=21
2810 IF I=0 THEN GOTO 2700
2820 GOSUB 2930
2830 GOTO 2700
2840 PRINT
2842 PRINT " %RETURN"
2850 PRINT
2852 PRINT "TYPE LETTER"
2860 IF INKEY$="" THEN GOTO 2860
2862 LET A$=INKEY$
2870 LET I=0
2872 RETURN
2880 LET L$=V$(I)( TO 4)
2890 LET M$=V$(I)(5 TO 5)
2900 LET R$=V$(I)(6 TO )
2902 LET ZZ=CODE M$
2904 LET ZZ=ZZ+128
2906 LET M$=CHR$ ZZ
2910 PRINT L$;M$;R$;" ";V(I)
2920 RETURN
2930 PRINT
2932 PRINT V$(I)
2934 INPUT V(I)
2936 RETURN
3000 CLS
3002 PRINT
3009 PRINT "ARE YOU SURE YOU ARE"
3010 PRINT "COMPLETELY FINISHED WITH PART 1"
3020 PRINT "(Y OR N)"
3030 INPUT T$
3040 IF T$="Y" THEN GOTO 3100
3050 GOTO 1360
3100 PRINT "WRITE DOWN THE FOLLOWING VALUES"
3105 PRINT
3110 PRINT "1. ";AI
3120 PRINT "2. ";DE
3140 PRINT
3150 PRINT "THEN FLIP OVER CASSETTE AND TYPE"
3155 PRINT
3160 PRINT " LOAD ""TAX 2"""
3165 PRINT
3170 PRINT "PART 2 WILL ASK FOR VALUES"
3180 PRINT "1-2 IN ORDER"
4000 STOP
5500 LET N=0
5505 LET E$=""
5510 LET H=H+1
5515 LET N=N+1
5520 LET G$=F$(N TO N)
5525 IF G$=":" THEN GOTO 5545
5530 IF G$=";" THEN GOTO 5565
5535 LET E$=E$+G$
5540 GOTO 5515
5545 LET V$(H)=E$
5550 LET E$=""
5555 GOTO 5510
5565 LET H=H-1
5570 RETURN
9000 CLS
9010 CLEAR
9020 SAVE "TAX %1"
9030 RUN
Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.



