Short: AutoMount tool for any changeable disk drive Author: tboeckel@uni-paderborn.de (Thore Boeckelmann) Uploader: tboeckel uni-paderborn de (Thore Boeckelmann) Type: disk/misc Architecture: m68k-amigaos TITLE AutoMounter VERSION 37.4 AUTHOR Thore Böckelmann REQUIREMENTS Any Amiga® (compatible) computer with at least OS2.04 and 68020+ cpu. DESCRIPTION Did you ever have the problem, that you had several Zip® disks, each of them probably formatted or partitioned differently with different filesystems like FFS, SFS, PFS, CrossDOS, etc? And each time you change the disk you had to mount another device driver to access the disk? Wouldn't it be much easier just to insert the disk and let the Amiga automatically mount the new driver if necessary? Or do you have a disk drive, that cannot be accessed during booting, so that you have to mount the drive "by hand" using a mountfile? AutoMounter does exactly all these things. It will monitor any drive you configure for disk changes. Every time you insert a disk in one of these drives AutoMounter will check if the disk matches any of the already mounted devices in the system, and if this check fails it will try to mount it. It doesn't matter if the disk uses a filesystem you didn't use before, because AutoMounter will try to read the disk's RDB and load the desired filesystem from there. This also works for MS-DOS formatted disks, which have no RDB, but it requires either CrossDOS or FAT95. Please note that the CrossDOS/FAT95 support is very simple. Things like partitions in extended partitions and similar things are not supported. I think there is no need for such things because of two reasons: 1. most changeable media are Zip disks, which only have one partition 2. AutoMounter is no filesystem, just a little tool doing a job in the background. If you really ever have a disk with several partitions of which not all can be mounted by AutoMounter, then please contact me and I will try to change that. A hint for IOBlix/VarIO users: There is no need to specify the device entries in the tooltypes of AutoMounter for parallel port Zip drives connected to the IOBlix/VarIO as long as you start SetupIOBlix/SetupVarIO with the AUTOMOUNT option. IOBlix'/VarIO's AutoMount.demon will use AutoMounter as soon as it is running. Without the AutoMount.demon you will of course have to handle the drives connected to the IOBlix/VarIO like any other device. USAGE You can start AutoMounter from either Workbench or Shell with the following options, although Workbench is more suitable: POLLTIMEOUT/K/N,FAT95/S,DEVICE/M POLLTIMEOUT/K/N: set the timeout (in seconds) for polling ancient drivers for disk changes. Default value is 5 seconds. FAT95/S: use L:fat95 instead of L:CrossDOSFileSystem for MS-DOS formatted disks. This is necessary, because the version of CrossDOS delivered with AmigaOS 2.04+ doesn't support long filenames, but not everybody has FAT95 installed. So if you have MS-DOS formatted disk, but you don't own the commercial version of CrossDOS (V6.x, V7.x), then set this option to use FAT95. DEVICE/M: set a device to be monitored for disk changes. Each device entry must be given using the following template: DEVICE/A,UNIT/A/N,MAXTRANSFER=MT/K,DEFFATNAME,POLL/S DEVICE/A: Exec style device name of the device to be monitored UNIT/A/N: unit number of the device MAXTRANSFER=MT/K: some devices don't like the standard value 0x00ffffff for MaxTransfer. If you notice any problems then use this option. The value must be given in hexadecimal notation, starting with "0x". Some IDE/ATAPI drives will choke for other MaxTransfer values than 0x0001fe00. Default value is 0x00ffffff. DEFFATNAME: MS-DOS formatted disks don't have an RDB, so they cannot tell AutoMounter the name under which the drive should be mounted. This option only affects MS-DOS formatted disks and has no meaning for Amiga formatted disk with RDB. This name defaults to "FATC". Note: This name must *NOT* include a trailing ":"!! POLL/S: use this option for those device drivers, that don't support disk change notification. These drivers will be asked every seconds for a disk change. This option should only be used if disk changes are not noticed automatically. Examples: DEVICE=cybppc.device 2 Monitor cybppc.device unit 2 (my Zip drive) for disk changes. DEVICE=cybppc.device 2 ZIPC Monitor cybppc.device unit 2 for disk changes, but use ZIPC as drive name for MS-DOS formatted disks. Usage of fat95 instead of CrossDOSFileSystem for MS-DOS formatted disks depends on the global flag . DEVICE=very_ancient.device 0 FAT poll Monitor very_ancient.device unit 0 for disk changes, use FAT as drive name for MS-DOS formatted disks. Because very_ancient.device doesn't support disk change interrupts, poll it every 5 seconds for a disk change. Usage of fat95 instead of CrossDOSFileSystem for MS-DOS formatted disks depends on the global flag . If you start AutoMounter from Shell you must surround every DEVICE specification with quotes ("), because of the spaces in the specification (e.g. AutoMounter "dev1.device 0" "dev2.device 4 poll") For the case you have two disks with different geometry, but with the same device name in the RDB (for example two ZIP disks) AutoMounter will change the name of the newly mounted device that it is unique in the system. That means it will append ".0", ".1", ".2", etc to the RDB-saved device name, until the device name is unique. You will have two different DOS-devices afterwards for the same disk drive, but you will be able to access both disks without the need of a remount tool like SCSIMounter or Mounter (supplied with OS3.5/3.9). Additionally this behaviour is much safer than unmounting the old drive. You can start and quit AutoMounter at any time. To quit AutoMounter simply start it a second time. Additionally there are three support tools for AutoMounter: AddAutoDevice, RemAutoDevice and ListAutoDevices. With the first two tools you can dynamically add or remove a device from disk change monitoring. The usage template for AddAutoDevice is the same as for every DEVICE tooltype of AutoMounter. AddAutoDevice will print the result of adding the device for monitoring, either success or failure. RemAutoDevice just needs the device name and the unit number to remove from monitoring. RemAutoDevice will print the result of removing the device from monitoring, either success or failure. ListAutoDevices will print a list of all currently monitored devices. INSTALLATION Copy AutoMounter where ever you want, but SYS:WBStartup is a very good place. KNOWN BUGS - cybppc.device seems to tend to crash after removing a device from monitoring and changing the disk afterwards. I don't know why this happens and if this applies for all of phase5's devices. But I think this not a real problem, since all of phase5's devices have a built-in mounter, so there should be no real need to run AutoMounter on these devices. - 1230scsi.device (Blizzard 1230/1240/1260 SCSI module) doesn't increment its diskchange counter. AutoMounter isn't affected by this anymore (V37.2), but of course this is a serious bug in phase5's device drivers! HISTORY 37.1 (21.01.2001): - initial Aminet release 37.2 (12.02.2001): - devices and units are now checked if they are changable media. Drives like harddisks or CD-ROMs will be rejected, because they are either not changable or they will never contain a valid RDB. - recognition of MS-DOS formatted disks is much better now. MBR and partition table are now searched for valid entries before trying to mount a new device. - new option FAT95 now enables support for fat95 filesystem instead of CrossDOS. - ListAutoDevices contained a wrong version string. Damn quick hacking :) - drivers that need polling to detect a disk change will now get a command sequence that is similar to the shell command DiskChange to make them recognize the new disk. - MaxTransfer value can be set now, in case some stupid device drivers cannot handle transfers >=128K. - mounting FAT formatted disks was completely broken and caused immediate crashes. This is fixed now, CrossDOS and FAT95 are fully supported now. 37.3 (23.08.2001): - a device driver would have been opened over and over again when the disk geometry could not be determinded for some reason. This is fixed now. Even empty drives are monitored correctly now. - IOBlix users should also replace the AutoMount.demon, because the old one (37.17) just checked for AutoMounter 37.2, but not for newers releases. 37.4 (10.10.2002): - AutoMounter now tries to RemDevice() then device upon closure. - if the newly inserted disk used a FileSystem that was not yet used by any other device and delivered this FileSystem in its RDB the FileSystem was never found. Fixed! (Chris Hodges ) COPYRIGHT AND DISCLAIMER AutoMounter is copyrighted 2001,2002 by Thore Böckelmann. All rights reserved. This program is freeware, so no financial donations required. Redistribution allowed if the package is left unchanged. The author is not responsible for any damage caused by the use or misuse of this documentation and/or the program(s) it describes. AutoMounter uses the SmartReadArgs package by Thomas Aglassinger. fat95 is (c)opyright by Torsten Jager