First actual SPI RAM tests now pass, the screenshot below and the attached example program demonstrates it. The entire image is fetched from SPI RAM and RAM at 4bpp, still having an inline mixer (234 cycles). 12 bytes of RAM is necessary to produce a line.
The video mode is on my fork of the Uzebox repo (Mode 748). The image was generated by my image quantizer which I modified to produce images suitable for use with Uzebox.
The total image size is 20736 bytes (192 x 216 @ 4bpp). Of this, 18144 bytes are in SPI RAM, 2592 bytes in RAM.
The video mode has Mode 74's normal tiled variant (192 ROM tiles + 64 RAM tiles) for game content (tested, works), a little simplified. For SPI RAM, it has the following options:
- 192 pixels wide 4bpp, needs 96 VRAM bytes / tile row (this is demonstrated now).
- 192 pixels wide 3bpp, no RAM requirements (still buggy).
- 384 pixels wide 1bpp with 96 VRAM bytes / tile row (foreground / background color for each 8x8 tile) (untested).
- 384 pixels wide 1bpp with no RAM usage (global foreground / background colors) (untested)