Commit graph

2017 commits

Author SHA1 Message Date
tildearrow
c74d7fab37 dev108 - add SN period range compat flag
there's room for possible improvement
2022-08-19 18:46:19 -05:00
tildearrow
5fe3a3c35a prepare for moving chips 2022-08-19 16:25:32 -05:00
tildearrow
27555c3c0a aaaand more fixing 2022-08-19 04:45:59 -05:00
tildearrow
3787d2ae87 one more big endian fix 2022-08-19 04:41:32 -05:00
tildearrow
7f80b5f6a3 dev107 - Merge pull request #639 from tildearrow/es5506_inst
Implement ES5506 instrument type
2022-08-19 01:28:24 -05:00
tildearrow
6527840556 Fix Initializer Again 2022-08-19 01:27:21 -05:00
tildearrow
5c7338930f fix big-endian build (i think) 2022-08-19 01:26:11 -05:00
cam900
42006e338c Fix Initializer 2022-08-19 14:49:10 +09:00
tildearrow
142c21e20b partially fix big-endian build
samples are the next thing to tackle
2022-08-19 00:23:45 -05:00
tildearrow
952a2a66e8 store ES5506 params in format 2022-08-18 23:55:29 -05:00
cam900
5190c6daab Implement ES5506 instrument type
ES5506 has these features:
- 16 bit independent volume register per left/right output (Logarithmic, 4 LSB is for envelope)
- Programmable filter per each channels, 4 pole, 4 filter mode and 2 16 bit coefficient register (4 LSB is for envelope)
- Hardware envelope

Add more than 2 macro type support
"Delta" macro type: Use delta from previous value
2022-08-18 21:20:10 +09:00
Natt Akuma
7c42453422
Rewrite per-system effect handling (#548)
* Rewrite per-system effect handling

* fix build

* C64: fix fine cutoff regression

* fix some more crashes

Co-authored-by: tildearrow <tildearrow@protonmail.com>
2022-08-18 01:26:22 -05:00
ZeroByteOrg
941d45ad80 Merge branch 'master' into ZSMv1 2022-08-16 11:24:18 -05:00
tildearrow
d1c5a4725b add option to save unused patterns
closes #106

also prepare for the pattern manager window
2022-08-16 03:42:17 -05:00
tildearrow
edddff8431 prepare for pattern optimization 2022-08-16 03:19:16 -05:00
tildearrow
976e193309 SoundUnit: add 1-bit PDM rev emulation 2022-08-16 02:08:10 -05:00
tildearrow
8734005b23 SoundUnit: fix switch roles mode 2022-08-15 23:20:26 -05:00
tildearrow
77109c3832 fix instrument move/del screwing up sub-songs 2022-08-15 22:54:31 -05:00
tildearrow
5fe661e9a3 allow rates down to 1Hz 2022-08-15 22:40:04 -05:00
tildearrow
474dfa2587 Game Boy: fix bug involving hw sweep and zombie 2022-08-15 22:36:26 -05:00
tildearrow
f86b66b4b7 PET: fix missing pitch macro 2022-08-15 21:46:36 -05:00
tildearrow
e5e024c5f9
Merge pull request #633 from djtuBIG-MaliceX/hotfix/WOPL-OPLI-2x2op-missing-FeedConnect-fix
WOPL/OPLI Load bugfix for 2nd 2op pair
2022-08-15 05:35:15 -05:00
tildearrow
20c5e14f26 FC loader: the final fixes for this night 2022-08-15 04:22:14 -05:00
tildearrow
206b3af12a FC loader: aaaaaaand more fixes 2022-08-15 03:40:04 -05:00
tildearrow
bef8cf5f5f FC loader: sample loop point and more fixes 2022-08-15 03:32:27 -05:00
tildearrow
4663534fa3 FC loader: preset waveforms, vibrato and stuff 2022-08-15 03:18:54 -05:00
tildearrow
15b4294532 FC loader: fix wave, sample and freq seq loading 2022-08-15 02:01:08 -05:00
tildearrow
779fc889c0 fix system definition for ES5506 - again 2022-08-14 23:34:57 -05:00
tildearrow
a34c9806cb Game Boy: whoops 2022-08-14 23:30:36 -05:00
tildearrow
1a4a58d970 Merge branch 'master' of github.com:tildearrow/furnace 2022-08-14 23:28:28 -05:00
tildearrow
a8d3803efc Game Boy: now fix wave channel volume column 2022-08-14 23:28:15 -05:00
cam900
23276211f5
Fix incorrect info on ES5506 2022-08-15 13:25:31 +09:00
tildearrow
f8b3c089a4 Game Boy: fix volume column 2022-08-14 23:07:19 -05:00
tildearrow
9b6730607e OPL: finally fix the carnival night zone bug
TODO: RUN TEST SUITE!
2022-08-14 19:17:03 -05:00
tildearrow
cb4417824d YMZ280B: restore panning in forceIns 2022-08-14 14:26:55 -05:00
tildearrow
1b10c547e3 SoundUnit: implement switch roles flag 2022-08-14 14:19:30 -05:00
James Alan Nguyen
6344a1d23f Reported bug - 2nd 2op pair did not read ALG and FB registers to instrument patch 2022-08-14 16:09:31 +10:00
tildearrow
02fb5abc02 add ability to save ins/wave as .dmp/.dmw
also saving wavetables as raw data
2022-08-13 15:43:13 -05:00
tildearrow
041a76ad81 raw sample import fixes 2022-08-13 06:25:11 -05:00
tildearrow
91f9352eaf implement raw sample import
untested
2022-08-13 05:50:36 -05:00
tildearrow
ce2d322e47 GUI: add replace for wave/sample and prepare for
raw sample import
2022-08-13 04:17:32 -05:00
tildearrow
2743c60cf3 Game Boy: fix wave channel auto-enable on wave cha 2022-08-12 23:09:34 -05:00
cam900
7d83cbb7d6 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-11 22:22:05 +09:00
cam900
d44f5f0b2b Prepare for backward and bi-directional loop 2022-08-11 22:21:54 +09:00
tildearrow
0528f4e7bd Game Boy: possibly fix wave soft env 2022-08-11 05:04:35 -05:00
tildearrow
81482c2f2b QSound: SAMPLE LOOP BUG DEBUG BEGIN 2022-08-11 04:50:16 -05:00
tildearrow
762b3b2928 PCE: per-chan osc DAC mode overflow fix 2022-08-11 02:08:24 -05:00
tildearrow
ed98df91d2 turn on proper noise layout by default 2022-08-11 02:05:05 -05:00
tildearrow
7e7a5a8e30 Game Boy: software envelopes, part 4
fixes
2022-08-11 01:34:18 -05:00
tildearrow
d30f9bc8a0 Game Boy: software envelopes, part 3
zombie mode
2022-08-11 01:24:53 -05:00
tildearrow
340052cf0a Game Boy: add chip revision flag 2022-08-11 00:46:15 -05:00
tildearrow
92f40774e4 Game Boy: I hate your artificial limitations
fixes a DefleMask demo module
2022-08-10 23:56:25 -05:00
tildearrow
51db06298b Game Boy: fix volume regression 2022-08-10 23:53:47 -05:00
tildearrow
4b18d0920b Game Boy: software envelopes, part 2 2022-08-10 17:02:45 -05:00
tildearrow
bccecc4c07 Game Boy: software envelopes, part 1 2022-08-10 16:27:29 -05:00
tildearrow
28698beaf3 dev106 - Game Boy: implement hw seq
and prepare for software envelope maybe
2022-08-10 01:55:44 -05:00
tildearrow
da8f7dabd5 i guess
to anybody who bothers reading the contents of this commit:
who cares? you promised me C163 would become the name
but nobody has bothered to call it C163 for an entire week.

there's no point on pushing a dead idea forward!
2022-08-09 14:53:31 -05:00
tildearrow
1c92d23d27 commands view now only displays useful commands 2022-08-07 17:40:01 -05:00
tildearrow
b8012344e7 fix possible crash when closing Furnace 2022-08-07 17:37:07 -05:00
tildearrow
f80488d9b0 minimize allocations in nextBuf 2022-08-07 17:32:39 -05:00
tildearrow
829db187df Y8950: fix ADPCM per-chan osc I think 2022-08-07 06:24:48 -05:00
tildearrow
45196daf95 Game Boy: fix serious typo 2022-08-07 01:32:28 -05:00
tildearrow
1721e1d03e Game Boy: re-enable wave corruption bug emulation 2022-08-07 00:40:26 -05:00
tildearrow
7dad9098b6 Game Boy: fix wave channel 2022-08-07 00:37:35 -05:00
tildearrow
ab013291d4 Game Boy: make channel state independent of instru 2022-08-07 00:22:03 -05:00
tildearrow
9f8c96d45b dev105 - prepare for Game Boy hardware sequences
issue #27
2022-08-07 00:03:27 -05:00
tildearrow
47ea8132b2 QSound: limit max frequency to $EFFF
it appears $F000 and beyond cause glitches (#256)
2022-08-06 23:05:54 -05:00
tildearrow
17dba66fa0 MMC5: finally fix PCM linear pitch mode issues 2022-08-06 22:52:39 -05:00
tildearrow
6934a499c1 SoundUnit: actually finish it 2022-08-06 18:23:11 -05:00
tildearrow
e0c5029769 Merge branch 'master' of github.com:tildearrow/furnace 2022-08-06 16:24:11 -05:00
tildearrow
f03123fd75 SoundUnit: implement missing input line emulation 2022-08-06 16:22:57 -05:00
tildearrow
fa66fb1c9a
Merge pull request #622 from djtuBIG-MaliceX/hotfix/opm-loading-discrepancy
Fix OPM load bug relating to AM-ENA values above 1
2022-08-06 14:57:34 -05:00
freq-mod
a841296219
Y8950: PCM -> ADPCM
also where the f is my write access
2022-08-06 17:50:15 +02:00
tildearrow
5534f55f7a dev104 - add "is sample" flag to Sound Unit ins 2022-08-06 04:04:18 -05:00
tildearrow
0946d23883 Game Boy: fix phase reset macro when anti-click is 2022-08-06 00:39:09 -05:00
tildearrow
8a7d352ec6 PCE: fix phase reset macro when anti-click is on 2022-08-06 00:38:24 -05:00
tildearrow
6ec9cceb09 PCE: remove some sample playback clicking 2022-08-06 00:34:28 -05:00
tildearrow
049ab06544 PCE: add option to pick A/non-A revision of chip 2022-08-04 23:37:28 -05:00
tildearrow
3a18e1e6fc partially implement command stream binary mode 2022-08-04 18:50:52 -05:00
tildearrow
2e41d117d7 fix some of these command hints 2022-08-04 17:47:59 -05:00
tildearrow
09e32c7050 finish command dump hints 2022-08-04 15:14:29 -05:00
James Alan Nguyen
810eabca99 derp limits 2022-08-04 17:50:33 +10:00
James Alan Nguyen
edb0f51131 stdint required 2022-08-04 17:43:42 +10:00
James Alan Nguyen
b030f8285d Bugfix for OPM file load - correctly handle AM-ENA where value is arbitrarily nonzero 2022-08-04 17:33:36 +10:00
tildearrow
d54d853ff8 add a command stream dump option 2022-08-04 00:51:47 -05:00
tildearrow
a0d10aa60b Game Boy: implement anti-click 2022-08-03 19:17:18 -05:00
tildearrow
7ec4f7cb9e VGM export: add option to insert pattern change hi
nts
2022-08-03 18:44:45 -05:00
tildearrow
fce0371756 add "hint" commands 2022-08-03 17:21:47 -05:00
tildearrow
52c3b10373 add getWantPreNote()
currently only C64 system requires this
2022-08-03 16:21:30 -05:00
tildearrow
53120edd99 disable MIDI clock 2022-08-03 14:41:53 -05:00
tildearrow
46425655ad YM2612: fix possible ExtCh DualPCM muting issue 2022-08-03 14:41:53 -05:00
cam900
89042f61eb Fix link for vgsound_emu (moved into https://gitlab.com/cam900/vgsound_emu) 2022-08-03 21:56:22 +09:00
tildearrow
0d4f20b7a6 SoundUnit: add 64K chip revision 2022-08-03 00:05:58 -05:00
Waldemar Pawlaszek
5feba3a716 More robust popcnt 2022-07-31 22:26:59 +02:00
tildearrow
a9afcf873c fix ARM build 2022-07-31 14:05:23 -05:00
Waldemar Pawlaszek
6ff51ce8f3 #511 Added dynamic popcnt dispatcher 2022-07-31 11:33:38 +02:00
tildearrow
1921fd1759 PCE: implement anti-click technology 2022-07-30 01:00:51 -05:00
tildearrow
2b4b320a74 fix noMultiSystem setting being inverted 2022-07-27 02:36:48 -05:00
tildearrow
173e9b0df9 **Namco C163** 2022-07-26 18:23:01 -05:00
tildearrow
280592cf33 fix build 2022-07-26 01:42:34 -05:00
tildearrow
8d17500315 jlhafasjkhdgkdhjasfd 2022-07-25 19:45:49 -05:00
tildearrow
3ff8f3d860 FC loader: read slides 2022-07-25 19:09:42 -05:00
tildearrow
09e457003b add option for soft-clipping 2022-07-25 18:41:47 -05:00
tildearrow
83386d082d add a proper CLI
featuring skip order (left/right) and pause (space)!
currently available on macOS and Linux only.
2022-07-25 17:23:56 -05:00
tildearrow
9a0609ae1a fix build... 2022-07-24 02:24:57 -05:00
tildearrow
1dbdf8558c Merge branch 'master' of github.com:tildearrow/furnace 2022-07-24 01:57:21 -05:00
tildearrow
588f3f737c preliminary Future Composer module loading
only loads patterns and doesn't deduplicate
conversion required to fit in the Furnace format (no transpose ins/note)
even the pattern loader itself isn't complete due to how different the
format is
2022-07-24 01:57:10 -05:00
cam900
b48b7c8bc5 Apply loop end position for generic DAC 2022-07-24 12:23:38 +09:00
Christoph Neidahl
e08399156a
Haiku support (#596)
* Don't apply Wayland videodriver workaround on Haiku

* dirent.d_type-less type detecting in IGFD

The Dumb Way(tm). `stat`'s `st_mode` should be nicer?

* CMake check for dirent.d_type, stat-based fallback

* Move config dir setup to separate function

Nicer to work with than macro kerfuffle.

* Default sysFileDialog to off on Haiku

* Logging stuff

* Honour CMAKE_INSTALL_BINDIR

* Use find_directory on Haiku

Includes forgotten configPath line when home==NULL.

* Address PR review notes
2022-07-23 22:11:30 -05:00
Aleksi Knutsi
8011e7adc7
Implement Phase Reset Timer macro for Sound Unit (#573)
* Implement Phase Reset Timer Macro

* And make the macro actually work

* Delete ex4Max variable
2022-07-23 19:13:30 -05:00
tildearrow
623c0efbba
Merge pull request #578 from tildearrow/ngp
Add generic PCM DAC system
2022-07-23 19:12:51 -05:00
tildearrow
8d88ac766c dev103 - store system name and other info in song 2022-07-23 17:02:03 -05:00
tildearrow
d004629a58 dev102 - new sample storage format 2022-07-22 02:29:01 -05:00
tildearrow
7bc3166ed5 YMZ280B: frequency precision improvement
frequency is now multiplied by 256 and then fed to the chip divided by
256 to increase freq precision
2022-07-22 00:01:29 -05:00
cam900
5127d5ef18
Implement sample loop end position, enum-ise sample depth (#557)
TODO: new sample format
2022-07-21 23:36:42 -05:00
tildearrow
f6b45d3d9b GUI: add Namco C163 chip name option 2022-07-21 15:21:29 -05:00
cam900
a5959ae7b9 Struct-ize sample map variable 2022-07-20 23:01:06 +09:00
tildearrow
cd7b333b2d introduce a benchmark mode 2022-07-19 17:01:19 -05:00
tildearrow
a4741861ce fix audio output being reset on cmd line export 2022-07-19 15:57:06 -05:00
tildearrow
60a52d3b9f
Revert "Revert "Fix issue #567: LFO disable/enable behavior for YM2151."" 2022-07-17 00:06:04 -05:00
tildearrow
707dc30f15
Revert "Fix issue #567: LFO disable/enable behavior for YM2151." 2022-07-17 00:05:56 -05:00
Natt Akuma
e334fdddb8
Merge pull request #572 from ZeroByteOrg/opmlfo
Fix issue #567: LFO disable/enable behavior for YM2151.
2022-07-17 12:04:38 +07:00
tildearrow
15ab8cc49b YM2612: fix a CSM issue with key off 2022-07-12 18:45:54 -05:00
ZeroByteOrg
850508e1b8 Merge branch 'master' into ZSMv1 2022-07-11 12:59:59 -05:00
tildearrow
c85b67b1da NES + chip -> Famicom + chip 2022-07-09 15:55:27 -05:00
tildearrow
c2f1385703 MSM6258: fix position not being reset in furnace s
ample mode
2022-07-08 02:25:25 -05:00
cam900
fe94ea8e04
Fix typo 2022-07-07 04:10:32 +09:00
tildearrow
b39924c9d6 AY: TODO fix wtr_envelope.dmf 2022-07-05 01:16:25 -05:00
tildearrow
f4a85bebff dev101 - fix SMSFM_intro.dmf 2022-07-04 01:43:59 -05:00
tildearrow
949e293053 SMS: aaaand more .dmf compatibility 2022-07-03 23:43:13 -05:00
tildearrow
0ec28f168e more .dmf compatibility stuff 2022-07-03 23:31:35 -05:00
Natt Akuma
f8425b817f Fix GCC errors 2022-07-03 20:11:04 +07:00
Natt Akuma
d3cd7bbb81 Add generic PCM DAC system
For use with NGP DAC and some arcade system combos
2022-07-03 01:42:47 +07:00
Natt Akuma
fac415c8e8 Prepare for NGP system
Also add PCM DAC as system format 0xc0
2022-07-02 08:19:25 +07:00
Natt Akuma
59bcd9599f OPL: Missed changes from last commit 2022-07-01 17:55:33 +07:00
Natt Akuma
02b28e6e7d OPL: Correct CHIP_FREQBASE to match clock ratio
This changes from 9440540 to 9437184
2022-07-01 17:33:33 +07:00
ZeroByteOrg
807848cfee Fix LFO disable/enable behavior for YM2151. 2022-06-29 16:59:47 -05:00
ZeroByteOrg
40d67d7bb5 Merge branch 'master' into ZSMv1 2022-06-29 13:14:15 -05:00
tildearrow
a8a38dce2b 0.6pre1 - introduce the final changes
- implement E1xy/E2xy Defle bug when using same note twice
- add SNK Touchdown Fever preset
- update README.md and to-do list
- update credits

thank you for your patience!

see you in 0.6pre1.5 coming soon...
2022-06-29 04:57:05 -05:00
tildearrow
0a055ff85b OPL: fix crash 2022-06-29 02:11:25 -05:00
tildearrow
b99dce5362
Merge pull request #499 from superctr/220527_blocksize
Save the size of each block in a Furnace module
2022-06-29 01:54:05 -05:00
tildearrow
4a0bb1fa38 OPLL: one more chan osc fix 2022-06-29 01:50:20 -05:00
tildearrow
0b70902dbe OPLL: fix per-channel osc, part 2 2022-06-29 01:40:03 -05:00
tildearrow
9fee9fa363 GUI: run per-chan osc on instrument preview 2022-06-29 01:37:12 -05:00
tildearrow
4dfd413ead OPLL: fix per-channel osc, part 1 2022-06-29 01:32:52 -05:00
tildearrow
90481cc460 OPL: fix drums mode per-channel osc 2022-06-29 01:06:31 -05:00
tildearrow
477674400c YM2612: whoops! 2022-06-29 00:55:05 -05:00
tildearrow
aaf02103f6 YM2612: implement DualPCM macros 2022-06-29 00:49:11 -05:00
tildearrow
3ea0ad1e0a OPL: fix pitch macro
fixes #535
2022-06-28 23:32:36 -05:00
tildearrow
8c8ad7f5ab fix audio saving being totally wrong 2022-06-28 22:08:24 -05:00
tildearrow
13f14b6854 SoundUnit: fix copy-paste blunder 2022-06-28 12:55:14 -05:00
tildearrow
be7d7002e2 fix opening/saving audio files with non-ASCII char
s on Windows

this required making a wrapper...
2022-06-28 02:00:08 -05:00
tildearrow
f483292a88 OPN[A/B/2]?: implement 18xx effect 2022-06-28 01:16:46 -05:00
Natt Akuma
e2449d91f1 VERA: Run noise generation in each channel update 2022-06-27 19:37:45 +07:00
tildearrow
b04743d045 SMS: implement Game Gear stereo in Nuked core 2022-06-27 04:09:24 -05:00
tildearrow
fef09fb00d fix major per-channel audio export issue in ExtCh 2022-06-27 03:55:55 -05:00
tildearrow
869fe23036 fix .y12 TL loading 2022-06-27 03:44:09 -05:00
tildearrow
7ea49d7e84 what? 2022-06-27 03:39:42 -05:00
tildearrow
e39a923b23 C64: fix per-channel osc for 6581 2022-06-24 03:26:00 -05:00
tildearrow
951db12e6a Namco WSG: fix C15/C30 high notes 2022-06-23 22:59:06 -05:00
tildearrow
a717c67f3d change IDs of null/dummy audio backends
for eventual alternate audio backend support
2022-06-23 22:53:21 -05:00
tildearrow
b66cc81fc6 fix loading 24-bit samples 2022-06-23 22:33:25 -05:00
tildearrow
7586db9a1b fix Termux build again 2022-06-23 16:25:51 -05:00
tildearrow
b90552dfb1 fix Termux build 2022-06-23 16:23:46 -05:00
ZeroByteOrg
ae7b271e1d Merge branch 'master' into ZSMv1 2022-06-23 13:45:12 -05:00
Natt Akuma
142b8b2bb0 safeReader: Copy a value instead of direct casting
This fix crashes on architectures with forced alignments such as ARM
2022-06-23 09:03:20 +07:00
Natt Akuma
8dc143af7b PET: Support full 16-bit period range
Fix #500
2022-06-23 02:42:11 +07:00
Natt Akuma
4bf4be1ea2 Fix 16-bit samples in YMZ280B VGM export 2022-06-22 21:55:31 +07:00
tildearrow
e3686c2e34 fix song playing from begin if stopped on last row 2022-06-20 22:14:16 -05:00
cam900
69ea1d0227 Fix AY8930 unmuting 2022-06-21 11:06:26 +09:00
tildearrow
5a1a583ab0 AY: finally fix unmuting 2022-06-20 18:53:39 -05:00
tildearrow
fd61e0e9f8 ZX beeper: per-"channel" osc
there's only one
2022-06-20 18:48:10 -05:00
tildearrow
ee709b85c2 Namco WSG: per-channel oscilloscope 2022-06-20 18:20:49 -05:00
tildearrow
6772159d5f one more GCC < 8 fix 2022-06-20 04:58:03 -05:00
cam900
9cad907773 Fix potential register related issue 2022-06-18 11:07:36 +09:00
tildearrow
39fa3d7d85 Merge branch 'master' into preset1 2022-06-17 20:40:09 -05:00
cam900
6dc81c7af1 Pitch correction (again), Fix compatibility issue 2022-06-18 10:38:48 +09:00
tildearrow
753458f898 LOL 2022-06-17 04:51:39 -05:00
cam900
25af023dc6 Various corrections and fixes
Fix SN PSG pitch corrections
Revive YM2612 from dead
Add Game Gear stereo function finally
Add OPN/A prescaler config
2022-06-17 14:30:18 +09:00
tildearrow
ad5072dad6 more MIDI debugging messages 2022-06-16 23:55:17 -05:00
tildearrow
b7d8f3c17a harden sample movement 2022-06-16 23:39:38 -05:00
tildearrow
4d44c577e7 support saving 8-bit samples as-is 2022-06-16 23:22:40 -05:00
tildearrow
cdbcf7fcd3 fix loading 8-bit samples 2022-06-16 22:10:57 -05:00
tildearrow
327952f3f4 finally support loading floating-point samples 2022-06-16 22:07:12 -05:00
tildearrow
ed6a110d44 initialize SF_INFO before loading sample 2022-06-16 21:25:21 -05:00
cam900
0c1a8bc001 Merge branch 'master' into preset1 2022-06-17 09:19:17 +09:00
Natt Akuma
c44ca95b92 Make volume command handling consistent
For WonderSwan and VIC-20
2022-06-17 03:06:07 +07:00
tildearrow
dc9f1112d1 MSM6258: fix rate being twice
#541
2022-06-14 23:00:20 -05:00
tildearrow
d48801cfde GUI: slight visualizer tweaks 2022-06-14 04:41:57 -05:00
tildearrow
da756bef7f OPL: fix 4-op channel muting 2022-06-12 23:22:45 -05:00
Natt Akuma
47768edd20 Merge branch 'master' of https://github.com/tildearrow/furnace into snes 2022-06-10 23:00:03 +07:00
Natt Akuma
b49b596fbe WIP SNES support, part 2
Make the code build again, still no sound though
2022-06-10 22:59:44 +07:00
tildearrow
dd05429c0e WaveSynth: initialize wave to 0 on SCC/Bubble Syst 2022-06-09 18:16:51 -05:00
Natt Akuma
f3a90d554c WIP SNES support, part 1 2022-06-10 03:19:31 +07:00
ZeroByteOrg
8ed02530f6 Added WriteUC wrapper to safewrite for unsigned char. 2022-06-07 22:08:04 -05:00
ZeroByteOrg
7ad4a8f5a7 Fixed compile error in MacOS 2022-06-07 20:24:50 -05:00
cam900
6aa88b0770 Move on .cpp, prepare for variable rate support 2022-06-08 10:10:55 +09:00
ZeroByteOrg
d3717a5710 Merge branch 'master' into ZSMv1 2022-06-07 16:10:06 -05:00
cam900
7bbfe3af7c Fix per-channel osc 2022-06-07 23:59:50 +09:00
cam900
dd93f6d18e Merge branch 'master' into preset1 2022-06-07 13:04:17 +09:00
cam900
3e953f57b3 Prepare for TI-99/4A support
only works on MAME core only for now.
2022-06-07 12:57:09 +09:00
tildearrow
6dc408d99c SAA1099: remove MAME core
closes #529

the MAME core is inaccurate.
it doesn't emulate envelope too well.
2022-06-06 15:05:08 -05:00
tildearrow
d3a3473f19 commit requested changes 2022-06-06 13:32:57 -05:00
ZeroByteOrg
378f6a957b Merge branch 'master' into ZSMv1 2022-06-06 09:44:57 -05:00
cam900
74e3892fd9 Finally fixed 2022-06-06 23:26:22 +09:00
cam900
8bc545c8ab Fix compile (again) 2022-06-06 22:45:16 +09:00
cam900
5473b8722d Fix compile, Remove unused include 2022-06-06 19:52:13 +09:00
cam900
ebbd9784e6 Reduce more FM codes 2022-06-06 19:40:37 +09:00
cam900
d1aeabe464 Fix compile 2022-06-06 19:26:34 +09:00
cam900
35caab6f82 Merge branch 'master' into preset1 2022-06-06 19:09:12 +09:00
cam900
e0e6a45000 Prepare for reducing duplicates for 4op FM related codes, Add and correct bunch of presets, Add various clock, type options for chips
Prepare for reducing duplicates for 4op FM related codes

Add and correct bunch of presets
- mostly based on MAME source.
- Neo Geo AES uses slightly difference clock for NTSC, PAL colorbust frequency.
- Turbosound FM + SAA: Some Turbosound FM has additional SAA1099, for additional sound channel and Plays SAM coupe tune?
- PC-98:
 - Sound Orchestra: OPN with hardpanned stereo, some model has with OPL family FM addons.
   V variation has Y8950 and supports ADPCM.
 - Sound Blaster 16 for PC-9800: This famous PC sound card is also exists for PC-98, with optional OPN PC-9801-26(K) compatibility on some models.
- IBM PCjr: PC with SN PSG sound, but less popular than previous models, and compatible Tandy 1000.
- Tandy 1000: PCjr and previous IBM PC compatible, also has SN PSG (later embedded in their ASIC, like Sega).
- Hexion: One of konami's budget arcade hardware with SCC + MSM6295 sound system, like their amusement hardware in this era.
- DJ Boy, Atari JSA IIIs, Skimaxx: How to panning sound or plays stereo sound on MSM6295 - just use MSM6295s per each output!
- Air Buster: One of arcade hardware with OPN + MSM6295 sound system, Used this configuration is also some hardwares.
- Tecmo system: One of arcade hardware with pretty unique sound system: OPL3, YMZ280B, MSM6295; first 2 entry is mostly used in music, last entry is mostly used in sound effect.
- Sunsoft Shanghai 3: Predecessor of Sunsoft Arcade is using YM2149 rather than FM, MSM6295 is still there.
- Atari Klax: example of arcade hardware sound system with single MSM6295 only.
- Ikari warriors: This early SNK Triple-Z80 hardware uses 2 OPL1s and no ADPCM supports.
- Coreland Cyber Tank: This rare arcade machine's stereo sound is like SB Pro, but it's actually produced in 2 Y8950s.
- Data East MLC: Latest arcade hardware from Data East, with single YMZ280B for sound.
- Kaneko Jackie Chan: Predecessor of Super Kaneko Nova System hardware, also with YMZ280B.
- Super Kaneko Nova System: Latest arcade hardware from Kaneko, with single YMZ280B for sound. this announced 3D acceleration addon, but finally cancelled.
- Toaplan 1: Home of Late 80-Early 90s Good ol' stuffs, Example of arcade sound system with single OPL2
- Namco Pac-Land: and this era, Namco start to change Custom 15 WSG to their Custom 30 WSG with featured RAM based waveform, and mailbox feature.
- Namco System 1: One of latest usage of Custom 30 WSG, with OPM FM hardware and 8 bit DAC and Stereo output.

Add various clock, type options for chips
- SN7: Prepare to add 17 bit noise variation, Game gear stereo extentsion, NCR PSG variation (MAME core only for now)
- OPN, OPNA: Add placeholder for prescaler option
- OPL: Prepare for OPL3L, OPL4 downscaled output rate option
2022-06-06 19:04:52 +09:00
tildearrow
64fa5f804b finish fade out on audio export option 2022-06-06 04:00:56 -05:00
tildearrow
b6ea8ede86 fade out experiments - DO NOT COMPILE 2022-06-06 03:05:55 -05:00
tildearrow
5a0a9db9c3 highlight cur row instead of next one on playback 2022-06-06 01:05:06 -05:00
tildearrow
2932a7281d implement getChanMacroInt() on supported systems 2022-06-05 18:17:00 -05:00
tildearrow
af0103d76e macroInt: add hasRelease variable 2022-06-05 16:24:12 -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
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
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
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
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
9d10b5bf2b OPL: complete the drum instrument type
#310
2022-05-31 17:44:52 -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