Retro Game Music Player for NSF / SPC / RSN, how to get started?

Let me start by saying that I have never developed a game. I am a programmer by trade but all of my work has been focused on either Java, C# or scripting languages to-date.

I'm looking to create an audio player that can playback audio dumps from NES and SNES roms.

My question is, how should I get started with this program? Should I use existing audio programs (most appear to be written in C) and port them to playdate OR should i focus on porting the audio file to a format that Playdate already understands?

As far as I can tell, the NSF format is a container for the music-generating code in a game, so it's not as simple as reading the data and calling the right Playdate functions (like it would be if you were playing a MOD file, for example). You'll have to use an emulator to play the file instead. I think you'll have better luck porting an existing player.

thanks for the response.

Separately, I've contacted Richard Bannister (of Audio Overload on the mac) and he recommends that I take a look at the game-music-emu library which contains support for a bunch of the old-school music formats which can be dumped from game carts.

I'll start there and see where this takes me. This is my maiden voyage into any kind of development like this so I'm sure I will be hitting pitfalls along the way!

2 Likes

I've made a tiny amount of progress. I've managed to compile and load the "Particles" example. It looks like this example code shows how to call into a C library from lua.

Separately I've created a "hello world" C library on my computer and i've been able to call into it from the lua command line.

Next up is to get my "hello world" library working via pdx file and run it on the device.