Users browsing this thread:
Cracking Virtual Boy ROMs for tiles
#1
Hello, as we all know, good Virtual Boy emulation is sorely inaccessible in many ways, especially sprite-ripping. The game I'm most interested in currently is Mario's Tennis, but since it uses depth to alter sprite size so much and nothing for the system has a tile/OAM viewer, I'm at the point where I need to get inside the ROM for a tile dump. Does anyone know how to do this? I know it's been done before, considering people have found the unused "Cassarin" player text (and I'm assuming that's also how Ragey's Mario Clash rips worked).
Quote:So let me get this straight, you gave an untested, inter-dimensional wormhole creator to your equally untested, robotically-reanimated Yoshi corpse
-Dynamite Headdy

Reply
Thanked by:
#2
YY-CHR does support Virtual Boy ROMs however YMMV regarding whether you will be able to rip anything from a game. Since many games use compression techniques of various types, it means that it is pot luck and some of these are lightly compressed but look corrupt in the ROM or just compressed showing garbage in a tile viewer. It would require reverse engineering that is way beyond my scope. I've checked more or less the entire library...

These can almost be completely ripped without an issue:
Bound High
Insmouth no Yakata
SD Gundam: Dimension War
Virtual Fishing
Virtual Lab (I think this game is unfinished but got released just by so much wasted space)
V-Tetris (looks like they might be a few compressed things though)

These are partially compressed but some of the main sprites are viewable without any problems:
Galactic Pinball
Mario Clash (already on the site, ROM not cleanly arranged suggesting a rush job)
Nester's Funky Bowling
Niko-chan Battle
Space Invaders Virtual Collection
Space Squash
T&E Soft developed games* (3D Tetris, Red Alarm, T&E Virtual Golf/Golf)
Vertical Force (only the ship)
Virtual Bowling
Virtual League Baseball

*-Ironic since their games are compressed on other consoles (SNES, Genesis).

It just happens to be that the more desired games on the console also happen to be the hardest to rip from and Tobidase! Panibon for some reason... Waterworld is stored in a completely different way than most VB games, it's not compressed but looks like one that TileGGD can rip from. As for Mario's Tennis, well...
[Image: stTkAqAB_o.png]

Doesn't look like an easy rip...

Another way is to see if you can rip from a savestate but... Not savestates from BizHawk as they aren't designed for sprite rips at all.
Reply
Thanked by:
#3
Well shucks, there must be some way of decompressing these. While I might be able to get something from the lower ones alone, it's still a long shot without any context as to who they represent when I find them.
Golf is actually on my radar, as a possible official follow-up to the NES/FC classic also called Golf.
Quote:So let me get this straight, you gave an untested, inter-dimensional wormhole creator to your equally untested, robotically-reanimated Yoshi corpse
-Dynamite Headdy

Reply
Thanked by:
#4
I looked into it some years ago
https://twitter.com/vervalkon/status/970...RlpjA&s=19

Quote:The core problem with my VB Mario's Tennis compression problem is probably that I don't know where the data begins
If I start too late, I won't have enough data for the instructions to look back far enough. If I start too early, I get garbage results. The address has to be exact.
And I can't find any pointer tables either. I've found a few suspects but I don't fully even understand Virtual Boy pointers anyway.
Also I have no debugger, only raw bytes from ROM and output candidates extracted from fucking save states.

Tile Molester can read VB roms for what it's worth.

I can check if I still have my decompressor code when I get home.
Once there was a way to get back homeward
Reply
Thanked by:
#5
(08-24-2023, 05:54 AM)Raccoon Sam Wrote: I looked into it some years ago
https://twitter.com/vervalkon/status/970...RlpjA&s=19

Quote:The core problem with my VB Mario's Tennis compression problem is probably that I don't know where the data begins
If I start too late, I won't have enough data for the instructions to look back far enough. If I start too early, I get garbage results. The address has to be exact.
And I can't find any pointer tables either. I've found a few suspects but I don't fully even understand Virtual Boy pointers anyway.
Also I have no debugger, only raw bytes from ROM and output candidates extracted from fucking save states.

Tile Molester can read VB roms for what it's worth.

I can check if I still have my decompressor code when I get home.

Thanks. Unfortunately, if the Twitter thread contains anything else, I won't be able to see it, since that site's recent alterations prevent me from seeing past the first post.
Quote:So let me get this straight, you gave an untested, inter-dimensional wormhole creator to your equally untested, robotically-reanimated Yoshi corpse
-Dynamite Headdy

Reply
Thanked by:
#6
[Image: Screenshot-20230824-220520-X.jpg]

Not much besides that, but the algorithm is like so
Once there was a way to get back homeward
Reply
Thanked by:
#7
So currently tripped up by inconsistent data sizes. Do you remember how often that sort of impossible command occurs?
Quote:So let me get this straight, you gave an untested, inter-dimensional wormhole creator to your equally untested, robotically-reanimated Yoshi corpse
-Dynamite Headdy

Reply
Thanked by:
#8
I suppose I should ask, do you know if it did that for both the "near" and "far" versions of the characters? Because I could feasibly rip the "near" ones since whomever you play as is automatically at proper size, but the small "far" ones are what I'm mostly needing this for since their distance (and thus, squash-n-stretch) tends to be all over the place. Hahh, if only the multiplayer functionality had been implemented so the far one could be controlled!
Quote:So let me get this straight, you gave an untested, inter-dimensional wormhole creator to your equally untested, robotically-reanimated Yoshi corpse
-Dynamite Headdy

Reply
Thanked by:
#9
(08-23-2023, 01:28 PM)Yawackhary Wrote: YY-CHR does support Virtual Boy ROMs however YMMV regarding whether you will be able to rip anything from a game. Since many games use compression techniques of various types, it means that it is pot luck and some of these are lightly compressed but look corrupt in the ROM or just compressed showing garbage in a tile viewer. It would require reverse engineering that is way beyond my scope. I've checked more or less the entire library...

What's the verdict for Jack Bros? Seeing the sprites from that game being ripped would be neat.

Also this may not have to do with anything, but it's certainly fascinating to see:
https://medium.com/@pizzarollsroyce/port...7a3c8c1fb7
[Image: KC.png?rlkey=wev6gh1kef9rk8zky1idi0ozf&raw=1][Image: dededeherbert2.jpg][Image: KC.png?rlkey=wev6gh1kef9rk8zky1idi0ozf&raw=1]
Reply
Thanked by:
#10
(09-02-2023, 04:24 AM)Kurabupengin Wrote: What's the verdict for Jack Bros? Seeing the sprites from that game being ripped would be neat.

Good news: Most of the font (both Japanese and English), points and what appears to be the title screen can be ripped without too much trouble.

Bad news: The in game sprites, backgrounds, cutscenes and the Atari/Namco styled font used for the title aren't easy to rip. You can kind of view some of them if you mess around with the offsets but even with that not all the tiles can be viewed for a sprite. e.g. the numbers 0-6 and 9 have no issues but 7 and 8 appear to be corrupted. It's one of those lightly compressed games, very annoying.
Reply
Thanked by: Kurabupengin


Forum Jump: