home *** CD-ROM | disk | FTP | other *** search
/ Supremacy 1 / Supremacy-1.iso / DEMOS / C-D / DOCDISK.ZIP / UTILS.DOC / MDPK1991.DOC < prev    next >
Text File  |  1985-11-20  |  17KB  |  347 lines

  1.                                  Mega Depack
  2.                                  ===========
  3.  
  4.                   v1.991-(v2 reserved for something special!)
  5.                   ===========================================
  6.  
  7.                              Coded by Mike Watson
  8.                              ====================
  9.  
  10.                      This version finished - 24/08/1992
  11.                      ==================================
  12.  
  13. ------------------------------ the boring bits -------------------------------
  14.  
  15. This program is public domain and may be distributed on a non profit making
  16. basis by bulletin boards and pd libraries. However it can only go on a 
  17. cover disk of a magazine with my permission, the contact address is at the
  18. end of the text.
  19. Note - this documentation MUST be included with the program file if you do
  20. distribute it.  
  21.  
  22. ------------------------------- the legal bits -------------------------------
  23.  
  24. This program has been tested as completely as possible and only makes legal
  25. system calls without any 'hacking around' and as such should not cause any
  26. damage. If for any reason damage is caused then I cannot be held for
  27. responsible for it. You use the program at you're own risk. To guard
  28. against any mishaps you should save the depacked files out as a different
  29. name or in a different folder.   
  30.  
  31. ------------------------------ on with the show ------------------------------    
  32.  
  33. Ok folks, what does it do then?? Well a few months ago I had some programs 
  34. to put on my hard drive and as usual they were packed. While this is no
  35. bad thing in itself, the depacking time does tend to offset the loading
  36. speed off hard drive, so I unpacked them by hacking around in monst for a 
  37. while. Since this was a regular occurance I decided to code a program which
  38. would automate this process and would be of great help to my self as well.
  39.  
  40. Anyway I eventually wrote routines to unpack everything I had and was so
  41. pleased with the result that I thought other people would like to use it as
  42. well. So mega depack was released as public domain at the end of april 1992
  43. . It went out to a few libraries and also to ST format. Of those however
  44. only Steve of Floppyshop replied to me. He helped in finding all the bugs 
  45. in earlier versiosn of the program which had gone undetected so a big thank
  46. you has to go to him
  47.  
  48. ST format never replied so in july 1992 I sent it to st review who replied
  49. to me the day after I sent it to them. So the cover disk of the september
  50. issue it when it appears. However development of the program did not stop
  51. there though, it went throught more revisions and at about that time I had
  52. two letters from people who had seen earlier versions and had found stuff
  53. it never depacked. Thanks to Keith Frisby and Rob Gilmour for all their
  54. help.
  55.  
  56. ------------------------------ how to use it ---------------------------------
  57.  
  58. When the program first loads up you will see a little credits page with
  59. the current version number, press space to carry on.
  60.  
  61. A file selector box will be shown, if you have TOS 1.4 or higher then the
  62. message 'please select file to depack' will be shown on the fileselector
  63. (I tried this on TOS2.06(disk version) but it never worked, perhaps someone
  64. could confirm this).
  65.  
  66. Select you're file to unpack and the program will load it in and then 
  67. determine what it is packed by (if at all). If it is not packed then it
  68. will make a brave attempt at determining if it is packed by something
  69. else. For the curious - you can normally tell a packed program file as it
  70. will have a very small or non existant relocation table whilst packed data
  71. files often have an ascii longword such as 'lsd!' or 'ice!' at the
  72. beginning of the file.
  73.  
  74. There are three exceptions to the above and concern early version of pack
  75. ice, atom,thunder and all versions of the pompey packer and that is that
  76. data files produced by them cannot be distinguished. 
  77. The clashes are - ice 2.0 and 2.2 have header Ice!.
  78.                   all pompey datafiles have trailer POPI.
  79.                   atom v3.1,3.3 and thunder 1,2 all have header ATOM.
  80.  
  81. When this occurs you are given a choice of depackers to use or a chance to
  82. exit. Choose what you think is the right depacker. It will more than likely
  83. crash or produce garbage if it is the wrong choice so save it out as a 
  84. different file name and check it. If something is wrong then try again with
  85. another option.
  86.  
  87. Eventually if a file depacks succesfully a file selector will be shown
  88. which will allow you to select the output filename. Again on TOS 1.4 and
  89. above there is a message 'select filename to save to'. When the file has
  90. been saved you can then load another. Select cancel on the load screen to
  91. exit the program.
  92.  
  93. -------------------------------- extra bits ----------------------------------
  94.  
  95. Since the last release of this program, I have substantially rewritten it
  96. and fixed all of the bugs(I hope). This has resulted in the source code
  97. becoming overly large (>100kb) and so I have stopped distributing the 
  98. source with the program. If you want the full 68000 source then send a disk
  99. and an sae to the address at the end of this text. The rewrite is also the
  100. reason why I rewrote this doc to reflect all the changes that I have made.
  101.   
  102. The development of this program will continue for as long as new packers
  103. are released, bugs are discovered or old packers rear their ugly heads. To
  104. ensure this program remains up to date it is up to you the user to support
  105. it, even though I do get a lot of packers sent to me some may well slip
  106. through the net. If mega depack cannot depack a program which is obviously
  107. packed and the program is public domain then please send it to me and I will
  108. attempt to include a routine to handle it. Even better though is if you
  109. could send me the packer (especially if you wrote it!). As this makes it
  110. even easier to code a routine for it.
  111.  
  112. Ways to spot packed files :-
  113. Mega depack may say that it could be packed.
  114. The file was packed by yourself.
  115. It displays a mesage when loaded e.g 'blah packer v555555 depacking'.
  116. Flashes the colours in a hypnotic fashion.
  117.  
  118. Other plans for the program which are already semi under way are :-
  119.  
  120. GEM version installable as an accessory and hopefully cpx(I'm waiting on
  121. some info from Atari for this). Interface is coded the depacking stuff
  122. will be hooked up to it soon!
  123.  
  124. Batch unpack - specify a path and sit back and watch it go. Not many 
  125. problems here.
  126.  
  127. --------------------------------- wanted -------------------------------------
  128.  
  129. 1. Back issues of Judge Dredd the Megazine(1,3,7,10,12)
  130. 2. Any info on the archiving method used by LHARC 2.01, its so much better
  131. than Atomic. I have located the depacker inside the archiver but havn't been
  132. able to rip it out yet. I want to write an exec packer round this algorithm
  133. as it beats everything!. 
  134.  
  135. ----------------------------- acknowledgements -------------------------------
  136.  
  137. Steve Delany at Floppyshop - the best pd/shareware library in the uk!
  138. Keith Frisby               - supplier of packers and also the first person
  139.                              to write to me.
  140. Rob Gilmour                - another person to supply packers.
  141. Gordon & Dave              - asteroids - the business.
  142. DML                        - photochrome simply the best iff convertor on 
  143.                              the st.
  144. Gus                        - for liking star trek and for having a strange
  145.                              sense of humour (totally trek tastic matey!).
  146. My cd collection           - for providing musical help in the form of
  147.                              new order, the velvet underground, sonic youth
  148.                              (nice to see them getting some recognition at
  149.                               last - they have and always will beat nirvana
  150.                               any day!), public enemy(yoh! flave),
  151.                              808 state, the byrds, the shamen, nin, the
  152.                              revolting cocks, primal scream and many others
  153.                              no mainstream rubbish here *8}
  154. The authors of all the     - Axe (fire & ice toppled by atomic)
  155. packers.                   - Altair (atomic - 3.5 the business!)
  156.                            - DC software (dcsquish)
  157.                            - The Firehawks (Speed packer)
  158.                            - JMP (Qpack)
  159.                            - JPM (pompey & thunder)
  160.                            - Mike Coates (bytekiller)
  161.                            - Ozz (automation & lsd)  
  162.                            - Ralph Hartmann (happy - a brave early attempt,
  163.                              birdies med rez fix was possibly the only
  164.                              useful contribution he's ever made to the st!)
  165.                            - Russ Payne (bytekiller)
  166.                            - Thomas Questor/Markus Fritze (pfx packer)
  167.                            - Tim & Andrew Knipe (jam/jek, g'day!)
  168.                            - Tom Hudson (degas)
  169.                            - Trio inc (spectrum 512 - unispec & digispec
  170.                              are superb!)
  171.                            - Vermillion Pawn (!?) (ivory dragon - strange)
  172.                            - any other packer authors I forgot.
  173.  
  174. ----------------------------- packers supported ------------------------------
  175.  
  176. program/packer    versions    formats
  177. ==============  ============  ------------------------------------------------
  178. 4pak                          programs
  179. atomic          3.1/3.3/3.5   programs and datafiles
  180. automation      2.31/2.51     programs and datafiles
  181. automation      5.01          programs and datafiles
  182. ba pack                       programs
  183. bytekiller      2.0/3.0       programs
  184.                 Russ Paynes
  185. dcsquish        1.0/1.2/1.4   programs
  186. degas elite                   picture files pc1-3
  187. gollum                        programs(both huffed and not)
  188. happy                         programs
  189. ice             1.1/2.0/2.2   programs and datafiles
  190.                 2.3/2.4
  191. ivory dragon                  programs and datadiles
  192. fire            1.0/2.0       programs and datafiles
  193. jam             1/2/3/4       programs and datafiles (lzh,lzw,jam,ice)
  194. jek             1.2/1.3       programs and datafiles
  195. lsd             1.2           programs and datafiles
  196. pfx             1.1/2.1       programs
  197. pompey          1.5/1.9/2.6   programs and datafiles
  198. pompey          1.7/1.9x/2.3  programs          
  199.                 3.0        
  200. qpack           2             programs and datafiles
  201. spectrum 512                  picture files
  202. speed packer    2             programs and datafiles
  203. stos                          programs
  204. superior                      programs
  205. thunder         1             programs 
  206. thunder         2             programs and datafiles 
  207. unknown                       programs (used to pack concerto on STF 37)
  208.  
  209.                 46 packers supported
  210.                 78 different file formats
  211.  
  212. ----------------------------- just for interest ------------------------------
  213.  
  214. Here's how the files are unpacked (just for the curious).
  215.  
  216. 4pak - uses a modified dissasembly of the depacker. 
  217. atomic progs - modifies program and jumps into it. 
  218. atomic 3.1/3.3 data  - uses routine supplied with program. 
  219. atomic 3.5 data  - uses a dissassembled routine from the packer.
  220. automation 2.3/2.5 program - modifies and runs program.
  221. automation 2.3/2.5 data - uses routine supplied with program.
  222. automation 5.01 program - modifies and runs program.
  223. automation 5.01 program - uses an ICE2.4 depacker.
  224. bapack - modifies and jumps into program
  225. bytekiller - modifies and jumps into program for Russ Paynes version.
  226.              uses a dissassembled routine from the depacker on versions
  227.              2 and 3.
  228. dcsquish 1.0/1.2/1.4 - uses dissassembled code from the depackers.
  229. degas elite - uses a dissassembled routine of unknown origin
  230. gollum - uses a modified dissasembly of the depacker. 
  231. happy - uses a heavily modified dissasembly of the depacker. 
  232. ice progs - all modify and jump into program.
  233. ice data - all use routines supplied with program.
  234. ivory dragon - programs and datafiles use a dissassembled depacker.
  235. fire progs - all modify and jump into program.
  236. fire data - v1 is a dissassembly of unknown origin v2 came with program.
  237. jam - a real mixture of dissassemblies and code that came with program.
  238.       the older ones use the old jek routines. most of the programs modify
  239.       and run the program.
  240. lsd/jek - programs are modified and run. datafiles are depacked using a
  241.           dissassembly of the depacker.
  242. pfx - uses a dissassembly of the depacker.
  243. pompey - programs are modified and run. datafiles use code that came with
  244.          the program.
  245. qpack - uses code supplied with the program.
  246. spectrum 512 - uses a routine a found on a pd disk.
  247. speed packer - programs are modified and run, datafiles use code supplied
  248.                with the program.
  249. stos - uses a dissassembly of the depacker.
  250. thunder - programs are modified and run. datafiles use code supplied with
  251.           the program
  252. unknown packer - uses a dissassembly of the depacker.
  253.  
  254. ---------------------------------- history -----------------------------------
  255.  
  256. revised on 24/4/92 to depack gollum progs and fix ice depack bug.
  257.  
  258. revised on 25/4/92 to depack happy progs.
  259.  
  260. revised on 26/4/92 to depack jam packer v1 progs, lsd/jek datafiles,
  261.                              spectrum512 piccies.
  262.  
  263. revised on 27/4/92 to depack pompey packed prog & dat files  
  264.  
  265. revised on 27/4/92 to fix anther ice depack bug (2.3 prog files did not
  266. always depack properly.
  267.  
  268. revised (again!) on 27/4/92 to depack dcsquish programs.
  269.  
  270. revised on 28/4/92 to depack 4pak programs.
  271.  
  272. revised on 29/4/92 to depack automation chunk packed files.
  273.  
  274. revised on 29/4/92 to depack old style ice packed files.
  275.  
  276. revised on 29/4/92 to depack packed degas files.
  277.  
  278. revised on 9/5/92 to work on pre tos 1.4
  279.  
  280. revised on 11/6/92 to work on automation 501 files properly (small bug)
  281.  
  282. revised on 26/6/92 to work on ice datafiles, (my source had been
  283.                                               corrupted!)
  284.  
  285. st review version assembled 13/7/92.
  286.  
  287. revised on 15/7/92 to work on what I believe is the stos packer and
  288. also a packer for which I have no clue at all to what it is called
  289. but was used to pack concerto on st formats coverdisk 37. its an
  290. appallingly bad packer anyway so who cares. 
  291. i would strongly advise anyone using the stos packer to discontinue using 
  292. it for two reasons :
  293. - firstly its a bad packer!
  294. - secondly and more importantly is that it relocates its depacker
  295. to $7fd00 which on a 520st is just below the screen ram but on any other
  296. machine it is in the middle of no mans land. since most people with
  297. a meg or more generally use that ram this depacker has a habit of
  298. trashing whatever is there, especially with me because the first half meg
  299. of my ram is used by my harddisk driver, cache, replacement desktop and
  300. desktop accessories. you have been warned!!!
  301.  
  302. revised on 21/7/92 to work on thunder packed progs (cheers keith!) 
  303.  
  304. revised on 21/7/92 (again) to work on dcsquish v1.0 & 1.2 packed progs.
  305. (i was bored!) 
  306.  
  307. revised on 24/7/92 to work on pfx v1.0 & 1.2 packed progs. fire v1 packed
  308. programs and datafiles
  309.  
  310. revised on 25/7/92 to fix yet more ice bugs. and to work on ivory dragon
  311. packed progs/datafiles.
  312.  
  313. revised on 26/7/92 to update routines to unpack pompey pirates stuff.
  314. also to fix clashes between atom files. extra bytekiller compatibility
  315. added as well, phew!
  316.  
  317. revised on 29/7/92 to work on pompey 2.6 packed files.
  318.  
  319. revised on 07/8/92 to work on a packer used by superior although it may not
  320. be a new packer as such but a old version of fire or ice with a new header. 
  321.  
  322. revised on 09/8/92 to work on thunder v1 packed program files.Also pompey
  323. v2.3 and 3.0 progfiles. And speed packer 2 progs and data.
  324.  
  325. revised on 18/8/92 to work on BAPACKED progs and pompey 1.9x progs.
  326.  
  327. revised on 24/8/92 to handle an extra PFX packed format and Qpack progs.
  328.  
  329. ---------------------------------- address -----------------------------------
  330.  
  331. If you want to contact me to send packers, programs or anything else you 
  332. think i'd be interested in then my address is -
  333.  
  334.                             Mike Watson,
  335.                             59 Pilmuir Road,
  336.                             Forres,
  337.                             IV36 OHE,
  338.                             Scotland   
  339.  
  340. Only for legal reasons though, any pirates will get a nasty shock! 
  341.  
  342. ---------------------------------------------------------------------------
  343.  
  344. Mike Watson - 24/08/1992
  345.  
  346. ---------------------------------------------------------------------------
  347.