tracker_engine.h 1.2 KB

1234567891011121314151617181920212223
  1. #pragma once
  2. #include "tracker_engine_defs.h"
  3. void tracker_engine_init(TrackerEngine *tracker_engine, uint8_t rate, SoundEngine *sound_engine);
  4. void tracker_engine_deinit(TrackerEngine *tracker_engine, bool free_song);
  5. void tracker_engine_advance_tick(TrackerEngine *tracker_engine);
  6. void tracker_engine_set_song(TrackerEngine *tracker_engine, TrackerSong *song);
  7. void tracker_engine_deinit_song(TrackerSong *song, bool free_song);
  8. void tracker_engine_trigger_instrument_internal(TrackerEngine *tracker_engine, uint8_t chan, Instrument *pinst, uint16_t note);
  9. uint8_t tracker_engine_get_note(TrackerSongPatternStep *step);
  10. uint8_t tracker_engine_get_instrument(TrackerSongPatternStep *step);
  11. uint8_t tracker_engine_get_volume(TrackerSongPatternStep *step);
  12. uint16_t tracker_engine_get_command(TrackerSongPatternStep *step);
  13. void set_note(TrackerSongPatternStep *step, uint8_t note);
  14. void set_instrument(TrackerSongPatternStep *step, uint8_t inst);
  15. void set_volume(TrackerSongPatternStep *step, uint8_t vol);
  16. void set_command(TrackerSongPatternStep *step, uint16_t command);
  17. void set_default_instrument(Instrument* inst);
  18. void set_empty_pattern(TrackerSongPattern *pattern, uint16_t pattern_length);