Discrepancy between OpenMSX and real hardware (color palette change)

صفحة 1/3
| 2 | 3

بواسطة santiontanon

Paragon (1805)

صورة santiontanon

17-04-2018, 03:27

Hi!

I Was watching this video on Youtube ( https://www.youtube.com/watch?v=GHjpNPUUH8Y ) [in Spanish, sorry], and starting at 10:05, there is something interesting. Pipagerardo was writing a program that in an MSX2 changed the color palette to display an image. He assumed that the code to change the color palette would have no effect on an MSX1, so he left it there. When running it in OpenMSX, that's what he observed. So, he decided to try it on a real MSX1 (Philips VG8020), and to his surprise (and mine), the colors were all wrong! (you can see on 13:04 how it runs on a real MSX1, while in OpenMSX it looks like shown in 9:27)

I haven't tried this myself, but just wondering if this was a known thing (at least I didn't know about it :))

Login أوregister لوضع تعليقاتك

بواسطة Vampier

Prophet (2412)

صورة Vampier

17-04-2018, 18:36

this is weird indeed

بواسطة l_oliveira

Hero (534)

صورة l_oliveira

17-04-2018, 18:38

Hi there, santi. As we talked on the IRC, here's some links where stuff related to this are discussed on OpenMSX development:

https://github.com/openMSX/openMSX/issues/794
https://github.com/openMSX/openMSX/issues/1024

بواسطة l_oliveira

Hero (534)

صورة l_oliveira

17-04-2018, 22:00

I retract what I said about palettes. After a chat with Quibus at OpenMSX IRC, I watched the video. I understand he was trying to write into the V9938 palete registers on a VG8020 computer with TMS9929 VDP. It doesn't have those registers and any writes to those I/O ports will end into the first two I/O ports (98h and 99h). So the problem is that the palette writes are actually corrupting the TMS9929 registers due to I/O port mirroring.

بواسطة Grauw

Ascended (10767)

صورة Grauw

17-04-2018, 22:10

So if it’s mirroring then it should be easy to fix in the emulator… Smile.

Pipagerardo should also be aware that writing to registers 8 and up mirrors on some versions of the MSX1 VDP, and does not mirror on others.

Here’s some VDP detection code, so he can also support the palette on those Yamaha MSX1 computers with V9938 (like the CX5MII).

بواسطة Manuel

Ascended (19462)

صورة Manuel

17-04-2018, 22:50

Except that it is already implemented... so, if the guy of that video used a clean install without modifications, it should already have been in. I implemented it on May 21 2014.

بواسطة santiontanon

Paragon (1805)

صورة santiontanon

17-04-2018, 23:56

I'll double check with him which version of OpenMSX he was using. I naively assumed he was using the latest one, but I actually do not know Smile

بواسطة FiXato

Scribe (1742)

صورة FiXato

18-04-2018, 01:15

Looking at the openMSX title bar at https://youtu.be/GHjpNPUUH8Y?t=572 (9:32) it looks like he's using openMSX 0.14.0, which would be from August 2017.

بواسطة Manuel

Ascended (19462)

صورة Manuel

18-04-2018, 13:40

If the author can send me the ROM file, I can investigate this.

بواسطة santiontanon

Paragon (1805)

صورة santiontanon

18-04-2018, 15:39

Thanks Manuel! I'll ask Pipagerardo if he minds sharing the ROM

بواسطة santiontanon

Paragon (1805)

صورة santiontanon

18-04-2018, 16:41

Gerardo just told me via twitter that he emailed you the files via email Manuel Smile

صفحة 1/3
| 2 | 3