Floppy emulator?

86 views
Skip to first unread message

California Electric

unread,
Feb 21, 2020, 2:10:07 AM2/21/20
to Canon Cat
Hi,

Was wondering if anyone has had success using one of the commercially available floppy emulator?

I’ve had great success with them on several unusual systems, most notably Xerox 6085.

I know about pin 34/Drive Ready on the cat drive - The flash floppy firmware lets you set that. Is there anything else - aside from creating the correct cable - that is atypical about the canon floppy?

Jonathan Gevaryahu

unread,
Feb 21, 2020, 7:15:36 AM2/21/20
to cano...@googlegroups.com
The actual disk format is very weird.
Track 0 has the same sector repeating 10 times (this is the disk 'id', I
believe, used to tell apart different disks), and every copy has the
same sector ID.
I think most floppy emulators would throw a fit at this.
Also, 99% of MFM floppy formats use the 'sector' field 'base-1', so
sector 0x01 is sector 0, 0x02, is 1, 0x03 is 2, etc.
The canon cat uses the sector field base-0 instead, so sector 0 has a
field of 0x00, sector 1 has a field of 0x01, etc.
--
Jonathan Gevaryahu
jgeva...@gmail.com
jgeva...@hotmail.com

California Electric

unread,
Feb 21, 2020, 11:35:38 AM2/21/20
to Canon Cat
The good emulator firmwares handle all sorts of weirdness. a lot of sewing machines, musical instruments, industrial equipment, etc used floppies in very odd ways.

Is there a document where I can find the numbers of tracks, sector size, sectors per track, etc?

When I have the cat open for floppy surgery I might as well try this while the epoxy is setting...

Jonathan Gevaryahu

unread,
Feb 21, 2020, 12:26:30 PM2/21/20
to cano...@googlegroups.com
Well, one big issue with the cat is it doesn't use a standard 34 pin
cable, it uses a flex flat cable instead, so it requires an adapter
contraption to use a standard 34 pin floppy drive (and IIRC it needs
TRUE_READY on pin 34 instead of DISK_CHANGE, much like amiga floppy
drives and certain synthesizers do)

Charles Springer

unread,
Feb 21, 2020, 12:50:50 PM2/21/20
to cano...@googlegroups.com
Let me sink into yesteryear. There are two people who very likely remember all the details. But from what I recall, the prototypes and Swift used "bit-banged" floppy format similar to Apple II. A run length limited encoding used to make the disks recognizable as Swift disks and to handle differences in drive speeds and all that. It was all tested on Apple IIe Disk II controllers (really just bridges the digital to the drive electronics) and various drive hardware. With Forth and machine code many ideas about encoding were tested pretty easily.

I don't think the disk in the Cat was used in any normal way, like sending the drive controller a block of data (honestly I can't remember when it comes to the Cat). On the earlier ones the data was encoded as a series of bytes whose binary produced the transitions needed to write a reliably readable bit stream. So, not only was it unreadable on standard drives, the format could be changed from track to track if desired.

Who has some details?

-- Charlie

--
You received this message because you are subscribed to the Google Groups "Canon Cat" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canon-cat+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/canon-cat/4c6e3c84-0a4a-175d-b571-0a3ccc576cc0%40gmail.com.

dwight

unread,
Feb 21, 2020, 1:11:08 PM2/21/20
to cano...@googlegroups.com
I've not fully dug into it. I do know that the format used by the editor was different than the block I/O method used by the Forth code. The data was still run-length encoded, similar to the apple II but the sectoring and such was special. I was interested in looking at it once but never got back to it. I believe the controller ASIC reads the data and does the serial to parallel but the sectoring format is different.
I believe the reason for the first track to use the same sector ID was to reduce the latency of determining which disk was in the drive, to avoid overwriting the wrong disk ( a common problem with HeathKit disk systems ).
I know I've tried to look at the data with the block I/O at the Forth level without doing much good.
The ribbon connector is also the power cable. There is not a separate power lead. I have the pinout someplace, I'll need to dig it out.
I made an adapter to take a typical PC drive ( DiskChange ) and make it work like a DiskReady drive. My intent was to be able to have 2 disk drives, DR0 and DR1. I never got it to work right. It would be easier to do with something like a BluePill now days. It did work well with a single drive.
The original DiskReady was used to determine if the disk was changed, similar to the PC DiskChange but the way they work is completely different.
Dwight


From: cano...@googlegroups.com <cano...@googlegroups.com> on behalf of Charles Springer <charles....@gmail.com>
Sent: Friday, February 21, 2020 9:50 AM
To: cano...@googlegroups.com <cano...@googlegroups.com>
Subject: Re: [Canon Cat] Floppy emulator?
 

Jonathan Gevaryahu

unread,
Feb 21, 2020, 1:13:24 PM2/21/20
to cano...@googlegroups.com
The Swyft may have worked the way that you described, but if you put a cat disk through a floppy analyzer device, you can see that (other than the sector thing) it seems to be using standard MFM format for each sector. The Cat is almost certainly capable of reading and writing arbitrary formats as described though, but the stock forth firmware reads and writes MFM, as far as I know.

Jonathan Gevaryahu

unread,
Feb 21, 2020, 1:15:12 PM2/21/20
to cano...@googlegroups.com
Building on what Dwight mentioned, the MFM format might only be used by the EDDE editor itself, I've never tried manually saving/loading from within forth itself.

California Electric

unread,
Feb 21, 2020, 1:20:35 PM2/21/20
to Canon Cat
I understand the cabling issue - I grabbed the J1 pinout from the posted schematics. Looks completely doable.

The Apple ][ similarity is interesting to note. If the HxC derived emus don’t pan out, the BMOW one has also worked well for me.

Changing formats on a per track basis is ok - that’s exactly what the Xerox floppies do.

Looking backwards at this, has anyone successfully imaged cat floppies on a another system?

dwight

unread,
Feb 21, 2020, 1:52:10 PM2/21/20
to California Electric, Canon Cat
A PC controller will not be able to do it. One of the floppy tools like the CatWeasel should be able to do it as it is still just transition timing.
Dwight


From: cano...@googlegroups.com <cano...@googlegroups.com> on behalf of California Electric <californi...@gmail.com>
Sent: Friday, February 21, 2020 10:20 AM
To: Canon Cat <cano...@googlegroups.com>

Subject: Re: [Canon Cat] Floppy emulator?
--
You received this message because you are subscribed to the Google Groups "Canon Cat" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canon-cat+...@googlegroups.com.

dwight

unread,
Feb 21, 2020, 2:03:01 PM2/21/20
to California Electric, Canon Cat
I should mention that I've never looked at the disk data enough to say it is normal MFM or some variant. MFM is a combination of mixing clock and data at the dame band width as FM is. FM uses a separate clock signal and a separate data signal. Every data bit has a clock pulse first. In MFM, There are rules about how many missing data pulses on can have that are zero in a row. There are pe-emphasis tricks used to compensate for the fact the the head only reads transition and not levels, in MFM, and magnetic adjacent magnetic filed change where the 0 cross is seen by the read head.

From: cano...@googlegroups.com <cano...@googlegroups.com> on behalf of dwight <dke...@hotmail.com>
Sent: Friday, February 21, 2020 10:52 AM
To: California Electric <californi...@gmail.com>; Canon Cat <cano...@googlegroups.com>

Subject: Re: [Canon Cat] Floppy emulator?
A PC controller will not be able to do it. One of the floppy tools like the CatWeasel should be able to do it as it is still just transition timing.
Dwight


From: cano...@googlegroups.com <cano...@googlegroups.com> on behalf of California Electric <californi...@gmail.com>
Sent: Friday, February 21, 2020 10:20 AM
To: Canon Cat <cano...@googlegroups.com>
Subject: Re: [Canon Cat] Floppy emulator?
 
I understand the cabling issue - I grabbed the J1 pinout from the posted schematics. Looks completely doable.

The Apple ][ similarity is interesting to note. If the HxC derived emus don’t pan out, the BMOW one has also worked well for me.

Changing formats on a per track basis is ok - that’s exactly what the Xerox floppies do.

Looking backwards at this, has anyone successfully imaged cat floppies on a another system?

--
You received this message because you are subscribed to the Google Groups "Canon Cat" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canon-cat+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/canon-cat/b1e8b993-f2e3-4fa5-9788-88f7ad615457%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Canon Cat" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canon-cat+...@googlegroups.com.

California Electric

unread,
Feb 21, 2020, 2:49:58 PM2/21/20
to Canon Cat
So you’ve imaged a disk on a catweasel? Do you have format details - bytes/sector, sectors/track, number of tracks.

Jonathan Gevaryahu

unread,
Feb 21, 2020, 2:50:45 PM2/21/20
to cano...@googlegroups.com
I did, this was a while ago. I think its in cwtool format, which is a
bit obscure.

On 2/21/2020 2:49 PM, California Electric wrote:
> So you’ve imaged a disk on a catweasel? Do you have format details - bytes/sector, sectors/track, number of tracks.
>

dwight

unread,
Feb 21, 2020, 5:58:03 PM2/21/20
to cano...@googlegroups.com
I didn't say I'd done it in CW, only that it should be able to do it.
CW just records transistion timing and doesn't care about format.
Jonathan looks to have done it though.
There are other formats that may at first glance look like MFM but be something else entirely.
If it were MFM, one could just copy a hole track with a PC. I recall asking Sandy about the format and he'd told me it was some type of GCR, similar to Apple's. If that is true, you won't be able to write it without something like the CW or a Cat. ( I don't think HXC's code would work, for the GOTEK. )
I can look at the software source, for the Cat, some time this weekend to see how the Cat deals with it but my Cat is inoperative right now and I need to debug it. My guess is that from the Cat's software side, it is just a normal floppy controller. You ask for XX track and XX sector and it sends that to you.
Dwight


From: cano...@googlegroups.com <cano...@googlegroups.com> on behalf of Jonathan Gevaryahu <jgeva...@gmail.com>
Sent: Friday, February 21, 2020 11:50 AM
To: cano...@googlegroups.com <cano...@googlegroups.com>

Subject: Re: [Canon Cat] Floppy emulator?
--
You received this message because you are subscribed to the Google Groups "Canon Cat" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canon-cat+...@googlegroups.com.

California Electric

unread,
Feb 21, 2020, 10:54:18 PM2/21/20
to Canon Cat
On my cat the floppy cable is not a flat flex - it's a ribbon cable. While it's captive on the floppy side, on the logic board side it terminates in a standard 20-pin IDC connector which mates to a shrouded header on the logic board itself. Making an cable only adapter should be straightforward. Now to get the emu to work! 

dwight

unread,
Feb 22, 2020, 2:13:43 AM2/22/20
to California Electric, Canon Cat
Only the keyboard cable is a flat flex. The floppy is a normal ribbon. I believe that is what I said.
While you have the board off, I recommend replacing the battery.
Dwight


From: cano...@googlegroups.com <cano...@googlegroups.com> on behalf of California Electric <californi...@gmail.com>
Sent: Friday, February 21, 2020 7:54 PM
To: Canon Cat <cano...@googlegroups.com>

Subject: Re: [Canon Cat] Floppy emulator?
--
You received this message because you are subscribed to the Google Groups "Canon Cat" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canon-cat+...@googlegroups.com.

California Electric

unread,
Feb 22, 2020, 3:34:29 AM2/22/20
to Canon Cat
Yes. I was replying to another message that suggested it was a flat flex.

I'm documenting the take-apart and treatment in the other thread.

Thanks!
To unsubscribe from this group and stop receiving emails from it, send an email to cano...@googlegroups.com.

California Electric

unread,
Feb 23, 2020, 2:39:54 AM2/23/20
to Canon Cat
All,

I just successfully duplicated a cat floppy using IMD on A 486 PC that I maintain for floppy imaging and recovery.

IMD was able to successfully read the cat floppy and write an IMD file that I then used to write to a different floppy, which the cat read and wrote to perfectly.

Since the HxC floppy emulator can convert IMD files to it’s own HxC image format it’s looking very likely that with the correct pin to pin cable, the emulator will work fine with the cat. All of mine are currently in use - I will be getting another soon and will post results and recipes.

California Electric

unread,
Mar 23, 2020, 8:06:36 PM3/23/20
to Canon Cat
Quick update - able to read okay from the HxC based floppy emus. Writing is not happening yet. I need to try various permutations of jumpers and settings.

I picked up a couple of older floppy drives that support ready on pin 34 and will experiment getting a cable working with those before moving to the emu.

Reply all
Reply to author
Forward
0 new messages