Giter Club home page Giter Club logo

devsound's Introduction

DevSound

DevSound is a sound driver for the Game Boy which supports pulse width manipulation, arpeggios, and multiple waveforms. This version is no longer under development, and I recommend using DevSound Lite instead.

Building a demo ROM and/or GBS

Note that the demo ROM is included already; these instructions are if you want to try your own modifications.

Windows

  1. Grab the RGBASM binaries. If you already have them, you can skip this step.
  2. Open a command prompt in the demo folder.
  3. Run build.bat. If that doesn't work, try either adding the RGBASM binaries to your PATH or copying them to the repository directory.

Linux

  1. Install RGBDS. If RGBDS is already installed, skip this step.
  2. Open a terminal in the demo folder.
  3. Run make.

Adding DevSound to your project

  1. Copy DevSound.asm, DevSound_Variables.asm, DevSound_Constants.asm, DevSound_Macros.asm, DevSound_SongData.asm, and NoiseData.bin to your project directory. If you're not using a file such as hardware.inc or gbhw.inc, you will need to include it as well.
  2. Allocate a ROM bank for DevSound. Make note of the bank number (unless your ROM does not use banking).
  3. Add the following line to your main loop: call DS_Play
  4. In order to load a song, use the following code:
ld a,SongID  ; replace SongID with the ID of the song you want to load
call  DS_Init
  1. In order to stop playback, use the following line of code: call DS_Stop
  2. In order to fade sound in/out, use the following code:
ld  a,X ; replace X with 0 to fade out, replace X with 1 to fade in
call DS_Fade
  1. If you need help, let me know. I can usually be reached on IRC at irc.efnet.org #gbdev, with the nick DevEd. I may also be reached on Discord in this server: https://discord.gg/gpBxq85. Just ping me (I go by the name DevEd on that server) if you need anything.

Projects that use DevSound

If you are using DevSound in your project, let me know and I'll add it to this list.

Frequently Asked Questions

TODO

devsound's People

Contributors

deved2 avatar issotm avatar pigu-a avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

devsound's Issues

Please include link to light version

Hi,

I propose providing a link to the light version which compiles fine under OS X and windows. The plain version does not compile.

Thanks for considering.

I just spent ages trying to get it working and then thought I’d try the light version that’s all.

Regards,
Laban

"Demoscene mode" is currently broken

Known issues so far:

  • Song $00 loads a corrupt waveform
  • Hardware volume envelopes don't seem to work on pulse 2
  • Pulse 2 volume is constantly updated rather than whenever the volume actually changes

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.