m1:intermediate_guide:metroid_tuner
Differences
This shows you the differences between two versions of the page.
m1:intermediate_guide:metroid_tuner [2015/04/21 01:43] – created - external edit 127.0.0.1 | m1:intermediate_guide:metroid_tuner [2025/06/18 09:42] (current) – felixwright | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======Metroid Tuner Guide====== | + | ~~REDIRECT>m1:intermediate:metroid_tuner~~ |
- | + | ||
- | Metroid Tuner dumps and inserts music tracks for Metroid using a text-based format. | + | |
- | + | ||
- | =====Basic Usage===== | + | |
- | ====Dumping==== | + | |
- | + | ||
- | {{metroid: | + | |
- | + | ||
- | Click the button next to the “Rom File” input to browse for a ROM to dump (or just type in the full path). Then select what you want to dump from the “Presets” list. If you want to get tricky, you can select individual songs, or even individual tracks from songs, in the tree to the left (be warned, only one track specifies how long the song should be, and if this track isn’t dumped, the dumper will have a hard time figuring out when to stop dumping music data). There are also a couple of other song-related bits of data you can dump. | + | |
- | + | ||
- | The input boxes below the presets are mostly there in case you’ve moved around important data that you’ll probably never move around. Once you’ve picked your ROM and what you want to dump, click “Dump” in the lower-left corner. | + | |
- | + | ||
- | ====Sections==== | + | |
- | + | ||
- | {{ metroid: | + | |
- | + | ||
- | The good news is that you can freely ignore a lot of it. Skip down to “< | + | |
- | + | ||
- | ===< | + | |
- | The ''< | + | |
- | + | ||
- | Each level’s data resides in a separate, self-contained bank, and for some songs, there is a separate copy in each bank (for example, the item room music). Each dump file only deals with one bank (you can dump separate banks to separate tabs, however). Changing music data in one bank will never affect music in another bank. | + | |
- | + | ||
- | ===< | + | |
- | The ''< | + | |
- | + | ||
- | As a form of compression, | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | ===< | + | |
- | + | ||
- | The ''< | + | |
- | + | ||
- | ===Other Sections=== | + | |
- | + | ||
- | ''< | + | |
- | + | ||
- | ====Music Data Format==== | + | |
- | + | ||
- | Music data is represented as a list of notes, using the note’s letter, followed by a # for sharp or lowercase “B” for flat, followed by the octave. For example, a middle C would be written as '' | + | |
- | + | ||
- | Note lengths are specified by the number of frames a note will play. Since the game runs at sixty frames per second, a note length of 60 will play for one second, a note length of 30 will play for half a second, and so on. A note length is written as a colon, followed by a hexadecimal number. For example, '': | + | |
- | + | ||
- | // Example: first four notes of "When the Saints Go Marching In" | + | |
- | :20 // 0.5 second notes | + | |
- | C3 E3 F3 | + | |
- | :60 // 1.5 second note | + | |
- | G3 | + | |
- | + | ||
- | For the “Noise” track, instead of dealing with notes, we deal with sound effects identified by a number in the hex format “$XX”. These numbers are preceded by a dollar sign. '' | + | |
- | + | ||
- | Loops are enclosed in curly braces, with the number of times the loop will run before the braces. Nested loops are //not// supported. | + | |
- | + | ||
- | // Example: first eight notes of "When the Saints Go Marching In" | + | |
- | 2 { // Play these notes twice | + | |
- | :20 // 0.5 second notes | + | |
- | C3 E3 F3 | + | |
- | :60 // 1.5 second note | + | |
- | G3 | + | |
- | } | + | |
- | + | ||
- | Note that the layout of the music data is completely up to you. The above listing could also be written as the more compact and harder-to-read '' | + | |
- | + | ||
- | At least one track should have a “song terminator” at the end. This is represented by a double-zero '' | + | |
- | + | ||
- | One important thing to know is that you are restricted in what note lengths you can use (see < | + | |
- | + | ||
- | ====Inserting==== | + | |
- | In the toolbar in the text editor window, there is a button with a green arrow. If you hover your mouse over it, a tool-tip appears with the text “Insert”. Click this button. If everything goes well, there will be no violent explosions or scary error messages. Play the ROM and you’ll be able to listen to the inserted music. If there are errors, they will be listed at the bottom of the text editor. Right-click the error list to hide it. | + | |
- | + | ||
- | //Protip//: if you want to insert into a ROM without dumping anything first, using the “Dumper” tab, select your ROM, and use the “None” preset. It will bring up a text editor for the ROM with a blank slate where you can paste in your data-to-be-inserted. | + |
m1/intermediate_guide/metroid_tuner.1429580633.txt.gz · Last modified: by 127.0.0.1