image of READY prompt

Wang2200.org

Listing of file='GENL120A' on disk='vmedia/701-2653B.wvd.zip'

# Sector 178, program filename = 'GENL120A'
0010 REM GENL120A, RELEASE 2.2, (09/11/80)   THIS PROGRAM IS A COPYRIGHT PRODU
     CT     OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROH
     IBITED
0170 DIM G6$Q5,K6$(50)4
0172 DIM N8(5),F9(4)
   : GOTO 4000
4000 SELECT @PARTS0$
   : H0$=HEX(00)
   : PRINT AT(4,0,80);"This program posts all journal entries to the chart of
     accounts master file";AT(5,0,80);"and then clears all entries from the cu
     rrent month's journal entries file"
4100 GOSUB '100("Y,N","YyNn",1,1,"ARE YOU SURE YOU WANT TO RUN THIS PROGRAM (Y
      OR N)",2)
   : IF Q9=2THEN GOSUB '31
   : PRINT AT(4,0,);"Processing account no.";HEX(06)
   : GOSUB '235(1,0)
   : IF Q$<>" "THEN 7170
   : GOTO 4430
4370 DBACKSPACE #2,1S
   : GOSUB '65(2)
4390 GOSUB '237(1,0)
   : IF Q$="E"THEN 4790
   : IF Q$<>" "THEN 7170
4430 GOSUB '75(2)
   : PRINT AT(4,23,8);O$
   : Q$,Q6$=" "
   : IF O1$<>"2"OR O3$="M"THEN 4390
   : IF NUM(STR(O$,,1))=1THEN CONVERT STR(O$,,1)TO F9
   : ELSE F9=4
   : F9=MAX(MIN(F9,4),1)
   : IF H0$<>HEX(00)THEN 4640
4530 J=MOD(J,50)+1
   : H0$=HEX(FF)
   : IF J=1THEN DATA LOAD DC #3,K6$()
   : IF END THEN 4370
   : IF STR(K6$(J),,1)=HEX(FF)THEN 4370
   : DATA LOAD DA T#1,(STR(K6$(J),,2))M$()
   : Q9=VAL(STR(K6$(J),4))
   : IF STR(M$(Q9),,1)=HEX(FF)THEN 4370
   : $UNPACK(F=L3$)M$(Q9)TO H2,H0$,H1$,H,H3$,H4$,H5$,H1
4640 IF O$<H0$THEN 4370
   : IF O$=H0$THEN 4710
   : PRINT AT(1,0,80);"Trans no";H2;"for account no. ";H0$;" will be dropped";
     HEX(07)
   : PRINT AT(3,0,80);H0$;" is not a postable account"
   : GOSUB '254
   : GOTO 4530
4710 IF H1>=0THEN P2=P2+H1
   : ELSE P3=P3-H1
   : IF F9>2THEN N6=N6+H1
   : F9(F9)=F9(F9)+H1
   : P0=MAX(P0,H)
   : GOTO 4530
4790 $OPEN #5
   : GOSUB '66(5,Q1,1)
   : FOR I=1TO 4
   : M(9+I)=M(9+I)+F9(I)
   : NEXT I
   : GOSUB '66(5,Q1,0)
   : GOSUB '66(5,0,1)
   : FOR I=1TO 4
   : M(9+I)=M(9+I)+F9(I)
   : NEXT I
   : F5$(1)="1"
   : GOSUB '66(5,0,0)
   : $CLOSE#5
   : DBACKSPACE #3,BEG
   : GOSUB '218(S$(3),3," ",0)
   : DBACKSPACE #4,BEG
   : GOSUB '218(S$(4),4," ",0)
   : IF M(4)+M(5)+M(6)+M(7)+M(8)=0OR G$()=" "OR N6=0THEN 5960
5010 PRINT AT(4,0,640);AT(5,0);"RET. EARN. ACCOUNT NO.";TAB(34);"% DIST"
   : FOR I=1TO 5
   : O1$=" "
   : GOSUB '232(1,0,G$(I))
   : G$(I)=" "
   : IF Q$=" "THEN GOSUB '75(2)
   : IF O1$<>"2"OR O3$="M"THEN 5120
   : G$(I)=O$
   : PRINT TAB(5);"(";I;") ";G$(I);TAB(33);
   : IF M(I+3)<>0THEN PRINTUSING "###.###",M(I+3)
   : ELSE PRINT
5120 NEXT I
5140 GOSUB '100("0","5",1,0,"ENTER LINE NO. TO CORRECT (0=END)",1)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : J6=Q9
   : IF J6=0THEN 5470
   : Q6$=G$(J6)
   : M(J6+3)=0
   : IF Q6$=" "THEN Q9=2
   : ELSE Q9=3
   : GOSUB '100(" ",HEX(7F),VAL(Q0$(5)),0,"ENTER RETAINED EARNINGS ACCOUNT NO.
     ",Q9)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : G6$,G$(J6)=" "
   : G6=0
   : IF Q6$=" "THEN 5430
5280 GOSUB '96(5)
   : G6$=Q6$
   : GOSUB '232(1,0,G6$)
   : GOSUB '91
   : IF J0<>0THEN 5140
   : GOSUB '75(2)
   : IF O1$="2"AND O3$<>"M"THEN 5370
   : PRINT AT(3,0,80);HEX(07);"Illegal account no., re-enter"
   : GOTO 5140
5370 G$(J6)=G6$
   : PRINT AT(1,0,80);"ENTER PERCENTAGE (";J6;")"
   : GOSUB '100("0","100.00",3,3," ",1)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : G6=Q9
5430 PRINT AT(J6+5,5,75);"(";J6;") ";G6$;TAB(33);
   : IF G6<>0THEN PRINTUSING "###.###",G6
   : ELSE PRINT TAB(79)
   : M(J6+3)=G6
   : GOTO 5140
5470 Q9=0
   : FOR I=1TO 5
   : Q9=Q9+M(I+3)
   : NEXT I
   : IF Q9=100THEN 5620
   : IF Q9<100THEN 5550
   : PRINT AT(3,0,80);HEX(07);"R/E percentages exceed 100 percent, re-enter"
   : GOTO 5140
5550 PRINT AT(3,0,80);HEX(07);"Distribution percentages less than 100 %"
   : GOSUB '100("Y,N","YyY Nn",1,1,"ACCEPT ENTRIES (Y OR N)",2)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : IF Q9=2THEN 5140
5620 GOSUB '93(" ")
   : PRINT AT(4,0,)
   : IF I0$<>" "THEN GOSUB '90
   : PRINT HEX(0A0A);TAB(9);"R/E ACCT";TAB(25);"R/E %";TAB(37);"NET POSTED"
   : PRINT " "
   : FOR I=1TO 5
   : N8(I)=ROUND((N6*M(I+3)*.01,2)
   : IF G$(I)=" "THEN N8(I)=0
   : ELSE N7=N7+N8(I)
   : NEXT I
   : Q9=N6-N7
   : FOR I=1TO 5
   : IF G$(I)=" "THEN 5930
   : PRINT TAB(9);G$(I);TAB(23);
   : PRINTUSING "###.###",M(I+3);
   : PRINT TAB(34);
   : N8(I)=N8(I)+Q9
5800 PRINTUSING "##,###,###.##-",N8(I);
   : Q9=0
   : GOSUB '232(1,0,G$(I))
   : IF Q$=" "THEN 5870
   : PRINT "***NOT POSTED***"
   : GOTO 5930
5870 PRINT
   : GOSUB '75(2)
   : IF N8(I)<0THEN P3=P3-N8(I)
   : ELSE P2=P2+N8(I)
   : P0=Q1
   : DBACKSPACE #2,1S
   : GOSUB '65(2)
5930 NEXT I
   : IF I0$=" "THEN GOSUB '254
   : ELSE PRINT HEX(0C)
5960 DEFFN'31
   : LOAD TM$
7040 DEFFN'90
   : Q6$=" "
   : KEYIN Q6$,7080,7080
7080 IF Q6$="P"THEN GOSUB '254
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : SELECT PRINT <I0$>(90)
   : P1=P1+1
   : Q6$=STR(N2$,POS(N2$<>" "))
   : Q8=LEN(Q6$)
   : Q7$=HEX(0C0A0D0E)
   : Q9=(42-Q8)*.5
   : IF Q9>=0THEN 7140
   : Q7$=HEX(0C0A)
   : Q9=42-.5*Q8
7140 PRINT Q7$;TAB(Q9);Q6$
   : PRINT TAB(15);"UPDATE CHART OF ACCOUNTS - CONTROL REPORT"
   : PRINT
   : RETURN
7170 GOSUB '91
   : PRINT AT(1,0,80);Q7$;HEX(07)
   : PRINT AT(3,16,64);Q6$
   : GOSUB '254
   : GOTO 5960
9999 DEFFN'29"Q$=";HEX(22);"GENL120A";HEX(22);":SCRATCHTQ$:SAVET()Q$";HEX(0D)