Commit graph

2436 commits

Author SHA1 Message Date
tildearrow
af0103d76e macroInt: add hasRelease variable 2022-06-05 16:24:12 -05:00
tildearrow
d1b33d1410 GUI: get rid of these stupid icons 2022-06-05 00:42:14 -05:00
tildearrow
05ffc98ed1 MSM6258: the final bits 2022-06-04 17:58:19 -05:00
tildearrow
05c2fb357f MSM6258: clock/rate selection 2022-06-04 17:51:59 -05:00
tildearrow
fc34474d6e MSM6258: prepare for rate changing 2022-06-04 16:52:42 -05:00
tildearrow
91621fe0f5 YM2612: DualPCM per-channel osc
fixes #516
2022-06-04 01:03:58 -05:00
tildearrow
a550c4cb30 YM2612: more DualPCM muting fixes 2022-06-04 01:00:29 -05:00
tildearrow
641648ca0f YM2612: fix DualPCM muting
issue #516
2022-06-04 00:50:53 -05:00
tildearrow
0d99d29ceb GUI: finish the blank ins up 2022-06-04 00:19:04 -05:00
tildearrow
d15c276f74 GUI: add "blank new instrument" option 2022-06-03 18:30:40 -05:00
tildearrow
1f1d2c85bd GUI: add mono/poly note preview button 2022-06-03 18:05:07 -05:00
tildearrow
a6b33d0955 PC speaker: don't use printf/perror 2022-06-03 16:32:07 -05:00
tildearrow
71b4bf5fdd YM2612: CSM arpeggio and slides 2022-06-03 16:21:42 -05:00
tildearrow
b4a7f0f5b7 YM2612: - C S M -
CSM only available with Nuked core
may not work on VGM export if you compress VGM (removes timer A writes)
2022-06-03 16:13:57 -05:00
tildearrow
59ba156cdf YM2612: half-working CSM 2022-06-03 15:54:49 -05:00
tildearrow
365e466611 YM2612: earliest completely untested CSM work 2022-06-03 14:10:28 -05:00
tildearrow
2ac9651009 delay collapse/expand pattern/song feature :<
too much work...
2022-06-03 13:44:40 -05:00
tildearrow
ead4a05348 GUI: much more stable osc view 2022-06-03 03:32:24 -05:00
tildearrow
0895789539 YM2612: fix DAC output not visible in per-chan osc
issue #515
2022-06-03 01:47:31 -05:00
tildearrow
94dae570e0 fix Ubuntu build 2022-06-03 01:40:09 -05:00
tildearrow
cc80bfbd81 PC speaker: add alternative output methods 2022-06-03 01:18:32 -05:00
tildearrow
37539157be PC Speaker: timing improvements 2022-06-02 23:27:28 -05:00
tildearrow
50bdbb784a oh no 2022-06-02 03:21:00 -05:00
tildearrow
e2f3a89513 test 2022-06-02 02:59:07 -05:00
tildearrow
131bef2689 SMS: fix per-channel osc when using Nuked core 2022-06-02 02:01:48 -05:00
tildearrow
4262674e61 GUI: remove debug text in per-chan osc 2022-06-02 01:36:28 -05:00
tildearrow
ddcd76328d add ability to move sub-songs 2022-06-01 18:50:30 -05:00
tildearrow
2da92b0433 newVolumeScaling, part 4 (final) 2022-06-01 18:27:06 -05:00
tildearrow
ad1ed7fe35 newVolumeScaling, part 3 2022-06-01 18:10:50 -05:00
tildearrow
e94d1b857f newVolumeScaling, part 2 2022-06-01 18:02:34 -05:00
tildearrow
8141574d3c newVolumeScaling, part 1 2022-06-01 17:50:26 -05:00
tildearrow
8bfcf00203 prepare for impl of the final compat flag 2022-06-01 16:35:39 -05:00
tildearrow
140318f8d3 SMS: prepare for an arp+porta fix 2022-06-01 15:15:32 -05:00
tildearrow
42d98f0894 SegaPCM: finally implement new behavior 2022-06-01 13:58:39 -05:00
tildearrow
8ef7f91c93
Merge pull request #505 from lunathir/master
Small Fractal fixes
2022-05-31 19:04:36 -05:00
tildearrow
a298ec2177 oops 2022-05-31 19:03:31 -05:00
tildearrow
1be93d9bbb implement brokenOutVol compat flag
#341
2022-05-31 19:03:26 -05:00
tildearrow
b8a0084587 implement volMacroLinger compatibility flag
issue #425
2022-05-31 18:34:23 -05:00
tildearrow
a945ee5353 GUI: disclaimer about OPLL drums volume slider 2022-05-31 18:06:45 -05:00
tildearrow
9d10b5bf2b OPL: complete the drum instrument type
#310
2022-05-31 17:44:52 -05:00
tildearrow
107c82106c GUI: only set X11 window type if SDL >= 2.0.22
fixes #509
2022-05-31 13:14:43 -05:00
freq-mod
61e765c916
more presets (#488)
* more presets

* oops

consistency anyone?

* alpha 68k was an alpha denshi system

* more presets

6295 edition. Requires fact-checking, and maybe, cherrypicking

* facepalm

* #342 presets

that should conclude it

* address feedback

* naming update

* MSM6295 wasnt used in MLC

* address feedback part 2

and adding OKI chips to the sample category
2022-05-31 15:23:38 +02:00
tildearrow
dfc8706f5a GUI: more to it 2022-05-31 04:09:38 -05:00
tildearrow
277396ff44 Merge branch 'master' of github.com:tildearrow/furnace 2022-05-31 03:25:11 -05:00
tildearrow
54e93db207 GUI: try using FFTW for per-chan osc wave center
not reliable yet
2022-05-31 03:24:29 -05:00
cam900
2e97e63b26 Forgot this 2022-05-31 14:11:43 +09:00
cam900
9c4dc2b978 Fix wrong link, Add modifier and contributor disclaimer in vgsound_emu core 2022-05-31 14:06:16 +09:00
cam900
443448c65b Fix dead links 2022-05-31 13:52:36 +09:00
tildearrow
c306b33603 GUI: more osc stuff 2022-05-30 22:22:53 -05:00
tildearrow
fc0a51ed56 GUI: add oscilloscope window size setting
and also remember last zoom/winSize value
2022-05-30 21:40:07 -05:00
tildearrow
2119675b10 OPN: fix 11xx not working on ExtCh
issue #503
2022-05-30 21:21:42 -05:00
tildearrow
bc98673a20 GUI: double click selects column 2022-05-30 19:02:24 -05:00
tildearrow
4abfd4f097 FM: change the kick label
issue #310
2022-05-30 18:40:26 -05:00
tildearrow
e9f17168a4 prepare for OPL drums instrument type
#310
2022-05-30 18:37:07 -05:00
tildearrow
495aec86bd fix addOrder() undefined behavior 2022-05-30 14:02:54 -05:00
tildearrow
394a315c4a ZX beeper: drum muting hotfix 2022-05-30 00:07:24 -05:00
tildearrow
9b7145d2b0 harden wavetable loader 2022-05-29 22:21:37 -05:00
tildearrow
23d9cd6d9a fix major extended op macro corruption 2022-05-29 22:01:45 -05:00
Lunathir
5dacf631e1 Small Fractal fixes: add YM2612 settings to chip config and fixed YM2612 Fractal presets 2022-05-29 15:24:06 -07:00
tildearrow
1ed5be887b MSM6295: fallback rate 2022-05-29 13:29:58 -05:00
tildearrow
1cb07eb1a2 MSM6295: add more rates 2022-05-29 13:29:18 -05:00
tildearrow
5f4db8ca0b GUI: improve unified data view 2022-05-29 02:59:11 -05:00
tildearrow
84d4ca63c2 GUI: sample editor preview in selection 2022-05-29 02:13:08 -05:00
tildearrow
cdcf87c773 Revert "fudge and bread"
This reverts commit 6afe29682d.
2022-05-29 00:44:21 -05:00
tildearrow
7687a64000 Revert "fire!"
This reverts commit 7baf1d471f.
2022-05-29 00:44:17 -05:00
tildearrow
6d487afb49 Revert "MSVC: ughh, f**k you, you d**khead."
This reverts commit 81aa803f01.
2022-05-29 00:43:44 -05:00
tildearrow
81aa803f01 MSVC: ughh, f**k you, you d**khead. 2022-05-29 00:22:29 -05:00
tildearrow
7baf1d471f fire! 2022-05-29 00:04:33 -05:00
tildearrow
6afe29682d fudge and bread 2022-05-28 23:40:46 -05:00
tildearrow
13ff89f962 VGM export: fix oops 2022-05-28 22:18:38 -05:00
tildearrow
08543a2dc9 GUI: drag-and-drop ins/wave/sample loading 2022-05-28 18:51:05 -05:00
tildearrow
5de31f510c GUI: add "set loop" to sample editor 2022-05-28 18:37:49 -05:00
tildearrow
f8796f8ec9 MSM6295: VGM export! 2022-05-28 18:15:26 -05:00
tildearrow
b8671afa39 oops 2022-05-28 17:45:44 -05:00
tildearrow
cc87d1502c MSM6295: add rate select effect (20xx) 2022-05-28 17:45:34 -05:00
tildearrow
d1b928dbd9 MSVC is better than GCC right? 2022-05-27 21:02:19 -05:00
tildearrow
e194ff1481 GUI: implement input for touch events 2022-05-27 16:10:37 -05:00
tildearrow
ab91147c16 GUI: update SDL hints 2022-05-27 15:55:20 -05:00
tildearrow
68cc84253c dev99 - major Fractal system change
7 channels instead of 8 - CSM only supported on ExtCh system
2022-05-27 05:13:10 -05:00
tildearrow
a776129c3d dev98 - YM2612: add Fractal system
partially done
2022-05-27 04:02:53 -05:00
tildearrow
0b7d27dc29 YM2612: add reverse sample playback 2022-05-27 02:47:44 -05:00
tildearrow
9d6d84a87f Lynx: sample looping 2022-05-27 01:36:05 -05:00
tildearrow
d6282c6949 Lynx: fix PCM mode volume 2022-05-27 01:20:57 -05:00
tildearrow
a8d91ebdbc
Merge pull request #497 from laoo/master
Lynx: using DAC output for PCM
2022-05-27 01:16:51 -05:00
tildearrow
13acffa427 GUI: store piano options in config 2022-05-27 01:13:33 -05:00
Waldemar Pawlaszek
65817f7589
Merge branch 'tildearrow:master' into master 2022-05-27 08:11:32 +02:00
Waldemar Pawlaszek
70aa8f7682 Lynx: using DAC output for PCM 2022-05-27 08:10:34 +02:00
tildearrow
d0adbc444e GUI: more channel dragging improvements 2022-05-27 01:08:11 -05:00
tildearrow
e8af633f10 GUI: improve channel swapping 2022-05-27 01:04:12 -05:00
tildearrow
1540705b75 WaveSynth: fix it....... again. 2022-05-27 00:35:35 -05:00
tildearrow
3651027d99 a 2022-05-27 00:29:29 -05:00
tildearrow
efaca3b094
Merge pull request #496 from cam900/largecolumns_alt
Allow more than 64 columns in Dear ImGUI (patched)
2022-05-27 00:19:21 -05:00
tildearrow
5d1785fb38 GUI: add timing debug info 2022-05-27 00:19:10 -05:00
tildearrow
061b312943 SMS: volume table is now non-float 2022-05-26 23:46:42 -05:00
cam900
67a7f39d9a Allow more than 64 columns in Dear ImGUI (patched)
Improves Channel window displays, with System info.
2022-05-27 13:38:45 +09:00
tildearrow
905aa1b1a1 SMS: add TI PSG volume table 2022-05-26 23:19:27 -05:00
tildearrow
33dc18bac2 GUI: add pattern cell spacing settings 2022-05-26 22:26:44 -05:00
tildearrow
3a9ef81fe0
Merge pull request #494 from MAHBOD-85/MAHBOD-85-patch-1
Modern layout fix
2022-05-26 22:02:40 -05:00
tildearrow
7e938c869d
Merge pull request #484 from grauw/y8950-adpcm-fix
More Y8950 ADPCM fixes
2022-05-26 21:50:51 -05:00
tildearrow
0577aa3569 SMS: early Nuked-PSG modding 2022-05-26 19:00:14 -05:00
tildearrow
e3ebe0cb92 SMS: add modified Nuked-PSG core 2022-05-26 18:46:20 -05:00
tildearrow
4874e91bb0 FDS: a bit more 2022-05-26 18:09:46 -05:00
tildearrow
6d441c2ffd FDS: set a post-amp value 2022-05-26 18:07:59 -05:00
tildearrow
a52f71ba32 FDS: fix NSFplay core low pass filter precision
closes #427
2022-05-26 18:03:57 -05:00
tildearrow
7cf853797a fix .dmf saving 2022-05-26 17:42:30 -05:00
Mahbod-Karamoozian
186dd8c522
Modern layout fix
This fixes the problem that is present in raijin's layout
2022-05-26 23:44:04 +04:30
tildearrow
9d36cf5ff0 fix compilation on GCC 12 2022-05-26 13:31:17 -05:00
tildearrow
4b91669e58 Lynx: why did I not commit this 2022-05-26 03:37:34 -05:00
tildearrow
6260bcef54 Lynx: more sample improvements 2022-05-26 00:50:11 -05:00
tildearrow
b0c8cfc1f6 Lynx: sample improvements 2022-05-26 00:39:15 -05:00
tildearrow
1811a95e76 Lynx: add sample support! 2022-05-26 00:29:04 -05:00
tildearrow
f8794ae9a4 GUI: fix wavetable list oversight 2022-05-25 23:50:11 -05:00
tildearrow
49a8f77cf1 WaveSynth: fix phase modulation - again 2022-05-25 23:46:07 -05:00
Laurens Holst
4b4bc98417 Stop / reset Y8950 ADPCM before restarting.
The emulation core treats every write to register 7 with start bit set as
a retrigger. This is not how the real hardware behaves.
2022-05-26 03:48:49 +02:00
tildearrow
7750a9b9f3 GUI: fix possible wave editor crash 2022-05-25 12:18:11 -05:00
tildearrow
93a4e3d688 WaveSynth: fix phase modulation
fixes #481
2022-05-25 00:34:35 -05:00
tildearrow
42a082b2a7 Lynx: add phase reset macro 2022-05-25 00:28:47 -05:00
Laurens Holst
a19090ab9b Correct VGM chip ID for Y8950 reset. 2022-05-24 22:08:01 +02:00
tildearrow
914b5f7a88 experiment with backward-cpp again 2022-05-24 13:06:29 -05:00
tildearrow
979cb63c5b GUI: fix .cfgc/.cfgk extension duplication 2022-05-24 12:46:51 -05:00
tildearrow
3932a82d14 GUI: add frame shading setting 2022-05-24 03:49:52 -05:00
tildearrow
8dde6a604e add rounding to AddRectFilledMultiColor 2022-05-24 03:30:27 -05:00
tildearrow
08d85869a9 GUI: slight changes to edit controls
- align classic
- stretch compact vertical
2022-05-24 03:06:17 -05:00
tildearrow
d490746325 GUI: finish lock layout 2022-05-24 02:38:10 -05:00
tildearrow
eb926a668d MSM6258: it works 2022-05-24 00:24:52 -05:00
tildearrow
8ea60f37c5 MSM6258: start work - DO NOT USE! 2022-05-23 19:01:10 -05:00
tildearrow
b849b5283b
Merge pull request #482 from grauw/y8950-adpcm-fix
Fix Y8950 ADPCM samples.
2022-05-23 17:52:56 -05:00
Laurens Holst
fc7b94876d Fix Y8950 ADPCM samples.
Reverting back to before 70ead337f3, and setting register 8 to 256Kbit RAM mode.
This is what MSX has natively, and allows for the most compact sample storage with
only 4 byte alignment.

Additionally, setting register 8 before writing the start / stop addresses.

Back story:

VGMPlay MSX only supports Y8950 256K DRAM mode and ROM mode (for the latter
it makes sure address writes are shifted). 64K DRAM mode is not supported because
it’s not used by anything and the addresses are specified weirdly with some middle
bits having to be masked out.

The original code in Furnace before the change 70ead337f3 was almost correct except
it needed to set register 8 to 0 to select the 256K DRAM mode. It was set to ROM mode
so the address shift did not match up.

After 70ead337f3 (address shift change) it was also more or less correct except in
“furnacePCM” direct-sample mode the shift was not updated accordingly.

In 1a446c1cdd it selected 64K RAM mode, but for this the addresses need to be specified
differently (see Y8950 manual page 18), and it’s not really the best choice anyway.
2022-05-24 00:51:13 +02:00
tildearrow
49943aba76 GUI: add setting to make osc escape bounds 2022-05-23 17:42:25 -05:00
tildearrow
f8d851cbc2 the Namco C163 trial 2022-05-23 16:01:35 -05:00
tildearrow
402a1d06cf more chip naming improvements 2022-05-23 15:28:38 -05:00
tildearrow
278979a2f2 change names of 15xx/CUS30 to C15 and C30 2022-05-23 15:08:29 -05:00
tildearrow
ff1263aadf ASDFGHJK 2022-05-23 03:43:33 -05:00
tildearrow
ced2940336 MSM6295: per-channel osc and muting 2022-05-23 03:18:56 -05:00
tildearrow
d3edc58cb1 MSM6295: add clock rate flag 2022-05-23 03:13:22 -05:00
tildearrow
59a722d04a MSM6295: a bit more polishing 2022-05-23 02:56:43 -05:00
tildearrow
f25cd17590 early OKI MSM6295 work 2022-05-23 01:46:58 -05:00
tildearrow
133b213998 OPL: new forceIns strategy 2022-05-23 00:18:50 -05:00
tildearrow
519bf244b9 OPL: fix kick volume in drums mode 2022-05-23 00:07:32 -05:00
tildearrow
1a446c1cdd Y8950: let's see 2022-05-22 23:54:33 -05:00
tildearrow
2fa51e482a OPN(A/B/2/B-B): fix absolutely everything 2022-05-22 23:47:41 -05:00
tildearrow
3d4f2cfa13
Merge pull request #453 from grauw/scc-reset-period-counter
Reset period counter when writing to period registers.
2022-05-22 22:49:03 -05:00
tildearrow
82eaa45f5d increase range of relative pitch macro
-32768 to 32767 should be enough
2022-05-22 22:47:40 -05:00
tildearrow
3aa8ea3625 fix Cxxx/F0xx being delayed in low-latency mode 2022-05-22 22:36:48 -05:00
tildearrow
e17c99dcdf allow building Furnace without SDL2 and libsndfile
for eventual libfurnace
2022-05-22 19:01:50 -05:00
tildearrow
16afb6d7be GUI: hacky implementation of lock layout 2022-05-22 18:20:53 -05:00
tildearrow
43981eb59f bring up MSM6295 core
vgsound_emu by cam900
2022-05-22 18:06:56 -05:00
tildearrow
98e9a4b28d MSM6258 emulator de-MAMEfication 2022-05-22 17:49:41 -05:00
tildearrow
393d1c018d dev97 - add old octave boundary compat flag 2022-05-22 13:25:59 -05:00
tildearrow
b40c95013a fix phase reset in FM chips after note off 2022-05-22 04:30:56 -05:00