TRH9000 - The Yamaha V9990 based open-source video card for the MSX

Page 4/7
1 | 2 | 3 | | 5 | 6 | 7

By crisag

Resident (39)

crisag's picture

21-09-2022, 20:55

Just fixed the BUSSDIR. As I'm already enabling the VDPR/VDPW using the IOREQ combined to M1 and R/W pins, I just got the result of the VDPR and used to signal BUSSDIR. I hope it is right as it is apparently equivalent to what is documented on the MSX Hardware Technical Handbook (page 35).

Now a question for you all. I got the circuit to superimpose the video from the computer into the video generated by the cartridge/V9990. I need to feed external HSYNC/VSYNC into the V9990 HRESET/VRESET pins to sync and combine external and internal R, G, B using a mux controlled by the /Ys signal.

But we all know the signals I need are not available on the cartridge bus, so we need a way to get the video output from the computer into the cartridge via cable. What is the best way? Another RGB IN connector?

By crisag

Resident (39)

crisag's picture

21-09-2022, 20:58

Also, testing here I noticed that some games keep something on the main MSX screen while V9990 is working to draw stuff on the secondary display. This will cause issues with the superimpose I believe. You will see a ghost image on the combined video. Sad

By sdsnatcher73

Prophet (3663)

sdsnatcher73's picture

21-09-2022, 21:46

crisag wrote:

Just fixed the BUSSDIR. As I'm already enabling the VDPR/VDPW using the IOREQ combined to M1 and R/W pins, I just got the result of the VDPR and used to signal BUSSDIR. I hope it is right as it is apparently equivalent to what is documented on the MSX Hardware Technical Handbook (page 35).

Now a question for you all. I got the circuit to superimpose the video from the computer into the video generated by the cartridge/V9990. I need to feed external HSYNC/VSYNC into the V9990 HRESET/VRESET pins to sync and combine external and internal R, G, B using a mux controlled by the /Ys signal.

But we all know the signals I need are not available on the cartridge bus, so we need a way to get the video output from the computer into the cartridge via cable. What is the best way? Another RGB IN connector?

Yes I thinks VGA RGB IN would work best (composite in for MSX1 would also be nice but probably only NTSC 60Hz is viable), please note that the MSX will not have H/V SYNC but CSYNC so it needs to be split before feeding into V9990. Obviously many older software do not take superimposed V9990+V99x8 into account. So like other MSX with superimpose functionality it’s best to have a toggle to enable/disable it. Possibly even have an option to feed the (V99x8) input directly to the output. You would have:

1. V9990 output only
2. Input straight to output
3. Superimposed input with V9990

It would be nice if software could switch the output mode as well (via I/O ports) or even a BIOS. If we consider that MSX is to be connected to input and monitor to output than option 2 above would be start up mode I guess.

By crisag

Resident (39)

crisag's picture

04-10-2022, 02:22

New update for those of you following the project. I just uploaded to github multiple changes to the circuit and PCB after testing with my prototype. It is already generating video, not with fantastic quality, but with the quality expected for a prototype with wires flying around. Smile

I'm feeding the CSYNC in 15Khz to the LM1980 and it is already separating VSYNC and HSYNC to form the VGA signal. My OSSC is able to detect it just fine, but still low quality. I think it is time to order 5 units from a PCB manufacturer to test the PCB and stop using my ugly prototype.

The basic circuit is working ok, activating the VDP as expected and generating video.

I also started the work to implement superimpose. I'm planning to use the LT1675 RGB Multiplexer to superimpose the video from the MSX to the one generated by the V9990. That will be controlled by a DP3T switch that will allow V9990 only, V9990 bypass or superimposed video.

I'm trying to order a few LT1675 chips to test but so far, no luck. China is in a big holiday, and everything is delayed. Here are two pictures of the current PCB, already with the two connectors in preparation for the superimpose implementation.


By sdsnatcher73

Prophet (3663)

sdsnatcher73's picture

04-10-2022, 06:03

Cool stuff!

By lintweaker

Champion (443)

lintweaker's picture

04-10-2022, 07:43

Very nice progress! I hope you get the superimpose working.
What about the sync signals for the video signal you want to superimpose, can those be connected straight to the V9990?

By crisag

Resident (39)

crisag's picture

04-10-2022, 14:50

lintweaker wrote:

Very nice progress! I hope you get the superimpose working.
What about the sync signals for the video signal you want to superimpose, can those be connected straight to the V9990?

This is my current challenge. From the MSX, I receive R,G,B and CSYNC, but the V9990 superimpose feature needs the VSYNC and HSYNC separated. I'm using one LMH1980 (video sync separator) to separate the CSYNC generated by the V9990 and form the correct VGA output with those signals, but I tested, and I can just output the CSYNC instead. So, one possible solution is redesigning the circuit to reassign the LMH1980 to separate the sync coming from MSX and feed the V9990 with the correct signals, then output just CSYNC on the output RGB connector.

I'm also not fully satisfied with the quality of the output video. Of course, I just tested with the prototype and quality was not a concern with it, that is the reason I'm ordering the first batch of boards to validade. I may go back to the traditional CXA2075 encoder as I already know it. Now I need to wait for the boards and also for the chips I need to test the superimpose.

I will keep updating you all.

By aoineko

Paladin (698)

aoineko's picture

04-10-2022, 17:08

Superimposition is a great feature, but the problem is that not all V9990 cards support it.
Making an application for V9990 is already addressing a limited audience, so if you ask for superimposition, it's even more limited.
Anyway, this is the bonus feature of this card compared to the one still in production so all the better.
And for a game, I would love to be able to use a background image produced by the VDP with the 2 layers of the P1 mode of the V9990 on top.
All the best for this great project.

By crisag

Resident (39)

crisag's picture

05-10-2022, 03:40

Thanks for your comments aoineko. That is one of the reasons the suggestion given by sdsnatcher73 makes total sense. We can control using the switch if superimpose will be enabled or not. Depending on the configuration you make, the card will behave like any standard V9990 based card.

I'm working on the card design here and want to check with you all what is the best connector for the video in. Initially I thought I could use another DB15, but then checking all my MSX computers I see they all use DIN8. Unfortunately, as you all know, they have DIN8 but there is no standard pinout, so using a DIN8 I'll have to adopt one of the pinouts documented [url=https://www.msx.org/wiki/RGB_(8-pin_DIN_45326)]here[/url].

What is the best approach? Keep DB15 and require a custom cable to use the card (DIN8 specific pinout to TRH9000 DB15) or adopt DIN8 with one of the pinouts documented on the above article and require specific cables for the rest of the computers?

By sdsnatcher73

Prophet (3663)

sdsnatcher73's picture

05-10-2022, 07:01

I think you should keep DB15 to keep the cartridge compact. Everyone will need a new cable to connect the DIN8 (or SCART or RGB21) output to TRH9000 anyway. Retrocables.es (or anyone really) can produce and sell them.

Page 4/7
1 | 2 | 3 | | 5 | 6 | 7