Commit graph

1422 commits

Author SHA1 Message Date
tildearrow 71a9355a9e i may have done 2024-05-24 03:51:35 -05:00
tildearrow 3f34a46575 GUI: prepare to add auto-fill on save 2024-05-24 00:19:03 -05:00
tildearrow 603249573a GUI: separate wantScrollList
issue #1894
2024-05-21 17:26:04 -05:00
tildearrow c690c681c5 renderGL: settings to change stencil and buffer si 2024-05-20 03:15:43 -05:00
tildearrow 45783e7797 GUI: fix recent file regression 2024-05-20 02:41:53 -05:00
tildearrow c4c8b6a3f4 backup management, part 1
new backup settings
backup manager but purging does not work yet
2024-05-19 19:36:09 -05:00
tildearrow 5e213256b6 import/export config and factory reset 2024-05-18 16:01:47 -05:00
tildearrow 4086cd3fc5 Merge branch 'master' into configSettings 2024-05-18 04:11:48 -05:00
tildearrow 724632e2a3 prepare for config import/export/reset 2024-05-17 12:45:31 -05:00
tildearrow 394d5d6583 prepare to handle other texture formats
required for DirectX 9...
2024-05-15 02:48:18 -05:00
tildearrow 008fe4b6b8 improve audio export options - UNTESTED/UNFINISHED 2024-05-10 20:01:12 -05:00
tildearrow ae386f6269 GUI: add render preInit settings 2024-05-07 13:44:16 -05:00
tildearrow d16e940c4d fall back to software if no matching GL pixel form
at available
2024-05-06 16:40:19 -05:00
tildearrow f28dcec683 release v0.6.3 2024-05-01 20:00:07 -05:00
tildearrow 36d9d31d2f better defaults for Windows XP 2024-05-01 01:25:27 -05:00
tildearrow 3d6f9b4723 implement sort orders 2024-04-29 18:13:44 -05:00
tildearrow 7f354705e3 GUI: finally add ability to change coarse editstep 2024-04-26 12:53:33 -05:00
tildearrow e1d58d97cb GUI: add note/value input repeat option 2024-04-25 22:16:08 -05:00
tildearrow 0ad7863d78 GUI: options to import/export user presets 2024-04-25 12:55:59 -05:00
tildearrow 5a39758fa3
Merge pull request #1846 from techmetx11/tfm-music-maker-import
Support for TFM Music Maker files
2024-04-23 14:55:57 -05:00
tildearrow 9edbd57947 GUI: disable late render clear on Metal
fixes a crash
2024-04-22 14:11:01 -05:00
tildearrow 809ba42ca6 GUI: user presets, part 4
rename to User Systems
2024-04-12 17:37:08 -05:00
techmetx11 1de99ca6c6
Somewhat implemented pattern decoding now (effects not implemented) 2024-04-11 15:16:05 +00:00
tildearrow 6d8e6a9a55 GUI: user presets, part 1 2024-04-09 19:29:42 -05:00
tildearrow ce4432175d GUI: fix set volume percentage 2024-04-09 14:34:51 -05:00
tildearrow 40f62aa13e GUI: re-enable user presets option 2024-04-09 14:34:13 -05:00
tildearrow 93cd07f1b6 use software backend in safe mode 2024-04-09 12:37:27 -05:00
tildearrow b7e909d1d8 GUI: hide the dock space background 2024-04-08 22:53:55 -05:00
tildearrow c5a811f58e software renderer, part F 2024-04-08 22:24:08 -05:00
tildearrow 03952b7564 GUI: fix division by zero when disabling frame rat
e limit
2024-04-07 03:00:31 -05:00
tildearrow c201e02411 WAHAHAHAHAHA
OpenGL 1 backend!!!!!!!!!!!!!!!!1111
TODO: test on old machine
2024-04-07 02:39:31 -05:00
tildearrow 52b6ffb9ad GUI: use mapVelocity for status vol percentage
issue #1828
2024-04-04 15:56:18 -05:00
tildearrow f0c85acfd7 can't even have fun for one day
there's always the one who finds a reason for drama and flamewar
2024-04-03 13:58:57 -05:00
tildearrow fc68f17107 GUI: add option to disable VSync
also add frame rate limiter
2024-04-02 17:49:48 -05:00
tildearrow 9dbda09cd0 GUI: remove unused tutorial code 2024-04-02 11:17:45 -05:00
tildearrow 90c628612e prepare for 0.6.2 2024-03-31 23:35:59 -05:00
tildearrow 59a25fad70 stuff 2024-03-30 13:21:56 -05:00
tildearrow e7a638fdd5 GUI: user preset saving and prepare edit window 2024-03-30 03:33:38 -05:00
tildearrow b04ddaa20a preparations for user presets
now we need save
2024-03-29 19:56:50 -05:00
tildearrow 04175e82d7 GUI: disable debug message 2024-03-20 17:47:20 -05:00
tildearrow 5848c48a76 GUI: fix system detection 2024-03-20 17:39:22 -05:00
tildearrow de444d9260 GUI: more menu reordering 2024-03-17 13:23:04 -05:00
tildearrow b253bd862b downgrade .dmf to export status 2024-03-17 13:14:50 -05:00
Lunathir bf6d98d3c1
Resort window menu (#1793)
* Resort window menu

* Update gui.cpp

* Update gui.cpp

* Update gui.cpp
2024-03-17 12:52:10 -05:00
tildearrow 068eb357d0 oh yeah wait I need to merge menu first 2024-03-17 12:50:46 -05:00
tildearrow beacfcf849 is this cat and mouse now 2024-03-16 19:09:02 -05:00
tildearrow 845eb582a6 fix .dnm and .eft loading 2024-03-16 12:16:09 -05:00
tildearrow c0df3df4ed port .ftm loading progress
from LTVA
2024-03-16 03:45:35 -05:00
tildearrow 3512591fd1 add effects to change virtual tempo 2024-03-15 14:56:55 -05:00
tildearrow 8b0f5bedc4 me an idiot 2024-03-14 02:06:36 -05:00
tildearrow d700bfca08 prepare for deferred config saving
issue #1723
2024-03-14 01:58:43 -05:00
tildearrow db9a11a674 remove text command stream export
NOTE: this is not removal of text export.
2024-03-09 18:20:17 -05:00
tildearrow 8099df183d asdfasdfasdf 2024-03-09 03:32:03 -05:00
tildearrow 2290f3d873 a better command stream debugger 2024-03-08 17:53:37 -05:00
tildearrow b0db9b8ff7 more preparation 2024-02-26 00:16:36 -05:00
tildearrow c5d0203f94 GUI: new osc renderer, part 29 2024-02-22 12:59:20 -05:00
tildearrow ecd3875a64 ... 2024-02-22 12:48:16 -05:00
tildearrow b972e54a7e implement chip cloning/duplication
muwahahaha
2024-02-21 16:27:52 -05:00
tildearrow f0bf58eef2 fix crash when changing chip
it was somehow possible to exceed the channel limit...
2024-02-21 15:55:15 -05:00
tildearrow 589e6f98e0 GUI: new osc renderer, part 27
hide scroll bar
2024-02-20 15:44:51 -05:00
tildearrow e17df27f66 GUI: new osc renderer, part 26
sorry another window
2024-02-20 15:40:48 -05:00
tildearrow 2ca341bb73 GUI: get rid of bitOffset
now we do not need it
2024-02-19 21:44:29 -05:00
tildearrow 6cf570f85b GUI: new osc renderer, part 23
speed hack
2024-02-19 18:22:08 -05:00
tildearrow d046713be4 GUI: new osc renderer, part 22
or just use highp

to-do: rewrite using fixed point math?
2024-02-19 17:26:58 -05:00
tildearrow cfee9b3810 GUI: new osc renderer, part 21
part 11? I must have been drunk
alternate approach for OpenGL ES (no more hangs)
2024-02-19 15:49:56 -05:00
tildearrow 894b1f5a3c GUI: new osc renderer, part 19
now with a setting
2024-02-19 02:57:48 -05:00
tildearrow c9b1305b61 GUI: new osc renderer, part 18
remove new code button
2024-02-19 02:32:15 -05:00
tildearrow 523a290374 GUI: new osc renderer, part 12 2024-02-14 04:09:24 -05:00
tildearrow 8dcb36221a GUI: new osc renderer, part 9 2024-02-12 18:56:39 -05:00
tildearrow a05b133b3a GUI: add option for playback status in menu bar 2024-02-11 18:54:45 -05:00
tildearrow 2f72e75f0e GUI: remove basic mode 2024-02-11 18:36:38 -05:00
tildearrow e41e8ed962 GUI: new osc renderer, part 2 - warning
why does it crash...
2024-02-09 19:20:09 -05:00
tildearrow 688be931d0 GUI: code style 2024-02-07 18:29:08 -05:00
tildearrow 644a83941c GUI: remove command palette entry in window 2024-02-07 08:08:43 -05:00
tildearrow a6aa4b66d1
Merge pull request #1160 from YohananDiamond/command-palette
undefined

WAHAHA nice one GitHub
see? that's why I hate JavaScript. couldn't you throw exception on out of bounds/undefined result, like EVERY normal language?
2024-02-07 02:53:33 -05:00
tildearrow f80d3f9eb5 remove unused old ins format saving code 2024-02-05 13:19:36 -05:00
tildearrow 395a346cb4 GUI: clarify .dmp saving error 2024-02-05 13:07:28 -05:00
Colin Kinloch 558cf8ad47 Add brackets to quit handler 2024-02-04 12:38:44 -05:00
Colin Kinloch b2d61b1d3a Add Ctrl+Q to quit 2024-02-04 12:38:44 -05:00
Colin Kinloch 04f2039803 GUI: Add menu option to open examples directory 2024-02-03 21:30:32 -05:00
YohananDiamond c9d57d4c6f Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2024-02-03 19:30:59 -03:00
tildearrow 66bacef681 GUI: implement "make me a drum kit" option 2024-01-30 02:14:14 -05:00
tildearrow 5224c4666d more work that I did not push 2024-01-29 23:08:20 -05:00
psykose 3f329e464d GUI: fix overflow in timers
these timer variables are used with SDL_GetPerformanceCounter, which
returns a uint64_t. subtracting these can overflow, which is UB.
2024-01-27 15:18:19 -05:00
tildearrow 68ee5167ee GUI: work around layout import crash?
not very well tested... may mess up layout

issue #1629
2024-01-27 13:28:24 -05:00
tildearrow c55cc8b2ea GUI: delayed layout loading
issue #1629
2024-01-26 02:44:47 -05:00
tildearrow e19cd39e96 GUI: why is the input latch lowercase 2024-01-20 12:41:33 -05:00
tildearrow f322316a32 GUI: fix paste overflow undo corruption, part 1
TODO: garbage collection
2024-01-20 02:51:20 -05:00
YohananDiamond 8ab1c414b9 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2024-01-18 13:58:02 -03:00
tildearrow 88b42ddd58 update copyright year 2024-01-16 21:26:57 -05:00
tildearrow 928bfd2afd add sample rate parameter in raw sample import 2024-01-16 21:12:34 -05:00
tildearrow 65b50f4acc GUI: improve mobile order input 2023-12-28 17:32:40 -05:00
YohananDiamond 34e18fffad Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-12-27 20:57:24 -03:00
tildearrow 27f4f6830e GUI: improve the buttons 2023-12-22 19:18:23 -05:00
tildearrow 15f0f50def part 2 of more work 2023-12-22 18:23:11 -05:00
tildearrow f80340ebcc more work 2023-12-22 15:43:41 -05:00
tildearrow 5697330c04 i won't call it classic 2023-12-21 20:08:15 -05:00
tildearrow df3e3e8aec bunch of code de-duplication 2023-12-21 19:57:26 -05:00
tildearrow e2940ca385 Merge branch 'master' into exportwin 2023-12-21 19:08:09 -05:00
YohananDiamond c8975eaf73 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-12-19 09:26:30 -03:00
tildearrow b7d525b4bd GUI: walk song on load
issue #1541
2023-12-18 11:06:45 -05:00
tildearrow 478f7bb3bd MIDI input: program change pass-through option 2023-12-17 15:30:51 -05:00
tildearrow 39481ab571 fix velocity input 2023-12-17 15:08:52 -05:00
Electric Keet adba445cd2 Tweaking numeric input steps.
Hopefully these all make more sense for how they're used.
2023-12-12 18:52:41 -05:00
tildearrow a540de4570 GUI: fix wave creation 2023-12-09 22:16:58 -05:00
tildearrow bd7e57cea8 GUI: use best wave size when adding wave
or display a menu

TODO: fix non-32×32 wave being messed up
2023-12-09 20:01:33 -05:00
Eknous-P 96ad124100 make a member of FurnaceGUI 2023-12-08 16:08:31 +04:00
tildearrow 1a96450077
Merge pull request #1627 from LTVA1/fix-XY-oscilloscope-size
Fix default XY oscilloscope size
2023-12-07 04:12:29 -05:00
LTVA1 7373f30e23 Update gui.cpp 2023-12-07 07:47:46 +03:00
LTVA1 69c1701c85 fix 2023-12-06 21:11:41 +03:00
tildearrow 37190d1c2d GUI: add a setting (select asset om load) 2023-12-06 12:37:37 -05:00
tildearrow bcd2602624
Merge pull request #1507 from ColinKinloch/select_opened
Select loaded instrument on open
2023-12-06 12:28:26 -05:00
tildearrow afa15bc322
Merge pull request #1622 from LeviathaninWaves/crossfade-loop-points
Crossfade loop points
2023-12-05 17:08:02 -05:00
Eknous-P df63257d11 dummy export window, keybind and related settings 2023-12-05 15:58:45 +04:00
tildearrow bd3f6765f4 early text export
incomplete
2023-12-04 15:22:29 -05:00
tildearrow 643e5d5d5b prepare for text export 2023-12-04 04:17:30 -05:00
LeviathaninWaves d59dfa30f0 Adjustments to crossfade algo/slider and renaming 2023-12-02 19:02:43 -06:00
LeviathaninWaves 4bd0dc2c63 Add loop point crossfading in the sample editor. 2023-12-01 15:06:42 -06:00
tildearrow 2d73e45e0f they did the Dance
and now you can do it too
2023-11-26 21:55:09 -05:00
tildearrow a2f86d297f GUI: fix wave drawing 2023-11-25 18:37:50 -05:00
Natt Akuma e702e56901 Add X-Y Oscilloscope 2023-11-01 14:56:43 +07:00
YohananDiamond 163d1b2153 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-10-29 20:05:01 -03:00
tildearrow 686a9de143 discourage use of backup system for auto-save 2023-10-28 14:49:20 -05:00
tildearrow d5da4d7e52 GUI: prepare to add auto-clone feature 2023-10-18 00:00:23 -05:00
tildearrow e633550647 automatic safe mode!
to-do: test on Windows...
2023-10-16 14:55:01 -05:00
tildearrow c420b55a16 add a safe mode
disables audio output
enables software rendering
disables font loading

not automatic yet
2023-10-16 06:53:21 -05:00
tildearrow 061b8e7aa1 GUI: add a hint when an ins cannot be previewed 2023-10-15 17:02:25 -05:00
tildearrow e51ca07acb GUI: better DPCM mapping, part 1
UI needs to be better
it does not work yet
2023-10-12 20:32:00 -05:00
tildearrow ddf0e3f368 GUI: fix sample view not updating on load replace 2023-10-12 18:44:46 -05:00
tildearrow 40da2ecb46 fix clock overflow 2023-10-12 05:26:48 -05:00
tildearrow 82da85ecbf
Merge pull request #1509 from Eknous-P/settingdetect
Settings change detect
2023-10-05 18:09:24 -05:00
tildearrow 839dc3cd91 prepare to add channel pair and mode hints 2023-10-05 04:47:14 -05:00
Eknous-P e8f1b36a1c settings change detect part 2
i hope i didnt miss anything
2023-10-03 18:59:41 +04:00
Eknous-P 3ad0fe208d settings changed detect part 1 2023-10-03 18:33:22 +04:00
tildearrow 79f92fab68 GUI: prepare for status view 2023-10-03 04:38:28 -05:00
Colin Kinloch 33f9e63805 Select loaded instrument on open 2023-10-01 00:43:24 +01:00
tildearrow d4657f4b6c GUI: why are the icons for FM and PSG swapped 2023-09-25 13:19:27 -05:00
tildearrow a3d8c81e9d add option to swap bytes in raw smp import 2023-09-25 05:09:56 -05:00
tildearrow c0118a4b82 GUI: wake up on MIDI event 2023-09-24 17:48:32 -05:00
tildearrow 478c3ecb57 GUI: step play fixes 2023-09-20 16:16:25 -05:00
tildearrow 3fca80fe3b GUI: fix outofrange vol input if vol rng is <16 2023-09-20 01:20:19 -05:00
tildearrow 8a9ac46545 GUI: don't allow drag-and-drop during intro 2023-09-19 03:10:35 -05:00
tildearrow 7912a7982c implement a setting which was missing
store/load ins names when saving .fui
2023-09-16 18:15:03 -05:00
tildearrow b105dd535f GUI: better 2023-09-16 15:04:11 -05:00
tildearrow 083f870930 GUI: reduce pattern/orders latency
no more oldOrder/oldRow hacks!
2023-09-16 04:08:12 -05:00
tildearrow 8b565ed284 drop usage of std::deque, part 1
use FixedQueue instead
2023-09-13 02:40:12 -05:00
tildearrow 483a906edb GUI: fix mistake in multi-sample load error 2023-09-10 18:46:07 -05:00
tildearrow 58edecb9f9 GUI: fix SNES echo filter input in chip manager 2023-09-10 11:53:31 -05:00
tildearrow a7ded3325a warn user if we cannot play 2023-09-09 17:12:49 -05:00
tildearrow 5209074c97 GUI: improve "clear..." menu 2023-09-08 02:52:15 -05:00
tildearrow 624e45afa8 optimize renderSamples
only render sample which has changed
2023-09-08 01:19:48 -05:00
tildearrow 2781f1d2c1 GUI: no. for REAL this time. 2023-09-07 18:16:06 -05:00
tildearrow b253acf64b GUI: make chip manager visible in basic mode
fixes a problem in where "manage chips" would do nothing
2023-09-07 14:26:26 -05:00
tildearrow 9b276e80f8 workPool: don't use std::function
it's kinda slow
2023-09-07 00:16:47 -05:00
tildearrow e0172bb851 GUI: fix cheat codes activation 2023-09-06 22:21:58 -05:00
tildearrow 78d891f963 GUI: fix order count being one more 2023-09-06 18:24:53 -05:00
tildearrow 1da000b00c GUI: per-chan osc multi-threading! 2023-09-05 04:38:57 -05:00
YohananDiamond 5a5090f711 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-09-04 19:32:24 -03:00
tildearrow f6db75fae1 GUI: massive chan osc improvements 2023-09-03 04:22:00 -05:00
tildearrow 19d0ed617a what? 2023-09-02 23:57:55 -05:00
tildearrow 1c171ed7bd GUI: de-duplicate file dialog filters
untested. may not work...
2023-09-01 18:33:32 -05:00
tildearrow 43ef57390a GUI: clamp CWSliders 2023-08-31 01:52:11 -05:00
tildearrow a882d7bcf2 GUI: detect UI scale factor when moving window 2023-08-31 01:24:06 -05:00
tildearrow 922800d864 oh crap 2023-08-30 23:14:47 -05:00
tildearrow 426d4b44f0 dang it let me freeze 2023-08-30 13:12:25 -05:00
tildearrow 6ac4529f3b possibly fix HiDPI input problem on macOS/Wayland
issue #1425
2023-08-30 05:21:33 -05:00
tildearrow 015899a43f GUI: fix cursor inconsistency after stop
issue #1424
2023-08-29 18:54:08 -05:00
tildearrow de34b5c9c4 K053260: implement ADPCM 2023-08-29 16:43:37 -05:00
tildearrow 044859f6d1 GUI: add option to choose between chip menus and
chip manager in File menu
2023-08-28 17:00:39 -05:00
tildearrow 2357093bc8 GUI: fix image loading (big endian) 2023-08-28 05:58:46 -05:00
tildearrow bd730cbeec GUI: furIcon big endian fix 2023-08-28 05:44:38 -05:00
tildearrow 284a4f39ad :< 2023-08-28 03:02:35 -05:00
YohananDiamond 4f83fc2e93 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-08-27 13:37:57 -03:00
tildearrow 64e6cf12c2 GUI: re-apply UI settings when displays are connec 2023-08-27 03:58:01 -05:00
tildearrow 16bc35d75b manual system recent file tracking
issue #1406
2023-08-25 18:32:34 -05:00
tildearrow 7ba5b172d5 GUI: finally fix scroll changes order 2023-08-22 02:30:33 -05:00
tildearrow b35235b82e GUI: OPZ preview
it's complete
2023-08-21 22:41:35 -05:00
tildearrow 6ba8527cb6 fix some threading issues 2023-08-21 14:18:04 -05:00
tildearrow d74172680f GUI: prepare FM preview for the other OPs 2023-08-20 20:18:27 -05:00
YohananDiamond aff6996025 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-08-20 02:33:42 -03:00
tildearrow dba96812aa add more raw sample import options 2023-08-19 18:01:12 -05:00
YohananDiamond 74bb1b1016 Merge branch 'master' of https://github.com/tildearrow/furnace into command-palette 2023-08-15 17:48:38 -03:00
tildearrow 6ae8f615d9 we got custom icons 2023-08-14 20:02:10 -05:00
tildearrow bbeb3df9f6 Merge branch 'master' into force-critical-input-trickle 2023-08-12 21:52:12 -05:00
tildearrow 9b91584d13 Merge branch 'master' of github.com:tildearrow/furnace 2023-08-11 19:27:17 -05:00
tildearrow d531b714a9 GUI: fix curOrder when pat view is not visible 2023-08-11 19:26:42 -05:00
MooingLemur a1d74e7dc1 ZSM: add optimize for size toggle 2023-08-11 19:13:16 -05:00
tildearrow a59b5753bb GUI: add center pop-up setting 2023-08-10 02:42:42 -05:00
tildearrow d9cdb787ae
Merge pull request #1236 from YohananDiamond/dialog-nitpicks
Dialog nitpick: properly centering modal popups
2023-08-10 02:41:57 -05:00
tildearrow 457fb785b0 Merge branch 'master' into gui-pretty 2023-08-10 00:18:16 -05:00
tildearrow acc74df293 GUI: add option to capitalize menu bar 2023-08-09 22:47:06 -05:00
tildearrow 7d3b823996 GUI: fix blank ins
issue #1343
2023-08-09 16:06:38 -05:00
Electric Keet 1ea4452e9b More vertical centering of labels.
chanOsc, debugWindow, editControls, findReplace, gui
2023-08-06 20:51:51 -07:00
Electric Keet 5ba51df566 Radio button group indents everywhere.
This should be all of them.

Except, of course, the find/replace dialog. Those have a specific layout already.
2023-08-05 19:18:53 -07:00
tildearrow 86c1104529 GUI: add setting to play on load 2023-08-05 14:43:29 -05:00
tildearrow 2b78ea7abe GUI: add setting to remove ins/vol val on OFF/REL 2023-08-05 03:37:03 -05:00
tildearrow 1983529bdb GUI: add non-mono mode to osc 2023-08-05 03:26:36 -05:00
tildearrow 1d4a1c8337 GUI: higher quality oscilloscope
issue #1324
2023-08-05 02:52:02 -05:00
tildearrow cf1f741769 GUI: fix SNES chip config out of bounds
issue #1319
2023-08-03 14:55:30 -05:00
tildearrow a192274e29
Merge pull request #1312 from tildearrow/settings-bigfont
Big font configuration options!
2023-08-03 05:35:33 -05:00