FDD Support Based on ao486 Implementation

User avatar
wark91
Core Developer
Posts: 334
Joined: Sun May 24, 2020 8:34 pm
Has thanked: 447 times
Been thanked: 95 times

Re: FDD Support Based on ao486 Implementation

Unread post by wark91 »

I tried the new main and compiled the prerelease with FDD support.
It works great ! thanks
For the demo 8088MPH on FDD using stock dos 3.0 (boot FDD), it shows the core deviates for 1% or 2%. I didn't manage to match 0%.
Have you the same behavoir ?
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

wark91 wrote: Thu Oct 06, 2022 7:57 pm I tried the new main and compiled the prerelease with FDD support.
It works great ! thanks
For the demo 8088MPH on FDD using stock dos 3.0 (boot FDD), it shows the core deviates for 1% or 2%. I didn't manage to match 0%.
Have you the same behavoir ?
It is variable, close to 0... and in fact sometimes it has detected it at 0, but most of the time at 1.
User avatar
wark91
Core Developer
Posts: 334
Joined: Sun May 24, 2020 8:34 pm
Has thanked: 447 times
Been thanked: 95 times

Re: FDD Support Based on ao486 Implementation

Unread post by wark91 »

ok but with the previous method using FDD throught the COM, I managed to get 0% more often.
User avatar
Caldor
Top Contributor
Posts: 930
Joined: Sat Jul 25, 2020 11:20 am
Has thanked: 112 times
Been thanked: 111 times

Re: FDD Support Based on ao486 Implementation

Unread post by Caldor »

The MiSTer Main got the new changes merged for FDD support.

Here is the link to nightly build of it:
https://discord.com/channels/6479093974 ... 1067977738
User avatar
Caldor
Top Contributor
Posts: 930
Joined: Sat Jul 25, 2020 11:20 am
Has thanked: 112 times
Been thanked: 111 times

Re: FDD Support Based on ao486 Implementation

Unread post by Caldor »

Could we maybe get serial mouse support merged with this? Sounds like the problem with it is that it has conflicts with interrupts from Serdrive, but we could possibly get around that if we just boot from floppy instead since this floppy version is IDE based?
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

Caldor wrote: Thu Oct 06, 2022 9:32 pm Could we maybe get serial mouse support merged with this? Sounds like the problem with it is that it has conflicts with interrupts from Serdrive, but we could possibly get around that if we just boot from floppy instead since this floppy version is IDE based?
For the MiSTer port we are not at that point yet. In MiSTer the mouse must work in Stream mode, and until we have identified and solved the problem in remote mode (the one used in direct PS/2 ports, not emulated as in MiSTer), we will not check it.
User avatar
Caldor
Top Contributor
Posts: 930
Joined: Sat Jul 25, 2020 11:20 am
Has thanked: 112 times
Been thanked: 111 times

Re: FDD Support Based on ao486 Implementation

Unread post by Caldor »

Ahh... sucks. Oh well. I hope some solution is found.

I tried using the floppy drives yesterday and they worked quite well. Tried booting from drive A and such.
User avatar
wark91
Core Developer
Posts: 334
Joined: Sun May 24, 2020 8:34 pm
Has thanked: 447 times
Been thanked: 95 times

Re: FDD Support Based on ao486 Implementation

Unread post by wark91 »

Thank you for the release :)
kitune-san
Top Contributor
Posts: 401
Joined: Wed May 18, 2022 11:20 am
Has thanked: 127 times
Been thanked: 412 times

Re: FDD Support Based on ao486 Implementation

Unread post by kitune-san »

kitune-san wrote: Wed Oct 05, 2022 6:46 am I suspect that the reason why the 601 error occurs at 14mhz is the timeout (CX=0) caused by the Loop instruction.
I have confirmed that FDD works at 14MHz by lowering the cur_rate value.
The appropriate value is...I don't know.
2022-10-08 135806.png
2022-10-08 135806.png (19.29 KiB) Viewed 8887 times
Attachments
PCXT.zip
(1.17 MiB) Downloaded 231 times
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

kitune-san wrote: Sat Oct 08, 2022 5:01 am
kitune-san wrote: Wed Oct 05, 2022 6:46 am I suspect that the reason why the 601 error occurs at 14mhz is the timeout (CX=0) caused by the Loop instruction.
I have confirmed that FDD works at 14MHz by lowering the cur_rate value.
The appropriate value is...I don't know.

2022-10-08 135806.png
I am adding the change for the next release because I see that it improves stability at 14.318MHz:

https://github.com/MiSTer-devel/PCXT_Mi ... 85228f99b6

Indeed, it no longer gives error 601, even at 14.318Mhz. I only observe the following behaviour:

In the 5160 BIOS, it is now possible to make use of the floppy disk at 14.318Mhz, and it also formats well. However, if it is hot-switched to 4.77Mhz, then to 7.16Mhz and finally back to 14.318Mhz when the BIOS and the OS is running, a formatting is no longer possible. However, in Tandy it doesn't have this behaviour, it works fine at all speeds. If you switch back to 4.77Mhz and 7.16Mhz it works without problems. It might need a little more tweaking, but for me it's almost perfect right now.

Also consider that not all BIOSes may be compatible with this FDD implementation, the only one I've seen so far that doesn't work is Ja'akov Miles and Jon Petroski OpenXT BIOS. The rest have worked as expected.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

Can the floppy load option be moved to be the item in the OSD?
Most cores have loading disks as the first option, and it's common to switch disks if playing with floppies.
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

Newsdee wrote: Sun Oct 16, 2022 1:35 am Can the floppy load option be moved to be the item in the OSD?
Most cores have loading disks as the first option, and it's common to switch disks if playing with floppies.
I think that each feature is ultimately conditioned by the type of use that is made of the core, what you find convenient now may not be so convenient later on, and vice versa.

Regarding the hot-swapping of floppy disks, that's not really a problem, considering that the Main has been prepared so that this core remembers the last place where it was when it left the OSD, and when it comes back it is at the same point, in this case the floppy disk mounting section.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

spark2k06 wrote: Sun Oct 16, 2022 3:11 am I think that each feature is ultimately conditioned by the type of use that is made of the core, what you find convenient now may not be so convenient later on, and vice versa.
It's more the fact that it is different than every other computer core. Look at ao486, Apple II, C64x minimig, etc.. So it stood out to me.

It bothers me enough to submit a Pull Request if you'll accept it. If not, thats fine. I can always make my own build for my personal use.
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

Newsdee wrote: Sun Oct 16, 2022 2:59 pm
spark2k06 wrote: Sun Oct 16, 2022 3:11 am I think that each feature is ultimately conditioned by the type of use that is made of the core, what you find convenient now may not be so convenient later on, and vice versa.
It's more the fact that it is different than every other computer core. Look at ao486, Apple II, C64x minimig, etc.. So it stood out to me.

It bothers me enough to submit a Pull Request if you'll accept it. If not, thats fine. I can always make my own build for my personal use.
Let's do one thing if that's okay with you. Create a new branch from the main branch with your alternative OSD menu proposal and I will make a survey on my Twitter account, if there is a significant number of votes and the majority is with your proposal, you could make me a pull request with the change. Are you ok with it? Save in your release folder an RBF with this new menu.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

spark2k06 wrote: Sun Oct 16, 2022 3:13 pm Let's do one thing if that's okay with you. Create a new branch from the main branch with your alternative OSD menu proposal
Yes, that's fine. I'll test drive the changes myself for a bit first to refine it.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

spark2k06 wrote: Sun Oct 16, 2022 3:13 pm Create a new branch from the main branch with your alternative OSD menu proposal and I will make a survey on my Twitter account, if there is a significant number of votes and the majority is with your proposal, you could make me a pull request with the change. Are you ok with it? Save in your release folder an RBF with this new menu.
Here you go:
https://github.com/spark2k06/PCXT_MiSTer/pull/67
.
RBF file:
PCXT_20221017.rbf
(3.52 MiB) Downloaded 306 times
.
OSD_photo.jpg
OSD_photo.jpg (149.39 KiB) Viewed 8515 times
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

Alea jacta est ;)
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

The community decides, vote now... as there is no point in complaining afterwards ;)
EeDee
Posts: 261
Joined: Thu Dec 24, 2020 12:33 pm
Has thanked: 13 times
Been thanked: 48 times

Re: FDD Support Based on ao486 Implementation

Unread post by EeDee »

I don't do Twitter but do agree with @newsdee's arrangement as, I'd say that, disk swapping is more common than changing machine type.

Edit: Have now actually tried it. Less key presses :-)
User avatar
LamerDeluxe
Top Contributor
Posts: 1239
Joined: Sun May 24, 2020 10:25 pm
Has thanked: 887 times
Been thanked: 284 times

Re: FDD Support Based on ao486 Implementation

Unread post by LamerDeluxe »

EeDee wrote: Mon Oct 17, 2022 1:06 pm I don't do Twitter but do agree with @newsdee's arrangement as, I'd say that, disk swapping is more common than changing machine type.

Edit: Have now actually tried it. Less key presses :-)
Same. And I think having the order of menu items mostly the same between cores is good UX design.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

spark2k06 wrote: Sun Oct 16, 2022 3:13 pm Save in your release folder an RBF with this new menu.
I realized I forgot to attach the latest rbf in my pull request. It has the build before I moved CPU speed to the OSD front page.

Do you want me to do another PR with the build, or will you do a fresh build of the branch anyway?
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

Newsdee wrote: Mon Oct 24, 2022 4:22 pm
spark2k06 wrote: Sun Oct 16, 2022 3:13 pm Save in your release folder an RBF with this new menu.
I realized I forgot to attach the latest rbf in my pull request. It has the build before I moved CPU speed to the OSD front page.

Do you want me to do another PR with the build, or will you do a fresh build of the branch anyway?
Do PR, but this time directly to the main branch, I also have to correct a bug added after the last changes, regarding the Tandy sound... so I will soon release a new update.

Thanks
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

spark2k06 wrote: Mon Oct 24, 2022 4:26 pm Do PR, but this time directly to the main branch, I also have to correct a bug added after the last changes, regarding the Tandy sound... so I will soon release a new update.
I think its already all included then (the HDL code is already merged). I will check the latest release.
kitune-san
Top Contributor
Posts: 401
Joined: Wed May 18, 2022 11:20 am
Has thanked: 127 times
Been thanked: 412 times

Re: FDD Support Based on ao486 Implementation

Unread post by kitune-san »

Booting from FDD seems to fail with release 20221030.
I am investigating the cause.
User avatar
spark2k06
Core Developer
Posts: 876
Joined: Sat Jun 06, 2020 9:05 am
Has thanked: 409 times
Been thanked: 969 times

Re: FDD Support Based on ao486 Implementation

Unread post by spark2k06 »

kitune-san wrote: Sun Oct 30, 2022 9:20 am Booting from FDD seems to fail with release 20221030.
I am investigating the cause.
Strange, I just tried a PC booter and it worked for me. With IBM Tandy... which floppy disk exactly is not working for you and with which BIOS?
kitune-san
Top Contributor
Posts: 401
Joined: Wed May 18, 2022 11:20 am
Has thanked: 127 times
Been thanked: 412 times

Re: FDD Support Based on ao486 Implementation

Unread post by kitune-san »

This is occurring with a 1.44 MHz FDD and Micro 8088 BIOS.
I have not tried Tandy, but have not seen the problem with the 5160 BIOS.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

I tried Alleycat (180k booter floppy) just now;
it booted fine both with Tandy and XT modes (micro8088), but note that I also have the ide_xtl.rom loaded.
User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: FDD Support Based on ao486 Implementation

Unread post by Newsdee »

Would it be possible to wire the FDD drive light to one of MiSTer's LEDs ?
kitune-san
Top Contributor
Posts: 401
Joined: Wed May 18, 2022 11:20 am
Has thanked: 127 times
Been thanked: 412 times

Re: FDD Support Based on ao486 Implementation

Unread post by kitune-san »

My problem seems to stem from a change in microcode.
However, I am not sure of the solution.
If there seems to be no problem other than mine, I will put it on hold. ;)
Post Reply