Capital Area Timex Sinclair Users Group Membership Files

Developer(s): Mark Fisher
Date: 1987
Type: Program
Platform(s): TS 2068

Explore the CATS membership database, as of late 1987.

Content

Appears On

Related Products

Related Articles

Related Content

Image Gallery

Capital Area Timex Sinclair Users Group Membership Files

Source Code

    0 LET D$(J,D)="5": PRINT AT L,D-L;D$(J,D): LET D$(J, TO 5)=I$: PRINT AT L,16;D$(J, TO 5): RETURN 
    1 INPUT "PAYMENT STATUS ";D$(J,D): PRINT AT L,D-L;D$(J,D): RETURN 
    2 RETURN 
    3 INPUT "NAME  ";N$(J): PRINT AT 3,D;N$(J): RETURN 
    4 INPUT "STREET ";R$(J): PRINT AT 4,D;R$(J): RETURN 
    5 INPUT "CITY ";C$(J): PRINT AT 5,D;C$(J): RETURN 
    6 INPUT "STATE ";S$(J): PRINT AT 6,D;S$(J): RETURN 
    7 INPUT "ZIP CODE ";Z$(J): PRINT AT 7,D;Z$(J): RETURN 
    8 RETURN 
    9 INPUT "HOME PHONE ";H$(J): PRINT AT D-L,D;H$(J): RETURN 
   10 INPUT "OFFICE PHONE ";P$(J): PRINT AT D,D;P$(J): RETURN 
   11 RETURN 
   12 INPUT "JOB  ";O$(J): PRINT AT 12,D;O$(J): RETURN 
   13 GO SUB 50: INPUT "EQUIPMENT";E$(J): PRINT AT 13,D;E$(J)
   14 RETURN 
   50 PRINT AT 17,O;"A.TS1000  F.E-PROM K.FLOPPY    "
   52 PRINT "B.TS1500  G.16KRAM L.STRNGY    "
   54 PRINT "C.TS2068  H.32KRAM M.          "
   56 PRINT "D.PRINTER I.64KRAM N.          "
   58 PRINT "E.MODEM   J.DISK   O.          "
   62 RETURN 
   90 REM FOR I=16 TO D+D+L
   92 REM PRINT AT I,O;"                                "
   94 REM NEXT I
   96 RETURN 
  100 PRINT "NAME     :"';"STREET   :"';"CITY     :"';"STATE    :"';"ZIP CODE :"
  120 PRINT W$
  130 PRINT "H-PHONE  :"'"O-PHONE  :"'"FAMILY   :"'"JOB      :"'"EQUIP.   :"
  140 PRINT W$
  150 RETURN 
  999 STOP 
 1000 LET Q=VAL I$( TO L+L)+12*VAL I$(4 TO 5)-12
 1006 POKE 64256,L: POKE 64260,O
 1010 CLS 
 1020 PRINT ''"******* MEMBERSHIP FILES *******       by Ned Beeler  1983          revised by M. Fisher '85    "
 1025 PRINT "    TODAY'S DATE """;I$;""""
 1030 PRINT '"1. ADD NEW NAME"''"2. OR """"; UPDATE/DELETE RECORD"''"3. LIST RECORDS"''
 1050 PRINT "4. LPRINT LABELS"''"5. LPRINT ROSTER"''"6. LPRINT ZIP LIST "''
 1075 PRINT "7. SORT: curr. by ";X$''"8. SAVE program"
 1090 INPUT "SELECT YOUR CHOICE";J$
 1095 CLS 
 1151 IF LEN J$<L THEN LET J$="2"
 1160 IF CODE J$<49 OR CODE J$>58 THEN GO TO G
 1200 GO SUB VAL J$*500+G
 1499 GO TO G
 1500 IF N>=214 THEN PRINT "FILE FULL": PAUSE D*D: RETURN 
 1505 LET N=N+L: LET K=K+L: LET J=N
 1510 CLS 
 1520 PRINT "FILE NO. ";N,"MEMBSHP NO. ";K
 1525 PRINT "----PAID  ------------DATE -----"
 1530 PRINT W$
 1535 GO SUB D*D
 1546 LET D$(N,6 TO D-L)=STR$ K: PRINT AT M,28;D$(N,6 TO D-L)
 1550 FOR I=O TO 13: GO SUB I: NEXT I
 1655 GO SUB D*D-D
 1680 INPUT "IS ALL CORRECT (Y/N) ";J$
 1700 IF J$="N" THEN GO SUB 2100
 1720 CLS 
 1730 INPUT "ANY MORE NAMES?  (Y/N)  ";J$
 1750 IF J$="Y" THEN GO TO 1500
 1999 RETURN 
 2010 CLS 
 2020 INPUT "SEARCH NAME ? ";J$
 2030 FOR J=L TO N
 2040 IF J$=N$(J, TO LEN J$) THEN GO TO 2100
 2050 NEXT J
 2055 CLS 
 2060 INPUT " NO NAME-PRESS ENTER TO RETURN ";J$
 2070 RETURN 
 2100 LET Q=15
 2105 CLS 
 2110 PRINT "FILE NO. ";J;" MEMBERSHIP NO. ";D$(J,6 TO D-L)
 2120 PRINT "PAID---- ";D$(J,D);" DATE ";D$(J, TO 5)
 2125 PRINT W$
 2130 GO SUB D*D
 2150 PRINT AT 3,D;N$(J);AT 4,D;R$(J);AT 5,D;C$(J)
 2160 PRINT AT 6,D;S$(J);AT 7,D;Z$(J)
 2170 PRINT AT D-L,D;H$(J);AT D,D;P$(J)
 2180 PRINT AT 12,D;O$(J);AT 13,D;E$(J)
 2195 PRINT W$
 2200 PRINT "UPDATE"'"FOREWARD"'"BACK"'"        "'" DELETE "'"        "'">--- RETURN TO MENU ---> OR (M)";
 2210 PRINT #1;AT 0,0;"PUT CURSOR ON LINE TO BE CHANGEDPRESS <ENTER> WHEN READY"
 2215 PRINT OVER L; FLASH L;AT Q,O;W$;
 2216 PAUSE O
 2217 PRINT OVER L; FLASH O;AT Q,O;W$
 2220 LET Q=Q+(INKEY$="6")-(INKEY$="7")
 2230 LET Q=Q+(Q<0)-(Q>20)
 2240 IF INKEY$=CHR$ 13 THEN GO TO 2270
 2245 IF INKEY$="M" THEN RETURN 
 2250 GO TO 2215
 2275 IF Q=15 THEN GO SUB O
 2280 IF Q=16 OR Q=17 THEN LET J=J+(Q=16 AND J<215)-(Q=17 AND J>1): GO TO 2105
 2310 IF Q>19 THEN RETURN 
 2320 IF Q<14 THEN GO SUB Q
 2380 IF Q=19 THEN INPUT "DELETE: ARE YOU SURE? (Y/N) ";J$: IF J$="Y" THEN GO TO 2400
 2398 GO TO 2210
 2400 FOR Z=J TO N
 2402 LET N$(Z)=N$(Z+L)
 2404 LET R$(Z)=R$(Z+L)
 2406 LET C$(Z)=C$(Z+L)
 2408 LET S$(Z)=S$(Z+L)
 2410 LET H$(Z)=H$(Z+L)
 2412 LET P$(Z)=P$(Z+L)
 2414 LET Z$(Z)=Z$(Z+L)
 2416 LET O$(Z)=O$(Z+L)
 2420 LET E$(Z)=E$(Z+L)
 2422 LET D$(Z)=D$(Z+L)
 2430 NEXT Z
 2440 LET N=N-L
 2499 RETURN 
 2504 LET Z=0
 2505 FOR J=L TO N
 2510 PRINT J;" ";N$(J, TO 18);D$(J): LET Z=Z+1
 2550 NEXT J
 2555 PRINT Z
 2560 PAUSE 0
 2990 RETURN 
 3000 CLS 
 3010 LET Q=VAL I$( TO 2)+12*VAL I$(4 TO 5)-12
 3100 POKE 64256,O: POKE 64260,D
 3200 LPRINT CHR$ 27+"N TEST XXXXX"''''''
 3205 PAUSE 0
 3210 FOR J=L TO N
 3220 IF D$(J,D)>"4" THEN LPRINT : GO TO 3230: REM current year's member
 3221 IF D$(J,D)="0" THEN GO TO 3330: REM previously crossed off list
 3222 IF VAL D$(J, TO L+L)+12*VAL D$(J,4 TO 5)>Q THEN LPRINT : GO TO 3230: REM less than 12 months since paid - still current
 3225 LPRINT CHR$ 27+"XLAST ISSUE"+CHR$ 27+"Y-"+CHR$ 27+"Q$18.00; we need your support."+CHR$ 27+"N": LET D$(J,D)="0"
 3230 LPRINT N$(J);" pd ";D$(J, TO 5);" ";D$(J,D)
 3250 LPRINT R$(J)
 3270 LPRINT C$(J);" ";
 3280 LPRINT S$(J);"  ";Z$(J)
 3310 LPRINT ''
 3330 NEXT J
 3340 RETURN 
 3500 REM LPRINT "..."
 3506 POKE 64256,O: POKE 64260,D
 3507 LPRINT CHR$ 27+"N"+CHR$ 27+"!"
 3510 LPRINT "CATS MEMBERSHIP, ";I$
 3515 LPRINT "Name                     #    Address                           H#      O#"'
 3520 LET LINE=3
 3560 FOR J=L TO N
 3566 IF LINE=57 THEN LET LINE=2: PAUSE 0: LPRINT CHR$ 27+"NName                     #    Address                           H#      O#"'
 3569 IF N$(J,1)<>N$(J-1,1) THEN LET LINE=LINE+1: LPRINT 
 3570 IF D$(J,D)<"4" THEN NEXT J
 3575 LET LINE=LINE+1
 3580 LPRINT CHR$ 27;"N";
 3590 LPRINT N$(J);CHR$ 27;"Q   ";D$(J,6 TO );"  ";
 3600 LPRINT R$(J);"  ";
 3610 LPRINT C$(J);" ";
 3620 LPRINT S$(J);"  ";Z$(J);"  ";H$(J);"  ";P$(J)
 3630 NEXT J
 3640 RETURN 
 4000 LPRINT CHR$ 27+"N"
 4002 POKE 64256,O: POKE 64260,D
 4003 LPRINT CHR$ 27+"N"+CHR$ 27+"!"
 4004 LET J$=Z$(L)
 4010 LPRINT "CATS members, sorted by ZIP, ";I$
 4020 FOR J=L TO N
 4025 IF D$(J,10)<"3" THEN GO TO 4050
 4028 IF J$( TO 3)<>Z$(J, TO 3) THEN LPRINT : LET LINE=LINE+1
 4030 LPRINT N$(J);CHR$ 27+"Q"+C$(J)+CHR$ 27+"N"+S$(J);" ";Z$(J)
 4040 LET J$=Z$(J)
 4050 NEXT J
 4100 RETURN 
 4500 CLS : PRINT "SORT BY:","(1) N$(J) NAME"'',"(2) Z$(J) ZIP"
 4510 INPUT "SELECT SORT,OR ANY VAR";J$: PRINT ''"SORTED BY: ";J$
 4512 IF J$="1" THEN LET J$="N$(J)"
 4513 IF J$="2" THEN LET J$="Z$(J)"
 4515 LET T=N
 4520 LET Q=T
 4525 LET Q=INT (Q/2): IF Q<L THEN LET X$=J$: RETURN 
 4530 IF Q/2=INT (Q/2) THEN LET Q=Q+1
 4532 PRINT Q;" ";
 4535 FOR I=L TO T-Q
 4540 LET J=I
 4545 IF VAL$ J$<=VAL$ (J$( TO 4)+"+Q"+J$(5 TO )) THEN GO TO 4750
 4546 BEEP .02,50-Q
 4550 LET A$=N$(J)
 4552 LET B$=R$(J)
 4554 LET G$=C$(J)
 4556 LET X$=S$(J)
 4558 LET K$=H$(J)
 4560 LET L$=P$(J)
 4562 LET M$=D$(J)
 4564 LET Q$=O$(J)
 4566 LET T$=E$(J)
 4570 LET Y$=Z$(J)
 4600 LET N$(J)=N$(J+Q)
 4602 LET R$(J)=R$(J+Q)
 4604 LET C$(J)=C$(J+Q)
 4606 LET S$(J)=S$(J+Q)
 4610 LET H$(J)=H$(J+Q)
 4612 LET P$(J)=P$(J+Q)
 4614 LET D$(J)=D$(J+Q)
 4620 LET O$(J)=O$(J+Q)
 4622 LET E$(J)=E$(J+Q)
 4626 LET Z$(J)=Z$(J+Q)
 4700 LET N$(J+Q)=A$
 4702 LET R$(J+Q)=B$
 4704 LET C$(J+Q)=G$
 4706 LET S$(J+Q)=X$
 4708 LET H$(J+Q)=K$
 4710 LET P$(J+Q)=L$
 4712 LET D$(J+Q)=M$
 4714 LET O$(J+Q)=Q$
 4716 LET E$(J+Q)=T$
 4720 LET Z$(J+Q)=Y$
 4730 LET J=J-Q
 4740 IF J>0 THEN GO TO 4544
 4750 NEXT I
 4999 GO TO 4525
 5000 CLS : PRINT "WILL BE SAVED AS; """;I$;""""
 5010 SAVE I$ LINE 5060: PRINT ''"Rewind tape and VERIFY"
 5020 VERIFY I$
 5030 RETURN 
 5060 POKE 23561,30: POKE 23562,2: POKE 23658,8: POKE 23609,3: BORDER 0: PAPER 0: INK 7
 5065 POKE 64260,0: FOR J=64263 TO 64265: POKE J,0: NEXT J
 5070 INPUT "TODAY'S DATE? (MO-YR) ";I$
 5080 FOR I=L TO 5: IF I$(I)<"0" THEN GO TO 5100
 5090 NEXT I
 5100 LET I$( TO L+L)=I$( TO I-L): LET I$(3 TO )="-"+I$(I+L TO )
 5110 GO TO G
 8996 STOP 
 9000 FOR J=N TO 196 STEP -1
 9010 REM IF D$(J,10)<"3" THEN PRINT "OUT NO.";J,N$(J): GO SUB 2400
 9020 GO SUB 2400
 9050 NEXT J: STOP 
 9500 FOR J=L TO N: IF D$(J,10)="Q" THEN LET D$(J,10)="4":
 9510 NEXT J
Scroll to Top