Schrijver
| speeding up that Z80
|
DamageX msx freak Berichten: 168 | Geplaatst: 16 Juni 2006, 07:32   |
How far can you push the original chip? Could an MSX run at 4MHz instead of 3.5MHz? Is the memory access wait-state needed for slow cartridge ROMs or not? I'm thinking about doing a little hardware hacking.
|
|
turbor msx freak Berichten: 179 | Geplaatst: 16 Juni 2006, 09:43   |
There are several articles explaining how to get your MSX(2) running on 6 or 7 MHz, but they all involve replacing the original Z80 with a model that can run at higher speeds. memory access isn't the main problem but time to control the FDC is. The solutions involve switching back to 3.51 MHz when the disk I/O ports are used.
An other problem is the fact that the clockspeed is shared on the msx bus and it can make the other hardware in your cartrdige slots go 'whoopsy', like the Music Module that plays "slightly of-tone"
Since the VDP and the Z80 share the same crystal (actually the Z80 clock is fed from the VDP iirc) you'll have to decouple them and that might have severe impact on your comunication between VDP and Z80....
|
|
jltursan msx professional Berichten: 886 | Geplaatst: 16 Juni 2006, 09:51   |
I think that it could be done till some extent, the Panasonic MSX2+ machines are powered by a Z80 clone (the Toshiba T9769) that can be pushed more than 1.5Mhz (for a total of 5.37) and the I/O and graphical subsystems keeps working without glitches. IIRC the sound suffers a bit; but not a problem at all...
Anyway I'm not a hardware expert so I'm only guessing (a lot  ).
You can find more related info in this thread:
Panasonic FSA1-WX @ 7Mhz with a "&h" ? |
|
turbor msx freak Berichten: 179 | Geplaatst: 16 Juni 2006, 11:35   |
Yes, but in that case the PCB was designed for it to be enabled using I/O ports so they might have placed some extra logical circuits on the board, like the 7MHz kits, to enable this (never saw the schematics, so I'm only guessing).
I assume the original poster wants to use a stock MSX computer and his soldering iron, so he'll have some more trouble getting it all to play nicely together :-)
|
|
msd msx professional Berichten: 615 | Geplaatst: 16 Juni 2006, 12:03   |
As a test I dissconnected the wait output from the engine. This works. Only the vdp in screen 0 can't handle it very good. Still have to solve this, but for the rest it works. Makes it about 10% faster. I've done this test with a 8245. I think the wait is still there because it was already in the msx1 and once they made it they where stuck with it. Ram and rom is not realy a problem, since most of them work on 7.16Mhz too. Timing changes a lot when you remove the wait.
|
|
jltursan msx professional Berichten: 886 | Geplaatst: 16 Juni 2006, 13:16   |
Quote:
| Makes it about 10% faster
|
So due the extra/s wait states the MSX Z80 works at a relative speed of 3.22Mhz and disabling the wait we're only restoring his standard speed...  |
|
rolins msx freak Berichten: 248 | Geplaatst: 16 Juni 2006, 15:13   |
What are be the advantages to overclocking the Z80?
Will games run more smoothly or can it speed up loading times?
|
|
DamageX msx freak Berichten: 168 | Geplaatst: 17 Juni 2006, 10:30   |
cool, removing the wait state worked for me too. I just desoldered pin 24 on the Z80 and added a pull-up resistor. I verified the speed increase is about 10% using a loop in BASIC and also HDSPEED from the Sunrise IDE floppy.
|
|
ARTRAG msx master Berichten: 1737 | Geplaatst: 17 Juni 2006, 10:55   |
in this way any cycle accurate demo and game will crash or get garbled
are you sure you need this extra speed? (I mean nowaday)
|
|
flyguille msx master Berichten: 1223 | Geplaatst: 17 Juni 2006, 20:08   |
I thinks the perfect TURBO system is that one that can be enable/disable by soft using just one OUT(),a instruction.
But also a AUTO mode is nice for loading purposes. Like allowing to handle 1:1 interleave speeds!
|
|
msd msx professional Berichten: 615 | Geplaatst: 18 Juni 2006, 22:44   |
damageX: disconnecting pin 28 is not the way to go. This also means other stuff can't use the wait anymore. I disconnected the wait output from the engine,not the input on the z80.
|
|
DamageX msx freak Berichten: 168 | Geplaatst: 19 Juni 2006, 01:31   |
pin 24... but what other stuff uses the wait? Maybe I'll have to reconnect that later, but I'm not going to try desoldering a pin on the s1985 as those are too small
since I don't have any FDC then maybe I could use a higher clock frequency without problems, and if necessary enable the VDP waitstate on s1985 (which is disabled normally)
|
|
Sonic_aka_T
 msx guru Berichten: 2269 | Geplaatst: 19 Juni 2006, 01:36   |
Why on earth would you want to make your MSX incompatible with loads of software for just a 5-10% increase in speed? Are you running SETI@HOME on your MSX2?  |
|
DamageX msx freak Berichten: 168 | Geplaatst: 19 Juni 2006, 01:43   |
it's already somewhat incompatible, having only DOS 2 and not DOS 1
I just like to make things faster, whether it is MSX, other computers, my car, etc.  |
|
ricbit msx lover Berichten: 116 | Geplaatst: 19 Juni 2006, 02:51   |
I did some tests on the brazilian Expert 1.0, it's not possible to remove the waitstates in this one, the ram chips can't handle the extra speed.
|
|
|
|
|