- Notifications
You must be signed in to change notification settings - Fork0
Tool to watch and set the CPU Clock speed (Z80, R800, Z280)
License
nataliapc/msx_z80bench
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Z80BENCH program allows you to measure and manage your MSX CPU speed.
It has been created with not onlyPanasonic MSX withTurboPana andMSX TurboR machines in mind, but alsoFPGA machinesOCM/MSX++, and MSX based on boards and hardware developments likeTides-Rider andTaka-Nami that allow different CPU speeds.
The measurement is approximate and is based on the number ofVDP interrupts that occur during a test loop inIM1
mode.
This means that for low clock frequencies the precision is higher and as the speed increases the margin of error also increases. But in the range of 3 to 20 MHz this error is practically negligible.
With longer test loops and longer duration, the margin of error would be reduced, but a compromise between precision and usability has been chosen.
The available options vary depending on whichMSX machine you run the program on.
The visual presentation and operation is based on similar programs that were developed for oldPCs underMS-DOS.
- Machine: MSX generation obtained fromBIOS ROM and manufacturer if available obtained fromexpanded I/O ports.
- CPU Type: detection is performed by checking how specific opcodes behave for each CPU.
Z80
,R800
, andZ280
(experimental) are detected. For Z80 it also detects if it's NMOS or CMOS. - CPU Speed: speed calculated by the test loop.
- VDP Type: video chip detection (TMS9918, V9938, V9958). Output frequency is also shown (NTSC/PAL).
The options are only shown if they are detected as possible.
The keys must be held down until you hear a click sound, which is when each of the tests ends and keyboard can be read again.
- F1: ToggleTurboPana CPU speed (3.57MHz, and 5.36MHz).
- F2: CycleTurboR CPU (Z80, R800(ROM), and R800(DRAM)).
- F3: CycleOCM Speed (3.57MHz, 5.36MHz, 4.10MHz, 4.48MHz, 4.90MHz, 5.39MHz, 6.10MHz, 9.96MHz, and 8.06MHz).
- F4: CycleTides-Rider Speed (3.57MHz, 6.66MHz, 10MHz, and 20MHz).
- F6: ToggleNTSC/PAL. CPU Speed may vary slightly when changing this value due to the different interrupts frequency (60/50Hz respectively).
Clock measurement is approximate, and may vary when using external RAM mappers.
The number that appears in the border indicates the number of interrupts (*10e6) that occurred during each iteration of the test loop.
Thank you very much to everyone who has been testing the program so that it could become a reality.
NataliaPC
About
Tool to watch and set the CPU Clock speed (Z80, R800, Z280)