Please propose right and complete explanation of the registers 13, 8 and 12.
If I will write software which manages mouse and light pen through VDP, will we consider than MSX now supports pen and mouse through VDP? It is for sure that machines based on V9958 do not support these devices because these pins are simply removed. In V9938 they are still present...
What do you mean about mouse and light pen support?
AFAIK no msx2 has ever used the V9938 to support the mouse.
All the real solutions I know use the i/o ports in the ay-8910.
Great work, it's the best MSX VDP reference I've seen so far.
Not sure if it was already pointed out, but on page 60, the table with addresses is with the final 2 addresses wrong: it is 27134 and 27135, should be 54270 and 54271, as 256x192 = 54272.
Probably copied from the table from page 48, which uses half the bits per pixel (4 instead of 8), leading to half the memory space.
It's easier to understand than the original Yamaha V9938 manual. The document is well organized and has a hyperlinked index. It's quicker for querying things.
Congratulations for the author and thanks for sharing it.
256x192 = 54272
I mean 256x212 = 54272
The effect of the TP bit on sprites has an error in section 5.2.4. Sprite color table (SM2) (page 103).
In SPRITE MODE 2 (SM2) the sprite color table specifies sprite colors for each sprite line. Note that sprite color 0 (i.e. the dots having “0” for them in sprite pattern generator table) is transparent unless TP bit of register R#8 is set. Each entry also defines sprite priority, collision detection, and early clock sprite display options.
The part I struck through in the quote above should be removed. The dots with 0 in the sprite pattern are always transparent and do not have a color code. The value of TP does not affect them. The color of the dots with 1 in the pattern is specified by the sprite attributes. When the sprite color attribute is 0, the TP flag determines whether these dots are transparent or opaque.
See posts here for reference.
Functions codes also have errors.
Dolphin101546015 can you be more specific?
There is an error also on page 56, it says that gor G6 the R#2 seeting of A16 is bit 7 = 0, bit 6 = A16 and bits 5 to 0 = 1, where the Yamaha documentation (and the real thing behavior) is bit 7 and bit 6 = 0, bit 5 = A16 and bits 4 to 0 = 1
It ends up that page 58 has an error in its title, it is saying example of VRAM allocation for GRAPHICS 4 mode, it should be GRAPHICS 6 mode
Those are the two I remember finding...
When I write PAINT, I found wrong function codes for SEARCH or POINT (Dont remember actualy, coz not using manual anymore).
But I'm ready show my own codes functions list.