It is currently Sun Dec 17, 2017 5:16 am

All times are UTC - 7 hours



Forum rules


Related:



Post new topic Reply to topic  [ 8 posts ] 
Author Message
PostPosted: Sun Dec 18, 2016 11:49 pm 
Offline

Joined: Sun Dec 18, 2016 1:11 pm
Posts: 22
I was very excited when I found this page: http://datacrystal.romhacking.net/wiki/ ... _X:ROM_map
Unfortunately the links are broken, does anyone know where I can find what was at the broken links? Or is it completely lost forever?

EDIT: The page provides addresses, I'm not sure what I should do with those if I want to see the routines as I'm still very new to this. If I should be able to view it in an emulator, I want to know how I can do that if I'm using BizHawk.


Top
 Profile  
 
PostPosted: Mon Dec 19, 2016 7:28 am 
Offline
User avatar

Joined: Sun Sep 19, 2004 9:28 pm
Posts: 3192
Location: Mountain View, CA, USA
This site isn't responsible for stuff hosted on romhacking.net. I suggest you pose the question over there.


Top
 Profile  
 
PostPosted: Mon Dec 19, 2016 10:14 pm 
Offline

Joined: Sun Dec 18, 2016 1:11 pm
Posts: 22
Okay, but what about my other question?

What should I do with the address given if I want to view the actual disassembled routine at the address?


Top
 Profile  
 
PostPosted: Mon Dec 19, 2016 10:16 pm 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5899
Location: Canada
1. You can run a disassembler on the ROM at the equivalent address in the ROM.

2. You can use a debugger that has a disassembly view, and simply navigate to that location (perhaps put a breakpoint on it too, so you can follow it while it's executing).


Top
 Profile  
 
PostPosted: Tue Dec 20, 2016 6:32 pm 
Offline

Joined: Sun Jan 26, 2014 9:31 am
Posts: 270
Archive.org to the rescue!

https://web-beta.archive.org/web/201212 ... _X:RAM_map

In case the site's too busy for you:

Code:
7E:0500 - 7E:052F?   Table of 5-byte entries for DMA transfer of X's graphics from ROM to VRAM.
7E:0BAA              X's current state (6 = rising, 8 = falling, 14 = dashing, etc...)
7E:0BAA              X's current sub-state
7E:0BAC - 7E:0BAE    X's X-position (24-bit)
7E:0BAF - 7E:0BB1    X's Y-position (24-bit)
7E:0BBB - 7E:0BBC    General purpose animation timer for X?
7E:0BBF              X's current pose
7E:0BC2 - 7E:0BC3    X's horizontal velocity
7E:0BC4 - 7E:0BC5    X's vertical velocity
7E:0BC6              X's acceleration (gravity)
7E:0BCF              X's health
7E:0BE0 - 7E:0BE2    Mirror of controller input (bits for unused buttons seem to be ANDed out)
7E:0BDD              Number of shots currently on screen
7E:0BFA              Dash timer
7E:0BFF              Charge timer
7E:0C03              Charge level (01 = fully charged /w/ arm part, 02 = normal full charge,
                     03 = partial charge | Not sure what it's used for)

7E:0C06              Bitflags: Standing = 04, hanging on left wall = 02, right wall = 01
7E:0C30 - 7E:0C8F    Stuff for armor parts (position, type, and so forth)


7E:0E18              Ride armor exist flag (00 = delete ride armor, all else = ride armor exists)
7E:0E1A              Ride armor's current state
7E:0E1C - 7E:0E1E    Ride armor's X-position (24-bit)
7E:0E1F - 7E:0E22    Ride armor's Y-position (24-bit)
7E:0E32 - 7E:0E33    Ride armor's horizontal velocity
7E:0E34 - 7E:0E35    Ride armor's vertical velocity
7E:0E36              Ride armor's acceleration (gravity)
7E:0E4D              Ride armor's heading 40 = facing right, 00 = facing left


7E:1F99              Bitflag array of armor pieces collected
7E:1F9A              X's maximum health
7E:1F9C              Bitflag array of heart tanks collected
7E:1FB4              Current number of lives remaining


Top
 Profile  
 
PostPosted: Tue Dec 20, 2016 6:59 pm 
Offline
User avatar

Joined: Sun Sep 19, 2004 9:28 pm
Posts: 3192
Location: Mountain View, CA, USA
These are all memory locations in the SNES's WRAM area. So, the reads/writes in question not necessarily exclusive to bank $7E, but may be to other banks ($00-3F and $80-BF) since memory is mirrored/shadowed there (i.e. $7E0000-7E1FFF is the same as $0000-1FFF in banks $00-3F and $80-BF; this applies to both mode 20 and 21). I mention this as it may pertain to how/where to set up breakpoints for reads/writes.


Top
 Profile  
 
PostPosted: Tue Dec 20, 2016 10:11 pm 
Offline

Joined: Sun Jan 26, 2014 9:31 am
Posts: 270
Whoops! My bad. That's the page for the RAM not the ROM map. Heh heh... :lol: Honest mistake right there, I tell ya. Boy, do I know how to be useless in a discussion outside my domain...

Anyway, some sleuthing reveals this: https://www.smwcentral.net/?p=viewthread&t=14229 It's mostly graphics stuff, but it's better than nothing. At least it shows you where not to look for the routines.

Now, I have redeemed myself, ever so slightly :wink:

EDIT - Further redemption -> https://www.smwcentral.net/?p=viewthread&t=82064

I don't know nesdev's policy on disassembly projects. Let me know if it's inappropriate to link directly to SMW Central. At any rate, a fellow named xe (aka Mellonpizza) has done some research into MMX.


Top
 Profile  
 
PostPosted: Tue Dec 20, 2016 11:32 pm 
Offline
User avatar

Joined: Sun Sep 19, 2004 9:28 pm
Posts: 3192
Location: Mountain View, CA, USA
Posting a link to a full disassembly of a game might be a problem (especially if it's code that can be reassembled easily), but what you provided links to in your above post are completely reasonable.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 8 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group