We are happy (and quite relieved) to now share our
VirtualBeat Audio Engine for the Virtual Boy: VBeat.
The full engine including the demo song and instruments are published under BSD 3-clause license.
In short: you can do whatever you want with it (just give credits).
However, we welcome feedback and possible contribution by others in the long run.
There is an extensive list of features on the source repository page:
You will also find some docs and HowTo there.
A YouTube video featuring the tune as well as the player engine is here:
And a recording from real hardware (in fact quite close to mednafen):
[audio src="http://enthusi.de/2021/vbeat/vbeat_recording.mp3" /]
You require the ISAS32.EXE assembler and ISLK32.exe linker to build the engine (as well as some .ISX to .VB converter).
The available SDK packages for GBC etc contain these still!
We hope to attract composers with this release and to motivate awesome music in future releases.
The attached ROM is 16KB in size and contains the full tune + some demo tracks (press ‘B’ to toggle tune and demo) + charset and texts as well as the engine and visual output routines. It takes less than 2% of the available time per frame.
We chose to support the very wide spread s3m format as it has all the features we needed and the s3m of the example Jazz tune is part of the release.
We suggest the free multi-plattform tracker ‘Schismtracker’ for composing. A lot of thinking went into a proper data format (see github readme for a full description).
Attachment fails currently but a zipped rom binary is here:
code & design: enthusi
tune & instruments: jammer
This was great fun!
enthusi & jammer
GuyPerfect for help getting into the VB and his awesome spec sheet! Without it there would barely be anything now.
Kresna for his inspirational free VB game written fully in assembly as well.
KR155E for welcoming me into the VB community.
Kevin Mellot for his wonderful HF32 cart.
Thunderstruck for the linux compatible CLI tool to flash the HF32.
Oh my goodness I just discovered this. Being able to draw waveforms sounds amazing; I was resigning myself to typing out waveforms for DogP’s old VB sound generator but this sounds much more optimal!
Thinking of writing a little script that can generate every possible waveform and hand picking samples out of that, hehe.
> Thinking of writing a little script that can generate every possible waveform
That’s 2¹⁹² possible wavetable combinations to generate. An absolutely massive lot of combinations. Roughly 6 followed by fifty-seven 0s. Too much to process and play out loud.
At this point, you should probably just find some nice-sounding waveforms online. The wavetable system of the Virtual Boy is a primitive form of PCM, so you could sample a single cycle of a musical instrument wave (scaled to 32 samples with 6-bit quantization) and have it sound close.