image of READY prompt

Wang2200.org

Listing of file='LPMERG02' on disk='vmedia/701-2721C.wvd.zip'

# Sector 399, program filename = 'LPMERG02'
0100 REM %   MERG EDIT DRIVER   ***LPMERG02***
0110 COM L0$(7)20
   : DIM A6$(4)25,A7$(13)6,A0(5)
   : DIM V1$(3)82,D$(4128)1,V0$(3)82,C6$(326)1
   : DIM L4$(123)2,L1$(1008)1,V4$1,L5$(116)2,L9(10)
   : J3=8
   : J6=1
   : L0(3)=1
   : L9(1)=0
   : L0(4)=0
   : L5$(),C6$()=ALL(20)
   : I9=0
   : C9=246
   : D4=1
   : C8=0
   : D2=1
0260 GOSUB '220(A1,1,1,1,1)
   : IF R1$<>HEX(00)THEN L9(8)=3
   : IF R1$<>HEX(00)THEN GOSUB 1200
   : I6=V0
   : V4$="P"
   : GOSUB '225(L8(3),1,1,1)
   : IF R1$=HEX(00)THEN GOTO 270
   : L9(8)=1
   : GOSUB 1200
0270 L4$()=V1$()
   : GOSUB '220(A1,1,2,1,1)
   : IF R1$<>HEX(00)THEN L9(8)=3
   : IF R1$<>HEX(00)THEN GOSUB 1200
   : V4$="A"
   : GOSUB '225(L8(3),1,1,1)
   : IF R1$=HEX(00)THEN GOTO 300
   : L9(8)=1
   : GOSUB 1200
0300 MAT SEARCHL4$(),=HEX(FFFF)TO I$STEP 2
   : I7=(VAL(I$,2)-1)/2-7
   : J4=(VAL(I$,2)-1)/2
0330 I8=I7
   : L9(1)=L9(1)+I7
   : IF L9(1)>116THEN GOTO 1250
   : L0(4)=L0(4)+1
   : PRINT AT(18,29);"Merging Record";L0(4)
0370 IF J3=J4THEN L9(10)=I6-VAL(L4$(J3),2)+1
   : ELSE L9(10)=VAL(L4$(J3+1),2)-VAL(L4$(J3),2)
   : IF MOD(LEN(L5$()),2)=0THEN I=LEN(L5$())
   : ELSE I=LEN(L5$())+1
   : IF L0(4)=1AND I8=I7THEN L5$(1)=L4$(8)
   : ELSE L5$()=STR(L5$(),1,I)&BIN(VAL(L4$(8),2)+I9,2)
   : D$()=ALL(00)
   : I2=1
   : I8=I8-1
   : FOR I=1TO L9(10)
0430 GOSUB '220(A1,1,(VAL(L4$(J3),2)+I-1),1,2)
   : IF R1$=HEX(00)THEN GOTO 440
   : L9(8)=3
   : GOSUB 1200
0440 STR(D$(),I2)=V1$()
   : I2=I2+246
   : NEXT I
   : Q=POS(-D$()>HEX(20))
   : D8=1
0500 L9(5)=MIN(247-J6,Q-D8+1)
   : L9(2)=POS(STR(D$(),D8,L9(5))=HEX(7F))
   : IF L9(2)=1THEN GOTO 620
   : ELSE IF L9(2)<>0THEN GOTO 610
   : STR(C6$(),J6)=STR(D$(),D8,L9(5))
0540 V1$()=C6$()
   : R1$=HEX(00)
   : V4$="T"
   : $TRAN(V1$(),HEX(8020))R
   : D8=D8+L9(5)
   : IF D8<=QTHEN GOTO 580
   : L9(7)=POS(-V1$()<>HEX(80))
   : IF L9(7)<>246THEN GOTO 579
   : GOSUB '225(L8(3),1,1,1)
   : IF R1$=HEX(00)THEN GOTO 572
   : L9(8)=1
   : GOSUB 1200
0572 I9=I9+1
   : IF STR(V1$(),246,1)<>HEX(8F)THEN V1$()=HEX(8F)&ALL(20)
   : ELSE V1$()=ALL(20)
   : GOTO 580
0579 IF L9(7)=0THEN I=1
   : ELSE IF STR(V1$(),L9(7),1)=HEX(8F)THEN I=0
   : ELSE I=1
   : STR(V1$(),L9(7)+I,1)=HEX(8F)
   : IF L9(7)+I+1<247THEN STR(V1$(),L9(7)+I+1)=ALL(20)
0580 GOSUB '225(L8(3),1,1,1)
   : IF R1$=HEX(00)THEN GOTO 595
   : L9(8)=1
   : GOSUB 1200
0595 I9=I9+1
   : J6=1
   : C6$()=" "
   : IF D8<=QTHEN GOTO 500
   : ELSE IF I8=0THEN GOTO 840
   : J3=J3+1
   : GOTO 370
0610 STR(C6$(),J6,L9(2)-1)=STR(D$(),D8,L9(2)-1)
0620 D8=D8+L9(2)-1
   : J6=J6+L9(2)-1
   : GOSUB '100(255)
   : IF D8>QTHEN GOTO 540
   : ELSE GOTO 500
0655 STR(L4$(),15,2*L0(4)*I7)=L5$()
   : V1$()=L4$()
   : GOSUB '221(L8(3),1,1,1,1)
   : IF R1$=HEX(00)THEN GOTO 680
   : L9(8)=5
   : GOSUB 1200
0680 GOSUB '220(L8(3),1,2,1,1)
   : IF R1$=HEX(00)THEN GOTO 690
   : L9(8)=3
   : GOSUB 1200
0690 $UNPACK(F=HEX(A019A0066006))V1$()TO A6$(),A7$(),A0()
   : A0(3)=7+(I7*L0(4))
   : A6$(1)=R5$&" SUPER DOCUMENT"
   : A6$(2)="DATAMERGE"
   : A7$(1)=STR(L0$(4),12,4)&STR(L0$(4),10,1)
   : $PACK(F=HEX(A019A0066006))V1$()FROMA6$(),A7$(),A0()
   : V4$="A"
   : GOSUB '221(L8(3),1,2,1,1)
   : IF R1$=HEX(00)THEN GOTO 720
   : L9(8)=5
   : GOSUB 1200
0720 R5$=A7$(1)
   : DATA SAVE DA T(L8(5))L8(),L0()
   : DATA SAVE DA T(L8(5)+1)L0$()
   : COM CLEAR C1$
   : LOAD T"LPEDTCOM"
0840 L1$()=ALL(HEX(80))
   : GOSUB '112
   : $TRAN(L1$(),HEX(8020))R
   : $TRAN(L1$(),HEX(8000))R
   : J3=8
   : IF POS(L1$()<HEX(80))=0THEN GOTO 655
   : ELSE GOTO 330
1000 DEFFN'102
   : V1$()=STR(C6$(),1,246)
   : GOSUB '225(L8(3),1,1,1)
   : IF R1$=HEX(00)THEN GOTO 1037
   : L9(8)=1
   : GOSUB 1200
1037 C6$()=STR(C6$(),247)
   : J6=J6-C9
   : I9=I9+1
   : L9(4)=L9(4)+246
   : RETURN
1200 IF R1$=HEX(28)THEN RETURN
   : A5$="START"
   : ON L9(8)GOTO 1210,,1230,,1240
1210 IF R1$<>HEX(01)THEN GOTO 1220
   : L0$=BIN(11)
   : STR(L0$,2)=B9$
   : LOAD T"LPERROR"
1220 L0$=BIN(13)
   : STR(L0$,2)="Opened"
   : LOAD T"LPERROR"
1230 L0$=BIN(13)
   : STR(L0$,2)="Read"
   : LOAD T"LPERROR"
1240 L0$=BIN(13)
   : STR(L0$,2)="Completed"
   : LOAD T"LPERROR"
1250 A5$="START"
   : L0$=BIN(16)
   : LOAD T"LPERROR"
1310 DEFFN'35
1320 DEFFN'36
   : RETURN
9100 DEFFN'0"SCRATCH T ";HEX(22);"LPMERG02";HEX(22);HEX(3A);"SAVE T () ";HEX(2
     2);"LPMERG02";HEX(22)