Commit graph

841 commits

Author SHA1 Message Date
tildearrow 2fbc39bc90 N163: fix potential linear pitch regression
how in the world
2022-05-15 11:28:59 -05:00
tildearrow 1e6b660d2c OPN: hopefully several ExtCh fixes 2022-05-15 11:05:28 -05:00
tildearrow c5c612c354
Merge pull request #421 from cam900/ay_divider
Some AY-3-8910, AY8930 enhancements
2022-05-15 02:14:50 -05:00
tildearrow 5babb4fd1e BANK 2022-05-15 02:02:31 -05:00
tildearrow f63c072517 fix build failure 2022-05-15 01:55:25 -05:00
tildearrow 14053f70cb DO NOT USE - THIS FAILS - WORK IN PROGRESS 2022-05-14 18:19:07 -05:00
cam900 8e50ad8c90
Merge branch 'master' into ay_divider 2022-05-14 22:09:25 +09:00
tildearrow 6f8f8d21f3 preparations for UI improvements
mostly around the system add/change UI
2022-05-14 04:05:29 -05:00
tildearrow 297ab01d4c OPN: per-channel oscilloscope 2022-05-14 01:12:23 -05:00
tildearrow 6288b485fc oops 2022-05-14 01:09:24 -05:00
tildearrow 06e00ab17b OPNA: per-channel oscilloscope 2022-05-14 01:07:32 -05:00
tildearrow ae5dcd3746 OPNA: proper ADPCM muting 2022-05-14 01:05:05 -05:00
tildearrow 031a0fc133 OPNA: RSS write optimization 2022-05-14 01:02:28 -05:00
tildearrow c685b60a3c ZX beeper: "register" view 2022-05-14 00:36:45 -05:00
tildearrow cb63921747 ZX beeper: set a more audible duty 2022-05-14 00:31:14 -05:00
tildearrow 895765b68a and here's your ZX beeper
no real hardware yet
specs of this dispatch may change at any time to fit a driver
2022-05-14 00:22:23 -05:00
tildearrow 0a0ddfa661 partially bring up sample map 2022-05-13 23:04:40 -05:00
tildearrow 07871eacc3 Amiga: linear pitch oopsie 2022-05-13 22:55:17 -05:00
tildearrow d7ec3b13c5 ADPCM-B: fixes to compatible mode 2022-05-13 22:43:00 -05:00
tildearrow 14e0189993 WonderSwan: fix forceIns() messing with noise 2022-05-13 21:44:34 -05:00
tildearrow 9936c66184 OPL: remove printf 2022-05-13 17:41:13 -05:00
tildearrow 1ffbfe17d4 Y8950/YMU759: ADPCM muting 2022-05-13 17:40:05 -05:00
tildearrow 315018ff24 YMU759: ADPCM 2022-05-13 17:22:00 -05:00
tildearrow 7218710268 add Y8950 system 2022-05-13 16:52:44 -05:00
tildearrow 4a563a416e prepare for Y8950/YMU759 ADPCM 2022-05-13 14:59:36 -05:00
tildearrow db2ebc4930 OPNA: improvements 2022-05-13 03:18:14 -05:00
tildearrow f2db15b2ce add OPNA chip (work in progress) 2022-05-13 02:52:43 -05:00
tildearrow cdf4c55f0f SCC: fix forceIns (finally)
fixes #447
2022-05-12 02:39:46 -05:00
tildearrow 4e2e542c7a OPN: implement muting and remove panning 2022-05-12 02:25:59 -05:00
tildearrow c6bfc8178a
Merge pull request #444 from akumanatt/x16
VERA: halve output volume to match other PSGs
2022-05-11 16:08:16 -05:00
tildearrow ff0319780e OPN: VGM export - good night 2022-05-11 03:41:02 -05:00
tildearrow ab969c1da0 add OPN chip
pretty much copy-paste from YM2610B code

next up: even more blatant copy-paste in 2608
2022-05-11 03:29:03 -05:00
Natt Akuma e48faa4114 VERA: halve output volume to match other PSGs
In terms of maximum single-channel output.
X16's mixing is kept by halving YM2151 part.
2022-05-11 15:22:17 +07:00
tildearrow 35ff5430d3 SCC: VGM export, forceIns bug fix and 10xx 2022-05-11 02:20:14 -05:00
tildearrow 0c0a97c21b SCC: address review comments 2022-05-11 01:13:21 -05:00
tildearrow 8eb4fe365b
Merge pull request #443 from akumanatt/scc
Add SCC and SCC+ support
2022-05-11 01:09:08 -05:00
tildearrow 1c6e9c2cca add a full linear pitch mode, part 7
fix full linear pitch on OPL, OPLL, SAA1099 and Sound Unit
2022-05-11 00:26:28 -05:00
tildearrow ea118db499 X1-010: implement linear pitch (part 6) 2022-05-11 00:18:46 -05:00
tildearrow 90ac64f1d4 VERA: implement full linear pitch (part 5) 2022-05-11 00:11:24 -05:00
tildearrow f4652e6582 YM2610(B): implement full linear pitch (part 4) 2022-05-11 00:04:36 -05:00
tildearrow f5dbc37902 YM2612: implement full linear pitch (part 2) 2022-05-10 23:17:40 -05:00
tildearrow aad5d818f2 YM2612: early full linear pitch experiment
u n t e s t e d
2022-05-10 16:22:40 -05:00
Natt Akuma 00414c6504 Fix GCC errors 2 2022-05-11 00:29:17 +07:00
Natt Akuma 960a8e3616 Fix GCC errors 2022-05-10 17:36:09 +07:00
tildearrow 8784fe5664 dev94 - add a full linear pitch mode, part 1 2022-05-10 03:51:18 -05:00
tildearrow 5e14177e4e YM2610(B): use f-num/block baseFreq calculation
also allow for different octave boundary f-nums depending on chip clock
2022-05-10 02:22:08 -05:00
Natt Akuma a3fc76c984 Add SCC and SCC+ support 2022-05-10 11:25:10 +07:00
cam900 a8258d9a1a Divider related emulation core update, Fix init and period limitation 2022-05-10 13:18:02 +09:00
cam900 a9a249fd4c Merge branch 'master' of https://github.com/tildearrow/furnace into ay_divider
* 'master' of https://github.com/tildearrow/furnace: (24 commits)
  GUI: remove insLoadAlwaysReplace setting
  GUI: right click menu for open instrument
  GUI: add a threshold for macro right click
  OPZ: remove debug printf
  GUI: add macro right click menu
  GUI: prepare for macro right click menu
  update gitignore
  add something
  prepare for something
  did i fix macOS build?
  GUI: macro edit improvements
  GUI: now add ability to load VMEM
  Update sysDef.cpp
  GUI: add an option for it
  add preliminary TX81Z SysEx response
  OPL: drum volume
  OPL: implement hard reset
  GUI: add icon size setting
  GUI: macro UI refactor, part 4
  Fix WIN32 define timing in IGFD
  ...
2022-05-10 09:03:03 +09:00
tildearrow 0c24ee2f08 OPZ: remove debug printf 2022-05-08 22:40:14 -05:00
tildearrow 38b4d1d39e OPL: drum volume 2022-05-07 21:58:17 -05:00
tildearrow 6fe58a3965 OPL: implement hard reset
fixes #437
2022-05-07 21:48:29 -05:00
cam900 9df2500195 Merge branch 'master' of https://github.com/tildearrow/furnace into ay_divider
* 'master' of https://github.com/tildearrow/furnace:
  GUI: macro UI refactor, part 2
  Masochism Volatile Compiler
  GUI: is the macro UI back yet
  OPL: fix 4-op muting (I think)
  GUI: macro UI refactor, part 1 - PLEASE READ
  GUI: remove classic macro view
  Fix more MSVC warnings
2022-05-07 23:04:01 +09:00
cam900 0b0a6dbf28 Fix divider again, split tone and envelope clock divider 2022-05-07 23:00:22 +09:00
tildearrow b2953e00fe OPL: fix 4-op muting (I think)
fixes #435
2022-05-06 23:52:14 -05:00
cam900 76997fd5ba
Merge branch 'master' into ay_divider 2022-05-06 19:17:34 +09:00
tildearrow 509e46417f OPZ: fix fixed frequency effects 2022-05-06 00:09:49 -05:00
tildearrow 5974e8c045 OPZ: fix EGShift emulation
1. the TX81Z has operators in reverse order
2. don't early out if EGShift is not 0
2022-05-05 23:50:15 -05:00
tildearrow 9a2938ff3e GUI: fix values button working as notes 2022-05-05 13:23:06 -05:00
cam900 9109d2c64f Merge branch 'master' of https://github.com/tildearrow/furnace into ay_divider
* 'master' of https://github.com/tildearrow/furnace:
  dev92 - GUI: customizable channel collapsing!
  GUI: more improvements to instrument loading
  GUI: implement instrument load replace
  NES: fix duty effect not working at all
  GUI: part 2 of previous commit
  GUI: only use edit color when pat view is focused
  GUI: fix more issues
  here's the new OPLL default instrument
  OPL: fix channel muting - PLEASE READ!
  OPLL: fix compatible drum mode
  the final part of extra FM effects
  implement extra FM effects (OPLL and OPL)
  update to-do list
  prepare for possible .ftm import
  implement extra FM effects (OPN, OPM and OPZ)

# Conflicts:
#	src/engine/engine.h
2022-05-05 13:39:58 +09:00
tildearrow 6aefd392ff NES: fix duty effect not working at all 2022-05-04 22:04:18 -05:00
tildearrow b75336bcb6 OPL: fix channel muting - PLEASE READ!
**SUBMODULES UPDATED** - Nuked-OPL3 is no longer a submodule as I
had to directly modify the core for this
if you mess up while removing Nuked-OPL3 from your repo, delete
everything and clone again

fixes #414
2022-05-04 18:06:32 -05:00
tildearrow e50df18393 OPLL: fix compatible drum mode 2022-05-04 17:43:06 -05:00
tildearrow 6e7b4d7e7f the final part of extra FM effects 2022-05-04 17:39:22 -05:00
tildearrow 897bf323f2 implement extra FM effects (OPLL and OPL) 2022-05-04 16:56:45 -05:00
tildearrow 467036df2a implement extra FM effects (OPN, OPM and OPZ)
issue #38
2022-05-04 14:09:43 -05:00
cam900 4f1ebc3b6e Some AY-3-8910, AY8930 enhancements
Fix AY PSG clock divider function when exists, Update emulation core (MAME AY PSG and compatibles - includes noise routine updates)
Fix configuration flag, Add MSX Darky sound expander to preset

Clock divider isn't affected to expanded mode's tone and noise generator?
2022-05-04 23:04:20 +09:00
tildearrow 391928af6e
Merge pull request #416 from grauw/ay8930-fix2
AY8930: Fix tone and noise period in expanded mode.
2022-05-03 16:51:50 -05:00
Laurens Holst 49ff39abee AY8930: Fix tone and noise period in expanded mode.
By doubling the internal clock frequency.

In expanded mode, the same tone period is an octave higher than in compat mode.
In expanded mode, the noise period is twice as fast as currently implemented.

See https://github.com/tildearrow/furnace/pull/416
2022-05-03 21:28:10 +02:00
tildearrow 978b0798e5 OPL: fix possible crash 2022-05-03 14:04:38 -05:00
tildearrow 4c9b172b50 YM2610: optimize oscilloscope fetch CPU usage 2022-05-03 02:52:38 -05:00
tildearrow 3d541682e6
Merge pull request #412 from grauw/ay8930-vgm
AY8930: Fix VGM output.
2022-05-03 01:53:41 -05:00
tildearrow 62289d924e FDS: add NSFPlay core 2022-05-02 16:53:55 -05:00
tildearrow 960048cf4b NES: fix Furnace-style DPCM 2022-05-02 16:05:07 -05:00
Laurens Holst ffa0727bf6 AY8930: Fix VGM output.
It was generating writes to register addresses > 15.
2022-05-02 22:49:55 +02:00
tildearrow ce40085d3b SoundUnit: fix PCM pitch 2022-05-02 15:07:59 -05:00
tildearrow a6ef36d42e SoundUnit: PCM support 2022-05-02 14:51:06 -05:00
tildearrow 5a724e4949 NES: DPCM work! 2022-05-02 03:42:40 -05:00
tildearrow dbe9bf25e7 fix bug caused by new renderSamples approach
when doing switchMaster
2022-05-02 02:54:23 -05:00
tildearrow a7b8f81da7 NES: prepare for DPCM 2022-05-02 02:12:14 -05:00
tildearrow b92ce84b34 OPZ: more fixed frequency mode fixes 2022-05-02 02:12:02 -05:00
tildearrow a0db8ab49a OPZ: possibly fix fixed freq emulation 2022-05-02 01:22:49 -05:00
tildearrow 34f7750c27 OPZ: fix muting 2022-05-02 01:15:42 -05:00
tildearrow 6380876b9a OPL: fix panning 2022-05-02 00:41:58 -05:00
tildearrow 5adc29906a
Merge pull request #410 from grauw/dispatch-render-samples
Move renderSamples() to DivDispatch implementations.
2022-05-02 00:25:58 -05:00
tildearrow 7a67730c29 damn it 2022-05-02 00:23:03 -05:00
tildearrow 430d0329bd per-channel oscilloscope, part 10
OPZ
2022-05-02 00:22:34 -05:00
tildearrow de09073232 NES: NSFPlay per-channel osc 2022-05-02 00:05:28 -05:00
tildearrow 61b4e3745f NES: NSFPlay muting 2022-05-01 23:57:53 -05:00
tildearrow e1cec62af4 NES: now fix tri_mute 2022-05-01 23:48:35 -05:00
tildearrow 153e025cf8 NES: finally 2022-05-01 23:48:02 -05:00
tildearrow cb7aa4aa05 NES: wire up NSFplay
no muting supported for now
see #27
2022-05-01 23:20:20 -05:00
tildearrow 7b31f6a3e5 now fix it damn it 2022-05-01 22:52:22 -05:00
tildearrow e873070d84 now move these files 2022-05-01 22:22:02 -05:00
Laurens Holst 7f0074511c Move renderSamples() to DivDispatch implementations.
To prevent rendering samples for systems that are not in use.

Additionally, it gives the systems more flexibility to render the samples
according to their specific configuration.
2022-05-01 23:23:38 +02:00
tildearrow 58fe971a3c Clang you are so arrogant 2022-05-01 05:18:30 -05:00
tildearrow 9f19b5dfc4 ok so screw you 2022-05-01 05:10:41 -05:00
tildearrow 05ae774617 let's hope this works 2022-05-01 04:49:41 -05:00
tildearrow e1a02f64de attempt to fix CI 2022-05-01 04:30:04 -05:00
tildearrow 3a4f120120 per-channel oscilloscope, part 8
TIA is done
2022-05-01 04:01:25 -05:00