Commit graph

2844 commits

Author SHA1 Message Date
tildearrow
e994f1a84d SegaPCM: fix VGM export 2023-02-10 02:47:26 -05:00
tildearrow
6036366f38 SegaPCM: new real emulation core 2023-02-10 02:01:23 -05:00
tildearrow
0d424c7962 SegaPCM: prepare to actually emulate it 2023-02-09 19:11:27 -05:00
tildearrow
00b329b896 OPN/2/A/B: implement new op enable 2023-02-09 17:36:33 -05:00
tildearrow
782fee380f Merge branch 'master' of github.com:tildearrow/furnace 2023-02-09 14:03:29 -05:00
tildearrow
2542a10620 YM2612: change strategy for operator toggle 2023-02-09 14:02:54 -05:00
tildearrow
eb3914b849 GA20: fix mute again 2023-02-09 01:16:15 -05:00
cam900
ffe5ced7b9 Fix GA20 mute 2023-02-09 10:20:36 +09:00
tildearrow
2343cdecc5 VGM export: add "trailing ticks" option
issue #695
2023-02-08 19:25:03 -05:00
tildearrow
0a63399dcf PCE: reset wave on VGM export reset 2023-02-08 18:04:09 -05:00
tildearrow
baf5b06b62 prepare to fix VGM export when hard reset is off 2023-02-08 04:14:11 -05:00
tildearrow
1a0e30453b Amiga: fix yet another crash? 2023-02-08 04:10:30 -05:00
cam900
4137650bdb Partially fix frequency with note map 2023-02-07 11:14:32 +09:00
cam900
575fc03b2e Fix compile 2023-02-07 10:55:11 +09:00
cam900
84cca17140 Remove unused variable 2023-02-07 10:29:50 +09:00
cam900
c0f950a169 Fix frequency offset 2023-02-07 10:27:32 +09:00
cam900
6a0a05c127 Fix loop 2023-02-07 10:20:38 +09:00
cam900
29638cb5b0 Remove reversed loop support in ES5506 via driver complexity
Fix per-channel OSC
2023-02-07 10:09:33 +09:00
tildearrow
ea0d7cd420 GUI: prepare to add a "basic mode" 2023-02-06 18:52:51 -05:00
tildearrow
79ede020cf TIA: finally fix negative octaves
issue #44
2023-02-06 15:24:37 -05:00
tildearrow
0ab448350b SAA1099: big endian panning fix?
issue #649
2023-02-06 14:23:44 -05:00
tildearrow
0b2df4f7d4 SoundUnit: enough of bitfields, part 2 2023-02-06 14:14:50 -05:00
tildearrow
63d0eb46a9 SoundUnit: enough of bitfields 2023-02-06 14:02:20 -05:00
tildearrow
c4121ccfd6 ES5506: more optimization 2023-02-06 03:44:03 -05:00
tildearrow
bf0f424cca ES5506: fix mute 2 2023-02-06 03:22:11 -05:00
tildearrow
3a4057ece3 ES5506: optimize, part 1
man this core is so CPU heavy...
accuracy for what?
2023-02-06 03:00:25 -05:00
tildearrow
cdc472dace and fix IT AGAIN
I hate tabs
2023-02-06 01:25:59 -05:00
tildearrow
e7a95d4822 fix the pull request - again 2023-02-06 01:15:13 -05:00
tildearrow
8c2af08e5a fix the pull request
also what did that force push do? did I lose commits now?
2023-02-06 01:08:31 -05:00
tildearrow
4f33f9d815
Merge pull request #399 from cam900/es5506_alt
Add ES5506 support and Various enhancement for sample, etc
2023-02-06 01:01:07 -05:00
cam900
0029e7fe85 typecasting 2023-02-06 12:40:33 +09:00
cam900
a15f1755d0 Fix per-channel OSC (again) 2023-02-06 12:39:42 +09:00
cam900
8beb46d8f6 Fix per-channel OSC 2023-02-06 09:40:12 +09:00
cam900
2c5dc0875a Address comments 2023-02-06 09:16:28 +09:00
tildearrow
8d13ec078c fix order edit buttons when follow pattern is off 2023-02-05 19:06:13 -05:00
cam900
03e0c8d8ee Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-02-06 08:56:14 +09:00
tildearrow
26739bba11 YM2612: fix CSM on ymfm
finally
2023-02-05 17:42:48 -05:00
tildearrow
b4df0b923b Merge branch 'master' into opn_volbalance 2023-02-05 04:58:03 -05:00
tildearrow
fda333a76b default SSG vol is now 128
to eliminate one shift
2023-02-05 04:57:09 -05:00
tildearrow
1fa45ec57d YM2612: why 2023-02-05 04:09:47 -05:00
tildearrow
3cacbe4434 TIA: fix non-working arp macro 2023-02-05 03:54:30 -05:00
tildearrow
71e1f21a8f Merge branch 'master' of github.com:tildearrow/furnace 2023-02-05 02:57:19 -05:00
tildearrow
ac5986e44f dev139 - groove patterns! 2023-02-05 02:56:39 -05:00
cam900
7e1acaf9d5 Add define value for number of chip defines 2023-02-05 12:46:23 +09:00
cam900
f8b9901e4b Fix command order 2023-02-05 10:04:31 +09:00
cam900
dd79ae401b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-02-05 10:00:27 +09:00
tildearrow
beed67aaa1 BubSys: optimize 2023-02-04 17:22:16 -05:00
tildearrow
31ccb58a48 implement tremolo 2023-02-04 16:08:20 -05:00
tildearrow
43ba2ff8f2 OPZ: implement LFO2
issue #831

untested and I can't test now
2023-02-03 17:00:15 -05:00
tildearrow
d49850f67f YM2612: fix per-chan osc overflow on ymfm 2023-02-02 03:16:10 -05:00
tildearrow
e6dfeebaee SoundUnit: emulator license
MIT license - I am the only one who wrote this specific piece of code
2023-02-01 14:39:35 -05:00
tildearrow
c31d143783 TIA: consistent pitch macro 2023-01-31 15:11:02 -05:00
tildearrow
a08c343f6d SCC: massive optimization 2023-01-29 17:17:15 -05:00
tildearrow
47293decd3 OPL: fix missing ADPCM channel in per-chan osc 2023-01-28 18:10:25 -05:00
tildearrow
dcf06445ba fix volume macro + vol change on delay
issue #946
2023-01-28 17:47:21 -05:00
tildearrow
4445103408 SN: 0x200?!
issue #945
2023-01-27 16:49:42 -05:00
tildearrow
d856ce9ad3 SN: possibly fix Game Gear in VGM export 2023-01-27 14:52:11 -05:00
tildearrow
c918ed3449 SoundUnit: big-endian again 2023-01-25 15:09:05 -05:00
tildearrow
76eb0ed097 SNES: consider echo buffer size 2023-01-24 04:13:01 -05:00
tildearrow
c17a541e93 OPN: fix forceIns() muting wrong ops in ExtCh 2023-01-24 03:44:55 -05:00
tildearrow
68c8a77498 SoundUnit: reset sample memory on reset() 2023-01-24 03:05:23 -05:00
cam900
9577303451 Update copyright years 2023-01-24 08:16:56 +09:00
cam900
3403e10b0b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-24 08:14:29 +09:00
tildearrow
a878c3a4d5 stop documenting EFxx
it doesn't even work on linear pitch
2023-01-23 15:19:20 -05:00
tildearrow
f3af1d78ff
Merge pull request #936 from laoo/Mikey_VGM
Mikey vgm export
2023-01-21 05:33:35 -05:00
tildearrow
7bdda990e1 OPL: partially implement new hard reset
it's so late
2023-01-20 04:52:27 -05:00
tildearrow
c0d1fe9c65 OPM/OPZ: new hard reset strat
also fix weird envelope after hard reset
2023-01-20 04:28:18 -05:00
tildearrow
45faadd4c8 update copyright year 2023-01-19 19:18:40 -05:00
tildearrow
a5a3407d3b who used sprintf! 2023-01-19 19:01:31 -05:00
tildearrow
888af74c07 YM2610B: fix hard reset not working 2023-01-19 18:37:29 -05:00
tildearrow
b33ea8f0ac apply new hard reset strategy on all OPN chips 2023-01-19 18:22:48 -05:00
tildearrow
48a1e6a976 YM2612: new experimental hard reset strategy 2023-01-19 14:36:15 -05:00
tildearrow
231b5c3694 WonderSwan: make phase reset work 2023-01-19 03:57:29 -05:00
tildearrow
503e822a33 PCE: better noise frequency handling 2023-01-19 03:38:29 -05:00
tildearrow
cac807551f OPN/2/A/B: Seamless Legato Ins Change (ExtCh) 2023-01-19 03:15:41 -05:00
cam900
7340d029ae Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-19 16:51:27 +09:00
tildearrow
9bbc1e2c82 OPLL/OPL: Seamless Legato Ins Change 2023-01-19 02:45:02 -05:00
tildearrow
6832f92b99 OPM/OPZ: Seamless Legato Ins Change 2023-01-19 02:28:12 -05:00
tildearrow
1b05fe577d OPN/2/A/B: Seamless Legato Ins Change 2023-01-19 02:23:05 -05:00
tildearrow
c1e26ee749 fix more possible crashes when deleting ins
and added a fatal error if implementation is missing
2023-01-19 00:37:37 -05:00
tildearrow
fa6badc865 YM2612: notifyInsDeletion 2023-01-18 17:17:27 -05:00
Waldemar Pawlaszek
75bc994ff6 One more thing: declaring Lynx only for VGM 1.72 or higher (not sure if the way is elegant enough) 2023-01-18 10:32:03 +01:00
Waldemar Pawlaszek
b42dd554f2 Merge remote-tracking branch 'origin/master' into Mikey_VGM 2023-01-18 10:21:13 +01:00
tildearrow
72ca76ab7f TIA: whaaaaaaaaaaaaaaaaaaaaaaaaaaat? 2023-01-18 01:17:50 -05:00
tildearrow
2cfed1336a whoops!!!!!!!! 2023-01-17 02:00:04 -05:00
tildearrow
539b2ec2db dev138 - fix broken porta after legato 2023-01-17 01:58:59 -05:00
tildearrow
1d446bd56b dev137 - new mixing volumes
YM2612 is now twice as loud
SN76489 and OPLL are 1.5x loud
X1-010 is four times louder
2023-01-17 01:11:08 -05:00
tildearrow
0383b0c50f YM2612: fix one more click... 2023-01-16 23:59:34 -05:00
tildearrow
13b782c7b1 YM2612: yet another fix 2023-01-16 18:41:56 -05:00
tildearrow
bf49b43e7b YM2612: fix another pop 2023-01-16 16:20:10 -05:00
tildearrow
2c528c9ca8 OPN: add LFO speed macro
issue #927
2023-01-16 16:10:34 -05:00
tildearrow
58f789b9eb YM2612: fix forceIns DAC clicking 2023-01-15 23:34:01 -05:00
cam900
16da587dec Possibly fix reversed loop with reversed playback 2023-01-16 10:08:10 +09:00
cam900
46865b3adb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-16 10:07:13 +09:00
tildearrow
bf2ef2742a YM2612: fix forceIns after sample 2023-01-15 18:05:48 -05:00
tildearrow
3370e91aad MEMORY LEAK 2023-01-15 17:28:47 -05:00
tildearrow
6834b3b7db maybe fix sample corruption when resampling 8-bit 2023-01-15 17:27:16 -05:00
Waldemar Pawlaszek
e42ab1b847 Experimental Mikey VGM 1.72 export. 2023-01-15 16:27:20 +01:00
tildearrow
1ab80379e1 VGM export: fix wrong loop size 2023-01-15 04:32:47 -05:00
tildearrow
17cb32fe9e VGM export: improve volumes 2023-01-15 03:54:11 -05:00
tildearrow
6c5f9886fb OPL: fix t/hh per-chan osc not being visib in OPL3 2023-01-15 02:10:24 -05:00
tildearrow
a3d20ac3fd WonderSwan: why does this not work 2023-01-15 01:46:34 -05:00
tildearrow
9ada18a57a VGM export: always write stream freq first 2023-01-15 01:20:31 -05:00
tildearrow
cb11d3f268 strict-aliasing........ 2023-01-15 00:45:31 -05:00
tildearrow
be79f80770 SoundUnit: separate flag register
issue #649
2023-01-15 00:40:57 -05:00
tildearrow
ed11b6cf78 Namco WSG: fix frequency overflow 2023-01-14 13:34:08 -05:00
tildearrow
73b399d00d freaking GCC and your artificial errors 2023-01-14 01:12:16 -05:00
cam900
fcc5b6e5eb Replace divider to shift 2023-01-14 11:55:40 +09:00
cam900
a8e388091a Merge branch 'master' of https://github.com/tildearrow/furnace into opn_volbalance 2023-01-14 11:51:46 +09:00
cam900
a50465496c Addressing commits 2023-01-14 11:51:10 +09:00
cam900
c995a52835 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-14 11:50:33 +09:00
tildearrow
a8eedea925 QSound: prevent negative memory capacity 2023-01-13 14:11:32 -05:00
cam900
ab532cca84
Fix free QSound ADPCM space calculation (#826) 2023-01-13 14:10:33 -05:00
tildearrow
169929ff9b ZX beeper: fix frequency range 2023-01-13 03:39:59 -05:00
tildearrow
ae007b3829 Lynx: fix frequency craziness 2023-01-13 01:22:15 -05:00
tildearrow
8d0090b0f3 X1-010: fix frequency overflow
issue #843
2023-01-13 01:15:55 -05:00
tildearrow
7b14175e45 C64: fix frequency overflow 2023-01-13 01:10:57 -05:00
tildearrow
f939878fcb AY8930: always write duty 2023-01-13 00:51:16 -05:00
cam900
ab46b8e080 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-13 14:24:43 +09:00
tildearrow
fe4800f165 AY8930: fix Mag Max and Kyugo clock rates 2023-01-13 00:22:00 -05:00
tildearrow
e560838025 OPL/OPLL: expand relative pitch range...
poor Z80
2023-01-13 00:15:37 -05:00
tildearrow
961c977378 OPM/OPZ: custom clocks
finally
2023-01-13 00:07:56 -05:00
tildearrow
d99f0cd045 T6W28: forceIns() noise mode 2023-01-12 23:19:28 -05:00
tildearrow
e3073a22e9 BubSys: fix crash 2023-01-12 23:17:32 -05:00
tildearrow
21ab10c30c N163: fix crash 2023-01-12 23:16:33 -05:00
tildearrow
0c36c0633b VRC6: fix crash 2023-01-12 23:14:57 -05:00
cam900
b64c089c56 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-13 09:48:52 +09:00
tildearrow
bf0c58aedc OPNA/OPNB: implement pitch macro
issue #838
2023-01-12 18:47:02 -05:00
tildearrow
9af1ce84df AY8930: increase pitch macro range to 65535 2023-01-12 18:42:34 -05:00
tildearrow
5df68c2ee8 AY/AY8930: fix period overflow 2023-01-12 18:39:25 -05:00
tildearrow
4724c1ccb1 Game Boy and NES: pitch macro now affects noise 2023-01-12 18:36:13 -05:00
tildearrow
84ae0b31f3 OPZ: pan macro 2023-01-12 18:33:11 -05:00
tildearrow
089f3f3b9b PCE: fix drop 2023-01-12 18:23:04 -05:00
tildearrow
04849d2172 PCE: where is the low period cap 2023-01-12 18:17:31 -05:00
tildearrow
b074136094 Game Boy: make pitch macro work on noise 2023-01-12 18:10:17 -05:00
tildearrow
f2fdeb9df8 Game Boy: fix period 0 causing overflow
issue #835
2023-01-12 17:59:40 -05:00
tildearrow
aea7a67d3e Namco WSG: noise in per-chan osc for real? 2023-01-12 17:45:33 -05:00
tildearrow
51cef18bff AY: optimize 2023-01-12 16:05:03 -05:00
cam900
536c345763 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-12 23:31:56 +09:00
tildearrow
9b80af3a4e dev136 - Merge branch 'newDispatch' (PLEASE READ!)
the following changes have been made:
- a different strategy for DivDispatch audio output.
  - if you're working on a new chip, be sure to replace isStereo()
    with getOutputCount(). if isStereo() was true, return 2; otherwise
    1.
    do not return 0 or you will melt the oven!
  - additionally, the acquire() function has changed. it's now:
    `acquire(short** buf, size_t len)`
    replace bufL with buf[0] and bufR with buf[1].
    `start` is gone. if you really needed to use it, take a look at
    pcspkr.
    if you write to buf[1] and getOutputCount is 1, the oven will
    melt as well!
- support for more-than-stereo audio, with up to 16 outputs.
- a brand-new patchbay routing feature. arbitrarily route chip outputs
  to system outputs.
2023-01-12 03:59:53 -05:00
tildearrow
93aa84bb27 GUI: patchbay right click menu 2023-01-12 03:56:18 -05:00
tildearrow
01f6e8f963 make patchbay effective on samplepreview/metronome 2023-01-12 03:31:43 -05:00
tildearrow
0fd0206cc3 fix build 2023-01-11 00:10:42 -05:00
tildearrow
51802720a6 GUI: more patchbay work 2023-01-10 19:09:26 -05:00
tildearrow
a36322ff82 fix possible crash when switching stereo on X1-010 2023-01-10 16:15:37 -05:00
tildearrow
2fbec000d7 dev136 - add auto patchbay toggle 2023-01-10 15:58:15 -05:00
tildearrow
9b79bc0e7b GUI: it doesn't work! 2023-01-08 19:23:17 -05:00
tildearrow
e0785d9f00 fix front/rear being inverted 2023-01-07 16:39:01 -05:00
Waldemar Pawlaszek
8e009509db POKEY: audc is set for wrong channel when channels 3 & 4 are paired 2023-01-07 18:51:55 +01:00
tildearrow
1154a2bda6 implement patchbay-based output 2023-01-06 18:44:20 -05:00
tildearrow
6273275b47 new floating-point volumes and patchbay 2023-01-06 17:43:08 -05:00
tildearrow
707bbb54ea add effects for rear panning 2023-01-05 03:08:57 -05:00
tildearrow
71e40dc015 support more than 2 output channels
up to 16 on JACK
to-do: add more mixer settings
2023-01-05 02:40:17 -05:00
tildearrow
48bcc6a124 prepare for handling more than 2 channels 2023-01-04 20:04:02 -05:00
cam900
96983e3d48 Add SSG and FM/ADPCM volume mixer config for OPN/A/B 2023-01-05 09:49:21 +09:00
tildearrow
abf2461573 OPL: increase range of pan macro 2023-01-04 19:16:37 -05:00
tildearrow
fd9b1dd0f5 OPL: quad output
now that we have this new dispatch output method
2023-01-04 18:30:29 -05:00
tildearrow
6c834524aa new dispatch, part 4 2023-01-04 17:01:14 -05:00
tildearrow
9436e2ab55 new dispatch, part 3 2023-01-04 03:11:47 -05:00
tildearrow
3a687eeb45 new dispatch, part 2 2023-01-03 14:39:31 -05:00
tildearrow
a29f36a5df new dispatch, part 1 2023-01-03 01:09:46 -05:00
tildearrow
3e0dcbb0ae aaaaaaaa 2023-01-02 04:53:37 -05:00
tildearrow
e06b2f6952 Merge branch 'master' into newDispatch 2023-01-02 00:07:02 -05:00
tildearrow
560ec19176 SMS/T6W28: limit upper period 2023-01-02 00:00:23 -05:00
tildearrow
08d2f12dbd prepare new dispatch
will allow for more than 2 outputs
2023-01-01 19:46:08 -05:00
cam900
8a71a81ffb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-02 09:26:05 +09:00
tildearrow
db690a1e45 release v0.6pre3 2022-12-31 17:00:40 -05:00
tildearrow
821df80594 Namco WSG: noise in per-chan osc? 2022-12-31 16:19:02 -05:00
tildearrow
b07798b805 YM2203: fix non-linear 2022-12-31 14:14:35 -05:00
tildearrow
84bb613b42 fuuuuuuu 2022-12-29 16:14:22 -05:00
tildearrow
f2fce2fab3 YM2612: phase reset for samples 2022-12-29 15:58:42 -05:00
tildearrow
e31f8a2115 SegaPCM: fix new arp strat 2022-12-29 15:42:01 -05:00
tildearrow
ae4cb78c2c ... 2022-12-29 15:25:38 -05:00
tildearrow
f8bceecebf another update 2022-12-29 14:43:42 -05:00
tildearrow
e8d9fd6a15 maybe fix possible crash in low buffer sizes 2022-12-29 14:34:19 -05:00
tildearrow
89995a02be QSound: fix ADPCM
I guess you can say it's complete
2022-12-29 03:31:26 -05:00
tildearrow
7fa5fecd38 possibly fix retrigger with sample map 2022-12-29 03:12:00 -05:00
tildearrow
5bc2ccbe8e fix a tiny bug when saving SNES instruments 2022-12-29 02:22:20 -05:00
cam900
ff937604c7
Merge branch 'master' into es5506_alt 2022-12-29 16:18:24 +09:00
tildearrow
286cca3a54 NES: What, what, what, what, what, what, what, what, what, what? 2022-12-28 23:57:06 -05:00
tildearrow
85c4086d5a why is this here 2022-12-28 23:11:16 -05:00
tildearrow
37c2ea3097 NES: fix arp macro 2022-12-28 23:04:12 -05:00
tildearrow
893b48b9bb fix SPC_DSP.cpp to work on GCC 5 2022-12-28 21:37:42 -05:00
tildearrow
a09ad00e48 prepare for 0.6pre3
OPN: add flag to make ExtCh op 1 be the only one controlling FB
GUI: move Arcade presets to top
GUI: fix YM2612 CSM not having flags
2022-12-28 18:11:30 -05:00
tildearrow
ce89080be7 Untested Crap 2022-12-28 17:41:31 -05:00
tildearrow
9a429e3563 PCE: fix arp macro on noise 2022-12-28 17:23:13 -05:00
tildearrow
0fe8554a5d MSM5232: fix arp macro 2022-12-28 15:27:38 -05:00
tildearrow
8e4fda542a OPNA: fix rim muting 2022-12-28 14:51:59 -05:00
tildearrow
2c182334d7 OPN: increase range of pitch2 2022-12-28 14:47:50 -05:00
tildearrow
47be21df4d f-num/block range fix 2022-12-26 16:09:38 -05:00
tildearrow
9e47468b53 YM2612: workaround 2022-12-26 13:49:59 -05:00
tildearrow
1fae16514c OPLL: freqChanged during note off? 2022-12-25 15:54:40 -05:00
tildearrow
513ab09e7c OPLL: what why 2047 2022-12-25 14:45:07 -05:00
tildearrow
2923eb6265 SegaPCM: fix per-chan osc when muted 2022-12-25 05:04:32 -05:00
cam900
f992346772 Addressing comments 2022-12-25 18:51:23 +09:00
cam900
96c0bea63b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-25 18:48:29 +09:00
tildearrow
4584b8aa82 POKEY: fix setFlags() crash with altASAP 2022-12-25 03:36:30 -05:00
tildearrow
618ff1d393 release v0.6pre2 2022-12-24 23:39:44 -05:00
tildearrow
89e057a2ba OPLL: fix possible overflow 2022-12-24 18:29:01 -05:00
tildearrow
0914359063 dev131 - SNES: add more sustain modes and D2 2022-12-24 18:03:57 -05:00