Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - Weird Game Genie code for SMB | |
Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 1496/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-04-04 05:00 AM Link | Quote
A long long time ago, in a house far far away, I stumbled across the code "ININIT" while playing around, which makes the game always play the 1-1 music (which sounds pretty cool on the lives screen). Recently, I decided I wanted to rip some sound effects from the game. Since I haven't seen any No Music codes, I thought I'd try messing around with that one a bit to see if it could stop the music. (I managed to do it, but the game would also freeze. ) So I figured I'd just decrypt the code and play with the ASM a bit.
Now, here's the odd part. The code decrypts to 76DD=75. FCEUd reports that this address is in a huge field of emptiness that never gets executed. I tried DD76 instead, it was a BEQ instruction that runs every frame, but without any way to change the instruction, things get somewhat difficult. (Plus, with the code on, neither of those addresses changed. WTF?)

So, what address does this code actually modify, and how do I kill the music?

[edit] XNINIV + XNINTV, which NOPs out the whole thing, has the same effect. Hmm...
ESINIT, changing the BEQ to a BNE, doesn't do anything?
EUINIT makes the music sound more like a parent would hear it.


(edited by HyperHacker on 09-03-04 08:56 PM)
Keikonium
Banned
Level: NAN

Posts: 590/-2459
EXP: NAN
For next: 0

Since: 04-02-04

Since last post: 63 days
Last activity: 9 hours
Posted on 09-04-04 05:35 AM Link | Quote
Turn off your speaker

But really, I think if you take that code, and put it into ZSNES, it will tell you the location in the ROM that the code refers to. I know that this is a NES game, but I still think it might work. At zophars there may be a program that you input a GG code and it will tell you the location in...hex? Just search around there, Im pretty sure there is one.

Were you trying out this code on the real game and then hacked a rom of it? Cause you do know all the little variations that you can get from one code right? Like the letter swapping, A-->K O-->P etc etc.

**EDIT:**

While trying out some game genie codes looking for a no music code I came across some interesting ones:

KKGAAE - Slow Music In Black Emptyness

Okay, I just stole these from a site. Lots of music and SFX ones...

SFX Codes

NAGNAG-new sound for stomping
NAGNAK-Many SFX different.
NAGYAG-Many SFX different.
NZZNZG-Many SFX different.
NAGNIG-Stomping FX different.
NAGNZG-Hitting block FX different.
NAGNLG-Stomp FX different.
AAGNAG-Stomp FX different. Freezes.
EAGNAG-Block, stomp FX different.
NOGNAG-Go down pipe FX different.
PAGNAG, NGGNAG, NTGNAG-Many FX different.
AXINAL-Jump FX different.
AUINAL-No jump FX. Also a behavioral code.
AVINAL-Jump and fire FX are different.
PVINAL-Jump, fire, and powerup FX are different.

Music Codes

NGGNAY-creates interesting music from all songs (loops several notes and
plays various bass parts over this)
NIGNAY-takes the DrumMix (explained later) and inserts pauses into it
YAGNAY-plays briefly some of the end-game music and then stops-only works
occaisonally
OGGNAY, XGGNAY, UGGNAY, KGGNAY, EGGNAY-All of these are similar to NGGNAY,
but each is different from the rest.
STAPTO-Music stops immediately.
PPPPPP-Various tunes are switched around.
EGXNAY-Drums are off-time. Also a graphics code.
YYYVYU-When you stomp an enemy, music goes through several variations.
KOTAGE-No sound at all.
PIPPPP-Plays invincibility music constantly.
PAPPPP-Loops normal music constantly.
POZPIS-When you interact with blocks, enemies, the music screws up.
NAGNAN-Music skips.
NYGNAG-Music skips.
AGGNAY, ZGGNAY-One instrument plays some wrong notes on a sine wave.
GGGNAY-Same as AGGNAY but with banjo sound.
POTPIE-Freezes with great grinding noise.
EOPOPE-No music. Also a graphics code.
APPPPP, PPPPPP, TPPPPP-Mixed-up music.
EPPPPP, LPPPPP, SPPPPP, NPPPPP-Weird music.
ZPPPPP, GPPPPP, VPPPPP-No music.
XPPPPP, UPPPPP-Underwater music.
KPPPPP-Fortress music.
SKINIT-Between-level music.
UNVUXV-Repeating music.
STOPPP-Starman music.
TGOOIG-Remixes on the fly.
YGOOIG, TAOOIG, TPOOIG, TZOOIG, TLOOIG, TYOOIG-These all do fantastic
remixing which depends on what Mario does!
EPONLY-Fragmented music; some instruments off-time.
PISNLY-Music stops immediately.
NZXNLY-Trance remix.
NLXNLY-Similar remix.
AEENLY, ZEANLY-Sound effect music freakout!
NVXNLY, SEXNLY, XXXNLY, Adds a short-decay instrument (like a terrible synth
banjo sound) playing the melody.
OZXNAY, NZXNAY, EPXNAY, APXNAY-All these make the drums off-time in various
ways.
PPPNLY-Music starts and stops frequently.
EPPNLY, APONAY, TVYNLY, EPONLY-All these make the melody off-time and the
music starts and stops.
PPENLY, NZANLY, NZENLY-All these make the bass strange.
ZLLNLY, NZYNLY, NTXNLY, NYXNLY, NZNNLY, NZXNPY, NZXNZY-All these codes make
really cool remixes of the music with extra drums.
ZOANLY, ZXENLY-The melody is turned off.
NUNNLY, YVYNLY, VNNNLY, UUUNLY-If the Mario/duck hunt cart is in, these will
first make weird slow interpretive ballad music and then go into a warped
duck hunt with the coolest music you've ever heard!!! If the cartridge of
just Mario is in, that ballad music will continue.
NANNLY, PZZNAY-Drums off-time, melody slow/off.
YLYNLY, GINNLY-Music skips frequently.
NSXNLY, NNXNLY, SUXNLY-Adds a pure, no decay sine wave (like a synthesized
clarinet) playing the melody.
NUXNLY, NXXNLY, IOXNLY-Adds another melody sounding more like an oboe.
TZXNLY, NIXNLY, NGXNLY-Every instrument is odd or skipping.
NZXNUY, NZXNOY, NZXNSY-Makes one note more prominent.
EPONAY, EPONEY-Strange fragments of all songs and instruments.
NEXNLY-Soft clarinet melody.
NZONLY, NZPNLY-Strange transitions between sections of music.
NIGNAY-Start/stop minimal music.
PPONAY-Fragments of normal music.
YEANLY-Like ZEANLY.
YVONNE-Makes great noise.
AIPPAT, EIPPAT-Drums occasionally stop. Also a new world code.
AIZPAT-Music starts/stops and drums cut out. Also a new world code.
ATINAL-Music replaced by grinding noise.
ETINAL-Similar to ATINAL.
OTINAL-This and *TINAL replaces the music with different noises.
AEINAL-Music and SFX freak out.
APINAL-Constant grinding.
AGINAL-Different constant grinding.
ASINAL-Wonderful musical freakouts triggered by jumping. Freezes.
ATINZL-Hum and hiss.
TVVOAE-Altered underwater music.
ZZAYGN-Great warped music.

**Last Edit Promise...**

Here is a link to the program I was talking about as well as a write up:

Game Genie Thingy

What it does:

This program allows you to open an NES rom and type a game genie code. The program converts it to a hex address and puts a value into it. The change is permanant, so be sure to make a backup before you start adding cheat codes.

Hope some of this stuff helps


(edited by Keikonium on 09-03-04 08:43 PM)
(edited by Keikonium on 09-03-04 08:56 PM)
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 1497/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-04-04 06:08 AM Link | Quote
Eh, ZSnes doesn't play NES games.
I found the original code on a real NES, and have been doing these in FCEUd. I was using a program from Zophar's (I think) but it seems to give the wrong address.
The code 'ZPPPPP' seems to have done the trick, though. Thanks!

[edit] Now I don't suppose you have similar codes for Zelda and Final Fantasy? (I'm ripping sound effects. )


(edited by HyperHacker on 09-03-04 09:13 PM)
Keikonium
Banned
Level: NAN

Posts: 592/-2459
EXP: NAN
For next: 0

Since: 04-02-04

Since last post: 63 days
Last activity: 9 hours
Posted on 09-04-04 06:13 AM Link | Quote
No problem. I know that the ZSNES doesn't play nes games, I was just saying that you could insert the code, and look at the address. Now that I think about it, what I said made no sense.

So glad I could help. Now just take that program, insert ZPPPPP and it will make no music...but why would you want no music anyway? I would use one of the remix codes, that would give the hack (if the remixes sounded good) a nice special touch.
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 1500/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-04-04 08:29 AM Link | Quote
Originally posted by HyperHacker
I'm ripping sound effects.

Music gets in the way. Woo, 1500th post.


(edited by HyperHacker on 09-03-04 11:29 PM)
Shadic

Cukeman
Level: 27

Posts: 99/304
EXP: 111073
For next: 5086

Since: 08-20-04
From: Somewhere, Over the Rainbow!

Since last post: 9 days
Last activity: 2 hours
Posted on 09-04-04 08:35 AM Link | Quote
Those codes look great, stupid comp I'm on (Win 98) won't load the program.

I'll try once I'm home....

It'll go great with my graphics.
Keikonium
Banned
Level: NAN

Posts: 596/-2459
EXP: NAN
For next: 0

Since: 04-02-04

Since last post: 63 days
Last activity: 9 hours
Posted on 09-04-04 09:19 AM Link | Quote
Originally posted by HyperHacker
Originally posted by HyperHacker
I'm ripping sound effects.

Music gets in the way. Woo, 1500th post.


oh...

well good luck to you

And Shadic, I am on win98 here to and it works fine... If you want some graphics codes, just go to GameFaqs.com and look up the game genie codes for this game. Thats where I *cough*stole*cough* this list from
bbitmaster

Koopa
Level: 18

Posts: 16/103
EXP: 25264
For next: 4633

Since: 03-28-04
From: Knoxville, tTN

Since last post: 12 days
Last activity: 7 days
Posted on 09-04-04 09:38 AM Link | Quote
I could not get my post to show up correctly no matter what I tried, so I just stuck it in a text file and uploaded it here.

http://bitmaster.panicus.org/misc/smb1code.txt

Just click that and pretend you read it right here as my post, I hope this isn't against any rules.

If there is a way to post something like that here without a ton of smileys appearing, and the spacing going all wrong, someone please PM me with the method. There really should be a way to do this if there isn't.

Anyway Hyperhacker, that trace log shows what your code seems to do.
Cellar Dweller

Flurry
!!!
Level: 27

Posts: 133/269
EXP: 107817
For next: 8342

Since: 03-15-04
From: Arkansas

Since last post: 16 days
Last activity: 34 min.
Posted on 09-04-04 10:27 AM Link | Quote
Originally posted by bbitmaster
...I hope this isn't against any rules.


It can't imagine how that could be against any rules.


If there is a way to post something like that here without a ton of smileys appearing, and the spacing going all wrong, someone please PM me with the method. There really should be a way to do this if there isn't.


I'll post it here so others can learn.

You can preview it and then look for where smiley replacementments have occurred. For each smiley escape one of the characters with an ampersand ("&"), followed by a number sign ("#"), followed by the ASCII code of the character in decimal, followed by a semicolon (";").

For example:
":)" -> ":&#41;"

Previewing will mess some of these codes up, so hit the back button before submiting if you preview.

The <pre></pre> tags can be used to keep plain text files aligned.


(edited by Cellar Dweller on 09-04-04 01:35 AM)
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 1507/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-05-04 04:15 AM Link | Quote
Alright, I see what's going on.

I don't know how you came up with $DD76.

$76DD byteswapped. The code there does actually seem to be music-related, though.


$F698:A5 FB LDA $FB = #$01 A:00 X:00 Y:00 ;A gets loaded with what music to play.

So if we changed that to 'LDA #$xx', we could force it to play a certain track? Hmm...


Notice the code changes $F6BB

You mean $F6DD.

*Fiddles with ASM a bit*
Well it seems that any time I change the value, it just makes some messed-up sound. Are you sure that's the right instruction?
Here's my results:

Music Modifier Code!
OXPNAV + [any of the following lines]
AEPNPT = No music, just SFX
PEPNPT = Messed-up noise
ZEPNPT = More messed-up noise
LEPNPT = Guess what?
bbitmaster

Koopa
Level: 18

Posts: 17/103
EXP: 25264
For next: 4633

Since: 03-28-04
From: Knoxville, tTN

Since last post: 12 days
Last activity: 7 days
Posted on 09-05-04 09:22 AM Link | Quote
Yes, I did mean $F6DD you caught my mistake :-)

When looking at your codes I see what you're trying to do. And in theory you would think this would work but you have to understand the asm code better. $FB normally always contains 00. When the game wants a new tune to get played, it seems to simply write the number for it to $FB. This routine reads FB and if it isn't cleared (or 00) then it begins playing that tune, then later it clears $FB. By making it always load a certain number, you're telling it to continously restart playing a certain tune, which just comes out as a messed up sound.

Really, the best way to force it to play a certain track would be to change the instruction that writes the track number to play in $FB so that it writes something else.

I found a table that tells what gets wrote in there for what type of level. This table is at $10F7-10FC in the *.nes file (with header).

$10F8 tells what gets played for the level 1 type music. Setting it to $80 (with the quick game geneie code EETOAA) will silence the music for that level. Setting it to other values will cause other tunes to play.

If you're just wanting to silence all the music in the game, then clear out that instruction that reads from $FB, by changing $76A8 in the ines file to $85. Or use the quick GG code SEPNAT.

heh, I like how those codes came out EE to AA, and Sep Nat. Easy to remember.


(edited by bbitmaster on 09-05-04 12:23 AM)
Shadic

Cukeman
Level: 27

Posts: 104/304
EXP: 111073
For next: 5086

Since: 08-20-04
From: Somewhere, Over the Rainbow!

Since last post: 9 days
Last activity: 2 hours
Posted on 09-06-04 12:41 AM Link | Quote
Originally posted by Keikonium
Originally posted by HyperHacker
And Shadic, I am on win98 here to and it works fine... If you want some graphics codes, just go to GameFaqs.com and look up the game genie codes for this game. Thats where I *cough*stole*cough* this list from


Meh, must just be this computer, but I'll look more into it at my house, if it still doesn't work there...

EDIT: I can't get it to save the changes, except once, accidently...

It was quite odd actually, you'd fire a fireball, and the enemies would teleport closer to you...

Was that meant to happen? And I can't remember what I entered... I was just trying to make it work.. >.<


(edited by Shadic on 09-06-04 12:53 AM)
Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Rom Hacking - Weird Game Genie code for SMB | |


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.017 seconds.