HerrZatacke / 2bit-pxlr-studio

A custom ROM for the Game Boy Camera
MIT License
94 stars 5 forks source link

Add a "sound engine" #23

Open HerrZatacke opened 2 years ago

HerrZatacke commented 2 years ago

Help appreciated for generating some more recognizable sounds accompanying user interactions

Raphael-Boichot commented 2 years ago

Some "appealing" sounds found by bytebanging the registers

void poink(){ NR10_REG = 0x15; NR11_REG = 0x96; NR12_REG = 0x73; NR13_REG = 0xBB; NR14_REG = 0x85; }

void jump(){ NR10_REG = 0xC6; NR11_REG = 0x8C; NR12_REG = 0xB3; NR13_REG = 0x4F; NR14_REG = 0xA2; }

void neogeo(){ NR10_REG = 0x4C; NR11_REG = 0x70; NR12_REG = 0xD5; NR13_REG = 0x8F; NR14_REG = 0xDF; }

void boink(){ NR10_REG = 0xB7; NR11_REG = 0x8B; NR12_REG = 0xA3; NR13_REG = 0x30; NR14_REG = 0x97; }

void plik(){ NR10_REG = 0x96; NR11_REG = 0x5A; NR12_REG = 0x57; NR13_REG = 0x32; NR14_REG = 0xBE; }

void bell(){ NR10_REG = 0x8F; NR11_REG = 0xE7; NR12_REG = 0xB5; NR13_REG = 0x6E; NR14_REG = 0xB4; }

void blik(){ NR10_REG = 0x46; NR11_REG = 0x0F; NR12_REG = 0x5E; NR13_REG = 0xA8; NR14_REG = 0x8F; }

void piano(){ NR10_REG = 0x8D; NR11_REG = 0xC6; NR12_REG = 0x85; NR13_REG = 0xB0; NR14_REG = 0x96; }

bbbbbr commented 2 years ago

You might also consider using the small Sound FX driver CBTFX: https://github.com/datguywitha3ds/CBT-FX

Then it's easy for people familiar with FX Hammer to create very nice SFX that can be imported.

I just added it into my current project and it was easy.