DECLARE FUNCTION Ilength$ (txt$)
DECLARE FUNCTION LastPart$ (t$)
INPUT "Filelist-->", aff$
INPUT "PackedFile-->", Pack$
On error Goto XXS
OPEN Pack$ FOR BINARY AS #2
OPEN aff$ FOR INPUT AS #3
DIM ff AS STRING * 1000
DO UNTIL EOF(3)
LINE INPUT #3, flnm$
OPEN flnm$ FOR BINARY AS #1
ttl$ = Ilength$(LastPart$(RTRIM$(LTRIM$(UCASE$(flnm$)))))
FOR m = 1 TO LEN(ttl$)
dd$ = MID$(ttl$, m, 1)
PUT #2, , dd$
NEXT m
ffs = LOF(1)
PUT #2, , ffs
FOR mm = 0 TO LOF(1)
GET #1, , ff
IF LEN(ff$) + mm > LOF(1) THEN gg$ = LEFT$(ff, LOF(1) - mm): PUT #2, , gg$: m = m + LEN(gg$): EXIT FOR ELSE PUT #2, , ff
'PRINT LOF(1); LOF(2); LEN(ff$); LEN(gg$); mm
mm = mm + (LEN(ff) - 1)
NEXT mm
CLOSE 1
LOOP
decidednum = 100 - VAL(RIGHT$(STR$(LOF(2)), 2))
IF decidednum < 12 THEN decidednum = decidednum + 100
FOR maxm = 1 TO decidednum
nn = nn + 1
nm$ = RIGHT$(LTRIM$(RTRIM$(STR$(nn))), 1)
PUT #2, , nm$
NEXT maxm
XXS:
CLOSE 1, 2, 3, 4, 5, 6, 7, 8, 9
END
RESUME NEXT

FUNCTION Ilength$ (txt$)
Ilength$ = STRING$(12 - LEN(txt$), 32) + txt$
END FUNCTION

FUNCTION LastPart$ (t$)
FOR q = LEN(t$) TO 1 STEP -1
IF MID$(t$, q, 1) = "\" THEN EXIT FOR ELSE nn$ = MID$(t$, q, 1) + nn$
NEXT q
LastPart$ = nn$
END FUNCTION

