Commit graph

4457 commits

Author SHA1 Message Date
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
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 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 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 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 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 8c59d4bf8b remove two unused defines 2025-02-01 21:27:28 -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 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 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 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 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
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
tildearrow 1d3318c214 VGM export: fix DAC data being offset 2024-12-15 15:56:18 -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 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
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
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 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 c531f777af fix file not closing when loading .dmc or .brr 2024-11-24 15:31:52 -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
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 b701f06a98 Lynx: whoopsie 2024-11-10 04:18:22 -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 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 1e68098cd3 AY: fix several problems with AtomicSSG 2024-11-06 18:09:26 -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