okay, note for later #ndsdev: you don't *need* texture palette to use textured 3D, because there's a "direct 15+alpha" texture format (aka GL_RGB), so just one VRAM bank mapped as VRAM_*_TEXTURE is enough.

https://github.com/devkitPro/nds-examples/blob/master/Graphics/3D/Textured_Cube/source/main.cpp#L143

Note from the sidequest: the 4000240h and friends registers used by vramSetBank* will assign different meaning to the same numerical value, sometimes. For VRAM_E, the value 4 is for "extended palette", but on VRAM_C, it means "BG, bottom"

https://problemkaputt.de/gbatek.htm#dsmemorycontrolvram

nds-examples/Graphics/3D/Textured_Cube/source/main.cpp at master · devkitPro/nds-examples

Examples for Nintendo DS using devkitARM, calico, libnds, libdvm, maxmod, dswifi - devkitPro/nds-examples

GitHub