5' Garage Sale Computer MOD-200 6' Max L. Seim (71116,1347) 7' Revision 1.0 (9/29/85) 10 CLS:MAXFILES=5:CLEAR1000:DIMT$(30):DIMP(30) 20 LINE(35,5)-(200,20),1,B:PRINT@50,"GARAGE SALE COMPUTER"; 25 ' 26 ' Initialization Section 50 ONERRORGOTO5000 60 PRINT@290,"One moment please..."; 70 OPEN"AAA.DO"FORAPPENDAS1 71 OPEN"BBB.DO"FORAPPENDAS2 72 OPEN"CCC.DO"FORAPPENDAS3 73 OPEN"DDD.DO"FORAPPENDAS4 80 FORY=0TO30STEP15:FORX=3TO12:C=C+1:P(C)=(X*40)+Y:NEXTX:NEXTY 85 FORX=1TO30:T$(X)="X 000.00":NEXTX 90 F$="####.##":P=1 95 ' 96 ' Print SALES TABLE section 100 CLS:LINE(0,5)-(50,17),1,B:LINE(60,5)-(235,17),1,B 120 FORC=1TO30:R$=RIGHT$(T$(C),(LEN(T$(C))-2)) 121 IFVAL(R$)<>0THENPRINT@P(C),T$(C);ELSEPRINT@P(C),"--------"; 122 NEXTC 130 PRINT@560,"(E)rror (T)otal (S)ales Status"; 200 A$=INKEY$:IFA$=""THEN200 205 IFA$="a"ORA$="b"ORA$="c"ORA$="d"THEN400 210 IFA$="A"ORA$="B"ORA$="C"ORA$="D"THEN400 215 IFA$="e"ORA$="E"THEN300 220 IFA$="t"ORA$="T"THEN500 225 IFA$="s"ORA$="S"THEN800 227 IFA$="."ORA$=CHR$(8)ORASC(A$)>47ANDASC(A$)<58THEN230ELSE200 230 IFA$<>CHR$(8)THEN240ELSEIFLEN(B$)=0THEN200 235 B$=LEFT$(B$,LEN(B$)-1):PRINT@41,B$;" ";:GOTO200 240 IFLEN(B$)>5THEN200ELSE:B$=B$+A$:PRINT@41,B$;:GOTO200 298 ' 299 ' (E)rror back up one entry 300 IFP=1THEN200 302 P=P-1:Q=VAL(RIGHT$(T$(P),LEN(T$(P))-2)):R=R-Q:B$="":A$="--------":GOTO400 400 S=VAL(B$):R=R+S:PRINT@51,"SubTotal ";:PRINTUSINGF$;R; 403 T$(P)=A$+" "+B$:PRINT@P(P),T$(P); 405 P=P+1:IFP=31THEN500 410 PRINT@41," ";:B$="" 450 GOTO200 498 ' 499 ' (T)otal section 500 B$="":IFP=1THEN200 502 PRINT@41,;:PRINTUSINGF$;R;:PRINT@51,"Amt Tnd "; 505 PRINT@560,"(A)bort (E)rror (ENTER)key to Enter"; 510 A$=INKEY$:IFA$=""THEN510 513 IFA$=CHR$(13)THEN550 515 IFA$="e"ORA$="E"THEN:PRINT@51," ";:GOTO500 520 IFA$="a"ORA$="A"THEN:A$="":B$="":GOTO100 521 IFA$<>CHR$(8)THEN525ELSE:IFB$=""THEN500 522 B$=LEFT$(B$,LEN(B$)-1):PRINT@60,B$;" ";:GOTO510 525 IFA$="."ORASC(A$)>47ANDASC(A$)<58THEN530ELSE510 530 B$=B$+A$:PRINT@60,B$;:GOTO510 550 FORX=1TO30:G$=LEFT$(T$(X),1):G=VAL(RIGHT$(T$(X),LEN(T$(X))-2)) 555 IFG$="a"ORG$="A"THENAA=AA+G 556 IFG$="b"ORG$="B"THENBB=BB+G 557 IFG$="c"ORG$="C"THENCC=CC+G 558 IFG$="d"ORG$="D"THENDD=DD+G 560 NEXTX 570 B=VAL(B$):CG=B-R:PRINT@51,"Amt>";:PRINTUSINGF$;B;:PRINT" Chg>";:PRINTUSINGF$;CG; 580 PRINT#1,DATE$;" ";TIME$;" ";AA 581 PRINT#2,DATE$;" ";TIME$;" ";BB 582 PRINT#3,DATE$;" ";TIME$;" ";CC 583 PRINT#4,DATE$;" ";TIME$;" ";DD 600 PRINT@560," Press ENTER key for next sale "; 605 A$=INKEY$:IFA$=""THEN605 610 R=0:B$="":AA=0:BB=0:CC=0:DD=0:GOTO85 800 LINE(20,30)-(200,80),1,BF 805 ONERRORGOTO5000 806 PRINTCHR$(27);CHR$(112); 809 CLOSE 810 OPEN"AAA.DO"FORINPUTAS1 811 OPEN"BBB.DO"FORINPUTAS2 812 OPEN"CCC.DO"FORINPUTAS3 813 OPEN"DDD.DO"FORINPUTAS4 825 FORX=1TO32767:INPUT#1,A$:AA=AA+VAL(RIGHT$(A$,LEN(A$)-17)):IFEOF(1)THEN830ELSENEXTX 830 S=X:FORX=1TO32767:INPUT#2,A$:BB=BB+VAL(RIGHT$(A$,LEN(A$)-17)):IFEOF(2)THEN840ELSENEXTX 840 FORX=1TO32767:INPUT#3,A$:CC=CC+VAL(RIGHT$(A$,LEN(A$)-17)):IFEOF(3)THEN850ELSENEXTX 850 FORX=1TO32767:INPUT#4,A$:DD=DD+VAL(RIGHT$(A$,LEN(A$)-17)):IFEOF(4)THEN860ELSENEXTX 860 TT=AA+BB+CC+DD 870 PRINT@166,"Number of sales = ";S;:PRINT@366,"TOT SALES = ";:PRINTUSINGF$;TT; 872 PRINT@206,"AAA sales = ";:PRINTUSINGF$;AA; 875 PRINT@246,"BBB sales = ";:PRINTUSINGF$;BB; 877 PRINT@286,"CCC sales = ";:PRINTUSINGF$;CC; 879 PRINT@326,"DDD sales = ";:PRINTUSINGF$;DD; 880 CLOSE 881 AA=0:BB=0:CC=0:DD=0:CLOSE 882 OPEN"BBB.DO"FORAPPENDAS2 883 OPEN"CCC.DO"FORAPPENDAS3 884 OPEN"DDD.DO"FORAPPENDAS4 885 OPEN"AAA.DO"FORAPPENDAS1 890 PRINTCHR$(27);CHR$(113); 895 PRINT@560,"(ENTER)key to return (Q)uit program"; 900 A$=INKEY$:IFA$=""THEN900 902 IFA$=CHR$(13)THEN100 905 IFA$="q"ORA$="Q"THEN1000 1000 PRINT@560,SPACE$(40);:PRINT@560," Are you sure? Y or N"; 1005 A$=INKEY$:IFA$=""THEN1005 1010 IFA$="y"ORA$="Y"THEN MENUELSE100 5000 IF ERR=14 THENPRINT:PRINT"ERROR--No string space left":GOTO6000 5005 IF ERR=7 THENPRINT:PRINT"ERROR--No more memory left":GOTO6000 5007 PRINTCHR$(27);CHR$(113); 5010 IF ERR=54 THENPRINT@0,SPACE$(40);:PRINT@0,"ERROR--must have at least 1 entry first!":CLOSE 5011 OPEN"AAA.DO"FORAPPENDAS1 5012 OPEN"BBB.DO"FORAPPENDAS2 5013 OPEN"CCC.DO"FORAPPENDAS3 5014 OPEN"DDD.DO"FORAPPENDAS4 5015 RESUME 895 6000 FORX=1TO2000:NEXTX:MENU