Commit graph

7585 commits

Author SHA1 Message Date
tildearrow 71ac185cbf FDS: lower CPU usage 2025-03-03 02:27:00 -05:00
tildearrow b3b50bdb66 ESFM: optimize osc buf 2025-03-03 01:45:42 -05:00
tildearrow cf4807b5d0 optimize putSample a bit
use 16-bit precision even on 64-bit....
this allows some code optimizations
2025-03-03 00:51:47 -05:00
tildearrow 2926fad77e ASHA SDGFHJKLADG F;LHKJ 2025-03-02 23:18:02 -05:00
tildearrow 6f8da93714 size_t 2025-03-02 23:04:48 -05:00
tildearrow 8dcbd0fe1c Merge branch 'ga20opt' 2025-03-02 20:53:53 -05:00
tildearrow f39039766e possibly fix build. 2025-03-02 20:49:10 -05:00
tildearrow 6d55c8088c GA20: yaaaay I fixed chan osc 2025-03-02 20:41:34 -05:00
tildearrow 8f54445625 GA20: acquireDirect optimizations, part 1
buggy, slow and glitchy
output is good but chan osc is now broken

from 1.5 to 0.4 seconds
2025-03-02 20:29:28 -05:00
tildearrow 2c75555fae GA20: excellent... 2025-03-02 19:34:52 -05:00
tildearrow 6813c30e3a new chan osc, part 8
fix remaining bugs
2025-03-02 18:02:38 -05:00
tildearrow 49a8693dcb new chan osc, part 7
i am done
2025-03-02 16:14:49 -05:00
tildearrow 6265d2cd39 new chan osc, part 6
more adaptations

how can I get you out of my head... I want to go back to work!
2025-03-02 04:11:10 -05:00
tildearrow fe00ee805d new chan osc, part 5
fix C64 rate
2025-03-01 19:57:16 -05:00
tildearrow a16d20e190 new chan osc, part 4
adapt dispatch code to it
2025-03-01 19:49:56 -05:00
tildearrow c0e4552c52 new chan osc, part 3
fix the jerkiness!
2025-03-01 18:46:11 -05:00
tildearrow 10e60ec8c1 new chan osc, part 2
why is it jerky?
2025-03-01 17:22:34 -05:00
tildearrow 6dc4f16689 GUI: add an audio load chart 2025-03-01 06:10:59 -05:00
tildearrow dd7e1def3d new chan osc work in progress 2025-03-01 05:05:50 -05:00
tildearrow 0eea0ec139 a new method for setting chan osc rate... 2025-03-01 00:33:15 -05:00
tildearrow c83ecfe993 prepare new chan osc code
chan osc output will be 65536Hz - always
new functions for initializing the osc buffer and all
2025-02-26 20:29:13 -05:00
tildearrow e94d99d79e PC Speaker: fix it 2025-02-26 15:45:26 -05:00
tildearrow d935d3c6d1 acquireDirect proof of concept
extremely low CPU usage in PC Speaker

WARNING! no per-chan osc yet!
2025-02-25 19:58:25 -05:00
tildearrow 4502fa6912 FIX BUILD FAILURE 2025-02-25 18:56:04 -05:00
tildearrow 4b1e883d1b PC speaker: prepare for acquireDirect 2025-02-25 18:53:02 -05:00
tildearrow 231819da2e Revert "Revert "prepare acquireDirect API" - stupid crap"
thought of an idea for optimization. let's try again.

This reverts commit 4ca7033dec.
2025-02-25 18:45:28 -05:00
tildearrow 8d8e51d36a disable 32-bit float audio export in per-chip mode
issue #2389
2025-02-25 15:34:36 -05:00
tildearrow 7d0ef24574 GUI: use three hashes
it wasn't two...
2025-02-22 20:25:42 -05:00
tildearrow f674a38d8e GUI: optimize pattern view
don't render what isn't visible
from 3.5ms to 2ms in my phone

to-do: check for regressions...
2025-02-22 19:57:53 -05:00
tildearrow dd9983778b GUI: selection/scroll improvements
now you can scroll left/right by dragging selection to the side edges
2025-02-22 18:43:46 -05:00
tildearrow f4d357ff6f GUI: update credits 2025-02-22 15:55:04 -05:00
techmetx11 18c5d80a09 Use more .getPattern() 2025-02-22 15:18:23 -05:00
techmetx11 27a1914924 Use .getPattern() 2025-02-22 15:18:23 -05:00
techmetx11 56937d8f05 Fix naming 2025-02-22 15:18:23 -05:00
techmetx11 308aacc1e6 Implement looping in TFM import 2025-02-22 15:18:23 -05:00
LTVA1 c58a7cba20 Update sid3.c 2025-02-22 14:45:09 -05:00
tildearrow a80cdbb1dd ES5506: increase precision in Amiga pitch mode
issue #2120
2025-02-22 01:32:31 -05:00
tildearrow c5576ebcd2 PCE: fix sample linger in VGM export
issue #2322
2025-02-21 19:41:48 -05:00
tildearrow 9af53cac73 PCE: fix sample volume in VGM export
issue #2319
2025-02-21 19:35:29 -05:00
tildearrow 41d3dcde66 Virtual Boy: handle phase reset first 2025-02-21 18:58:58 -05:00
tildearrow 0b1e90b908 Virtual Boy: disable channel 5 when changing mod t
able
2025-02-21 18:50:00 -05:00
tildearrow cfb962236a WaveSynth: add change detection
don't update wave if it is intact
issue #2298
2025-02-21 17:25:05 -05:00
tildearrow 8c67ea8eb9 GUI: load fallback fonts in pattern font...
issue #2312
2025-02-21 16:58:59 -05:00
tildearrow 040ceb788d .ftm import: improvements
- cut/delay policy is now lax (why was it set to strict?)
- macro release mode is now Active (issue #2376)
2025-02-21 16:23:21 -05:00
tildearrow 4ca7033dec Revert "prepare acquireDirect API" - stupid crap
the most POINTLESS plan of all time... acquireDirect.
why? because you gotta fill in the oscBufs anyway, which will take
precious CPU time, so you can't just pass the blip_bufs to dispatch
and hope it'll help by not processing when nothing's happening.

"so disable it when the per-chan osc is up!" NO! we need this for
volume calculation....

"how about rewrite per-chan osc logic?" you know what? I don't have
either the time or the will for that.
now back to Something Else......

This reverts commit 08177d839a.
2025-02-21 01:27:04 -05:00
tildearrow cf89a4ff44 GA20: yet another optimization 2025-02-20 04:44:19 -05:00
Natt Akuma c6bb7acfad Merge branch 'master' of https://github.com/tildearrow/furnace 2025-02-20 05:33:31 +07:00
Natt Akuma b084b5f977 Add a missing chrono include
This fixes MSVC v143 build failure
2025-02-20 05:33:06 +07:00
tildearrow 08177d839a prepare acquireDirect API
provide direct access to blip_buf to dispatch code, which may allow for some serious optimizations
2025-02-19 15:46:10 -05:00
tildearrow a2bd669792 Virtual Boy: where did the noise channel go? 2025-02-19 04:29:54 -05:00
tildearrow 1d445d574a Amiga: more validation export changes
this will do... i have no idea how it works
2025-02-19 04:28:22 -05:00
tildearrow 331c146ad8 Amiga: validation export improvements
now it uses VBlank interrupts
also works when fast memory is present!
2025-02-19 04:17:08 -05:00
tildearrow 5b6721738b GUI: change instrument on mobile? 2025-02-19 00:14:21 -05:00
tildearrow 0e0aab88de GA20: another optimization 2025-02-18 05:53:54 -05:00
tildearrow f55f92975a GA20: tiny optimization 2025-02-18 05:32:09 -05:00
tildearrow 556b268d80 Virtual Boy: we cannot take a fast path... 2025-02-18 03:11:52 -05:00
tildearrow e1b7618348 Virtual Boy: make it work on hardware
issue #2373
2025-02-18 02:30:14 -05:00
tildearrow 63ee7cf5d8 Virtual Boy: write waveforms before init channels 2025-02-18 00:36:20 -05:00
tildearrow 91ca79587b SNES: oh I can't believe I did not commit this yet 2025-02-15 22:21:39 -05:00
ExecThTs 63c98baf8e fix playback head when partially previewing a sample 2025-02-11 04:59:48 -05:00
tildearrow d073d17318 Low Quality tildearrow Code: Part III 2025-02-09 04:10:16 -05:00
tildearrow 845c5245c3 Time Is Fixed 2025-02-07 04:20:18 -05:00
tildearrow f09fd02971 MultiPCM: only set new params on ins change
fixes an issue regarding level direct effect
2025-02-07 04:15:20 -05:00
tildearrow cb616ae594 MultiPCM: I present to you a fix 2025-02-07 04:05:53 -05:00
tildearrow 4019066a64 GUI: add "set effect" option to randomize 2025-02-06 17:25:50 -05:00
tildearrow 096d9ebba8 GUI: command stream player memory safety 2025-02-06 14:09:16 -05:00
tildearrow 9dee51851f prepare for proper center rate
the correct rate is 8372Hz rather than 8363Hz
sadly this will require a compat flag so I am not making this change
effective until 0.7

issue #2347
2025-02-06 02:14:21 -05:00
tildearrow b95f9885a4 GUI: don't sort note keys in settings
until Apply or OK are clicked
issue #2345
2025-02-06 00:33:34 -05:00
ExecThTs 3464dd17f5 let's finish the job, pay attention to the selection as well 2025-02-05 04:17:27 -05:00
ExecThTs df830b46c0 Added a button into the sample editor to preview the currently edited sample from the selection cursor 2025-02-05 04:17:27 -05:00
tildearrow 659a16a489 C64: PCM chan osc, part 2
issue #2349
2025-02-05 04:10:16 -05:00
tildearrow dbe30c0d43 C64: PCM chan osc, part 1
it leaks into other channels
2025-02-05 04:01:22 -05:00
tildearrow ba90eafcf3 GUI: doSelectAll() safety checks 2025-02-02 19:37:28 -05:00
tildearrow 11f0448db4 GUI: finishSelection() xFine boundary check 2025-02-02 19:26:38 -05:00
tildearrow ce929d165c GUI: skip intro with keyboard
Escape, Space or Enter skip immediately
2025-02-01 22:18:41 -05:00
tildearrow 8c59d4bf8b remove two unused defines 2025-02-01 21:27:28 -05:00
tildearrow e5864144eb GUI: possib fix crsh on selall aftr ch coll/exp/fx 2025-02-01 04:51:16 -05:00
tildearrow c95e9684ed GUI: work around lack of PRIu64 in some systems 2025-02-01 02:32:59 -05:00
tildearrow b64c06dd4d GUI: add more options for selection drag
ability to copy by dragging selection
2025-01-31 17:29:51 -05:00
tildearrow e22d46e619 C64: implement 6581 bias on dSID
for PCM
2025-01-31 14:59:38 -05:00
tildearrow 1ceffc659c I will do this later 2025-01-30 16:24:33 -05:00
tildearrow b17b0e3f40 fix build... 2025-01-30 15:27:55 -05:00
tildearrow 6e63669501 add a bunch more TODOs 2025-01-29 04:38:12 -05:00
tildearrow 1e891e5e5f aaaaaaaaaaa 2025-01-29 04:12:01 -05:00
tildearrow 8776e1c442 µPD1771C: implement tone/noise mode 2025-01-29 04:10:54 -05:00
tildearrow 9e726eba83 LOW QUALITY TILDEARROW CODE... 2025-01-29 02:04:49 -05:00
tildearrow 97402e6d41 replace AArt µPD1771C core with MAME 2025-01-29 01:58:31 -05:00
tildearrow 00ad4e4a46 update copyright year 2025-01-28 18:49:19 -05:00
tildearrow 0d8b97b1a3 C64: add a sample channel
but don't get too excited! it's just $D418 PCM for now...
2025-01-28 17:33:08 -05:00
tildearrow f16b23772e prepare for something 2025-01-28 04:59:12 -05:00
tildearrow fd176dee84 dev224 - Merge branch 'fixedblock2' 2025-01-28 04:25:24 -05:00
tildearrow dd9d220f33 use state instead of accessing ins for block 2025-01-28 04:24:10 -05:00
tildearrow e713742985 GUI: some adjustments to FM block UI 2025-01-28 04:04:01 -05:00
tildearrow 58a58bdd98 GUI: fix crash in FM editor 2025-01-28 03:52:17 -05:00
tildearrow 24cffc562a Merge branch 'master' into fixedblock2 2025-01-27 16:33:45 -05:00
cam900 bd298e7ece Fix ES5506 filter slide 2025-01-27 13:49:38 +09:00
tildearrow 644b2cd699 so that's why panning was broken in command stream 2025-01-26 18:10:53 -05:00
tildearrow ae5788a572 GUI: fix paste overflow not changing order 2025-01-26 18:10:32 -05:00
tildearrow 36ba721ab2 same size 2025-01-26 05:00:12 -05:00
tildearrow 497ce44cd0 command stream was utterly broken 2025-01-26 04:28:03 -05:00
tildearrow 8965c60b0a MOD import: fix possible bug notes 2025-01-25 18:54:57 -05:00
tildearrow 304a8b8722 GUI: short circuit evaluation paranoia
issue #2327
2025-01-17 03:01:30 -05:00
tildearrow cfcad1e689 GUI: fix possible crash in find/replace
issue #2328
2025-01-17 02:58:22 -05:00
tildearrow a750157ab4 fix another out of bounds situation
this time if the pitch is invalid
2025-01-10 02:10:14 -05:00
tildearrow 732383c036 limit max sample size when loading .dmf 2025-01-10 02:06:25 -05:00
tildearrow 2b064f85bb SafeReader: fix exploit when using negative length
issue #2316
2025-01-10 02:06:14 -05:00
Natt Akuma cf3d08ca5a Add fixed octave for block+fnum systems
This isn't implemented in SAA1099, despite also being block+fnum system, as there are no benefits from it
2025-01-09 03:51:14 +07:00
Natt Akuma 6a58797669 Use bsr() in frequency shift calculations 2025-01-09 03:43:27 +07:00
tildearrow 68eeef28e4 YMZ280B: fix sample offset moving loop
issue #2213
2024-12-29 17:55:58 -05:00
tildearrow 5ffd47ed7b SegaPCM: fix sample offset moving loop
issue #2306
2024-12-29 16:53:19 -05:00
yohannd1 1b3a3c457d instrument drag&drop: fix marking as modified 2024-12-25 17:35:09 -05:00
Eknous-P d80fe7e0a7 fix user systems not loading when language is not english 2024-12-24 14:46:19 -05:00
tildearrow 6a091a785d clamp it 2024-12-24 01:38:04 -05:00
yohannd1 0b4cf34e4d instrument drag&drop: adding option to disable 2024-12-20 21:36:04 -03:00
yohannd1 8aeb50bc32 Merge remote-tracking branch 'tilde/master' into data-list-drag-and-drop 2024-12-20 21:17:06 -03:00
yohannd1 73c263c2b4 closing more popups with esc 2024-12-20 03:20:40 -05:00
yohannd1 674d3c6b12 fix code style for FurnaceGUI::doPasteMPT 2024-12-20 03:20:24 -05:00
yohannd1 2382c19583 ctrl drag&drop fix (use IsKeyDown instead of IsKeyPressed) 2024-12-19 16:23:11 -03:00
yohannd1 32ea140a61 wave+sample drag&drop, and supporting swap via ctrl-drag 2024-12-19 15:51:21 -03:00
yohannd1 6ffc495c81 instrument swap implemented (thanks to @Eknous-P) 2024-12-19 15:04:10 -03:00
yohannd1 806e56a3b2 instrument drag and drop: most of the code
Missing the code that actually swaps the instruments :)
2024-12-19 12:00:24 -03:00
bbbradsmith f3081dddef command line arguments: explicit mention of ROM multi-export path 2024-12-19 04:40:49 -05:00
bbbradsmith 65a6a55d3e avoid stricmp entirely, just use the lowerCase boilerplate found in many other places in the code 2024-12-19 04:40:49 -05:00
bbbradsmith 251bec69a9 MacOS ARM build is missing stricmp, hoping including string.h will correct this 2024-12-19 04:40:49 -05:00
bbbradsmith 13019b5fa4 -romconf command line option to provide -romout configuration parameters 2024-12-19 04:40:49 -05:00
bbbradsmith 55a189444f -romout command line export
consolidate DivEngine::isROMExportViable function from FurnaceGUI::updateROMExportAvail to avoid copy-paste
2024-12-19 04:40:49 -05:00
Dalia 6a8ca37a20 GUI: correct cursor position on song stop (fix #2274) 2024-12-18 19:07:14 -05:00
Dalia 67009ed548 mark as modified when collapsing/expanding song 2024-12-17 01:53:31 -05:00
tildearrow 1d3318c214 VGM export: fix DAC data being offset 2024-12-15 15:56:18 -05:00
bbbradsmith 6cc5bd8eb5 Replace cumbersome command line output strings test with shared boolean 2024-12-13 02:01:32 -05:00
bbbradsmith 8cd283c4e9 Command line outputs: use ps_fopen to support unicode filenames 2024-12-13 02:01:32 -05:00
bbbradsmith c757be6ea2 Command line outputs: replace filename error message with C filesystem error string 2024-12-13 02:01:32 -05:00
bbbradsmith ccda173a15 txt to text 2024-12-13 02:01:32 -05:00
bbbradsmith a9a6260f66 command line output error should report filename, not e.getLastError (error is with fopen, not e) 2024-12-13 02:01:32 -05:00
bbbradsmith 228e7d4676 txtout command line action to export text file 2024-12-13 02:01:32 -05:00
tildearrow 1d8c2e11bd change padding for ADPCM-A/B samples
issue #1910
may or may not fix the issue. testing needed.
2024-12-11 18:30:10 -05:00
tildearrow 609001cd0f GUI: fix wave to sample conversion 2024-12-11 18:19:28 -05:00
Eknous-P f853feed4f requested changes 2024-12-11 18:04:10 -05:00
Eknous-P d26c8d576b damn 2024-12-11 18:04:10 -05:00
Eknous-P 5f299996df create sample from wavetable action 2024-12-11 18:04:10 -05:00
tildearrow 79167c382f possibly fix timer issues
issue #2189
2024-12-09 13:56:20 -05:00
tildearrow 52a4588ad9 OPN: fix out of bounds when using some FM effects
on non-FM channels
issue #2286
2024-12-09 01:57:30 -05:00
tildearrow 3289f6628d fix AY being one octave down on .dmf import 2024-12-07 03:55:24 -05:00
tildearrow 54620b04e0 MSX2 is not FM system 2024-12-06 18:55:02 -05:00
tildearrow 8215371d31 saving 2024-12-06 18:51:44 -05:00
tildearrow 8263a320c3 improve ins type detection 2024-12-06 18:47:09 -05:00
tildearrow 192be95c14 OPL: instant drum muting
issue #1945
2024-12-06 18:28:09 -05:00
Eknous-P 4b1f993474 NO YOU MOTHERF- 2024-12-06 17:17:52 -05:00
Eknous-P 11c0ea0428 autoscroll orders when overflow scolling patterns 2024-12-06 17:17:52 -05:00
Eknous-P 52aad00382 sample editor: fix sample drawing rounding 2024-12-06 17:17:52 -05:00
Eknous-P 4938e1da36 fix backup size calc 2024-12-06 17:17:52 -05:00
Eknous-P e1a3675c4d system picker: change separator to table borders 2024-12-06 17:17:52 -05:00
Eknous-P 81719a79ea (sub)song notes: wrap text 2024-12-06 17:17:52 -05:00
Eknous-P ca6f4e2b86 effects list: properly scroll table 2024-12-06 17:17:52 -05:00
tildearrow 5ceccb5988 add support for MSX2 .dmf
your songs may sound different. I am not going to bother supporting effects
and quirks
2024-12-06 03:00:15 -05:00
Dalia e8a173f17d mark song as modified when wt params edited 2024-11-30 14:08:37 -05:00
Dalia 49e90f10f4 mark song as modified when wavetable synth is toggled 2024-11-30 14:08:37 -05:00
Natt Akuma ddb29874d7 SNES: Change base capacity to 0xf800 bytes instead of 0x10000
This is to reflect both source address calculations in the engine code, which assume an echo buffer to end at 0xf800
2024-11-27 18:37:39 +07:00
tildearrow d8d12fa215 renderDX9: handle more present errors 2024-11-24 17:03:01 -05:00
tildearrow 56f598cd41 GUI: fix sample loop crossfade overflow
co-authored by Eknous
2024-11-24 16:09:42 -05:00
tildearrow 5d47b50032 MSM6258: fix panning
issue #2249
2024-11-24 16:05:52 -05:00
tildearrow c140c94c5f OPL4: fix drums ins type not appearing 2024-11-24 15:53:51 -05:00
tildearrow 806d47ba9d disable WITH_DEMOS by default
due to unclear licensing
2024-11-24 15:38:27 -05:00
tildearrow c531f777af fix file not closing when loading .dmc or .brr 2024-11-24 15:31:52 -05:00
tildearrow 3ca9545b1e GUI: mark modified when replacing instruments 2024-11-14 15:03:56 -05:00
tildearrow ffba0daf1c GUI: fix hitbox issue in sys picker 2024-11-11 13:57:33 -05:00
tildearrow 6f61f6661f C64: fix global param again...
issue #2181
2024-11-11 04:17:02 -05:00
tildearrow 44e842530b VGM export: fix bugs in issue #2226
- wrong byte in PCM RAM write
- MSM6258 reset being MSM6295
2024-11-11 04:04:04 -05:00
tildearrow 5fcf42267a GUI: warn OPL snare mult
issue #2232
2024-11-11 03:57:23 -05:00
Dalia 78af94b5e9 don't play metronome unless song is playing 2024-11-11 01:36:52 -05:00
tildearrow 99e3c3fa33 AY: fix chan osc
issue #2235
2024-11-10 05:38:19 -05:00
tildearrow 39a5408e4e GUI: always scroll scrolltexts on mobile 2024-11-10 04:56:41 -05:00
tildearrow b701f06a98 Lynx: whoopsie 2024-11-10 04:18:22 -05:00
tildearrow e7375fd733 GUI: implement scrolltext
issue #1961
applied on Checkbox
2024-11-10 04:14:39 -05:00
tildearrow 76554cb8a2 GUI: prepare to fix text overflow 2024-11-09 19:44:28 -05:00
tildearrow a3ceae888e GUI: fix cur order outline 2024-11-08 04:42:45 -05:00
tildearrow 77374cf740 GUI: fix user presets loading for real
issue #2025
2024-11-08 03:41:58 -05:00
tildearrow 826d1730e0 fix possible ins create type error
when cursor is outside
2024-11-08 03:19:49 -05:00
tildearrow 3d7079226f OPN: implement phase reset macro on ExtCh 2024-11-08 02:47:51 -05:00
tildearrow 82d5139197 SegaPCM: its still there 2024-11-08 02:04:06 -05:00
tildearrow 7c1d8ef4bb Lynx: fix load LFSR 2024-11-08 02:00:58 -05:00
tildearrow 28bbe56a44 .ftm import: fix virtual tempo going outside range
issue #2230
2024-11-07 03:55:48 -05:00
tildearrow 9e093a20c1 GUI: allow octave up/down on file picker
second try
issue #1895
2024-11-07 03:33:43 -05:00
tildearrow 0d18b4828d OPN: fix 30xx 2024-11-07 03:23:45 -05:00
tildearrow 75ad701986 YM2151: Nuked 30xx 2024-11-06 18:42:21 -05:00
tildearrow c69f366942 OPL: ymfm 30xx 2024-11-06 18:36:51 -05:00
tildearrow ce453ac0a4 GUI: warn the user when using 8914 and AtomicSSG 2024-11-06 18:24:49 -05:00
tildearrow 1e68098cd3 AY: fix several problems with AtomicSSG 2024-11-06 18:09:26 -05:00
tildearrow a25b2c7cc8 GUI: fix moveSelected going out of bounds 2024-11-06 17:49:31 -05:00
tildearrow 5917831992 OPLL: fix 13xx typo 2024-11-04 04:12:05 -05:00
tildearrow b6820fd5d5 the final part of this branch 2024-11-04 04:00:50 -05:00
tildearrow a54fb85288 FINALLY FIX THE CRASH
YES

issue #2215
2024-11-04 03:08:32 -05:00
tildearrow 92a615eefc Merge branch 'master' into theUltimateFix 2024-10-30 14:57:09 -05:00
freq-mod 5ff6adc34d
fix pzi import even more 2024-10-27 10:58:26 +01:00
freq-mod 7578ce6015
fix pzi import
previously it didnt import most of the samples
2024-10-26 18:20:01 +02:00
tildearrow 0e70439d68 initialize selCore...
maybe issue #2180
2024-10-24 03:22:18 -05:00
tildearrow c20a839871 a couple mobile improvements
comment section in sub-songs
background play option!
2024-10-22 16:38:57 -05:00
tildearrow 48aa3b438f YM2608: fix possible crash 2024-10-20 18:10:57 -05:00
tildearrow 8c2b3ba438 OPN: fix possible crash when CSM is off 2024-10-20 18:04:08 -05:00
tildearrow 69b03172b1 get it done
OPL UNFINISHED
2024-10-19 18:28:27 -05:00
tildearrow dd9d8dccd1 proof of concept 2024-10-19 17:52:24 -05:00
tildearrow 27dc82c26a demo song removal 2 2024-10-19 16:16:53 -05:00
tildearrow 34752f8f49 demo song removal 2024-10-19 15:55:57 -05:00
tildearrow 4281acc9dc VGM export: prepare to implement 30xx
issue #1798
2024-10-19 14:25:12 -05:00
tildearrow 2385f6f51b GUI: clarify MultiPCM ins type 2024-10-18 18:38:25 -05:00
Eknous-P 3a0549a480 find/replace: dont show octave on note combo preview
ugh please
2024-10-18 16:26:57 -05:00
Natt Akuma 665b722f31 VIC-20: add an option to disable filters 2024-10-17 20:16:04 -05:00
tildearrow 9fbb7df674 GUI: allow use of octave up/down whn fil pick open
issue #1895
2024-10-17 16:22:04 -05:00
tildearrow 5eae36f092 Lynx: direct stream mode 2024-10-17 15:51:04 -05:00
tildearrow 3c892ada2a this does not work 2024-10-17 15:06:13 -05:00
tildearrow d5154a103e VGM export: prepare for Lynx samples 2024-10-17 04:04:00 -05:00
tildearrow a0f0c863c9 OPN/A/B: fix CSM when using ymfm
and now there's a crash
2024-10-17 02:53:08 -05:00
tildearrow 3164f311f5 GUI: fix visualizer when things are on
issue #2212
2024-10-17 01:52:06 -05:00
Eknous-P 617bdc0f3b ah shit
ah fuck
2024-10-16 03:08:41 -05:00
Eknous-P 44077332b5 ughhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh 2024-10-16 03:08:41 -05:00
Eknous-P 17da58c0ca chtooltip updates... again
fix tile overflow
add psg to hierarchy
update hierarchy (ext.ops after fm)
2024-10-14 03:30:02 -05:00
LTVA1 721c3b55b6 fix OPNB emu core setting, fix chan osc for OPN ymfm 2024-10-14 00:01:04 -05:00
freq-mod 9130f78720
TurboSoundFM doesnt allow internal AY
either replaces or disables it due to port conflicts
2024-10-13 17:49:32 +02:00
freq-mod 19fdb423d8 CSM pres 2024-10-13 11:46:59 +02:00
tildearrow 23a7cc6e8a GUI: add some presets for CSM 2024-10-13 03:03:52 -05:00
Eknous-P 0f5af36e99 why did i even 2024-10-13 02:11:52 -05:00
Eknous-P 1333be8da7 proper note selector
its only a lil bit janky
2024-10-13 02:11:52 -05:00
LTVA1 2e2796c245 fix OPN CSM osc view, fix OPNA ADPCM channel not playing 2024-10-13 02:11:36 -05:00
Eknous-P 5f47166012 redo opnx csm 2024-10-13 02:11:36 -05:00
--global 901bb110cc fix #2182
Changed behavior of FurnaceGUI::play - explicitly providing 0 will
always play from the beginning of the pattern. Default argument of -1
will result in default behavior (play from beginning unless currently
stepping).
2024-10-12 13:25:12 +02:00
tildearrow f80dd764f3 Merge branch 'Eknous-P/that_cursed_tooltip' 2024-10-11 02:03:12 -05:00
tildearrow 936dd0a5ba GUI: too many settings 2024-10-10 14:25:12 -05:00
Eknous-P 1d59696f41 bad clangd extension!
bad!
2024-10-10 23:20:23 +04:00
Eknous-P a061639f4b proper setting name, fix overflow by making smaller, ay is psg, sid3 case
im done
please
2024-10-10 23:17:52 +04:00
tildearrow 6e47a119fa everyone is voting 4 2024-10-10 02:56:20 -05:00
tildearrow c6dfd4f10b Merge branch 'master' into sysmgrtooltip_syschaninfo 2024-10-10 02:38:18 -05:00
tildearrow 6f585bfce6 GUI: release to open 2024-10-10 02:34:18 -05:00
tildearrow 39e049145a Merge branch 'Eknous-P/welcomescr' 2024-10-10 02:21:57 -05:00
tildearrow 7484bd6d6b GUI: rename level direct 2024-10-09 23:52:49 -05:00
RevvoBolt 616dfadd20 Add-on instead of addon?
Add-on is recognized as being more grammatically correct than addon.
2024-10-09 00:16:38 -05:00
tildearrow dcaaeca3e2 GUI: don't show duty beeper macro if no ZX present 2024-10-05 19:10:35 -05:00
tildearrow e2dc7f055f GUI: fix built-in file picker X scroll
issue #2190
2024-10-05 02:37:41 -05:00
tildearrow dfb12271da SID3: now implement getPan
whatever
2024-10-03 12:34:02 -05:00
tildearrow ca7fe252a3 SID3: fix the other saving problems 2024-10-03 12:27:39 -05:00
tildearrow eb4ecd6827 SID3: fix filter macro saving 2024-10-03 12:20:41 -05:00
tildearrow 33934bedda let's see 2024-10-02 14:11:27 -05:00
Eknous-P ae1b9a3901 sys tooltip/info: requseted changes + swan chans all can wavetbl 2024-10-02 14:57:02 +04:00
tildearrow 14e38ab450 SAP-R export: fix crash 2024-09-30 23:14:31 -05:00
tildearrow b0bf13df94 GUI: fix Ctrl binds going away 2024-09-30 15:30:27 -05:00
tildearrow ff0297bcba SAP-R export: fix length in low-latency mode 2024-09-30 03:54:33 -05:00
tildearrow 54745bec3b here we go!
pull request #1706
2024-09-30 03:37:22 -05:00
tildearrow 5a587a6af6 prepare port SAP-R export from pull request #1706 2024-09-29 19:39:10 -05:00
tildearrow f7a861a01d Merge remote-tracking branch 'alederer/wave-list-horizontal' 2024-09-29 18:26:57 -05:00
tildearrow 3eb0686c1c freaking workaround for Flatpak bullcrap
issue #2096

pass -DFLATPAK_WORKAROUNDS=ON to CMake when building Flatpak
2024-09-29 17:03:39 -05:00
tildearrow df959399cd DivConfig: fx pssib issue whn line's lngr thn 4095
maybe issue #2025
2024-09-29 16:46:06 -05:00
tildearrow 5f78df0cd7 Merge remote-tracking branch 'alederer/macro-editor-list-show-modified' 2024-09-29 16:36:37 -05:00
tildearrow 03c003276c Merge remote-tracking branch 'alederer/multiKeybind' 2024-09-29 15:38:35 -05:00
tildearrow fa1bdbe3a1 OPM/OPZ: fix DT2 effect 2024-09-28 14:50:01 -05:00
tildearrow ab006d5d78 finally implement file name hint on NFD (Windows)
for "auto-fill file name when saving"
2024-09-28 00:30:16 -05:00
tildearrow 0f5adae785 GUI: remove unused function 2024-09-28 00:17:35 -05:00
tildearrow 3a0fd28165 GUI: warn on first import of a classic module 2024-09-27 15:14:54 -05:00
tildearrow 81dccf8dcc new demo song
by AstralBlue
2024-09-27 03:32:42 -05:00
tildearrow d89a8f2c4f OPL4: fix drums mode
issue #2160
2024-09-26 15:50:06 -05:00
tildearrow 0f2fd76a90 dev223 - Y8950: fix ADPCM pitch
issue #2028
2024-09-26 14:41:14 -05:00
tildearrow 0cf6c7cd64 OPL: fix YMF289 in ymfm
ymfm offers a class called ymf289, but I am too lazy to use it
and it probably does not resample anyway
2024-09-26 14:20:14 -05:00
tildearrow 8254d6e027 GUI: remove references to surround sound 2024-09-25 18:51:37 -05:00
tildearrow 8ac3491672 OPL: and now fix the fix 2024-09-25 14:43:24 -05:00
tildearrow f7412e5234 OPL: key off after 4-op mode change
somehow fixes issue #2171
2024-09-25 14:24:39 -05:00
Eknous-P e06b3ada26 sure
even though it can get longer when power-saving kicks in
2024-09-25 23:06:01 +04:00
tildearrow b2c1f8d919
Merge pull request #2116 from alederer/sortFuzzyMatches
In command palette, sort matches by quality/exactness
2024-09-25 13:52:00 -05:00
tildearrow 60d01de6fc VGM export: QSound ADPCM fix, for real this time 2024-09-25 13:12:34 -05:00
LTVA1 95b7f1f3ac
FamiTracker import improvements (#2172)
* create instrument copies to accurately represent what FamiTracker does e.g. on VRC6 channels when using 2A03 instruments

* fix Hxy effect for S5B (AY), part 1

* fix Hxy effect for S5B (AY), part 2

* fix Hxy effect for S5B (AY), part 3
2024-09-25 13:33:09 +02:00
Eknous-P 0c16646b05 mobile button and... ugh 2024-09-23 23:33:52 +04:00
Eknous-P 771cee405f separate copy "button" 2024-09-23 19:55:57 +04:00
tildearrow 3634a51efd GUI: fix order nibble when move cursor with keys
issue #2170
2024-09-22 17:15:23 -05:00
tildearrow 32ca799bd3 Merge branch 'opz-improvements'
there also was an actual bug which may have hindered freq calc...
I fixed it now by moving A-4/clock pitch compensation logic to chan[i].freq instead of baseFreq
2024-09-22 17:04:47 -05:00
tildearrow 1f1b9fcc87 I don't trust you
where did you get these numbers from? did you make them up?
first you go "bruh bruh bruh" on me and then you drop this. couldn't
you at least look around a bit?!

since when has OPZ been clocked at 4MHz? who said that it does?
the chip's been designed to run at NTSC colorburst frequency, damn it!

on top of that, you didn't have to make up anything. AT ALL.
fixed frequency is simpler than eating with a fork. you just write the
frequency IN HERTZ (!!), the block and that's it.
really? were these numbers necessary?

oh man....
2024-09-22 16:56:54 -05:00
tildearrow 88b274b886 GUI: hide some chips
- YMU759: impossible to implement properly
- Dummy: doesn't make sense
- μPD: incomplete and uncertain
- SegaPCM 5-channel: Defle compat
- Pong: doesn't make sense
2024-09-22 14:46:37 -05:00
tildearrow f8b3c81d6c GUI: get rid of party mode 2024-09-22 13:55:44 -05:00
tildearrow 838646800a OPZ: code style fixes 2024-09-22 03:58:17 -05:00
Eknous-P 07b41e03c8 change copied timer to deltatime 2024-09-22 11:55:54 +04:00
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