Sitenotice: 11/29/2018: The wiki is back. It turns out, some anti-virus product on my web server had an issue with the latest version of PHP. My server techs have resolved this issue, and things should be working again. During the investigation, I did restore to a backup from September. There is a chance that any changes done since then were lost, but I do not recall any edits. --OS-9 Al

8/30/2016: Massive re-work is being done on the InfoBox Templates. Read that page to keep up with the plan for that, and adding better keyword tags (categories) to all the pages. --OS-9 Al (talk) 15:28, 31 August 2016 (CDT)

CHECKS

From CoCopedia - The Tandy/Radio Shack Color Computer Wiki
Jump to navigation Jump to search
100 CLEAR 2000: DIM T$(100,2), LM(3,3)
110 DATA 1,74,0,76,89,75,91,100,90
120 FOR I=1 TO 100: T$(I,1)="": T$(I,2)="": NEXT I
130 FOR I=1 TO 3: READ LM(I,1), LM(I,2), LM(I,3): NEXT I
140 CLS: PRINT@11,"CHECKBOOK"
150 PRINT@64,"SELECT ONE OF THE FOLLOWING:"
160 PRINT@97,"1. ENTER BALANCE FROM STATEMENT"
170 PRINT@129,"OUTSTANDING CHECKS:"
180 PRINT@161,"2. ENTER   3. LIST   4. DELETE"
190 PRINT@193,"UNRECORDED DEPOSITS:"
200 PRINT@225,"5. ENTER   6. LIST   7. DELETE"
210 PRINT@257,"MISCELLANEOUS CHARGES:"
220 PRINT@289,"8. ENTER   9. LIST   10. DELETE"
230 PRINT@321,"11. COMPUTE NEW BALANCE"
240 PRINT@352,"WHICH ONE";: INPUT A$
250 IF (VAL(A$)>0) AND (VAL(A$)<12) THEN A=VAL(A$): GOTO290
260 PRINT@448,"INVALID SELECTION--TRY AGAIN"
270 FOR I=1 TO 300: NEXT I
280 PRINT@448,"": PRINT@360,"": GOTO240
290 IF A>1 AND A<5 THEN J=1: N1$="OUTSTANDING CHECKS": N2$="CK #"
300 IF A>4 AND A<8 THEN J=2: N1$="UNRECORDED DEPOSITS": N2$="DATE"
310 IF A>7 AND A<11 THEN J=3: N1$="MISC. CHARGES": N2$="DATE"
320 ON A GOSUB340,390,590,800,390,590,800,390,590,800,1070
330 GOTO140
340 REM -- ENTER BALANCE SUBR.
350 PRINT@416,"BALANCE FROM STATEMENT";: INPUT B$
360 L=LEN(B$): IF L<3 THEN PRINT@438,"": GOTO350
370 IFMID$(B$,L-2,1)<>"." THEN PRINT@438,"": GOTO350
380 B=VAL(B$): RETURN
390 REM--ENTER CKS,DEPOSITS,MISC. SUBR.
400 CLS: PRINT@32,"ENTER ";N1$;":": PRINT@67,N2$;"      AMOUNT"
410 P=64: PRINT@480,"ENTER R TO RETURN TO MENU";
420 IF LM(J,3)<LM(J,2) THEN 450
430 PRINT@160,"TOO MANY ";N1$
440 PRINT@192,"CHECKBOOK RUN ABORTED": STOP
450 IF P<416 THEN P=P+32: GOTO500
460 PRINT@480,"PRESS C TO CONTINUE ";
470 B$=INKEY$
480 IF B$="C" THEN 400
490 GOTO470
500 PRINT@P,"";: INPUT B$
510 IF B$="R" THEN 580
520 LM(J,3)=LM(J,3)+1: T$(LM(J,3),1)= B$
530 PRINT@P+11,"";: INPUT B$
540 IF B$="R" THEN LM(J,3)=LM(J,3)-1: GOTO580
550 L=LEN(B$): IF L<3 THEN PRINT@P+11,"": GOTO530
560 IFMID$(B$,L-2,1)<>"." THEN PRINT@P+11,"": GOTO530
570 T$(LM(J,3),2)=B$: GOTO420
580 RETURN
590 REM--LIST CKS,DEPOSITS,MISC. SUBR.
600 IF LM(J,3)<LN(J,1) THEN CLS: PRINT@98,"NO ";N1$;" FOUND": GOTO720
610 I=LM(J,1)-1: GOSUB770: P=66
620 IF NOT (I<LM(J,3)) "THEN 720
630 I=I+1: IF T$(I,1)="" AND T$(I,2)="" THEN 620
640 IF P<418 THEN P=P+32: GOTO700
650 PRINT@448,"PRESS C TO CONTINUE";: PRINT@480,"OR R TO RETURN TO MENU ";
660 B$=INKEY$
670 IF B$="C" THEN GOSUB770: P=98: GOTO700
680 IF B$="R" THEN 760
690 GOTO660
700 PRINT@P+8-LEN(T$(I,1)),T$(I,1);
710 PRINT@P+18-LEN(T$(I ,2)),T$(I ,2): GOTO620
720 PRINT@480,"PRESS R TO RETURN TO MENU";
730 B$=INKEY$
740 IF B$="R" THEN 760
750 GOTO730
760 RETURN
770 CLS: PRINT@32,"LIST ";N1$;":"
780 PRINT@67,N2$;" AMOUNT"
790 RETURN
800 REM--DELETE CKS,DEPOSITS,MISC. SUBR.
810 IF LM(J,3)=>LM(J,1) THEN 870
820 CLS: PRINT@98,"NO ";N1$;" FOUND": PRINT@130,"TO DELETE"
830 PRINT@480,"PRESS R TO RETURN TO MENU";
840 B$=INKEY$
850 IF B$="R" THEN 1060
860 GOTO840
870 CLS: PRINT@32,"DELETE ":N1$;":": PRINT@67,N2$;" AMOUNT"
880 P=64: PRINT@480,"ENTER R TO RETURN TO MENU";
890 IF P<416 THEN P=P+32: GOTO940
900 PRINT@480,"PRESS C TO CONTINUE ";
910 B$=INKEY$
920 IF B$="C" THEN 870
930 GOTO910
940 PRINT@P,"";: INPUT B$
950 IF B$="R" THEN 1060
960 X$=B$
970 PRINT@P+11,"";: INPUT B$
980 IF B$="R" THEN 1060
990 L=LEN(B$): IF L<3 THEN PRINT@P+11,"": GOTO970
1000 IFMID$(B$,L-2,L)<>"." THEN PRINT@P+11,"": GOTO970
1010 Y$=B$
1020 I=LM(J,1)-1: REM-BEGIN TBL MATCH
1030 IF NOT (I<LN(J,3)) THEN PRINT@P+22,"NO MATCH": GOTO890
1040 I=I+1: IF NOT (T$(I,1)=X$ AND T$(I,2)=Y$) THEN 1030
1050 PRINT@P+22,"DELETED": T$(I,1)="": T$(I,2)=": GOTO890
1060 RETURN
1070 REM -- NEW BALANCE SUBR.
1080 C=0: D=0: M=0
1090 CLS: PRINT@32,"COMPUTE NEW BALANCE:"
1100 PRINT@96,"BALANCE FROM STMT $";
1110 I=INT(B*100): B$=STR$(I): L=LEN(B$)
1120 PRINT@126-L,LEFT$(B$,L-2)+","+RIGHT$(B$,2)
1130 IF LM(2,3)<LM(2,1) THEN 1150
1140 FOR I=LM(2,1) TO LM(2,3): D=D+VAL(T$(I,2)): NEXT I
1150 PRINT@128,"+ UNRECORDED DEPOSITS";
1160 I=INT(D*100): B$=STR$(I): L=LEN(B$)
1170 PRINT@158-L,LEFT$(B$,L-2)+"."+RIGHT$(B$,2)
1180 IF LM(1,3)<LM(1,1) THEN 1200
1190 FOR I=LM(1,1) TO LM(1,3): C=C+VAL(T$(I,2)): NEXT I
1200 PRINT@160,"- OUTSTANDING CHECKS";
1210 I=INT(C*100): B$=STR$(I): L=LEN(B$)
1220 PRINT@190-L,LEFT$(B$,L-2)+", "+RIGBT$(B$, 2)
1230 IF LM(3,3)<LM(3,1) THEN 1250
1240 FOR I=LM(3,1) TO LM(3,3): M=M+VAL(T$(I,2)): NEXT I
1250 PRINT@192,"- MISC. CHARGES";
1260 I=INT(M*100): B$=STR$(I): L=LEN(B$)
1270 PRINT@222-L,LEFT$(B$,L-2)+" ."+RIGHT$(B$ ,2)
1280 N=B+D-C-M
1290 PRINT@260,"NEW BALANCE = $";
1300 I=INT(N*100): B$=STR$(I): L=LEN(B$)
1310 PRINT@286-L,LEFT$(B$,L-2)+". "+RIGHT$(B$,2)
1320 PRINT@480,"PRESS R TO RETURN TO MENU";
1330 B$-INKEY$
1340 IF B$="R" THEN 1360
1350 GOTO1330
1360 RETURN