| |||
Views: 88,483,605 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 04-25-24 10:12 PM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 2 guests |
Main - ROM Hacking - MM1 Music Hacking | New thread | New reply |
Jimmy52905 |
| ||
Paratroopa Level: 29 Posts: 69/152 EXP: 144378 Next: 3507 Since: 01-25-08 Last post: 5103 days Last view: 4159 days |
(Sorry about all of these noobish questions, but...) Does anyone here know of a way I can hack the music in MM1 without all that fancy ASM stuff? I really want to change the music in my hack. ____________________ Come join my IRC channel, #Megahax for Mega Man hacking related discussions. |
Sliver X |
| ||
Paragoomba Level: 21 Posts: 41/66 EXP: 42452 Next: 7491 Since: 02-26-07 From: WV Last post: 5487 days Last view: 5343 days |
Yeah, I hacked MM1's music around 2001 or so, which was before I taught myself 6502. Two things helped me, though:
1: I was good at ROM hacking (For my level). 2: I've played music most of my life. Number 2 is probably the most important, as even if you do locate the music data you're left with the whole prospect of what you're going to do with it. Don't know music? Prepare for a slow and painful process that will make locating the data seem like a cakewalk. Actually, now that I think of it, locating the data would be ass easy these days if you use the Code/Data logger in FCEUXD. Log some crap, and start looking for blue sections (Data) and start corrupting/undoing until you locate it via the realtime hex editor. Then crack the format (Music knowledge basically essential). *edit* I followed your signature link and see that you do MIDI work. Well, realize that you're going to be sequencing by hand... in hexadecimal when you hack an NES game's music. Unless you code a custom editor for it or something. ____________________ Arc-Nova.org: More Chiptunes Than Your Mother Can Handle |
Insectduel |
| ||
Hammer Brother Level: 68 Posts: 68/1069 EXP: 2687648 Next: 41152 Since: 02-16-08 From: Insectduel's office Last post: 1256 days Last view: 1255 days |
Wow, Silver X. You really know how to disassemble music for games. Anyway I got a better answer. Since MM1 music data is already disassembled by someone, use this.
And if you're plan to rip music from other games, I bet the Code/Data logger in FCEUXD might be the the source before inserting them to MM1. I haven't got to music editing yet, plus my desktop computer do not have sound/sound card/directsound. It may be hard for me to install it or to hack music. Only my laptop has it but it is also Win98SE so my flash drive isn't gonna do it without USB Mass storage device. |
infidelity |
| ||
Fuzz Ball Level: 66 Posts: 35/968 EXP: 2367952 Next: 93899 Since: 05-24-07 Last post: 958 days Last view: 814 days |
Code/Data Logger is the #1 best way to do this work. I used it for Megaman Ultra, *MM2* And I'm currently using it with Megaman Ultra 2 *MM4*
Also, this is about the MM2 sound engine, but MM1 & 2 share the same engine, so these notes will apply to your rom. This was taken from a japanesse website, and translated, I'm sure you can make sense of it. $00 XX: Speed (the extent whose XX is large it becomes slow) $02 XX: Timbre change (inserting $00, $40, $80, C0 in XX, please try) $03 XX: Way volume change (only $FF you do not insert in the non darkness, note) $04 YY XX XX: The address which is shown with XX XX (the $28000 is not forgotten) to jump, the YY time it does that, (in case of 00 it is unlimited) $05 XX: It rises 1 sound each height of the key (concerning 1) the $06: Length of diacritic of one rear is designated as 1.5 times. $07 XX XX: But attenuation... because address it is not chased, don't you think? it is good and the わ can (someone to be possible) as for other things with 1byte Y length of diacritic (60 2 times that 40) plus does XX in the key which with XX is decided with height $05 XX of sound presently while collecting is (the ぉ ぃ diacritic data (rectangular group and triangular group) Y0 (40,60,80, A0, C0, E0) + XX (00 - 1F) concerning diacritic one. XX in case of the $00 it becomes the 休 sign. When we assume that $4F is 16 diacritical markses of ド, the $50 becomes 16 diacritical markses of the ド #, 6F becomes 8 diacritical markses of ド. It is in the midst of collecting concerning noise and effective sound. Hope that helps, and good luck |
Jimmy52905 |
| ||
Paratroopa Level: 29 Posts: 75/152 EXP: 144378 Next: 3507 Since: 01-25-08 Last post: 5103 days Last view: 4159 days |
Posted by Insectduel Thanks. I just now downloaded FCEUXD. But I can't figure out how I'm supposed to use the Code/Data logger to find music data. Can anyone tell me where the offsets for the music is located in both Mega Man 1 and Mega Man 2 (or atleast tell me how to use the Code/Data Logger properly)? ____________________ Come join my IRC channel, #Megahax for Mega Man hacking related discussions. |
Gil-Galad |
| ||
Goomba Level: 13 Posts: 14/26 EXP: 10254 Next: 13 Since: 12-08-07 Last post: 5034 days Last view: 5032 days |
All of the music data and code is located in a 16K sized bank. You can use the current NSF rip, take a few bytes and search in the ROM. Or, if you don't want to deal with the current NSF, dump the bank on your own using FCEU MOD or Nesten, by setting a write breakpoint to the address range $4000 - $4004, once you get a snap, dump $8000 - $FFFF. Trim off $C000 - $FFFF, you don't need it as it's the hardwired section of the ROM. Now you will have a nice isolated chunk of the sound driver. Doing this here could even be your introduction to very basic ASM.
You can also use Unofficial Nintendulator's debugger. Set a write breakpoint to the sound register range stated above, once you get a snap, look at the Offsets for the banks loaded. You can find the sequence data the hardway, without ASM by corrupting small chunks of data within the offset range where the sound driver is located at. I recommend using GNSF, as you can turn off and on the sound channels. This will help you track down the data a little better. Sliver-X has written a document explaining the process. What I do, takes less than one minute. Load the NSF up and set a PC address break for the init address entry point. Find out where the pointers are loaded at and then track them down in the ROM. Once you find the pointers, I bet that they are in a table as usual. The pointers will of course point directly to the data. Once you find the data, now the true hard part comes in modifying the data to make decent music. |
Main - ROM Hacking - MM1 Music Hacking | New thread | New reply |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 62, rows: 87/88, time: 0.016 seconds. |