Prototracker Save

Prototracker

Project README

Prototracker

Note: Prototracker is not the same thing as Prototracker-modular or Prototracker-OPLL. They have their own forks.

Prototracker is a multiplatform fakebit chiptune tracker. Try the online version.

The editor is a fairly normal tracker. The synth is an absolutely minimal single-oscillator synth (with 256 preset waveforms). Macros are used to create "instruments" and also some normal channel effects. Most keyboard shortcuts are the same as in Protracker. See the docs/ directory for help.

Supported platforms:

  • HTML5 (see the link above)
  • Windows (MinGW)
  • Linux
  • Mac (just use the Linux makefile)
  • Chip8 (runs great on a PocketCHIP)
  • Probably anything SDL2 supports

Building

Simply do make mingw where "mingw" is your platform of choice. Do make to see the supported platforms.

Building for OSX

To install SDL/SDL2 on OSX(using brew), type brew install sdl2 sdl sdl_image sdl_mixer sdl_ttf portmidi. If you are getting the fatal error: 'SDL_image.h' file not found error, type apt-get install libsdl2-image-dev. You should then be able to run make linux.

The binary needs the files in the assets/ directory to work properly.

Prototracker as a synth testbed

Prototracker was also created for testing audio/synth code (while having some minimal setup for a song structure), so it is quite easily extendable. Each of the channels runs an instance of ITrackState and IOscillator, and will simply extend IPlayer and ISynth to setup your own ITrackState (from IPlayer) and/or IOscillator (from ISynth).

The TrackState, Oscillator and Synth classes included (see src/) implement a minimal wavetable synth that has two extra track effects (W and Q). Since it's all per track, you can have each channel use a different set of effects and oscillators (think something like the audio capabilities of the NES). Just init the tracks in IPlayer::IPlayer() and ISynth::ISynth().

Open Source Agenda is not affiliated with "Prototracker" Project. README Source: kometbomb/prototracker
Stars
125
Open Issues
4
Last Commit
2 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating