10 F0N=1 1000 CLEAR ,,5120 1001 DIM ANSWER$(750),A1$(6,15),A$(14),ITEM(14),C$(14):CHO$="Choose one of the numbers in the following question:":F0N=1:GENNUM=1:GENNUM$=" " 1002 GOTO 1003:OPEN "I",2,"GENFIL":LINE INPUT #2, GENNUM$:LINE INPUT #2, PRONUM$:LINE INPUT #2, PROMAX$:LINE INPUT #2, PRONAM$:GENNUM=VAL(GENNUM$):PRONUM=VAL(PRONUM$):PROMAX=VAL(PROMAX$):IF GENNUM! > 1! THEN AUTINP=1:GOTO 1023 1003 ANS0=0:ANSNUM=0:NUMANS=0:CLS :PRINT : PRINT SPC(16);:PRINT "Human-Language Programming Language (New) 2012" 1004 PRINT :PRINT "Instruction: You can write a program by answering questions in HUMAN LANGUAGE.":PRINT :LOCATE 8,9:PRINT CHO$:LOCATE 10,7:PRINT "(1) Write a new program.":LOCATE 12,7:PRINT "(2) Modify an existing program." 1005 LOCATE 14,7:PRINT "(3) Generate a full program with more than one set of source code.":LOCATE 17,7:PRINT "(4) Exit.":LOCATE 23,15:PRINT "Choose one of the above"; 1006 A$=INKEY$:IF A$ = "" THEN LOCATE 23,41:PRINT "[_]";:GOTO 1006 1007 ON VAL(A$) GOTO 1015,1015,1015,19170 1015 CLS :LOCATE 3,1:PRINT "What is the name of your program ?":LINE INPUT PRONAM$:IF PRONAM$ = "" THEN GOTO 1015 ELSE IF A$ <> "3" THEN GOTO 1017 1016 PRINT :PRINT "What is the starting source code number ?":LINE INPUT PRONUM$:PRINT :PRINT "What is the ending source code number ?":LINE INPUT PROMAX$:AUTINP=1:PRONUM=VAL(PRONUM$):PROMAX=VAL(PROMAX$):GOTO 1023 1017 PRINT :PRINT "Instructions:":PRINT "At any of the multiple-choice questions, you can type the BACKSPACE key to eraseanswers to the beginning of the last set, the Del key to delete to the end of"; 1018 PRINT "the set. You can type the Ins key to enter the INSERT mode and terminate theINSERT mode by typing the Ins key again." 1019 PRINT "If you are modifying an existing program, the answers for the program will beoutputted after each question. You can leave these answers unchanged (defaultinput) by type the key." 1020 PRINT "You can also type at the multiple-choice question with a * (and a beep):" 1021 PRINT "A = To automatically typing key (to auto-generate of auto-update). Type [F1] key to make an emergency stop in this auto-inputing mode." 1022 CLOSE :PRINT :IF A$ = "1" THEN PRINT "WARNING: You will erase the existing file with the same name, if you save it.":ABAS$=".BAS":CLOSE :OPEN "O",1,PRONAM$+GENNUM$+ABAS$:GOTO 1029 1023 GOSUB 1025:GOSUB 1028:GOTO 1029 1024 FREBYT=FRE(0):LOCATE 25,1:PRINT "Address=";:PRINT ADDRES+1;:PRINT "; Program=";:PRINT PRONAM$+PRONUM$;:PRINT "; Generation=";:PRINT GENNUM;:PRINT "; Free bytes=";:PRINT FREBYT;:PRINT "; Answer#=";:PRINT ANSNUM;:PRINT "":RETURN 1025 CLOSE :OPEN "I",1,PRONAM$+PRONUM$:K=0 1026 IF EOF(1) THEN NUMANS=NUMANS+K:K=0:CLOSE 1:RETURN 1027 K=K+1:LINE INPUT #1, ANSWER$(K):GOTO 1026 1028 CLOSE :ABAS$=".BAS":VALPRO=VAL(PRONUM$):IF VALPRO! >= 2! THEN OPEN "A",1,PRONAM$+GENNUM$+ABAS$:RETURN ELSE OPEN "O",1,PRONAM$+GENNUM$+ABAS$:RETURN 1029 LOCATE 23,1:PRINT CHO$:QUESTI$="(1) Print to screen and printer; Input; (2) Calculate; (3) Branching to a new address; Branching based on logical conditions; (4)Construct Files; (5) Program Generation; Update; Documentation; (6) Exit and Save ?" 1030 ON KEY(1) GOSUB 1035 1031 KEY (1) ON 1032 GOSUB 1024:IF AUTINP = 0 THEN PRINT "******************************************************************************"; 1033 KEY (1) STOP 1034 GOTO 1037 1035 AUTINP=0:KEY (1) OFF 1036 RETURN 1030 1037 Q$=QUESTI$:GOSUB 1040:AN=ANSNUM:ACHR7$=CHR$(7):IF RIGHT$(ANSWER$(ANSNUM),1) <> ACHR7$ THEN ANSWER$(ANSNUM)=ANSWER$(ANSNUM)+ACHR7$ 1038 ON A1 GOTO 10000,12000,13000,14000,18000,19000 1039 GOTO 1030 1040 ANSNUM=ANSNUM+1:K1=0:IF LEFT$(ANSWER$(ANSNUM),1) = "+" THEN PRINT ANSWER$(ANSNUM):RETURN 1030 1041 IF AUTINP = 0 THEN PRINT Q$:GOTO 1043 1042 IF ANSNUM+3 = NUMANS THEN PRINT Q$ 1043 IF ANSNUM! <= NUMANS! AND INSKEY! = 0! THEN PRINT ANSWER$(ANSNUM) 1044 IF AUTINP! = 1! AND ANSNUM+5! <= NUMANS! THEN GOTO 1057 1045 IF PRONUM! > 0! AND PRONUM! < PROMAX! THEN PRONUM=PRONUM+1:PRONUM$=STR$(PRONUM):LENPRO=LEN(PRONUM$):PROLEN=LENPRO-1:PRONUM$=RIGHT$(PRONUM$,PROLEN):ANS0=0:ANSNUM=0:NUMANS=0:GOTO 1023 ELSE GOTO 1058 1046 PRINT "_";:A1$=CHR$(29):PRINT A1$;:A$=INKEY$:IF A$ = "" THEN GOTO 1046 1047 IF CHR! <> 1! THEN GOTO 1049 1048 IF A$ <> CHR$(13) THEN ANSWER$(ANSNUM)=A$:RETURN ELSE RETURN 1049 IF A$ = "A" OR A$ = "a" THEN AUTINP=1:GOTO 1057 1050 IF A$ = CHR$(8) THEN GOTO 1067 1051 IF A$ = CHR$(0) + CHR$(82) AND INSKEY! = 1! THEN INSKEY=0:ANSWER$(ANSNUM)=FIRANS$:GOTO 1041 1052 IF A$ = CHR$(0) + CHR$(82) THEN INSKEY=1:FIRANS$=ANSWER$(ANSNUM):GOTO 1041 1053 IF A$ = CHR$(0) + CHR$(83) THEN GOTO 1075 1054 IF A$ <> CHR$(13) THEN ANSWER$(ANSNUM)=A$ 1055 PRINT A$ 1057 A1=VAL(ANSWER$(ANSNUM)):GOTO 1061 1058 IF ANSNUM+4! >= NUMANS AND PRONUM! <> 0! AND PRONUM! = PROMAX! AND VAL(ANSWER$(ANSNUM+2)) = 5! THEN GOTO 1060 1059 AUTINP=0:GOTO 1046 1060 PRONUM$="1":GENNUM=GENNUM+1:GENNEW$=STR$(GENNUM):GENLEN=LEN(GENNEW$):GENLEN=GENLEN-1:GENNEW$=RIGHT$(GENNEW$,GENLEN):OPEN "O",2,"GENFIL":PRINT #2,GENNEW$:PRINT #2,PRONUM$:PRINT #2,PROMAX$:PRINT #2,PRONAM$:CLOSE :GOTO 19124 1061 IF INSKEY = 1 THEN INSNUM=1:GOTO 1071 1062 RETURN 1066 RIGANS$=RIGHT$(ANSWER$(ANSNUM),1):IF RIGANS$ = CHR$(7) THEN GOTO 1041 ELSE ANSNUM=ANSNUM+1:GOTO 1066 1067 K1=0:ANSNUM=ANSNUM-1:PRINT "You have backspaced:";:PRINT ANSWER$(ANSNUM):RIGANS$=RIGHT$(ANSWER$(ANSNUM),1):IF RIGANS$ = CHR$(7) THEN A$=CHR$(7) 1068 K1=K1+1:ANSWER$(ANSNUM+K1-1)=ANSWER$(ANSNUM+K1) 1069 IF NUMANS-ANSNUM >= K1-1 THEN GOTO 1068 ELSE NUMANS=NUMANS-1 1070 IF A$ = CHR$(7) THEN GOTO 1041 ELSE GOTO 1067 1071 K1=0:PRINT "You are in the Insert mode." 1072 K1=K1+1:ANSWER$(NUMANS-K1+1+INSNUM)=ANSWER$(NUMANS-K1+1) 1073 IF NUMANS-ANSNUM >= K1+1 THEN GOTO 1072 ELSE NUMANS=NUMANS+INSNUM 1074 RETURN 1075 K1=0:PRINT "You have deleted:";:PRINT ANSWER$(ANSNUM):LEFANS$=LEFT$(ANSWER$(ANSNUM),1):IF LEFANS$ = "+" THEN A$="+" 1076 K1=K1+1:ANSWER$(ANSNUM+K1-1)=ANSWER$(ANSNUM+K1) 1077 IF NUMANS-ANSNUM >= K1 THEN GOTO 1076 ELSE NUMANS=NUMANS-1 1078 IF A$ = "+" THEN GOTO 1041 ELSE GOTO 1075 1080 K=K+1:ANSNUM=ANSNUM+1:IF AUTINP = 0! THEN PRINT Q$:PRINT "(To terminate type + key and .)":IF ANSNUM <= NUMANS AND INSKEY = 0 THEN PRINT ANSWER$(ANSNUM) 1081 IF AUTINP = 1! AND ANSNUM < NUMANS THEN PRINT ANSWER$(ANSNUM):GOTO 1083 1082 LINE INPUT A$:IF A$ <> "" THEN ANSWER$(ANSNUM)=A$ ELSE A$="" 1083 IF ANSWER$(ANSNUM) = "+" THEN ASTR$=STR$(K):ANSWER$(ANSNUM)=ANSWER$(ANSNUM)+ASTR$ 1084 IF INSKEY = 1! THEN GOSUB 1061 1085 IF ONEINP=1 THEN ONEINP=0:RETURN 1086 LEFANS$=LEFT$(ANSWER$(ANSNUM),1):IF LEFANS$ = "+" THEN RETURN ELSE GOTO 1080 1088 Q$="Input the ANSWER$(ANSNUM) for the chosen item above (The needed number of answers is indicated by the number following the item) ?":RETURN 1089 CLOSE 5:ABAS$=".BAS":OPEN "A",2,PRONAM$+PRONUM$+ABAS$:RETURN 1105 CLOSE 5:ABAK$=".BAK":OPEN "O",2,PRONAM$+PRONUM$+ABAK$:GOSUB 19107:RETURN 1200 ONEINP=1:GOSUB 1080:IF LEFT$(ANSWER$(ANSNUM),1) = "+" THEN RETURN 1030 ELSE RETURN 1210 AVAL1$="0":GOTO 1218 1211 AVAL1$="1":GOTO 1218 1212 AVAL1$="2":GOTO 1218 1213 AVAL1$="3" 1218 ANSNUM=ANSNUM+1:ANSWER$(ANSNUM)="+":ANSWER$(ANSNUM)=ANSWER$(ANSNUM)+AVAL1$:GOTO 1084 1300 Q$="What is your statement ?" 1301 RETURN 1310 Q$="What is your variable or constant (variables for statements must end with $) ?" 1311 RETURN 1312 Q$="What is the variable or constant ?" 1313 RETURN 1320 Q$="What is the variable name (string variable must end wuth $) ?" 1321 RETURN 1330 Q$="What is the expression ?" 1331 RETURN 1340 Q$="What is your string variable (MUST END WITH $) ?" 1341 RETURN 1342 Q$="What is your numerical variable (must not end with $) ?" 1343 RETURN 1350 Q$="What is the number of the function key (F1-F10) ?" 1351 RETURN 1360 Q$="What is the line number ?" 1361 RETURN 1370 Q$="What is the file number ?" 1371 RETURN 1380 Q$="What is the file name (string variable must end with $) ?" 1381 RETURN 1390 Q$="What is the record length (Type for Default = 128) ?" 1391 RETURN 10000 Q$="1(1) Print on screen; (2) Print on paper (printer); (3) Input (values into variables); (4) Position print; (5) Trap a key; (6) Remark (Make non-executable comment) ?" 10001 GOSUB 1040 10002 ON A1 GOTO 10100,10200,10300,10400,10500,10600 10100 Q$="11(1) Print a statement on screen; (2) Print a statement on screen without a carriage return; (3) Print a variable or constant on screen; (4) Print a variable or constant without a carriage return; (5) Print a carriage return ?" 10101 GOSUB 1040 10102 K=-1 10103 ON A1 GOTO 10110,10120,10130,10140,10150 10104 GOTO 1030 10110 GOSUB 1300:GOSUB 1200:GOSUB 1211 10111 GOSUB 64480 10112 GOTO 1030 10120 GOSUB 1300:GOSUB 1200:GOSUB 1211 10121 GOSUB 64490 10122 GOTO 1030 10130 GOSUB 1310:GOSUB 1200:GOSUB 1211 10131 GOSUB 64500 10132 GOTO 1030 10140 GOSUB 1310:GOSUB 1200:GOSUB 1211 10141 GOSUB 64510 10142 GOTO 1030 10150 GOSUB 1210 10151 GOSUB 62610 10152 GOTO 1030 10200 Q$="12(1) Print a statement on paper; (2) Print a statement on paper without a carriage return; (3) Print a variable or constant on paper; (4) Print a variableor constant without a carriage return; (5) Print a carriage return ?" 10201 GOSUB 1040 10202 K=-1 10203 ON A1 GOTO 10210,10220,10230,10240,10250 10204 GOTO 1030 10210 GOSUB 1300:GOSUB 1200:GOSUB 1211 10211 GOSUB 63730 10212 GOTO 1030 10220 GOSUB 1300:GOSUB 1200:GOSUB 1211 10221 GOSUB 63740 10222 GOTO 1030 10230 GOSUB 1310:GOSUB 1200:GOSUB 1211 10231 GOSUB 63750 10232 GOTO 1030 10240 GOSUB 1310:GOSUB 1200:GOSUB 1211 10241 GOSUB 63760 10242 GOTO 1030 10250 GOSUB 1210 10251 GOSUB 62611 10252 GOTO 1030 10300 Q$="13(1) (Question to) Input (into a variable); (2) Input one-key without carriage return; (3) Input a line up to 256 characters even with commas; (4) Read Data; (5) Read a character input from keyboard ?" 10301 GOSUB 1040 10302 K=-1 10303 ON A1 GOTO 10310,10320,10330,10340,10350 10304 GOTO 1030 10310 GOSUB 1320:GOSUB 1080 10311 GOSUB 63220 10312 GOTO 1030 10320 GOSUB 1340:GOSUB 1200:GOSUB 1211 10321 GOSUB 63170 10322 GOTO 1030 10330 GOSUB 1340:GOSUB 1200:GOSUB 1211 10331 GOSUB 63550 10332 GOTO 1030 10340 GOSUB 1320:GOSUB 1080 10341 GOSUB 64630 10342 GOTO 1030 10350 GOSUB 1340:GOSUB 1200:GOSUB 1211 10351 GOSUB 63160 10352 GOTO 1030 10400 Q$="14(1) Clear screen; (2) Position printing on screen; (3) Skip horizontal spaces ?" 10401 GOSUB 1040 10402 K=-1 10403 ON A1 GOTO 10410,10420,10430 10404 GOTO 1030 10410 GOSUB 1210 10411 GOSUB 62170 10412 GOTO 1030 10420 Q$="What is the vertical position on screen ?":GOSUB 1200:Q$="What is the horizontal position ?":GOSUB 1200:GOSUB 1212 10421 GOSUB 63660 10422 GOTO 1030 10430 Q$="How many spaces ?":GOSUB 1200:GOSUB 1211 10431 GOSUB 64880 10432 GOTO 1030 10500 Q$="15(1) Enable trapping of a function key; (2) Disable the trapping; (3) Remember a trapping; (4) Branch to a subroutine when trapping key is pressed ?" 10501 GOSUB 1040 10502 K=-1 10503 ON A1 GOTO 10510,10520,10530,10540 10504 GOTO 1030 10510 GOSUB 1350:GOSUB 1200:GOSUB 1211 10511 GOSUB 63430 10512 GOTO 1030 10520 GOSUB 1350:GOSUB 1200:GOSUB 1211 10521 GOSUB 63440 10522 GOTO 1030 10530 GOSUB 1350:GOSUB 1200:GOSUB 1211 10531 GOSUB 63450 10532 GOTO 1030 10540 GOSUB 1350:GOSUB 1200:GOSUB 1360:GOSUB 1200:GOSUB 1212 10541 GOSUB 64180 10542 GOTO 1030 10600 Q$="16(1) Make a nonexecutable remark ?" 10601 GOSUB 1040 10602 K=-1 10603 ON A1 GOTO 10610 10604 GOTO 1030 10610 Q$="What is your nonexecutable remark ?":GOSUB 1200:GOSUB 1211 10611 GOSUB 64640 10612 GOTO 1030 12000 Q$="2(1) Assign values to variables, set number of variables, clear variables; (2) Numerical Statement; (3) String Statement ?" 12001 GOSUB 1040 12002 ON A1 GOTO 12100,12200,12300 12100 Q$="21(1) Let a variable equal to an expression; (2) Let a string variable equal to a statement; (3) Specify items in array variables; (4) Clear all variables (and set sizes of workspace and stackspace) ?" 12101 GOSUB 1040 12102 K=-1 12103 ON A1 GOTO 12110,12120,12130,12140 12104 GOTO 1030 12110 GOSUB 1320:GOSUB 1200:GOSUB 1330:GOSUB 1200:GOSUB 1212 12111 GOSUB 63510 12112 GOTO 1030 12120 GOSUB 1340:GOSUB 1200:GOSUB 1300:GOSUB 1200:GOSUB 1212 12121 GOSUB 63520 12122 GOTO 1030 12130 Q$="Input variables and their numbers one item at a time ?" 12131 GOSUB 1080 12132 GOSUB 62420 12133 GOTO 1030 12140 Q$="What is the size of the program workspace (Type for default) ?":GOSUB 1200:Q$="What is the size of the stack space (Type for default = 512) ?":GOSUB 1200:GOSUB 1212 12141 GOSUB 62150 12142 GOTO 1030 12200 Q$="22(1) Return numerical value of string variable; (2) length of string variable; (3) Return unused memory ?" 12201 GOSUB 1040 12202 K=-1 12203 ON A1 GOTO 12210,12220,12230 12204 GOTO 1030 12210 GOSUB 1320:GOSUB 1200:GOSUB 1340:GOSUB 1200:GOSUB 1212 12211 GOSUB 65160 12212 GOTO 1030 12220 GOSUB 1320:GOSUB 1200:GOSUB 1340:GOSUB 1200:GOSUB 1212 12221 GOSUB 63480 12222 GOTO 1030 12230 GOSUB 1320:GOSUB 1200:GOSUB 1211 12231 GOSUB 62620 12232 GOTO 1030 12300 Q$="23(1) Return a string of the leftmost n characters of a string variable; (2) Return the rightmost n characters of a string variable; (3) Return ASCII equivalent character; (4) Convert numerical to string; (5) Variable=``+'' ?" 12301 GOSUB 1040 12302 K=-1 12303 ON A1 GOTO 12310,12320,12330,12340,12350 12304 GOTO 1030 12310 Q$="What is variable to represent the new string ?":GOSUB 1200:GOSUB 1340:GOSUB 1200:Q$="How many characters ?":GOSUB 1200:GOSUB 1213 12311 GOSUB 63470 12312 GOTO 1030 12320 Q$="What is the variable for the new string ?":GOSUB 1200:GOSUB 1340:GOSUB 1200:Q$="How many characters (n) ?":GOSUB 1200:GOSUB 1213 12321 GOSUB 64720 12322 GOTO 1030 12330 GOSUB 1320:GOSUB 1200:GOSUB 1320:GOSUB 1200:GOSUB 1212 12331 GOSUB 62120 12332 GOTO 1030 12340 GOSUB 1320:GOSUB 1200:GOSUB 1320:GOSUB 1200:GOSUB 1212 12341 GOSUB 64950 12342 GOTO 1030 12350 GOSUB 1340:GOSUB 1200:GOSUB 1211 12351 GOSUB 62853 12352 GOTO 1030 12400 GOTO 1030 12500 GOTO 1030 12600 GOTO 1030 13000 Q$="3(1) Conditional branching(IF.THEN.ELSE.); (2) Branch to an address,return,etc.;(3) Repeat operations-loop(For-Next); (4) Condition operators; (5) Arithematic; (6) Logic operators; (7) Numerical function; (8) String fn ?" 13001 GOSUB 1040 13002 ON A1 GOTO 13100,13200,13300,13400,13500,13600,13700,13800 13003 GOTO 1030 13100 Q$="31(1) Initiate If...Then...Else construction (start writing conditions); (2) Terminate conditions (start writing actions when condition is true); (3) Terminate actions (start writing actions when false);(4) Final termination?" 13101 GOSUB 1040 13102 K=-1 13103 ON A1 GOTO 13110,13120,13130,13140 13104 GOTO 1030 13110 GOSUB 1210 13111 GOSUB 63110 13112 PRINT "You are constructing conditions." 13113 GOTO 1030 13120 GOSUB 1210 13121 GOSUB 63120 13122 PRINT "Constructing actions for conditions being true." 13123 GOTO 1030 13130 GOSUB 1210 13131 GOSUB 63130 13132 PRINT "Constructing conditions for conditions being false." 13133 GOTO 1030 13140 GOSUB 1210 13141 GOSUB 63140 13142 PRINT "IF...THEN terminated." 13143 GOTO 1030 13200 Q$="32(1) Execute a subroutine and return to branch point; (2) Branch back; (3) backto a line; (4) Go to an address; (5) Jump to new line; (6)Branch to one of manysubroutines; (7) Branch to one of many lines;(8)Chain to anther program;(9)End ?" 13201 GOSUB 1040 13202 K=-1 13203 ON A1 GOTO 13210,13220,13230,13240,13250,13260,13270,13280,13290 13204 GOTO 1030 13210 GOSUB 1360:GOSUB 1200:GOSUB 1211 13211 GOSUB 62660 13212 GOTO 1030 13220 GOSUB 1210 13221 GOSUB 64700 13222 GOTO 1030 13230 GOSUB 1360:GOSUB 1200:GOSUB 1211 13231 GOSUB 65350 13232 GOTO 1030 13240 GOSUB 1360:GOSUB 1200:GOSUB 1211 13241 GOSUB 62680 13242 GOTO 1030 13250 GOSUB 1360:GOSUB 1200:GOSUB 1211 13251 GOSUB 62990 13252 GOTO 1030 13260 Q$="Input a numerical variable (not end with $) and then line numbers starting from the second question ?":GOSUB 1080 13261 GOSUB 64160 13262 GOTO 1030 13270 Q$="Input a variable (not end with $) and then line numbers starting from the secondquestion ?":GOSUB 1080 13271 GOSUB 64170 13272 GOTO 1030 13280 Q$="What program to go to and execute ?":GOSUB 1200:GOSUB 1211 13281 GOSUB 62090 13282 GOTO 1030 13290 GOSUB 1210 13291 GOSUB 62450 13292 GOTO 1030 13300 Q$="33(1) Repeat execution a number of times (initiate a loop); (2) End the loop ?" 13301 GOSUB 1040 13302 K=-1 13303 ON A1 GOTO 13310,13320 13304 GOTO 1030 13310 GOSUB 1320:GOSUB 1200:Q$="What is the starting number ?":GOSUB 1200:Q$="What is the final number ?":GOSUB 1200:Q$="What is the step size ?":GOSUB 1200:AVAL1$="4":GOSUB 1218 13311 GOSUB 62600 13312 GOTO 1030 13320 GOSUB 1210 13321 GOSUB 64120 13322 GOTO 1030 13400 Q$="34(1) Variable(AS IS input); (2)Interger number or variable;(3)Single precision;(4) Double precision; (5) String statement or constant; (6) Equal(=); (7) Greater(>); (8) less(<); (9) Null string ?" 13401 GOSUB 1040 13402 K=-1 13403 ON A1 GOTO 13410,13420,13430,13440,13450,13460,13470,13480,13490 13404 GOTO 1030 13410 GOSUB 1310:GOSUB 1200:GOSUB 1211 13411 GOSUB 62700 13412 GOTO 1030 13420 GOSUB 1312:GOSUB 1200:GOSUB 1211 13421 GOSUB 62710 13422 GOTO 1030 13430 GOSUB 1312:GOSUB 1200:GOSUB 1211 13431 GOSUB 62720 13432 GOTO 1030 13440 GOSUB 1312:GOSUB 1200:GOSUB 1211 13441 GOSUB 62730 13442 GOTO 1030 13450 GOSUB 1300:GOSUB 1200:GOSUB 1211 13451 GOSUB 62740 13452 GOTO 1030 13460 GOSUB 1210 13461 GOSUB 62750 13462 GOTO 1030 13470 GOSUB 1210 13471 GOSUB 62760 13472 GOTO 1030 13480 GOSUB 1210 13481 GOSUB 62770 13482 GOTO 1030 13490 GOSUB 1210 13491 GOSUB 65340 13492 GOTO 1030 13500 Q$="35(1) Exp[^]; (2) Integer div.[\]; (3) MOD; (4) Unequal[<>];(5) Less or = [<=]; (6) Greater or = [>=]; (7) ``Plus''(``+''); (8) PLUS(+) ?" 13501 GOSUB 1040 13502 K=-1 13503 GOSUB 1210 13504 ON A1 GOTO 13510,13520,13530,13540,13550,13560,13570,13580 13505 GOTO 1030 13510 GOSUB 62780 13511 GOTO 1030 13520 GOSUB 62790 13521 GOTO 1030 13530 GOSUB 62810 13531 GOTO 1030 13540 GOSUB 62810 13541 GOTO 1030 13550 GOSUB 62820 13551 GOTO 1030 13560 GOSUB 62830 13561 GOTO 1030 13570 GOSUB 62850 13571 GOTO 1030 13580 GOSUB 65330 13581 GOTO 1030 13600 Q$="36(1) NOT; (2) AND; (3) OR; (4) XOR; (5) EQV; (6) IMP; (7) (; (8) ) ?" 13601 GOSUB 1040 13602 K=-1 13603 ON A1 GOTO 13610,13620,13630,13640,13650,13660,13670,13680 13604 GOTO 1030 13610 GOSUB 1210 13611 GOSUB 62860 13612 GOTO 1030 13620 GOSUB 1210 13621 GOSUB 62870 13622 GOTO 1030 13630 GOSUB 1210 13631 GOSUB 62880 13632 GOTO 1030 13640 GOSUB 1210 13641 GOSUB 62890 13642 GOTO 1030 13650 GOSUB 1210 13651 GOSUB 62900 13652 GOTO 1030 13660 GOSUB 1210 13661 GOSUB 62910 13662 GOTO 1030 13670 GOSUB 1210 13671 GOSUB 62920 13672 GOTO 1030 13680 GOSUB 1210 13681 GOSUB 62930 13682 GOTO 1030 13700 Q$="37(1) Return numerical value of string variable; (2) length of string variable; (3) Return unused memory ?" 13701 GOSUB 1040 13702 K=-1 13703 ON A1 GOTO 13710,13720,13730 13704 GOTO 1030 13710 GOSUB 1340:GOSUB 1200:GOSUB 1211 13711 GOSUB 65161 13712 GOTO 1030 13720 GOSUB 1340:GOSUB 1200:GOSUB 1211 13721 GOSUB 63481 13722 GOTO 1030 13730 GOSUB 1320:GOSUB 1200:GOSUB 1211 13731 GOSUB 62621 13732 GOTO 1030 13800 Q$="38(1) Return a string of the leftmost n characters of a string variable; (2) Return the rightmost n characters of a string variable; (3) Return ASCII equivalent character; (4) Convert numerical to string ?" 13801 GOSUB 1040 13802 K=-1 13803 ON A1 GOTO 13810,13820,13830,13840 13804 GOTO 1030 13810 GOSUB 1340:GOSUB 1200:Q$="How many characters ?":GOSUB 1200:GOSUB 1212 13811 GOSUB 63471 13812 GOTO 1030 13820 GOSUB 1340:GOSUB 1200:Q$="How many characters (n) ?":GOSUB 1200:GOSUB 1212 13821 GOSUB 64721 13822 GOTO 1030 13830 GOSUB 1320:GOSUB 1200:GOSUB 1211 13831 GOSUB 62121 13832 GOTO 1030 13840 GOSUB 1320:GOSUB 1200:GOSUB 1211 13841 GOSUB 64951 13842 GOTO 1030 14000 Q$="4(1) Open and close file; (2) Input into variable (in memory); (3) Output to disk; (4) Designate end of file records ?" 14001 GOSUB 1040 14002 ON A1 GOTO 14100,14200,14300,14400 14003 GOTO 1030 14100 Q$="41(1) Open file for sequential Output(or variable mode); (2) Open file for sequential Input; (3) Open Random I/O; (4) Open Append; (5) Close file# ?" 14101 GOSUB 1040 14102 K=-1 14103 ON A1 GOTO 14110,14120,14130,14140,14150 14104 GOTO 1030 14110 GOSUB 1370:GOSUB 1200:GOSUB 1380:GOSUB 1200:GOSUB 1390:GOSUB 1200:GOSUB 1213 14111 GOSUB 64240 14112 GOTO 1030 14120 GOSUB 1370:GOSUB 1200:GOSUB 1380:GOSUB 1200:GOSUB 1390:GOSUB 1200:GOSUB 1213 14121 GOSUB 64250 14122 GOTO 1030 14130 GOSUB 1370:GOSUB 1200:GOSUB 1380:GOSUB 1200:GOSUB 1390:GOSUB 1200:GOSUB 1213 14131 GOSUB 64260 14132 GOTO 1030 14140 GOSUB 1370:GOSUB 1200:GOSUB 1380:GOSUB 1200:GOSUB 1390:GOSUB 1200:GOSUB 1213 14141 GOSUB 64270 14142 GOTO 1030 14150 GOSUB 1370:GOSUB 1200:GOSUB 1211 14151 GOSUB 62160 14152 GOTO 1030 14200 Q$="42(1) Input records (into variables in memory); (2) Input maximum 256 character line ?" 14201 GOSUB 1040 14202 K=-1 14203 ON A1 GOTO 14210,14220 14204 GOTO 1030 14210 Q$="Input the file # and starting from the second question variable names ?":GOSUB 1080 14211 GOSUB 63260 14212 GOTO 1030 14220 GOSUB 1370:GOSUB 1200:GOSUB 1320:GOSUB 1200:GOSUB 1212 14221 GOSUB 63610 14222 GOTO 1030 14300 Q$="43(1) Print data into a specified file; (2) Write data to a specified sequentialfile (with commas and delimiter separate data) ?" 14301 GOSUB 1040 14302 K=-1 14303 ON A1 GOTO 14310,14320 14304 GOTO 1030 14310 Q$="Input the file number; starting from the second question input variable names ?" 14311 GOSUB 1080 14312 GOSUB 64560 14313 GOTO 1030 14320 Q$="Input file number and starting from the second question the variable name ?" 14321 GOSUB 1080 14322 GOSUB 65320 14323 GOTO 1030 14400 Q$="44(1) Designate an end of file condition ?" 14401 GOSUB 1040 14402 K=-1 14403 ON A1 GOTO 14410 14404 GOTO 1030 14410 GOSUB 1370:GOSUB 1200:GOSUB 1211 14411 GOSUB 62480 14412 GOTO 1030 18000 Q$="5(1) Set flag for Generation; Continuation; Update; Documentation; (2) Initiate Program Generation ?" 18001 GOSUB 1040 18002 ON A1 GOTO 18100,18200 18100 Q$="51(1) Generate one generating instruction; (2) Continue under one address; (3) Generate Update Program; (4) Generate Documentation Program; (5) Terminate and return to normal (Auto numbering) ?" 18101 GOSUB 1040:K=-1:GOSUB 1210 18102 ON A1 GOTO 18110,18120,18130,18140,18150 18103 GOTO 1030 18110 GOSUB 61210 18111 GOTO 1030 18120 GOSUB 61220 18121 GOTO 1030 18130 GOSUB 61270 18131 GOTO 1030 18140 GOSUB 61280 18141 GOTO 1030 18150 GOSUB 61290 18151 GOTO 1030 18200 Q$="52(1)Generate a full Instruction Generating Set(input file name and file number)(2) Create an Instruction Generating Set(must be done once before the full set can be accessed); (3) Cancel the process ?" 18201 GOSUB 1040 18202 K=-1 18203 ON A1 GOTO 18220,18230,18240 18204 GOTO 1030 18220 GOSUB 1380:GOSUB 1200:GOSUB 1370:GOSUB 1200:GOSUB 1212 18221 GOSUB 65400 18222 GOTO 1030 18230 GOSUB 1380:GOSUB 1200:GOSUB 1211 18231 GOSUB 65410 18232 GOTO 1030 18240 GOTO 1030 19000 Q$="6(1) Exit and Save; (2) Chain back to current program ?" 19001 GOSUB 1040 19002 ON A1 GOTO 19100,19200 19003 GOTO 1030 19100 PRINT "61(1) Go to program, ";:PRINT PRONAM$+GENNUM$;:PRINT ", and save; (2) Go to program, ";:PRINT PRONAM$+GENNUM$;:PRINT ", and not save;" 19101 PRINT "(3) Rename and save; (4) Append a specification file; (5) Go to an application; (6) Stop and save; (7) Stop without saving; (8) Restart and save ; (9) Exit ?" 19102 Q$="":GOSUB 1040:K=-1 19103 ON A1 GOTO 19110,19120,19130,19140,19150,19160,19170,19180,19164 19104 GOTO 1030 19105 CLOSE :NUMANS=ANSNUM 19106 OPEN "O",2,PRONAM$+PRONUM$ 19107 FOR K=1 TO NUMANS STEP 1:PRINT #2,ANSWER$(K):NEXT :CLOSE 2:RETURN 19110 K=ADDRES 19111 GOSUB 1210 19112 GOSUB 61910 19113 IF K! < ADDRES! THEN GOTO 1030 19114 GOSUB 1210 19115 GOSUB 62080 19116 GOSUB 19105 19117 GOTO 19124 19120 K=ADDRES 19121 GOSUB 1210 19122 GOSUB 61920 19123 IF K! < ADDRES! THEN GOTO 1030 19124 CLS 19125 CHAIN PRONAM$+GENNUM$ 19130 K=ADDRES 19131 GOSUB 1210 19132 GOSUB 61930 19133 IF K! < ADDRES! THEN GOTO 1030 19134 PRINT "What is the new file name to be saved in ?" 19135 LINE INPUT PRONAM$ 19136 PRONUM$="" 19137 GOSUB 19105 19138 PRINT "The program you have created is `";:PRINT PRONAM$;:PRINT "'." 19139 GOTO 19000 19140 K=ADDRES 19141 GOSUB 1210 19142 GOSUB 61940 19143 IF K! < ADDRES! THEN GOTO 1030 19144 PRINT "What is the file to be appended to this specification file ?":LINE INPUT A$ 19145 CLOSE :OPEN "I",1,A$ 19146 ANSNUM=ANSNUM-1:LEFANS$=LEFT$(ANSWER$(ANSNUM),1):IF LEFANS$ <> "+" THEN GOTO 19146 19147 IF EOF(1) THEN GOTO 19137 19148 ANSNUM=ANSNUM+1:LINE INPUT #1, ANSWER$(ANSNUM):GOTO 19147 19150 K=ADDRES 19151 GOSUB 1210 19152 GOSUB 61950 19153 IF K! < ADDRES! THEN GOTO 1030 19154 PRINT "What application program do you want to go to ?" 19155 LINE INPUT A$ 19156 GOSUB 19105 19157 CLS 19158 CHAIN A$ 19160 K=ADDRES 19161 GOSUB 1210 19162 GOSUB 61960 19163 IF K! < ADDRES! THEN GOTO 1030 19164 GOSUB 19105 19170 CLOSE 19171 END 19180 K=ADDRES 19181 GOSUB 1210 19182 GOSUB 61980 19183 IF K! < ADDRES! THEN GOTO 1030 19184 GOSUB 19105 19185 GOTO 1002 19186 END 19200 Q$="62(1) Chain back to current program ?" 19201 GOSUB 1040 19202 ON A1 GOTO 19210 19203 GOTO 1030 19210 GOSUB 1210 19211 GOSUB 62080 19212 GOTO 1030 60000 REM 61000 IF FLANUM>1 OR ITEM(LEVEL)>0 OR LEVEL>0 THEN 61061 ELSE ADDRES=ADDRES+1:ADDRES$=STR$(ADDRES+ADDCHA):GOTO 61011 61007 SUMNUM=0 61009 GOSUB 61000:RETURN 61011 IF FLANUM=1 OR FLANUM=6 THEN PRINT# F0N, ADDRES$+" GOSUB "+STR$(MISNUM):GOSUB 61041:PRINT "A program generating statement has been generated !":FLANUM=0:RETURN 61031 IF G$="" THEN RETURN ELSE 61051 61041 PRINT "(Answer ";ANSNUM;" Address=";ADDRES;")":SUMVAR$="":G$="":RETURN 61042 GOSUB 61041:LPRINT " (Answer ";ANSNUM;"; Address=";ADDRES;")":RETURN 61043 G$=G$+":LPRINT "+CHR$(34)+"(Answer# ="+CHR$(34)+";ANSNUM;"+CHR$(34)+" Address ="+CHR$(34)+";ADDRES;"+CHR$(34)+")"+CHR$(34):RETURN 61051 IF ADDSET=1 THEN ADDRES$="" 61052 IF FLANUM=0 AND ITEM(LEVEL)=0 AND LEVEL=0 THEN PRINT# F0N, ADDRES$+" "+G$:GOSUB 61041:RETURN 61061 IF FLANUM=7 OR UPDATE=1 THEN GOSUB 65510:RETURN 61062 IF FLANUM=8 OR DOC=1 THEN GOSUB 65520:RETURN 61063 IF FLANUM=6 THEN ADDRE$=ANSWER$(ANSNUM-1):GOTO 61011 61064 IF FLANUM=2 OR FLANUM=9 THEN ITEM(LEVEL)=ITEM(LEVEL)+1:ITEML=ITEM(LEVEL):A1$(LEVEL,ITEML)=G$ 61071 IF FLANUM=9 THEN C$=":" 61072 IF FLANUM<1 OR FLANUM=9 THEN GOSUB 61131:G$=SUMVAR$:ITEM(LEVEL)=0 ELSE RETURN 61073 IF LEVEL=0 AND FLANUM=9 THEN FLANUM=0:GOTO 61000 ELSE RETURN 61080 MISNUM=61080!:G$="":SUMNUM=VAL(ANSWER$(ANSNUM)):GOTO 61009 61101 K=1:SUMVAR$=A$(K):IF SUMNUM<2 THEN 61121 61111 K=K+1:SUMVAR$=SUMVAR$+C$+A$(K):PRINT SUMVAR$ 61121 IF K>SUMNUM-1 THEN RETURN ELSE 61111 61131 K=1:SUMVAR$=A1$(LEVEL,K):A1$(LEVEL,K)="":IF ITEM(LEVEL)<2 THEN 61151 61141 K=K+1:SUMVAR$=SUMVAR$+C$+A1$(LEVEL,K):A1$(LEVEL,K)="" 61151 IF K>ITEM(LEVEL)-1 THEN RETURN ELSE 61141 61200 MISNUM=61200!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=0:ADDSET=0:C$="":GOTO 61009 61210 MISNUM=61210!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=1:RETURN 61220 MISNUM=61220!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=2:RETURN 61230 MISNUM=61230!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=2:C$="":GOTO 61009 61240 MISNUM=61240!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE ADDSET=1:GOTO 61009 61250 MISNUM=61250!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=5:GOTO 61009 61260 MISNUM=61260!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=6:GOTO 61009 61270 MISNUM=61270!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=7:GOSUB 61291:GOSUB 65528:GOSUB 65526:GOTO 61009 61280 MISNUM=61280!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=8:GOSUB 61291:GOSUB 65527:GOSUB 65525:GOTO 61009 61290 MISNUM=61290!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=9:ADDSET=0 61291 IF FLANUM=0 THEN ANS0=ANSNUM 61294 IF FLANUM=7 THEN UPDATE=1 61295 IF FLANUM=8 THEN DOC=1 61296 IF DOC=1 OR UPDATE=1 THEN GOSUB 61000 61297 IF FLANUM=9 THEN 61071 61298 RETURN 61602 IF VAL(ANSWER$(ANSNUM))<>0 THEN ADDCHA=VAL(ANSWER$(ANSNUM))-ADDNUM ELSE ADDCHA=0 61604 RETURN 61910 MISNUM=61910!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61920 MISNUM=61920!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61930 MISNUM=61930!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61940 MISNUM=61940!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61950 MISNUM=61950!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61960 MISNUM=61960!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61970 MISNUM=61970!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 61980 MISNUM=61980!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE RETURN 62000 REM MISNUM=62000!:ON VAL(ANSWER$(ANSNUM)) GOSUB 62001,62002:GOSUB 61000:RETURN 62001 REM G$=" ABS("+ANSWER$(ANSNUM-1)+")":RETURN 62002 REM G$=ANSWER$(ANSNUM-2)+"=ABS("+ANSWER$(ANSNUM-1)+")":RETURN 62040 MISNUM=62040!:G$="BEEP":GOSUB 61000:RETURN 62080 MISNUM=62080!:G$="LOCATE 25,1: PRINT "+CHR$(34)+"Type the key to go to the main program..."+CHR$(34)+";:LINE INPUT A$:CHAIN "+CHR$(34)+"NEW"+CHR$(34):GOTO 61009 62090 MISNUM=62090!:ON VAL(ANSWER$(ANSNUM)) GOSUB 62091,62092,62093:GOTO 61009 62091 G$="CHAIN "+ANSWER$(ANSNUM-1):RETURN 62092 G$="CHAIN "+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1):RETURN 62093 G$="CHAIN "+ANSWER$(ANSNUM-3)+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1):RETURN 62120 MISNUM=62120!:ON VAL(ANSWER$(ANSNUM)) GOTO 62121,62122 62121 MISNUM=62121!:G$=" CHR$("+ANSWER$(ANSNUM-1)+")":GOTO 61009 62122 G$=ANSWER$(ANSNUM-2)+"=CHR$("+ANSWER$(ANSNUM-1)+")":GOTO 61009 62150 MISNUM=62150!:G$="CLEAR ":IF VAL(ANSWER$(ANSNUM))=1 THEN G$=G$+","+ANSWER$(ANSNUM-1):GOSUB 61000:RETURN 62151 IF VAL(ANSWER$(ANSNUM))=2 THEN G$=G$+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1) 62152 GOTO 61009 62160 MISNUM=62160!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="CLOSE ":IF ANSWER$(ANSNUM-1)="" OR LEFT$(ANSWER$(ANSNUM-1),1)=" " THEN 61007 62161 IF SUMNUM>0 THEN G$=G$+ANSWER$(ANSNUM-SUMNUM):FOR K=1 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 62162 GOTO 61007 62170 MISNUM=62170!:G$="CLS ":GOTO 61009 62230 REM MISNUM=62230!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="COMMON "+ANSWER$(ANSNUM-SUMNUM):IF SUMNUM>1 THEN FOR K=1 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 62231 REM SUMNUM=0:GOSUB 61000:RETURN 62240 REM MISNUM=62240!:G$="CONT ":GOTO 61009 62420 MISNUM=62420!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="DIM "+ANSWER$(ANSNUM-SUMNUM)+"("+ANSWER$(ANSNUM-SUMNUM+1):K=2 62421 IF SUMNUM<=K THEN G$=G$+")":GOTO 61007 62422 A$=ANSWER$(ANSNUM-SUMNUM+K):IF VAL(A$)=0 THEN G$=G$+"),"+A$+"("+ANSWER$(ANSNUM-SUMNUM+K+1):K=K+2 ELSE G$=G$+","+A$:K=K+1 62423 GOTO 62421 62450 MISNUM=62450!:G$=" END ":GOTO 61009 62480 MISNUM=62480!:ON VAL(ANSWER$(ANSNUM)) GOSUB 62481,62482:GOTO 61009 62481 G$=" EOF("+ANSWER$(ANSNUM-1)+")":RETURN 62482 G$=ANSWER$(ANSNUM-2)+"=EOF("+ANSWER$(ANSNUM-1)+")":RETURN 62550 MISNUM=62550!:ON VAL(ANSWER$(ANSNUM)) GOSUB 62551,62552:GOTO 61009 62551 G$=" EXP("+ANSWER$(ANSNUM-1)+")":RETURN 62552 G$=ANSWER$(ANSNUM-2)+"=EXP("+ANSWER$(ANSNUM-1)+")":RETURN 62560 MISNUM=62560!:GOTO 61009 62570 MISNUM=62570!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="FIELD "+ANSWER$(ANSNUM-SUMNUM)+", "+ANSWER$(ANSNUM-SUMNUM+1)+" AS "+ANSWER$(ANSNUM-SUMNUM+2):IF SUMNUM<4 THEN 62572 62571 FOR K=1 TO (SUMNUM-1)/2-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+2*K+1)+" AS "+ANSWER$(ANSNUM-SUMNUM+2*K+2):NEXT 62572 GOTO 61007 62600 MISNUM=62600!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 62601 SUMNUM=VAL(ANSWER$(ANSNUM)):G$="FOR "+ANSWER$(ANSNUM-SUMNUM)+"="+ANSWER$(ANSNUM-SUMNUM+1)+" TO "+ANSWER$(ANSNUM-SUMNUM+2):IF SUMNUM=4 THEN G$=G$+" STEP "+ANSWER$(ANSNUM-1) 62602 GOTO 61007 62610 MISNUM=62610!:G$="PRINT ":GOTO 61009 62611 MISNUM=62611!:G$="LPRINT ":GOTO 61009 62620 MISNUM=62620!:ON VAL(ANSWER$(ANSNUM))+1 GOTO 62621,62622 62621 MISNUM=62621!:G$=" FRE(0)":GOTO 61009 62622 G$=ANSWER$(ANSNUM-1)+"=FRE(0)":GOTO 61009 62660 MISNUM=62660!:G$="GOSUB "+ANSWER$(ANSNUM-1):GOTO 61009 62670 GOTO 64700 62671 GOTO 61007 62680 MISNUM=62680!:G$="GOTO "+ANSWER$(ANSNUM-1):GOTO 61009 62690 MISNUM=62690!:GOTO 61009 62700 MISNUM=62700!:IF FLANUM=1 THEN 61009 62701 G$=ANSWER$(ANSNUM-1):IF DOC=1 THEN FLANUM=8:G$=" " 62702 IF UPDATE=1 THEN FLANUM=7:G$=" " 62704 GOTO 61009 62710 MISNUM=62710!:G$=ANSWER$(ANSNUM-1)+"!":GOTO 61009 62720 MISNUM=62720!:G$=ANSWER$(ANSNUM-1)+"%":GOTO 61009 62730 MISNUM=62730!:G$=ANSWER$(ANSNUM-1)+"#":GOTO 61009 62740 MISNUM=62740!:G$=CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34):GOTO 61009 62750 MISNUM=62750!:G$="=":GOTO 61009 62760 MISNUM=62760!:G$=">":GOTO 61009 62770 MISNUM=62770!:G$="<":GOTO 61009 62780 MISNUM=62780!:G$="^":GOTO 61009 62790 MISNUM=62790!:G$="\":GOTO 61009 62800 MISNUM=62600!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="FOR "+ANSWER$(ANSNUM-SUMNUM)+"="+ANSWER$(ANSNUM-SUMNUM+1)+" TO "+ANSWER$(ANSNUM-SUMNUM+2):IF SUMNUM=4 THEN G$=G$+" STEP "+ANSWER$(ANSNUM-1) 62810 MISNUM=62810!:G$="<>":GOTO 61009 62820 MISNUM=62820!:G$="<=":GOTO 61009 62830 MISNUM=62830!:G$=">=":GOTO 61009 62840 MISNUM=62840!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 62841 IF ANSWER$(ANSNUM-1)="''"THEN ANSWER$(ANSNUM-1)=CHR$(34) 62842 IF LEN(ANSWER$(ANSNUM-1))=1 THEN G$="CHR$("+STR$(ASC(ANSWER$(ANSNUM-1)))+")" ELSE G$="CHR$(0)"+"+CHR$("+STR$(ASC(RIGHT$(ANSWER$(ANSNUM-1),1)))+")" 62843 IF ANSWER$(ANSNUM-1)=CHR$(34) THEN ANSWER$(ANSNUM-1)="''" 62844 IF LEN(ANSWER$(ANSNUM-1))=2 THEN ANSWER$(ANSNUM-1)="0"+RIGHT$(ANSWER$(ANSNUM-1),1) 62845 GOTO 61009 62850 MISNUM=62850!:IF FLANUM=1 THEN 61009 62851 IF VAL(ANSWER$(ANSNUM))=0 THEN G$=CHR$(34)+"+"+CHR$(34) ELSE G$=ANSWER$(ANSNUM-1)+"="+CHR$(34)+"+"+CHR$(34) 62852 GOTO 61009 62853 MISNUM=62853!:G$=ANSWER$(ANSNUM-1)+"="+CHR$(34)+"+"+CHR$(34):GOTO 61009 62860 MISNUM=62860!:G$=" NOT ":GOTO 61009 62870 MISNUM=62870!:G$=" AND ":GOTO 61009 62880 MISNUM=62880!:G$=" OR ":GOTO 61009 62890 MISNUM=62890!:G$=" XOR ":GOTO 61009 62900 MISNUM=62900!:G$=" EQV ":GOTO 61009 62910 MISNUM=62910!:G$=" IMP ":GOTO 61009 62920 MISNUM=62920!:G$="(":GOTO 61009 62930 MISNUM=62930!:G$=")":GOTO 61009 62940 REM MISNUM=62940!:G$=CHR$(34)+"KYBD:"+CHR$(34):GOTO 61009 62950 REM MISNUM=62950!:G$=CHR$(34)+"SCRN:"+CHR$(34):GOTO 61009 62960 REM MISNUM=62960!:G$=CHR$(34)+"LPT"+ANSWER$(ANSNUM-1)+":"+CHR$(34):GOTO 61009 62970 REM MISNUM=62970!:G$=CHR$(34)+"COM"+ANSWER$(ANSNUM-1)+":"+CHR$(34):GOTO 61009 62980 REM MISNUM=62980!:G$=CHR$(34)+ANSWER$(ANSNUM-1)+":"+CHR$(34):GOTO 61009 62990 MISNUM=62990!:IF FLANUM=1 THEN 61009 62991 IF UPDATE=1 OR DOC=1 THEN GOSUB 61000 ELSE ADDRES=VAL(ANSWER$(ANSNUM-1))-1 62992 RETURN 63110 MISNUM=63110!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE GG$="IF ":GOSUB 63111:RETURN 63111 FLANUM0=FLANUM:FLANUM=2:G$=GG$:C$(LEVEL)=":":LEVEL=LEVEL+1:C$="":GOSUB 61000:LEVEL=LEVEL+1:ITEM(LEVEL)=0:RETURN 63120 MISNUM=63120!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=0:C$=" ":GOSUB 61000:LEVEL=LEVEL-1:G$=G$+" THEN ":FLANUM=2:GOSUB 61000:LEVEL=LEVEL+1:RETURN 63130 MISNUM=63130!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE FLANUM=0:C$=":":GOSUB 61000:LEVEL=LEVEL-1:G$=G$+" ELSE ":FLANUM=2:GOSUB 61000:LEVEL=LEVEL+1:RETURN 63140 MISNUM=63140!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE CC$=":":GOSUB 63141:RETURN 63141 FLANUM=0:C$=CC$:GOSUB 61000:LEVEL=LEVEL-1:FLANUM=2:GOSUB 61000:FLANUM=0:C$="":GOSUB 61000 63142 IF LEVEL>0 THEN FLANUM=2:LEVEL=LEVEL-1:GOSUB 61000:FLANUM=0:C$=C$(LEVEL):GOSUB 61000:GOTO 63142 ELSE FLANUM=FLANUM0:GOTO 61009 63150 MISNUM=63150!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE G$="IF "+ANSWER$(ANSNUM-3)+" THEN "+ANSWER$(ANSNUM-2)+" ELSE "+ANSWER$(ANSNUM-1):GOTO 61009 63160 MISNUM=63160!:G$=ANSWER$(ANSNUM-1)+"=INKEY$":GOTO 61009 63170 MISNUM=63170!:G$="PRINT "+CHR$(34)+"_"+CHR$(34)+";CHR$(29);:"+ANSWER$(ANSNUM-1)+"=INKEY$:IF "+ANSWER$(ANSNUM-1)+"="+CHR$(34)+CHR$(34)+" THEN "+STR$(ADDRES+STACHA+1):GOTO 61009 63180 MISNUM=63180!:G$="PRINT "+CHR$(34)+"_"+CHR$(34)+";CHR$(29);:"+ANSWER$(ANSNUM-1)+"=INKEY$:IF "+ANSWER$(ANSNUM-1)+"="+CHR$(34)+CHR$(34)+" THEN "+STR$(ADDRES+STACHA+1):GOTO 61009 63220 MISNUM=63220!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="INPUT "+ANSWER$(ANSNUM-SUMNUM):IF SUMNUM>1 THEN FOR K=1 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 63221 GOTO 61007 63230 MISNUM=63230!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="INPUT; "+ANSWER$(ANSNUM-SUMNUM):IF SUMNUM>1 THEN FOR K=1 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 63231 GOTO 61007 63240 MISNUM=63240!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="INPUT "+CHR$(34)+ANSWER$(ANSNUM-SUMNUM)+CHR$(34)+"; "+ANSWER$(ANSNUM-SUMNUM+1):IF SUMNUM>2 THEN FOR K=2 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 63241 GOTO 61007 63250 MISNUM=63250!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="INPUT; "+CHR$(34)+ANSWER$(ANSNUM-SUMNUM)+CHR$(34)+"; "+ANSWER$(ANSNUM-SUMNUM+1):IF SUMNUM>2 THEN FOR K=2 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 63251 GOTO 61007 63260 MISNUM=63260!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="INPUT #"+ANSWER$(ANSNUM-SUMNUM)+", "+ANSWER$(ANSNUM-SUMNUM+1):IF SUMNUM>2 THEN FOR K=2 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 63261 GOTO 61007 63330 MISNUM=63330!:ON VAL(ANSWER$(ANSNUM)) GOSUB 63331,63332:GOTO 61009 63331 G$=" INT("+ANSWER$(ANSNUM-1)+")":RETURN 63332 G$=ANSWER$(ANSNUM-2)+"=INT("+ANSWER$(ANSNUM-1)+")":RETURN 63430 MISNUM=63430!:G$="KEY ("+ANSWER$(ANSNUM-1)+") ON":GOTO 61009 63440 MISNUM=63440!:G$="KEY ("+ANSWER$(ANSNUM-1)+") OFF":GOTO 61009 63450 MISNUM=63450!:G$="KEY ("+ANSWER$(ANSNUM-1)+") STOP":GOTO 61009 63470 MISNUM=63470!:ON VAL(ANSWER$(ANSNUM))-1 GOTO 63471,63472 63471 MISNUM=63471!:G$=" LEFT$("+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":GOTO 61009 63472 G$=ANSWER$(ANSNUM-3)+"=LEFT$("+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":GOTO 61009 63480 MISNUM=63480!:ON VAL(ANSWER$(ANSNUM)) GOTO 63481,63482 63481 MISNUM=63481!:G$=" LEN("+ANSWER$(ANSNUM-1)+")":GOTO 61009 63482 G$=ANSWER$(ANSNUM-2)+"=LEN("+ANSWER$(ANSNUM-1)+")":GOTO 61009 63510 MISNUM=63510!:G$=ANSWER$(ANSNUM-2)+"="+ANSWER$(ANSNUM-1):GOTO 61009 63520 MISNUM=63520!:G$=ANSWER$(ANSNUM-2)+"="+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34):GOTO 61009 63550 MISNUM=63550!:G$="LINE INPUT "+ANSWER$(ANSNUM-1):GOTO 61009 63560 MISNUM=63560!:G$="LINE INPUT; "+ANSWER$(ANSNUM-1):GOTO 61009 63570 MISNUM=63570!:G$="LINE INPUT "+CHR$(34)+ANSWER$(ANSNUM-2)+CHR$(34)+"; "+ANSWER$(ANSNUM-1):GOTO 61009 63580 MISNUM=63580!:G$="LINE INPUT; "+CHR$(34)+ANSWER$(ANSNUM-2)+CHR$(34)+"; "+ANSWER$(ANSNUM-1):GOTO 61009 63610 MISNUM=63610!:G$="LINE INPUT #"+ANSWER$(ANSNUM-2)+", "+ANSWER$(ANSNUM-1):GOTO 61009 63660 MISNUM=63660!:ON VAL(ANSWER$(ANSNUM)) GOSUB 63661,63662,63663,63664,63665:GOTO 61009 63661 G$="LOCATE "+ANSWER$(ANSNUM-1):RETURN 63662 G$="LOCATE "+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1):RETURN 63663 G$="LOCATE "+ANSWER$(ANSNUM-3)+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1):RETURN 63664 G$="LOCATE "+ANSWER$(ANSNUM-4)+","+ANSWER$(ANSNUM-3)+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1):RETURN 63665 G$="LOCATE "+ANSWER$(ANSNUM-5)+","+ANSWER$(ANSNUM-4)+","+ANSWER$(ANSNUM-3)+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1):RETURN 63730 MISNUM=63730!:ON VAL(ANSWER$(ANSNUM))+1 GOSUB 63731,63732:GOTO 61009 63731 G$="LPRINT ":RETURN 63732 G$="LPRINT "+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34):RETURN 63740 MISNUM=63740!:G$="LPRINT "+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34)+";":GOTO 61009 63750 MISNUM=63750!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="LPRINT ":IF SUMNUM=0 THEN 63752 63751 G$=G$+ANSWER$(ANSNUM-SUMNUM):FOR K=1 TO SUMNUM-1:G$=G$+GG$+ANSWER$(ANSNUM-SUMNUM+K):NEXT 63752 GOTO 61007 63760 MISNUM=63760!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="LPRINT ":IF SUMNUM=0 THEN 63762 63761 G$=G$+ANSWER$(ANSNUM-SUMNUM)+";":FOR K=1 TO SUMNUM-1:G$=G$+ANSWER$(ANSNUM-SUMNUM+K)+";":NEXT 63762 GOTO 61007 63770 MISNUM=63770!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="LPRINT ":IF SUMNUM=0 THEN 63772 63771 G$=G$+ANSWER$(ANSNUM-SUMNUM)+";":FOR K=1 TO SUMNUM-1:G$=G$+ANSWER$(ANSNUM-SUMNUM+K)+";":NEXT 63772 GOTO 61007 63780 REM MISNUM=63780!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="LPRINT USING ":IF SUMNUM=0 THEN 63752 ELSE 63751 63810 MISNUM=63810!:IF FLANUM=1 THEN 61009 ELSE FLANUM(LEVEL)=FLANUM:C$(LEVEL)=C$:LEVEL=LEVEL+1:C$="":FLANUM=2:G$=ANSWER$(ANSNUM-1)+"="+CHR$(34):GOTO 61009 63820 REM MISNUM=63820!:G$="$$":GOTO 61009 63830 REM MISNUM=63830!:G$="":FOR K=1 TO VAL(ANSWER$(ANSNUM-2)):G$=G$+"#":NEXT:G$=G$+".":FOR K=1 TO VAL(ANSWER$(ANSNUM-1)):G$=G$+"#":NEXT:GOTO 61009 63840 REM MISNUM=63840!:G$="":FOR K=1 TO VAL(ANSWER$(ANSNUM-2)):G$=G$+"#":NEXT:G$=G$+".,":FOR K=1 TO VAL(ANSWER$(ANSNUM-1)):G$=G$+"#":NEXT:GOTO 61009 63850 REM MISNUM=63850!:G$="^^^^":GOTO 61009 63860 REM MISNUM=63860!:G$="!":GOTO 61009 63870 REM MISNUM=63870!:G$="\":FOR K=1 TO VAL(ANSWER$(ANSNUM-1))-2:G$=G$+" ":NEXT:G$=G$+"\":GOTO 61009 63880 MISNUM=63880!:IF FLANUM=1 THEN 61009 ELSE FLANUM=-1:C$="":GOSUB 61000:G$=SUMVAR$+CHR$(34)+";":LEVEL=LEVEL-1:FLANUM=2:GOSUB 61000:C$="":GOSUB 61131:FLANUM=FLANUM(LEVEL):C$=C$(LEVEL):IF FLANUM=0 OR FLANUM=9 THEN GOSUB 61000:RETURN ELSE RETURN 64040 MISNUM=64040!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF FLANUM=1 OR SUMNUM<2 THEN 61009 ELSE ON SUMNUM-1 GOSUB 64041,64042:GOTO 61009 64041 G$=" MID$("+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":RETURN 64042 G$=ANSWER$(ANSNUM-3)+"=MID$("+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":RETURN 64050 MISNUM=64050!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF FLANUM=1 OR SUMNUM<3 THEN 61009 ELSE ON VAL(ANSWER$(ANSNUM))-2 GOSUB 64051,64052:GOTO 61009 64051 G$="MID$("+ANSWER$(ANSNUM-3)+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":RETURN 64052 G$=ANSWER$(ANSNUM-4)+"=MID$("+ANSWER$(ANSNUM-3)+","+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":RETURN 64120 MISNUM=64120!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="NEXT ":IF SUMNUM>0 THEN G$=G$+ANSWER$(ANSNUM-SUMNUM):FOR K=1 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 64121 GOTO 61007 64150 MISNUM=64150!:G$="ON ERROR GOTO "+ANSWER$(ANSNUM-1):GOTO 61009 64160 MISNUM=64160!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF RIGHT$(ANSWER$(ANSNUM-SUMNUM),1)="$" THEN G$="ON VAL("+ANSWER$(ANSNUM-SUMNUM)+") GOSUB " ELSE G$="ON "+ANSWER$(ANSNUM-SUMNUM)+" GOSUB " 64161 G$=G$+ANSWER$(ANSNUM-SUMNUM+1):IF SUMNUM>2 THEN FOR K=2 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 64162 GOTO 61007 64170 MISNUM=64170!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF RIGHT$(ANSWER$(ANSNUM-SUMNUM),1)="$" THEN G$="ON VAL("+ANSWER$(ANSNUM-SUMNUM)+") GOTO " ELSE G$="ON "+ANSWER$(ANSNUM-SUMNUM)+" GOTO " 64171 GOTO 64161 64180 MISNUM=64180!:G$="ON KEY("+ANSWER$(ANSNUM-2)+") GOSUB "+ANSWER$(ANSNUM-1):GOTO 61009 64190 MISNUM=64190!:GOTO 61009 64240 MISNUM=64240!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF RIGHT$(ANSWER$(ANSNUM-SUMNUM),1)="$" THEN G$="OPEN "+ANSWER$(ANSNUM-SUMNUM)+"," ELSE G$="OPEN "+CHR$(34)+"O"+CHR$(34)+"," 64241 IF FLANUM=1 OR SUMNUM<2 THEN 61009 ELSE ON SUMNUM-1 GOSUB 64242,64243:GOTO 61009 64242 G$=G$+ANSWER$(ANSNUM-2)+",":IF RIGHT$(ANSWER$(ANSNUM-1),1)="$" OR RIGHT$(ANSWER$(ANSNUM-1),1)=CHR$(34) OR RIGHT$(ANSWER$(ANSNUM-1),1)=")" THEN G$=G$+ANSWER$(ANSNUM-1):RETURN ELSE G$=G$+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34):RETURN 64243 G$=G$+ANSWER$(ANSNUM-3)+",":IF RIGHT$(ANSWER$(ANSNUM-2),1)="$" OR RIGHT$(ANSWER$(ANSNUM),1)=CHR$(34) OR RIGHT$(ANSWER$(ANSNUM-2),1)=")" THEN G$=G$+ANSWER$(ANSNUM-2) ELSE G$=G$+CHR$(34)+ANSWER$(ANSNUM-2)+CHR$(34) 64244 IF ANSWER$(ANSNUM-1)="" OR LEFT$(ANSWER$(ANSNUM-1),1)=" " THEN RETURN 64245 G$=G$+","+ANSWER$(ANSNUM-1):RETURN 64250 MISNUM=64250!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF RIGHT$(ANSWER$(ANSNUM-SUMNUM),1)="$" THEN G$="OPEN "+ANSWER$(ANSNUM-SUMNUM)+"," ELSE G$="OPEN "+CHR$(34)+"I"+CHR$(34)+",":GOTO 64241 64260 MISNUM=64260!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF RIGHT$(ANSWER$(ANSNUM-SUMNUM),1)="$" THEN G$="OPEN "+ANSWER$(ANSNUM-SUMNUM)+"," ELSE G$="OPEN "+CHR$(34)+"R"+CHR$(34)+",":GOTO 64241 64270 MISNUM=64270!:SUMNUM=VAL(ANSWER$(ANSNUM)):IF RIGHT$(ANSWER$(ANSNUM-SUMNUM),1)="$" THEN G$="OPEN "+ANSWER$(ANSNUM-SUMNUM)+"," ELSE G$="OPEN "+CHR$(34)+"A"+CHR$(34)+",":GOTO 64241 64280 MISNUM=64280!:GOTO 61009 64290 MISNUM=64290!:G$="OPTION BASE "+ANSWER$(ANSNUM-1):GOTO 61009 64480 MISNUM=64480!:ON VAL(ANSWER$(ANSNUM))+1 GOSUB 64481,64482:GOTO 61009 64481 G$="PRINT ":RETURN 64482 G$="PRINT "+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34):RETURN 64490 MISNUM=64490!:G$="PRINT "+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34)+";":GOTO 61009 64500 MISNUM=64500!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT ":IF SUMNUM=0 THEN 63752 ELSE 63751 64510 MISNUM=64510!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT ":IF SUMNUM=0 THEN 63762 ELSE 63761 64520 REM MISNUM=64520!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT USING ":IF SUMNUM=0 THEN 63752 ELSE 63751 64530 REM MISNUM=64530!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT USING ":IF SUMNUM=0 THEN 63762 ELSE 63761 64540 MISNUM=64560!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT #":IF SUMNUM=0 THEN 63752 ELSE 63751 64550 MISNUM=64550!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT #"+ANSWER$(ANSNUM-SUMNUM)+" USING ":IF SUMNUM<2 THEN 64552 64551 G$=G$+ANSWER$(ANSNUM-SUMNUM+1):FOR K=2 TO SUMNUM-1:G$=G$+";"+ANSWER$(ANSNUM-SUMNUM+K):NEXT 64552 GOTO 61007 64560 MISNUM=64560!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="PRINT #":GG$=",":IF SUMNUM=0 THEN 63752 ELSE 63751 64630 MISNUM=64630!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="READ "+ANSWER$(ANSNUM-SUMNUM):IF SUMNUM>1 THEN FOR K=1 TO SUMNUM-1:G$=G$+","+ANSWER$(ANSNUM-SUMNUM+K):NEXT 64631 GOTO 61007 64640 MISNUM=64640!:G$="REM "+ANSWER$(ANSNUM-1):GOTO 61007 64700 MISNUM=64700!:G$="RETURN ":IF VAL(ANSWER$(ANSNUM))=1 THEN G$=G$+ANSWER$(ANSNUM-1) 64701 GOTO 61007 64720 MISNUM=64720!:ON VAL(ANSWER$(ANSNUM))-1 GOTO 64721,64722 64721 MISNUM=64721!:G$=" RIGHT$("+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":GOTO 61009 64722 G$=ANSWER$(ANSNUM-3)+"=RIGHT$("+ANSWER$(ANSNUM-2)+","+ANSWER$(ANSNUM-1)+")":GOTO 61009 64840 MISNUM=64840!:G$=" SHELL ":IF VAL(ANSWER$(ANSNUM))=0 THEN GOTO 61009 64841 IF RIGHT$(ANSWER$(ANSNUM-1),1)="$" OR RIGHT$(ANSWER$(ANSNUM-1),1)=")" OR RIGHT$(ANSWER$(ANSNUM-1),1)=CHR$(34) THEN G$=G$+ANSWER$(ANSNUM-1) ELSE G$=G$+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34) 64842 GOTO 61009 64870 MISNUM=64870!:ON VAL(ANSWER$(ANSNUM)) GOSUB 64871,64872:GOSUB 61000:RETURN 64871 G$=" SPACE$("+ANSWER$(ANSNUM-1)+")":RETURN 64872 G$=ANSWER$(ANSNUM-2)+"=SPACE$("+ANSWER$(ANSNUM-1)+")":RETURN 64880 MISNUM=64880!:G$=" PRINT SPC("+ANSWER$(ANSNUM-1)+");":GOTO 61009 64940 MISNUM=64940!:G$="STOP ":GOTO 61009 64950 MISNUM=64950!:ON VAL(ANSWER$(ANSNUM)) GOTO 64951,64952 64951 MISNUM=64951!:G$=" STR$("+ANSWER$(ANSNUM-1)+")":GOTO 61009 64952 G$=ANSWER$(ANSNUM-2)+"=STR$("+ANSWER$(ANSNUM-1)+")":GOTO 61009 65000 GOTO 61009 65060 MISNUM=65060!:G$=" PRINT TAB("+ANSWER$(ANSNUM-1)+")":GOTO 61009 65160 MISNUM=65160!:ON VAL(ANSWER$(ANSNUM)) GOTO 65161,65162 65161 MISNUM=65161!:G$=" VAL("+ANSWER$(ANSNUM-1)+")":GOTO 61009 65162 G$=ANSWER$(ANSNUM-2)+"=VAL("+ANSWER$(ANSNUM-1)+")":GOTO 61009 65310 MISNUM=64480!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="WRITE ":IF SUMNUM=0 THEN 63752 ELSE 63751 65320 MISNUM=65320!:SUMNUM=VAL(ANSWER$(ANSNUM)):G$="WRITE #":GG$=",":IF SUMNUM=0 THEN 63752 ELSE 63751 65330 MISNUM=65330!:IF FLANUM=1 THEN 61009 ELSE G$="+":GOSUB 61000:RETURN 65340 MISNUM=65340!:IF FLANUM=1 THEN 61009 ELSE G$=CHR$(34)+CHR$(34):GOTO 61009 65350 MISNUM=65350!:G$="RETURN "+ANSWER$(ANSNUM-1):GOTO 61009 65400 MISNUM=65400!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE PRINT# F0N,"2 CHAIN MERGE "+CHR$(34)+ANSWER$(ANSNUM-2)+CHR$(34)+",5,ALL" 65401 PRINT# F0N,"10 F0N="+ANSWER$(ANSNUM-1) 65402 PRINT# F0N,"5 CHAIN MERGE "+CHR$(34)+"N0ULL"+CHR$(34)+",10,ALL,DELETE 2-5":RETURN 65410 MISNUM=65410!:IF FLANUM=1 OR FLANUM=7 OR FLANUM=8 THEN 61009 ELSE OPEN "O",3,"N0ULL.BAS" 65411 REM PRINT #3, "100 REM":PRINT #3,"60000 REM":CLOSE #3 65412 REM CHAIN MERGE "N0ULL",65413!,ALL 65413 REM CHAIN MERGE "N0ULL",65414!,ALL,DELETE 100-60000 65415 REM PRINT ANSWER$(ANSNUM-1);" is created." 65510 IF FLANUM=1 THEN MISNUM=65510!:GOTO 61009 ELSE K0=VAL(ANSWER$(ANSNUM)):G$="PRINT #1, "+ANSWER$(ANS0+1):FOR K9=2 TO ANSNUM-ANS0-K0-1:G$=G$+":PRINT #1, "+ANSWER$(ANS0+K9):NEXT:G$=G$+":GOSUB 65528:RETURN" 65511 PRINT #1, STR$(MISNUM)+G$:ADDRES=MISNUM:GOSUB 61041:ANS0=ANSNUM:K=0:RETURN 65520 IF FLANUM=1 THEN MISNUM=65520!:GOTO 61009 ELSE K0=VAL(ANSWER$(ANSNUM)):Q$="What is the explanation for the instruction (Documentation) ?":GOSUB 1080:G$=":LPRINT "+CHR$(34)+ANSWER$(ANSNUM-1)+CHR$(34)+":GOSUB 65527:RETURN" 65521 PRINT #1, STR$(MISNUM)+" MISNUM="+STR$(MISNUM)+G$:ADDRES=MISNUM:GOSUB 61041:K=0:ANS0=ANSNUM:RETURN 65525 PRINT #1, STR$(61042!)+"ADDRES=ADDRES+1:GOSUB 61041:LPRINT "+CHR$(34)+"(Answer ="+CHR$(34)+";ANSNUM;"+CHR$(34)+")"+CHR$(34)+":IF ADDRES=61280 THEN K2=2:RETURN ELSE RETURN" 65526 PRINT #1, STR$(61041!)+"PRINT "+CHR$(34)+"(Answer ="+CHR$(34)+";ANSNUM;"+CHR$(34)+")"+CHR$(34)+":RETURN":RETURN 65527 PRINT #1,STR$(65527!)+" LPRINT"+CHR$(34)+"Specifications: "+CHR$(34)+";:FOR K9=ANS0+1+K2 TO ANSNUM+K2:LPRINT ANSWER$(K9);"+CHR$(34)+","+CHR$(34)+"SPC(1);:NEXT:GOSUB 61042:ANS0=ANSNUM:RETURN":RETURN 65528 PRINT #1, STR$(65528!)+" K0=VAL(ANSWER$(ANSNUM)):FOR K9=1 TO K0:PRINT #1, "+"ANSWER$(ANSNUM-K0+K9-1):NEXT:PRINT #1, ANSWER$(ANSNUM):ADDRES=MISNUM:GOSUB 61041:ANS0=ANSNUM:RETURN":RETURN