home *** CD-ROM | disk | FTP | other *** search
- #
- # $Id: NSDPatch.cfg 1.24 1998/01/08 06:50:02 heinz Exp $
- # $VER: NSDPatch.cfg 43.4 (15.12.97)
- #
- # Demonstration patch configuration file for NSDPatch
- # ===================================================
- #
- #
- # Each device patch configuration must reside on a single line.
- # A patch that has been installed once cannot be changed.
- # The patching process works also for devices which generate a
- # new device base for each OpenDevice() call. It is not Unit
- # specific. For devices generating multiple bases per OpenDevice(),
- # existing opens won't be patched as they can't be located.
- # Once a patch is installed any Unit opened since then will be
- # patched.
- #
- # NOTE WELL: A device patch is not meant to replace an NSD upgrade
- # forever. It will emulate NSD device behaviour on top
- # of existing devices fairly well. It will not add any
- # major safety checks or automagically fix every problem
- # you might have with an old Exec device. It may not
- # implement every single NSD detail for various device
- # types.
- #
- # THERE IS ABSOLUTELY NO WARRANTY WHATSOEVER! STANDARD DISCLAIMER!
- #
- # How to install the patch:
- #
- # 1. Copy the configuration file and NSDPatch onto your boot
- # partition. You can choose the place arbitrarily, though DEVS:
- # and C: are recommended respectively.
- #
- # 2. If needed, rename the configuration file and change it as
- # needed for your setup. Check the option descriptions below.
- # BE CAREFUL WHEN CHOOSING PATCH OPTIONS!
- #
- # 3. Add a line like this one *immediately* after SetPatch to your
- # S:Startup-Sequence:
- #
- # <location>NSDPatch QUIET PCF <configfile>
- #
- # You only need to specify "PCF <configfile>" if you don't use
- # DEVS:NSDPatch.cfg
- #
- # 4. On every subsequent reboot, the NSDPatch will silently be
- # turned on according to the configuration. There is nothing
- # more you have to do except turning off the patch for any device
- # that gets updated to be NSD compliant.
-
- #
- # There are various options, parsed in dos.library/ReadArgs() style.
- # This file describes the options available with NSDPatch >=43.16.
- #
-
- # DEVICE The name of the device to patch (need not be resident)
- # If your device supports NSD already, it usually is
- # *NOT* wise to patch it!
-
- # COMMANDS A comma separated list of the supported command
- # numbers. It is not necessary to specify the general
- # NSD commands like NSCMD_DEVICEQUERY.
- # After specifying commands, you can exclude them with
- # a subsequent negative specification as shown below.
- # Just use the "!" character to specify a command number
- # or range to be subsequently excluded again.
- # (Needs "DEVICE" option)
-
- # DEVICETYPE The numeric or symbolic NSD device type to set
- # (Needs "COMMANDS" option)
-
- # IOERRNOCMD/S If the device to patch does not support IOERR_NOCMD
- # correctly, i.e. if it crashes on unknown commands,
- # specify this option. Only the commands specified
- # via the "COMMANDS" option will be accepted then.
- # All other requests will be safely returned with the
- # IOERR_NOCMD error.
- # (Needs "DEVICETYPE" option)
-
- # TD64/S If the device to be patched supports the TD64 command
- # set, use this option. The NSD trackdisk extensions will
- # automatically be redirected then to make use of that
- # functionality for e.g. the V43 FastFileSystem.
- # Otherwise a simple HD_SCSICMD fallback is implemented
- # for trackdisk like devices. This fallback is _very_
- # simple to emulate 64 bit commands. Don't expect magic.
- # (Needs "DEVICETYPE" option)
-
- # ACTIVATE A DOS pattern to tell which DOS device names should
- # be activated to e.g. start up a filesystem on a
- # patched device. It is safe to specify already
- # active devices. Devices where the name is "hidden"
- # by a volume of the same name currently won't be
- # activated. You may want to specify the partition
- # names of partitions exceeding the 4GB barrier here
- # for a patched device with the V43 FastFileSystem.
-
- # RDBUNIT/N If you have a trackdisk like boot device that
- # crashes on unknown commands instead of returning
- # IOERR_NOCMD, you will need this option,
- # "IOERRNOCMD", and "ACTIVATE". You can't boot from a
- # partition exceeding the 4GB barrier with an old
- # style device and the V43 FastFileSystem, and you
- # must not mark any partitions exceeding that barrier
- # as automountable if you have a device that does not
- # support IOERR_NOCMD. These partitions won't be
- # activated automatically by e.g. V43 FFS until the
- # patch is installed. To activate or mount these
- # partitions automatically after the patch is in
- # place, specify the device unit number to scan here
- # and the partition names with the "ACTIVATE" option.
- # The Rigid Disk Block on the named unit will be
- # scanned and all named partitions will be mounted.
- # If you specify partitions that are already
- # mounted, an error will be returned. Actually, this
- # option is useful as a general "late mount"
- # functionality! Note that this only looks for
- # partitions that are not marked as auto mountable!
-
- # MOUNTANY/S To force RDBUNIT to look at any partition entry within
- # the RDB, you can use this option. NSDPatch is a general
- # "late" mount tool then, suitable for any partitions.
- #
-
- # VERSION/N If you know the exact version of a certain device to
- # REVISION/N be patched, specify these options. The patch line
- # will only be used if this version and revision
- # can be found. As NSDPatch will not skip configuration
- # lines for already patched devices, you can make a list
- # of certain patches for specific versions, followed by
- # a "generic" line for all other versions.
- # This is shown below for scsi.device.
- # Note the usefulness for these options with the ISNSD
- # and VERSIONISNSD options!
- #
- # Patches with version and revision info always take
- # precedence over a general patch line for the same
- # deviceif they apply.
-
- # SANA2MAGIC/S Some SANA2 devices don't take it very well if they
- # get passed a NULL buffer management pointer on OpenDevice()
- # This not only makes it hard for NSD to operate nicely, it
- # also confuses some of the popular SANA2 debugging tools.
- # If you have a device like this, you may want to try this
- # option. It should help by providing a dummy pointer if needed.
-
- # ISNSD/S Will recognize and not patch any device with at least
- # the given VERSION and, optionally, REVISION.
-
- # VERSIONISNSD/S Works like ISNSD for the exact VERSION.REVISION.
- # This is useful in case somebody put out a non NSD
- # device suddenly with a higher version number. Tss.
- # What an idea.
-
- # SINGLEPATCHONLY/S
- # NSDPatch will patch a device just once on the "first" call
- # to OpenDevice(). This option is still accepted, but OBSOLETE,
- # as this behaviour is NSDPatch default starting with NSDPatch
- # version 43.12.
- #
-
- # TRYMULTIPATCH/S
- # Normally, NSDPatch will check a device to patch on
- # the initial OpenDevice() call and patch it
- # appropriately. This behaviour is default starting
- # with NSDPatch 43.12. If you encounter a device that
- # changes its own device function addresses while it
- # is open, you should use this option. This is highly
- # unlikely, though, as this behaviour would be rather
- # inefficient and possibly crash prone. Note
- # that when using this option, you may encounter
- # infinite loops if other tools like debuggers
- # also patch into the device vectors. Before 43.12,
- # this option was the default setting but due to its
- # dangerous nature, SINGLEPATCHONLY is now the
- # default setting.
-
- # INTBEGINIO/S
- # Some devices may be used from within interrupts
- # to a certain extent. timer.device and audio.device
- # have functionality that may be used from interrupts.
- # Specify this option only if a device may be safely
- # called from within supervisor code. In supervisor
- # mode, NSDPatch functionality is then bypassed to
- # preserve system stability. Do not specify this option
- # if it is not needed as it will add some amount of
- # processing overhead.
- #
-
- #
- # MAPTODEVICE/K
- # MAPTOUNIT/K/N
- # By using this type, you can define mappings from one
- # device/unit combination to another. This is
- # useful if special tools check on the device
- # name for certain functionality and you really want
- # to use another device/unit. Examples can be found
- # below. It is usually unwise to map devices to
- # devices of a different type because the command
- # sets may well differ in a way that confuse non NSD
- # aware applications. Note that mapping trackdisk
- # units to other devices may be dangerous unless you
- # run any "noclick" hack before NSDPatch!
- #
-
- #
- # FIXSCSIUPDATE/S
- # The V40 scsi.device has a problem with the JAZ-drive
- # A CMD_UPDATE will start up the drive even if there is
- # nothing to update. For any trackdisk like device
- # with HD_SCSICMD, you # can specify this option to
- # fix a JAZ-drive. CMD_UPDATE will be replaced then
- # with a safe version, which only syncs up the
- # drive's caches if the drive is ready.
- #
-
- #-------------------------------------------------------------------------
- #
- # Default configuration lines for the V40 (OS 3.1) devices.
- # If you find any bugs or omissions, please report them.
- # With some work, all the correct versions could be added,
- # and this file could contain complete patch information for
- # different OS versions. Feedback on this is welcome.
-
- #
- # Add a comment '#' character to those lines where you already
- # use a NSD device.
- #
-
- # Notes:
- #
- # - audio.device is marked with IOERRNOCMD. It does not crash on
- # unknown commands, but it doesn't set IOERR_NOCMD correctly.
- #
- # - As a convenience measure for A4000T users, a line with
- # 2nd.scsi.device, equal to the scsi.device line, has been added.
- #
- # - mfm.device V38/V40 trashes a CPU register on OpenDevice() and
- # has a special private configuration command. The patch fixes
- # the former automagically (as for any device), and the patch
- # line reflects the latter.
- #
- # - scsi.device V40 and before V43.22 will not handle CMD_UPDATE well,
- # This is worked around by the FIXSCSIUPDATE option in the respective
- # lines.
-
- DEVICE audio.device DEVICETYPE NSDEVTYPE_AUDIO COMMANDS 1-14,32 IOERRNOCMD INTBEGINIO
- DEVICE cd.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,18-23,32-46
- DEVICE clipboard.device DEVICETYPE NSDEVTYPE_CLIPBOARD COMMANDS 2-4,9-12
- DEVICE console.device DEVICETYPE NSDEVTYPE_CONSOLE COMMANDS 1-3,9-12
- DEVICE gameport.device DEVICETYPE NSDEVTYPE_GAMEPORT COMMANDS 1,5-13
- DEVICE input.device DEVICETYPE NSDEVTYPE_INPUT COMMANDS 1,5-16
- DEVICE keyboard.device DEVICETYPE NSDEVTYPE_KEYBOARD COMMANDS 1,5-13
- DEVICE parallel.device DEVICETYPE NSDEVTYPE_PARALLEL COMMANDS 1-10
- DEVICE printer.device DEVICETYPE NSDEVTYPE_PRINTER COMMANDS 1-12,!2,!4,!5
- DEVICE ramdrive.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 2-5,9,11-15
- DEVICE scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK VERSION 43 ISNSD FIXSCSIUPDATE
- DEVICE scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK VERSION 43 REVISION 22 ISNSD
- DEVICE scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28 VERSION 40 REVISION 20 FIXSCSIUPDATE
- DEVICE scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28,!22 FIXSCSIUPDATE
- DEVICE 2nd.scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK VERSION 43 ISNSD FIXSCSIUPDATE
- DEVICE 2nd.scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK VERSION 43 REVISION 22 ISNSD
- DEVICE 2nd.scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28 VERSION 40 REVISION 20 FIXSCSIUPDATE
- DEVICE 2nd.scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28,!22 FIXSCSIUPDATE
- DEVICE serial.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4
- DEVICE timer.device DEVICETYPE NSDEVTYPE_TIMER COMMANDS 9-11 INTBEGINIO
- DEVICE trackdisk.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 2-16,!8,$8002-$8005,$8009-$800b,$8010-$8011
- DEVICE mfm.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-23,29
-
- DEVICE a2065.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 SANA2MAGIC
- DEVICE a2060.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,17-26 SANA2MAGIC IOERRNOCMD
- DEVICE slip.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,9-26
-
- #-------------------------------------------------------------------------
- #
- # A few configuration lines for known third party stuff. Please report
- # more device configurations if you can obtain them!
- #
- # It is unwise to use a configuration line without checking the version
- # of the device first! Not all these entries are necessarily tested.
- #
- # Entries for devices that are known to be troublesome are enabled as
- # default.
- #
- # Entries for specific known versions precede entries that should cover
- # all other versions.
- #
- # If you create new entries here, please report them to
- # <heinz@hwg.muc.de>. Thanks a lot.
- #
-
- # For omniscsi.device 1.9 as used in some Guru-ROM's
- # Yes, to patch omniscsi.device, you'll need the name gvpscsi.device!
- #DEVICE gvpscsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 2-5,9-15,20-23,28
-
- # For HardFrame Controllers
- #DEVICE HardFrame.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,23,28
-
- # Oliver Kastl's atapi.device
- #DEVICE atapi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28
-
- # Another recoverable ram disk
- #DEVICE statram.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 2-15,20-21 VERSION 37 REVISION 11
-
- # For Hardital Synthesis Controllers
- # Looks like this should work with syndisk.device 33.x
- #DEVICE syndisk.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 2-5,9,11-15,28,$69,$6d,$70,$73
-
- DEVICE amoksana.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 1-5,8-9,16-26 VERSION 3 REVISION 189 SANA2MAGIC
- DEVICE amoksana.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 1-5,8-9,16-26 VERSION 3 REVISION 190 SANA2MAGIC
- DEVICE amoksana.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 1-5,8-9,16-26 SANA2MAGIC
-
- # VillageTronic Ariadne board.
- DEVICE ariadne.device DEVICETYPE NSDEVTYPE_SANA2 VERSION 1 REVISION 47 ISNSD
- #DEVICE ariadne.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 VERSION 1 REVISION 39
- #DEVICE ariadne.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26
-
- # Interworks ICard
- DEVICE icard.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 VERSION 1 REVISION 4 SANA2MAGIC IOERRNOCMD
- DEVICE icard.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 SANA2MAGIC IOERRNOCMD
-
- # NE1000 for the GoldenGate board
- DEVICE gg_ne1000.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 VERSION 37 REVISION 7 SANA2MAGIC
- DEVICE gg_ne1000.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 SANA2MAGIC
-
- # NE2000 for the GoldenGate board
- DEVICE gg_ne2000.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 VERSION 37 REVISION 7 SANA2MAGIC
- DEVICE gg_ne2000.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-26 SANA2MAGIC
-
- # QuickNet board
- DEVICE QuickNetS2.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,17-26,$7ff0 VERSION 2 REVISION 3 SANA2MAGIC IOERRNOCMD
- DEVICE QuickNetS2.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,17-26,$7ff0 SANA2MAGIC IOERRNOCMD
- DEVICE QuickNet.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8,17,20 SANA2MAGIC
-
- # Holger Kruse
- #DEVICE ppp.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,9-11,14-26
-
- # A4066
- #DEVICE a4066.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,9-11,14-26 VERSION 1 REVISION 9
-
- # Hydra
- DEVICE hydra.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-27 VERSION 1 REVISION 44 SANA2MAGIC
- DEVICE hydra.device DEVICETYPE NSDEVTYPE_SANA2 COMMANDS 2-3,8-11,14-27 SANA2MAGIC
-
- # A few lines donated by Alessandro Zummo
- # MultiFace Card
- #DEVICE duart.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4
- #DEVICE pit.device DEVICETYPE NSDEVTYPE_PARALLEL COMMANDS 1-10
- # GVP IOExtender or GForce 040 Combo
- #DEVICE gvppar.device DEVICETYPE NSDEVTYPE_PARALLEL COMMANDS 1-10
- #DEVICE gvpser.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4
- # Blizzard boards from Phase V
- #DEVICE 2060scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28
- #DEVICE 1260scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28
- #DEVICE 1230scsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28
- # diskserial.device
- #DEVICE diskserial.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4
- # a2232.device
- #DEVICE a2232.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4
-
- # Phase5 board, donated by Willem Schaaij
- DEVICE cybscsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28
-
- # HWG version 40.9
- DEVICE a2060.device DEVICETYPE NSDEVTYPE_SANA2 VERSION 40 REVISION 9 ISNSD
-
- # HWG/MBS version 3.x
- DEVICE a2065.device DEVICETYPE NSDEVTYPE_SANA2 VERSION 3 ISNSD
-
- # This should cover SCSI/IDE users with a DataFlyer card.
- DEVICE ExpSys.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-9,11-15,18,20-22,28-29 IOERRNOCMD
-
- # WarpEngine
- #DEVICE warpdrive.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28 VERSION 40 REVISION 66
-
- # AsimCDFS
- #DEVICE asimcdfs.device DEVICETYPE NSDDEVTYPE_UNKNOWN COMMANDS 0-37
-
- # diskspare
- #DEVICE diskspare.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 2-15,18-22 VERSION 3 REVISION 0
-
- # squirrel
- #DEVICE squirrelserial.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4 VERSION 37 REVISION 565
- #DEVICE squirrelscsi.device DEVICETYPE NSDEVTYPE_TRACKDISK COMMANDS 1-15,20-23,28 VERSION 37 REVISION 1765
-
- # telser (Command set not checked!)
- #DEVICE telser.device DEVICETYPE NSDEVTYPE_SERIAL COMMANDS 1-11,!4
-
- #-------------------------------------------------------------------------
- #
- # Some broken software checks the device name and assumes certain
- # capabilities. This prohibits the use of updated drivers because
- # the software would not use their features.
- # Via device mapping, you can map a certain device unit combination
- # to another.
- #
-
- # Fool CrossDOS into using TD_GETGEOMETRY for fake units
- #DEVICE mfm.device UNIT 1 MAPTODEVICE hwgatapi.device MAPTOUNIT 1
- #DEVICE mfm.device UNIT 1 MAPTODEVICE scsi.device MAPTOUNIT 1
- # Same thing for versions of FFS.
- # Note that mapping trackdisk units to other devices may be dangerous
- # unless you run any noclick hack before NSDPatch!
- #DEVICE trackdisk.device UNIT 1 MAPTODEVICE hwgatapi.device MAPTOUNIT 1
- #DEVICE trackdisk.device UNIT 1 MAPTODEVICE scsi.device MAPTOUNIT 1
-
-
- #-------------------------------------------------------------------------
- #
- # Demonstration lines for activation and late mount functionality.
- # If you want to late mount huge partitions, place the late mount lines
- # after the device patch line. Note that you must not specify a colon
- # for the DOS names.
- #
-
- # Activate a mounted DOS device entry named "HUGE" (without the colon!)
- #ACTIVATE HUGE
-
- # Late-Mount and activate a partition named "BIG" on scsi.device unit 4
- #DEVICE scsi.device RDBUNIT 4 ACTIVATE BIG
-
- # Late-Mount all non automount partitions on scsi.device unit 4
- #DEVICE scsi.device RDBUNIT 4 ACTIVATE #?
-
- # Late-Mount all unmounted partitions on scsi.device unit 4
- #DEVICE scsi.device RDBUNIT 4 ACTIVATE #? MOUNTANY
-
- # Late-Mount all unmounted partitions except for UNIX and MAC on scsi.device unit 4
- #DEVICE scsi.device RDBUNIT 4 ACTIVATE ~(UNIX|MAC) MOUNTANY
-
- #-------------------------------------------------------------------------
-
- ### EOT ###
-
-