Hacking Others Mega Drive/ Genesis Sprite Editor/ Extractor?

Lehnah

Well-Known Member
OP
Newcomer
Joined
Feb 15, 2017
Messages
46
Trophies
0
Age
39
XP
121
Country
Hello folks,

I've like to extract sprites from a specific Mega Drive/ Genesis game and perhaps even edit them, but I've never done anything like this before. I was wondering if there is a good (and simple) piece of software out there that does this, or if there are any other resources that you might be able to point me to?

Thanks in advance.

P.S. I've already looked online and nowhere I could find has a complete set of already extracted sprites.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,377
Country
United Kingdom
Cartridge based consoles prior to the DS usually operated on an all in one principle, or incbin if your prefer C like terminology.

Hopefully you are also aware of palettes as it pertains to this sort of thing -- most console graphics are not bitmaps that include what colour each pixel is but instead a very boring exercise in paint by numbers with the key being the palette (which you can change to change colours, hence palette swap enemies and https://www.todayifoundout.com/inde...-and-bushes-in-super-mario-bros-are-the-same/ ). Palettes are not always necessary to edit (if you know something is one colour then pick it from elsewhere in the image and use that) but it does help, you can snatch them from memory too and if not there are usually not very far from graphics.

To that end you are left with two main approaches

1) Get a tile editor. I like tiled2002, tileggd and crystaltile2 myself but most things should do the megadrive/genesis graphics formats (the ones there I have as they do GBA formats many others do not do). https://www.romhacking.net/?page=ut...page=20&title=&desc=tile+editor&utilsearch=Go should have a bunch.
Open ROM, set likely settings (custom tiles are kind of thing a here but 8x8 is a good start, SMD or GEN will likely be the abbreviation), press down/page down a lot and scroll through the ROM until you find something interesting.

2) A bit more targetted. Various approaches here
i) Get to point in the game where the graphics are displayed. Grab data from VRAM (or whatever it is called on your system of choice -- the megadrive has some alternative names for some things) and search the ROM for that. Does not work if compressed or altered but alteration is rare and compression... was seen but not as common as the consoles a generation later on up to today.
ii) In the case of the GBA the compression can be keyed in on or watched happen from BIOS calls, for the megadrive/genesis it is likely to be a more custom affair (probably RLE or Huffman but have seen some fancier stuff over the years).
iii) Corruption. Much as it sounds you mess with parts of the ROM and whatever changes in the game is what that area deals with at some level.
iv) Tracing. The big boy method. Get to a point in the game where it is about to load (before a level, before going into a room, before pressing start on the title screen... it really does not matter). Here you use a special type of debugging emulator to set breakpoints. Here is a worked example for an old command line GBA emulator but the principle is the same whether modern PC game or commodore64 https://www.romhacking.net/documents/361/
I don't know what we are suggesting for megadrive debuggers these days and they used to be a bit more primitive than NES, GBA and DS stuff last time I went looking, sometimes you might have to go into tool assisted speedrun circles.
So more difficult but guaranteed to find what you are looking for it is in the game (and probably enough info to find out if something that was cut by developers -- find one boss setup and you can likely find the rest, hidden stuff tends to be next to known stuff, similarly end epic sidequest sword is probably a bit on from starting dagger).
v) Some kind of logging method. https://fceux.com/web/help/CodeDataLogger.html is for the NES but you might get lucky and find an equivalent for the megadrive.

Alternatively if it is just ripping graphics then the same vram and palette viewers you are using to confirm the harder methods will also work with a print screen. Do remember you have cheats at your disposal as well (no need to lose battles, max stats is easy, max money is basic cheat searching https://web.archive.org/web/20080309104350/http://etk.scener.org/?op=tutorial , walk through walls, inventory cheats will get those hidden items/end game items...) to speed this up.
 

tech3475

Well-Known Member
Member
Joined
Jun 12, 2009
Messages
3,694
Trophies
2
XP
6,103
Country
Which game?

In the case of say the Sonic games, most are well documented with disassemblies and tools available.
 

Lehnah

Well-Known Member
OP
Newcomer
Joined
Feb 15, 2017
Messages
46
Trophies
0
Age
39
XP
121
Country
Cartridge based consoles prior to the DS usually operated on an all in one principle, or incbin if your prefer C like terminology.

Hopefully you are also aware of palettes as it pertains to this sort of thing -- most console graphics are not bitmaps that include what colour each pixel is but instead a very boring exercise in paint by numbers with the key being the palette (which you can change to change colours, hence palette swap enemies and https://www.todayifoundout.com/inde...-and-bushes-in-super-mario-bros-are-the-same/ ). Palettes are not always necessary to edit (if you know something is one colour then pick it from elsewhere in the image and use that) but it does help, you can snatch them from memory too and if not there are usually not very far from graphics.

To that end you are left with two main approaches

1) Get a tile editor. I like tiled2002, tileggd and crystaltile2 myself but most things should do the megadrive/genesis graphics formats (the ones there I have as they do GBA formats many others do not do). https://www.romhacking.net/?page=ut...page=20&title=&desc=tile+editor&utilsearch=Go should have a bunch.
Open ROM, set likely settings (custom tiles are kind of thing a here but 8x8 is a good start, SMD or GEN will likely be the abbreviation), press down/page down a lot and scroll through the ROM until you find something interesting.

2) A bit more targetted. Various approaches here
i) Get to point in the game where the graphics are displayed. Grab data from VRAM (or whatever it is called on your system of choice -- the megadrive has some alternative names for some things) and search the ROM for that. Does not work if compressed or altered but alteration is rare and compression... was seen but not as common as the consoles a generation later on up to today.
ii) In the case of the GBA the compression can be keyed in on or watched happen from BIOS calls, for the megadrive/genesis it is likely to be a more custom affair (probably RLE or Huffman but have seen some fancier stuff over the years).
iii) Corruption. Much as it sounds you mess with parts of the ROM and whatever changes in the game is what that area deals with at some level.
iv) Tracing. The big boy method. Get to a point in the game where it is about to load (before a level, before going into a room, before pressing start on the title screen... it really does not matter). Here you use a special type of debugging emulator to set breakpoints. Here is a worked example for an old command line GBA emulator but the principle is the same whether modern PC game or commodore64 https://www.romhacking.net/documents/361/
I don't know what we are suggesting for megadrive debuggers these days and they used to be a bit more primitive than NES, GBA and DS stuff last time I went looking, sometimes you might have to go into tool assisted speedrun circles.
So more difficult but guaranteed to find what you are looking for it is in the game (and probably enough info to find out if something that was cut by developers -- find one boss setup and you can likely find the rest, hidden stuff tends to be next to known stuff, similarly end epic sidequest sword is probably a bit on from starting dagger).
v) Some kind of logging method. https://fceux.com/web/help/CodeDataLogger.html is for the NES but you might get lucky and find an equivalent for the megadrive.

Alternatively if it is just ripping graphics then the same vram and palette viewers you are using to confirm the harder methods will also work with a print screen. Do remember you have cheats at your disposal as well (no need to lose battles, max stats is easy, max money is basic cheat searching https://web.archive.org/web/20080309104350/http://etk.scener.org/?op=tutorial , walk through walls, inventory cheats will get those hidden items/end game items...) to speed this up.
Wow, that's amazing. Thanks for all the info. You've given me a lot to explore.

EDIT: Tried to install tiled2002 and it was telling me a bunch of files were missing, so it wouldn't work. Had a go at a few others but I could not make heads or tales of them. I think this may be a bit beyond me.
 
Last edited by Lehnah,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BakerMan
    I rather enjoy a life of taking it easy. I haven't reached that life yet though.
  • BakerMan @ BakerMan:
    imagine not having hands, cringe
    +1
  • AncientBoi @ AncientBoi:
    ESPECIALLY for things I do to myself :sad:.. :tpi::rofl2: Or others :shy::blush::evil:
    +1
  • The Real Jdbye @ The Real Jdbye:
    @SylverReZ if you could find a v5 DS ML you would have the best of both worlds since the v5 units had the same backlight brightness levels as the DS Lite unlockable with flashme
  • The Real Jdbye @ The Real Jdbye:
    but that's a long shot
  • The Real Jdbye @ The Real Jdbye:
    i think only the red mario kart edition phat was v5
  • BigOnYa @ BigOnYa:
    A woman with no arms and no legs was sitting on a beach. A man comes along and the woman says, "I've never been hugged before." So the man feels bad and hugs her. She says "Well i've also never been kissed before." So he gives her a kiss on the cheek. She says "Well I've also never been fucked before." So the man picks her up, and throws her in the ocean and says "Now you're fucked."
    +2
  • BakerMan @ BakerMan:
    lmao
  • BakerMan @ BakerMan:
    anyways, we need to re-normalize physical media

    if i didn't want my games to be permanent, then i'd rent them
    +1
  • BigOnYa @ BigOnYa:
    Agreed, that why I try to buy all my games on disc, Xbox anyways. Switch games (which I pirate tbh) don't matter much, I stay offline 24/7 anyways.
    +1
  • AncientBoi @ AncientBoi:
    I don't pirate them, I Use Them :mellow:. Like I do @BigOnYa 's couch :tpi::evil::rofl2:
    +1
  • cearp @ cearp:
    @BakerMan - you can still "own" digital media, arguably easier and better than physical since you can make copies and backups, as much as you like.

    The issue is DRM
    +1
  • cearp @ cearp:
    You can buy drm free games / music / ebooks, and if you keep backups of your data (like documents and family photos etc), then you shouldn't lose the game. but with a disk, your toddler could put it in the toaster and there goes your $60

    :rofl2:
  • cearp @ cearp:
    still, I agree physical media is nice to have. just pointing out the issue is drm
    +1
  • rqkaiju2 @ rqkaiju2:
    i like physical media because it actually feels like you own it. thats why i plan on burning music to cds
  • cearp @ cearp:
    It's nice to not have to have a lot of physical things though, saves space
    +1
  • AncientBoi @ AncientBoi:
    Nor clothes 🤮 . Saves on time, soap, water and money having to wash them. :D
  • SylverReZ @ SylverReZ:
    @rqkaiju2, Physical media is a great source for archiving your data, none of that cloud storage shiz.
    +1
  • AncientBoi @ AncientBoi:
    [squeezes @SylverReZ onto a physical media, then archives you in my old stuff box] :tpi::rofl2::tpi:
    +1
  • BakerMan @ BakerMan:
    guys, should i change my pfp to one of these or keep it the same?
    iu

    iu

    (i guess i could change it to one of my other pfps too, but i just want to see what you guys think first)
  • SylverReZ @ SylverReZ:
    @BakerMan, Up to you.
  • BakerMan @ BakerMan:
    smug sonic time lmao
    +1
    BakerMan @ BakerMan: smug sonic time lmao +1