Giter Club home page Giter Club logo

bintracker-prototype's Introduction

Bintracker

A hackable Chiptune Audio Workstation for the 21st Century

Bintracker Screenshot

About

Bintracker is an advanced, cross-platform chiptune music editor that supports many different sound routines on a wide range of 8-bit and 16-bit target systems. It is also an interactive programming environment running on top of Chicken Scheme.

At a basic level, Bintracker looks and feels like a music tracker, and can perfectly well be used as such. However, it also incorporates a range of features normally found in digital audio workstations and audio programming languages.

Both the editor itself, as well as the range of supported chiptune drivers and target platforms can be extended through plugins.

Current State

Bintracker is at alpha stage. While the basics are implemented, most of the advanced features are still in the making. Also, there are many bugs and missing bits and pieces here and there, so expect frequent crashes.

Things you can do at this point include:

  • Compose music for various sound engines on a limited range of target systems
  • Export music modules for target hardware
  • Assemble code and control external emulators
  • Control the application through the Scheme language shell (REPL)
  • Add your own sound engines and plug-ins

Target Systems

Currently, the following target systems are supported with one or more sound engines:

  • Atari 2600/VCS
  • Dragon 32
  • Fairchild Channel F
  • Exidy Sorcerer 4 Voice Music System
  • Sinclair ZX Spectrum (beeper)
  • Tandy Color Computer 3
  • TRS-80 MC-10

Eventually, Bintracker will feature sound engines on a wide range of target platforms, with a focus on lesser known systems.

Setup

Windows users can grab the latest alpha build on the Release page. A bit of manual configuration is required, see the instructions here.

Users on other operating systems need to compile Bintracker from source. Only Linux builds have been tested so far. macOS builds should be possible with some minor adjustments, though this is currently unsupported. Please get in touch if you manage to get a macOS build running.

Contributing

Contributions are most welcome! Besides working on the Bintracker source itself, there are a lot of different tasks that need help, from designing icons, testing, writing demo tunes, creating tutorials and documentation, to running infrastructure, writing plugins, and adding support for new sound drivers.

Check out the Contributor's Guide for more information on how to get started contributing to Bintracker. If you need help or have any questions, feel free to open an issue here on Github, or send us a message.

bintracker-prototype's People

Contributors

utz82 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bintracker-prototype's Issues

BetaPhase crashes from playing note on channel 3

  • Input up on the PSCC column.
  • Input any note on the C column.

I am not sure if BetaPhase actually crashes when it encounters such data; even if this is the case the tracker should be shielded from crashes on the emulation side.

Looking for help with CI

Looking to improve continuous integration with Travis. Ideally Linux, Mac OS X, and Windows (via mingw) builds should be tested, and a release with packages for these 3 platforms should be deployed on pushing a tag. If you can assist with this, please get in touch.

Problems with graphics: flickering screen

I have problems with graphics. I don't know if this is allegro5 problem.
For some reason, when I open the tracker, the objects on the screen are constantly flickering. When I write something in the pattern, the note disappears and appears again. If I delete something from the pattern, it reappears and disappears again, although there's nothing there anymore, as if some old buffer is being displayed. I can't use the tracker because of that.
I have no idea what's happening and how to fix it.
This is how it looks like:
ok
deepinscreenshot_bintracker_20171004221250
but then it flickers like this
deepinscreenshot_bintracker_20171004221304
and then it repeats.
I'm using manjaro linux and has installed allegro5 from AUR (allegro5-git)

CHAR_WIDTH identifier collides with limits.h macro

Compilation fails. I'm on Arch Linux with clang 4.0.1, libc++ 4.0.1, and allegro 5.2.2.

clang++ -c -O2 -std=c++11 -ffast-math -stdlib=libc++ -o bintracker.o bintracker.cpp
In file included from bintracker.cpp:5: 
./gui/gui.h:81:23: error: expected unqualified-id
constexpr const float CHAR_WIDTH() {return 10.0f;}
                      ^                 
/usr/include/limits.h:147:22: note: expanded from macro 'CHAR_WIDTH'
#  define CHAR_WIDTH 8

1 error generated.
make: *** [makefile:21: bintracker.o] Error 1

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.