...double image with preshift
Hi guys, I'm doing some experiments with v9990 and openmsx, but so far no success.
I already know how to show all v9990 registers values with console command "v9990regs", but I cannot see/modify the V9990 VRAM, it looks like the "vpoke"/"vpeek" commands refer to the main VDP, not the V9990.
Is there a way to inspect V9990 VRAM in openmsx?
In the Debuggable viewer, you have:
- Sunrise GF9000 VRAM
- Sunrise GF9000 palette
- Sunrise GF9000 regs
But I think they are read-only.
i would expect all debuggables to be read/write. In the background (and on the command line) this just uses the 'debug' command. So, that's the low level debug command. It comes with some documentation.
The "vpeek" and "vpoke" commands indeed work on the main VDP. Under the hood these commands operate on the "VRAM" debuggable. (See in your openMSX installation in the share/scripts/_vdp.tcl file around line 140).
Like aoineko already said, the corresponding debuggable for the V9990 is called "Sunrise GFX9000 VRAM". You can read/write to this debuggable via commands like:
debug read "Sunrise GFX9000 VRAM" 0x12345 debug write "Sunrise GFX9000 VRAM" 0x12345 0xab
Or if you need this often, you could define your own helper procs similar to the existing "vpeek"/"vpoke" procs:
proc v9peek {addr} { debug read "Sunrise GFX9000 VRAM" $addr } proc v9poke {addr val} { debug write "Sunrise GFX9000 VRAM" $addr $val }
Or (like aoineko says) you could inspect the "Sunrise GFX9000 VRAM" debuggable in the openmsx-debugger "Debuggable viewer". I'm not sure if that view is read-only, or if it also allows to change the content.
Is there a way to visualize the V9990 VRAM as bitmap?
To my knowledge, this is not possible in OpenMSX.
For my tests in P1 mode, I made a debug function to switch temporarily to B1 mode (4bpp/256x4096) and thus to be able to visualize the VRAM content (with keys to scroll vertically).