Snes Debugger
Moderator: Moderators
Forum rules
- For making cartridges of your Super NES games, see Reproduction.
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Snes Debugger
Is there an emulator/debugger that lets you view WRAM as if it is tiles?
Re: Snes Debugger
Just so I understand the use case when I make the feature request: This is for stuff that you're decompressing or software-rendering to WRAM before DMAing to VRAM, right?
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
At the moment I'm reverse engineering other games to learn from them. To which I have functions that I suspect are decoding data to WRAM to then be sent to VRAM as a batch. Which I would like to look at and test.
The use case you mention is also a really really handy thing to have that would be nice for when I get to doing it my self as well
Another feature that would be super nice, is the ability to set OAM settings from a place in VRAM. I.e normally you update a mirror then DMA blat it to PPU. Being able to say "This data here is Sprites x,y etc etc" and then see it rendered, so you can track the code that moves the sprites and see it update as it moves rather than wait for the final updates to be DMA'd would be nice as well.
The use case you mention is also a really really handy thing to have that would be nice for when I get to doing it my self as well
Another feature that would be super nice, is the ability to set OAM settings from a place in VRAM. I.e normally you update a mirror then DMA blat it to PPU. Being able to say "This data here is Sprites x,y etc etc" and then see it rendered, so you can track the code that moves the sprites and see it update as it moves rather than wait for the final updates to be DMA'd would be nice as well.
Re: Snes Debugger
no$sns has some good tools for monitoring the VRAM, but generally the debugger is really unintuitive to use.
Last edited by Sumez on Tue Apr 17, 2018 2:52 pm, edited 1 time in total.
Re: Snes Debugger
bsnes+ has it as of sometime last year courtesy of undisbeliever. I don’t think it’s included in any binary release yet unfortunately.
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
Ok so I set up a Win7 VM to install MingDW and QT at the right versions, would be nice if the "instructions" told me the exact right setup before I had to install, realize it was wrong and then reinstall stuff
However I can't not see a way to view WRAM as tiles. Its a lot better than the debugger version I had before.
Is there some special option I'm missing?
exe and required DLLs are here http://cloud.cbm8bit.com/oziphantom/BSN ... _04_18.zip in case anybody else needs a windows build.
However I can't not see a way to view WRAM as tiles. Its a lot better than the debugger version I had before.
Is there some special option I'm missing?
exe and required DLLs are here http://cloud.cbm8bit.com/oziphantom/BSN ... _04_18.zip in case anybody else needs a windows build.
-
- Posts: 611
- Joined: Mon Jan 23, 2006 7:47 am
- Location: Germany
- Contact:
Re: Snes Debugger
vSNES can view VRAM, WRAM and the cartridge. Load e.g. a SNES9x 1.43 or ZSNES savestate, then enable memory viewer and palette viewer.
My current setup:
Super Famicom ("2/1/3" SNS-CPU-GPM-02) → SCART → OSSC → StarTech USB3HDCAP → AmaRecTV 3.10
Super Famicom ("2/1/3" SNS-CPU-GPM-02) → SCART → OSSC → StarTech USB3HDCAP → AmaRecTV 3.10
Re: Snes Debugger
Hmm, maybe the feature isn’t even merged into master then! If it is, there should be a “source” drop down which you can set to “S-CPU Bus” and view WRAM at 7e0000-...Oziphantom wrote:Ok so I set up a Win7 VM to install MingDW and QT at the right versions, would be nice if the "instructions" told me the exact right setup before I had to install, realize it was wrong and then reinstall stuff
However I can't not see a way to view WRAM as tiles. Its a lot better than the debugger version I had before.
Is there some special option I'm missing?
If not, try my fork in which several semi-recent additions from various contributors are merged into master: https://github.com/Optiroc/bsnes-plus
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
My version is still called "Video RAM Viewer" and it doesn't even have a width/export BPP is on radials etc.
I will try your code thanks.
I did think about now that I have a Win95 VM, using ZSnes debugger and then save state to get vSNES/BGMAPPER to be able to look at things
I will try your code thanks.
I did think about now that I have a Win95 VM, using ZSnes debugger and then save state to get vSNES/BGMAPPER to be able to look at things
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
Optiroc your code doesn't compile on Qt4. <QtWidgets> is a Qt 5 thing, Qt4 needs <QtGui>..
Do I need to update to QT5 for yours?
edit : I see in your Fork it is listed as QT5/macOS ...
Do I need to update to QT5 for yours?
edit : I see in your Fork it is listed as QT5/macOS ...
Re: Snes Debugger
The most recent additions to the PPU debugger haven't actually been merged into the master branch yet. It's one of the few things left for the upcoming official release that I'm planning to take care of sometime this month.
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
With any luck I might get this to build before then...
When I told QT 5 ( which takes forever and a day to install ) that I also need the WebView component, it managed to remove QT in the process of adding it. So now I'm getting it to install another version of QT5 in the hopes that will put it back. Its only taken 4hrs and its still downloading stuff...
When I told QT 5 ( which takes forever and a day to install ) that I also need the WebView component, it managed to remove QT in the process of adding it. So now I'm getting it to install another version of QT5 in the hopes that will put it back. Its only taken 4hrs and its still downloading stuff...
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
So it finished downloading, and it doesn't built.
Again it can't find the QWebEngine view. I have the QT WebEngine ticked in the QT select components. Is there something else I need as well? I looked up the source for it on the web and it has a "how to build on windows" -> takes you to an empty non-existant page. Looking at the dependencies on Ubuntu, YACC/Bison those and windows don't get on, I know from VICE, basically VICE just puts in the magic files that it would build on linux for the windows build. Sadly they stopped doing it.
Is the QWebEngine in a specific version that has been depreciated and renamed?? I'm using QT 5.10.1
What do you use it for even?
Again it can't find the QWebEngine view. I have the QT WebEngine ticked in the QT select components. Is there something else I need as well? I looked up the source for it on the web and it has a "how to build on windows" -> takes you to an empty non-existant page. Looking at the dependencies on Ubuntu, YACC/Bison those and windows don't get on, I know from VICE, basically VICE just puts in the magic files that it would build on linux for the windows build. Sadly they stopped doing it.
Is the QWebEngine in a specific version that has been depreciated and renamed?? I'm using QT 5.10.1
What do you use it for even?
Re: Snes Debugger
Oh, yeah, sorry to put you through all this pain!Oziphantom wrote: Is the QWebEngine in a specific version that has been depreciated and renamed?? I'm using QT 5.10.1
What do you use it for even?
I use a WebEngine view as a quick (and dirty) way to get a fast asynchronous log view in the debugger. I’d love to drop in a leaner solution that can make its way upstream... The reason I needed it fast and threaded is that I have some optional logging done during game play, and the standard views completely ruins performance.
EDIT: And to answer your question, it is the Chromium based QtWebEngine that is used. A lean, mean, 300 megs or so library...
-
- Posts: 1565
- Joined: Tue Feb 07, 2017 2:03 am
Re: Snes Debugger
QT only uses Cromeiumn.
Which version of QT 5 do you use? 5.?
as the issue may be that the API and filenames have changed between versions and that is the issue...
Which version of QT 5 do you use? 5.?
as the issue may be that the API and filenames have changed between versions and that is the issue...