@DATABASE xDM Documentation @AUTHOR Adam Chapman @(c) © 1995 Adam Chapman @$VER: v1.0 (6.4.95) @WIDTH 78 @INDEX Main @WORDWRAP @NODE Main "xDM - The eXtended Disk Masher" @REMARK This node is the main contents list @{fg shadow}@{u} @{uu}@{fg text} @{fg fill}@{u} @{uu}@{fg text} @{fg shine}xDM @{fg shine}The eXtended Disk Masher Version 1.0 © 1995 Adam Chapman @{u}@{fg fill} @{uu}@{fg text} @{u}@{fg shadow} @{uu}@{fg text} A PROGRAM IN THE 'MINI TOOLS' RANGE OF SOFTWARE BY ADAM CHAPMAN This software is freeware although the copyright remains with the author. If you wish to make any modifications to it, please contact the author. @{u}Contents:@{uu} @{"Introduction" link Introduction} - An introduction to xDM @{"System Requirements" link SysReq} - What do you need to run xDM? @{"Overview" link Overview} - An overview of the xDM system @{"Installation" link Installation} - How to install xDM @{"Usage" link Usage} - Using xDM @{"Directory Utilities" link DirUtils} - Linking xDM to a Directory Utility @{"Speed Tests" link Speed} - Just how quick @{b}is@{ub} xDM? @{"Revision History" link History} - What happened between versions? @{"Thanks and Salutations" link Thanks} - Cheers lads! @{"Contacting the Author" link Contact} - Contact me! @ENDNODE @NODE Introduction @REMARK This is the introduction piece to xDM @{u}Introduction:@{uu} Fed up with the size of the files that DMS produces? You know it's possible to compress with more efficiency than DMS - but how do you? You need xDM - The eXtended Disk Masher! @ENDNODE @NODE SysReq "System Requirements" @REMARK This is the minimum system requirements for xDM @{u}System Requirements:@{uu} @{fg shine}°@{fg text} Any Amiga running Kickstart/Workbench v3.0 or above) @{fg shine}°@{fg text} LZX by Data Compression Technologies LZX should be available from any fine BBS such as the author's own (described at the end of this document) or from a software library. @ENDNODE @NODE Overview @REMARK This is an overview of what xDM can do @{u}Overview:@{uu} There has always been a need for people to archive whole disks for distribution over the phone lines. The problem arises when you have a non-AmigaDOS standard disk (for example, a lot of demos). Originally a program called Warp was written and used (mainly in the hacker world) for converting these kind of disks into a single file which could then be sent via a modem. Although Warp achieved it's aims, it often produced files larger than the total sum of the parts on disk! Later on, a program called DMS (The Disk Masher) was developed. Originally a commercial concern, it was quickly adopted by the Amiga community as the @{i}de-facto@{ui} standard for archiving whole disks. In it's latest incarnation, it has been renamed to Device MaSher (it's still DMS) and ParCon software have taken over it's development. It is, however, still unstable at times and the compression engine is not quite up to what it could be. All of which kind of leaves a hole in the market! Enter xDM. xDM uses the most advanced compression engine on the market at this moment - LZX by Data Compression Technologies in order to 'mash' it's output - the rest is handled by a freeware device handler. It's all gelled together with a simple GUI created in AmigaDOS. @ENDNODE @NODE Installation @REMARK These are the instructions for installing xDM correctly @{u}Installing xDM:@{uu} To install xDM on your system, simply copy the following files to the following places: @{u}@{b}C:@{ub}@{uu} xDM_GUI This is the main DOS script itself xDM_CLI This is the script for use from the CLI or a directory utility @{u}@{b}L:@{ub}@{uu} RawDisk-Handler This is the disk handler that allows xDM to read tracks directly from a disk @{u}@{b}ENVARC:@{ub}@{uu} xdm This is an environment variable that tells xDM where to store it's temporary files (in order that people with a small amount of RAM can store them on disk to reduce memory overheads). If this variable does not exist in your assigned ENV: directory (normally RAM:ENV) then xDM will attempt to copy it over from your assigned ENVARC: directory (normally SYS:Prefs/Env-Archive). If this fails then xDM will assume a directory of T: so be careful! Of course, if you don't mind this then you may delete the xdm variable from your ENVARC: directory. @ENDNODE @NODE Usage @REMARK This bit covers the usage of xDM @{u}Using xDM:@{uu} There are 2 versions of xDM. One is designed to be used from Workbench (hereafter referred to as xDM-GUI) and the other from the CLI/Shell (xDM-CLI). xDM-GUI can be run from a CLI/Shell, Workbench icon or from the "Execute a Command" option on the Workbench. It is designed to be used via it's GUI on the Workbench. xDM-CLI can be run from a CLI/Shell or from the "Execute a Command" option on the Workbench. With a little skill it could also be linked to buttons in a directory utility such as Directory Opus. There is a different @{i}modus operandi@{ui} for the different versions. @{"xDM GUI" link 1.GUI} @{"xDM CLI" link 1.CLI} @ENDNODE @NODE 1.CLI "Using xDM CLI" @REMARK This bit covers the use of xDM CLI @{u}Using xDM CLI:@{uu} The command template for xDM CLI is as follows: ACTION/A,DRIVE/A,ARCHIVE/A All 3 parameters are required for any operation to occur. They work as follows: ACTION/A This option determines the mode xDM works in. Possible options are: A - Archive (Compress) a disk X - eXtract (Decompress) a disk DRIVE/A This option sets which drive to use for (de)compressing. Possible options are as supported by AmigaDOS: DF0: - (De)Compress to drive DF0: DF1: - (De)Compress to drive DF1: DF2: - (De)Compress to drive DF2: ARCHIVE/A This option means slightly different things for either Compress or Decompress mode. In Compress mode, whatever filename you enter here will become the destination file that the image of the disk is written to. In Decompress mode, whatever filename you enter here will be taken as being the source file (the archive you wish to decompress). @ENDNODE @NODE 1.GUI "Using xDM GUI" @REMARK This bit covers the use of xDM GUI @{u}Using xDM GUI:@{uu} When started, xDM will present you with a 3 button requester. The options and their effects are: @{"Decompress" link 1.Decompress} @{"Compress" link 1.Compress} @{"QUIT" link x.Quit} @ENDNODE @NODE History "Revision History" @{u}Revision History:@{uu} @{fg shine}Version 1.0:@{fg text} Original launch. @{fg fill}°@{fg text} Works fine - no problems during beta testing. @ENDNODE @NODE Thanks "Thanks and Salutations" @{u}Thanks and Salutations:@{uu} @{fg shine}Thank-You's go out to...@{fg text} Alan Merritt - For being such a wonderful human being Russell Patterson - For slagging off every program I write ;) Ian Wilson - For being the beta tester from hell! Keyf Alexander - For sussing how to use xPresser eventually :-) Calum Metcalfe - For being a drunk, overaged uni student @{fg shine}Salutations go out to...@{fg text} Everyone at Commodore who has ever had anything to do with AmigaDOS Mark Smiddy for being my DOS Guru @ENDNODE @NODE Contact "Contacting the Author" @{u}Contacting The Author:@{uu} @{i}Postal Service:@{ui} Adam Chapman (xDM), 17, Duchess Grove Wavendon Gate, Milton Keynes. MK7 7DG @{i}BBS:@{ui} The Concrete Cow BBS - (01908) 584961 All speeds to 28k8, v.34 supported @ENDNODE @NODE 1.Decompress "SELECTION - Decompress" @REMARK This is what happens when you select Decompress Selecting this will bring up a 5 choice requester. Via this requester you can select which drive you wish to decompress to (@{"DF0:, DF1:, DF2: or DF3:" link 2.Decompress}) or you may @{"Quit" link x.Quit} from xDM. @ENDNODE @NODE 2.Decompress "SELECTION - DFx:" @REMARK This is what happens after you select a drive to decompress to At this point, a file requester will appear. Use this to navigate round your system until you find the .xDM file you wish to Decompress onto your selected drive. When you find the file you want, click once and select Ok or double-click in the normal fashion. xDM will then call up LZX to decompress the disk image and then proceed to write it back to whatever drive you selected as your destination. Finally, xDM will inform you that it is complete, clean up after itself and quit out. @ENDNODE @NODE 1.Compress "SELECTION - Compress" @REMARK This is what happens when you select Compress Selecting this will bring up a 5 choice requester. Via this requester you can select which drive you wish to compress (@{"DF0:, DF1:, DF2: or DF3:" link 2.Compress}) or you may @{"Quit" link x.Quit} from xDM. @ENDNODE @NODE 2.Compress "SELECTION - DFx:" @REMARK This is what happens after you select a drive to compress At this point, a file requester will appear. Use this to navigate round your system until you are in the device/directory you wish to place the resultant .xDM image in. When you are in the directory of your choice, simply enter a name for the disk image - it should end in .xdm although that should be appended by default. Once complete, hit [Return] or click on Ok. xDM will then create a disk image from the disk in the drive you selected. After it has done this, it will call up LZX to compress the disk image and to store it in the destination directory. Finally, xDM will inform you that it is complete, clean up after itself and quit out. @ENDNODE @NODE x.Quit "SELECTION - Quit" @REMARK Show text for any quit option in xDM Strangely enough, this selection will Quit xDM and return you to wherever you launched xDM from. @ENDNODE @NODE DirUtils "Linking xDM to a Directory Utility" @REMARK This tells the reader how to link xDM to something like DOpus @{u}Linking xDM to Directory Opus@{uu} Use xDM CLI. Set up both a compress and decompress button. Take the following information and set the correct portions of DOpus Config up to match. @{i}Compression@{ui} Name: xDM Pack Type: AmigaDOS Entry: xDM A {RsPlease enter drive to pack} {RfPlease select output} Flags: OUTPUT WINDOW Stack: 4096 Close Delay: -1 For this entry, simply click on the button. In the string requester that follows, type in DF0: DF1: or DF2: for the drive you wish to compress then using the DOpus filerequester, enter the name of the archive you wish to create (it should end in .xdm) @{i}Decompression@{ui} Name: xDM Unpack Type: AmigaDOS Entry: xDM X {RsPlease enter drive to unpack to} {f} Flags: DO ALL FILES OUTPUT WINDOW Stack: 4096 Close Delay: -1 For this entry, highlight the .xdm archive you wish to unpack then click on this button. Then simply enter the destination device (DF0: DF1: or DF2:) in the string requester that follows @ENDNODE @NODE Speed "Speed Tests" @REMARK This shows just how quick xDM is compared to something like DMS @{u}Speed and Size Comparisons@{uu} For just a quick example of what xDM can do for you, we will compare some well known demo disks. All testing was performed on an A1200 with 6mb of FastRAM and a 68882 FPU running at 25MHz. We will be testing: 9 Fingers by Spaceballs (Disk 1) Jesus On E's by LSD (Disk 1) VD Love by Fairlight (Disk 1) @{u}PACK TIME@{uu} @{u}UNPACK TIME@{uu} @{u}FILESIZE@{uu} @{i}9 Fingers, Disk 1@{ui} DMS: 1:44 1:51 819972 XDM: 1:40 (-4) 1:36 (-15) 811080 (-8892) @{i}Jesus On E's, Disk 1@{ui} DMS: 2:41 1:42 669986 XDM: 2:08 (-33) 1:34 (-8) 654952 (-15034) @{i}VD Love, Disk 1@{ui} DMS: 2:31 1:57 800360 XDM: 1:53 (-38) 1:37 (-20) 796122 (-4238) @ENDNODE