1 ! SUPPLEMENTRY PAYROLL DEDUCTION COMPUTATIONS PROGRAM NAME: PRSDED BY CWR 2 K1%=1%:K0%=0%:T7(0%,K1%)=230000:T7(0%,2%)=170000 3 T7(K1%,K1%)=0:T7(K1%,2%)=1000:T7(K1%,3%)=0:T7(K1%,4%)=1000 4 T7(2%,K1%)=200000:T7(2%,2%)=5000:T7(2%,3%)=100000:T7(2%,4%)=3000 5 T7(3%,K1%)=400000:T7(3%,2%)=13000:T7(3%,3%)=200000:T7(3%,4%)=7000 6 T7(4%,K1%)=600000:T7(4%,2%)=22000:T7(4%,3%)=300000:T7(4%,4%)=11500 7 T7(5%,K1%)=800000:T7(5%,2%)=33000:T7(5%,3%)=400000:T7(5%,4%)=17000 8 T7(6%,K1%)=1000000:T7(6%,2%)=46000:T7(6%,3%)=500000:T7(6%,4%)=23500 9 T7%(K1%,K1%)=20%: T7%(K1%,2%)=20: T7%(2%,K1%)=40%: T7%(2%,2%)=40 10 T7%(3%,K1%)=45%:T7%(3%,2%)=45%:T7%(4%,K1%)=55%:T7%(4%,2%)=55% 11 T7%(5%,K1%)=65%:T7%(5%,2%)=65%:T7%(6%,K1%)=75%:T7%(6%,2%)=75% 12 K1%=1%:K0%=0%:S9%=0% 20 OPEN "DK1:PAYROL.MST" AS FILE K1% !MASTER 30 OPEN "DK1:PAYROL.MDS" AS FILE 2% !MONTH 40 OPEN "DK1:PAYROL.YTD" AS FILE 10% !OPEN YTD TO CHECK FICA LIMIT 50 DIM #10,Y$(1500%)=64%,Y%(0%) 60 X9$="###,###.## " 110 DIM #1%,A$(1500%)=128%,A%(0%) : Z%=A%(0%) 120 DIM #2%,M$(1500%)=128%,M%(0%),D$(0%)=8% 130 Y8$=LEFT(D$(0%),2%):Y9$=RIGHT(D$(0%),7%) 163 DIM L6$(4%),T6(7%,4%),T6%(7%,2%) 170 DEF FNC$(C9,C9%) 172 C9$=NUM$(INT(C9+.5)):C8%=LEN(C9$)-2% 173 C9$=MID(C9$,2%,C8%):IF C9<0 THEN C9$="-"+C9$ 176 IF LEN (C9$)>C9% THEN 5060 177 C9$=SPACE$(C9%-LEN(C9$))+C9$ 178 FNC$=C9$ 179 FNEND 200 FOR I%=1% TO Z% 210 IF MID(M$(I%),47%,1%)<>"S" THEN 1440 700 G=VAL(LEFT(M$(I%),8%)) 701 H=VAL(MID(M$(I%),37%,5%)) 702 O=VAL(MID(M$(I%),42%,5%)) 703 A8=VAL(MID(M$(I%),9%,7%)) 710 IF G>0 THEN 1000 720 M$(I%)=SPACE$(46%)+"N"+MID(M$(I%),48%,3%)+SPACE$(6%)+MID(M$(I%),57%,72%) 740 GOTO 1440 1000 ! DETERMINE DEDUCTIONS 1010 J3%=VAL(MID(M$(I%),48%,K1%)):T=0:D=0 1015 PRINT LEFT(A$(I%),24%) 1020 FOR K%=K1% TO J3% 1030 C$=MID(M$(I%),57%+8%*(K%-K1%),2%) 1040 D1=VAL(MID(M$(I%),59%+8%*(K%-K1%),6%)) 1045 ! IF BETWEEN 41 AND 59 INCLUSIVE THEN IT IS A TSA 1050 IF C$>"40" AND C$<"60" THEN T=T+D1 ELSE D=D+D1 1060 NEXT K% 1070 P$="61"+SPACE$(6%) !PRESET TO ZERO 1075 P=G-T 1080 Y7$=MID(A$(I%),43%,6%):IF Y7$=SPACE$(6%) THEN 1105 ! PUBLIC EMPLOYEE RETIREMENT 1082 IF Y9$"" THEN R=INT(VAL(I$)*100+.5) 1100 P$="61"+FNC$(R,6%) 1105 F1,P1,S=0%:K9%=VAL(MID(A$(I%),49%,K1%))+1% 1110 ON K9% GOTO 1130,1184,1130,1184 1130 IF Y8$=" 1" THEN F4=0 ELSE F4=VAL(MID(Y$(I%),49%,8%)) 1140 F1=.0585*G 1150 IF F4+F1>77220 THEN F1=77220-F4 1160 IF F1<0 THEN F1=0 1184 ON K9% GOTO 1185,1185,1339,1339 1185 D9%=VAL(MID(A$(I%),50%,2%)):M9$=MID(A$(I%),52%,K1%):A9%=0% 1190 ! COMPUTE STATE AND FED TAXES 1195 IF S9%=K1% THEN 1230 ELSE S9%=K1% 1200 T6(K1%,K1%)=55000:T6(K1%,2%)=0:T6(K1%,3%)=55000:T6(K1%,4%)=0 1202 T6(2%,K1%)=205000:T6(2%,2%)=21000:T6(2%,3%)=180000:T6(2%,4%)=17500 1204 T6(3%,K1%)=870000:T6(3%,2%)=127400:T6(3%,3%)=380000:T6(3%,4%)=53500 1206 T6(4%,K1%)=1075000:T6(4%,2%)=168400:T6(4%,3%)=1050000:T6(4%,4%)=194200 1208 T6(5%,K1%)=1685000:T6(5%,2%)=314800:T6(5%,3%)=1200000:T6(5%,4%)=228700 1210 T6(6%,K1%)=2125000:T6(6%,2%)=438000:T6(6%,3%)=1400000:T6(6%,4%)=282700 1212 T6(7%,K1%)=2525000:T6(7%,2%)=566000:T6(7%,3%)=1730000:T6(7%,4%)=385000 1214 T6%(K1%,K1%)=14%:T6%(K1%,2%)=14%:T6%(2%,K1%)=16%:T6%(2%,2%)=18% 1216 T6%(3%,K1%)=20%:T6%(3%,2%)=21%:T6%(4%,K1%)=24%:T6%(4%,2%)=23% 1218 T6%(5%,K1%)=28%:T6%(5%,2%)=27%:T6%(6%,K1%)=32%:T6%(6%,2%)=31% 1220 T6%(7%,K1%)=36%:T6%(7%,2%)=35% 1230 K9%=INSTR(1%,"MSGH",M9$):IF K9%=0% THEN K9%=2% 1231 ON K9% GOTO 1240,1240,1235,1235 1235 K9%=K9%-2%:A9%=D9%*100%:D9%=0% 1240 P1=P*12-75000*D9% 1250 FOR K%=K1% TO 7% ! LOOK FOR TAX BRACKET 1260 IF P1<=T6(K%,K9%*2%-K1%) THEN IF K%=K1% THEN 1330 ELSE 1290 1270 NEXT K% 1280 GOTO 1300 1290 K%=K%-K1% 1300 P1=FIX((T6(K%,K9%*2%)+(T6%(K%,K9%)*(P1-T6(K%,K9%*2%-K1%))/100%))) 1305 P1=FIX((P1-1)/12) 1310 GOSUB 2000 1320 GOTO 1339 1330 P1=0 1331 GOSUB 2000 1339 PRINT USING X9$,P1/100; 1340 INPUT "FED W/H TAX ";I$:IF I$<>"" THEN P1=INT(VAL(I$)*100+.5) 1349 PRINT USING X9$,S/100; 1350 INPUT "STATE W/H TAX ";I$:IF I$<>"" THEN S=INT(VAL(I$)*100+.5) 1359 PRINT USING X9$,F1/100; 1360 INPUT "FICA TAX ";I$:IF I$<>"" THEN F1=INT(VAL(I$)*100+.5) 1370 INPUT "TAX OK ";I$:IF I$<>"Y" THEN 1070 1399 ! COMBINE AMOUNTS INTO MONTHLY DEDUCTION REGISTAR 1400 M$=FNC$(G,8%)+FNC$(A8,7%)+FNC$(P1,7%)+FNC$(S,7%)+FNC$(F1,7%) 1410 M$=M$+FNC$(H,5%)+FNC$(O,5%)+"S"+MID(M$(I%),48%,K1%)+P$+RIGHT(M$(I%),57%) 1420 M$(I%)=M$ 1440 NEXT I% 1500 PRINT "END OF RUN" 1510 CLOSE 1%,2%,9%,10% 1520 GOTO 6000 2000 S=P*12: IF S200000 THEN D=200000 ELSE IF D<130000 THEN D=130000 2020 S=S-D-75000*(D9%-1%) 2040 IF S<0 THEN S=0: IF S=0 THEN 2125 2050 FOR K%=2% TO 6% !LOOK FOR TAX BRACKET 2060 IF S