MSX3 is Controversial?

ページ 11/11
4 | 5 | 6 | 7 | 8 | 9 | 10 |

By gdx

Enlighted (6102)

gdx さんの画像

07-01-2023, 12:47

Quote:

your assertions make no sense here. Here we are not discussing if v9990 was or not designed for msx.

This is you that say V9938 and v9958 are too much different from the V9990. I say that because you compare them. I have the impression that you are contradicting just to contradict.

By PingPong

Prophet (4093)

PingPong さんの画像

07-01-2023, 13:44

gdx wrote:
Quote:

your assertions make no sense here. Here we are not discussing if v9990 was or not designed for msx.

This is you that say V9938 and v9958 are too much different from the V9990. I say that because you compare them. I have the impression that you are contradicting just to contradict.

No, i said that V99x8 and V9990 are too much different. If i wrote V9938 as different from v9958 is clearly my lapsus. The V9958 is basically the V9938 improved a little.
And from my comparison even with a mispelled chip name , it was clear that i compared V99x8 with V9990. not the V9938 and V9958.
As for contradict it is clear that i contradict you. You state that V9978 had v9958 core inside.
I'm not of the same idea so when you post your rationale i post my also.
It's not for contradicting. Its a discussion on different point of view... ;-)

By ducasp

Paladin (677)

ducasp さんの画像

07-01-2023, 14:54

PingPong wrote:
Quote:

My take is that performance, as long it is not worse, would be OK to not be the same, so, 9978 would have blocks dedicated to 9958 functionality that would work faster but not visible for most applications that would wait vsync or cpu. This could and would break demos using it to the limit, possibly, but that's not the end of the world.

there are not only demos that would have broken. Even game code that work heavily on vdp cmd engine and rely on its speed would have been affected and messed up.

To me the issue of leave or remove the v9958 core is simply a no-issue because the more i think the more i'm got persuaded by the fact that V9978 or V9990 did not share even a single transistor with v9958 or v9938. So there was no need to remove anything. ;-)

Why? Commands if faster will be finished by the time program assumed it to be, or, if polling registers, it will be hanging polling it... Whatever is done to the screen is usually contained within a vertical interrupt anyways... That is why even though ocm 9958 implementation is far from being accurate regarding execution times most stuff run just fine as it is faster, and most stuff that doesn't run fine is not because of extra speed but because of flaws in the sprite and horizontal interrupt engine causing extra stuff to be drawn when it shouldn't Wink

By PingPong

Prophet (4093)

PingPong さんの画像

07-01-2023, 15:56

That's only theory . unfortunately, there are some bad coded games that simply execute commands without any synchronization at vblank and they rely on vdp command speed.
Have you ever seen some (expecially zx spectrum port) games where the PSG music should be driven by vblank interrupt and when run under Turbo Machines the music speed also accelerate.
This should not happen as the VBlank interrupt is always the same 50 or 60 Hz. However, music "speed" is affected by cpu speed even if screen frequency is the same!

By Pokun

Expert (66)

Pokun さんの画像

09-01-2023, 02:39

PingPong][quote wrote:
Quote:

NEC and Hudson's SuperGrafx worked like this by having two video chips and an extra chip that handles priority of the two chips for different regions of the screen that can be designated.

Can you provide more information about this? Year of production chip model number etc?

For those that don't know, the SuperGrafx (released 1989) is an upgraded (but ill-fated) variant of the NEC and Hudson's PC-Engine (released 1987) video game console. The PC-Engine uses two Hudson video chips: the VCE (HuC6260, Video Color Encoder) for handling a few things like color and final video output, and the VDC (HuC6270, Video Display Controller) for everything else. The SuperGrafx is almost the exact same thing (and has a compatibility mode where it acts like a normal PC-Engine) but it uses two VDC chips and twice the total VRAM. It also adds another Hudson chip: the VPC (HuC6202, Video Priority Controller) which manages a pixel-based priority of the two VDC layers using two windows and also combines the video output of both chips to the TV. Having two VDCs effectively means doubling the background layers (to 2!) and sprites (to 32 sprites/scanline and 128 sprites/frame if combining sprites from both chips).

Detailed development documents for the VDC and VCE can be found on the internet, but I've yet to see dev docs of the VPC.
Here (the VDC is very clearly inspired by the TMS9918): https://archive.org/details/PCEDev/HuC6270%20-%20CMOS%20Vide...

By PingPong

Prophet (4093)

PingPong さんの画像

09-01-2023, 14:08

thx, its a very insteresting chip. I will take a look more in depth, but as far i can understand it is basically two vdc chips in one physical silicon with extra chips to glue them togheter.

I suspect yamaha did not take this approach for v9990 but for V9938 too. I mean :
when developing v9938 yamaha could have put 2 different core chips (one for tms compatibility the other for msx2 features , working very differently and used alternatively), but i do not think they choosed this way. They instead tryed to stretch the original TMS features to accomodate msx2 video modes and sprites. I'm pretty sure that there is only a single vdp core on V9938 with the least changes needed to achieve msx2 features. (An example of this is the sprite engine, modified as little as possible, they only changed how the color byte was readed in moving from sat to 512 bytes before the begin of sat itself, achieving limited multicolor sprites)

By Pokun

Expert (66)

Pokun さんの画像

10-01-2023, 02:43

No not on the same silicon. The SuperGrafx uses the exact same chips as a normal PC-Engine only two of the VDC chips and each VDC has its own 64 kB VRAM (128 kB total VRAM) which is not shared with the other chip (a normal PC-Engine has 64 kB VRAM for its single VDC). The VPC is not just glue logic but also has some advanced features (priority windows). The SuperGrafx was nowhere near being the 16-bit sequel to the PC-Engine it was first announced to be and was released quite quietly as a premium model with some exclusive games that takes advantage of the new features (only 7 exclusive games were released).

But I mean, even without a chip like the VPC you should be able to combine the outputs of two video signals using logic, just so that you get an additional graphics layer.
The TMS9918 (but not TMS9928) even has an external video pin which allows underlaying a second video source instead of its backdrop color, and thereby creating a second graphics layer.
Updating both VDPs requires more vblank time though I guess.

By PingPong

Prophet (4093)

PingPong さんの画像

10-01-2023, 13:22

if they are separate chips i do not see much difference if the MSX3 had V9958 + V9990 as discrete parts.
on msx there is no VPC counterpart but the same can be achieved with superimposing.

By Pokun

Expert (66)

Pokun さんの画像

10-01-2023, 16:38

That's like exactly what I've been saying.

By mars2000you

Enlighted (6430)

mars2000you さんの画像

10-01-2023, 18:44

PingPong wrote:

thx, its a very insteresting chip. I will take a look more in depth, but as far i can understand it is basically two vdc chips in one physical silicon with extra chips to glue them togheter.

I suspect yamaha did not take this approach for v9990 but for V9938 too. I mean :
when developing v9938 yamaha could have put 2 different core chips (one for tms compatibility the other for msx2 features , working very differently and used alternatively), but i do not think they choosed this way. They instead tryed to stretch the original TMS features to accomodate msx2 video modes and sprites. I'm pretty sure that there is only a single vdp core on V9938 with the least changes needed to achieve msx2 features. (An example of this is the sprite engine, modified as little as possible, they only changed how the color byte was readed in moving from sat to 512 bytes before the begin of sat itself, achieving limited multicolor sprites)

The only known MSX case where Yamaha combined 2 video chips is the NTT Captain Multi-Station : V9938 + V99C37-F, for which the technical details are still impossible to find. Maybe it could have been a base to combine V9958 + V9990, but it seems that Yamaha was not interested to go in this direction, and only Kay Nishi will succeed to do that after so many years.

ページ 11/11
4 | 5 | 6 | 7 | 8 | 9 | 10 |