Page 22 of 47

Re: MiSTer PCXT

Posted: Sun Jul 10, 2022 11:46 am
by kitune-san
spark2k06 wrote: Sun Jul 10, 2022 5:40 am
On the other hand, a user told me that although the direct clock of the sdram works well, in many of the MiSTer cores there is a small offset as explained here:

https://github.com/mist-devel/mist-boar ... on-4-sdram

What do you think about it?
The clock output externally should preferably come from a PLL.
It may also be recommended to output from out0.

Re: MiSTer PCXT

Posted: Sun Jul 10, 2022 12:49 pm
by kitune-san
kitune-san wrote: Sun Jul 10, 2022 11:39 am One thing I noticed.
If you need a ready signal, you can do the following.

in Chipset.sv.

Code: Select all

    READY u_READY (
        ...
        .io_channel_ready (io_channel_ready & memory_access_ready & tandy_snd_rdy),
        ...
And I don't think the edge signal for the write signal within Peripherals.sv is necessary. Because it is done within sn76489_latch_ctrl.vhd.
When writing to sn76489, the ready signal must be wired. Because the write timing is shifted by clock_en_i and divider.
I have pull-requested my suggestion. But Sorry, I cannot confirm this in my environment.
If this commit does not improve the situation, please close this pull request.

Re: MiSTer PCXT

Posted: Sun Jul 10, 2022 7:46 pm
by spark2k06
kitune-san wrote: Sun Jul 10, 2022 11:39 am
spark2k06 wrote: Sun Jul 10, 2022 5:40 am
@kitune-san, I have tried to improve the implementation of the tandy sound module by following a little bit the methodology you have used in other modules:

https://github.com/spark2k06/PCXT_MiSTe ... 0052703e0f

Despite some improvement, as you can see in the video, the sound is still distorted... you can compare it with another video where you can see how it should sound:

https://www.youtube.com/watch?v=ersh8Yz-CC8&t=35s

Can you think of a way to fix it?
I haven't seen this thread in a while.
It is great progress.

One thing I noticed.
If you need a ready signal, you can do the following.

in Chipset.sv.

Code: Select all

    READY u_READY (
        ...
        .io_channel_ready (io_channel_ready & memory_access_ready & tandy_snd_rdy),
        ...
And I don't think the edge signal for the write signal within Peripherals.sv is necessary. Because it is done within sn76489_latch_ctrl.vhd.
Unfortunately it doesn't work, I already did this test myself, connecting the signal directly to the 8088 module with an AND. The result is the same, the BIOS hangs at startup, so it is unstable.

Re: MiSTer PCXT

Posted: Sun Jul 10, 2022 9:38 pm
by thorr
Thanks for all of your efforts and for adding in Tandy support! I have not tried this yet, but I saw the joystick port posts. Does the joystick already work? I am looking forward to playing Sierra games in Tandy mode with a joystick (eventually when everything is working). Thanks!

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 12:01 am
by kitune-san
If the ready signal is connected directly to the 8088 module, the bus may not be controlled properly.
I recommend connecting the ready signal to the ready module.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 3:21 am
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 12:01 am If the ready signal is connected directly to the 8088 module, the bus may not be controlled properly.
I recommend connecting the ready signal to the ready module.
I agree that connecting it to the 8088 module directly is not the right thing to do, I only comment that in this case it has had the same effect as with your solution of connecting it to the ready module, and that is that the core does not load the BIOS. I will continue investigating, thank you very much ;)

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 3:51 am
by spark2k06
spark2k06 wrote: Mon Jul 11, 2022 3:21 am
kitune-san wrote: Mon Jul 11, 2022 12:01 am If the ready signal is connected directly to the 8088 module, the bus may not be controlled properly.
I recommend connecting the ready signal to the ready module.
I agree that connecting it to the 8088 module directly is not the right thing to do, I only comment that in this case it has had the same effect as with your solution of connecting it to the ready module, and that is that the core does not load the BIOS. I will continue investigating, thank you very much ;)
I have moved your pull request to the prebeta 1.4 branch, and then removed the tandy_snd_rdy signal from the ready module, as this is what causes the core to hang during BIOS boot.

https://github.com/spark2k06/PCXT_MiSTe ... 30f7ee0903

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 4:11 am
by kitune-san
Maybe the tandy chip select negating during memory access is causing the problem.

Sorry, can't confirm this right now.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 4:27 am
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 4:11 am Maybe the tandy chip select negating during memory access is causing the problem.

Sorry, can't confirm this right now.
Thanks for the tip and don't worry, if I don't manage to solve it, we'll leave it pending.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 4:55 am
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 4:11 am Maybe the tandy chip select negating during memory access is causing the problem.

Sorry, can't confirm this right now.
I did a quick test to avoid the tandy_select denial, the result is the same... crash during BIOS loading.

https://github.com/spark2k06/PCXT_MiSTe ... 46c8d5deac

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 5:38 am
by kitune-san
Sorry, maybe I didn't communicate it well.
I will try after work.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 6:00 am
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 5:38 am Sorry, maybe I didn't communicate it well.
I will try after work.
Don't worry, It's probably more my problem, I work more by intuition than by real knowledge in this area. I finally got it!



Now what I do is prevent the CS signal from entering with memory accesses at the same address as the I/O port:

Code: Select all

.ce_n_i(~(~tandy_chip_select_n & ~io_write_n))
During the day I will upload it to the prebeta 1.4 branch and provide the binary in this thread.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 6:39 am
by suww37
spark2k06 wrote: Mon Jul 11, 2022 6:00 am
kitune-san wrote: Mon Jul 11, 2022 5:38 am Sorry, maybe I didn't communicate it well.
I will try after work.
Don't worry, It's probably more my problem, I work more by intuition than by real knowledge in this area. I finally got it!



Now what I do is prevent the CS signal from entering with memory accesses at the same address as the I/O port:

Code: Select all

.ce_n_i(tandy_chip_select_n & ~memory_read_n & ~memory_write_n)
During the day I will upload it to the prebeta 1.4 branch and provide the binary in this thread.
I select tandy in setup in a game that supports Tandy graphic (ex.prince of persia) and tandy does not apply when I run the game. I use Juko ST bios and your YouTube video doesn't seem to be this bios. Is there a separate tandy supported bios? How to apply Tandy bios Even if I select Tandy from the osd menu, I won't see the red box on your YouTube screen.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 6:51 am
by kitune-san
spark2k06 wrote: Mon Jul 11, 2022 6:00 am
kitune-san wrote: Mon Jul 11, 2022 5:38 am Sorry, maybe I didn't communicate it well.
I will try after work.
Don't worry, It's probably more my problem, I work more by intuition than by real knowledge in this area. I finally got it!

Now what I do is prevent the CS signal from entering with memory accesses at the same address as the I/O port:

Code: Select all

.ce_n_i(~(~tandy_chip_select_n & ~io_write_n))
During the day I will upload it to the prebeta 1.4 branch and provide the binary in this thread.
Great! thank you!

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 6:52 am
by jordi
suww37 wrote: Mon Jul 11, 2022 6:39 am
spark2k06 wrote: Mon Jul 11, 2022 6:00 am
kitune-san wrote: Mon Jul 11, 2022 5:38 am Sorry, maybe I didn't communicate it well.
I will try after work.
Don't worry, It's probably more my problem, I work more by intuition than by real knowledge in this area. I finally got it!



Now what I do is prevent the CS signal from entering with memory accesses at the same address as the I/O port:

Code: Select all

.ce_n_i(tandy_chip_select_n & ~memory_read_n & ~memory_write_n)
During the day I will upload it to the prebeta 1.4 branch and provide the binary in this thread.
I select tandy in setup in a game that supports Tandy graphic (ex.prince of persia) and tandy does not apply when I run the game. I use Juko ST bios and your YouTube video doesn't seem to be this bios. Is there a separate tandy supported bios? How to apply Tandy bios Even if I select Tandy from the osd menu, I won't see the red box on your YouTube screen.
you'll need a Tandy BIOS loaded to be able to use tandy. But IIRC keyboard is not working with such bios, yet. Tests are executed by adding demos to autoexec.bat

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 7:19 am
by suww37
jordi wrote: Mon Jul 11, 2022 6:52 am
suww37 wrote: Mon Jul 11, 2022 6:39 am
spark2k06 wrote: Mon Jul 11, 2022 6:00 am

Don't worry, It's probably more my problem, I work more by intuition than by real knowledge in this area. I finally got it!



Now what I do is prevent the CS signal from entering with memory accesses at the same address as the I/O port:

Code: Select all

.ce_n_i(tandy_chip_select_n & ~memory_read_n & ~memory_write_n)
During the day I will upload it to the prebeta 1.4 branch and provide the binary in this thread.
I select tandy in setup in a game that supports Tandy graphic (ex.prince of persia) and tandy does not apply when I run the game. I use Juko ST bios and your YouTube video doesn't seem to be this bios. Is there a separate tandy supported bios? How to apply Tandy bios Even if I select Tandy from the osd menu, I won't see the red box on your YouTube screen.
you'll need a Tandy BIOS loaded to be able to use tandy. But IIRC keyboard is not working with such bios, yet. Tests are executed by adding demos to autoexec.bat
How can I load the Tandy bios? Juko st bios works with boot.rom. Does Tandy bios work this way too?

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 7:51 am
by kitune-san
In tandy, the use of pb6 in 8255 seems to be different from pcxt.
This is probably why the keyboard does not work.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 7:55 am
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 7:51 am In tandy, the use of pb6 in 8255 seems to be different from pcxt.
This is probably why the keyboard does not work.
Tandy is a very interesting version, if necessary, we can make a switch from the OSD menu for the selection of the machine (IBM PC or Tandy 1000), and depending on this switch, that the keyboard works in one way or another... among other things that I would take into account.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 12:45 pm
by kitune-san
If video output is set to tandy, the keyboard can be used with tandy bios.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 12:55 pm
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 12:45 pm If video output is set to tandy, the keyboard can be used with tandy bios.
This is great, I just tried it and it works. However, the Tandy sound fix that I just uploaded to the prebeta 1.4 branch is missing. Can you make a pull request to this branch merging this change?

Thanks!

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 12:58 pm
by jordi
kitune-san wrote: Mon Jul 11, 2022 12:45 pm If video output is set to tandy, the keyboard can be used with tandy bios.
you are both honorable wizards :o !!
thank you so much for all of this work

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 12:58 pm
by spark2k06
suww37 wrote: Mon Jul 11, 2022 7:19 am
How can I load the Tandy bios? Juko st bios works with boot.rom. Does Tandy bios work this way too?

I already commented it in this thread, but you have a script available here to generate a boot.rom file with Tandy:

https://github.com/spark2k06/PCXT_MiSTe ... h_tandy.py

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 1:04 pm
by kitune-san
spark2k06 wrote: Mon Jul 11, 2022 12:55 pm
kitune-san wrote: Mon Jul 11, 2022 12:45 pm If video output is set to tandy, the keyboard can be used with tandy bios.
This is great, I just tried it and it works. However, the Tandy sound fix that I just uploaded to the prebeta 1.4 branch is missing. Can you make a pull request to this branch merging this change?

Thanks!
I sent a pull request.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 1:15 pm
by kitune-san
In my commit the tandy mode is related to the video settings, but it might be better to create a separate switch.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 1:24 pm
by spark2k06
I have updated the prebeta 1.4 branch with these latest changes:

https://github.com/spark2k06/PCXT_MiSTe ... rebeta-1.4

And right here I leave the corresponding binary available for everyone to enjoy!

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 1:25 pm
by spark2k06
kitune-san wrote: Mon Jul 11, 2022 1:15 pm In my commit the tandy mode is related to the video settings, but it might be better to create a separate switch.
In principle we will leave it as it is, but yes, I will change it later, thank you very much.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 1:47 pm
by wark91
Thank you for thoses updates.

With the RBF of kitsune-san I still have kdb issues for Tandy 1000 bioses 1.02, 1.03 and HX (2.00)
With the RBF PREBETA 1.4_01, I'm not able to boot my hdd. It is ok with the kitsune-san RBF.
It hangs on Booting C>>C or print errors missing files.

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 3:22 pm
by spark2k06
I have added a new signal called IORQ which I believe will improve the overall performance.

https://github.com/spark2k06/PCXT_MiSTe ... 7c6c84928b

Attached new binary

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 3:37 pm
by wark91
spark2k06 wrote: Mon Jul 11, 2022 3:22 pm I have added a new signal called IORQ which I believe will improve the overall performance.

https://github.com/spark2k06/PCXT_MiSTe ... 7c6c84928b

Attached new binary
Fixed my issue with the HDD not booting ! Thanks !

Re: MiSTer PCXT

Posted: Mon Jul 11, 2022 6:38 pm
by spark2k06
I have improved the previous commit by adding IORQ signal also to the UART module.

https://github.com/spark2k06/PCXT_MiSTe ... 192f79e593

The updated binary is also attached. In theory, it could help to make across serial port loading even more stable.