Feedback from ROM Hackers please

Dejap's website appears to be defunct. This forum is now in archive mode.

Moderator: Dejap Staff

Locked

Do you use the effective address display option in ZSNES' debugger?

Yes I do
1
6%
I don't, and wouldn't use it even improved
0
No votes
I'd like to use it if it was improved
2
13%
I don't use ZSNES' debugger
13
81%
 
Total votes: 16

Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Feedback from ROM Hackers please

Post by Nach »

For those of you who use ZSNES' debugger for ROM hacking, please vote.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Nightcrawler
Romhacking God
Posts: 922
Joined: Wed Jul 28, 2004 11:27 pm
Contact:

Post by Nightcrawler »

I think most people don't use the ZSNES debugger anymore since it was frozen in time and better solutions became available.

Beyond that, I don't remember that option anymore, but I think I'd say yes to effective address reporting. I assume this option gives the effective address operated on for instructions that don't explicity use a full 24-bit address? If that's the case, that's extremley useful.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
Louis Cypher
Devil Summoner
Posts: 232
Joined: Fri Jul 30, 2004 3:46 pm
Contact:

Post by Louis Cypher »

ZSNES has a debugger? Oh wait, ZSNES DOS, right - I stopped using that as soon as Geiger's SNES9X debugger became available. It was only useful for stepping through code anyway.
[url=http://agtp.romhack.net]Aeon Genesis ~ We eat ham and jam and spam-alot[/url]
SamB
ZSNES Developer
ZSNES Developer
Posts: 8
Joined: Sun Jul 02, 2006 8:59 pm

Post by SamB »

Nightcrawler wrote:I assume this option gives the effective address operated on for instructions that don't explicity use a full 24-bit address? If that's the case, that's extremley useful.
Well, that is certainly what it is supposed to do, but it is actually very buggy at the moment.
Louis Cypher wrote:ZSNES has a debugger? Oh wait, ZSNES DOS, right - I stopped using that as soon as Geiger's SNES9X debugger became available. It was only useful for stepping through code anyway.
I'm actually porting the debugger so it will work on Linux and Windows as well (and be written in C and not ASM), and I couldn't help but notice that the effective address calculation code in the old debugger is really messed up, especially after talking to byuu about it. So, I wanted to see if anyone would care if I just left it out (pagefault didn't, and so far he seems to be my only user).

I have to admit that, at the moment, the debugger does seem to be pretty useless for much more than single stepping (you *can* set breakpoints in both 65816 and SPC code, sort of. Though really it is more of a "run to here" command than a breakpoint). I hope to fix this after ditching the DOS code, so that you can set multiple break conditions of various types, maybe even adding the ability to break on access to a given address, though I wouldn't count on it. (Though I suppose it probably isn't that much more difficult than calculating effective addresses properly.)

What I have so far is available from SVN (if you want to build with the old DOS debugger, you can do "make -f makefile.ms PLATFORM=dos DEBUG=yes OLDDEBUGGER=yes", though you will need the "unix curses emulator" from the DJGPP zip picker either way. note that the old debugger could be disappearing any time now...)

I wonder if anyone but pagefault will care?
Nightcrawler
Romhacking God
Posts: 922
Joined: Wed Jul 28, 2004 11:27 pm
Contact:

Post by Nightcrawler »

If the idea is to bring the ZSNES debugger up to speed to be a viable alternative to use, then I'd say yes, people will care. If you're only enhancing it for the ZSNES team to use, then probably not many will as they will continue to use Geiger's or BSNES debuggers which are far beyond the ZSNES Debugger.

To expand on why effective addresses are useful to ROM hackers, that's basically what we do. Take some known RAM or ROM locations and reverse engineer how the data got there and/or what's being done with it. I'm constantly scanning for addresses. I want to know when something was stored in 7e:2345 whether it was done via a sta $7e2345 instruction or a sta $22 instruction which relies on the databank and page registers.

Geiger's and BSNES both handle this very well. So, I'd say it depends on what your goal is with the debugger. If you only want to target ZSNES devs, that's one thing, but if you intend on trying to enhance the ZSNES debugger to be useful and worthwhile again, I'd say you'd have to make something with features comparable with the other debuggers I mentioned before people would switch to ZSNES as an alternative.

Effective addressing is a must if you're going in that direction in my opinion.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

Btw. the debugger wouldn't use the current GUI, right? So it would have to create additional windows to show all that data. Are you going to use SDL for that, or platform-specific code (WinApi etc.)? Just curious.

</offtopic>
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
grinvader
ZSNES Shake Shake Prinny
Posts: 5632
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Post by grinvader »

SDL port uses curses, win/dos just uses a terminal... the code is in C, so anyone more experienced on multiple-windows projects can try to help and add onto it so it turns into a debugger worthy of use.
皆黙って俺について来い!!

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

Ah, I see. Thanks.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
SamB
ZSNES Developer
ZSNES Developer
Posts: 8
Joined: Sun Jul 02, 2006 8:59 pm

Post by SamB »

grinvader wrote:SDL port uses curses, win/dos just uses a terminal... the code is in C, so anyone more experienced on multiple-windows projects can try to help and add onto it so it turns into a debugger worthy of use.
Um, all ports use curses! The windows code has to allocate a console, the dos code has to set the video mode to the normal text mode, and the linux port does nothing special at the moment, but they all use curses.
byuu

Post by byuu »

I don't use ZSNES' debugger -- 100% -- [ 10 ]
Heh, ouch. I use it on occasion. I've learned to make it do what I want over time.

I'm sorry the effective address decoding doesn't work correctly in ZSNES. I didn't really know all that much about the SNES back then.
IcecreamzIII
New Member
Posts: 7
Joined: Fri Aug 06, 2004 8:19 pm

Post by IcecreamzIII »

I don't use ZSNES' debugger -- 100% -- [ 11 ]
xamenus
Veteran
Posts: 907
Joined: Fri Jul 30, 2004 12:26 am

Post by xamenus »

I hope those results aren't misleading; hopefully no non-ROM hackers voted.

This should probably be posted at romhacking.net if it isn't already.
Locked