Most recent revision dated June 04 2009. Corrections appreciated, more S-100 owners requested.
John Monahan contacted me in March 2009, to work on his S-100 system with Versafloppy II floppy disk controller from SD Systems. Turns out, he worked for them many years ago. The following text is from our email exchanges, documents and results of another VF II board I provided. John describes differences between versions of the VF II cards, and describes his S-100 system.
This discussion supports my S-100 Web page in general, another page on SD Systems, and another page on S-100 owners.
- Herb Johnson
On the "SDOS" BIOS, I am very familiar with the differences between it and CP/M. I got one of the original SD Systems Versafloppy I boards at that time and had to go and patch in my consol ports etc to their disk image by hand (i.e. no running disk system) -- all through a Tarbell loaded system searching and changing DB's and D3's.
The reason I was interested in your [SD Systems] software is the newer [Versafloppy II] boards use 1795 chips. I was using a 1791. Also apparently there are B01 & B02 versions of the 95's that are slightly different. I seem to remember some of the commands for the 95 & 91's are different, but I may be wrong. SD put out a notice at the time that their 1795 chip boards would not work with pre V3.0 BIOS's. I'm not sure what chips you have on your board. So I thought I would play safe. All I need is a listing of their DDBIOS (V3.0+) that they have for their SBC board that the VII talks to. I was going to compare it with my 2.3 DDBIOS (1/26/1980).
FYI, I am including a few pictures of my growing system. It's about half full right now with a just a Z80. I have my own homebrew 8086 and 80286 slave boards, CPM/86 and DOS etc to add later.
Anyway Herb really appreciate the help. If you can put up the DDBIOS listing that would be great. Also as you might expect I am frozen until this board arrives. I am reluctant to use the ST506 Hard drive a lot until I get my 16 bit system going as there is too much on it and it's 30 years old. I have an S100 IDE drive board to later attach but needs much software development. Then I can relax.
John Monahan March 2009
images: Monahan-S100-1.jpg
Monahan-S100-2.jpg
Monahan-S100-3.jpg
[From Herb: I've put some SD Systems disassembled ROM's and BIOS's on my Web site, from Raymond Gandia. At a later time I may put some SD Systems SDOS files on my site, but they must be pulled from 8-inch diskettes. I've added the WD manual to my site. I'd like to add your work and images to my site - Herb]
Hi again Herb, some feedback.
First the 1793 & 1797's are the ones with the inverted data bus. There is a great [WD 179X FDC] data sheet [I've provided you]. On page 8 are some of the software differences. The main difference between the 91 and 95 is the latter has disk side info on the chip. However there is also a sector length flag on the 95's.
On my "mods". I modified the board so the Disk READY line is tied high on the board (not needed with SD Software). I cut traces to IC pins 11 & 10 of U15. The mod I made on the Drive Ready input line was to free up a gate (U15, pin 10 & 11) to switch the S100 pin clock 1 to an inverted clock 2 (pin24) as described on your site. The card software does not really use the ready input.
[Note from Herb: To invert clock phase 1, I've added a 74LS04 chip onto the board, by soldering its pins 1 and 14 atop another 14-pin DIP chip. The other pins are NOT soldered to the chip under it. Then I can use any inverter on the 74LS04 by wiring directly to those pins and as John has noted above.]
I use HLD and different drive select outputs to each 8" drive to turn on the disk motor using an optical isolator/switch and an OR Gate. This is not for the in-experiences as you are turning on and off 120V power. But the noisy drives then only come on only when needed.
I cut the trace from pin 5 of U9 (S100 old clock1) and re-routed Clock 2 as shown in the diagram attached using the above spare inverter. This made a very reliable board for all 5" and 8" disks I used.
Also for people that may wish to run DOS/16bits with this board... I wanted to have a system as close as possible to the IBM PC -- software wise. Lomas had a great PC compatible video board and IBM keyboard. It also had a IBM compatible interrupt controller. However the port overlaps with Versafloppy II (lower 8 bits). I switched the VII ports to 50H by cutting and switching address lines A5 & A4. See diagram. This allowed me to run DOS simply on the board.
All this I will write up on a web site I am also working on, but if anybody needs help they can contact me.
No problem putting pictures of my system on your web site. I need to get some colleagues with S100 interest in the SF bay area!
images: VersaFloppy II Mods_1
VersaFloppy II Mods_2
[NOte: a Versafloppy II manual PDF with both set of schematics is at this link. - herb]
John Monahan March 2009
I am looking forward to the "new" Versafloppy Board [you are sending]. I will let you know how it goes. Raymond's stuff is very nice. Once I get back on the air I will once and for all put together a Versafloppy bios that will be the BIOS of all BIOS's. It will combine elements of Raymond's, Bruce and my own SIGM/M from way back. It should be able to cover all disk formats of all types transparently to the user.
Please see if you can get those 8"'s fired up as I really would like to work from the latest V3.0 SD-Systems ROM BIOS. They were very good in doing their software. Any changes they made was for a reason.
BTW, its great you keep these Versafloppy boards alive. I have looked at others. Jade, Godbout, Vector IMSAI etc. The Versafloppy is by far the cleanest and easiest to implement.
John Monahan March 2009
[after I added various files to my site...]
Thanks for all the effort Herb. I quickly looked through what is in the "SBC100.ZIP" folder. As to the BIOS stuff, most appears in other forms on your web site. I could see no SD V3.0 or later ROM bios. As I said I have V2.7 which they put out in 1/26/80. I have written in in pencil in my manual V3.0 3/10/80. Not sure where that came from. I am thinking I am just going to work from my SIG/M submission. It's clean simple and should be easy to update to 5" and other 8" formats with tables etc.
Now the good news, I got my Versafloppy II going again. Using an 8 port logic probe I could trace the problem down to one gate on one chip. It's not a pretty site but I got the chip out and socketed in a new one. So I will be very interested to see if the BIOS I have with your 1795/board booths exactly the same with the BIOS I have for my 1791-02B chip.
BTW the board I have is exactly the same board as the picture of the Versafloppy II in the SD-Systems .pdf manual file on your web site. That board is however different to the actual circuit diagram also in that .pdf file. The difference is the data separator circuit section. Top left hand corner. Mine uses a a NEC 564 chip. Yours uses an op-amp discrete circuit. I will send pictures of the two when yours arrives. SD had two versions of the versafloppyII. What I don't know is which type of Versafloppy II came out first and which later later.
[later John responded...]
[Regarding the ZIP files in SDSOURCE ZIP], On the BIOS V4+ [file] you are correct I think the DDBIOS42.Z80 is indeed the most up to date SD-Systems Bios. I am going to work with that. Give me a few weeks!
Finally on this board I substituted the 1791 chip for a 1795-02B. Found I could my disk based CP/M (V1.4) absolutely no problem. But when I tried to read the disk from CPM+ on my hard disk it would not read the floppy. Clearly some subtle command instruction differences in the BIOS'es.
[afer recieving the Versafloppy II from me:]
Just a note to let you know I received the Versafloppy II card. The data separator circuit as I expected is different from what I now assume is the older Versafloppy II cards. The rest of the card is identical.
Anyway it booted up fine (after taking care of the clock 2 patch) for CP/M 1.4. [The board operates from the S-100 "phase 1" clock signal. The "patch" is to invert "phase 2" using a 7404 chip's logic inverter. The chip is wired in on top of a convenient IC at pins 7 and 14 for power and ground. - Herb]
However when I tried to load CPM+ it would not read the disk -- it almost does it but fails most of the time. I then switched in an old 1791 chip and would you know it it reads everything fine. So... there is some subtle difference between the 1791 & 1795 chip. I will have to go through my BIOS software to track down where/what.
BTW, thanks so much for fixing me up so quickly. Really appreciate it.
[Later:] Me again Herb, the Versafloppy guy!
I am attaching two pictures of the two Versafloppy II boards I have. As I said the boards are absolutely identical except for the data separator circuits in the upper left hand corners of the board. At the time (late 70's) I always got early/new stuff so I suspect I got the earlier of the two boards. But I am not 100% sure.
Yes the circuit you have in the manual is exactly correct for the board you sell. Attached is a copy of my schematic. Sorry I had to do two pages as the schematic is large.
images: VersaFloppy II Mods_1
VersaFloppy II Mods_2
Versafloppy II-C.jpg
Versafloppy II-P.jpg
[NOte: a Versafloppy II manual PDF with both set of schematics is at this link. - herb]
- John
Hi Herb,
I tried taking a better picture of my old (original) Versafloppy II again today. The problem I have is I have a camera that really does not take close-ups. Closer than the picture I already sent you was out of Focus.
On the back, on left bottom, "FAB 0100152 CE S-16V". The "E" is actually a kind of symbol an E inside a C, inside a circle.
My board is:- Assy 0100150 Rev C. There is a plated through hole right in the middle of the "C" that's why it's hard to read in the photo. So if "yours" is Rev P it looks like it is the newer version of the board.
The [Rev C] circuit uses a (Signetics) NE564N Phase Lock loop chip to separate the data and clock signal instead of the discrete hardware on "your [Rev P] board". I seem to remember this as a board improvement in their sales pitch. Anyway I am pleased to say the board is working rock solid with my two eBay Tandon 8" half-heights though I am using a 1791 chip instead of the 1795. There are definitely differences between these two chips. My CPM+ driver will not work with the 1795. The driver is quite complex being setup for many disk formats and I have not yet nailed down the exact difference.
As to reliability, frankly so far I am seeing no differences. Both are rock solid. I am digging through a lot of Versafloppy software right now -- still trying to figure out differences between 1791 and 1795 chips with 5" and 8" drives. So I will hold off for a few weeks at least until I feel comfortable I understand things.
Sincerely, John
April 6 2009
System is going well these days. I made two small changes:-
First on my main Z80 card I decided to put an inverted system Clock signal on the S100 bus line 27 (reserved, but not used by anybody). Then I just re-route the trace 25 on the Versafloppy to this line. May be useful for some other pre IEEE boards as well that use clock 2. [Note by Herb: Phase 1 is an inverted phase 2, and was part of Altair/IMSAI systems but not on some other systems.]
On the Tandon half height [8"] drives I just got, they have an option to turn on and off the motor for each drive. The thing is for drive select 2, it uses line 6 on the [floppy drive 50-pin] ribbon cable. You must cut the trace from U8 pin 6. This puts out the GT43 signal for reduced write current (not used with these drives - and most other [later models of 8-inch drives]). I use a small board in the drive box looking at HLD and DRVSEL1 or DRVSEL2 to raise MOTOR ON for drives 1 & 2. Great DRIVES BTW. Real quiet.
John
April 13 2009 (comp.os.cpm post)
> > On Mon, 13 Apr 2009 13:20:11 +0200, Peter Schorn wrote:
>> > >The AltairZ80 simulator has been updated and is available for download
>> > >.at this Web link.
Just came across this software for the first time! ABSOLUTLY AMAZING. Great work. It is allowing me to write stuff for my old S100 system quickly. I am currently doing a CPM3 driver and Diagnostic for a Versafloppy board to access many 8 & 5" disk types. This thing speeds up the software writing. I then move it to the hardware and test. On behalf of many let me say THANKS - John
May 15 2009, private correspondence:
I have learned probably more than I wanted to about the Versafloppy II board hardware and the 1791-97 chip family. I am 90% done on the program which is now rock solid. As I told you I am also putting together an S100 web site specializing on S100 hardware issues/boards. It's difficult to do both together but I will write-up a very detailed discussion of any board I work on there. The first will be the Versafloppy II.
Very briefly on the software & 1797 vs 1795 issues. I now fully understand the issues. In a nut shell the software for the chips is identical for all commands except the actual sector read & write commands. There are two bit differences between the chips. They relate to the fact that the '95 has a pin (25) to select the disk side the '91 does not for sector R/W's and expects the correct bit depending on the actual hardware side being used. The 91 has a bit which when set to 1 ignores the side byte in the sector ID address BUT this same bit on the 95 when set to 1 causes the sector data length to be different. I will write it all up but you can see in the program in the core READ_SECTOR and WRITE_SECTOR how I handle it.
June 2009:
Just a note to let you know I managed to finish that Diagnostic software (VF.COM) for the Versafloppy II. I am now in the process of putting together an S100 Web site. I have started off with hardware & software discussions about the board(s). While the site is still not ready for general consumption I thought you might like an early look. Any comments/bugs etc please do not hesitate. The site is at s100computers.com.
Contact information:
Copyright © 2009 Herb Johnson