open FDDE DIR 1$ |" k7 w6 Z0 q- u
open FDDE TOC 2: o1 N0 s: I6 m# }: T) U0 v
do 5 g+ q4 O; \! u' A
getdstring CHUNK 4 2# c0 m8 ?1 v: _8 g/ \/ p7 c: [& V
get DUNNO long 2
9 l8 y; B: J* ?0 ?" q+ o% |1 Z5 a4 L get DUNNO long 2
: C2 f; ^' M. j `7 O get FILES long 2
( G. |! e5 R$ C8 Q$ {8 S2 E/ b get DUNNO long 2
) B6 g- S% G, {' K. n, q get DUNNO long 2' c% e' n4 S9 f/ `0 ^( D
get DUNNO long 26 X9 O* Q4 F* G9 t! |
get DUNNO long 23 S" _. [5 n Z0 N
while CHUNK != "REST"
/ {7 @) I9 s( F9 S9 l9 Osavepos NAMEPTR 1
+ k- A5 x0 R# a$ O% B5 qfor i = 1 to FILES( X( O! f7 B* T
get DUNNO long 2
/ ?0 Z2 r* B7 K. n3 T& g get SIZE long 2
6 ?, G+ _/ o" F' b- k$ N" I9 Q math SIZE >>= 2
0 `' e, a% _. x. g) s( U& g1 Q& f get OFFSET long 2
: w" }) `) z9 | goto NAMEPTR 11 p; T4 @5 T% f5 R! k3 X
get NAMEOFF long 1
. ]" @* c4 }, E savepos NAMEPTR 1
. m; {# A5 F" e. ~4 B goto NAMEOFF 1
0 q6 F9 a5 _3 @8 I+ |% E get NAME string 11 u7 h- q* w) I' b0 v# n, R- Q
log NAME OFFSET SIZE" E0 D& b7 @; C
next i
_4 T/ N/ P% c/ c6 I
) I) c5 k6 T" A) k$ ]0 j2 b& v; q8 a- O4 p$ w
这是解包器6 ^: `2 T4 o% k1 h
+ E) e8 C! ^! V8 @& v4 N8 _
for 里面读取toc的部分,long就是4个字节
, G; j# a* }, l, z$ X2 u: U' H get DUNNO long 2 h& ?1 Q/ n: i6 \) u
get SIZE long 2
) G( ~0 l }. B% W+ I; H- ^& Z. } math SIZE >>= 2
( n6 T8 }( O, Q. m* q get OFFSET long 2
# D' b3 W9 k( e! }& z. h
/ p! }+ ~3 W$ q# g+ |( P$ ]for 里面读取dir的部分,long就是4个字节+ p, N2 n7 ~- J* |8 P
goto NAMEPTR 1
5 i3 J, p$ Q+ [; o" E! O get NAMEOFF long 1
0 m# d* U7 H% o0 s# s3 I2 ` savepos NAMEPTR 1
/ l9 }9 m% }- G goto NAMEOFF 1- S* Z7 ?/ u$ H. ^% E6 h7 V }
get NAME string 1 |