GameYob icon indicating copy to clipboard operation
GameYob copied to clipboard

Robopon [US Sun] + JP Sun/Star/Moon/Bom Bom wont save

Open ghost opened this issue 11 years ago • 16 comments

I have run each of these rom's and none of them work. The original game cartridges used special Infer-Red lights on the top of them. Is there any way you could patch YOB to be able to run them? Other games produced by Hudson seem to work just fine, Bomberman Red/Blue + Ain from both the US and JP run at 60 fps, 100%.

Please try to find a way to fix the emulation of the Robopon games, the roms will boot up, show a single image, then just freeze on a white screen.

ghost avatar Apr 07 '13 21:04 ghost

I've tried one of these and it doesn't work because the cartridge has different hardware which GameYob doesn't recognize. It's not the sensor itself that's the problem, but the memory bank controller on the cartridge must be using a different interface. When I find documentation / readable source code which emulates this I'll get started on it.

Stewmath avatar Apr 07 '13 21:04 Stewmath

Here is some information I have compiled myself, I actually have all of the original game cartridges. {US}

Robopon Sun [size: 1,048,576 bytes] [rom information: ROM+HUC3+RAM+BAT] [internal name: SUN] DMG-HREE-USA

{JP}

Robopon Sun [size: 1,048,576 bytes] [rom information: ROM+HUC3+RAM+BAT] [internal name: ROBOPON SUN] DMG-HREJ-JPN
Robopon Star [size: 1,048,576 bytes] [rom information: ROM+HUC3+RAM+BAT] [internal name: ROBOPON STAR] DMG-HRCJ-JPN Robopon Moon [size: 1,048,576 bytes] [rom information: ROM+HUC3+RAM+BAT] [internal name: ROBO MOON] DMG-H3UJ-JPN Robopon Bom Bom [size: 1,048,576 bytes] [rom information: ROM+HUC3+RAM+BAT] [internal name: ROBO BOM] DMG-H5UJ-JPN

they all run on the Hudson Controller 3 [HUC3]

http://pastebin.com/raw.php?i=CRwweHsH - This is the specs to some other games I opened up myself, I checked all the MBC's myself on the cartridges.

Under Settings>Console Output the only options currently are Off/Time/FPS+Time/Debug, perhaps you could also add just FPS?

Is there any chance you could also add

A virtual Gameshark of some sort Scaling feature with/without interpolation

"Lets Get These Rascals Guys"

ghost avatar Apr 07 '13 22:04 ghost

I'm on it, HUC1 is already working and playable (it's basically an MBC1 in disguise with some slightly differences). The HUC3 is silghtly different, it'll need some more work :) @Drienn : I think it'd be better to separate each mbc handler in different files to keep mmu.cpp clean, whats your opinion ?

LemonBoy avatar Apr 08 '13 19:04 LemonBoy

I'd be all for separating the mbc's, as long as there isn't a notable drop in fps. Gotta keep Shantae at top speed!

If you're going to do this, you could just put all the mbc read and write functions in one file, since there's only 2 functions each, and readMemory can often be reduced to "return memory[addr>>12][addr&0xfff]".

Stewmath avatar Apr 08 '13 21:04 Stewmath

Meh, got the HuC3 working, it's just missing the RTC feature but I'll implement it tomorrow. I should have studied this evening instead of writing code :smile: https://github.com/LemonBoy/GameYob/tree/mbcsplit Here is my WIP branch, please @Drienn don't merge it yet, it needs some testing and, as stated above, RTC support for HuC3 mapper. Greetz :)

LemonBoy avatar Apr 08 '13 21:04 LemonBoy

How do you compile these do a NDS file?

ghost avatar Apr 09 '13 00:04 ghost

@LemonBoy ;-; could you compile your lovely branch and give me a download link? I am stuck on Mac with no knowledge of how to compile these myself ;_;

ghost avatar Apr 09 '13 01:04 ghost

@Drienn I've just pushed another relevant commit regarding HuC3 support, but had no time to test it and since it touches the save structure I'd like to be sure it's ok the way I modified it. The whole code is now more modular and should allow the implementation of new mappers (TAMA5?) without much hassle :) Let me know if you have some notes or want to point something out!

LemonBoy avatar Apr 10 '13 21:04 LemonBoy

Looks good. Your changes to the state format are backwards compatible which is the main thing.

You know what would be most radical? MBC7 support. I don't know where you're finding your information for those exotic mappers but once MBC7 is up and running, I have some ideas for Kirby Tilt 'n Tumble...

Stewmath avatar Apr 12 '13 15:04 Stewmath

I'll try to get MBC7 too in :) Anyway, I need the year field in the clock struct so I'm pretty much forced to break the format...I'm waiting for your ok to commit the change...

LemonBoy avatar Apr 12 '13 15:04 LemonBoy

Oh, I didn't notice changes to mbc3's clockstruct. I based its format off of vba's save format, since clock data is needed in save files as well as states. Timezones aside, the "latched" values are needed to preserve compatibility with both vba and lameboy save files. I don't know how vba handles huc3, but that's not quite as important since lameboy didn't support it, nor did gameyob until now. If you just put the latched values back in, everything should remain compatible.

Stewmath avatar Apr 12 '13 16:04 Stewmath

This is in branch master now, so you can use the dropbox link in the gameyob thread to try it out. I haven't tested the clock in huc3 games yet, but robopon is working otherwise.

Stewmath avatar Apr 13 '13 19:04 Stewmath

@Drienn Man, thank you so much for adding support for the HuC3! At this point in time, GameYob supports all the old GB+GBC games I used to play! This is a fantastic day!

ghost avatar Apr 13 '13 21:04 ghost

Thank LemonBoy, I didn't really do anything HuC3 related.

Stewmath avatar Apr 13 '13 21:04 Stewmath

Well anyway, good job guys. I have tested this out, and the only thing that wont work is Saving. Saved states are all good, but it can't seem to correctly write a sav file.

ghost avatar Apr 13 '13 22:04 ghost

I know this isn't what this is used for, but for anyone else looking for solutions like I was, I found a GBC emulator that supports HuC-1 and HuC-3. This is the only place on the internet I saw that is actually trying to address this problem so I have to put it here. It's called KiGB http://www.emulator-zone.com/doc.php/gameboy/kigb.html

Carnifex321 avatar Nov 06 '17 01:11 Carnifex321