-
Notifications
You must be signed in to change notification settings - Fork 176
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #722 from Penncilk/wasm4GBVGMPlayer
Added My Game "Wasm4 Gameboy VGM Player"
- Loading branch information
Showing
3 changed files
with
18 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
--- | ||
author: Sine System | ||
github: Penncilk | ||
date: 2024-05-31 | ||
--- | ||
|
||
# Wasm4 Gameboy VGM Player | ||
|
||
I wrote an engine that allows Wasm4 to emulate the APU of the Gameboy at just a high level enough so that it doesn't tax on the runtime, | ||
|
||
it does this by recording all of the writes to each register in a space in memory, and whenever it's NOT writing to the registers, it either just waits for the next command, or, if a control register is written to, it will send a signal that tells Wasm4 to decrypt the register data and make a funky tune out of it, | ||
|
||
I kind of rushed the actual song as I was very tired after working on this, however if you liked it! the .vgm can be found in the .wasm with a hex editor, and the original song can be found here! https://youtu.be/XeMwf9YFT6s?si=KNNpsogCnXPY6P7h | ||
|
||
This is just a proof of concept, so there's not much to it unfortunately, and it is likely riddled with bugs. But if you would like to use this in your own projects, here's the VGM driver code! ^^ | ||
https://gist.github.com/Penncilk/23d4f76abdd73d2364ba075744c191db | ||
|
||
I hope you enjoy! |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.