simple exercise timer

namark 9af05a5f25 Library updates. 8 months ago
docs 00a3cc9779 Not melno anymore. 3 years ago
res e378399717 As in I wish it wasn't hard coded. 1 year ago
source 9af05a5f25 Library updates. 8 months ago
tools 23d090d541 Added simple motion library. 3 years ago
.gitignore 655454ceeb Ignoring custom library linkage file. 3 years ago
COPYRIGHT 1bf8b5b29c Updated copyright. 9 months ago
LICENSE c7040e8c6a All the boring stuff. 5 years ago
Makefile f3b91f89ed Replace the Makefile with a template. 9 months ago
README.md 00a3cc9779 Not melno anymore. 3 years ago
release.sh a036ff0aed Am I going to end up with my own shell script based build system? :/ 9 months ago

README.md

This is a simple GUI timer sequencer.

Use instructions

Overview

WIP

Special secret dangerous command line parameters

When starting the application from command line there are 4 positional parameters that you can specify:

  1. The name of the audio file to be played when timer reaches 0 (default: ./truwo.wav). Currently only WAV format is supported. You can specify an empty string to disable sound.
  2. The primary/foreground color of the UI, specified as a number/code. (default: 0x009dff).
  3. The secondary/background color of the UI, specified as a number/code. (default: 0x000000).
  4. The frame time in milliseconds (default: 33).

Any invalid input (non existent files, wrong file formats, wrong number formats, etc.) will gracefully crash the application.
The audio file is loaded into memory in its entirety when the application starts, so be careful with large files.

Build instructions

Below are build instructions for GNU systems (including cygwin on Windows), primarily using make. If that does not suit your needs it should not be hard to set this project up with your favorite build system IDE. See the dependencies in the next section.
Basic setup
Compile and run
More on some of these makeshift tools

Dependencies

libsdl2
libsimple_graphical
libsimple_interactive
libsimple_musical
libsimple_geom
libsimple_motion
libsimple_support
libsimple_sdlcore
cpp_tools

The SDL2 headers are expected to be in a directory named SDL2. libsimple are all static libraries. cpp_tools is only necessary for building with GNU make as outlined in the previous section.
There are also source archives in releases, which have all the simple libraries included, so using that you won't have to individually setup those.

Licensing

COPYRIGHT and LICENSE apply to all the files in this repository unless otherwise noted in the files themselves.