beta 0.7
*
4.77Mhz CPU clock with 33% duty cycle, thanks to @MicroCoreLabs
* Peripheral clock now works at half cpu clock, for correct synchronisation with the
8253 timer, thanks to @kitune-san
* Turbo option is disabled for the moment, requires a redesign of the
BIU... for the to-do list
https://github.com/spark2k06/PCXT_MiSTe ... 09bf6bcd41
kitune-san wrote: ↑Mon Jun 06, 2022 2:34 pm
Does the benchmark use 8253 for the counter?
Perhaps PCLK should be divided by 2 of 4.77 MHz. (2.385MHz)
I was looking at the 8253 datasheet and the PCXT schematic and thought.
That seems to have been the problem. The
CPU was actually running at
4.77Mhz, now the results are more consistent with this same benchmark:
- benchmark.jpg (215.94 KiB) Viewed 6804 times
However, not all benchmarks work correctly, each one will use its own calculation methods and they do not always work correctly. For example, the great
8088MPH demo gives these results at startup:
- 8080MPH.jpg (223.28 KiB) Viewed 6804 times
Of course, this demo cannot be expected to work perfectly for the time being, but it will be a good example for fine-tuning all the details of the core. In fact, many games do not even work properly, for example:
AlleyCat: It freezes, sometimes with a continuous beeping sound. Possibly problems with the timer or interrupts.
Last Mission: The keyboard doesn't work, so you can't start playing. Possibly because of problems with interruptions.
Abadía del crimen: The keyboard doesn't work, so you can't start playing. Possibly because of problems with interruptions.
Solomon's Key: The keyboard doesn't work, so you can't start playing. Possibly because of problems with interruptions.
Centipede: During the game, the ship moves by itself to the left and up, and continuously firing... possibly because of problems with interruptions.
As for the
8088MPH demo, apart from the initial benchmark, the timings initially seem correct and the music from the
PC-Speaker as well, however:
* Sometimes it slows down, then goes back to normal.
* The
CGA part does not display well in cases where the composite video feature is to be used, where at the moment it is not implemented in this core.
* When it gets to the back to the future part, it stops the execution.
In short, numerous problems that will have to be checked.
On the other hand, user
somhi has created a fork for the
SocKit board, and has realised that only the
Rx and
Tx signals are needed to load the
OS via
UART:
https://github.com/somhi/PCXT_SoCkit