7MHz shenanigans

By Meits

Scribe (6047)

Аватар пользователя Meits

09-10-2020, 22:07

Ever since the mod existed it has been a known game breaker when it comes to music chips.
I was reminded to this when I switched on my 7MHz computer a while ago. It was horrible Big smile

Back in the day there was a fix by putting an oscillator on the cartridge and by that giving it its own clock. The pitch would become normal again at 7MHz but here and there some notes would miss something of its envelope. Those oscillators are hard to find today. And for some (me included) it would mean a lot of work.

So I decided to put a constant 3.5MHz clock on the cartridge slots in order to be rid of it forever. This was an easy task. When building in the 7MHz board, pin 3 of the VDP gets cut off. That's where the 3.5MHz comes from. So that signal goes nowhere anymore. Putting a line between that VDP pin 3 and pin 42 of the cartridge slot (after isolating that pin from the rest of the board) was enough to make me very happy.

Reading around here on the forums made me find it only once and the "trick" was not adviced. I consulted two highly regarded hardware gurus and they were both very much in favour of having 3.5MHz on the slots exclusively. So I kept it like it is.

But then!
This 7MHz computer is my crazy Tweety machine (check pic and you know enough). There is a MegaflashROM SCC 1.0 with a 512K flashrom. Those flash carts that require you to destroy an original Konami game. The cartridge is in the internal 4+2 slot expander and has a switch on the front of the computer, so its place is nice and final.
It did occur to me that there were strange hickups in the SCC audio on both 3.5MHz and 7MHz while the Toshiba MSX Audio and the Panasonic FM-PAC just played as expected. I suspected the flashcart so I swapped it with another wasted Konami cartridge to find out the hickups were there as well. Then there was the "how about the voltages, pull out those other cartridges" test. No such luck. Then I connected this slot expander to another 8250 and the hickups were gone. I decided to put the cartridge in the slot in which the slot expander goes and it was just great. But this was not a solution.

There were two situations now: 1) 3.5MHz with SCC hickups and 2) 7.5MHz with SCC hickups + distorted PSG.
Thinking out loud to a hardware guru I decided to make this 7MHz slot fix switchable. This was found to be unlikely (the slot gets its 3.5MHz, be it from another source, but so does the Modulon slot expander), but I tried it anyway. And guess what. At 3.5MHz I can switch between a hickup SCC and a clean SCC at 3.5MHz and a hickup SCC with good pitch and a totally distorted and pitch up SCC at 7MHz. So in that rare case I might play a game which supports SCC I've to do with 3.5MHz and the 7MHz fix switched off (in other words: get the same frequency elsewhere).

I do accept this situation as one big pile of humour and I don't necessarily want/need to change it... Though it tickles me a bit that there's a difference between 3.5MHz A and 3.5MHz B.

Having said that... Have a good weekend.

Для того, чтобы оставить комментарий, необходимо регистрация или !login

By Pentarou

Champion (290)

Аватар пользователя Pentarou

10-10-2020, 00:21

You are doing it wrong.
Have the Z80 and RAM (needs static RAM) run @ 7MHZ and let the rest of the system run at the normal clock == Fast CPU without audio distortion for both the PSG and SCC.

By lintweaker

Champion (313)

Аватар пользователя lintweaker

10-10-2020, 08:47

Pentarou wrote:

You are doing it wrong.
Have the Z80 and RAM (needs static RAM) run @ 7MHZ and let the rest of the system run at the normal clock == Fast CPU without audio distortion for both the PSG and SCC.

If I understand your suggestion right it means the CPU is always running @7MHz. This can get you in trouble with too fast IO access (e.g. VDP) and floppy drive (If still in use).

By sd_snatcher

Prophet (3367)

Аватар пользователя sd_snatcher

10-10-2020, 15:17

@Meits

You forgot to mention the most important part: What machine are you using? Smile

By Meits

Scribe (6047)

Аватар пользователя Meits

10-10-2020, 15:43

It's an NMS 8250,

By sd_snatcher

Prophet (3367)

Аватар пользователя sd_snatcher

10-10-2020, 15:56

Ok. It's a wild guess, but if you changed the CPU to CMOS, try to change the RN104 to 4K7.

By Pentarou

Champion (290)

Аватар пользователя Pentarou

10-10-2020, 16:32

lintweaker wrote:

If I understand your suggestion right it means the CPU is always running @7MHz. This can get you in trouble with too fast IO access (e.g. VDP) and floppy drive (If still in use).

Super turbo circuit has inputs for I/O slowdown, so the CPU is running at full speed only when accessing RAM/ROM (or VDP with !WAIT). Other devices keep working at the normal clock (3.5) and not going crazy.

By lintweaker

Champion (313)

Аватар пользователя lintweaker

10-10-2020, 16:52

Pentarou wrote:

Super turbo circuit has inputs for I/O slowdown, so the CPU is running at full speed only when accessing RAM/ROM (or VDP with !WAIT). Other devices keep working at the normal clock (3.5) and not going crazy.

Ah yes, I makes sense that 'normal I/O slowdown' was meant. With VDP /WAIT you can prevent a bit more slowdown but the normal I/O slowdowns are really needed (too bad).

By Meits

Scribe (6047)

Аватар пользователя Meits

10-10-2020, 17:04

sd_snatcher wrote:

Ok. It's a wild guess, but if you changed the CPU to CMOS, try to change the RN104 to 4K7.

It's just a regular Z80H CPU.