Commit graph

2692 commits

Author SHA1 Message Date
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 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
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
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 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 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 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
cam900 bd298e7ece Fix ES5506 filter slide 2025-01-27 13:49:38 +09: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
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 192be95c14 OPL: instant drum muting
issue #1945
2024-12-06 18:28:09 -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 6f61f6661f C64: fix global param again...
issue #2181
2024-11-11 04:17:02 -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 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 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 a54fb85288 FINALLY FIX THE CRASH
YES

issue #2215
2024-11-04 03:08:32 -05:00
tildearrow 0e70439d68 initialize selCore...
maybe issue #2180
2024-10-24 03:22:18 -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
Natt Akuma 665b722f31 VIC-20: add an option to disable filters 2024-10-17 20:16: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 a0f0c863c9 OPN/A/B: fix CSM when using ymfm
and now there's a crash
2024-10-17 02:53:08 -05:00
LTVA1 721c3b55b6 fix OPNB emu core setting, fix chan osc for OPN ymfm 2024-10-14 00:01:04 -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
tildearrow dfb12271da SID3: now implement getPan
whatever
2024-10-03 12:34:02 -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 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
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 838646800a OPZ: code style fixes 2024-09-22 03:58:17 -05:00
tildearrow dc47194e3d Merge branch 'master' into opz-improvements 2024-09-22 00:35:46 -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 987bff8b75 a couple code style changes 2024-09-21 04:36:22 -05: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 b2d6f8e7ee update c64.cpp 2024-09-14 04:35:02 -05:00
tildearrow 47f36f99d9 Merge branch 'master' into SID3 2024-09-13 23:46:13 -05:00
tildearrow 0b0e6d5e13 a couple corrections
SID3 will have data independent of C64 and SID2
2024-09-13 23:08:25 -05: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
tildearrow 89fb8842b0 OPL: put this variable outside 2024-09-08 18:34:32 -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
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
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 87b172015c fix 601x-604x 2024-08-28 17:07:54 -05:00
tildearrow 400bbe9109 NES: DPCM loop fix...
pull request #2119
2024-08-28 06:05:35 -05: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 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
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 12bd2d3829 Merge branch 'master' of https://github.com/tildearrow/furnace into SID3 2024-08-24 19:15:27 +03:00
tildearrow bcdad3c538 AY: remove all ffff writes 2024-08-24 02:47:51 -05: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
LTVA1 36411defd2 fix software DAC sample rate being dependent on chip clock 2024-08-22 19:48:35 +03:00
LTVA1 ecb46ae682 fix volume command 2024-08-22 14:55:25 +03:00
AArt1256 5599ee327b fixed global variables 2024-08-21 13:33:37 +03:00
LTVA1 a2326182f6 add tSU filter cutoff & duty slide effects 2024-08-19 15:22:08 +03:00
LTVA1 bc352728b5
Merge branch 'tildearrow:master' into SID3 2024-08-18 18:56:11 +03:00
LTVA1 f4ff45efb7 add cutoff & resonance scaling control effects, work more on Russian locale 2024-08-18 18:55:46 +03:00
cam900 7fb7d32bd5 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-18 20:23:14 +09:00
cam900 875ef08256
Fix Y8950 ADPCM memory addressing
Max supported size is 262144 bytes, so I fixed that.
2024-08-18 20:22:24 +09:00
LTVA1 99be4541c5 more in-tune tonal noise waves, add locale to presets, update Russian locale
Also make noise a little closer to C64
2024-08-17 16:38:46 +03:00
LTVA1 4e7c1773ed fix 2024-08-17 13:49:56 +03:00
LTVA1 80933510a5 rework noise readout, alter noise freq for specific feedback bits config 2024-08-17 13:40:15 +03:00
LTVA1 90e5fb79e5 cutoff and resonance scaling and instrument save/load!
also mix minmod CPU usage variable initialization, and work a bit on Russian locale
2024-08-16 17:37:07 +03:00
cam900 16ca40e0d2 Add OPL4/MultiPCM 12-bit PCM support 2024-08-16 20:45:40 +09:00
cam900 2c417811b3 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-16 20:35:16 +09:00
LTVA1 5d6dcd60bf Merge branch 'master' of https://github.com/tildearrow/furnace into tildearrow-master 2024-08-16 10:35:32 +03:00
LTVA1 466adb5613 localize channel pair hints 2024-08-16 10:31:23 +03:00
Aleksi Knutsi a9591fae71
AY Timer bug fixes and some QOL improvements (#2073)
* Create android.yml

* bug fixes part 1

* bollocks number 1

* Update android.yml

* why are you crackling you arent supposed to do that

* stop crackling please

* what a load of

* what a load of part 2

* what a load of part 3

* what a load of part 4

* final commit... i hope!

* final commit my rear bottom

* final commit for real this time

* Delete .github/workflows/android.yml

* Update sysDef.cpp
2024-08-15 15:55:29 -05:00
AArt1256 ce9d510076 added more presets and fixed memory bug yay 2024-08-15 14:36:58 +03:00
LTVA1 87e0a9fbff oops 2024-08-14 22:16:28 +03:00
LTVA1 5f0c61d225 C64 and SID2 channel pairs 2024-08-14 22:09:07 +03:00
LTVA1 75f35e91d6 finish channel pairs for dave chip 2024-08-14 21:48:57 +03:00
LTVA1 b6ecd79ffa Merge branch 'master' of https://github.com/tildearrow/furnace into SID3 2024-08-14 21:19:12 +03:00
LTVA1 7c324ec39d naive channel pair refactor (dumb replace one pair with vector of pairs) 2024-08-14 20:01:16 +03:00
cam900 afec47e9cc Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-14 17:56:27 +09:00
cam900 f906b4ebe4 Safety check for MSM6295 bankswitched address 2024-08-14 17:54:20 +09:00
LTVA1 0ea53fdae5 phase reset effects & fix wavetable change 2024-08-13 20:36:45 +03:00
MooingLemur 0224882a42 oops, should have been 47.0.2 2024-08-13 04:11:08 -05:00
MooingLemur 3b9cf70ff5 VERA: bump default chip type 2024-08-13 04:11:08 -05:00