Listing of file='IDS2PS03' on disk='vmedia/701-2716B.wvd.zip'
# Sector 642, program filename = 'IDS2PS03' 1000 REM "IDS2PS03" - SCREEN MASK TEXT EDITOR FIELD & BOX DISPLAY 1004 COM C3$25 : IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM" 1015 DEFFNP(F)=INT(VAL(STR(E2$(F),2),2)*.0625) : DEFFNL(F)=VAL(E2$(F)) : DEFFNR(F)=INT(VAL(STR(E2$(F),4))*.125) : DEFFNC(F)=INT(VAL(STR(E2$(F),5))*.5) : DEFFNY(X)=80*Y+X+1 : F$()=ALL(00) : STR(E$(),1993)=ALL(09) : E$(2072)=" " : PRINT HEX(060202020E); : N=0 : J4=F1(8) : E$=" " : MAT SEARCHE3$(),=STR(E$,1,8)TO F9$STEP 8 : IF F9$=HEX(0000)THEN F9$=BIN(1999,2) 1040 FOR I=1TO INT(VAL(F9$,2)/8) : IF VAL(E2$(I))=0THEN 1110 : D8$=BIN(I) : E$=ALL(D8$) : STR(F$(),80*INT(VAL(STR(E2$(I),4))*.125)+INT(VAL(STR(E2$(I),5))*.5)+1,MAX (VAL(E2$(I))*SGN(INT(VAL(STR(E2$(I),7))/64)+MOD(VAL(STR(E2$(I),5)),2)),1) )=E$ : J4=MAX(J4,INT(VAL(STR(E2$(I),2),2)*.0625)+SGN(INT(VAL(STR(E2$(I),2),2)*.0 625))*VAL(E2$(I))) : N=N+1 1110 NEXT I : Z=N : GOSUB '71 : GOSUB 2280 : MAT REDIM E$(24)83 : DATA LOAD DA T#3,(E4)E$() : MAT REDIM E$(E8)1 : LOAD T#2,"IDS2PS04"1000, 2010 DEFFN'72(Y,X) : E$=STR(E$(),Y*80+X+153,80-X) : $TRAN(E$,HEX(80202009))R : PRINT HEX(06);AT(Y,X);STR(E$,1,80-X);AT(Y,X); 2020 IF X>=80OR POS(STR(F$(),80*Y+X+1,80-X)>00)=0THEN RETURN : E$=ALL(8B) : X=X-1+POS(STR(F$(),80*Y+X+1)>00) : IF STR(E2$(VAL(STR(F$(),80*Y+X+1))),7,1)<HEX(40)AND MOD(VAL(STR(E2$(VAL(S TR(F$(),80*Y+X+1))),5)),2)=0THEN 2072 : PRINT AT(Y,X);STR(E$,1,VAL(E2$(VAL(STR(F$(),80*Y+X+1))))) : X=X+VAL(E2$(VAL(STR(F$(),80*Y+X+1)))) : GOTO 2020 2072 PRINT AT(Y,X);HEX(9B); : X=X+1 : GOTO 2020 2090 DEFFN'71 : PRINT HEX(03060F) : FOR I=0TO 23 : GOSUB '72(I,0) : NEXT I : Q=MAX(1,N*9+1) : Q=Q+MOD(2242-Q,4) : IF Q=0THEN RETURN : J5$=ALL(00) : MAT SEARCHE2$()<Q,2243-Q>,>STR(J5$,1,4)TO D3$STEP 4 : IF VAL(D3$,2)=0THEN RETURN : Q=VAL(D3$,2)+Q-1 : Q=Q+MOD(2242-Q,4) : P=2242 2210 P=P-4 : IF P<QOR E3$(1+P/9)<>" "THEN RETURN : IF STR(E2$(),P,4)=HEX(00000000)THEN 2210 : UNPACK(##)STR(E2$(),P,4)TO E1() : PRINT AT(E1(1),E1(2));BOX(E1(3),E1(4)); : GOTO 2210 2280 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 3699 ON ERRORE1$,E2$GOTO 3700 3700 DEFFN'31 : E$="IDS2PS03" : IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000, : STOP "ERROR"