Real Floppy Drive
-
- Posts: 257
- Joined: Sun May 24, 2020 9:06 pm
- Has thanked: 64 times
- Been thanked: 13 times
Re: Real floppy drive
Awesome progress
Can't wait to try it out!
I can help add menu options to switch drives between real and virtual floppies if you like.
Can't wait to try it out!
I can help add menu options to switch drives between real and virtual floppies if you like.
Re: Real floppy drive
I was thinking GreaseWeazle (https://github.com/keirf/Greaseweazle) could come in handy here ?
USB based flux level floppy read/write access.
Timing pulses would need to converted on the ARM side to a buffer which the FPGA can stream to the Amiga.
USB based flux level floppy read/write access.
Timing pulses would need to converted on the ARM side to a buffer which the FPGA can stream to the Amiga.
Re: Real floppy drive
Mostly for testing purposes like testing a Gotek drive itself, ADFs or that USB sticks work without having to connect a real Amiga.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Real floppy drive
I don't get the obsession of proven to be non reliable way to keep the data floppies.
Today the only thing need to be done is to read the whole floppy once and save it to file. There is absolutely no reason to save it back to floppy.
Several years ago i wanted to buy a 3.5" floppy disk because i've bought Amiga 1200, but couldn't find any store selling it.
I remember the time when floppies started to disappear on PC, the quality of disks degraded drastically so it was impossible to read something even after a month.
Today the only thing need to be done is to read the whole floppy once and save it to file. There is absolutely no reason to save it back to floppy.
Several years ago i wanted to buy a 3.5" floppy disk because i've bought Amiga 1200, but couldn't find any store selling it.
I remember the time when floppies started to disappear on PC, the quality of disks degraded drastically so it was impossible to read something even after a month.
- Caldor
- Top Contributor
- Posts: 930
- Joined: Sat Jul 25, 2020 11:20 am
- Has thanked: 112 times
- Been thanked: 111 times
Re: Real floppy drive
True... HFE format, or even better, IPF or SCP format, would be more relevant than supporting floppy disks I think. But it would get around that by having a floppy connector since then Gotek could be connected which already does support HFE, but also it makes it possible to actually make backups of some of the old floppies people might have. Unless they are copy protected in some special way, then you will need one of the special disk backup hardware tools anyway.
The reason it gets me excited to have a physical floppy drive connected to it, is that it makes it much more backwards compatible. Since it actually does support the physical media. It would be one more hardware connection supported directly. No FPGA so far supports SCP, IPF or HFE disk images. And none of those formats fully replaces an actual floppy drive, since people do have old disks with Deluxe Paint images, animations or maybe save disks for games. Or other stuff like Amos projects.
Which is also another step in the direction of making it possible to fully replace an Amiga with a MiSTer. Putting a MiSTer in an Amiga casing, and connect the keyboard, floppy drive, joysticks and such to it.
-
- Top Contributor
- Posts: 468
- Joined: Sun May 24, 2020 7:17 pm
- Has thanked: 35 times
- Been thanked: 99 times
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Real floppy drive
MiSTer is hybrid system. Floppy format is supported on HPS side, so in theory it's possible to get Gotek(FlashFloppy) project sources and integrate to MiSTer.
Actually support for protected disks is kind of obsolete today. Everything made on 90x is already hacked/cracked and available in plain ADF format.
Actually support for protected disks is kind of obsolete today. Everything made on 90x is already hacked/cracked and available in plain ADF format.
Re: Real floppy drive
Ok, I get it. Why on earth I am doing such thing, if there is nowadays almost no possibility to buy new floppy drive, and floppy disks are way more expensive than before:
1) At first, I wanted to do just a weekend hobby project, to bring back nostalgy with drive sounds, and to be able to do some proper disk juggling. I still have my old Amiga disks which are working in real Amiga, so I was just thinking: try to connect a floppy drive, it can't be that hard ! There is a most important point here: I do love the whole MiSTer project, but even for me, as an experienced FPGA / embedded developer, it is sometimes hard to understand some concepts and inner workings of other's work. And with emphasis to other's work. Everyone knows, that reading someone else's code can be hard, and in case of Verilog or low level C code, even harder. I needed to learn MiSTer inner workings to be able to actually contribute with something useful, which has not been done before. I know both Xilinx and Intel SoCs, as I worked with them before, but still, I needed something familiar to work with, and try to integrate it into MiSTer, learning on the way. I also wanted to try to actually connect something to user port.
2) It is fun ! Doing something, even maybe pointless, is fun !
3) As I am going more and more into this one specific subsystem, the more I see a way to improve support with flux-level data formats, which would be very nice.
4) When I actually did the whole connection of the floppy, there is a huge nostalgy with the drive sounds and disk juggling. WinUAE does have drive sounds emulated via soundcard, but oh boy, it is absolutely not comparable at all. I will always have Amiga connected with disk juggling and drive sounds.
5) I see a point of actually using this kind of interface not to actually store any data, but to have a possibility to bring back huge part of nostalgy, without actually pulling out real hardware. Just get a 3,5" floppy, and show your offsprings how it was done 30 years ago. While doing this, I was able to fully demonstrate partly disassembled floppy drive to my son, explaining to him how it works.
The whole interface is very simple. It should be very cheap, and it adds option for someone, who wants one. Again, I do not have good memories of PC floppy, and doing PC DOS floppy doesn't ring any bells, but for Amiga, it is a big part of actually using the computer. I think, that it is comparable to building a whole arcade cabinet with old CRTs and big buttons and joysticks just to put MiSTer with single game in. Some people do it. Because sometimes these physical add-ons are what someone connects in his mind with particular hardware.
1) At first, I wanted to do just a weekend hobby project, to bring back nostalgy with drive sounds, and to be able to do some proper disk juggling. I still have my old Amiga disks which are working in real Amiga, so I was just thinking: try to connect a floppy drive, it can't be that hard ! There is a most important point here: I do love the whole MiSTer project, but even for me, as an experienced FPGA / embedded developer, it is sometimes hard to understand some concepts and inner workings of other's work. And with emphasis to other's work. Everyone knows, that reading someone else's code can be hard, and in case of Verilog or low level C code, even harder. I needed to learn MiSTer inner workings to be able to actually contribute with something useful, which has not been done before. I know both Xilinx and Intel SoCs, as I worked with them before, but still, I needed something familiar to work with, and try to integrate it into MiSTer, learning on the way. I also wanted to try to actually connect something to user port.
2) It is fun ! Doing something, even maybe pointless, is fun !
3) As I am going more and more into this one specific subsystem, the more I see a way to improve support with flux-level data formats, which would be very nice.
4) When I actually did the whole connection of the floppy, there is a huge nostalgy with the drive sounds and disk juggling. WinUAE does have drive sounds emulated via soundcard, but oh boy, it is absolutely not comparable at all. I will always have Amiga connected with disk juggling and drive sounds.
5) I see a point of actually using this kind of interface not to actually store any data, but to have a possibility to bring back huge part of nostalgy, without actually pulling out real hardware. Just get a 3,5" floppy, and show your offsprings how it was done 30 years ago. While doing this, I was able to fully demonstrate partly disassembled floppy drive to my son, explaining to him how it works.
The whole interface is very simple. It should be very cheap, and it adds option for someone, who wants one. Again, I do not have good memories of PC floppy, and doing PC DOS floppy doesn't ring any bells, but for Amiga, it is a big part of actually using the computer. I think, that it is comparable to building a whole arcade cabinet with old CRTs and big buttons and joysticks just to put MiSTer with single game in. Some people do it. Because sometimes these physical add-ons are what someone connects in his mind with particular hardware.
Re: Real floppy drive
Also, some more update - since I still do not have parts (timeframe unknown) to be able to build a prototype version and I am still stuck with breadboard, I did improve DPLL to further mimic original hardware. I am very satisfied with the result, XCopy can read the whole floppy without retries.
Posting how the real floppy is integrated into Minimig, you can see actual floppy pulses under dskrd_edge, and recovered data written into fifo_in[15:0] in Paula.
Posting how the real floppy is integrated into Minimig, you can see actual floppy pulses under dskrd_edge, and recovered data written into fifo_in[15:0] in Paula.
- Attachments
-
- dpll2.png (267.32 KiB) Viewed 13148 times
-
- Posts: 130
- Joined: Fri Jun 19, 2020 8:54 pm
- Has thanked: 13 times
- Been thanked: 58 times
Re: Real floppy drive
This, 100%! The project's existence needs no other justification.
Yes indeed - it's also a bit like comparing vinyl records or laserdiscs with purely digital audio - the media itself might be fragile, but the physical item and its sleeve art and label are all part of the history of the recording, and too easily swept casually aside with FLAC encoding.but for Amiga, it is a big part of actually using the computer. I think, that it is comparable to building a whole arcade cabinet with old CRTs and big buttons and joysticks just to put MiSTer with single game in. Some people do it. Because sometimes these physical add-ons are what someone connects in his mind with particular hardware.
Nice work, anyway - looking forward to watching the progress.
-
- Posts: 257
- Joined: Sun May 24, 2020 9:06 pm
- Has thanked: 64 times
- Been thanked: 13 times
Re: Real floppy drive
Also there's a big collectors market for old Amiga games. Most collectors will have an Amiga anyway but being able to use MiSTer with them too can't be a bad thing for anyone.
Excellent progress by the way, can't believe how quickly it's coming together!
Excellent progress by the way, can't believe how quickly it's coming together!
- Caldor
- Top Contributor
- Posts: 930
- Joined: Sat Jul 25, 2020 11:20 am
- Has thanked: 112 times
- Been thanked: 111 times
Re: Real floppy drive
And pretty much always this means you get some crack intro screen, trainers and such. I personally love it when I am able to use my original disks, or images of my original disks.Sorgelig wrote: ↑Mon Nov 23, 2020 3:32 pm MiSTer is hybrid system. Floppy format is supported on HPS side, so in theory it's possible to get Gotek(FlashFloppy) project sources and integrate to MiSTer.
Actually support for protected disks is kind of obsolete today. Everything made on 90x is already hacked/cracked and available in plain ADF format.
Take AO486 and the awesome CD support you recently added. Its really awesome being able to go through the installations as part of playing these games. In general when it comes down to it, emulation, especially for DOS, is actually so good that FPGAs are... arguable not that relevant. If this was only about being able to actually play the classic games. On the Amiga it is a bit more relevant... but not by much. On a fast PC it should not really be much of a difference.
The strength of FPGA (for me) is how it feels closer to the original, but what really gets me excited about FPGAs is that FPGAs can do actual hardware integration. Using floppy drives, connecting midi devices, connecting CD drives. Recreating the actual original system... even using serial ports for multi-player between two devices. Emulators are in some cases able to connect to some original hardware, like with the Keyrah. But a Raspberry Pi or PC compared to MiSTer: MiSTer uses much less power, boots instantly and can boot directly into a core. You can setup a Pi to boot directly into some emulation... but it takes at least 30 seconds to go through the Pi boot. You can hide all the boot text, but its still something it goes through. FPGAs also use less power since it does not have to recreate the system using emulation done in a CPU.
All of this helps add to the nostalgia I think... and the end goal of every FPGA, seems like it should be full compatibility with the original systems. Maybe even fixing some of the original issues they might have had, just because its possible. But that to me, means the original hardware ports. I am pretty sure this is why we have seen people connecting both C64 and Amiga floppy drives to the MiSTer. Because when it comes to the original feel of the C64 and Amiga, part of it was those annoyingly slow drives with the memorable loading sounds.
I would also argue most people would agree that its what makes the Ultimate 64 system stand out above most FPGA implementations, because they actually made an FPGA that supports all the original C64 ports and added some extra connections, like HDMI, but only as an addition. Its also why Analogue is so popular with their FPGAs.
- Reed_Solomon
- Posts: 65
- Joined: Sun May 24, 2020 7:37 pm
- Has thanked: 40 times
- Been thanked: 8 times
Re: Real floppy drive
Maybe it'll save some floppy drives from ending up in the landfills if people can repurpose them for use inside an Amiga oriented mister setup. Adds to the authentic feel of the thing as well. Can I live without it? Sure, but it'd be nice to see the option. People who put their Misters inside of a checkmate lite case might be especially interested in floppy support. Lots of people out there have made games in gameMaker for Amiga and they're probably still on floppy. Or animations. Making it easier for people to recover that data is a worthy thing to me.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
- Caldor
- Top Contributor
- Posts: 930
- Joined: Sat Jul 25, 2020 11:20 am
- Has thanked: 112 times
- Been thanked: 111 times
Re: Real floppy drive
Many old cracks also alter the games in rather unforgivable ways (missing scenes in Moneky Island, iirc) - mostly better to use games recently prepared with whdload from original media than to use ADFs of old cracks.
Re: Real floppy drive
Great progress Lukage, please let us know if you need anything, or if we can help in anyway.
I would LOVE to build a MiSTer setup in my original A1200 case, using my original (still working) floppy drive. Oh the nostalgia.
I would LOVE to build a MiSTer setup in my original A1200 case, using my original (still working) floppy drive. Oh the nostalgia.
-
- Top Contributor
- Posts: 552
- Joined: Sun May 24, 2020 8:07 pm
- Has thanked: 185 times
- Been thanked: 310 times
- Contact:
Re: Real floppy drive
I think it's cool and getting any hardware interface to fpga is fun! I know I have a few floppies I would get out just to see them load, even if my primary usage would be images.
Re: Real floppy drive
Update: Reading is done. I think I've resolved all bugs in physical floppy controller FPGA part. I've actually found out, that the ADF read speed should match real hardware, as it is using 3 DMA slots, if "Floppy disk turbo : off" choice is selected in MiSTer menu. I needed to replicate this on real floppy, and found out some more bugs in controlling hardware and inputting disk data.
Shrunk down the XCopy checkdisk time to 38 seconds, without single read retry on real Amiga-written disk on unmodified PC floppy drive. So far I booted everything I threw at it directly from Kickstart, so I think it works. You can see on the picture Workbench booted off DF2 physical floppy.
Next is write support. I should also have parts for prototype sometime next week.
Shrunk down the XCopy checkdisk time to 38 seconds, without single read retry on real Amiga-written disk on unmodified PC floppy drive. So far I booted everything I threw at it directly from Kickstart, so I think it works. You can see on the picture Workbench booted off DF2 physical floppy.
Next is write support. I should also have parts for prototype sometime next week.
- Attachments
-
- wb.jpg (254.9 KiB) Viewed 14492 times
-
- disk3.jpg (245.18 KiB) Viewed 14492 times
- kathleen
- Top Contributor
- Posts: 421
- Joined: Fri Jun 26, 2020 4:23 am
- Location: Belgium
- Has thanked: 243 times
- Been thanked: 138 times
Re: Real floppy drive
Thank you @Lukage for the update about your progress, I'm a big fan of this new feature, for the reasons that I and others members already mentioned, Prior your project, I've never thought that it will happen a day despite it was one of the things that I wanted to see. You did it ! Thanks again for that. I'm looking forward to be able to use it on my Mister once everything on your side will be debugged.
I've one question however, the Amiga can boot on DF0 ,1 ,2, 3 etc for most applications and/or workbench it is fine, but the story is different for the games where 99% of them need to be placed in DF0: otherwise they'll not run, if I well understood it is because the game always look for DF0 to load the game.
This being said, do you think that the physical disk could be addressed to DF0: instead of DF2: (In another way than using the early startup which doesn't work for games) ?
Thanks and regards,
Kathleen.
I've one question however, the Amiga can boot on DF0 ,1 ,2, 3 etc for most applications and/or workbench it is fine, but the story is different for the games where 99% of them need to be placed in DF0: otherwise they'll not run, if I well understood it is because the game always look for DF0 to load the game.
This being said, do you think that the physical disk could be addressed to DF0: instead of DF2: (In another way than using the early startup which doesn't work for games) ?
Thanks and regards,
Kathleen.
かすりん
- Caldor
- Top Contributor
- Posts: 930
- Joined: Sat Jul 25, 2020 11:20 am
- Has thanked: 112 times
- Been thanked: 111 times
Re: Real floppy drive
@Kathleen pretty sure he just did it for testing. For all single disk games usually you can get around using DF2 and such by using the special Amiga boot where you hold down the left and right mouse-button during boot and force some specific drive to be the primary boot drive. Which also works for harddrives.
@Lukage that sounds great. I have this personal dream to see different IO boards being made for the MiSTer for different systems. That way making it possible to integrate the MiSTer in an original Amiga casing f.ex. Might also be relevant at some point for the AO486 core and C64 core. Not sure about the consoles and such, and not sure how many cores will even get enough attention to get these kinds of features.
But its mainly the Amiga where I hope to see this. The Amiga only had one FPGA solution with physical floppy connector support and it was expensive and relied on an 060 CPU expansion but what put me off the most was that it was an arcade board not designed to fit into an original Amiga casing.
The Ultimate 64 is my benchmark for FPGAs for other systems. I mostly use digital media with it and it supports those, both tapes, cartridges and floppies. Even different types of floppies. But also supports physical tapes, cartridges and floppies. Also supports the original video and audio outputs, but at the same time has an HDMI output. I think it has the most features on the HDMI output when it comes to overlays, but both are working and viable.
I think the MiSTer is in a good position to do both as well. Especially with all the amazing updates it has been getting already has rather good CRT support even though its a bit complicated to setup. But the floppy drive support seems like the most relevant to add. But would be nice to also have some other ports supported, like PCMCIA and I think it was the serial port that was used for multi-player?
@Lukage that sounds great. I have this personal dream to see different IO boards being made for the MiSTer for different systems. That way making it possible to integrate the MiSTer in an original Amiga casing f.ex. Might also be relevant at some point for the AO486 core and C64 core. Not sure about the consoles and such, and not sure how many cores will even get enough attention to get these kinds of features.
But its mainly the Amiga where I hope to see this. The Amiga only had one FPGA solution with physical floppy connector support and it was expensive and relied on an 060 CPU expansion but what put me off the most was that it was an arcade board not designed to fit into an original Amiga casing.
The Ultimate 64 is my benchmark for FPGAs for other systems. I mostly use digital media with it and it supports those, both tapes, cartridges and floppies. Even different types of floppies. But also supports physical tapes, cartridges and floppies. Also supports the original video and audio outputs, but at the same time has an HDMI output. I think it has the most features on the HDMI output when it comes to overlays, but both are working and viable.
I think the MiSTer is in a good position to do both as well. Especially with all the amazing updates it has been getting already has rather good CRT support even though its a bit complicated to setup. But the floppy drive support seems like the most relevant to add. But would be nice to also have some other ports supported, like PCMCIA and I think it was the serial port that was used for multi-player?
Re: Real floppy drive
That only works for Kickstarts above 2.0+. I guess some of the point of this add-on would be to run older games and demos from old floppies. A lot of them only work on Kickstart 1.0-1.3, so not having DF0: support would be a real shame.Caldor wrote: ↑Fri Nov 27, 2020 11:04 am @Kathleen pretty sure he just did it for testing. For all single disk games usually you can get around using DF2 and such by using the special Amiga boot where you hold down the left and right mouse-button during boot and force some specific drive to be the primary boot drive. Which also works for harddrives.
Re: Real floppy drive
No, that was exactly what she wrote is not the case with many old games, they typically use a custom trackloader that throws out the OS (ie ignores whatever you select in early startup menu) and assume that DF0 is used.
Re: Real floppy drive
There will be selection possible in MiSTer menu in floppy configuration, you should be able to select DF0 - DF3 as physical floppy, blocking ADF emulation access to the same drive. I think that you will not need to reset the Amiga, so you can freely migrate which drive is physical while the Amiga is running.
Yes, exactly. You should be able to select DF0 as physical floppy adapter.
- kathleen
- Top Contributor
- Posts: 421
- Joined: Fri Jun 26, 2020 4:23 am
- Location: Belgium
- Has thanked: 243 times
- Been thanked: 138 times
Re: Real floppy drive
Brilliant @Lukage !, even if the reboot of the Amiga is needed it would be perfect, it this change can operate on the fly, it is more that perfect;Lukage wrote: ↑Fri Nov 27, 2020 7:25 pm There will be selection possible in MiSTer menu in floppy configuration, you should be able to select DF0 - DF3 as physical floppy, blocking ADF emulation access to the same drive. I think that you will not need to reset the Amiga, so you can freely migrate which drive is physical while the Amiga is running.
かすりん
Re: Real floppy drive
You mean that clicking sound when no disk is inserted ? Short answer: Yes, of course it clicks .