MicroCoreLabs wrote: ↑Sat Jun 11, 2022 6:26 am
I suggest looking at the SuperSoft manual for their explanation why Interrupt Level 0 fails. This test appears to cover the 8253, 8259, and the 8288.
Interrupt Level 0 Test.png (34.05 KiB) Viewed 4440 times
Re: MiSTer PCXT
Posted: Sat Jun 11, 2022 8:27 am
by spark2k06
And this would be the SuperSoft code that fails the test:
In mode 0, if the count register is rewritten during counting, it stops.
Then, a second rewrite starts the count.
Apparently I have not incorporated this specification....
However, I do not know if this is the cause of this issue.
Re: MiSTer PCXT
Posted: Sat Jun 11, 2022 9:33 am
by spark2k06
kitune-san wrote: ↑Sat Jun 11, 2022 9:29 am
In mode 0, if the count register is rewritten during counting, it stops.
Then, a second rewrite starts the count.
Apparently I have not incorporated this specification....
However, I do not know if this is the cause of this issue.
That could explain why before the timer fix, this test worked? This is why I am leaning towards something to do with the timing.
Re: MiSTer PCXT
Posted: Sat Jun 11, 2022 11:33 am
by kitune-san
I think there is no change in the start/stop timing of the counter before and after the timer fix.
It is a wonder that the timer passed before the modification.
Re: MiSTer PCXT
Posted: Sat Jun 11, 2022 11:47 am
by kitune-san
It is unlikely, but would you like to try timing constraints?
The clocks clk_14_318, clk_4_77, and peripheral_clock are not output from the PLL, so create_generated_clock is required.
Note that the processing time of Fitter is very long.
Re: MiSTer PCXT
Posted: Sat Jun 11, 2022 3:08 pm
by spark2k06
kitune-san wrote: ↑Sat Jun 11, 2022 11:47 am
It is unlikely, but would you like to try timing constraints?
The clocks clk_14_318, clk_4_77, and peripheral_clock are not output from the PLL, so create_generated_clock is required.
Note that the processing time of Fitter is very long.
I have generated the clk_cpu and peripheral_clock using PLLs with the wizard, finally I dispense with the 14_318 and 7_16 signals because I don't really need them, the 14_318 one was only used for the splash screen, and I can use the clk_cpu one for it without any problem:
pll_clocks.png (10.17 KiB) Viewed 4271 times
Indeed, the fitter time has increased from 8 minutes to 20 minutes, but the test failure still occurs.
Re: MiSTer PCXT
Posted: Sat Jun 11, 2022 3:42 pm
by kitune-san
Thank you for trying it. hmm...
I remembered that the output of timer 1 is not connected to the input of the DMA request because I didn't think old DRAM was necessary.
always_ff @(negedge clock) begin
prev_timer_count_1 <= timer_counter_out[1];
end
always_ff @(negedge clock, posedge reset) begin
if (reset)
DRQ0 <= 1'b0;
else if (~dma_acknowledge_n[0])
DRQ0 <= 1'b0;
else if (~prev_timer_count_1 & timer_counter_out[1])
DRQ0 <= 1'b1;
else
DRQ0 <= DRQ0;
end
BUS_ARBITER u_BUS_ARBITER (
....
.dma_request ({dma_request[3:1]}, DRQ0},
....
);
Tested... nothing, the test failure still occurs. Don't worry about it, we are waiting for you to get the MiSTer
Thank you!
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 3:47 am
by kitune-san
MiSTer has been delivered to me.
At first, SuperSoftROM was booted and I was connected to the Signal Tap.
I will report back if I find out anything.
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 3:55 am
by spark2k06
kitune-san wrote: ↑Sun Jun 12, 2022 3:47 am
MiSTer has been delivered to me.
At first, SuperSoftROM was booted and I was connected to the Signal Tap.
I will report back if I find out anything.
Good news! You'll let us know . Please do not hesitate to send me a pull request for any further developments.
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 4:04 am
by kitune-san
Apparently, an interrupt request is received before int0 starts counting...
Start investigating 8259.
2022-06-12 130156.png (25.3 KiB) Viewed 4066 times
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 5:15 am
by kitune-san
Passed!
DSC_0131.JPG (77.58 KiB) Viewed 4028 times
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 5:17 am
by MicroCoreLabs
Awesome!
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 5:28 am
by spark2k06
kitune-san wrote: ↑Sun Jun 12, 2022 5:15 am
Passed!
How fast! I think we're going to make great progress... now for the keyboard
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 5:39 am
by kitune-san
kitune-san wrote: ↑Sun Jun 12, 2022 5:15 am
Passed!
DSC_0131.JPG
Pull request sent to you.
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 8:28 am
by spark2k06
CGA and MDA at the same time for the MiSTer PCXT core. Thanks to Graphics Gremlin from TubeTimeUS... I still need to investigate how to display it in HDMI and VGA at the same time, as an additional option:
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 9:22 am
by wark91
Do you plan to add more video output on this core ?
It is great to follow the development of this core on this thread !! Thanks
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 9:37 am
by spark2k06
wark91 wrote: ↑Sun Jun 12, 2022 9:22 am
Do you plan to add more video output on this core ?
It is great to follow the development of this core on this thread !! Thanks
That would be fine but from EGA onwards it gets quite complicated, in addition to the FPGA implementation you have to add a BIOS that adds the corresponding functions. I hope that once we have an advanced version of a PCXT, this can be part of the official repository of MiSTer and from then on other developers will be encouraged to add functions, precisely because of space there won't be any problem.
However, as far as the graphics features are concerned, I still want to squeeze more out of the current Graphics Gremlin development, i.e. composite video output and colour burst, and improve the Tandy features, which was only halfway there.
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 8:03 pm
by remax
Do you plan to add HDD support back soon ?
Cause i don't have the serial cable (and a bit afraid by the voltage level things) and i die to try all of this...
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 8:09 pm
by breiztiger
Floppy is perhaps more simple to implement
There is a lot of booter floppy disk to try
Re: MiSTer PCXT
Posted: Sun Jun 12, 2022 8:26 pm
by Bas
Love to see this thing grow as openly as you are building it. Absolutely +1 on the Tandy. For nostalgia I'd drool over a working Hercules output as well but you do what you deem best. Thank you for the massive effort!
MDA and CGA/Tandy now work at the same time. It is possible to switch from one to the other from the OSD menu, as well as their monochrome simulation independently.
Fixed problem with INT0 test failing
Fixed a bug that caused the timer counter to be cleared on latch.
PCXT DIP switches and access to MDA memory
Add port_b[6] to lock PS/2 CLK.
PS/2 CLK to drop LOW after receiving the key code.
remax wrote: ↑Sun Jun 12, 2022 8:03 pm
Do you plan to add HDD support back soon ?
Cause i don't have the serial cable (and a bit afraid by the voltage level things) and i die to try all of this...
I would like to, but it is not an easy task, and at the moment it is out of my reach. I've mentioned it to @JasonA to see if he can take a look at it, it would certainly make the core more usable for all users.
breiztiger wrote: ↑Sun Jun 12, 2022 8:09 pm
Floppy is perhaps more simple to implement
There is a lot of booter floppy disk to try
It is simpler in principle than IDE, and I actually made a first attempt, but I got stuck with the 16-bit handling in the HPS part of MiSTer:
Bas wrote: ↑Sun Jun 12, 2022 8:26 pm
Love to see this thing grow as openly as you are building it. Absolutely +1 on the Tandy. For nostalgia I'd drool over a working Hercules output as well but you do what you deem best. Thank you for the massive effort!
Yes, Hercules is another interesting option to evaluate in the future
Re: MiSTer PCXT
Posted: Mon Jun 13, 2022 8:55 am
by wark91
Thank you for the new beta !
I found an issue with this beta.
If you set value different "NearNeighbour" of video filter in video processin, the screen becomes black.
Re: MiSTer PCXT
Posted: Mon Jun 13, 2022 10:09 am
by johhenrik
I just want to say that following this thread is absolutly awesome. I love reading your back and forth messages of testing, trying, speculating and fixing things. Thank you!
Re: MiSTer PCXT
Posted: Mon Jun 13, 2022 10:21 am
by jordi
spark2k06 wrote: ↑Mon Jun 13, 2022 4:57 amBeta 0.8
MDA and CGA/Tandy now work at the same time. It is possible to switch from one to the other from the OSD menu, as well as their monochrome simulation independently.
Fixed problem with INT0 test failing
Fixed a bug that caused the timer counter to be cleared on latch.
PCXT DIP switches and access to MDA memory
Add port_b[6] to lock PS/2 CLK.
PS/2 CLK to drop LOW after receiving the key code.
remax wrote: ↑Sun Jun 12, 2022 8:03 pm
Do you plan to add HDD support back soon ?
Cause i don't have the serial cable (and a bit afraid by the voltage level things) and i die to try all of this...
I would like to, but it is not an easy task, and at the moment it is out of my reach. I've mentioned it to @JasonA to see if he can take a look at it, it would certainly make the core more usable for all users.
breiztiger wrote: ↑Sun Jun 12, 2022 8:09 pm
Floppy is perhaps more simple to implement
There is a lot of booter floppy disk to try
It is simpler in principle than IDE, and I actually made a first attempt, but I got stuck with the 16-bit handling in the HPS part of MiSTer:
Bas wrote: ↑Sun Jun 12, 2022 8:26 pm
Love to see this thing grow as openly as you are building it. Absolutely +1 on the Tandy. For nostalgia I'd drool over a working Hercules output as well but you do what you deem best. Thank you for the massive effort!
Yes, Hercules is another interesting option to evaluate in the future
I'm not sure if @sorgelic could take a look on this floppy integration. I guess it would be simple for the author
Re: MiSTer PCXT
Posted: Mon Jun 13, 2022 10:30 am
by spark2k06
jordi wrote: ↑Mon Jun 13, 2022 10:21 am
I'm not sure if @sorgelic could take a look on this floppy integration. I guess it would be simple for the author
Rather, @Sorgelig
Re: MiSTer PCXT
Posted: Mon Jun 13, 2022 1:43 pm
by kitune-san
spark2k06 wrote: ↑Sun Jun 12, 2022 5:28 am
now for the keyboard
I added keybord reset logic.
With this change, the keyboard controller test would pass.