32000 DEF FNW0$(W%,W1%,W2%)\ ON ERROR GOTO 32030\ W$ = ""\ W3%=0%\ W8%=W1%\ FIELD #W%, W2%-1% AS W2$, 513%-W2% AS W1$\ GET #W%, RECORD W1% 32010 W0%=INSTR(1%,W1$,CHR$(126%))\ IF W0% THEN 32020 ELSE W$=W$+W1$\ FIELD #W%, 512% AS W1$\ GET #W%\ W8%=W8%+1%\ GOTO 32010 32020 W$=W$+LEFT(W1$,W0%-1%)\ W9%=W2%+LEN(W$)+1%\ W9%=W9%-512% WHILE W9%>=512%\ FNW0$=W$\ GOTO 32040 32030 FNW0$=""\ W3%=-1%\ RESUME 32040 32040 ON ERROR GOTO 0\ FNEND 32050 DEF FNW0%(W%,W$)\ ON ERROR GOTO 32090\ W0$=W$+CHR$(126%)\ W3%=0%\ W0%=LEN(W0$)\ FIELD #W%, 2% AS W1$, 2% AS W2$\ GET #W%, RECORD 1%\ W1%,W7%=CVT$%(W1$)\ W4%=CVT$%(W2$)\ W2%=W4%+1% 32060 GET #W%, RECORD W7%\ W5%=512%-W4%\ FIELD #W%, W4% AS W1$, W5% AS W2$\ LSET W2$=W0$\ W6%=W4%+W0%\ W6%=W6%-512% WHILE W6%>512% 32070 W0%=W0%-W5%\ IF W0%<=0% THEN 32080 ELSE PUT #W%, RECORD W7%\ W7%=W7%+1%\ W0$=RIGHT(W0$,W5%+1%)\ FIELD #W%, 512% AS W2$\ LSET W2$=W0$\ W5%=512%\ GOTO 32070 32080 PUT #W%, RECORD W7%\ GET #W%, RECORD 1%\ FIELD #W%, 2% AS W1$, 2% AS W2$\ LSET W1$=CVT%$(W7%)\ LSET W2$=CVT%$(W6%)\ PUT #W%, RECORD 1%\ GOTO 32100 32090 W1%,W2%,W3%=-1%\ RESUME 32100 32100 ON ERROR GOTO 0\ FNW0%=W3%\ FNEND 32110 DEF FNW1%(W%,W4%,W5%,W4$)\ ON ERROR GOTO 32140\ W0$=FNW0$(W%,W4%,W5%)\ GOTO 32150 IF W3%\ W0%=LEN(W0$)\ W6%=LEN(W4$)\ W0$=W4$+STRING$(W0%-W6%,0%) IF W0%>=W6%\ W8%=W4%\ W7%=W5%\ IF W6%>W0% THEN W3%=-2%\ GOTO 32150 32120 GET #W%, RECORD W8%\ W6%,W9%=LEN(W0$)\ W9%=513%-W7% IF (W7%+W9%)>513%\ FIELD #W%, W7%-1% AS W1$, W9% AS W2$\ LSET W2$=W0$\ PUT #W%, RECORD W8% 32130 IF (W6%+W7%)<=513% THEN 32150 ELSE W8%=W8%+1%\ W7%=1%\ W0$=RIGHT(W0$,514%-W7%)\ W6%=LEN(W0$)\ GOTO 32120 32140 W3%=-1%\ RESUME 32150 32150 ON ERROR GOTO 0\ FNW1%=W3%\ FNEND 32767 END