Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap #2

Open
12 of 26 tasks
stoneface86 opened this issue Jul 26, 2022 · 0 comments
Open
12 of 26 tasks

Roadmap #2

stoneface86 opened this issue Jul 26, 2022 · 0 comments
Labels

Comments

@stoneface86
Copy link
Owner

stoneface86 commented Jul 26, 2022

This issue will serve as a roadmap for planned features. Feel free to suggest new features here, or discuss any of the planned features. Note that the roadmap may change at any time, as certain features may be prioritized as necessary. Reminder that this repo is the back end of Trackerboy, so suggested features are those that change the internal workings of Trackerboy. Trackerboy's roadmap is located here.

v0.10.0

  • Pattern compiler + Driver
    • export to .asm (tbengine)
    • export to .gbs
  • .vgm export

v0.11.0

  • Length counter support
    • Introduce new effect 6xx
  • Bump file format minor (2.1 revision E)

v0.12.0

  • Module options
    • 4xy Vibrato style (square, triangle, sine)
    • Introduce new minor in file format (2.2, revision F)

v0.12.0

  • Extended sequence options (absolute, fixed, relative)
    • Introduce new major in file format (3.0, revision G)

Unplanned

Completed

v0.9.0

This update contains several API-breaking changes that are necessary for the pattern compiler.

v0.8.0

  • Envelope sequences (API Breaking)
    • Remove initEnvelope and envelope fields in Instrument
    • Implement behavior in engine module
  • Module piece file format
  • Bump major in file format (2.0, revision D)
    • INST block will now store an additional sequence, skEnvelope
    • INST block will no longer have the initEnvelope fields
    • SONG block will contain a timing option (see below)
  • Per-song timing option (see below)
  • mono export option for wav exporter

Envelope sequences

The envelope setting in instruments will be replaced by a sequence, which will allow for volume envelope macros or
wave macros on CH3.

Existing modules that have instruments with an initial envelope set can be converted to an envelope sequence with a single entry. Instruments without an initial set will have an empty envelope sequence.

Per-song timing option

Currently, song timing is determined by the module's system setting (59.7Hz, 61.1Hz or a custom integer framerate).
This feature will add a per-song option to either use vblank (system setting) or the game boy's hardware timer for timing.

v0.7.0 (nim rewrite)

  • engine module
  • wav exporting

Discussion

Feel free to comment below if you have any suggestions with the roadmap outlined above. For feature requests, please create a separate issue, which I will then add to the roadmap if the request is doable.

@stoneface86 stoneface86 pinned this issue Aug 11, 2022
stoneface86 added a commit that referenced this issue Sep 21, 2022
update README about tbc
add documentation page for tbc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant