[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
New csa2 FAQs: F002HDNSCSI
Apple II Hard Drives and the SCSI interface
Csa2 FAQs-on-Ground file: FxxxHDnSCSI.txt
This material compiled by the Ground Apple II site, 1997.
It may be freely distributed.
Note: This is a pure Text file which has no Font, Color, etc.
formatting. To correctly view tables and diagrams on a super-res
display, use a mono-spaced Font such as CoPilot or PCMononspaced.
____________________________
001- How difficult is it to add a hard drive to my IIgs?
002- What kinds of hard drive systems are available?
003- What do SCSI ID numbers mean?
004- What is "SCSI-2" and how is it different from SCSI-1?
005- Will a SCSI-2 hard drive work with an Apple II system?
006- Will my Rev. C SCSI Card work with a SCSI-2 drive?
007- What is SCSI "termination power"?
008- Can I avoid the "Ramfast/SCSI is searching SCSI bus" delay?
009- What is the pin-out for the standard 50-pin SCSI cable?
010- What's the SCSIHD.DRIVER patch to ignore DRIVER43 partitions?
011- What is the "bad bug" in the ROM 3.01e RamFAST?
012- How do I attach a 90mb Bernoulli drive?
013- What are the settings for a CMS hard drive controller card?
014- Does it matter when I power-ON my SCSI hard disk?
015- Can I leave SCSI devices I'm not using turned OFF?
016- Is there a SCSI tutorial available for downloading?
From: Bradley P. Von Haden
001- How difficult is it to add a hard drive to my IIGS?
Adding a hard drive is not much of a problem. Usually, you will need to
insert an interface card, possibly connect a cable or two, and change a
Slot setting in the Control Panel Desk Accessory.
---------------------------
002- What kinds of hard drive systems are available for Apple II
users?
The most versatile and most common hard drive set-up is an internal
SCSI interface card and an external SCSI drive. Hard drives, cd-rom
drives, removable media (SyQuest, Iomega), flopticals, and scanners all
can be added to the SCSI chain. Insert the card in a slot, connect a
cable or two, and change a slot setting.
The preferred SCSI card here on c.s.a2 is the RamFAST Rev. D SCSI
card from Sequential Systems. The next best card is the Apple Hi-Speed
SCSI card.
Here are some RamFAST notes:
- still being produced and supported by Sequential Systems
- faster than Apple Hi-Speed, especially in ProDOS
- provides termination power to the SCSI chain
- allows partitions to be mapped in ProDOS
- device drivers come on the card in the upgradeable ROM chip
(3.01f)
- allows up to 8 devices to be added to the chain
- allows up to 12 partitions to be active at any one time
(switchable)
- allows up to 12 partitions per drive
- only one device, the last physical device on the SCSI chain,
can be terminated
- about $130 new
Here are some Apple High Speed notes:
- no longer produced or supported by Apple
- does not provide termination power to the SCSI chain (can be
modified to provide termination power)
- does not allow partitions to be mapped in ProDOS
- device drivers are software
- allows up to 7 devices to be added to the chain
- allows over 100 partitions to be active at any one time
- allows up to 20 (?) partitions per drive
- only one device, the last physical device on the SCSI chain,
can be terminated
- about $110 new (if still available)
For the hard drive itself, look for a SCSI drive in an external
enclosure. Just pick up a Mac magazine. Look for the following
features:
- 30 day money-back guarantee
- external SCSI ID switching
- dual 50 pin SCSI connectors
- no or switchable termination (use an external terminator at
end of SCSI chain)
- active or switchable termination power is a plus, especially
for Apple High Speed SCSI card users [Termination and
termination power are different. Both need to be present in
the correct quantity for the SCSI chain to operate in the
proper manner.]
If you have an IDE drive lying around, it can be used with the
Turbo IDE card from SHH Systeme (about $120). The card is not as
flexible as a SCSI card, but if all that is wanted is a hard drive, then
this is a good option; especially if the drive is available for little
or no money.
The simplest hard drive to install is the FOCUS hard drive on an
interface card available from Alltech in varying sizes (20MB-200MB at
approx. $70-$200). The card comes plug-n-play: just insert in a slot and
change a slot setting. The drive is already formatted. If all that is
wanted is a hard drive, and no other devices are going to be added, this
is an economical choice.
____________________________
from Nathan Mates
003- What do the SCSI ID numbers mean?
SCSI ID numbers 0 and 7 tend to have special meanings; the Apple
High Speed SCSI displays multiple copies of partitions online if a drive
has that ID. Use 1-6 instead. The computer will boot the hard drive with
the highest SCSI ID, which should be ID 6.
Check that each device has a unique ID. Most drives have a
thumbwheel on the back to set the ID. Your SCSI card (yes, it counts
too) is probably ID 7. Number your drives from 6 downwards for best
compatibility. The IDs have nothing to do with what slot the card is in.
___________________________
From: David Empson
004- What is "SCSI-2" and how is it different from SCSI-1?
For hard drives, "SCSI-2" basically means that the drive supports a
stricter command set. The physical interface is usually identical.
For other device types, "SCSI-2" means a lot more, because the original
SCSI standard didn't define much in the way of device types and command
sets, so most devices use proprietary command sets. SCSI-2 standardises
the command sets for most types of devices.
There are three special types of interface that you might see mentioned:
"Fast SCSI" supports data transfer at twice the speed of the original
SCSI standard (10 MB per second vs 5 MB per second). This will not be
a compatibility issue, as it is just the maximum transfer speed
supported by the drive. The Apple II cannot transfer more than one
megabyte per second.
"Wide SCSI" uses a different cable arrangement to double the width of
the data path (16 bits instead of 8 bits). A wide SCSI drive cannot be
used with an Apple II, unless it can also operated in "narrow" mode
with the original 50-pin connector. (There is also "Fast Wide SCSI",
which doubles the data rate and the width of the bus.)
"Differential SCSI" involves a different type of interface to the
computer, where every data signal has a balanced positive and negative
pair of wires, rather than a single wire and a ground line. I believe
it has a different type of connector. Differential SCSI drives cannot
be used with an Apple II."
Some drives use a proprietary connector, but the standard (narrow,
non-differential) SCSI bus uses the same 50-pin connector for SCSI-1 and
SCSI-2.
The only significant problem you might run into is termination, and
supply of termination power. SCSI-2 devices tend to be fussier about
termination than older devices.
------------------------------
005- Will a SCSI-2 hard drive work with an Apple 2 system?
Usually, yes. I'm on my second Quantum drive that is described as
"SCSI-2".
------------------------------
006- I have a plain ol' Rev. C SCSI Card, will this work with a
SCSI-2 drive?
My Quantum LPS240 is working fine on an original Apple SCSI card.
Note: With the original Apple SCSI card, the card itself is not
terminated, so if you are connecting more than one device, you need to
add a second terminator between the computer and the first drive (using
a "pass-through" external SCSI terminator, or internal termination on
the first drive).
------------------------------
007- What is SCSI "termination power"?
At least one device (computer or any drive) must provide power for
the SCSI terminators, by feeding 5 volts onto the TERMPWR line on the
SCSI bus (usually through a diode, to prevent backfeeding from a higher
voltage device; a good implementation will also have a fuse to protect
against shorts and a capacitor to cope with a sudden rise in termination
power drain).
The Apple SCSI cards do not provide termination power (though
recent Apple High-speed SCSI cards were modified by Apple to provide
termination power). The RamFast has a switch (?) to select whether it
supplies termination power.
I do not recommend getting the computer to supply termination power
unless you have a heavy duty power supply, as the TERMPWR line can
potentially use up the entire available current capacity of the +5V rail
going to the slots.
Both of my Quantum drive mechanisms provide termination power to
the SCSI bus, avoiding the need to supply it from anywhere else.
____________________________
From: LJSilicon
008- I just reinstalled System 6.01. Now every time I cold boot
I get this message 'Ramfast/SCSI is searching the SCSI bus
for devices..etc.' and have to wait several seconds. WEIRD?!
When you reinstalled the software, the RAMFast set itself for a
long search. This is an option that you can change using the RAMFast
utility. What it is doing is giving your scsi devices a chance to spin
up. If you want a fast check, go to the options menu on the utilities
and reset the Short Timeout option there to "YES".
__________________________
From: dempson@atlantis.actrix.gen.nz (David Empson)
009- I would like to make my own SCSI cable. Does anyone on csa2
know the pin-out for the standard 50-pin SCSI cable?
The cable pinout is documented in the technical reference manual
for the Apple High-Speed SCSI card (and the original one as well).
This pinout is not a simple mapping from one end to the other.
I repeat that it is NOT easy to make one of these yourself. Apart from
any issues of wiring errors, you also need a properly shielded cable to
minimise noise being picked up or radiated. You should definitely not
use a ribbon cable.
Here is the pinout, assuming I haven't made any typos (I can't see any).
DB-25 50-pin Function
1 49 -REQ
2 46 -MSG
3 50 -I/O
4 45 -RST
5 44 -ACK
6 43 -BSY
7 16,18,19 Ground lines
8 26 -DB0
9 20,21,22 Ground lines
10 29 -DB3
11 31 -DB5
12 32 -DB6
13 33 -DB7
14 1,2,3 Ground lines
15 48 -C/D
16 4,5,6 Ground lines
17 41 -ATN
18 7,8,9,11 Ground lines
19 47 -SEL
20 34 -DBP
21 27 -DB1
22 28 -DB2
23 30 -DB4
24 23,24,25 Ground lines
25 38 TERMPWR
The unlisted pins in the 50-pin connector (10, 12, 13, 14, 15, 17, 35,
36, 37, 39, 40, 42) are ground.
Note: the numbers for the 50-pin connector are counted along each row,
like a DB-25. They are NOT the wire numbers in a ribbon cable.
____________________________
From: Steve Reeves
010- Is there some patch for SCSIHD.DRIVER to make it ignore
APPLE_DRIVER43 driver partitions?
Yes; you can change the counter in the string comparison routine
that checks for the "Apple_Driver" partition type string so that it only
checks the first 12 characters. This counter is at byte $3574 in the
System 6.0.1 SCSIHD.DRIVER file and is originally $1F. Change this to
$0B and the driver will then ignore "Apple_Driver43" partitions.
If you make this or any other patch to the driver, I also you
recommend you bump up the version number. Change byte $01FF from $10 to
$2E (for version 6.02 experimental).
____________________________
from Harold Hislop
011- Someone told me there's supposed to be a bad bug in the
ROM 3.01e RamFAST. What is it?
Don't use the built in backup/restore in 3.01e!!! The restore
opeation will nuke the partition map on the drive being restored to, as
well as all existing partitions on that drive!
____________________________
From: Bradley VonHaden
012- I am having problems attaching a 90mb Bernoulli drive
to my GS. My system is as follows:
ROM 1 Apple //gs
4mb AE RAM card
8mhz ZIP GS
Apple High-Speed SCSI card
90 mb Bernoulli hard drive
System 6.0.1
Three things I can think of to check:
One possibility is DMA compatibility. If your memory card is not DMA
compatible, then switch 1 on the Apple HS SCSI card should be open (up).
Another possibility I guess is a SCSI ID conflict. The Apple HS SCSI
card's ID at the factory is set to 7. Here are the Apple HS SCSI card
switch combinations:
note: Switch 1 controls DMA; open (up) turns DMA off
note: Switches 2-4 control SCSI card ID
note: 'U' means open (up), 'D' means closed (down)
SWITCH: 1234 1234 1234 1234 1234 1234 1234 1234
SETTING: .UUU .UUD .UDU .UDD .DUU .DUD .DDU .DDD
CARD ID: 0 1 2 3 4 5 6 7
Third, the scsi chain needs termination power to work properly. This is
different from termination. Both are required for a properly
functioning scsi chain. It is possible that neither the Bernoulli drive
nor the Apple HS SCSI card is supplying termination power. If this is
the case, and there is no other device on the scsi chain to supply said
power, it probably won't work. There is a modification (requires
soldering skills) to the Apple HS SCSI card to make it supply
termination power.
____________________________
From: Jack Countryman IAC
013- I want to configure a CMS hard drive controller card to run a
20 meg drive for a //e. Could someone supply info on settings?
According to the CMS manual, page D3, the six sets of eight pairs
of jumpers
(u1....u6) are for the following purpose:
_______________________________________________________________
/ |
/ u 1 u 2 u 3 u 4 j2 |
/ |
/ |
| |
| |
| |
| |
| |
| u 5 u 6 |
|___________________________________________ j1 |
| |
|______________________|
u 1: Boot Scan delay....manual shows no jumpers here in default
configuration
u 2: first (left) jumper is 'Enable I.C.P. (Yes/No)', middle 6 not
used, last (right) is 'multiple initiators (Yes/No)'...manual
shows no jumpers in default configuration
u 3: Selection phase time out delay....I believe this sets how long
the card waits for the drive to come up to speed(?)...manual
shows the default as having 4, 5, and 7 with jumpers installed
u 4: Arbitration phase time out delay....manual shows default as no
jumpers installed
u 5: Bus Free phase time out delay...manual shows default as jumper
on number 1
u 6: Interrupt recovery delay....manual shows jumpers on 3, 4,
and 5
J1 and J2 are single sets of pins. The manual says J2 is not used,
but J1 is to be jumpered.
The card I have here, came out of a IIGS where it was hooked to
first a twenty meg CMS drive, and later a forty meg CMS drive. It has
the following jumpers set:
u1: jumper on 7
u2: no jumpers
u3: jumpers on 4, 5, and 7
u4: no jumpers
u5: jumper on 1
u6: jumpers on 3, 4, and 5
j2: no jumper
j1: jumper
As I recall, this setup yeilded a rather long pause for the hard
disk to come up to speed (about 40 to 45 seconds) that we found
necessary at the time to avoid boot problems.
____________________________
From: B.J. Major
014- Does it matter when I power-ON my SCSI hard disk?
From the Apple IIgs Owner's Reference, page 267:
"In order for the Finder to recognize a hard disk, the hard disk must be
switched on and up to speed before you start up (or restart) the
computer. Switch on the hard disk, wait about 10 seconds for it to come
up to speed, and then restart the computer."
From the Macintosh User's Guide for desktop Macs, page 216:
"IMPORTANT: Always turn on any external SCSI devices connected to your
Macintosh before turning on the computer itself. Otherwise, your
computer cannot recognize the SCSI devices."
___________________________
From: Randy Shackelford
015- Can I leave SCSI devices I'm not using OFF when I
turn ON my GS?
If it were not okay, I would have fried plenty of hardware. I do
this all the time. I have seen no problems with having some devices off.
As I have mentioned, I keep my magneto optical off most of the time;
and, my buddy who uses my 700 now has a flatbed scanner and leaves it
off most of the time. Both work fine.
____________________________
016- Is there a SCSI tutorial available for downloading?
SCSI (pronounced scuzzy) TUTORIAL By Daniel L. Miller, MD, BSEE
This article combines two interests in that it fits into both the
advanced pc hardware series and the Texas computer firm series.
1 Operational Description
The Small Computer Serial Interface is an input/output channel bus
specification. The specification allows up to eight bus controllers to
exchange control packets and bytes of data between any two pairs of
controllers.
2 Examples of Data Exchange
Workstation to hard disc, optical disc and high density floppy.
Workstation is the bus master the peripheral devices are individually
accessed. One initiator , 3 targets.
Several workstations accessing a bank of hard discs for fast
data retrieval with interleaved seeks and queed commands.
Multiple initiators, multiple targets. Each drive disconnects
from the bus during long seeks, while other drives transfer
data and then reconnects when ready to transmit data.
3 Rates of data exchange
Data rate of readily available bus interface chips 12 - 15
megabits per second. NCR 5380 / NCR 5385
Logic Devices L5380 32 megabits / sec
4 Controller Selection
Bus controllers are free to access the bus to try to gain
control to initiate a data exchange. Bus arbitration is
according to a fixed priority 0 - 7 rating. If two devices
request access the lower priority device must wait.
5 How many devices.
The specification allows 8 controllers
to be selected from 8 data lines -- one line per each device.
Two additional lines select up to 4 devices for each controller.
Up to eight bus controllers each controlling up to 4 devices
totals 32 devices.
A proposed extension allows binary decoding of the selection
lines to allow 64 controllers. ( Ampro SCSI+ protocol, Ampro
advertises in Byte )
6 Accessing the Bus
The scsi interface protocal may be implemented with a dedicated
cpu and 4 input and 4 output data latches. (Novix Beta Board )
Scsi bus interface chips with data latches are readily available
both in TTL and CMOS configuration. NCR, Toshiba 2nd source and
similar purpose chips are available from Adaptec and Western
digital.
Emulex has announced a vlsi chip scsi processor which they claim
can
implement bus sequences without external microprocessor
intervention.
The NCR chip is programmed by addressing register select lines and
storing a byte in the controll register and if appropriate in the
data register. A programming manual lists the possible commands.
The chip will perform aribitration logic and drive the bus and
detect protocol errors ( called phase errors in the NCR literature
)
and parity errors. Data ready and error conditions are flagged
by an inerrupt line. A register holds a code to identify the type
of error detected to be read by the host cpu for error interrupt
handling routines.
The interface chip has handshake signals to operate efficiently
with a DMA controller to move blocks of data into or out of a
section of memory. The dma is a dedicated cpu chip that generates
addresses for moving data sequentially into or out of memory.
6.5 Terminology
Initiator - the device that begins an interchange
Target - The device that is selected by the initiator
Host - In the configuration of a computer sending data to
one or more disk drives, "host" refers to the main
workstation
computer.
Controller - any device that connects to the scsi bus
connects through a controller.
Device - Each controller on the bus can control up to 4 devices.
Each device can be individually addressed, so a device
connected
to one controller can specifically talk with a device on
another
controller. Devices connected to the same controller cannot
talk to each other over the scsi bus. The devices are also
called "Logical Units" or LUN's because they are addressed and
specified by 2 bits in each command sent over the bus, rather
than
being selected by a hardware bus line.
SASI - sasi stands for Sugart Associates System Interface, a single
host multiple target ( non arbitrating ) interface which was
the
precursor to the SCSI specifications.
SCSI - Small Computer System Interface, the current standard
specification is the ANSI (American National Standards
Institute)
version X3.131, 1986.
Embedded Controller- some drives have a scsi interface built into
the drive electronics mounted in or on the drive itself. This
will be referred to as a "scsi drive."
SCSI controller - a scsi interface board that then connects with up
to four devices like esdi drives or st412/506 drives or optical
drives. (The scsi controller is made to talk to regular
devices,
like the drives in a xt or at computer.) Scsi controllers are
made
for optical drives, tape systems, ESDI and st412/506 hard
discs.
7 Data Transfer Protocol
The initiating controller first gains control of the bus and
gets the attention of its target controller. The target then
takes control of the data exchange and asks the initiator what
it wants to do. ie give a command, send or receive data. The
initiator responds and the target aknowleges receipt of command
and transmits or recieves data, under control of the target
controller.
The target will indicate with a message that it has successfully
completed its mission.
Bus phases
BUS FREE phase
SELECTION phase
COMMAND phase --
DATA phase |-----These are the information transfer
STATUS phase | phases.
MESSAGE phase --|
ARBITRATION phase (optional) | |-for multiple
hosts
RESELECTION phase (optional) |---optional-| for multidrive
high
bus performance
7.5 DATA EXCHANGE WALKTHROUGH
An example of a simple data interchange between an initiating host
PC and a target hard disc drive.
To send a block of data to a disk drive a pc first checks the bus
busy line. When the line indicates the bus is free, the pc will
send its identification code over the data lines and pull the bus
control lines. If there is more than one device desiring to use
the bus at the same time, the device with the highest priority
always wins. There is no inherent mechanism to insure fairness
or to force a round robin to prevent one device from tying up the
bus.
After gaining control of the bus the pc will select its target
device by activating one of eight lines. The device selected
then takes control of the data interchange, and will remain in
control until the end of the exchange. The target asks the pc
for a command. The pc responds with a command block to read
10 blocks beginning with block 5. The target acknowledges and
translates the logical block numbers to absolute sectors, seeks and
reads the sectors, performs error correction and transmits the
data byte by byte with a handshake acknowlegement after each byte.
When it is finished it requests to send its status and transmits
a status report, if the status is good and the data does not have
to be retransmitted the drive then requests to send a message and
reports completion.
8 SCSI Command Format
When the target requests a command, the initiator responds by
sending out 5 bytes ( 40 bits ) of command information. These
bits are used to specify the command and identify the logical
device. There is a SCSI COMMON COMMAND SET specification.
The purpose of the specification was to
"Allow true second sourcing of SCSI hardware." However,
because there are still multiple ways to do certain commands
and vendor specific functions, hard disc interchangeability
has not yet been achieved. From the end user point of view,
one can't unplug one scsi drive and replace it with one
from another manufacturer and expect it to work without
rewriting the device driver software for formats and the message
handling scsi driver routines.
The set of 40 bits is called a command block. The first byte
specifies the class of commands or opcode.
Some Common Command Set Opcodes are the following:
Opcode 00 (hex) TEST UNIT READY
03 FORMAT UNIT
08 READ
0A WRITE
0B SEEK
Since the drive controller electronics is on the drive side of
the SCSI BUS the data is organized by the drive controller and
requested by block number. The controller translates the block
number to the track and sector information used to step to the
data. This permits flexibility for the drive manufacturer. A
drive with an embedded SCSI controller can reallocate bad blocks
internally and substitute blocks automatically from a spare
track.
The meaning of the remaining bits varies for each opcode.
The Write Command, opcode 0A, for example
BYTE 0 opcode 1A (00001010)
BYTE 1 Logical unit number in bits 5-6, bits 1-4 specify logical
block address
BYTE 2 logical block address
BYTE 3 logical block address
BYTE 4 Bits 2 to 5 specify the transfer length
BYTE 5 Bits 7 and 6 are vendor unique, bit one is a flag, bit 0
a
link
9 SCSI Hardware Bus Specification
25 signal lines; 25 ground lines
Signals may assume true or false. Signal assertion true is 0 v.
Signal negation (false) is 2.5 to 5.25 V dc
( Bus driver chips typically invert the signal so bus voltage
levels are typically the reverse of normal logic levels input to
the
on chip or input to the bus drivers where
+5 V is true.)
SCSI BUS SIGNALS
Busy indicates the bus is in use
Select used by the host to select the drive
Control/Data This signal is driven by the target (like a disc
drive and indicates whether CONTROL or DATA
information is on the DATA bus. A true value
indicates a control signal is on the bus.
Input/Output
This signal is driven by the target (disc drive)
and
controls the direction of data movement on the
DATA
bus with respect to the host.
A true value indicates input to the host.
Message This signal is driven by the target (disc drive)
during the message phase.
Request This signal is driven by the target (disc drive)
and
indictes a request for a data transfer handsake
acknowlegement.
Acknowledge This signal is driven by the host and
acknowleges a
a data transfer handshake.
Attention This signal is driven by the host to indicate a
condition needing attention.
Reset This forces a reset of devices on the bus.
Data lines (8)
Parity line (1) This line may be used by the devices to signal a
parity error in the received data or command.
Bus Power lines