VRAM Maps
This page was last modified 02:12, 27 June 2020 by Gdx.

VRAM Map varies depending on the screen mode used. Below are all screen mode available on MSX VDPs.

Screen Mode Type Colours Sprites VDP
Text 1 24 x 40 characters of 6 x 8 2 (4 possible if V99x8) None All VDPs
Text 2 24 x 80 characters of 6 x 8 2 (4 possible if V99x8) None V9938 & V9958
Multicolor Text 24 x 32 characters of 8 x 8 16 (2 per character) Mode 1 All VDPs
Graphic 1 32 x 24 dots 16 Mode 1 All VDPs
Graphic 2 256 x 192 dots 16 (2 each line of a tile) Mode 1 All VDPs
Graphic 3 256 x 192 16 (2 each line of a tile) Mode 2 V9938 & V9958
Graphic 4 256 x 212 16 Mode 2 V9938 & V9958
Graphic 5 512 x 212 4 Mode 2 V9938 & V9958
Graphic 6 512 x 212 16 Mode 2 V9938 & V9958
Graphic 7 256 x 212 256, 12599 or 19268 Mode 2 V9938 & V9958

V9938 & V9958 have a RGB color palette of 512 colors for each color except in graphic 7 mode on MSX2.

These modes are selectable with M1-M5 bits of the control registers 0 and 1 as shown in the following table.

Mode M5 M4 M3 M2 M1
Text 1 0 0 0 0 1
Text 2 0 1 0 0 1
Multi-colour 0 0 0 0 0
Graphic 1 0 0 1 0 0
Graphic 2 0 0 0 1 0
Graphic 3 0 1 0 0 0
Graphic 4 0 1 1 0 0
Graphic 5 1 0 0 0 0
Graphic 6 1 0 1 0 0
Graphic 7 1 1 1 0 0


All MSX1 computers have 16kB of VRAM.
MSX2 computers can have 64kB or 128kB.
MSX2+ and turbo R computers have 128kB.

V9938 and V9958 can support up to 192kB but this extra 64kB is not standardized. Users that added it will only be able to access it with VDP commands.

In most of the time documentation, VRAM is represented like this:

General VRAM map
1FFFFh
64kB upper
0FFFFh
64kB lower Extra 64kB
00000h

This representation is correct but they omit the case of Graphic 6 and 7 modes that can be important in the event of switching from one mode to another without necessarily having to initialize the VRAM.

Indeed MSXs with 128kB VRAM use 4 RAM chips. Two chips are used for 64kB lower and the two other for 64kB upper in all modes up to the graphic 5 mode. In graphic 6 and 7 modes, the chips are used by interleaving the even and odd vertical lines compared to lower screen modes. This configuration slightly speeds up access to VRAM.

Now let's see how the MSXs system uses these VDP's screen modes.

The system can have up to 12 screen modes. These modes use VDP's screen modes as follows.

WIP...