floppy controller works and drive 3,5" nothing happen

405 views
Skip to first unread message

Mike Tailor

unread,
Nov 26, 2023, 2:57:03 PM11/26/23
to Altair-Duino
the ALTAI 8800 works finde..
but..

I'm a bit unsure at the moment and don't want to damage anything.

The floppy controller also reports via USB and I can see "h=help" in the menu.
I currently have a 3.5" floppy connected. Does it really have to be a TEAC FD-235HG or would another floppy work?

But then nothing happens? what do i have to do?
I entered m0 and m1 for the test
Do the jumpers at the top have to be at 0000 or 0011?
Thank you
DSCN9999.JPG

da...@hansels.net

unread,
Nov 26, 2023, 6:36:46 PM11/26/23
to Altair-Duino
The card should also work with other 3.5" disk drives but I have only tested it with the TEAC drive.
If even "m 1" (motor on) doesn't work then most likely something is wrong with the either the soldering
of the card, the wiring between card and disk drive or the drive itself.
Try entering "d 1" on the monitor to select drive "B" and see if your drive now responds to "m 1".
Do you know whether the drive itself works?

Mike Tailor

unread,
Nov 27, 2023, 4:04:05 PM11/27/23
to Altair-Duino
I will try it. I bought the card as a Adwater kit and so far I've never had any errors when soldering anything before. but every time, is first time ;) 
The voltage comes from a Meanwell power supply (but only the 5V), because the 3,5" shouldn´t  need the 12V
But, Do I perhaps have to connect the ground from the extra power supply to the ALTAIR DUINO again? 
Or does the floppy do this automatically via the 34pin connector.
Thank you Mikel..
DSCN9997-4.jpg

Mike Tailor

unread,
Dec 3, 2023, 3:42:28 PM12/3/23
to Altair-Duino
hurrah, I have my first success.
I used another floppy. This time also a TEAC 235HG.
When I enter d1 the LED turns on. (without engine running)
and then when I enter m1, the motor also starts running.
I am happy :)
I can now also display an “I” information, see picture.
I have to admit that I hadn't made any distinction between uppercase and lowercase letters until just now, oh sorry.
Question: Do I always have to use HD floppy disks with the HD drive, or is it better to use DD?
Are there any further instructions for testing and formatting, for example, or should I write programs to the diskette using an old DOS PC?
Thank you
Mikel
DSCN9974.JPG

Mike Tailor

unread,
Dec 4, 2023, 11:12:32 AM12/4/23
to Altair-Duino
so,.. and again one step further.
I was able to transfer two floppy disks via XMODEM.
But the drive only understands DD disks, I don't know why, but that's how it is.
The 3.5" drive is always D1,... I actually thought I could turn it around using DIP2 switch  (D0<->D1, A-B ?), but this doesn't seem to be the case to go.
When I boot with 00001000 AUX1 "DISK Boot ROM" it just shows up as text but unfortunately nothing happens.
Is this all because I have to have a twisted connection cable?
or should I resolder the floppy itself to DF0:?
DSCN0005.JPG
DSCN0006.JPG
Bildschirmfoto 2023-12-04 um 16.07.11.png

da...@hansels.net

unread,
Dec 4, 2023, 12:12:07 PM12/4/23
to Altair-Duino
What exactly do you mean by " the drive only understands DD disks"? What happens if you use HD disks?

In the disk monitor, the DIP2 drive swapping does not take effect. It should say so in the disk monitor's startup message.
The swapping only takes effect when using the drive with the AltairDuino.
Most drives are configured as drive B by default and the twisted cable makes them show up as drive A. See here:

What do you mean by "When I boot with 00001000 AUX1 "DISK Boot ROM" it just shows up as text"?
What shows up as text? What kind of text?

David

Mike Tailor

unread,
Dec 20, 2023, 5:07:32 PM12/20/23
to Altair-Duino
Hello colleagues and friends.
I've come a little further now.
I can write to a 3.5" floppy via the controller menu and X-Modem and also with a 5.25" but only in DD mode.
So with the switch position 1-0-0-0 on the controller.
I also have to use the right diskette, i.e. 3.5" with DD (only one hole) or a DD diskette. HD diskettes always fail in DD mode with an error.
I was able to start a CPM2.2 floppy disk and even had Drive-0 = 5.25" floppy and Drive-1 a 3.5" floppy. (A and B also)
I was then even able to format the Drive-B disk with AFORMAT, and also copy files onto it with ACOPY.
This diskette was then “bootable” again.
This can be done with HD but it only brings errors... I have the feeling I might need a different .DSK for an HD disk?
You can see my mistake here (please use translate and subtitles on YT). Thank you very much.
https://youtu.be/7n3k0g9BAp8?si=9wuj2VXdHZJVU8Ih&t=65

da...@hansels.net

unread,
Dec 20, 2023, 10:49:20 PM12/20/23
to Altair-Duino
> I also have to use the right diskette, i.e. 3.5" with DD (only one hole) or a DD diskette. HD diskettes always fail in DD mode with an error.

That's correct, when you insert an HD disk into a 3.5" drive, the drive switches itself to "HD" mode.
Unfortunately there is no way for the controller to know which mode the drive is in.
So if the controller is still in DD mode and the drive is in HD mode then the timing mismatch
between the two causes errors (this is somewhat simplified but it's the gist of the problem).

Note that that's different for 5.25" drives - those read a signal line from the controller to determine
whether to use DD or HD timing (the 5.25" disks don't have any markings that the drive can read
to determine whether they are DD or HD). That means that for a 5.25" drive some HD disks
can actually be written with DD data, although I have seen read errors afterwards in some cases.

> I have the feeling I might need a different .DSK for an HD disk?

Yes, when writing an image to the disk you need to use a HD image for a HD disk, otherwise
the data doesn't match what the bootloader expects it. Images of HD disks carry more data
and have a different layout than DD disks.

Disk images (.DSK) for Altair DD disks are 76800 bytes, Altair HD disks have 337568 bytes (there are some
337664 byte images out there, those will work fine too, they just have some extra padding at the end)

> You can see my mistake here

The "CCCCC..." output is not any kind of misdirected data or crash. It's the bootloader
reporting a checksum error. That would be expected if the bootloader sees the data
of a DD disk coming in when expecting to read a HD disk.

Try uploading one of the HD images, those should boot fine.

David

Mike Tailor

unread,
Dec 23, 2023, 12:44:08 PM12/23/23
to Altair-Duino
Unfortunately it does not work.
I was able to write a 337.664Byte Disk in the controller menu (command W1) and also controlled it with V. 100% is shown as error-free.
But if I start it in the ALTAIR with (Running Disk Boot ROM) switch 4 (from the right)...
Start the floppy and A12+A13 flash (almost alternately).. and a few data LEDs. But then nothing happens anymore.
I just can't start an HD disk (switches on the controller are 0-0-0-0).
Dave, do you please have a LINK or a file that .dsk must work 100%.
Thank you.

da...@hansels.net

unread,
Dec 23, 2023, 1:03:04 PM12/23/23
to Altair-Duino
The DISK01.DSK (CP/M) and DISK02.DSK (Altair Disk BASIC) images here should defiinitely work:

Other diagnostic options:
- double-check that no emulated disk is mounted ("D" in the configuration menu)
- When you uploaded the AD firmware, did you use Chris' prepared image or did compile from source?
  If you compiled from source you must make sure to turn on performance optimization in the compiler
  (search for "optimization" here: https://adwaterandstir.com/install/). The timing between AD and disk
  controller is tight and in some cases can fail if the firmware was compiled without performance optimization.
- boot CP/M on the AD from the emulated hard disk (not floppy disk) and then type "C:" to switch to the floppy drive
  That should let you do a "DIR" or other CP/M commands.
- try Mike Douglas' AFEXER:

David

Mike Tailor

unread,
Dec 23, 2023, 1:09:33 PM12/23/23
to Altair-Duino
I made also an Video...   https://youtu.be/K0fiMZ5DP5o

an here the picture from the Controller-Process, and Information from my drive (do you the a mistake ??)
DSCN9979.JPG
DSCN9980.JPG

Mike Tailor

unread,
Dec 23, 2023, 1:28:09 PM12/23/23
to Altair-Duino
I bought this second ARDUINO 8800 "Experimantal" with an extra port from Chris especially for the floppy.
Just like the entire floppy...
...
HURRAY it just worked in HD mode for the first time..

I used  YOUR DISK1. (this one is also a bit shorter)  I'll continue testing and reporting :)
DSCN9990.JPG

Mike Tailor

unread,
Dec 23, 2023, 6:35:37 PM12/23/23
to Altair-Duino
I downloaded the first 11 floppy disks from the 16 .dsk disks and copied them to a real HD 5.25" (with X-Modem)..
There only seems to be a general problem with DISK09.dsk? (I chose three floppy disks and the copying process always stopped at around 10-12%)... but that's just a reference.
BUT: that seems to be the finding, I can load wonderfully from floppy disks with a file size of 337,568, but not from 337,664.
but, Writing via the disk controller and also “V” works without any problems. (both)
What could that be ? 
And thank you for your patience... It's such nice hardware and software... and great additional cards
Many greetings Mikel

Bildschirmfoto 2023-12-23 um 23.57.14.png

da...@hansels.net

unread,
Dec 24, 2023, 10:17:35 AM12/24/23
to Altair-Duino
On Saturday, December 23, 2023 at 6:35:37 PM UTC-5 geo.pic...@googlemail.com wrote:
I downloaded the first 11 floppy disks from the 16 .dsk disks and copied them to a real HD 5.25" (with X-Modem)..
There only seems to be a general problem with DISK09.dsk? (I chose three floppy disks and the copying process always stopped at around 10-12%)... but that's just a reference.

Interesting - I was able to reproduce that issue. The problem is that there is an error in the DISK09.DSK image.
Bit 7 of the first byte in every sector's data in the MITS disk format must be 1 (it's called the SYNC bit), otherwise
the drive won't be able to find the sector when reading. In the DISK09.DSK image, the SYNC bit for sector 25 on track 7
is 0. Therefore the drive can write the sector but not read it anymore, so the verify fails.

It's not of great consequence because DISK09 is Altair Time Sharing Basic which won't work with my
disk controller anyways because it requires interrupt support which the controller doesn't do.
That's why I never tested it.

If you still want to try it out anyways you have two options:
1) use "W 0" (write without verify) to upload the image. That will go through. The broken sector is empty anyways.
2) Load DISK09.DSK in a hex editor and change the byte at address 8541 (hex) from 00 to 80 (hex). After that
the upload with verify should work.

I may update the firmware in the future to automatically set bit 7 of the first byte of every sector
written by the "W" command.
 
BUT: that seems to be the finding, I can load wonderfully from floppy disks with a file size of 337,568, but not from 337,664.
but, Writing via the disk controller and also “V” works without any problems. (both)
What could that be ? 

I can't reproduce this. I can upload DISK13.DSK from the monitor (via 'W 1') and then boot it just fine on the AD.
It should boot into CP/M 3.0.

David

Mike Tailor

unread,
Jan 2, 2024, 4:24:13 PM1/2/24
to Altair-Duino
Hello guys... "new year" new luck :) ... and I wish everyone a good start in 2024.

I rebuilt my ALTAIR floppy... and connected 5.25" as D0 and 3.5" as D1...
The nice thing is in Floppy-controller mode... that the currently active floppy responds with a "lighting LED".
I then took disk number 13, which was suggested to me here.
I was able to copy these to both drives with W1 without any problems and both reported "everything successful" again with V.

After that I was able to “easily” boot from the 3.5” (simply “swapped” D1... jumper 2)
But the 5.25" gets "stuck" as always... (when booting)... 2 LEDs on the ALTAIR flash more strongly alternately (and other LEDs) and the drive runs continuously.
=> for me now the only reason (??) can maybe a JUMPER on the 5.25" floppy itself..
=> also interesting: if I boot from 3.5" (which works as HD) I can't take a look  to 5.25" with you DIR B:..
Question about the speed, the 3.5" has 300rpm, the 5.25" has 360rpm in HD mode. Is that OK.?

I looked also at the ALTAIR settings with "Stop and Aux1 pressed up". 
the value 'Set Throttle delay' is set to 'auto adjust'. In general, the ALATRI runs as an INTEL 8800 machine.

Does somebody still have an idea
Thank you
DSCN9995.JPG
DSCN0015.JPG

Terra Hickman

unread,
Jan 4, 2024, 4:19:00 PM1/4/24
to Altair-Duino
I know nothing about anything so take my advice with a grain of salt lol.

I don't know if the speed mismatch matters for sure, but in my own testing I found that the 330kb disk images had to be written at 360RPM for me to get them to work, and the minidisk images (75kb0 had to be written at 300RPM, even if the monitor reported that they wrote okay. Otherwise they just wouldn't boot at all, and I would wind up with the same issue where the light would come on, the motor would spin, but that was it. 

That could be the media I was using but I would imagine based off of my limited experience that with the image you are working with, you would want 360RPM for both disks. I don't know if the disk controller itself cares about the speeds of both drives matching, but I could see it since at least in the monitor, it does keep track of the timing. Some drives let you change the RPMs, so if you could set your 3.5 to 360 and rewrite, it may help.

Or setting your 5.25 at 300, though I had no success with that unless it was a minidisk image like I said. 
Reply all
Reply to author
Forward
0 new messages