Commit Graph

433 Commits

Author SHA1 Message Date
9b9dc3548f feat: add multithreaded rendering to the tracker side
The compiled player does not support multithreading, but with this,
users can already start composing songs with slightly less powerful
machines, even when targeting high-end machines.

Related to #199
2025-10-31 19:40:02 +02:00
c583156d1b style(tracker/presets): set the voices of all presets to 1
The voices are anyway set during presets loading, so this value is
not honored.
2025-10-26 19:18:46 +02:00
c1ea47a509 feat(tracker/presets): improving and adding presets 2025-10-26 19:13:19 +02:00
362bc3029f feat(tracker/presets): add Noise sweep up & down presets 2025-10-23 15:27:54 +03:00
213202a7e0 feat(tracker/presets): add a modified version of Piano Whitespace 2025-10-19 20:00:36 +03:00
e08af03fb2 feat(tracker/presets): Sine bells and Chaos bass presets from Reaby 2025-10-19 19:34:53 +03:00
8e99c93d14 refactor: use yaml.v3 everywhere and remove dependency on yaml.v2 2025-10-19 17:13:00 +03:00
f4bb2bc754 feat(tracker/presets): add piano from noby's Whitespace intro 2025-10-19 17:02:03 +03:00
de366316d4 fix(tracker/gioui): short action key pressed without handler crash 2025-10-19 16:22:07 +03:00
7a43aec50e fix(tracker/presets): avoid NaNs from color:0 in Alpha_omega preset
The color was just flipped i.e. by using color:128.
2025-10-19 13:21:18 +03:00
2336a135c6 feat(tracker): add a preset explorer with search and filters
Closes #91
2025-10-19 12:04:41 +03:00
c64422767e fix(tracker/gioui): show minimized loudness in red when > 0 dB 2025-10-14 22:23:16 +03:00
1dcd3fe3c6 refactor(tracker/presets): clean name-fields from presets
The file name will be used as their name anyways.
2025-10-14 17:14:59 +03:00
c0488226d2 fix(tracker/presets): avoid NaNs (pulse instead of trisaw&shape:128) 2025-10-14 16:58:52 +03:00
f894e2ee86 feat(tracker/presets): remove dbgain units from presets 2025-10-14 16:29:10 +03:00
54a8358522 feat(tracker/presets): rework presets & normalize to approx. -12 dBFS true peak 2025-10-14 16:06:05 +03:00
bdfe2d37bf feat(tracker): panic synth if Inf or NaN, and handle these in detectors
Closes #210.
2025-10-08 08:53:46 +03:00
989b6e605b feat(tracker/presets): improved and new presets from Reaby 2025-10-05 14:06:00 +03:00
7459437822 feat(tracker): don't save instrument name in instrument files
The filename is used as the instrument name when it is loaded.
2025-10-05 14:06:00 +03:00
55f9c36bd5 feat(tracker/gioui): show file explorer error messages to user 2025-09-27 21:06:26 +03:00
5839471bcc fix(tracker/gioui): limit comments in unit list to single line 2025-07-30 18:10:15 +03:00
fe0106bb60 fix(tracker/gioui): show unit search list after clicking "Add Unit"
Closes #204
2025-07-24 11:03:34 +03:00
3163f46447 feat!: both native & Go synths are included in the same executables
Closes #200
2025-07-10 17:46:00 +03:00
072e4ee208 fix(tracker/gioui): knobs/switches capture scrollwheel only active 2025-07-09 01:37:18 +03:00
cf86f3f1c8 feat(tracker/gioui): make knob/switch/port hit box the entire cell 2025-07-08 23:53:03 +03:00
8e5f3098a4 feat(tracker/gioui): switches just clickable & cycle between states 2025-07-08 23:01:55 +03:00
452a4cf04f feat(tracker/gioui): ctrl+drag changes knob value faster
Slow down the normal dragging 4 x slower.
2025-07-08 22:33:19 +03:00
5841848813 feat(tracker): reduce speed of parameter changes when ctrl pressed 2025-07-08 22:26:30 +03:00
0ce79978d5 feat(tracker/gioui): right click resets knobs instead of doubleclick 2025-07-08 22:22:01 +03:00
4138c34574 fix(tracker): make signal stack errors show for much longer time 2025-07-08 22:21:17 +03:00
172fbaeb2a feat(tracker/gioui): make switches left&right clickable when active 2025-07-08 22:10:54 +03:00
666af9433e feat!: display the parameters as knobs in a grid
Also removed the negbandpass & neghighpass parameters
and replaced them with bandpass & highpass set to -1, to
fit the switches better to the GUI.

Closes #51, closes #173
2025-07-08 19:47:32 +03:00
c3caa8de11 fix(tracker/gioui): backspace / delete reset param value 2025-06-26 09:04:05 +03:00
18d7848367 fix(tracker/gioui): using keys to choose Unit Type and tab ordering 2025-06-26 00:33:18 +03:00
192909328c fix(tracker/gioui): try to ensure that tooltip are never left behind
Closes #141
2025-06-25 19:13:52 +03:00
cb4c020061 style(tracker/gioui): rename songpanel.go to song_panel.go 2025-06-25 19:05:36 +03:00
d78ef98e73 refactor(tracker/gioui): upgrade gio & store Tracker to gtx.Values 2025-06-25 18:54:00 +03:00
08c36ed462 feat(tracker/gioui): new tab order logic and refactor instrument editor 2025-06-25 16:32:56 +03:00
b8cf70e8e9 refactor(tracker/gioui): use min(max(... instead of ifs 2025-06-24 20:43:48 +03:00
e59fbb50cf refactor(tracker/gioui): separate SplitStyle from SplitState 2025-06-24 20:39:27 +03:00
ba281ca7c0 fix(tracker/gioui): cancel dialog when user clicks outside it 2025-06-24 20:26:14 +03:00
b4ec136ab1 refactor(tracker/gioui): Popup in same style as other widgets 2025-06-24 20:25:52 +03:00
18d198d764 refactor(tracker/gioui): bind Alerts to Model during Layout 2025-06-24 19:59:31 +03:00
355ccefb6f refactor(tracker/gioui): refactor Scope in same style as others 2025-06-24 19:28:53 +03:00
7a030683c6 refactor(tracker/gioui): use precreated hex strings in OrderEditor 2025-06-24 19:10:29 +03:00
17ca15b205 refactor(tracker/gioui): minor optimizations in NoteEditor 2025-06-24 19:04:47 +03:00
58f6cceb9a refactor(tracker/gioui): Menu binds to Model during Layout 2025-06-24 18:39:40 +03:00
b79de95f91 refactor(tracker/gioui): remove unnecessary caching of Strings 2025-06-24 11:07:42 +03:00
33f7b5fb6a refactor(tracker/gioui): Dialog binds to Model during Layout 2025-06-24 10:15:46 +03:00
5f43bc3067 feat(tracker/gioui): "Ask Help", "Report Bug" and "Manual" menuitems 2025-06-23 19:17:00 +03:00