VDP wait examples?

Pagina 1/2
| 2

Door lintweaker

Master (159)

afbeelding van 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?

Aangemeld of registreer om reacties te plaatsen

Van sd_snatcher

Prophet (3092)

afbeelding van 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?

Van Manuel

Ascended (15822)

afbeelding van 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.

Van sd_snatcher

Prophet (3092)

afbeelding van 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.

Van lintweaker

Master (159)

afbeelding van 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.

Van Grauw

Ascended (8515)

afbeelding van Grauw

27-07-2018, 09:57

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

Van lintweaker

Master (159)

afbeelding van 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)

Van Grauw

Ascended (8515)

afbeelding van 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.

Van DamnedAngel

Master (143)

afbeelding van 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.

Van lintweaker

Master (159)

afbeelding van 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.

Van msd

Paragon (1372)

afbeelding van msd

28-07-2018, 15:30

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

Pagina 1/2
| 2