No miracles, the idea is the same of dvik's BMP2105, but on MSX2.
do this:
Store in VRAM two alternate tilesets and swap them at each frame setting R3, R4 and R10 (no CPU load)
The blending of the two tilesets leads to
1) 4 colors on each line of 8 pixels
2) the mix of 16 colors leads to 120 unique mixed colors
3) the mix of 512 potential colors leads to 130.816 unique mixed colors
The main advantage is that the tiles swapping costs no CPU time,
so the trick can be used during the game and not only in the title screen.
Moreover this override the scr4 limit on the number of colors per line!
Someone willing to develop a tool ?
Does anyone less lazy than me know the settings for R3,R4,R10 to point to all the valid tile banks in VRAM ?
AFAIK in scr4 the PGT is ruled by R4 that means
0 |0 |A16|A15|A14|A13| 1| 1
that implies the following addresses :
00000h
02000h
04000h
06000h
08000h
0A000h
...
while the PCT is ruled by R3 and R10 where
R3 = A13| 1| 1| 1| 1| 1| 1 | 1|
R10 = 0|...| 0|A16|A15|A14|
that implies the following addresses :
00000h
02000h
04000h
06000h
08000h
0A000h
...
The idea could be implemnted in the interrupt routine :
at ints odd set:
R4 = 3;
R3 = 255;
R10 = 0;
i.e.
PGT =0;
PCT = 2000h;
at ints even set:
R4 = 11;
R3 = 255;
R10 =1;
i.e.
PGT = 4000;
PCT = 6000h;
Easy, anyone willng to test this?