home *** CD-ROM | disk | FTP | other *** search
/ Mega Top 1 / os2_top1.zip / os2_top1 / APPS / FILEMAN / FM2_222A / ARCHIVER.BB2 next >
Text File  |  1995-01-02  |  15KB  |  646 lines

  1. 21
  2. ;That first line is how many lines/record in this archiver.bb2 file...
  3. ;very important, do not change.  Allows future modifications to the
  4. ;file to be transparent to older programs.
  5. ;
  6. ;ARCHIVER.BB2, archiver control file for XBBS-OS/2, XGROUP and AV
  7. ;KEEP A COPY OF THIS ORIGINAL FILE FOR INFORMATION LATER!
  8. ;
  9. ;format for this archiver.bb2 file (each entry has 21 lines):
  10. ;
  11. ; 1st line:  ID of archiver (like ARC, LHARC, PKZIP, etc.; human consumption)
  12. ; 2nd line:  normal extension for archives (like ZIP, ARC, LZH; note no period)
  13. ; 3rd line:  offset into file to signature
  14. ; 4th line:  list command
  15. ; 5th line:  extract command
  16. ; 6th line:  extract w/ directories command
  17. ; 7th line:  test archive command
  18. ; 8th line:  add/create command
  19. ; 9th line:  add/create w/ paths command
  20. ;10th line:  add/create & recurse command
  21. ;11th line:  move command
  22. ;12th line:  move w/ paths command
  23. ;13th line:  delete command
  24. ;14th line:  signature (case sensitive, leading spaces count!
  25. ;15th line:  startlist string
  26. ;16th line:  endlist string
  27. ;17th line:  old size position  (all positions 0-based, -1 = not available)
  28. ;18th line:  new size position
  29. ;19th line:  file date position
  30. ;20th line:  number of positions in dates (for "03 June 92" would be 3)
  31. ;21st line:  file name position (absolutely required, of course; -1 = last pos)
  32. ;
  33. ;a semicolon demarks a comment.  they may appear at any point *except*
  34. ;within the 21 lines of an archiver entry.  comments are ignored by AV.
  35. ;
  36. ;note that all archiver strings should include the archiver's parameter to
  37. ;prevent it from stopping for input!  also note that archive types are checked
  38. ;in order of their listing in this file.  finally, this file is set up for
  39. ;the archivers I had lying around; if yours are different versions, you may
  40. ;have to modify this file.  All archivers are OS/2 (or FAPI) versions.
  41. ;DOS archivers will NOT work.  I said DOS archivers will NOT work.
  42. ;
  43. ;how archive listing works (for the curious):
  44. ;
  45. ;AV first tries to find a signature match.  failing that, it checks
  46. ;to see if the file might be an ARC-format file.  If the latter, READARC.CMD
  47. ;is spawned (by XBBS) with ARC as the first argument and v as the second,
  48. ;followed by the filename (AV spawns ARC directly).  If the former, the list 
  49. ;command is sent, followed by the filename.  AV (and XBBS) then parses the
  50. ;resultant file using the start and end list lines and offsets in file lines
  51. ;listed in this file for the given archiver.
  52. ;
  53. ;Warning:  I'm told there's a bug in some versions of 4OS2 that can cause
  54. ;a call to an archiver to fail if the archiver has an extension (i.e.
  55. ;UNZIP works, UNZIP.EXE doesn't).  If things fail for no apparent reason
  56. ;and you're using 4OS2 you might keep it in mind.
  57. ;
  58. ;Sample C code to access this information is in sample.c in the AV
  59. ;distribution archive, and is free for the using in your own projects.
  60. ;
  61. ;-----------------Archiver data begins-----------------------
  62. ;
  63. ;This entry is for Zoo 2.1
  64. ;
  65. ;NOTE:  Bug in Zoo 2.1 seems to cause files stored with paths to
  66. ;be extracted w/ paths even when you don't ask it to do so...
  67. ;
  68. ;
  69. Zoo 2.1
  70. ZOO
  71. 20
  72. ZOO.EXE v
  73. ZOO.EXE xO
  74. ZOO.EXE xO/
  75. ZOO.EXE -test
  76. ZOO.Exe ah:
  77. ZOO.EXE ah
  78.  
  79. ZOO.EXE aM:h
  80. ZOO.EXE aMh
  81. ZOO.EXE -delete
  82. \xdc\xa7\xc4\xfd
  83. --------  --- --------  --------- --------
  84. --------  --- --------  --------- --------
  85. 0
  86. 2
  87. 3
  88. 3
  89. -1
  90. ;
  91. ; This entry is for LHarc 2.22.  Supposedly fixes bugs in earlier versions.
  92. ; Actually seems to have done so.  Good work, Peter.
  93. ;
  94. LHarc 2.22
  95. LZH
  96. 2
  97. LH.EXE /o l
  98. LH.EXE /o x
  99. LH.EXE /o /s x
  100. LH.EXE t
  101. LH.EXE /o a
  102.  
  103. LH.EXE /o /s a
  104. LH.EXE /o m
  105.  
  106. LH.EXE /o d
  107. -lh
  108.   -------- --------  -----------------------------------------
  109.   --------          -----------------------------------------
  110. 0
  111. -1
  112. 1
  113. 1
  114. 2
  115. ;
  116. ; Duplicate entry is for LHarc 2.22 using LH32 filename.
  117. ;
  118. LHarc-32 2.22
  119. LZH
  120. 2
  121. LH32.EXE /o l
  122. LH32.EXE /o x
  123. LH32.EXE /o /s x
  124. LH32.EXE t
  125. LH32.EXE /o a
  126.  
  127. LH32.EXE /o /s a
  128. LH32.EXE /o m
  129.  
  130. LH32.EXE /o d
  131. -lh
  132.   -------- --------  -----------------------------------------
  133.   --------          -----------------------------------------
  134. 0
  135. -1
  136. 1
  137. 1
  138. 2
  139. ;
  140. ; This entry is for LHarc 2.22 self-extractors.
  141. ;
  142. LHarc 2.22 SE
  143. LZH
  144. 22963
  145. LH.EXE /o l
  146. LH.EXE /o x
  147. LH.EXE /o /s x
  148. LH.EXE t
  149. LH.EXE /o a
  150.  
  151. LH.EXE /o /s a
  152. LH.EXE /o m
  153.  
  154. LH.EXE /o d
  155. -lh
  156.   -------- --------  -----------------------------------------
  157.   --------          -----------------------------------------
  158. 0
  159. -1
  160. 1
  161. 1
  162. 2
  163. ;
  164. ; This entry is for LHA 2.12 (DOS) self-extractors since LH 2.22 seems to
  165. ; recognize them.
  166. ;
  167. LHarc 2.12 DOS SE
  168. LZH
  169. 1638
  170. LH.EXE /o l
  171. LH.EXE /o x
  172. LH.EXE /o /s x
  173. LH.EXE t
  174. LH.EXE /o a
  175.  
  176. LH.EXE /o /s a
  177. LH.EXE /o m
  178.  
  179. LH.EXE /o d
  180. -lh
  181.   -------- --------  -----------------------------------------
  182.   --------          -----------------------------------------
  183. 0
  184. -1
  185. 1
  186. 1
  187. 2
  188. ;
  189. ;
  190. ;This entry is for LH2 2.11.
  191. ;
  192. ;NOTE:  sometimes will put a file into an archive more than once, necessitating 
  193. ;deleting both.  EAs not handled well, but at least they're handled.
  194. ;
  195. LHarc 2.11
  196. LZH
  197. 2
  198. LH.EXE /o l
  199. LH.EXE /o x
  200. LH.EXE /o /s x
  201. LH.EXE t
  202. LH.EXE /o a
  203.  
  204. LH.EXE /o /s a
  205. LH.EXE /o m
  206.  
  207. LH.EXE /o d
  208. -lh
  209.   -------- -------- -----------------------------------------
  210.   --------          -----------------------------------------
  211. 0
  212. -1
  213. 1
  214. 1
  215. 2
  216. ;
  217. ;
  218. ;This entry is for ZIP 1.9/UNZIP 5.0 (available in 32-bit versions)
  219. ;ZIP/UNZIP should work with PKZIP 2.04 files.  Saves EAs well.  Won't
  220. ;extract a file stored with path without the path (actually, this seems
  221. ;to be fixed now.  Maybe.  There are dozens of versions floating around;
  222. ;you don't pays your money and you takes your chances).  If you have a
  223. ;version that won't extract files with paths without the paths, there's
  224. ;a workaround -- change the line "UNZIP.EXE -jo" below to "UNZIP.EXE -o".
  225. ;Because of broken ZIP archives floating around everywhere, this is here
  226. ;without the version flag in the signature (should really be PK\x3\x4\x14).
  227. ;Damnit, it looks like Katz's own software is what does the botching.  So
  228. ;much for the keeper of the ZIP standard...  Zip still seems to have to
  229. ;have erratic problems with creating archives with some pathnames...
  230. ;
  231. Zip/UnZip 1.9/5.0
  232. ZIP
  233. 0
  234. UNZIP.EXE -lUo
  235. UNZIP.EXE -jo
  236. UNZIP.EXE -o
  237. UNZIP.EXE -to
  238. ZIP.EXE -j9g
  239. ZIP.EXE -9g
  240. ZIP.EXE -r9g
  241. ZIP.EXE -mj9g
  242. ZIP.EXE -m9g
  243. ZIP.EXE -d
  244. PK\x3\x4
  245.  ------    ----    ----    ----
  246.  ------                    -------
  247. 0
  248. -1
  249. 1
  250. 2
  251. 3
  252. ;
  253. ;
  254. ;Duplicate entry is for ZIP 1.9/UNZIP 5.0 using 32 filenames.
  255. ;
  256. Zip/UnZip-32 1.9/5.0
  257. ZIP
  258. 0
  259. UNZIP32.EXE -lUo
  260. UNZIP32.EXE -jo
  261. UNZIP32.EXE -o
  262. UNZIP32.EXE -to
  263. ZIP32.EXE -j9g
  264. ZIP32.EXE -9g
  265. ZIP32.EXE -r9g
  266. ZIP32.EXE -mj9g
  267. ZIP32.EXE -m9g
  268. ZIP32.EXE -d
  269. PK\x3\x4
  270.  ------    ----    ----    ----
  271.  ------                    -------
  272. 0
  273. -1
  274. 1
  275. 2
  276. 3
  277. ;
  278. ;
  279. ;This entry is for PKZIP 1.01
  280. ;
  281. PK(Un)Zip 1.01
  282. ZIP
  283. 0
  284. PKZIP.EXE -v
  285. PKUNZIP.EXE -o
  286. PKUNZIP.EXE -o -d
  287. PKUNZIP.EXE -t
  288. PKZIP.EXE -a
  289. PKZIP.EXE -a -P
  290. PKZIP.EXE -a -p -r
  291. PKZIP.EXE -m
  292. PKZIP.EXE -m -P
  293. PKZIP.EXE -d
  294. PK\x3\x4\xa
  295.  ------  ------   ----- -----   ----    ----   ------  ----  ----
  296.  ------          ------  ---                                 -------
  297. 0
  298. 2
  299. 4
  300. 2
  301. 8
  302. ;
  303. ;
  304. ;This entry is for PKZIP 1.01 named PK(Un)Zip2
  305. ;
  306. PK(Un)Zip2 1.01
  307. ZIP
  308. 0
  309. PKZIP2.EXE -v
  310. PKUNZIP2.EXE -o
  311. PKUNZIP2.EXE -o -d
  312. PKUNZIP2.EXE -t
  313. PKZIP2.EXE -a
  314. PKZIP2.EXE -a -P
  315. PKZIP2.EXE -a -p -r
  316. PKZIP2.EXE -m
  317. PKZIP2.EXE -m -P
  318. PKZIP2.EXE -d
  319. PK\x3\x4\xa
  320.  ------  ------   ----- -----   ----    ----   ------  ----  ----
  321.  ------          ------  ---                                 -------
  322. 0
  323. 2
  324. 4
  325. 2
  326. 8
  327. ;
  328. ;This entry is for unzipsfx self-extractors
  329. ;
  330. unzipsfx
  331.  
  332. 217
  333. UNZIP.EXE -lUo
  334. UNZIP.EXE -jo
  335. UNZIP.EXE -o
  336. UNZIP.EXE -to
  337.  
  338.  
  339.  
  340.  
  341.  
  342. ZIP.EXE -d
  343. unzipsfx
  344.  ------    ----    ----    ----
  345.  ------                    -------
  346. 0
  347. -1
  348. 1
  349. 2
  350. 3
  351. ;
  352. ;
  353. ;This entry is for PKZIP self-extractors type 1
  354. ;
  355. PK(Un)Zip SE #1
  356.  
  357. 2934
  358. PKZIP.EXE -v
  359. PKUNZIP.EXE -o
  360. PKUNZIP.EXE -o -d
  361. PKUNZIP.EXE -t
  362.  
  363.  
  364.  
  365.  
  366.  
  367. PKZIP.EXE -d
  368. PK\x3\x4
  369.  ------  ------   ----- -----   ----    ----   ------  ----  ----
  370.  ------          ------  ---                                 -------
  371. 0
  372. 2
  373. 4
  374. 2
  375. 8
  376. ;
  377. ;This entry is for PKZIP self-extractors type 2
  378. ;
  379. PK(Un)Zip SE #2
  380.  
  381. 12784
  382. PKZIP.EXE -v
  383. PKUNZIP.EXE -o
  384. PKUNZIP.EXE -o -d
  385. PKUNZIP.EXE -t
  386.  
  387.  
  388.  
  389.  
  390.  
  391. PKZIP.EXE -d
  392. PK\x3\x4
  393.  ------  ------   ----- -----   ----    ----   ------  ----  ----
  394.  ------          ------  ---                                 -------
  395. 0
  396. 2
  397. 4
  398. 2
  399. 8
  400. ;
  401. ;
  402. ;
  403. ;This entry is for PKZIP self-extractors type 3
  404. ;
  405. PK(Un)Zip SE #2
  406.  
  407. 30948
  408. PKZIP.EXE -v
  409. PKUNZIP.EXE -o
  410. PKUNZIP.EXE -o -d
  411. PKUNZIP.EXE -t
  412.  
  413.  
  414.  
  415.  
  416.  
  417. PKZIP.EXE -d
  418. PK\x3\x4
  419.  ------  ------   ----- -----   ----    ----   ------  ----  ----
  420.  ------          ------  ---                                 -------
  421. 0
  422. 2
  423. 4
  424. 2
  425. 8
  426. ;
  427. ;
  428. ;This entry is for Unarj 2.10 ported by Scott Dudley
  429. ;
  430. (Un)Arj 2.10
  431.  
  432. 0
  433. UNARJ.EXE l
  434. UNARJ.EXE e
  435. UNARJ.EXE x
  436. UNARJ.EXE t
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443. \x60\xea
  444. ------------ ---------- ---------- ----- ----------------- -------- ---- ------
  445. ------------ ---------- ---------- ----- -----------------
  446. 1
  447. 2
  448. 4
  449. 1
  450. 0
  451. ;
  452. ;
  453. ;This entry is for Unarj 2.30 demo version.  Don't use Unarj 2.41; it's broken.
  454. ;
  455. (Un)Arj 2.30 demo
  456.  
  457. 0
  458. UNARJ.EXE l
  459. UNARJ.EXE e
  460. UNARJ.EXE x
  461. UNARJ.EXE t
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468. \x60\xea
  469. ------------ ---------- ---------- ----- ----------------- -------- -----------
  470. ------------ ---------- ---------- ----- -----------------
  471. 1
  472. 2
  473. 4
  474. 1
  475. 0
  476. ;
  477. ;This entry is for ARC 5.12mpl
  478. ;
  479. Arc 5.12mpl
  480. ARC
  481. 0
  482. ARC.EXE lwn
  483. ARC.EXE ewn
  484.  
  485. ARC.EXE t
  486. ARC.EXE awn
  487.  
  488.  
  489. ARC.EXE mwn
  490.  
  491. ARC.EXE dwn
  492. \x1a
  493. ============  ========  =========
  494.         ====  ========
  495. 1
  496. -1
  497. 2
  498. 3
  499. 0
  500. ;
  501. ;This entry is for ARC2 (6.0)
  502. ;Note that I don't actually have a copy of this...
  503. ;
  504. Arc 6.0
  505. ARC
  506. 0
  507. ARC.EXE l
  508. ARC.EXE ewn
  509.  
  510. ARC.EXE t
  511. ARC.EXE awn
  512.  
  513.  
  514. ARC.EXE mwn
  515.  
  516. ARC.EXE dwn
  517. \x1a
  518. =================  ========  =========
  519.              ====  ========
  520. 1
  521. -1
  522. 2
  523. 3
  524. 0
  525. ;
  526. ;
  527. ;Duplicate entry is for ARC2 (6.0) using ARC2 filename.
  528. ;
  529. Arc 6.0
  530. ARC
  531. 0
  532. ARC2.EXE l
  533. ARC2.EXE ewn
  534.  
  535. ARC2.EXE t
  536. ARC2.EXE awn
  537.  
  538.  
  539. ARC2.EXE mwn
  540.  
  541. ARC2.EXE dwn
  542. \x1a
  543. =================  ========  =========
  544.              ====  ========
  545. 1
  546. -1
  547. 2
  548. 3
  549. 0
  550. ;
  551. ;-----------------Archiver data ends-----------------------
  552. ;
  553. ;
  554. ; For possible future use:
  555. ;
  556. ; Squeeze-it signature:  (Offset 0)     \x48\x4C\x53\x51\x5Ah
  557. ; HA signature:          (Offset 0)     HA
  558. ; HAP signature:         (Offset 0)     \x913HF
  559. ; HPK signature:         (Offset 0)     HPAK
  560. ; SQZ signature:         (Offset 0)     HLSQZ
  561. ; DWZ signature:         (Offset -3)    DWC
  562. ;
  563. ; No OS/2 versions available yet to my knowledge...
  564. ;
  565. ;
  566. ;
  567. ;Notes on modifying/updating this file:
  568. ;=====================================
  569. ;
  570. ;You can add as many archivers as you like to this file.
  571. ;here are some suggestions on how to go about it:
  572. ;
  573. ;list an archive with the archiver, redirecting to a disk
  574. ;file (ex. "ARC l AFILE.ARC > TEMP.").  Load the resultant
  575. ;file into a text editor.  Clip out the startlist and endlist
  576. ;strings and paste directly into this file on the appropriate
  577. ;lines; prevents errors due to typos when copying manually.
  578. ;Count the positions of filename, date, etc. and place on the
  579. ;appropriate line.  Now run the archiver redirected to a file
  580. ;to get its help screen (ex. "ARC > TEMP." or "ZOO h > TEMP.").
  581. ;Look for the various command options (extract, list, etc.) and
  582. ;put them into the file on the appropriate lines -- remember to
  583. ;add the modifiers to prevent the archiver from stopping to ask
  584. ;questions!  You could be in deep doo-doo if it's a detached
  585. ;process.  While it may seem a pain in the arse to have to
  586. ;edit this file when an archiver changes its command structure
  587. ;or list format, at least it's something within your control;
  588. ;you don't have to wait for an update to AV.  That means if I
  589. ;die tomorrow you'll still be able to use AV for years to come.
  590. ;
  591. ;Here's an example of an ARC listing (5.12mpl, command "ARC l"):
  592. ;
  593. ;----------------cut here----------------------
  594. ;Name          Length    Date
  595. ;============  ========  =========    <--this line is start-of-list
  596. ;MAKEFILE           374  28 Nov 89
  597. ;QSORT.C          14279  29 Nov 89
  598. ;QSORT.EXE        24629  29 Nov 89
  599. ;STUFF.H            371  29 Nov 89
  600. ;        ====  ========               <--this line is end-of-list
  601. ;Total      4     39653
  602. ;----------------cut here----------------------
  603. ;
  604. ;Note the filename is in position 0, old length in position 1, and the
  605. ;date starts in position 2, with 3 parts, and there's no new length
  606. ;field (so it'd be -1).  Compare that to the archiver entry for
  607. ;ARC 5.12mpl above and you should get a feel for what all those fields
  608. ;mean.  Here's a diagram of how a file line breaks down:
  609. ;
  610. ;STUFF.H            371  29 Nov 89
  611. ;  ^                 ^   ^
  612. ;  |                 |   |
  613. ;  |                 |   +--Date starts in field 2, 3 parts (29, Nov, and 89)
  614. ;  |                 |
  615. ;  |                 +--Old file length, field 1
  616. ;  |
  617. ;  +--Filename, field 0 (count from 0, not 1)
  618. ;
  619. ;
  620. ;If you're adding an entirely new archive format, note that you can
  621. ;use 'C'-style \x<hexnumber> on the signature line in this file.
  622. ;For example, the \x1a in ARC 5.12mpl's signature line means AV will
  623. ;look for an ASCII 26 (text EOF marker) in position 0 (first byte, as
  624. ;indicated by ARC's line 3, the offset into a file for the signature)
  625. ;of a file to determine if it's an archive.  If line 3's offset is
  626. ;negative, AV looks from the end of the file instead of the beginning.
  627. ;You can usually figure out what an archiver's signature is by looking
  628. ;at a few archives with a file viewing program like Vernon Buerg's 
  629. ;LIST.  By all means send me anything new you figure out for inclusion
  630. ;in future releases.
  631. ;
  632. ;
  633. ;You can have several entries for one type of archive in this file.  AV
  634. ;tries entries sequentially to list the file until it finds one that works.
  635. ;If the first entry for a signature doesn't work, and AV finds one that
  636. ;does, it moves that entry to the top of the list and rewrites ARCHIVER.BB2
  637. ;to make future accesses faster.  This allows me to list everything I can
  638. ;get entries for and let AV sort out what the user actually has that works.
  639. ;It also lets you, the user, create archives with more than one archiver that
  640. ;produces the same sort of archive (or with different switches, like one with
  641. ;LHArc producing -lh5- compression and one with it producing old, compatible
  642. ;-lh1- compression).
  643. ;
  644. ;
  645. ;always end file with blank line or comment
  646.