editing SNES graphics in MESEN?

A place for your artistic side. Discuss techniques and tools for pixel art on the NES, GBC, or similar platforms.

Moderator: Moderators

Post Reply
User avatar
x77x
Posts: 13
Joined: Mon Jun 02, 2014 7:06 pm

editing SNES graphics in MESEN?

Post by x77x »

anyone mess around with the debugging in Mesen?

i edit tiles and whatnot, try to save changes by SAVE ROM or SAVE ROM AS and nothing saves...

i tried SAVE EDITS AS IPS PATCH... saved the patch, used lips to apply the patch and no edit changes...

i cannot figure out how to actually save the changes


is there any SNES editors where you can make edits live and save the changes?

i see most emulators have an EXPORT, why not an IMPORT AND SAVE!?


back in the old days in Nesticle, you could bring up the tile veiwer, redraw the tiles, the click SAVE VRAM and your edits would save to the rom! why cant there be a SNES emulator with the same feature?


with all the different SNES compression, the ability to edit live would be nice, sometimes is nearly impossible to find stuff in TLP or TM or YYCHR
User avatar
Memblers
Site Admin
Posts: 4044
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Re: editing SNES graphics in MESEN?

Post by Memblers »

It's simple to do when an NES game uses CHR-ROM, as it's simply writing the uncompressed CHR data back to the file.

On the other hand, many NES games (and all SNES games) use CHR-RAM. The graphics are usually in a compressed format, a virtually limitless number of different formats. Even if the compression format was known and utilized in the emulator, depending on what changes were made to the graphics, it might not fit inside the ROM anymore, if the edited file becomes any larger.

It seems doable only if the emu could store the graphics separately, like with those graphics enhancement add-on packs.
User avatar
x77x
Posts: 13
Joined: Mon Jun 02, 2014 7:06 pm

Re: editing SNES graphics in MESEN?

Post by x77x »

i tried sending Sour a message on reddit... no luck

im impressed with the new debuggers and you can view all the decompressed graphics...
some even have IMPORT but theres no way to save the changes!?

i figured it was the compression holding it back

i managed to figure out how to change tiles on a screen, but you can only use the tiles that are loaded in VRAM
i dont think you can use tiles from anywhere else in the rom
SNES is really confusing
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: editing SNES graphics in MESEN?

Post by dougeff »

Sometimes the graphics are uncompressed, or are in 3bpp format (a very simple compression) which can be edited in a CHR editor like YY-CHR.

Though, in my experience, only a small portion of a games graphics might be uncompressed.

Some people have made game specific compressor/decompressor conversion tools.
nesdoug.com -- blog/tutorial on programming for the NES
creaothceann
Posts: 611
Joined: Mon Jan 23, 2006 7:47 am
Location: Germany
Contact:

Re: editing SNES graphics in MESEN?

Post by creaothceann »

x77x wrote: Sun May 28, 2023 4:43 am with all the different SNES compression, the ability to edit live would be nice
The compression (and the dynamic nature of some graphics) is what makes it impossible.

Besides, SNES games can upload the graphics to VRAM from almost anywhere, for example from WRAM. Lots of ROM hacks add a VWF (variable-width font) which means that the game 'manually' draws characters into blank tiles and thereby creates entirely new tiles that do not exist anywhere in the ROM.

There might be other places where graphics are created/modified dynamically, e.g. in Mario Paint (?) or when an enemy is defeated and fades away in Chrono Trigger.
Last edited by creaothceann on Sun May 28, 2023 9:54 am, edited 1 time in total.
My current setup:
Super Famicom ("2/1/3" SNS-CPU-GPM-02) → SCART → OSSC → StarTech USB3HDCAP → AmaRecTV 3.10
User avatar
x77x
Posts: 13
Joined: Mon Jun 02, 2014 7:06 pm

Re: editing SNES graphics in MESEN?

Post by x77x »

the reason i ask, ive been messing around with Super Black Bass 3 (Japan) in hopes it could be translated

alot of the menus are just pictures so alot could be translated to make the game playable

the dialog on the other hand is another story...

if anyone gets a second, load it up in a debugger and see if you can find where the actual tiles are in YYCHR

some of the big letters are 2BPP MSX - FC/NES x8

https://www.romhacking.net/forum/index. ... ic=31157.0
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: editing SNES graphics in MESEN?

Post by tokumaru »

The emulador is completely oblivious to everything that has happened to the graphics data before it reached VRAM, so it can't possibly take the uncompressed graphics you put in VRAM using its debugging tools and do all the transformations in reverse to insert the graphics back into the game.

Hacking a game's graphics is more complicated than that. If someone else hasn't already done the research and created tools to hack the specic game you're modifying, you're gonna have to debug the VRAM updates in order to figure out where the data is coming from and in what format it's encoded. If you're lucky it will be a simple/common compression format, but it's certainly possible for games to use completely unique formats never seen anywhere else.

Once you figure that stuff out you have to write your own program (in C, JavaScript, Python, whatever) to convert uncompressed graphics into the format used by the game. Like has been said already, it's possible that the new graphics end up taking more space than the original ones, so you might need to relocate some data or even expand the ROM in order to fit all the new stuff in.
crystalmoon
Posts: 10
Joined: Wed Aug 23, 2023 12:45 am
Location: poland
Contact:

Re: editing SNES graphics in MESEN?

Post by crystalmoon »

Memblers wrote: Sun May 28, 2023 6:42 am It's simple to do when an NES game uses CHR-ROM, as it's simply writing the uncompressed CHR data back to the file.

On the other hand, many NES games (and all SNES games) use CHR-RAM. The graphics are usually in a compressed format, a virtually limitless number of different formats. Even if the compression format was known and utilized in the emulator, depending on what changes were made to the graphics, it might not fit inside the ROM anymore, if the edited file becomes any larger.

It seems doable only if the emu could store the graphics separately, like with those graphics enhancement add-on packs.
no, the super nintendo doesn't use chr ram, because there's no such thing as the chr ram. it's vram....
though it's the same thing so I don't know why I'm yapping.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: editing SNES graphics in MESEN?

Post by tepples »

Trying to settle the nomenclature as I understand it:
On Super NES, CHR RAM is (roughly) any VRAM range to which OBSEL or an active layer's BGxNBA points.
Post Reply