Homebrew MusicPlayer Advance: ID-ing compression algorithm from 2003 homebrew

therealbenwiley

New Member
OP
Newbie
Joined
Feb 23, 2024
Messages
2
Trophies
0
XP
18
Country
Canada
Hi there, I'm new to these forums, looking for folks who might know about GBA homebrew toolchains from 2003.

I came because I'm working on trying to reverse engineer the ROM-building process for MusicPlayer Advance, Neimod's 2003 WinAMP-inspired homebrew for GBA. I know there are better-maintained music player solutions like GSMPlayer, but I find MPA to be charming and the Windows software for converting audio and packing it into the ROM still works!

The (somewhat tedious) process goes like this:
1. Convert audio files to PCM (WAV) with specific bitrate and sample rate
2. Use MPAWRITE.exe to convert PCM to "MPA" format (mystery compression), one file at a time.
3. Use MPAWRITE.exe to insert a playlist of MPA format tracks into the music player ROM.

I'm a web dev and I want to build a web app that automates this whole process, so you upload a list of songs and it spits out a MusicPlayer Advance ROM with your music included.

I already successfully spec'd the format used for packing MPA into the ROM, but I haven't figured out what compression is used to convert PCM to the MPA format. I figured folks familiar with early GBA homebrew toolchains might be able to provide insights. Were there common types of file compression, or common audio file types, used for homebrew games at the time?

I have attached a folder with all the MusicPlayer Advance files, plus a text file where I describe the spec of the MPA audio storage in the GBA ROM, and also a before/after sample of PCM converted to MPA.
 

Attachments

  • MusicPlayer_Advance_2-20240224T170549Z-001.zip
    1.4 MB · Views: 24
  • Like
Reactions: Titney

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BakerMan
    I rather enjoy a life of taking it easy. I haven't reached that life yet though.
  • K3Nv2 @ K3Nv2:
    Nah that could actually bring lawsuits
  • K3Nv2 @ K3Nv2:
    Tempsuits
  • BigOnYa @ BigOnYa:
    PollySuits
  • BigOnYa @ BigOnYa:
    Your correct, Somebody would be guilty and there would be riots, then they storm the gbatemp capitol,
  • K3Nv2 @ K3Nv2:
    Online or not there are still certain rights that judges would have no issue handing out a warrant over
  • K3Nv2 @ K3Nv2:
    Just look at Kim dotcom
  • BigOnYa @ BigOnYa:
    Honestly I'm scared to, from you, but ok, lemme turn on vpn, virtual machine, private browser first
  • K3Nv2 @ K3Nv2:
    Remember that Alexa robot I gifted you
  • K3Nv2 @ K3Nv2:
    And that laptop Webcam you never tapped up
  • BigOnYa @ BigOnYa:
    That robot is here somewhere, I hear it moving around at night, but I haven't seen it for months.
  • BigOnYa @ BigOnYa:
    Oh that laptop I give to ancientboi, so you been watching him for months, and he's been watching you
  • K3Nv2 @ K3Nv2:
    Oh good more than enough material for the fbi
    +2
  • BigOnYa @ BigOnYa:
    Damn its 5 in morn, I gotta Go wake your mum and send her to work. Check ya later.
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    He could make so much money!!! His arm would never get tired lol
    +2
  • S @ salazarcosplay:
    How are yall doing
    +2
  • VXNlcm5hbWU @ VXNlcm5hbWU:
    Just had a pure banger of a sandwich there, was very nice
    +1
  • BakerMan @ BakerMan:
    what do you call a dog with no legs?
  • Psionic Roshambo @ Psionic Roshambo:
    A hot dog?
  • BakerMan @ BakerMan:
    doesn't matter what you call it, it won't come
    +1
  • SylverReZ @ SylverReZ:
    I'm having mince beef burgers with flat cheese and tomato sauce.
    +1
    BakerMan @ BakerMan: