+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  fixing my hack for fce ultra
Pages: [1]
Author Topic: fixing my hack for fce ultra  (Read 810 times)
southark2
Guest
« on: January 20, 2007, 02:33:28 am »

I have an complete level hack of smb1 with theme changes an other stuff it works on most emulators,
But not fce ultra and it being a more popular emu, I would like to find a way to fix it to work with fce ultra.
It's an hack of the no-tittle bad dump of smb1.
This is one of my origanal hacks and I won't to avoid altering it as much as possible because if I change it to much it won't be the same hack as I made back then and it will be different then it was intended.
I do not won't to change the hack just fix it to work (as an good dump hack would work) with fce ultra (only it's not). 

So is there a way to do this with out having to remake my hack from scratch
Cause if i have do that then it would just be a new hack not the same, boo hoo
I don't wont to change it because I like it to much and I don't remember everthing that I changed either.  Cry 
Dan
Guest
« Reply #1 on: January 20, 2007, 05:26:10 am »

What exactly is wrong with your hack? Does it freeze on the title screen or what? If it freezes on the title screen, restore from the original ROM, the little coin graphic that appears in the status bar at the top.

By the way, basing your hack on a bad dump of the game was probably a bad idea.
Griever
Guest
« Reply #2 on: January 20, 2007, 09:57:23 am »

maybe you got rid of the star at the top of the screen? Don't ever touch the star - it will cause '0 sprite hit not working' problem!
Disch
Guest
« Reply #3 on: January 20, 2007, 03:16:17 pm »

Quote from: southark2 on January 20, 2007, 02:33:28 am
It's an hack of the no-tittle bad dump of smb1.

As Dan already mentioned -- you should avoid this.

That said -- the good dump and bad dumps should be mostly the same.  Have you tried just applying your .ips to a good dump?  That very well may work just fine.

Unless it's the Sprite 0 problem the others were mentioning.  However since you said it works on most other emus I'm assuming that's not the problem (unless by "most other emus" you meant "NESticle")

A link to said hack (assuming it's released) would be helpful so we can scope it out and see what the problem is.
creaothceann
Guest
« Reply #4 on: January 20, 2007, 04:33:10 pm »

Quote from: Disch on January 20, 2007, 03:16:17 pm
(unless by "most other emus" you meant "NESticle")

 Cheesy
southark2
Guest
« Reply #5 on: January 20, 2007, 10:40:01 pm »

It's not a spite zero problem it will work with any emulator but fce ultra,
The problem is with fce ultra not my hack when ever I use fce ultra even if I load an unaltered no-title version of smb1
It shows on the screen where it should say 1-1 but not fce ultra instead it shows 0-1 and if you press start it lets you play trough this under water level and if you make it to the end it resets and all you can do is start again and play through the same level over and over again.
This occurs not just because it is a bad dump but because fce ultra assumes it to be automatically because it is incoded that way to Discourage the use of bad dumps what I want to do is find a way to patch my hack to make fce ultra think that it is a good dump even tho It isn't but it will be if I can patch it. Sure I could just patch it over a good dump but that won't fool fce ultra.
I did not base it on a bad dumb either until fce ultra came out I did not know that it was bad.
here's a link so you can try it the bugs in it are part of the hack and I already know about them.

this is the updated less buggy version
http://southark2.tripod.com/sitebuildercontent/sitebuilderfiles/smb4ub.zip

 
akadewboy
Guest
« Reply #6 on: January 20, 2007, 11:08:31 pm »

Whoa you are acting a little paranoid there. FCEultra was not programmed to intentionally do weird things in "bad roms" to discourage use of them. Bad roms are called "bad roms" because they are corrupted. Corrupted data can do very strange things in some emulators and nothing in others.

Anyways I applied your patch to a good rom and seems to work just fine in FCEultra up to a point. However when you get to the Hammer Bro it freezes or resets:



You should really get yourself a good rom and continue your work off of that instead of trying to "fix" the corrupted bad rom.
« Last Edit: January 20, 2007, 11:16:36 pm by akadewboy »
Disch
Guest
« Reply #7 on: January 21, 2007, 12:47:39 am »

Quote from: southark2 on January 20, 2007, 10:40:01 pm
The problem is with fce ultra not my hack

The problem is not with FCEUltra.  The problem is with your ROM dump.

Quote
It shows on the screen where it should say 1-1 but not fce ultra instead it shows 0-1

This is a bad dump.  Find a good dump of SMB1 and try it.  "(PRG0) [!]" and "(PRG1)" versions should both work.


This paticular dump uses unprepped RAM for the stage number... rather than zeroing it (which the actual SMB cart did).  Some older emus flush RAM with 00's on powerup so it goes unnoticed in them.  However it has semi-recently been discovered that RAM has a greater tendency to be flushed with mostly FF on powerup.  FCEU is probably flushing with FF (which is closer to what you're "supposed" to do) -- Hence why you're getting '-1' instead of stage 1.


I also feel compelled to note that some games do not behave as they do on the console when an emu does NOT flush with $FF.  Most notably is Final Fantasy -- which uses unprepped RAM for the battle encounter marker so the battle encounter list starts at the same point.  A lot of people abuse this fixed state by power cycling the NES so they fight Kyzoku's in the water a bunch of times.  However if RAM is flushed with 00 on powerup the battle encounter list starts at a different point.

So FCEU is doing the right thing in this instance.


EDIT -- I just tried the hack in FCEU with a good dump as well -- and got the same results as akadewboy.  Plays fine until the hammer bro, then locks up.  I'll look into the cause.

EDIT 2 -- looks like a jump table got corrupted?  Perhaps patching to a good dump is not enough to get it working?

Code:
$C88F:20 04 8E  JSR $8E04                  A:22 X:01 Y:36 P:nvUbdIzC
$8E04:0A        ASL                        A:22 X:01 Y:36 P:nvUbdIzC
$8E05:A8        TAY                        A:44 X:01 Y:36 P:nvUbdIzc
$8E06:68        PLA                        A:44 X:01 Y:44 P:nvUbdIzc
$8E07:85 04     STA $04 = #$09             A:91 X:01 Y:44 P:NvUbdIzc
$8E09:68        PLA                        A:91 X:01 Y:44 P:NvUbdIzc
$8E0A:85 05     STA $05 = #$C9             A:C8 X:01 Y:44 P:NvUbdIzc
$8E0C:C8        INY                        A:C8 X:01 Y:44 P:NvUbdIzc
$8E0D:B1 04     LDA ($04),Y @ $C8D6 = #$60 A:C8 X:01 Y:45 P:nvUbdIzc
$8E0F:85 06     STA $06 = #$B0             A:60 X:01 Y:45 P:nvUbdIzc
$8E11:C8        INY                        A:60 X:01 Y:45 P:nvUbdIzc
$8E12:B1 04     LDA ($04),Y @ $C8D7 = #$20 A:60 X:01 Y:46 P:nvUbdIzc
$8E14:85 07     STA $07 = #$D3             A:20 X:01 Y:46 P:nvUbdIzc
$8E16:6C 06 00  JMP ($0006) = $2060        A:20 X:01 Y:46 P:nvUbdIzc

$2060 is mirrored PPU registers (not something you want to jump to), so the game ends up hitting a bunch of illegal opcodes until it destroys itself.
« Last Edit: January 21, 2007, 12:57:50 am by Disch »
southark2
Guest
« Reply #8 on: January 21, 2007, 03:54:15 pm »

I forgot to warn you if you don't warp in the first pipe the game will freeze in any emulator not just fce ultra,
I never got it to play that part that's one of the bugs that I can't get rid of.
I thought I put that in the read me but I most of forgot I useally write them in a hurry so I can get my hacks uploaded.
It looks like I put a bunch of useless crap in there so I have to change it.
Sorry I must of been tripping or something that day.


edit---
I just went and patched it over a good dump and was able to play all the way through even with fce ultra,
Before I was playing a prepatched version. Thats all I wanted to do was get it to work with fce ultra,
Also nesten has the same problem with the no-title bad dumb of smb1.
Now I can get to work on fixing that hammer bros bug I didn't won't to bother with it if it wasn't going to work with fce ultra,
Besides I might have to use the fce ultra debugger to fix it.
« Last Edit: January 21, 2007, 04:31:06 pm by southark2 »
southark2
Guest
« Reply #9 on: January 21, 2007, 10:08:33 pm »

Here's an better patch has new clearer read me file and a level select fce ultra save state,
To prove that I played all the way through it in fce ultra.
Also thanks for the help or else I won't have tried patching it over a good dump,
I will get to work on that hammer bros bug.

http://southark2.tripod.com/sitebuildercontent/sitebuilderfiles/smb4ubf.zip
southark2
Guest
« Reply #10 on: January 24, 2007, 03:44:29 pm »

Well I figured I better reply again or nobody would even notice this,
I loaded my hack up in yy-mario and there was this box staring right at me that simple read freeze,
Needless to say after I fixed it I hit my self with a brick for being such a dumb ass.
You all could at least call me an name or something I won't get mad this time,
And besides it might make me feel better for being so dumb.
Anyway I don't got time heres a link to the fully fixed patch.

The real patch
http://southark2.tripod.com/sitebuildercontent/sitebuilderfiles/smb4ubfx.zip
olaf
Guest
« Reply #11 on: January 24, 2007, 05:27:39 pm »

Quote from: southark2 on January 24, 2007, 03:44:29 pm
Well I figured I better reply again or nobody would even notice this,
I loaded my hack up in yy-mario and there was this box staring right at me that simple read freeze,
Needless to say after I fixed it I hit my self with a brick for being such a dumb ass.
You all could at least call me an name or something I won't get mad this time,
And besides it might make me feel better for being so dumb.
Anyway I don't got time heres a link to the fully fixed patch.

The real patch
http://southark2.tripod.com/sitebuildercontent/sitebuilderfiles/smb4ubfx.zip

fag
textfile
Guest
« Reply #12 on: January 25, 2007, 03:13:47 pm »

I can't believe SMB - Fix was not mentioned this entire thread, I use it on alot of hacks that were based off the bad dumps of SMB and it fixes them fine, well minus the title screen.

However it seems that there was another problem... meh.
Pages: [1]  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC