VDP wait examples?

Página 1/2
| 2

Por lintweaker

Master (152)

Imagen del lintweaker

26-07-2018, 16:50

It seems my DIY MSX2+ is in need of a hw VDP wait mechanism.
In screen 0 en 1 I see now letter appearing twice or the wrong ones. For graphical screens I have not (yet) seen any corruption issues.

The Sony G900P WAIT circuit seems like a good candidate to use. Any other examples out there that I can check out?

Login sesión o register para postear comentarios

Por sd_snatcher

Prophet (3044)

Imagen del sd_snatcher

26-07-2018, 22:25

The HB-G900P has a V9938. I wonder why it has a wait circuit like that, since AFAIK this machine has no turbo.

Check the CIEL Expert3 schematics for its V9958 VRAM /WAIT circuit. Notice that you have to enable it by software.

Does your machine have a turbo?

Por Manuel

Ascended (15680)

Imagen del Manuel

26-07-2018, 22:53

I have never heard of the G900P having a wait mechanism. It has a PLL for superimpose (i.e. a genlocker), but that's something else.

Por sd_snatcher

Prophet (3044)

Imagen del sd_snatcher

26-07-2018, 23:19

I also didn't. But once I read lintweaker message, I quickly checked, and the circuit is really there. It's on page-22 of the service manual.

Por lintweaker

Master (152)

Imagen del lintweaker

27-07-2018, 09:11

thanks for the replies. My machine does not have a turbo.
The expert3 uses the VDP /WAIT signal which indeed needs to be enabled via software. I do have the VDP /WAIT line connected. I'll retest to see if it is sufficient to battle VRAM read/write corruption issues. Last time it did not look like it.

Por Grauw

Ascended (8365)

Imagen del Grauw

27-07-2018, 09:57

If there is no turbo, no VDP wait is necessary. Did you implement the standard M1 wait?

Por lintweaker

Master (152)

Imagen del lintweaker

27-07-2018, 11:11

Grauw wrote:

If there is no turbo, no VDP wait is necessary. Did you implement the standard M1 wait?

No, currently no /M1 wait. Can you point me too a example? [Expert3 Z80 - Slots.pdf: MWAIT signal?]

I just did a test with VDP WAIT enabled, it actually works! (still need to check/verfiy the Z80 /WAIT line with a logic analyzer or scope)

Por Grauw

Ascended (8365)

Imagen del Grauw

27-07-2018, 20:36

The M1 wait circuit (part of MSX standard) is described in the Z80 CPU user manual, page 30/31 Memory Speed Control section. Probably the cause of your corruption issues. Without M1 wait some software may have trouble (e.g. demos and stuff with screensplits and audio samples), and some ROM/RAM cartridges may also not work because memory is accessed too quickly during opcode fetch.

Nice to hear the V9958 /WAIT works but it should not be necessary, so it’s hiding the real problem.

Por DamnedAngel

Master (143)

Imagen del DamnedAngel

28-07-2018, 02:40

Lintweaker, I have no knowledge of VDP signals, but I do have an Expert3 with a turbo switch.
I also have an oscilloscope.
Let me know if I can help with anything.

Por lintweaker

Master (152)

Imagen del lintweaker

28-07-2018, 10:02

Guys, thanks for the support!
My machine is build with the idea of using faster SRAMs and Flash so no delays would be needed. I did not take into account the need for delays for original cartridges and software.
I'll play around with /M1 and /MREQ based WAIT circuits to see what the effects are on my DIY machine.

Por msd

Paragon (1372)

Imagen del msd

28-07-2018, 15:30

Memory access will probably not be a problem when not having a m1 cycle.

Página 1/2
| 2