Commit graph

2248 commits

Author SHA1 Message Date
tildearrow cf84be0b71 Virtual Boy: this works?! 2023-11-20 17:32:33 -05:00
Kagamiin~ 56d774bb3b Merge branch 'master' into feature/esfm 2023-11-18 09:15:48 -03:00
cam900 f6849dfa50 Merge branch 'master' of https://github.com/tildearrow/furnace into nmk112 2023-11-15 19:19:47 +09:00
tildearrow 26648a895d Amiga: yet another fix... 2023-11-06 04:25:27 -05:00
tildearrow a3ea20bfec Amiga: fix loop 2023-11-06 04:21:48 -05:00
tildearrow 20537d5af0 Amiga: one more accuracy fix 2023-11-05 18:06:01 -05:00
tildearrow f0e51f6e88 Amiga: improve accuracy
don't stop DMA until sample is done playing
do not update output if PM/AM is on
2023-11-05 17:00:02 -05:00
cam900 7cf40f2d33 Merge branches 'master' and 'nmk112' of https://github.com/tildearrow/furnace into nmk112 2023-11-04 18:53:30 +09:00
tildearrow 6df06a7f89 Revert "prepare for volume handling refactor"
sorry......... this refactor is canceled as it seems harder than I thought...
2023-11-04 04:13:47 -05:00
tildearrow 54187d043d Revert "volume handling refactor, part 1 - BEWARE"
This reverts commit e1cb84a076.
2023-11-04 04:13:20 -05:00
tildearrow e1cb84a076 volume handling refactor, part 1 - BEWARE
do not use these versions for production. your modules will break until this is finished!

only Amiga is done for now
2023-11-03 14:46:23 -05:00
cam900 31977ab7c6 Merge branch 'master' of https://github.com/tildearrow/furnace into nmk112 2023-11-02 21:19:26 +09:00
tildearrow 4bc5f49fe6 prepare for volume handling refactor 2023-11-01 20:43:48 -05:00
tildearrow 38103d9c1f YM2612: fix getPan on ExtCh channel 5 2023-10-29 13:33:29 -05:00
tildearrow e915c6efb9 C64: fix MSVC build... 2023-10-29 05:36:53 -05:00
tildearrow e2278d3688 C64: relative cutoff and duty macros are fine 2023-10-29 04:36:25 -05:00
tildearrow f05d1693f8 C64: add chip flag to set env reset time
2 by default
1 for .dmf and old Furnace songs
2023-10-29 04:14:54 -05:00
tildearrow 7fd54775bb C64: really fix porta 2023-10-29 03:54:12 -05:00
tildearrow 87b8851900 C64: volIsCutoff compatibility 2023-10-29 02:25:35 -05:00
tildearrow 90032899c7 C64: bunch of changes
- merging test/gate and special macros
- drop new test/gate compat flag - not necessary
- code style and tabs to spaces

TODO: compatibility!
2023-10-29 01:39:37 -05:00
tildearrow ecec1acd24 Merge branch 'master' of https://github.com/LTVA1/furnace into c64improve 2023-10-29 00:22:10 -05:00
tildearrow f03996ebd2 move furIcons somewhere else 2023-10-28 19:07:40 -05:00
tildearrow e121c40a23 piece of trash 2023-10-28 19:03:08 -05:00
tildearrow bd88639c90 GUI: channel status, part 6
PC Engine
2023-10-28 18:47:24 -05:00
tildearrow 1a448649b6 GUI: channel status, part 5
now with custom icons
colors stolen from GEP
2023-10-28 02:39:44 -05:00
LTVA1 0f760a365e standlalone cutoff macro (with correct relative mode) 2023-10-28 10:15:41 +03:00
tildearrow d8daeb1169 GUI: channel status, part 4 2023-10-27 18:08:37 -05:00
tildearrow 429119a186 C64: I may have solved it 2023-10-27 15:48:36 -05:00
Kagamiin~ 46024277b2 Removing channel deactivaton upon note off 2023-10-27 12:01:39 -03:00
LTVA1 006f0d6f48 wrong flag string 2023-10-27 17:25:14 +03:00
LTVA1 847bb046f6 fix 2023-10-27 17:23:48 +03:00
LTVA1 50b314bd77 Make separate macros for each ADSR param 2023-10-27 17:20:32 +03:00
Kagamiin~ 47c4273e5c Code review suggestions 2 2023-10-26 09:47:18 -03:00
Kagamiin~ 170248e61a Code review suggestions
Haven't had a good peer review in ages.
2023-10-26 09:43:01 -03:00
Kagamiin~ 85db9ca16e Merge branch 'master' into feature/esfm 2023-10-25 17:10:16 -03:00
LTVA1 1207eb1e32 add C64 ADSR macros, add gate bit to test/gate macro, untested fix of macro retrigger on 03xx command 2023-10-25 21:28:29 +03:00
Kagamiin~ 23b1c4107e Fix hard reset handling; add detune effect; change some labels 2023-10-24 14:29:37 -03:00
tildearrow c0acd472ed SoundUnit: fix sample map 2023-10-23 16:40:30 -05:00
tildearrow 6dddee40d5 C64: 20xy and 21xy for setting ADSR
dropping DefleJank
2023-10-23 13:49:03 -05:00
tildearrow aad3557693 dev186 - C64: update env on 1Exy 2023-10-23 13:38:16 -05:00
Kagamiin~ 64baa7c97f Some refactoring 2023-10-22 11:46:34 -03:00
tildearrow f718fbb5f5 dev185 - SoundUnit: hardware sweep sequences
kinda buggy in note off... may require a rewrite of volume handling
2023-10-21 18:42:37 -05:00
Kagamiin~ dde56c0cfc Merge branch 'master' into feature/esfm 2023-10-21 14:57:43 -03:00
Kagamiin~ a1b7e52467 Implementing pattern effects, detune on FM preview, default instrument 2023-10-21 14:35:20 -03:00
cam900 15bdb19336 Merge branch 'master' of https://github.com/tildearrow/furnace into nmk112 2023-10-21 15:15:10 +09:00
tildearrow 10c72f3a10 SoundUnit: duty on forceIns 2023-10-20 17:28:45 -05:00
tildearrow ad55e6f728 ES5506: fix getPan 2023-10-17 18:11:12 -05:00
Kagamiin~ a01ddd381e Implement ESFM macros 2023-10-17 19:24:57 -03:00
Kagamiin~ 4a0295fd1f WIP: adding fixed pitch mode; fix UB in ESFM driver 2023-10-15 19:46:07 -03:00
Kagamiin~ 779afcb97a WIP: adding ESFM (ESS ES1488/ESS ES1868 etc.) system 2023-10-15 11:46:32 -03:00
tildearrow 10172e0489 GUI: better DPCM mapping, part 2 2023-10-13 19:57:36 -05:00
tildearrow af56b726e4 low quality tildearrow code 2023-10-11 17:24:40 -05:00
tildearrow 8235f6ee66 C140: add bank types 2023-10-11 02:48:39 -05:00
tildearrow b08f1e656f SNES: NOOOOOOOOOOOOO
a typo ruined 0.6 :<
issue #1522
2023-10-11 01:16:57 -05:00
tildearrow 43468653a0 prepare for pre-calculated pitch table 2023-10-10 20:15:58 -05:00
tildearrow cb8ed42cd6 GUI: channel pair hints, part 5
SNES freq mod
2023-10-09 04:28:08 -05:00
tildearrow 7fc734744d GUI: channel pair hints, part 2
POKEY
2023-10-08 04:07:26 -05:00
tildearrow 839dc3cd91 prepare to add channel pair and mode hints 2023-10-05 04:47:14 -05:00
cam900 d6d3bbcbf1 Fix build 2023-10-03 14:02:33 +09:00
cam900 e76d96f4cb Fix length 2023-10-03 12:35:18 +09:00
cam900 b12af42b06 Merge branch 'master' of https://github.com/tildearrow/furnace into nmk112 2023-10-02 16:53:07 +09:00
tildearrow 572dbcfdd2 K007232: fix getPan 2023-10-01 15:06:43 -05:00
tildearrow 08a93f9c4d Namco WSG: fix noise mode 2023-09-26 12:23:38 -05:00
tildearrow 67c3a67a0d C140/C219: several fixes
loop point fix
crash fix
2023-09-24 16:54:19 -05:00
cam900 4a92bf088f Merge branch 'master' of https://github.com/tildearrow/furnace into nmk112 2023-09-21 20:50:28 +09:00
tildearrow cb63314f53 OPN/A/B: fix chan osc overflow 2023-09-20 16:31:38 -05:00
tildearrow 746744606f oops 2023-09-20 01:10:30 -05:00
tildearrow 196619cf70 MSM6295: enforce max vol of 8 2023-09-20 01:08:48 -05:00
tildearrow cad63d8351 is this faster? 2023-09-20 00:24:55 -05:00
tildearrow 8cac04d917 OPL: fix drum muting 2023-09-13 18:03:22 -05:00
tildearrow 9a63fdccd5 drop usage of std::deque, part 2 2023-09-13 02:46:02 -05:00
tildearrow 658f69bc4e dev176 - OPM/OPZ: fix pitch 2023-09-12 01:12:59 -05:00
tildearrow 4777284a7c C219: don't phase reset if duty macro hasn't chang
ed
2023-09-11 02:57:24 -05:00
tildearrow f0255f30e8 C219: fix noise being restricted by sample length 2023-09-11 02:54:48 -05:00
tildearrow d687edf16a SoundUnit: fix getPan() again 2023-09-11 01:50:52 -05:00
tildearrow 8b7b21d909 MSM6258: VGM EXPORT!!! 2023-09-11 01:19:02 -05:00
tildearrow 630bdfb2b5 K053260: fix legato + arp on non-linear pitch 2023-09-10 13:06:25 -05:00
tildearrow e839212aa0 Merge branch 'master' into nmk112 2023-09-07 01:41:22 -05:00
tildearrow 1a520dbf3e more multi-thread fixes
don't use static on acquire()
don't yield at all
run fillBuf() on thread
fix option tooltip as it introduces some overhead
2023-09-07 00:48:26 -05:00
tildearrow bb4de6fcb0 OPL/OPNA/OPNB: fix ADPCM-B freq not being clamped 2023-09-06 18:39:56 -05:00
tildearrow ef23b88ad3 NES: fix chan osc (noise, NSFplay) 2023-09-02 03:58:11 -05:00
cam900 a2be46bb82 Casting 2023-08-31 20:35:35 +09:00
cam900 5aeeb09616 Prepare for NMK112 bankswitching support 2023-08-31 20:34:04 +09:00
tildearrow addbc986f0 ExtCh: fix forceIns
why KVS
2023-08-31 03:23:15 -05:00
tildearrow 9caa2f38f4 SoundUnit: fix getPan() 2023-08-31 00:42:25 -05:00
tildearrow 274ce8a646 remove many TODOs 2023-08-30 19:21:38 -05:00
tildearrow 5a688c58cb OPM/OPZ: invert noise frequencies
since ymfm is default
2023-08-30 13:46:47 -05:00
tildearrow 63dcacf33d dev170 - YM2151: fix noise frequency on ymfm
issue #1441
raising ver num to allow possible compat change
2023-08-30 13:35:22 -05:00
tildearrow ff3cebfffd
Merge pull request #1022 from tildearrow/x1_010_bank
Add Seta 2 Bankswitch support
2023-08-30 02:22:18 -05:00
tildearrow de34b5c9c4 K053260: implement ADPCM 2023-08-29 16:43:37 -05:00
tildearrow eaac5cc224 C219: fix VGM export
a sample word has two 8-bit samples in reverse order
(need hardware confirmation)
2023-08-29 04:09:11 -05:00
tildearrow ead19d6111 C219: fix bank restore 2023-08-29 03:40:40 -05:00
tildearrow ca51ee9f32 C219: fix bank note off 2023-08-29 03:38:59 -05:00
tildearrow e6c52e34d1 C219: finish C219 sample format 2023-08-29 03:19:26 -05:00
tildearrow da7ad75afd C219: fix audio 2023-08-29 02:32:59 -05:00
tildearrow 87ae995ff9 MSM5232: fix chan osc again
issue #1435
2023-08-29 02:14:55 -05:00
tildearrow a5f351c232 C219: new sample format (work in progress) 2023-08-28 20:31:22 -05:00
tildearrow 9cb239438e C219: chip config and proper clock rate 2023-08-28 18:37:35 -05:00
tildearrow 2fddd9e4d4 C219: noise/invert/surround effects/macro 2023-08-28 17:59:34 -05:00
tildearrow decd2fde0f MSM5232: work around possible chip quirk
when changing control, it seemingly retriggers all channels
issue #1433
2023-08-28 16:36:26 -05:00
tildearrow bcf877b7ca C219: fix out of bounds access 2023-08-28 04:12:09 -05:00
tildearrow 4e3de466ce C219: looooooool 2023-08-28 04:10:48 -05:00
tildearrow 0e7dbf7b4a fix type limits, part 1? 2023-08-28 04:03:32 -05:00
tildearrow 288441617b C219: more updates 2023-08-27 23:04:40 -05:00
tildearrow 26f6f22ef5 C219: more updates
to-do:
- VGM export
- presets
- noise/invert toggles
2023-08-27 20:05:08 -05:00
tildearrow 859182bb08 C219: initial work 2023-08-27 18:46:59 -05:00
tildearrow 80961354f7 prepare for C219 2023-08-27 18:46:59 -05:00
tildearrow 17a88fda70 C140: update emulator
with the one from C219 branch
2023-08-27 15:52:54 -05:00
tildearrow f53bc88242 ES5506: make chan osc louder 2023-08-27 03:26:32 -05:00
tildearrow dee7a1820d OPZ: fix ALG/FB macro keying off 2023-08-27 00:35:56 -05:00
tildearrow 55d7a5e9bc K007232: oscBuf was too fast 2023-08-25 04:18:22 -05:00
tildearrow d36b43415f fix getPan() on VERA and MSM6258 2023-08-24 03:39:05 -05:00
tildearrow d240066df8 fix issue #1371 2023-08-24 03:25:38 -05:00
tildearrow 31335b95c9 finish it 2023-08-24 03:05:25 -05:00
tildearrow c9cbf133d6 Eknous please HELP ME 2023-08-23 17:25:05 -05:00
tildearrow 251893c5f8 Lynx: fix sample mode switching glitch
issue #1372
2023-08-22 00:25:23 -05:00
tildearrow 54934dcfc9 dev167 - fix TL macro
previously, 127 mapped to TL 0
but now 127 maps to TL 127

yeah, the graph will look inverted I know...
2023-08-21 23:57:07 -05:00
tildearrow 33d932f548 PCM DAC: fix osc buf
issue #1393
2023-08-21 04:30:49 -05:00
tildearrow e3eea680d5 ExtCh: panning macro
issue #1382
2023-08-19 23:52:13 -05:00
tildearrow f3167d2fc9 C140: fix possible overflow 2023-08-19 23:39:27 -05:00
tildearrow 993c5904e2 C140: fix possible crash 2023-08-19 23:30:35 -05:00
tildearrow b384367aa8 Namco 163: fix compiler error 2023-08-19 04:38:13 -05:00
tildearrow ffe8b5ed9c ExtCh: fix forceIns after 1800 2023-08-19 02:54:19 -05:00
tildearrow 6d5b313973 now the other OPNs 2023-08-18 04:10:16 -05:00
tildearrow f2dd169e3d Game Boy: fix soft env volume after note off 2023-08-17 18:28:48 -05:00
tildearrow 0aabfe52d8 YM2612: fix ExtCh muting
issue #1366
2023-08-17 16:37:27 -05:00
tildearrow 741d350fe2 possible fix to #1356 2023-08-14 16:28:43 -05:00
tildearrow cd0c8cfca9 C140: fix chan osc 2023-08-12 17:28:54 -05:00
tildearrow 987ca3ad11 C140: VGM volume 2023-08-12 17:08:01 -05:00
tildearrow fc16164dbd
Merge pull request #1342 from tildearrow/c140
Chicken ice cream
2023-08-12 16:29:49 -05:00
tildearrow 1e580d6936 C140: comment 2023-08-12 04:12:22 -05:00
tildearrow 984a3b7450 YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2023-08-12 04:07:14 -05:00
tildearrow f12d601234 C140: fix key off 2023-08-12 03:45:08 -05:00
tildearrow 320d965f78 fix µ-law encoding 2023-08-12 03:42:10 -05:00
tildearrow 06243c9d9d asdfasdf 2023-08-12 02:53:05 -05:00
tildearrow 94cb733c60 fix build error
hopefully
2023-08-12 02:52:50 -05:00
tildearrow 27e454e7aa C140: help µ-law ISN'T WORKING 2023-08-12 01:54:12 -05:00
tildearrow 5f2cfd4854 AY: don't use bit arrays
issue #649
2023-08-11 23:58:44 -05:00
tildearrow b58fe36356 Merge branch 'master' into ymf289b 2023-08-11 22:25:39 -05:00
tildearrow fe8f94b2b2 OPN/2/A/B: fix ExtCh muting on 18xx 2023-08-11 16:35:18 -05:00
tildearrow 6324a2a952 OPN/2/A/B: fix ExtCh instrument
issue #1053
2023-08-11 16:14:06 -05:00
cam900 0311d712b1 Fix audPos 2023-08-10 22:16:19 +09:00
cam900 e0ca653462 I forgot 2023-08-10 22:13:13 +09:00
cam900 139ef4be29 Remove unused variable 2023-08-10 20:42:57 +09:00
cam900 4d7d610f8c C140 fixes and optimizations
Minor optimization
Move output shift function to dispatch
Fix loop
Fix pan scaling if using INS_AMIGA
correct about
2023-08-10 20:24:10 +09:00
tildearrow d5776e02bb OPLL: add option to apply fixed frequency to all d
issue #289
2023-08-10 00:15:44 -05:00
tildearrow 805c3ba7ac OPLL: more fixes
issue #289
2023-08-09 23:32:29 -05:00
tildearrow e46fa7d88e OPLL: remove some debug messages 2023-08-09 23:22:43 -05:00
tildearrow c6857b56f2 OPLL: now add a partial fix to issue #289
does not fulfill "apply pitch to all channels" suggestion yet though
2023-08-09 23:22:08 -05:00
tildearrow dd0d6b940a OPLL: drums mode work 4 2023-08-09 23:16:53 -05:00
tildearrow 21d1dfefa1 many changes 2023-08-09 22:00:03 -05:00
tildearrow 7bb59e77cc OPLL: drums mode work 3 2023-08-09 18:02:51 -05:00
tildearrow d5324e8897 OPLL: drums mode work 2 2023-08-09 17:53:48 -05:00
tildearrow 3de0ee4e25 OPLL: drums mode work 2023-08-09 17:29:42 -05:00
cam900 72d04777c0 Less silent output 2023-08-09 20:38:17 +09:00
cam900 46b83833e1 Less louder output 2023-08-09 20:36:59 +09:00
cam900 1e2cd8282a Change Mulaw algorithm 2023-08-09 20:33:42 +09:00
cam900 14c5d94499 C140 Part 2 2023-08-09 20:30:00 +09:00
cam900 c34233cf4f Prepare for C140 2023-08-08 21:27:12 +09:00
tildearrow 9d410dfe9c add isVolGlobal to DivDispatch
do not key release on pendingNotes if so
issue #1325
2023-08-07 18:05:31 -05:00
tildearrow 4d476c0588 YM2612: fix direct stream 2023-08-04 17:48:34 -05:00
tildearrow 77e708dc57 YM2612: better DAC write scheduling
issue #1300
2023-08-04 17:36:36 -05:00
tildearrow 2060f8e9eb OPN: fix ExtCh alg/fb/fms/ams/lfo macros 2023-08-04 03:33:45 -05:00
tildearrow 3837fe59fb SN: fix key off 2023-08-03 01:10:25 -05:00
tildearrow 23daabf5b9 Game Boy: remove debug message 2023-08-03 00:45:03 -05:00
tildearrow 747b5d19bd NES: whoops!
issue #1313
2023-08-03 00:40:53 -05:00
tildearrow 537f90c3f1 fix again 2023-08-02 14:58:10 -05:00
tildearrow cf80eca19f FIX build 2023-08-02 01:27:29 -05:00
tildearrow f1b560cce9 PC speaker: fix cut freq
issue #1307
2023-08-01 16:00:13 -05:00
cam900 71b76e3e88 Fix K053260 sample offset 2023-07-31 20:06:07 +09:00
tildearrow 4c13fe08d2 YM2612: prioritize urgentWrite() on hard reset 2023-07-30 14:53:26 -05:00
tildearrow 954d91d073 OPLL: asdfasfd 2023-07-30 02:20:19 -05:00
tildearrow 1325664d25 SNES: fix possible sample corruption
when toggling echo
2023-07-29 17:12:46 -05:00
tildearrow 423f2f5069 OPN/A/B: implement 30xx on ExtCh
issue #1113
2023-07-29 16:05:34 -05:00
tildearrow 233431c2cc YM2612: implement 30xx on ExtCh 2023-07-29 14:17:04 -05:00
tildearrow a7e9218562 Namco WSG: fix custom clock 2023-07-28 04:27:53 -05:00
cam900 8ad7a5bf7d Remove global rendersamples 2023-07-27 21:10:45 +09:00
tildearrow b41d8fe208 TIA: fix custom clock
but it changes pitch of everything
2023-07-27 02:20:22 -05:00
tildearrow 501d8da7af NES: optimize NSFplay 2023-07-27 01:24:18 -05:00
tildearrow 1511b66015 MSM6258: fix missing type/outbits init 2023-07-26 19:33:49 -05:00
tildearrow 677f7fe682 ES5506: some cleanup
and fix sample map... ugh

issue #1282
2023-07-26 19:16:57 -05:00
cam900 e0dc22a6f1 Remove unnecessary functions 2023-07-26 19:39:13 +09:00
cam900 a3d54ca933 Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010_bank 2023-07-26 19:28:39 +09:00
tildearrow a3a004477d Game Boy: fix hw seq in low latency mode 2023-07-25 01:51:22 -05:00
tildearrow d12c061393 PET: fix not working 2023-07-25 01:26:41 -05:00
tildearrow 4161dcd786 fix crash when exporting audio (per chip)
also fix two misc issues in ES5506 and Sound Unit
2023-07-24 22:34:39 -05:00
tildearrow c702922144 OPLL: how am I going to do this 2023-07-23 22:36:27 -05:00
tildearrow 90264bb63e MSM5232: fix chan osc
issue #1269
2023-07-23 16:40:45 -05:00
tildearrow e52e2da68b dev165 - Namco 163: do not scale pitch by default 2023-07-23 15:57:25 -05:00
tildearrow 20418bb490 add TED to Furnace
#855 #873
2023-07-23 04:42:38 -05:00
cam900 3bafd4f6c0 update via PR comments 2023-07-23 17:39:38 +09:00
tildearrow 0d2b7427a6 MSM6258: only one output 2023-07-22 17:32:16 -05:00
tildearrow 2abe76d000 Amiga: fix custom clock 2023-07-22 01:42:05 -05:00
cam900 0889a8fe92 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf289b 2023-07-22 10:39:28 +09:00
tildearrow ad88ce46ab dev164 - Namco 163: improvements, part 4
- per-channel wave offset/length
- wave load position/length effects
- global wave load effects that actually make sense
- update doc
2023-07-21 19:54:35 -05:00
tildearrow 7cc166beb0 Namco 163: improvements, part 2 2023-07-20 18:23:58 -05:00
tildearrow b087b28325 remove Namco 163 name setting 2023-07-20 16:50:19 -05:00
tildearrow 08bd036193 Namco 163: improvements, part 1 2023-07-19 21:27:48 -05:00
tildearrow d779b4c516 Namco 163: get rid of wave load
part of some serious work... the global wave load feature will be improved
2023-07-19 14:29:38 -05:00
tildearrow b42614189f Namco 163: dang 2023-07-19 01:43:41 -05:00