- by Munckeyz at 10:51 AM EDT on June 20, 2016
- Anything still going on with this project? I'm interested in hearing the soundtracks of the 3 Tony Hawk GBA ports in full unfiltered quality.
- by RebeccaSugar at 11:00 PM EDT on July 26, 2016
- There is, but, unfortunately, progress is very slow.
Unless someone coughs up a bit of dough to support development, it's going to be like this for a while.
- by Team Fail at 7:59 PM EDT on August 22, 2016
- Thought I'd give an update on this, but over the last few days I decided to try another crack at this to make at least some headway at this, and I managed to figure out the compression on the streamed audio aspect of this engine, and furthermore, implement a custom stream that the game willingly accepted and played:
It uses signed 8-bit PCM mono little-endian data, and the sample rate can vary, although the samples I had were at 12000 Hz and 8000 Hz. If you go to the gsf joshw page and look for "Crash Bandicoot - The Huge Adventure", there's an unused song in there (Called "Unused - Crash Bandy Kuu~!!.gsf") that makes use of these stream formats, and the song is actually split into two different streams - the intro portion, and the looping portion. The intro is 8000 Hz, the loop is 12000, but it is fully streamed. I'm working on finding all the switches and whatnot to make this work, and that tweet of mine shows this. I took the GSF and built it back into a ROM to do this research without all the garbage in the way, so hopefully if you want to look at it, that is a great start.
- by RebeccaSugar at 7:56 PM EDT on September 10, 2016
- Well, that is certainly something! Thank you for the input.
- Props on the GBA Project! by Miles Quickster at 9:08 PM EDT on September 19, 2020
- Just stopping by submit that I'm really interested to see how this project turns out. Unfortunately, I can't really do much to help, as I'm busy with university and my time is spread thin. I'm just eager to understand how sounds are programmed into GBA systems (and that's only 1 of many that have captured my interest).
While the state of soundfonts is pretty cool as it is right now, I still have yet to understand the way particular effects are generated; for instance the LFO effect that so far I've only seen Sonic Battle and Sonic Advance 3 (see Night Babylon from the SB OST and Special Stage from the SA3 OST, where in both tracks, the 8-bit instruments oscillate at particular points of the intro).
It's unfortunate that less popular games have seen interest in this kind of development, since we are still stuck with Sappy 2006 (which leaves MUCH to be desired) to tackle more obscure games, (where GBAMusRiper couldn't) like Sonic Battle and Yoshi's Island GBA. At least with Nitro Studio, (a tool made for parsing SDAT file systems in DS games) it actually tells you the settings configured on 8-bit channels, somewhat.
Anyway, it seems the Poké Community are still active, so that's quite promising. I'll leave this with you all. Thank you for the work and engagement you guys have committed so far.
edited 9:11 PM EDT September 19, 2020
- GAX2 Research by Droolie at 9:55 AM EDT on October 22, 2020
- Hey everyone,
I'm working on a map viewer for various Rayman games, and we recently added support for Rayman Raving Rabbids GBA. On the side I also made a function to export the music data... which uses the GAX2 engine.
I was able to export both the samples (as wav files) and create MIDI files for all of the songs (with the wrong tempo, as that doesn't seem to be part of the song data...)
The sequence data is in a fairly easy format and I would have put more work into exporting as XM/MOD/MIDI+SF2 if those formats were easy to write... but I tried looking into those and they were way too complicated (way more than the GAX data, haha!), so I gave up on being able to play these MIDI tracks with their proper soundfont.
However I will leave a link here to the structures I implemented, so that someone can create a better program for them: Ray1Map - GAX formats
If anyone wants to try this out, they need the Rayman Raving Rabbids GBA ROM of course and follow the tutorial on the main page of the repository to set up the project.
Oh, I should credit loveemu as they have created this gist with GAX research notes here, which I sadly discovered after I'd implemented it but used to give better names to some classes and fields: loveemu's GAX research notes
edited 9:57 AM EDT October 22, 2020
- More GAX2 Research by Droolie at 11:29 AM EDT on October 24, 2020
- Well, I ended up still working on this, but I'm officially defeated by the instrument pitch. I just cannot get that right.
You can compare my results to a recording here:
XM files exported from Ray1Map
Recording of soundtrack from an emulator
Since listening to broken music all day was driving me insane, I'll just leave getting this right to the next person to look into the GAX engine. In the meantime, my code can be found here:
Ray1Map - GAX formats
Ray1Map - GAX to XM converter
edit > A bit off-topic for GAX, but I also did a bit of research on the MusyX engine for GBA. Two Rayman games use this (Rayman Advance and Rayman Hoodlums' Revenge), and this can read and export sample data for both. The song data is also read, but not parsed. Presumably, this is very similar to the MusyX song data on other platforms like Gamecube. I'll contact the creator of Amuse to check if they want to look into it.
Anyway, the classes I implemented:
Ray1Map - MusyX formats
edited 11:03 AM EDT October 25, 2020
- by loveemu at 11:23 AM EDT on April 21, 2021
- Updated Research Note: Shin'en GAX Sound Engine V3 (GBA)
HCS Forum Index
Go to Page 0 1
Search this thread
Show all threads
Reply to this thread:
Halley's Comet Software