Listing of file='IDS2PS05' on disk='vmedia/701-2716B.wvd.zip'
# Sector 673, program filename = 'IDS2PS05'
1000 REM "IDS2PS05" - SCREEN MASK "BOX" EDITOR
1005 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
: P=N*9+1
: P=P+MOD(2242-P,4)
: DIM J$(2)16
: J5$=ALL(00)
: MAT SEARCHE2$()<P,2242-P>,>STR(J5$,1,4)TO F9$STEP 4
: Q=VAL(F9$,2)
: IF Q=0THEN 1170
: PACK(##)F9$FROMR,C
: Q=P+Q
: Q=Q-1
: MAT SEARCHE2$()<Q,2242-Q>,=STR(F9$,1,2)TO F9$STEP 4
: IF F9$=HEX(0000)THEN 1165
: P=Q-1+VAL(F9$,2)
1120 UNPACK(##)STR(E2$(),P,4)TO E1()
: PRINT AT(E1(1),E1(2));BOX(-E1(3),-E1(4));
: STR(E2$(),P,4)=ALL(00)
: E1(1)=E1(1)+1
: E1(2)=E1(2)+1
: GOTO 1180
1165 MAT SEARCHE2$()<P,2242-P>,=STR(J5$,1,4)TO F9$STEP 4
: IF F9$>HEX(0000)THEN 1170
: PRINT AT(23,0,80);BOX(-1,-3);AT(23,4);BOX(-1,-3);AT(23,8);BOX(-1,-20);BOX
(-1,-39);BOX(-1,-56);BOX(-1,-70);AT(23,0);HEX(020402000E07);"Error Messag
e: No more boxes may be added - EXEC to continue";
1166 E6$=HEX(8B)
: PRINT AT(23,79);HEX(020404000E);E6$;AT(23,79);
: KEYIN E6$
: PRINT AT(23,79,1);
: GOTO 1460
1170 E1(1)=R+1
: E1(2)=C+1
: E1(3)=0
: E1(4)=80-E1(2)
1180 PRINT HEX(06);AT(23,28);BOX(-1,0);AT(23,47);BOX(-1,0);AT(23,64);BOX(-1,0)
;AT(23,9,69);"BOX EDIT ROW = COL = DEP = WID = FN'31 =
Cancel box";HEX(0105020402000E);
: B=1
1200 C1$=" "
: CONVERT E1(B)TO C1$,(##)
: GOSUB '71(C1$,2,23,10*B+15,"0123456789012345"," ",1)
: CONVERT C1$TO Q
: ON BGOTO 1250,1280,1310,1310
1250 IF Q<25AND Q<>0THEN 1310
: PRINT HEX(07);
: GOTO 1200
1280 IF Q<81AND Q<>0THEN 1310
: PRINT HEX(07);
: GOTO 1200
1310 E1(B)=Q
: ON VAL(E6$)GOTO 1200,1360,1460
: IF B=4OR E6$=HEX(82)THEN 1380
: B=B+1
: GOTO 1200
1360 B=MAX(B-1,1)
: GOTO 1200
1380 J5$=HEX(00000000)
: IF E1(1)+E1(3)<26THEN 1386
: PRINT HEX(07);
: B=3
: GOTO 1200
1386 IF E1(2)+E1(4)<82THEN 1390
: PRINT HEX(07);
: B=4
: GOTO 1200
1390 P=2242
1400 P=P-4
: IF STR(E2$(),P,4)<>J5$THEN 1400
: E1(1)=E1(1)-1
: E1(2)=E1(2)-1
: PACK(##)STR(E2$(),P,4)FROME1()
: PRINT HEX(0F06);AT(E1(1),E1(2));BOX(E1(3),E1(4));
1460 GOSUB 2000
: LOAD T#2,"IDS2PS04"1000,
2000 PRINT HEX(060F);AT(23,0);BOX(1,3);AT(23,4);BOX(1,3);AT(23,0);
: PRINTUSING " ## ## FN'0 = Edit Field FN'16 = Edit Box FN'31 = Canc
el EXEC = Save ";R+1,C+1;
: PRINT AT(23,8);BOX(1,20);BOX(1,39);BOX(1,56);BOX(1,70);
: PRINT HEX(01)
: RETURN
2020 GOTO 2150
2030 DEFFN'71(C1$,L,Y,X,J$(1),J$(2),K)
: PRINT HEX(06020204000E);AT(Y,X);STR(C1$,1,L);
: P=0
2130 P=P+1
: GOTO 2160
2150 PRINT HEX(07);
2160 PRINT AT(Y,X-1+P);HEX(05);
2170 KEYIN E6$,,2300
: IF E6$=HEX(82)THEN E6$=HEX(0D)
: IF E6$=HEX(0D)THEN RETURN
: IF E6$<>HEX(08)THEN 2240
: IF P=1THEN 2150
: P=P-1
: GOTO 2160
2240 IF P=2AND L=2AND J$(2)<>" "AND POS(J$(2)=E6$)=0THEN 2150
: IF J$(1)<>" "AND POS(J$(1)=E6$)=0THEN 2150
: IF E6$<HEX(20)OR E6$>HEX(7F)THEN 2150
: STR(C1$,P,1)=E6$
: PRINT E6$;
: IF P<LTHEN 2130
: ELSE RETURN
2300 $TRAN(E6$,HEX(000100020003010C017E014C024D020D027F031F))R
: ON VAL(E6$)GOTO 2320,2320,2320
: PRINT HEX(07);
: GOTO 2170
2320 RETURN
3699 ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
: E$="IDS2PS05"
: IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
: STOP "ERROR"