[unix-pc.general] All right! and 1.2M floppies; HwNote05

jbm@uncle.UUCP (John B. Milton) (10/19/88)

I see you're all still out there.

First thing's first. If you have ANY ideas for hardware enhancements, e-mail
them off to me. Let me know about any special deals for hardware that give you
the idea and all possible uses you can think of. You will get credit for your
idea in the form of recognition, but that's all! If I sell it and make $1M,
tough luck. No flames, please. I doubt if anyone would send me any earth
shaking ideas. What I'm looking for are things like "Why don't you make a
board using the new XYZ graphics/hard-disk/tape/floppy/short-wave chip"

Well, I figured out how to get the newer generation UNIXpc mother board working
with a second hard drive. The problem is this discrepancy in the schematics.
The reference manual has two copies of the schematics, with assorted changes
between the two. The older of the two is not as old as the board I first
did the upgrade on.

The problem is the DRUN pin going to the WD1010-05. This pin needs to have a
signal from an external one-shot which is triggered whenever a pair of one or
zero bits (the same in MFM) comes in from the drive. The one shot does this by
triggering on the data signal from the 26LS32 being low for 250ns. This
separate detector is needed because the PLL (Phase Locked Loop) data separator
is not turned on yet. Once the HDC detects 8 cycles on the DRUN pin, it thinks
it has found an address mark and drives the RG (Read Gate) pin to activate the
external PLL. Once it does that, it can start interpreting the data from the
drive and start looking for sector headers.

Apparently on the old board the data signal sent to the one-shot came from
after the PAL, so it got there no matter which drive is active. The newer
board I just upgraded DOES match the schematics. The data signal goes straight
from the 26LS32 to the one-shot. They must have had some kind of delay or
stability problem going through the PAL and switched over to the raw data.
To fix the problem I had to find some way to switch which drive data is being
sent to the one-shot. It turns out there is a spare 3 input NAND gate at 13M
(pins 3,4,5,6). That must be it, 'cause it works!

The important question is whether or not there are any more incompatibilties
waiting out there. I guess the next thing is to put together a prototype
daughter board so I can get all the details nailed down. I am still considering
putting the watchdog circuit on the daughter board.

On the 1.2M floppy. Convergent cheaped out here and went with the 2797 rather
than the 2793. The reason being that they got a Side Select Output pin. What
they traded was an internal clock divide pin. This means that the clock to
the 2797 has to be externally changed from 1MHz to 2MHz when going to high
density. The VCO filter circuit (on the PUMP pin) also needs to be affected.
There are several little triangle notes around the FD about not using the
2797, but that would present another bunch of problems, ending in software.
Fortunately there is a 2MHz clock available. I think a flip flop, an open
collector buffer, a resistor and a latch should do it. The latch is already
in my current design for the second hard drive upgrade...

An interesting note: I just looked at the schematics for the floppy tape
board. They run the WD2797 in high density mode. The analog stuff on RPW, WPW,
VCO and PUMP is different. They do have a 2 MHz clock. Hmm.

I suppose what one could do would be to permanently modify the FDC to do high
density by just copying the stuff from the floppy tape. As long as you still
have access to a system with a low density setup you could access low density
disks. With a 1.2M disk you could mount the floppy on /usr/spool/news and
expire once an hour :)

Next time: 4M machine with a 1.5M Combo card (maybe)

John
-- 
John Bly Milton IV, jbm@uncle.UUCP, n8emr!uncle!jbm@osu-cis.cis.ohio-state.edu
home (614) 294-4823, work (614) 764-4272;  Send vi tricks, I'm making a manual

jan@bagend.UUCP (Jan Isley) (10/20/88)

On "All right! and 1.2M floppies; HwNote05", 
	jbm@uncle.UUCP (John B. Milton) writes:

>On the 1.2M floppy. Convergent cheaped out here and went with the 2797 rather
>than the 2793. The reason being that they got a Side Select Output pin. What
>they traded was an internal clock divide pin.
>...
>I suppose what one could do would be to permanently modify the FDC to do high
>density by just copying the stuff from the floppy tape. As long as you still
>have access to a system with a low density setup you could access low density
>disks. With a 1.2M disk you could mount the floppy on /usr/spool/news and
>expire once an hour :)

Yup, John, it didn't work.  Just tying the !5/8 pin to +5V hung the drive up.
I was trying the simple fix about the time you were posting this.  Having 
tried the simple stuff, I'll go for the soldering iron again in a few days.
This can work, it may or may not be easy (read: may or may not require use
of a scope to fiddle with to frequency to drive the floppy etc...) 
BUT...it will work.  The question is, is it worth it?

I can buy new name brand 1.2M drives all day long for $80 or so, the disks
cost about $0.75 each in bulk, more if you love to waste money.  So, you have
to buy a drive and the disks cost around 3 times as much as DSDD, but they 
hold 3 times the data.  AND, they may not take 3 times longer to read and 
write!  Want proof?  Next paragraph please.

I have had a Mac since 84 so I am used to the slightly higher price for those
cute little 3.5 inch disks.  Currently, I'm paying $11 to $12 for a box of 10.
If you are paying more, ask the sales person if it was good for them too.  What
does this have to do with unix-pc.general?  I have had a 3.5 inch floppy drive 
in my system for over two months now and it is working great.

Watch this:

iv -vt /dev/rfp020

Floppy disk
Volume Name: Floppy
80 Cylinders. 2 Heads per Cylinder.
There are 10 Physical Sectors (of 512 bytes) per Track.
	20 Physical Sectors per Cylinder, 1600 Physical Sectors per Disk.
There are 5 Logical Blocks (of 1024 bytes) per Track.
	10 Logical Blocks per Cylinder, 800 Logical Blocks per Disk.
The Floppy is Single density
The Step Rate supplied to the Controller is 0.
Partition 0: start Track=0, size (in Blocks)=5
Partition 1: start Track=1, size (in Blocks)=795
---------------------------------------------^^^ = 395 for an fdfmt10.nl disk!

Yea, 795k on a floppy that I can put in my pocket.  No, I have not timed it
with a stopwatch but it really does not seem to take any longer to format or
cpio to than a 5.25 inch disk.  1.2M drives are also lots faster than 360k
drives.  No, a 1.44M drive does not work for the same reasons as the 1.2M, 
I tried.  More to come on both drives.

Right now, the 3.5" drive is in the machine with a cable running out the back 
to the stock 5.25" drive.  I have a switch rigged on the floppy cable so I can
manually select which drive to talk to...not pretty, but effective.  This 
could be done up for a whole variety of floppy drives.

Now if someone wants to write a new gdisk for this thing, maybe we could have
more than 1 floppy working at a time.  Read in /usr/include/sys/gdisk.h:

#define DISKS		3	/* the number of disks on s4 */

Ouch!  We already know that 2 of those 3 are hard disks (thanks John!) There 
seems to be no mechanism for drive select in the software or hardware, but then
I am not a unix person (yet) anyway, it may be there and I missed it.  It sure
isn't in the hardware.  Anyone seen a drive select?

To use the 3.5" drives, just take the 5.25 drive out and replace it, simple.
Then you can add these files to help with formatting:

#--------------------
# /usr/bin/fdfmt35.nl
iv -i /dev/rfp020 /usr/lib/iv/FD35nl
mkfs /dev/fp021
dismount -f > /dev/null 2>&1

or for adding a loader, replace the first 2 lines with either of these:

#--------------------
# /usr/bin/fdfmt35.sl	<---silent loader
iv -i /dev/rfp020 /usr/lib/iv/FD35sl

#--------------------
# /usr/bin/fdfmt35.vl	<---verbose loader
iv -i /dev/rfp020 /usr/lib/iv/FD35vl

You may notice that these are just modified copies of /usr/bin/fdfmt??.??
And while you are copying files, add these in /usr/lib/iv/FD????

#-------------------
# /usr/lib/iv/FD35nl
# iv description for 3.5 inch 96 TPI Floppy file system disk w/o loader
type		FD
name		Floppy
cylinders	80 <--- we changed this to 80!
heads		2
sectors		10 <--- why can't this be more than 10???
steprate	0  <--- we cannot change this anyway
singledensity      <--- changing this is no help, to bad!
$
$
$
0
1
$
$

for the sl and vl stuff add these lines to the above:
#-------------------
# /usr/lib/iv/FD35sl
# iv description for 3.5 inch 96 TPI Floppy file system disk w/silent loader
#
#...same as above but change the last 7 lines to read:
#
loader		/usr/lib/iv/s4load.silent
$
$
0
7 <--- got to make more room for the loader here
$
$

#-------------------
# /usr/lib/iv/FD35vl
# iv description for 3.5 inch 96 TPI Floppy file system disk w/verbose loader
#
#... same as example #2 above but instead of s4load.silent, we add:
#
loader		/usr/lib/iv/s4load.verbose

If you use the user agent you could add the 3.5" selections to the menu if
you really want to take more time to format disks :-)

>Next time: 4M machine with a 1.5M Combo card (maybe)

Going to change the address select on a .5M expansion card???  Should make 
mine worth a few dollars more now |-) maybe I'll sell it.

Jan Isley, follower of Zen, picker of nit	h(404) 434-1335
jan@bagend.UUCP,  [...gatech...]!bagend!jan	w(404) 263-9200 ext4282
--------------------------------------------------------------------------
Opinions are like ---holes, everybody has at least one and they all stink,
except mine.  The ones expressed on my computer ARE mine.
--------------------------------------------------------------------------

dave@dms3b1.UUCP (Dave Hanna) (10/21/88)

In article <281@bagend.UUCP> jan@bagend.UUCP (Jan Isley) writes:
[ discussion of substituting 3.5 inch drive for 5.25 ,
and how to format for 800 sectors ]
>You may notice that these are just modified copies of /usr/bin/fdfmt??.??
>And while you are copying files, add these in /usr/lib/iv/FD????

>#-------------------
># /usr/lib/iv/FD35nl
># iv description for 3.5 inch 96 TPI Floppy file system disk w/o loader
>type		FD
>name		Floppy
>cylinders	80 <--- we changed this to 80!
>heads		2
>sectors		10 <--- why can't this be more than 10???
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>steprate	0  <--- we cannot change this anyway
>singledensity      <--- changing this is no help, to bad!

You can't have more than 10 sectors because that's all that will
fit on the drive, given data transfer rates (250K bits/second)
and rotational speeds (5 rps ), and the requirement for inter -
sector gaps to allow for instantaneous speed variations.

(Note: Amiga gets 11 sectors per track, but they do it by writing
entire tracks at a time, eliminating the requirement for intersector
gaps.  I think they also use gcr instead of MFM.)

>Jan Isley, follower of Zen, picker of nit	h(404) 434-1335

        Dave Hanna

-- 
Dave Hanna,  Daltech MicroSystems    |  "Do or do not -- There is no try"
P.O. Box 584, Bedford, TX 76095      |                        - Yoda
(214) 358-4534   (817) 540-1524      |
UUCP:  ...!killer!gtmvax!dave        |

gbh@juniper.uucp (Geoffrey B Hoese) (10/22/88)

In article <281@bagend.UUCP> jan@bagend.UUCP (Jan Isley) writes:
>[ discussion of substituting 3.5 inch drive for 5.25 ,
>and how to format for 800 sectors ]

	I've tried this, thinking it would work, but
no luck. iv reports an i/o error, and a message stating
that "...Drive door open or no disk in drive..." is sent
to /dev/error. The drive select light does come on, though,
and the motor spins, also the head retracts to trk. 0 when
iv starts. This doesn't work when the drive select jumper
is set to 1, so I assume the machine is looking for d0.

	I'm using a teac drive, model FD-135FN-75-U.
Is there something about this drive (a jumper, perhaps?)
that needs to be set? (I have tried various jumper settings,
but, alas, no docs) Alternately, is there a difference 
between motherboards that could be responsible? 
I don't know specifically what motherboards are out there,
but if it helps, mine's a 7300 with 512K from DDS. I'm
waiting for a good way to upgrade memory without desoldering
all those chips, and quickly pulled the 10mb drive and
put in a 30mb cdc in an external case. Excellent speed
improvement there, how much does memory help the speed
here? (give it a 10-scale).

	Thanks in advance, 
		Geoff Hoese


-- 

Geoffrey Hoese		gbh@juniper.UUCP
2105 Arpdale		{allegra,ctvax,im4u}!ut-sally!ut-emx!juniper!gbh
Austin, TX 78704	(512) 445-4786  (sometimes voice, sometimes data)

gbh@juniper.uucp (Geoffrey B Hoese) (10/22/88)

	a couple more comments regarding 3.5" disk not working -

	I'm running 3.0 - is iv or /dev/rfp020 different
			  as compared to 3.51?

	Motherboard I.D. - I don't know if this matters, but
			   the following info is from the m.b. -

	(at rear corner under FD) (items in parens are on stickers,
	the rest is masked)

	S4 CPU
	PCA D(60-00222)6-00   REV (PCT 3125)
	
	(at front corner, near p.s. cable)
	
	(REV  B)
		REV 00030676  <- this is bar coded

	
	also, another question - has anybody ran a faster
	clock in the 7300/3b1? I've been tempted to try;
	I have a device made for an AT that synthesises (sp?)
	a clock signal switchable from 8 to 12 mHz. Although
	two mHz increase may not be much, I'd like  to know
	if anyone has tried that or higher speeds, and where
	the thing seemed to fall apart. I'd think that the
	logic shouldn't be running at its upper limit as is,
	so something more should be able to be squeezed out of it.

				Thanks again,
					Geoff Hoese


-- 

Geoffrey Hoese		gbh@juniper.UUCP
2105 Arpdale		{allegra,ctvax,im4u}!ut-sally!ut-emx!juniper!gbh
Austin, TX 78704	(512) 445-4786  (sometimes voice, sometimes data)

darren@bacchus.UUCP (Darren Friedlein) (10/22/88)

In article <5748@juniper.uucp> gbh@juniper.UUCP (Geoffrey B Hoese) writes:
>In article <281@bagend.UUCP> jan@bagend.UUCP (Jan Isley) writes:
>>[ discussion of substituting 3.5 inch drive for 5.25 ,
>>and how to format for 800 sectors ]
>
>	I've tried this, thinking it would work, but
>no luck. iv reports an i/o error, and a message stating
>that "...Drive door open or no disk in drive..." is sent
>to /dev/error. The drive select light does come on, though,
>and the motor spins, also the head retracts to trk. 0 when
>iv starts. This doesn't work when the drive select jumper
>is set to 1, so I assume the machine is looking for d0.
...
>-- 
>
>Geoffrey Hoese		gbh@juniper.UUCP
>2105 Arpdale		{allegra,ctvax,im4u}!ut-sally!ut-emx!juniper!gbh
>Austin, TX 78704	(512) 445-4786  (sometimes voice, sometimes data)

It sounds like pin 34 on that drive has been disconnected.  There's a
jumper on some drives (I think TEAC labels it XT) that must be connected
for the drives to work on the UNIXpc (or a PC/XT).  If you can't find the
appropriate jumper and you have a multimeter, set it for resistance,
place one lead on pin 34 (this is on the card-edge connector - back of
the drive), and test the jumper pins until you find one with no resistance.
Jumper this one.  If there are three pins, move the jumper to connect
the middle pin to the one connected to pin 34.

If you're still having problems after this, let me know.

-darren
         ____
        /    \
       |                                 Rt 4, Box 416, Durham, NC 27703
  _____|_____     Darren G. Friedlein      data (bacchus) : 919/596-7746
 /     |     \                                      voice : 919/596-9492
(      |      )
 \____/    __/   {mcnc|icus|ditka|ethos|gladys|bakerst}!bacchus!darren