X68KFDUINO - new adapter for external Floppy Drive for HxC & Gotek

Started by aotta, June 03, 2023, 04:43:21 AM

Previous topic - Next topic

BlackVega

I guess the board is supposed to be powered from the 4 pin header on the right side and gotek/hxc is also supposed to be powered from another 4 pin pass through header, although it wasn't completely specified.

Hey, please tell me how I'm supposed to configure software. I flashed the Raspberry Pico using Arduino IDE and I think it was successful but I still need to test it. However I'm completely confused on what I'm supposed to do to configure HXC itself. I don't have a Gotek but what I have is exactly the thing on the right:


What am I supposed to do? Am I supposed to flash it with Flashfloppy, proprietary software, configure it or use it as is??? I'm totally new to this idea and all of these websites are so confusing and I have absolutely no idea what to do here. Please help

aotta

In few words, the x68fduino goes between x68k via a 34 idc floppy cable (esternal with adapter or internal with modded cable), powered by a standard atx 4 pin floppy connector (even if 12v is not used/connected). On the other side of the x68kfduino, another cable idc 34 pin is connected to your hxc, and another idc 4pin f/f cable powers the HXC from the x68kfduino (that's why it has 2 power connectors and they're linked togheter). I usually disconnect or select as 2/3 the internal drive, because most of disks boot only from drive 0 or 1.
Then use HXC as usual configuring it for both drives, but use  buttons on x68kfduino to turn led on green if they're off or blinking.
That's all.

BlackVega

I tested my HXC hardware and thankfully it works on a real X68000. However how in the world do you emulate both floppy drives using HXC?? I figured out how to load an image into a single drive 0 but I can't figure out for the life of me how to load another disk into drive 1 so both images can be accessed by X68000 and that was pretty much my entire purpose for using this device (albeit an SSD solution even for 1 drive is still excellent). You know, you insert both disks into drive 0 and drive 1 at the same time to load games on X68000. How do you do that?

aotta

Quote from: BlackVega on September 20, 2024, 02:19:25 AMI tested my HXC hardware and thankfully it works on a real X68000. However how in the world do you emulate both floppy drives using HXC?? I figured out how to load an image into a single drive 0 but I can't figure out for the life of me how to load another disk into drive 1 so both images can be accessed by X68000 and that was pretty much my entire purpose for using this device (albeit an SSD solution even for 1 drive is still excellent). You know, you insert both disks into drive 0 and drive 1 at the same time to load games on X68000. How do you do that?
Pressing the middle button for 2 seconds you got a menu with the option "select drive a/b".. just select the other and assign it the second floppy's image.
It's all on HXC manual, of course... ;)

BlackVega

Ah right, forgive me this is my 1st time using anything like this and I just didn't have energy to read tons of pages of that manual and I thought maybe that board was not functioning properly. Also that HXC website is no offense very confusing and so awful looking and super disorienting and it is very hard to read anything useful. Well, after all of that it looks like this board is working fine or at least I think it is. Both drives load fine but these buttons and flashes on the board are inconsistent. Many times both of them blink (even though only drive 0 should blink on the start) and many times I need to press both buttons to load single disk games for some reason and soft eject doesn't work, it should "eject the virtual disk automatically" but it just waits with black screen until I press on board buttons again and then it continues. What is up with all of that? Is this intentional? I still haven't figured out how to use it properly but even at this time it loads stuff successfully which is awesome. Hoping it will be improved later with perfect functionality. Great device for users with broken floppy drives!

I still have some more questions however- red LEDs never work for me and they only light up when X68000 is powered off. Also is LED_blink pin (internal pin 13-external pin 26) supposed to be connected or not? Because I can see a trace on the board but it's not there on the FDD adapter. Is this intentional or is it a mistake? And, after everything I've described, is my FDD board working correctly or it is pretty wonky sometimes at this stage? Aha and also if anyone wants I still have some extra boards so I can sell some boards and test them on real hardware if anyone is in the need

aotta

Yes sometimes leds seems crazy.. but it's becouse X68k sends ejects commands in strange ways, and i can't simply ignore them or games with more than 2 disks won't work. So, the game is to keep the green led on pushing button when the PC eject the disk when not needed!

Anyway, i did some minor changes and uploaded a version 1.0a on the repo, it seems a little more stable especially in my X68K with no floppies, that is the one in which X68KFDPico works worst.

BlackVega

I checked the new version and wow it definitely works better. Soft eject finally works and it's automatic! My X68000 no longer starts up with black screen and now it displays "please insert floppy" screen as it was before. However I'm still not sure why you almost always need to press "HD1" button whenever you load anything from drive 0. Is this a bug? Oh well, it still definitely works way better compared to before as it used to be glitchy as hell sometimes. I think it's almost perfect now. However I have a question- is 2x Gotek or 2x HXC more recommended than 1x HXC? Is this going to help or potentially bring it to 100% perfect functionality 1 day? I think this setup is good enough for me but I wonder whether I can benefit from using 2x Gotek devices. Thanks for creating this device, definitely unlocked full potential of my machine

aotta

My gadget handles X68k signals but sincerly i don't know their logic.. and i can't predict if you're using a single floppy or some sw that needs two, that's why i have to suppose that both floppy are ready at startup.
And, probably 2x gotek it's different from HxC solution, so it's not easy to improve further the SW.
I don't understand what you mean with 2x HxC, but i suppose you mean one HxC used for both floppies. That's with no doubt the better (even if not the cheapest) solution compared to two goteks, with less cables, a single psu connection and a single display to look into.
Yes, it's a pity that the switching from floppy A to B is not so smart in HxC, but it remains a great solution IMHO.

One last thing... since i use the great HDD image v.2.2 from @incrediblehark, I use floppy only to launch bootsec.x once on my X68Ks!   

BlackVega

Some games can only be run from floppies tho. Or is there a way to get around that?

aotta

I'm working to a new project for emulating X68K floppys based on my previous X68KFDPi and a further PicoW for the floppy emulator part.
X68KFDPico2.jpg

I just start it, but since i've not yet connected the floppies buttons nor the floppies leds, i had to change a little the X68KFDPi code to improve the signals detections.
So i updated the code to v.1.1, it works better for me but it's not yet fully tested, if anyone that built a X68KFDPi want to play with it, it's on my Github repo:
https://github.com/aotta/X68KFDPi

leonk

Has anyone had a chance to read through Leo Oliveira's recent work around trying to get standard SHUGART floppy drives to work on the X68000? He discovered that they can work and X68K has support for them, you just have to modify the signals going to the computer.  The technical details were lost on me but maybe @aotta you can understand what this means.

The thread with the details starts here: https://x.com/leo__oliveira/status/1871178650738925657


aotta

Quote from: leonk on January 13, 2025, 02:15:26 AMHas anyone had a chance to read through Leo Oliveira's recent work around trying to get standard SHUGART floppy drives to work on the X68000? He discovered that they can work and X68K has support for them, you just have to modify the signals going to the computer.  The technical details were lost on me but maybe @aotta you can understand what this means.

The thread with the details starts here: https://x.com/leo__oliveira/status/1871178650738925657


I think that Leo Oliverira should read this thread, we already use gotek and HXC in Shugart mode since years with X68K!

leonk

Quote from: aotta on January 13, 2025, 07:47:19 AMI think that Leo Oliverira should read this thread, we already use gotek and HXC in Shugart mode since years with X68K!

If I understand correctly what he did, he replaced the 2 internal 5.25" FDDs with 2 external 3.5" FDDs. He's not using any logic (no Pi, CPLD, or FPGA) he just figured out how to modify the floppy cable so the X68000 BIOS switches to SHUGART mode and works with regular PC floppy drives (Code has always been there, but not used by default) He can boot and even play 2 disk games perfectly fine and the X68000 has no issues with that.

He will publish his findings shortly according to his posts.

This means instead of using Pi to make Gotek and HXC pretend to be regular X68000 floppy drives; you can force the computer to support regular floppy drives with a simple wire cable modification.

I hope I understand his findings correctly and wanted to see if you might know more to validate this.

leonk

I quote:

Tie the pin "DISK_IN" (15 on internal flat cable, 27 on external connector) to ground prevents the computer from detecting it's proprietary drives, this forces the IPL and Human68K to fall back to a standard SHUGART protocol where RDY is used to sense disk presence and caching of FAT/Directory is disabled.

This means any 5.1/4 HD PC drive and 3.1/2 HD PC with 3 mode (RDY required) can be used on the X68000 as a boot drive.

Drive MUST have RDY on pin 34, not DC and need to be capable of mode 3 (360RPM on HD mode)

Human68K requires at least TWO DRIVES to boot, by the way.


That's it.

Here's a picture of the cable mod: https://x.com/leo__oliveira/status/1871220026893631913

aotta

Simply grounding "Disk Insert" doesn't work from my test. X68K needs more complex logic that is handled by my X68KFDUINO, FDX68 and other adapters. And not only for booting (that's the easies part) but in particolar for ejecting and change floppies.

But I'll wait until someone could confirm that Leo's trick works.
 

caius

"FLIP-FLOP" rules them all!Launch date set tomorrow, stay tuned! ;)