Commit graph

1220 commits

Author SHA1 Message Date
tildearrow
917a03eb07 TIA: fixes fixes fixes 2022-09-09 23:40:21 -05:00
tildearrow
fcefbb4909 TIA: update to latest Stella core 2022-09-09 23:21:45 -05:00
tildearrow
84b0ffbac3 VRC6: possibly bring solution to #671 2022-09-09 15:31:38 -05:00
tildearrow
7de165fd88 N163: fix channel count change glitch, part 1 2022-09-08 03:01:22 -05:00
cam900
d82d7255d1 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-31 19:18:15 +09:00
tildearrow
2abcea118c WonderSwan: fix possible hang when seeking 2022-08-31 00:51:08 -05:00
tildearrow
af1b684c08 NES: #655 2022-08-30 15:47:12 -05:00
tildearrow
3af287cf9d AY: fix per-chan osc in Sunsoft 5B mode 2022-08-29 04:15:53 -05:00
tildearrow
4b4a254064 C64: reSIDfp per-chan osc 2022-08-29 03:54:55 -05:00
tildearrow
69efad1df4 Merge branch 'master' of github.com:tildearrow/furnace 2022-08-29 03:27:04 -05:00
tildearrow
8d280fd9a3 C64: bind reSIDfp 2022-08-29 03:26:49 -05:00
cam900
26d3e02dd8 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-29 11:47:36 +09:00
cam900
c2a7bdd194
Match this to actual channel count 2022-08-29 11:45:18 +09:00
tildearrow
d485af439d fix macOS build 2022-08-28 15:36:12 -05:00
tildearrow
c3ced46fa3 coming soon: reSIDfp core 2022-08-28 15:10:44 -05:00
ZeroByteOrg
ca4fb5b7d4 Merge branch 'master' into ZSMv1 2022-08-28 10:54:20 -05:00
cam900
3fcccb52ee Reduce performance issue 2022-08-28 10:50:57 +09:00
cam900
a411e34a62 Performance adjusts 2022-08-28 09:59:56 +09:00
cam900
5d3cecfea6 Fix switch case 2022-08-27 18:58:49 +09:00
cam900
745837c41d Fix compile (2) 2022-08-27 18:40:16 +09:00
cam900
570036ad6f CONTRIBUTING 2022-08-27 18:22:36 +09:00
cam900
8f804f6e6b Correct pitch to sample preview 2022-08-27 18:20:33 +09:00
cam900
54dbd0690c Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro
# Conflicts:
#	src/engine/fileOps.cpp
#	src/engine/platform/lynx.cpp
#	src/engine/platform/rf5c68.cpp
#	src/engine/platform/su.cpp
#	src/engine/platform/x1_010.h
#	src/engine/platform/ym2610.cpp
#	src/engine/platform/ym2610.h
#	src/engine/platform/ym2610b.cpp
#	src/engine/platform/ym2610b.h
#	src/engine/sysDef.cpp
#	src/gui/insEdit.cpp

Add effect command for ADPCM-A global volume, X1-010 Sample bank slot
2022-08-27 17:25:48 +09:00
cam900
4cc79fb49d Prepare for split sample chip instrument
(MSM6258, MSM6295, QSound, Sega PCM, ADPCM-A, ADPCM-B, YMZ280B, RF5C68)
Instrument color and icons are placeholder.

different volume range, hard panned/soft panned and/or independent volume per output, chip-dependent features (global volume, echo, etc)
Allow use sample in instrument tab for chip with sample support
Prepare to support X1-010 Seta 2 style bankswitch behavior
Prepare to support AY89x0 PCM DAC
Support volume for PCE sample (DAC)
Fix Lynx, Y8950 sample pitch matches to sample preview
Support PCM DAC with backward and pingpong loop mode
Reduce some codes
Add Sega PCM, AY89x0, QSound, PCM DAC, Lynx per-channel debug support
2022-08-27 16:27:36 +09:00
tildearrow
c58f1daeb8 QSound: disable key on log
we already debugged the issue
2022-08-26 03:00:37 -05:00
tildearrow
f9a8a54601 Merge branch 'master' of github.com:tildearrow/furnace 2022-08-25 01:35:10 -05:00
tildearrow
fc5b26c49a SoundUnit: fix 4xxx not working 2022-08-25 01:34:21 -05:00
cam900
9c29b7e7ca
Fix RF5C68 panning macro 2022-08-25 00:24:49 +09:00
tildearrow
e158591ccb even more fixes 2022-08-23 02:31:39 -05:00
tildearrow
226f43fea3 several important bug fixes to advanced arp macro 2022-08-22 19:09:08 -05:00
tildearrow
c009cb3536 dev112 - prepare for advanced arp macro
this new advanced arp macro offers more flexibility and reduces code duplication
it allows you to set each step of the macro to either relative or fixed mode
(instead of just one mode for the entire macro)

the UI is still a work in progress and doesn't work well

this change is big and may break things! further fixes incoming
2022-08-22 15:59:45 -05:00
tildearrow
b223bc80de YM2612: #581 2022-08-21 20:06:01 -05:00
tildearrow
10aaf7f0cb YM2612: #580 2022-08-21 19:57:01 -05:00
tildearrow
05b5265bbb YM2612: #632 2022-08-21 19:46:48 -05:00
tildearrow
e226d09807 TIA: fix 10xx not working when changing instrument 2022-08-21 17:15:05 -05:00
tildearrow
96feeced86 to-do 2022-08-21 16:34:43 -05:00
tildearrow
f2950fa1d6 Revert "More preparing, Add OPL type docs"
This reverts commit 0b2f491997.

do not add a constructor to any of the DivPlatforms.
it will break things.
2022-08-20 23:35:13 -05:00
cam900
0b2f491997 More preparing, Add OPL type docs 2022-08-21 13:10:46 +09:00
cam900
2863f1662f Fix pitch 2022-08-21 12:57:53 +09:00
cam900
dfb663d876 Fix this for preparing OPL3-L and OPL4 2022-08-21 12:46:56 +09:00
tildearrow
c74d7fab37 dev108 - add SN period range compat flag
there's room for possible improvement
2022-08-19 18:46:19 -05: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
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
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
a34c9806cb Game Boy: whoops 2022-08-14 23:30:36 -05:00
tildearrow
a8d3803efc Game Boy: now fix wave channel volume column 2022-08-14 23:28:15 -05: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
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
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
829db187df Y8950: fix ADPCM per-chan osc I think 2022-08-07 06:24:48 -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
f03123fd75 SoundUnit: implement missing input line emulation 2022-08-06 16:22:57 -05: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
a0d10aa60b Game Boy: implement anti-click 2022-08-03 19:17:18 -05:00
tildearrow
52c3b10373 add getWantPreNote()
currently only C64 system requires this
2022-08-03 16:21:30 -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
cam900
b48b7c8bc5 Apply loop end position for generic DAC 2022-07-24 12:23:38 +09: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
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
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
c2f1385703 MSM6258: fix position not being reset in furnace s
ample mode
2022-07-08 02:25:25 -05: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
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
cam900
f3b9c6dde6
Merge branch 'master' into es5506_alt 2022-07-02 13:28:49 +09: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
0a055ff85b OPL: fix crash 2022-06-29 02:11:25 -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
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
13f14b6854 SoundUnit: fix copy-paste blunder 2022-06-28 12:55:14 -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
cam900
a647a2599f Fix typecasting 2022-06-26 09:06:13 +09:00
cam900
3119ed8cc5 Merge remote-tracking branch 'upstream/master' into es5506_alt 2022-06-26 00:47:34 +09:00
cam900
2b5bb91237 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (55 commits)
  GUI: get rid of these stupid icons
  update to-do list
  MSM6258: the final bits
  MSM6258: clock/rate selection
  MSM6258: prepare for rate changing
  Update n163.md
  YM2612: DualPCM per-channel osc
  YM2612: more DualPCM muting fixes
  YM2612: fix DualPCM muting
  GUI: finish the blank ins up
  GUI: add "blank new instrument" option
  GUI: add mono/poly note preview button
  PC speaker: don't use printf/perror
  YM2612: CSM arpeggio and slides
  YM2612: - C   S   M -
  YM2612: half-working CSM
  YM2612: earliest completely untested CSM work
  delay collapse/expand pattern/song feature :<
  GUI: much more stable osc view
  YM2612: fix DAC output not visible in per-chan osc
  ...

# Conflicts:
#	src/engine/platform/genesis.cpp
#	src/engine/platform/genesis.h
#	src/ta-utils.h
2022-06-26 00:36:36 +09: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
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
8dc143af7b PET: Support full 16-bit period range
Fix #500
2022-06-23 02:42:11 +07: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
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
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