Short: SCSI driver for A1000 Phoenix boards Author: Erich.Loew@joanneum.ac.at (Erich Loew) Uploader: Erich Loew joanneum ac at (Erich Loew), gordonf intouch bc ca (Gordon Fecyk) Type: driver/media Version: 7.17 (1997-09-16) Requires: Phoenix MB and KS 2.04 or later Architecture: m68k-amigaos Distribution: Aminet PBSCSI 7.17 is a replacement driver for Phoenix Microtechnologies' SCSI adapter found on their Phoenix Replacement Motherboards for the Amiga 1000. It is based on Erich Loew's driver for Otronic's OSSI hardware, which like the Phoenix MB SCSI, uses AMD's 5380 single-chip SCSI controller. The driver could be easily adapted to other 5380-based SCSI devices, such as IVS's Trumpcard, Xetec's FastTrak, etc (Write Erich or me for more information). This driver is a non-DMA driver like the original PBSCSI revisions J or older. Unlike Rev J, however, this driver makes use of the hardware interrupt logic implemented on the Phoenix MBs in revisions I or later. This allows the SCSI subsystem to work with disconnect/reconnect, diskchange interrupts, and provides an overall compatibility improvement with all SCSI-II hardware. Hard disk performance will not improve significantly, but non-HD devices (CD-ROMs notably) will improve dramatically thanks to the improved CPU usage and interrupt handling. For more info on a pseudoDMA driver variants that improves read/write speed by 600%, read the Distribution Info on the bottom. Installation: This driver is not an EPROM image; you may safely start your system with your original Revision I or J EPROM. The only hardware mod you need to perform is adding a jumper across L30 (located near the hard disk LED connector near the SCSI connectors). You may safely install this jumper and use this driver or your original driver. * ADD THIS JUMPER BEFORE CONTINUING!!! * If disk performance sucks after you use this driver, it's because you forgot to install the jumper on L30. Software install method 1... - Disable the autobooting of the ROM resident driver using Jumper L35. - Setup a botable WorkBench floppy disk with at least: + C/BindDrivers + Expansion/Phoenix + Expansion/Phoenix.info + S/Startup-Sequence - Make the floppy bootable with the C:Install command - The file S/Startup-Sequence should contain the following line: C:BindDrivers - Boot from this floppy disk - Remove the floppy disk - Reboot again - And now the system autoboots from your hard disk resident boot partition until you power off the Amiga. This method works as a normal BindDrivers type driver, with the exception that it stays resident between reboots (If you use a boot floppy --- as stated above --- you only need to use it once). Software install method 2... - Do not disable autobooting from the REV I or J EPROMs! - Copy the included "PHOENIX" file to any convenient place on your hard disk, and include this line early (before SetPatch) in your startup-sequence: (path)/phoenix - When the startup-sequence hits this line, the driver will load, hook itself into ROMKickTag, and force a reboot. This reboot will occur with the replacement driver active overriding the EPROMs until you power off your AMIGA. This is a preferred solution if you have any non-autoconfig memory boards that also hook into ROMKickTag (such as CSA's Derringer '030 D3 command, or other resident AddMem program); load the memory board's AddMem command first (without forcing a reboot), then PHOENIX. This allows the driver (and much of the OS) to relocate itself to FAST memory on your non-autoconfig board. Example of a typical S:Startup-Sequence file: Sys:Utilities/D3 DRAM -res Sys:Expansion/PHOENIX C:SetPatch < NIL: > NIL: QUIET (etc...) - Again: The new driver will remain active untill you power off the Amiga! - Usage: You may disable the driver without powering off the Amiga with the included KillDriver command, but I doubt you'll want to do this. :-) 32-bit CPU users will want to try setting their FileSystem masks to 0xFFFFFFFC instead of the default 0x00FFFFFE, as this allows the file system driver to use 32-bit memory and improve random access speeds. The pbscsi 7.13 driver will use FAST memory if available, so if the file system also uses 32-bit memory, there's no need to touch CHIP memory for any disk access, greatly improving random access performance (Directory scans, defragmenting, etc) A few very ancient SCSI devices (Notably SyQuest's SQ555 and Fujitsu's old M26xx drives) will sieze up during access if you set the FileSystem mask to 0xFFFFFFFC. SyQuest drives can be fixed by requesting a firmware upgrade from SyQuest for free. Newer SQ drives do not exhibit this problem. As for Fujitsu's drives, just try flipping DIP switches, one at a time, until the siezing stops. Modern disks do not exhibit this behaviour. Compatibility: Tested on OS versions 2.04 through 3.1 (3.1 testing performed on OSSI hardware, but Phoenix hardware is identical). Also tested with new NSD specs and FastFileSystem 43.14 for > 4 GB disk compatibility. FFS 43.14 available from ftp.amiga.de. It also work on KS 1.3. Phoenix's original pbscsi.amhd for A-MAX II still works but this does not gain any benefits from the interrupt handling or reduced CPU speed. I gather that Shapeshifter will work without special drivers, but I haven't tried. Distribution info: This version is freely distributable but is not Public Domain. You may not reverse-engineer/decompile/mangle/etc this code (Contact either of us for porting to other 5380-based SCSI devices). There is also a pseudoDMA version of this driver which requires some hardware patching, but will greatly improve disk performance by nearly 600% over the original Rev J driver. The price is $20.00 US for the pseudoDMA driver, step by step modification guide, and controller tuning guide. The hardware patch involves an additional 74HC00 part, trace cutting on the Phoenix MB, and wire soldering. Plans are also afoot for an EPROM version of both drivers to completely replace Rev I or J. We would also love to consider replacement A-MAX II or Shapeshifter drivers if anyone out there knows how to write them. We especially can use assistance regarding the Rev J EPROM layout, as we need to somehow cram 11KB of code into this thing that only allows us two 8 KB segments. Contact Infos: Erich Loew St. Peter Hauptstrasse 33c/8/17 A 8042 Graz Austria Gordon Fecyk BSMT 5531 McRae Street Richmond, BC V6V 2P5 Canada