News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: How do 32X pointers work?  (Read 1541 times)

TheLoneSurvivor

  • Jr. Member
  • **
  • Posts: 12
  • back from the dead
    • View Profile
How do 32X pointers work?
« on: January 03, 2016, 09:12:02 pm »
So I was ROM hacking the 32X port of Doom, and I was reading the 32X Doom hacking notes by Saxman, and one of the things it said was "0x005C16 -- List of voice pointers" I know what a pointer is, because I am an intermediate ROM hacker (I found and modified graphics, text and sound in the SNES port of Doom, and noticed uncompiled ASM code in the SPC RAM, and was able to do a Pokemon ROM hack that was the full deal, ASM, sounds, graphics, maps, scripts, sprites, and a ROM expanded to 32MB, so I know how to ROM hack), so I go into HxD, press goto and enter 5C16, which brought me to the right offset, but the pointers were strange. They all ended with different bytes, from what I can tell, they appear to be 4-byte pointers (can't tell if they are little or big endian) and every 3 pointers the last byte's number goes up by one (it goes like XX XX XX 01 XX XX XX 01 XX XX XX 01 XX XX XX 02 XX XX XX 02 XX XX XX 02 XX XX XX 03 XX XX XX 03 XX XX XX 03).

Perhaps the byte at the end represents a bank? If I am correct on that, how do banks work on a 32X/Genesis, and how do I find them through pointers?

Thanks.
Doom SNES Hacker.

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 7151
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: How do 32X pointers work?
« Reply #1 on: January 04, 2016, 01:22:40 am »
Are 32X pointers the same as standard Genesis?
4 bytes, big-endian (do not reverse the byte order), pointer = ROM address (00-padded to 4 bytes)

From what I've heard, VERY few Genesis games needed mappers (I heard PS4 used a mapper to swap $200000-3FFFFF between the last MB of ROM and SRAM, and SSF2 probably used one to get past the Genesis 4MB ROM limit (supposedly using ROM addresses above 3FFFFF would break if the Sega CD or 32X was attached).
"My watch says 30 chickens" Google, 2018

Lilinda

  • Hero Member
  • *****
  • Posts: 4538
    • View Profile
Re: How do 32X pointers work?
« Reply #2 on: January 04, 2016, 01:24:23 am »
Would they work the same? The SH2 wasn't the same endianness as an 68000 I think...
Retired moderator/staff member as of July 14th 2016