Commit graph

7059 commits

Author SHA1 Message Date
Eknous
8dc8bc285d
Merge branch 'tildearrow:master' into welcomescr 2024-09-22 11:31:03 +04:00
tildearrow
dc47194e3d Merge branch 'master' into opz-improvements 2024-09-22 00:35:46 -05:00
tildearrow
8b38ab7804 GUI: turn input repeat on by default 2024-09-21 18:43:03 -05:00
tildearrow
be883ed387 SID2: fix chan osc overflow 2024-09-21 18:23:43 -05:00
tildearrow
d838224d94 dev222 - Merge branch 'SID3' 2024-09-21 18:04:08 -05:00
tildearrow
cf46a035e1 SID3: fix non-linear pitch 2024-09-21 18:01:45 -05:00
tildearrow
fa0c417976 now on insEdit
the final step is to fix pitch linearity
2024-09-21 17:56:37 -05:00
tildearrow
d703aa1e97 almost there
eliminate the velociraptor
2024-09-21 17:37:30 -05:00
tildearrow
987bff8b75 a couple code style changes 2024-09-21 04:36:22 -05:00
Eknous-P
198e371435 this should be better 2024-09-21 11:32:25 +04:00
Eknous-P
7b8ab2ba78 hmm
thenk
2024-09-20 23:18:59 +04:00
Eknous-P
c953ed94ca welcome screen menu opt in help 2024-09-20 23:12:49 +04:00
Eknous-P
d0892a2025 clickable URLs, quickstart in the welcome screen 2024-09-20 23:12:27 +04:00
cam900
7594b2fb55 OPL4: Fix highest note frequency 2024-09-18 11:00:45 +09:00
tildearrow
3ade67a889 SID3:change reset duty strategy 2024-09-17 00:44:13 -05:00
tildearrow
05ddfec301 SID3: change default duty 2024-09-16 23:57:14 -05:00
tildearrow
f0cf3628c6 SID3: change default decay 2024-09-16 03:23:34 -05:00
tildearrow
ac95c05878 SID3: store ins data 2024-09-16 03:09:56 -05:00
tildearrow
b2d6f8e7ee update c64.cpp 2024-09-14 04:35:02 -05:00
tildearrow
15be24ed82 update icon font 2024-09-14 00:32:52 -05:00
tildearrow
47f36f99d9 Merge branch 'master' into SID3 2024-09-13 23:46:13 -05:00
tildearrow
0af7275275 hmmm 2024-09-13 23:28:18 -05:00
tildearrow
bf8250a82c a couple corrections, part 2 2024-09-13 23:17:01 -05:00
tildearrow
0b0e6d5e13 a couple corrections
SID3 will have data independent of C64 and SID2
2024-09-13 23:08:25 -05:00
Adam Lederer
f9ef00a0be convert keybind-table-row lambda to member function 2024-09-12 13:46:27 -07:00
Adam Lederer
6c6ea2d54b keep template<> on same line 2024-09-12 13:33:18 -07:00
Adam Lederer
59c60ba3a6 add ctrlWheelModifier option for Alt 2024-09-12 14:27:18 -05:00
Adam Lederer
5d351eab0a add setting for ctrlWheeling mod (default now allows super as well as ctrl) 2024-09-12 14:27:18 -05:00
Adam Lederer
d19cd493c4 better scaling for envelope/LFO mode 2024-09-12 14:36:55 +02:00
Adam Lederer
66b22cce32 fix: macro editor scaling in "single (list)" mode
specifically the bottom line with "length/step-length/delay" and the associated buttons -- previously would just get cut off when there wasn't enough room, now scales the elements to fit (uses a table)
2024-09-12 14:36:55 +02:00
Adam Lederer
61ddd29b1e apply delayed rows first (fixes #2014 2024-09-12 14:33:30 +02:00
Adam Lederer
3f6200aa9a support horizontal mode in wavetable list 2024-09-12 01:04:56 -07:00
Adam Lederer
035ac2978f macro editor: add scaling option, show macro len
* extend "autoMacroStepSize" setting to include an option to set the horizontal scale in the macro view based on the longest macro (of the current tab). this means that you'll have a consistent horizontal scale across all the macros, rather than changing for each macro. existing options are unaffected.

* in "single" macro view, i noticed that there was no way of knowing which macros were actually being used (i.e. non-zero len) without selecting each of them individually and then trying to remember. so i added a len readout per macro to the listing.
2024-09-11 11:52:42 -07:00
Eknous-P
5195f7562a wavetools fix: also fix invert
ugh im blind
2024-09-11 16:35:46 +02:00
Eknous-P
518fdd0809 fix wavetools not updating wave 2024-09-11 16:35:46 +02:00
Adam Lederer
ad000bc0c0 fix: volume portamento no longer cancels set vol
in case where volume portamento was active but not complete, using the volume column to set volume to a point past the volume portamento target would be detected as "volume portamento complete" and set volume to the portamento target, even if the portamento target was actually lower/higher than the volume set by the volume command
2024-09-11 16:14:50 +02:00
tildearrow
1cbafb2e4a Supervision: fix potential crash 2024-09-10 15:03:40 -05:00
Velmyncier
35fe8b0562 show sample ROM option for OPL4 only 2024-09-10 20:14:20 +02:00
freq-mod
688517bfd1 OPLL: fix ins preview 2024-09-10 18:13:48 +02:00
tildearrow
4f5c6cbbb5 SoundUnit: emulation changes
no longer uses int for the filter stages, instead using short
this makes a 1982 design cheaper and more viable
2024-09-09 19:28:16 -05:00
cam900
a18dea53e3 Fix tooltip for OPL waveforms 2024-09-09 20:26:59 +09:00
tildearrow
10e491cd35 add spaces 2024-09-08 18:54:48 -05:00
tildearrow
89fb8842b0 OPL: put this variable outside 2024-09-08 18:34:32 -05:00
tildearrow
f0fffd9878 MultiPCM: store flags
dev221
2024-09-08 18:11:22 -05:00
tildearrow
5e5896fd52 Merge branch 'master' into ymf278b 2024-09-05 19:32:48 -05:00
tildearrow
435c858dc9 a couple fixes 2024-09-05 19:24:42 -05:00
tildearrow
eb95024fb9 Merge branch 'master' into master 2024-09-05 18:13:46 -05:00
cam900
bb5d592bb4 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-09-05 20:38:25 +09:00
tildearrow
f24e4d89ff bug fix from Eknous 2024-09-04 14:56:50 -05:00
Adam Lederer
e240c9996f Merge remote-tracking branch 'upstream/master' into multiKeybind 2024-09-02 18:33:17 -07:00
Adam Lederer
572eb10e91 add cursor undo/redo actions 2024-09-02 15:51:01 -05:00
Eknous
8d81ef87b8
channel mask for user presets (#2135)
* user presets channel mask

* update tooltip, mask generator helper thing

* better tooltip

* yea this is better

* update doc

* apply to all subsongs
2024-09-02 15:39:35 -05:00
AArt1256
d3d7c741a6 why again 2024-09-02 11:43:22 +03:00
tildearrow
e16bc1a195 OPNA/B: batman is expanding 2024-09-01 18:23:35 -05:00
tildearrow
569df5b477 OPN: batman is expanding 2024-09-01 17:53:18 -05:00
tildearrow
d14b187e66 AY: batman is expanding 2024-09-01 17:30:06 -05:00
tildearrow
d303675961 OPN: fix AY PCM direct stream export 2024-09-01 16:55:09 -05:00
tildearrow
b650545773 AY: fix direct stream output (I think) 2024-09-01 16:19:01 -05:00
AArt1256
f415e4c9a1 no more global variables! 2024-09-01 16:11:42 +03:00
tildearrow
2d172c59af SNES: move volume changes
make them happen after KOFF
2024-09-01 04:26:00 -05:00
Eknous-P
9b1c06b515 actual fix 2024-08-31 23:26:25 -05:00
Eknous-P
cf20905199 fix export progress popup size 2024-08-31 23:26:25 -05:00
MooingLemur
caa6f3091d ZSM: exclude keydown events on loop lookahead 2024-08-31 23:18:45 -05:00
tildearrow
11935fb525 dev220: SNES anti-click 2024-08-31 19:07:36 -05:00
tildearrow
42f7755479 SNES: prepare for anti-click 2024-08-31 04:38:21 -05:00
tildearrow
160639cdec 5E01: fix everything 2024-08-30 22:45:30 -05:00
tildearrow
864315dce2 GUI: don't set a default size for the Rendering mo 2024-08-30 22:44:33 -05:00
Adam Lederer
aeee6260ae fix absorb instrument bug: octave set to -1 when most recent 'note' was OFF/REL/=== 2024-08-30 01:31:47 -05:00
Adam Lederer
639e7d11b0 command palette show shortcuts (for actions) 2024-08-29 20:08:29 -07:00
Adam Lederer
29526d47fb color the search characters in the command palette 2024-08-29 19:46:37 -07:00
Adam Lederer
e44a6561c3 use non-greedy search to find optimal fuzzy match order for command palette 2024-08-29 19:08:12 -07:00
tildearrow
ed79399190 release v0.6.7 2024-08-29 02:29:32 -05:00
tildearrow
87b172015c fix 601x-604x 2024-08-28 17:07:54 -05:00
tildearrow
62842fbb39 TIunA export: fix mem leak 2024-08-28 16:18:38 -05:00
tildearrow
400bbe9109 NES: DPCM loop fix...
pull request #2119
2024-08-28 06:05:35 -05:00
LTVA1
c50c2ea528 Merge branch 'master' of https://github.com/tildearrow/furnace into SID3 2024-08-28 13:13:12 +03:00
tildearrow
42bc32bc67 remove assert 2024-08-28 02:04:01 -05:00
tildearrow
2021e86608 release v0.6.6 2024-08-27 17:21:47 -05:00
Adam Lederer
60ec0504d2 oh my god i left it disabled from when i was capturing screens 2024-08-27 01:20:58 -07:00
Adam Lederer
c81376f5bc in command palette, sort matches by quality/exactness 2024-08-27 00:59:16 -07:00
Adam Lederer
a30c628a29 bind multiple keys to same action 2024-08-26 22:21:35 -07:00
LTVA1
6e44607ca6
Merge branch 'tildearrow:master' into SID3 2024-08-26 09:40:23 +03:00
tildearrow
b948590a43 change names of single tick effects
to prevent confusion
issue #2063
2024-08-25 16:14:24 -05:00
LTVA1
80c7f645fb wha 2024-08-25 18:19:39 +03:00
LTVA1
9a811c87a1 Merge branch 'opz-per-operator-arp-and-pitch-macros-and-more' of https://github.com/LTVA1/furnace into opz-per-operator-arp-and-pitch-macros-and-more 2024-08-25 17:30:49 +03:00
LTVA1
4b55c77e01 woops 2024-08-25 17:30:33 +03:00
LTVA1
570587693e
Merge branch 'tildearrow:master' into opz-per-operator-arp-and-pitch-macros-and-more 2024-08-25 17:28:07 +03:00
LTVA1
b905671798 make GUI hide block/f-num in the pitch control mode 2024-08-25 17:26:59 +03:00
LTVA1
2118fb3fdd trust me bro this time freq is correct even for custom clock fr fr 2024-08-25 16:30:46 +03:00
LTVA1
69db085685 fix freq calc? 2024-08-25 15:16:52 +03:00
LTVA1
3bf0c108f8
Merge branch 'master' into SID3 2024-08-25 13:34:19 +03:00
LTVA1
e58518ed62 first attempt, arp & pitch macros work 2024-08-25 13:33:01 +03:00
tildearrow
68b45338f0 GUI: tryWith fix from #2108 2024-08-25 03:00:00 -05:00
cam900
3e1e2fc2a6 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-25 12:50:51 +09:00
tildearrow
bf8d51ca83 implement operator mask effect 2024-08-24 18:42:23 -05:00
tildearrow
0ab9f6c6fd more.... 2024-08-24 17:41:41 -05:00
tildearrow
c06759b235 NES:codestyle 2024-08-24 16:43:15 -05:00
LTVA1
efb89f7f94 yeah 2024-08-24 16:36:55 -05:00
LTVA1
6c20b26a19 make inst editor undo work through ugly goto 2024-08-24 19:30:29 +03:00
LTVA1
12bd2d3829 Merge branch 'master' of https://github.com/tildearrow/furnace into SID3 2024-08-24 19:15:27 +03:00
tildearrow
332b449f0e deGNUize 2024-08-24 06:03:28 -05:00
freq-mod
46e48e42ea backport default sys picker from B 2024-08-24 11:24:58 +02:00
tildearrow
db19b13ce4 GUI: update credits 2024-08-24 03:08:46 -05:00
tildearrow
977c464e7b GUI: fix audio export progress window 2024-08-24 03:08:35 -05:00
tildearrow
ee21a996fa
Merge pull request #2102 from alederer/volPorta
Volume portamento (vol porta) effect (D3xx, D4xx for fast)
2024-08-24 03:00:29 -05:00
Adam Lederer
2982a40110 update vol-porta-ending logic to be more readable 2024-08-24 00:59:03 -07:00
tildearrow
bcdad3c538 AY: remove all ffff writes 2024-08-24 02:47:51 -05:00
tildearrow
a458e105d9 VGM export: use QSound ADPCM size 2024-08-23 20:16:48 -05:00
tildearrow
5a79a70980 GUI: missing WonderSwan pan macros 2024-08-23 20:10:23 -05:00
tildearrow
99ae6a2b38 VGM export: include song comments
also show song comments on mobile
2024-08-23 17:46:09 -05:00
Adam Lederer
d0f3e0fa58 GUI_ACTION_PAT_ABSORB_INSTRUMENT search through prior orders (also set instrument to none if no instrument found 2024-08-23 15:20:08 -05:00
alederer
c5310d1855
Instrument editor undo (minus FixedQueue change) (#2094)
* add undo to instrument editor (check for diffs on the current DivInstrument in insEdit, record them in a stack)

* style fixes

* accidentally left some logs in

* typo in style fix

* cheat to avoid warning -Werror=class-memaccess on linux

* warn instead of assert on case where MemPatch application would exceed size of target buffer (which should never happen, if you're applying the patch to the same type it was generated from)

* instrument editor undo: don't check delta if no user input has come in that could potentially have dirtied the editor

* don't run a delta against cached instrument if not insEditOpen

* revert fixedQueue to before my 'fix' (if i touch it again i'll add unit tests)

* explicitly cast to (DivInstrumentPOD*) when memsetting DivInstrumentPOD in DivInstrument constructor, rather than relying on implicit memory layout

* use delete[] instead of free (whoops)

* MemPatch/DivInstrumentUndoStep -- remove clear() function (ambiguous whether it should free data, it only existed to set data to null after the swap, so just do that directly now). Also set data to null after delete.

* DivInstrument -- fix dangling undo-step pointers being created on duplicate (potentially leading to use-after-free), fix undo-step objects being shamelessly leaked

---------

Co-authored-by: Adam Lederer <adam@adamlederer.com>
2024-08-23 15:17:19 -05:00
Adam Lederer
08f1381fee minor cleanup 2024-08-23 11:24:24 -07:00
Adam Lederer
ae4adececd do nothing if volume column empty 2024-08-23 11:16:22 -07:00
Adam Lederer
310ad13916 volume portamento (vol porta) on D3xx and D4xx (D4 is fast version, rate * 256) 2024-08-23 10:50:13 -07:00
LTVA1
1fbbe29d14
Merge branch 'tildearrow:master' into SID3 2024-08-23 12:53:29 +03:00
tildearrow
bae45e0b86 SN: fix arp macro with easy period 2024-08-23 02:25:53 -05:00
LTVA1
3b6ddebc64 disable 2024-08-23 00:53:44 -05:00
LTVA1
9f9638931d yeah 2024-08-23 00:53:44 -05:00
tildearrow
8a18f962f9 VGM export: don't generate garbage stop sample com
issue #2072
2024-08-22 23:17:22 -05:00
tildearrow
231bece848 SDL audio: don't close audio device if not open
issue #2068
2024-08-22 22:20:25 -05:00
LTVA1
36411defd2 fix software DAC sample rate being dependent on chip clock 2024-08-22 19:48:35 +03:00
LTVA1
f2ffd0e831 allow custom hover text for bitfield macros 2024-08-22 18:11:15 +03:00
LTVA1
ecb46ae682 fix volume command 2024-08-22 14:55:25 +03:00
LTVA1
093b1fe4dc
Merge branch 'tildearrow:master' into SID3 2024-08-22 14:17:34 +03:00
LTVA1
a08380182d arr 2 2024-08-22 03:17:35 -05:00
LTVA1
f433f79dfe aarr 2024-08-22 03:17:35 -05:00
LTVA1
3a72acc3b0 init 2024-08-22 03:17:35 -05:00
LTVA1
33eea96986 small fixes, print progress in rows/files 2024-08-22 03:17:35 -05:00
LTVA1
a4dae5302b account for fadeout length, optimize some progress bar calc 2024-08-22 03:17:35 -05:00
LTVA1
17f6ea5c6a account for non-beginning loop point location
Ig I will optimize some of the calculations later when account for fadeout is added
2024-08-22 03:17:35 -05:00
LTVA1
481a5710df fix3? 2024-08-22 03:17:35 -05:00
LTVA1
56749ad286 fix2? 2024-08-22 03:17:35 -05:00
LTVA1
beca6bea00 fix? 2024-08-22 03:17:35 -05:00
LTVA1
d79bad195a looks like it works, no account for fadeout tho 2024-08-22 03:17:35 -05:00
tildearrow
a77d8bc87e oh crap 2024-08-21 14:46:40 -05:00
AArt1256
5599ee327b fixed global variables 2024-08-21 13:33:37 +03:00
LTVA1
c26fa0c1f6
Merge branch 'tildearrow:master' into SID3 2024-08-19 21:44:23 +03:00
alederer
28dc0b12a1
"Adopt instrument" action also adopts octave (#2095)
* push test

* remove test file

* add GUI_ACTION_PAT_ABSORB_INSTRUMENT action (set current instrument to channel's current instrument column)

* rename 'absorb instrument' to 'adopt instrument' (clearer), adopt octave as well, replace editor octave min/max numbers in the code with defines

* CRAP

* rename 'adopt instrument' back to 'absorb instrument'

---------

Co-authored-by: Adam Lederer <adam@adamlederer.com>
Co-authored-by: tildearrow <me@tildearrow.org>
2024-08-19 13:19:50 -05:00
tildearrow
a410b90452 CRAP 2024-08-19 12:54:09 -05:00
tildearrow
ecbfacef1f add SFWrapper error logging 2024-08-19 12:40:51 -05:00
LTVA1
a2326182f6 add tSU filter cutoff & duty slide effects 2024-08-19 15:22:08 +03:00
tildearrow
d3af810462 Revert "add undo to instrument editor (check for diffs on the current DivInstrument in insEdit, record them in a stack)"
This reverts commit 5c9fd69ac1.
2024-08-19 02:49:24 -05:00
tildearrow
f1de0bf2b7 Revert "style fixes"
This reverts commit 15d47d0aae.
2024-08-19 02:49:24 -05:00
tildearrow
73c61d9ac7 Revert "accidentally left some logs in"
This reverts commit 55af1648e7.
2024-08-19 02:49:24 -05:00
tildearrow
c00947071a Revert "typo in style fix"
This reverts commit 91d36d0a62.
2024-08-19 02:49:24 -05:00
tildearrow
78d7fb4da0 Revert "cheat to avoid warning -Werror=class-memaccess on linux"
This reverts commit 94ef697ea6.
2024-08-19 02:49:24 -05:00
tildearrow
257abca831 Revert "warn instead of assert on case where MemPatch application would exceed size of target buffer (which should never happen, if you're applying the patch to the same type it was generated from)"
This reverts commit ea02a913b2.
2024-08-19 02:49:24 -05:00
tildearrow
251be67b69 Revert "instrument editor undo: don't check delta if no user input has come in that could potentially have dirtied the editor"
This reverts commit ad53b33d7c.
2024-08-19 02:49:24 -05:00
tildearrow
4f3d61c0f1 Revert "don't run a delta against cached instrument if not insEditOpen"
This reverts commit 2ab5ac4e07.
2024-08-19 02:49:24 -05:00