tildearrow
96d45dafb2
OPZ: same
2022-04-07 01:04:35 -05:00
tildearrow
e1b77d7e2b
OPM: if the LFO rate is 0, don't clock the counter
2022-04-07 01:03:16 -05:00
tildearrow
78cd99af32
update ymfm
2022-04-07 00:57:52 -05:00
tildearrow
530327383a
initial OPZ bring-up
...
even emulation is incomplete and one thing is making me tired...
2022-04-06 22:56:06 -05:00
tildearrow
2e327953e8
YM2610(B): AY unification
...
as of now the SSG part of these chips is handled by a DivPlatformAY8910
within the DivPlatformYM2610.
this means less code duplication and therefore prepares for
OPN/OPNA support.
2022-04-06 18:03:30 -05:00
Natt Akuma
ba8ee96069
VIC-20: Make noise state consistent across inits
2022-04-06 19:11:45 +07:00
tildearrow
9d653b58b3
hopefully fix MSVC build
2022-04-06 04:24:20 -05:00
tildearrow
2da96a7e76
initial MMC5 bring-up
2022-04-06 00:34:12 -05:00
tildearrow
280cbb3e39
FDS: possibly final work
...
the last thing left to do is the filter, but everything works now
2022-04-05 18:18:14 -05:00
tildearrow
eee2500b5c
FDS: effect names and register sheet
2022-04-04 00:47:27 -05:00
tildearrow
ac3772c024
initial FDS bring-up
2022-04-03 22:37:16 -05:00
tildearrow
5ff1c9d70d
OPN ext ch: fix mute being overridden when seeking
2022-04-03 02:28:46 -05:00
tildearrow
dfb4f211c1
PC speaker: volume macro (finally)
2022-04-01 13:47:58 -05:00
tildearrow
a08f7507fd
N163: don't auto-scale volume
2022-03-31 23:11:02 -05:00
tildearrow
6d1d91ca68
AY8930: add TEST register effect
2022-03-31 17:14:45 -05:00
tildearrow
2d6a3b93d8
VRC6: change default saw volume
2022-03-31 15:40:46 -05:00
tildearrow
6f3b9f2e5d
VRC6: changes around volume macro
2022-03-30 22:55:55 -05:00
tildearrow
12ade13580
SegaPCM: fix pitched samples on VGM export
...
fixes #291
2022-03-30 00:33:29 -05:00
tildearrow
fb70afe50d
Merge pull request #329 from cam900/n163_macro
...
Minor N163 macro fix
2022-03-30 00:28:01 -05:00
tildearrow
80d67f9b23
BubSys: fix muting
2022-03-30 00:15:42 -05:00
tildearrow
af6bbf9493
OPN: fix LFO effect not working in ext ch mode
2022-03-30 00:09:53 -05:00
tildearrow
a43034f559
OPN: fix portaPause not resetting on new note
2022-03-29 23:58:50 -05:00
cam900
6eba483cba
Minor N163 macro fix
2022-03-30 08:28:38 +09:00
tildearrow
c26123e782
VIC-20: wait what?
2022-03-29 14:11:57 -05:00
tildearrow
5cea8ed3e3
QSound: change volume macro formula
2022-03-29 02:28:40 -05:00
cam900
1019faf34c
Fix initial channel, Minor optimization for N163
2022-03-29 04:56:35 +09:00
tildearrow
3561d866fb
Merge pull request #317 from cam900/vrc6
...
Minor optimization
2022-03-28 13:23:52 -05:00
cam900
1ca63bdc09
Fix N163
2022-03-29 00:31:17 +09:00
cam900
5060c0c140
Merge branch 'tildearrow:master' into vrc6
2022-03-28 12:39:00 +09:00
cam900
7bd39603a9
Further fix
2022-03-28 12:31:42 +09:00
tildearrow
13a8873050
VRC6: period tuning fixes
...
now it is identical to the NES channels
2022-03-27 22:30:29 -05:00
tildearrow
4422ff7695
Merge branch 'vrc6' of https://github.com/cam900/furnace into cam900-vrc6
2022-03-27 22:16:04 -05:00
tildearrow
075f758e4d
Namco 163 refinements
2022-03-27 22:04:01 -05:00
tildearrow
c4fc797578
Merge #304 - DO NOT COMPILE
...
Add Namco 163 Support
Not final - changes needed
2022-03-27 21:35:58 -05:00
cam900
79d6433006
Merge branch 'master' of https://github.com/tildearrow/furnace into vrc6
2022-03-28 10:11:09 +09:00
tildearrow
a7647a1d57
nice troll
2022-03-27 13:38:28 -05:00
cam900
5c922a090e
Fix enable bit correction
2022-03-28 01:43:43 +09:00
cam900
44b4c5c5aa
Spacing
2022-03-28 01:23:52 +09:00
cam900
5c5c9199c7
Channel enable bit is inverted
2022-03-28 01:22:24 +09:00
cam900
ef104ce0b0
Add VRC6 support
...
2 Pulse channels:
- 8 level pulse duty cycle, DAC mode(just ignores duty cycle)/pulse wave mode, 4 bit volume.
- Furnace support PCM playback in pulse channels with duty cycle ignore mode.
Sawtooth:
- nothing but 6 bit volume (8 bit accumulator in technically) and 12 bit frequency (periodic).
VRC6 instrument:
- 6 bit Volume macro for finer sawtooth volume handling, also 3 bit Duty cycle macro for pulse channels.
Duty, PCM mode command and Duty macro affects for pulse channel only.
2022-03-28 01:06:56 +09:00
tildearrow
5dac609d92
Genesis: better DAC write algorithm
...
only write DAC if there aren't too many queued writes
2022-03-27 01:47:27 -05:00
tildearrow
a58c6da19d
Amiga: oops
2022-03-27 00:29:37 -05:00
tildearrow
08dd693fa0
Amiga: add AM/PM effects
2022-03-27 00:02:17 -05:00
tildearrow
154ef3f9a3
Amiga: filter emulation
2022-03-26 23:39:20 -05:00
tildearrow
9b6e582f8d
dev72 - two more compat flags
2022-03-26 22:15:15 -05:00
tildearrow
5c11150b87
T O D O
2022-03-26 21:43:15 -05:00
tildearrow
73536c0691
AY: add effects to write to I/O ports
2022-03-26 20:55:43 -05:00
tildearrow
d869c21f52
oops I forgot to commit!
2022-03-26 13:47:13 -05:00
tildearrow
ed857b20c4
potentially breaking change: better freq formula
...
now using a 4096-entry-long table for calculating final period/frequency
see issue #303
2022-03-25 02:52:41 -05:00
tildearrow
03da02711a
OPLL: it's tested now. works
...
last thing to do is to restore drum pitches
2022-03-25 02:10:57 -05:00
tildearrow
ea49c760c5
OPLL: part 1 of fixing drum volumes
2022-03-24 04:53:09 -05:00
tildearrow
7f39ec723a
SMS: overdrive 2 fixes
...
nice
2022-03-24 01:27:53 -05:00
tildearrow
ece34990e5
several pitch fixes and stuff
...
pull request #303
2022-03-23 23:19:16 -05:00
cam900
39654bfa86
Merge branch 'master' of https://github.com/tildearrow/furnace into n163
2022-03-24 13:11:22 +09:00
tildearrow
b292fcc646
YM2151: implement song tuning
2022-03-23 22:16:25 -05:00
tildearrow
5a08e0d230
OPLL: add patch macro
2022-03-23 15:50:18 -05:00
cam900
df8f40486d
Fix frequency, Loading waveform, Add instrument tab for waveform initialize
...
now for saving DivInstrumentN163 struct is... needs to compatibility breaks?
2022-03-24 03:53:07 +09:00
cam900
73267444fc
Merge branch 'master' into n163
2022-03-23 03:26:09 +09:00
cam900
4ba65d3906
Fix spacing
2022-03-23 03:17:06 +09:00
cam900
2eaa6ed0ce
Merge branch 'master' of https://github.com/tildearrow/furnace into n163
...
# Conflicts:
# CMakeLists.txt
# papers/doc/7-systems/README.md
# src/engine/dispatchContainer.cpp
# src/gui/gui.cpp
# src/gui/insEdit.cpp
2022-03-23 02:44:13 +09:00
cam900
5fdce33b11
Add Namco 163 Support
2022-03-23 01:48:45 +09:00
Natt Akuma
feb138cefc
Add VIC-20 support
2022-03-22 14:48:48 +07:00
tildearrow
bfadb3b5cf
OPL: oopsie. 20xx effect doesn't exist
2022-03-22 01:06:26 -05:00
tildearrow
848da5bcc5
VERA: 0 to 3F
2022-03-22 00:13:28 -05:00
tildearrow
322981b021
maybe fix possible crash regarding smp loop points
2022-03-21 21:26:36 -05:00
Natt Akuma
c32ea59285
PET: Use wave bits macro instead
2022-03-22 01:37:22 +07:00
Natt Akuma
47c5c34e1c
Add PET support
2022-03-21 21:02:51 +07:00
tildearrow
a0dbc7acaf
Merge pull request #299 from AYCEdemo/x16
...
VERA: Implement PCM playback (again)
2022-03-20 04:40:04 -05:00
tildearrow
607a347b7a
X1-010: don't pan in mono mode
2022-03-19 21:59:19 -05:00
Natt Akuma
6df3d1e0df
VERA: Implement PCM playback (again)
2022-03-19 20:59:17 +07:00
cam900
a7c750a44e
Merge branch 'master' of https://github.com/tildearrow/furnace into bubsys
2022-03-18 03:20:33 +09:00
tildearrow
d6dfe2636a
OPL: implement fixed frequency mode
2022-03-17 02:40:10 -05:00
tildearrow
dce68749d6
GUI: work on the drum UI
2022-03-17 02:07:46 -05:00
tildearrow
5579ef2bc1
OPL: even more drums mode work
2022-03-17 01:50:42 -05:00
tildearrow
e7f6290012
OPL: possibly implement drums mode
...
we need a good UI for it
2022-03-17 01:40:03 -05:00
cam900
234c5e9295
Reduce naming confusion in Bubble System Wavetable Sound
...
It means Custom wavetable sound generator logic on Bubble System.
It's wavetable select and volume is controlled by single AY-3-8910 IO for both channels, Another AY-3-8910 IO is used for reading sound status.
Schematics: http://pdf.textfiles.com/manuals/ARCADE/K-R/Nemesis%20[Schematics]%20[English].pdf (Nemesis, derivative of Bubble system)
2022-03-17 10:11:48 +09:00
tildearrow
966539bdf5
Genesis: fix sample crash
...
possibly
2022-03-16 13:11:02 -05:00
tildearrow
966d133bf4
OPL: FM macros
2022-03-16 03:44:22 -05:00
tildearrow
9322e9467c
GUI: prepare macro editor for OPL op macros
2022-03-16 02:01:44 -05:00
tildearrow
592cbb56aa
OPL: implement effects
2022-03-16 01:53:46 -05:00
cam900
c269346eda
safety check
2022-03-16 11:41:24 +09:00
cam900
53ad1c93e6
Reduce line
2022-03-16 11:40:10 +09:00
cam900
724bd5b8dc
Fix X1-010 muting
2022-03-16 11:35:22 +09:00
tildearrow
0a307fc4a6
MOD import: more improvements
...
- prepare for old Soundtracker MOD import
- add "bypass limits" flag - dope.mod plays correctly now
- automatic channel names
2022-03-15 18:32:15 -05:00
tildearrow
10cea9956b
X1-010: fix crash
2022-03-15 18:30:29 -05:00
tildearrow
83e7d966b9
OPL: more 4-op mode fixes
2022-03-15 18:01:24 -05:00
tildearrow
4c5c4a647b
OPL: some fixes
2022-03-15 15:28:45 -05:00
tildearrow
a65df5cdab
OPL: pretend to be YMU and enable SOME emulation?
2022-03-15 00:33:57 -05:00
Natt Akuma
91e856c61e
Merge branch 'master' of https://github.com/tildearrow/furnace into mod-import
2022-03-15 03:08:37 +07:00
Natt Akuma
c7fb5df206
Merge branch 'master' of https://github.com/tildearrow/furnace into mod-import
2022-03-14 21:57:54 +07:00
Natt Akuma
87f225074c
.mod import
2022-03-14 21:50:52 +07:00
cam900
2c6267bd6b
Merge branch 'master' of https://github.com/tildearrow/furnace into scc
2022-03-14 19:22:31 +09:00
cam900
69aeb7dd58
Add Bubble System Support
...
Bubble System 2 channel Wavetable sound generator logic is configuration with K005289, 4 bit PROM and DAC.
K005289 controls pitch and 5 bit address generator per channel, Waveform select and Volume control is tied to AY-3-8910 ports. (each port for per channels)
these configuration is better known as K005289, the part of logic.
furnace emulates this configurations as single system, waveform format is 15 level and 32 width.
2022-03-14 19:22:12 +09:00
tildearrow
714d189b57
OPL: more work and channel muting
2022-03-14 02:47:04 -05:00
tildearrow
d2ad74206a
fix 4-op mode for real
2022-03-14 02:39:10 -05:00
tildearrow
42df8255fc
OPL: kind of fix 4-op mode
2022-03-14 02:30:25 -05:00
tildearrow
32581bb228
OPL: volume
2022-03-14 01:57:46 -05:00
tildearrow
df5c1ae859
OPL: finally fix that order issue (kind of)
2022-03-14 01:54:31 -05:00
tildearrow
67d516fcee
Genesis: prioritize DAC writes
2022-03-14 01:38:11 -05:00
tildearrow
5b2ec3ee87
NES: fix slide up
...
fixes #208
2022-03-14 00:26:06 -05:00
tildearrow
b1b3f731f6
Merge pull request #283 from laoo/lynx_panning_swap
...
Lynx panning swap
2022-03-13 11:19:55 -05:00
tildearrow
d607f35aa2
Merge pull request #279 from cam900/intv_alt
...
Add AY-3-8914 support as configurable in AY-3-8910
2022-03-13 11:17:36 -05:00
Waldemar Pawlaszek
e775703c44
Lynx panning swap
2022-03-12 12:16:01 +01:00
tildearrow
716298c49c
Genesis: now fix off not working on channel 6
2022-03-11 22:41:04 -05:00
tildearrow
2a0aa19b2b
fix broken DAC mode
...
adds new compat flag
2022-03-11 22:11:33 -05:00
cam900
2643d6b0ee
Clamp X1-010 Envelope wave
2022-03-12 11:32:19 +09:00
tildearrow
ab3884e5aa
clamp wave data
...
issue #267
2022-03-11 16:58:43 -05:00
cam900
3ac1dce3fe
Add AY-3-8914 support as configurable in AY-3-8910
...
Previous PR (https://github.com/tildearrow/furnace/pull/278 ) is closed due this, but archived for info.
It's AY with 4 level envelope volume per channel and different register format.
2022-03-12 03:30:54 +09:00
tildearrow
0ee16c63f1
Merge pull request #275 from cam900/ym2610_check
...
Make some pitch command work in ADPCM-B, still partially and 01xx command is broken
2022-03-10 18:32:36 -05:00
tildearrow
bbca8b260b
Merge pull request #243 from cam900/gui_systems
...
Add various system, Minor corrections
2022-03-10 18:31:23 -05:00
tildearrow
c6fda7a156
Merge branch 'x1_010' of https://github.com/cam900/furnace into cam900-x1_010
2022-03-10 18:24:52 -05:00
tildearrow
a9f80b841c
VERA: add ins color and reset
2022-03-10 17:46:40 -05:00
tildearrow
cbc8721a00
Merge branch 'x16'
2022-03-10 17:31:32 -05:00
tildearrow
6d9befaf27
yay
2022-03-10 17:30:34 -05:00
tildearrow
2f02e24a2f
VERA: get rid of rand() and adapt code
2022-03-10 16:52:59 -05:00
tildearrow
9bd15bd513
VERA: bring up actual emulation core
2022-03-10 15:51:27 -05:00
tildearrow
587fecd11d
temporarily strip out emulation code
2022-03-10 14:40:45 -05:00
cam900
b42ceae1cb
Code style
2022-03-11 04:15:04 +09:00
cam900
36b336c7f4
A && B
2022-03-11 04:11:23 +09:00
cam900
3b6559a5a1
Merge branch 'master' of https://github.com/tildearrow/furnace into gui_systems
2022-03-11 03:53:51 +09:00
cam900
f3e4810dda
Make some pitch command work in ADPCM-B, still partially and 01xx command is broken
...
Fix sample check routine
Remove dac* variables, No way to enable DAC mode in YM2610*
2022-03-11 03:47:36 +09:00
cam900
8d447542e1
Use lamda
2022-03-11 02:42:27 +09:00
Waldemar Pawlaszek
d0b76ed5a6
Updated Lynx register sheet
2022-03-10 17:36:27 +01:00
Natt Akuma
6bb9843fb9
Fix wrong noise sampling operation
...
This really shouldn't have an effect on anything though...
2022-03-09 18:06:07 +07:00
Natt Akuma
eb3a73c38b
Mute on pan registers instead
2022-03-09 00:58:21 +07:00
cam900
66eb40e55e
Extract X1-010 core from submodule
2022-03-09 01:00:09 +09:00
cam900
6c432bc42e
Allow Left waveform can be invertable,
...
Improvement documents
2022-03-09 00:50:10 +09:00
cam900
da73c365e4
Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
2022-03-08 23:30:57 +09:00
Natt Akuma
43cfb09acf
Merge branch 'master' of https://github.com/tildearrow/furnace into x16
2022-03-08 17:53:00 +07:00
Natt Akuma
7711069a66
WonderSwan: match DM's volume command behavior ( #266 )
2022-03-08 10:51:37 +01:00
Natt Akuma
e05052d9d7
Properly case PCM channel
2022-03-08 15:44:14 +07:00
tildearrow
b21aecf285
WonderSwan: make macOS happy
2022-03-07 23:38:36 -05:00
cam900
2e6cc9fc7c
Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
...
# Conflicts:
# CMakeLists.txt
# papers/doc/7-systems/README.md
# src/engine/dispatch.h
# src/engine/dispatchContainer.cpp
# src/engine/playback.cpp
# src/engine/sysDef.cpp
# src/gui/gui.cpp
2022-03-08 13:38:24 +09:00
tildearrow
1bc8bc8746
OPL: proper frequency on OPL1/2
2022-03-07 23:23:18 -05:00
tildearrow
09655f7d57
WonderSwan: fix build
2022-03-07 23:09:42 -05:00
tildearrow
0210548291
swan let's go
...
Add WonderSwan support and flatten second chip checks in VGM export into variables
2022-03-07 23:05:32 -05:00
tildearrow
bd00165ded
OPL: it's coming together
2022-03-07 22:52:32 -05:00
tildearrow
36db137e8f
OPL: absolute mess up
...
now it kinda works
2022-03-07 22:28:33 -05:00
tildearrow
cdd45bb18c
allow detune 4
2022-03-07 22:28:20 -05:00
tildearrow
ec007b4443
OPL: more work - still not there yet
2022-03-07 18:19:25 -05:00
tildearrow
03d2f87804
OPL: some work - still does not work
2022-03-07 17:07:29 -05:00
Natt Akuma
7704dc0d79
Fix volume calculation sometimes not working
2022-03-07 23:49:52 +07:00
cam900
3f4966096a
Fix info
2022-03-08 00:44:37 +09:00
cam900
26470d594e
Actually PCM frequency limit
2022-03-08 00:43:16 +09:00
cam900
65149a466f
Fix accidently auto-generated spaces
2022-03-08 00:15:21 +09:00
Natt Akuma
bbaf31d0c2
Make register view work again
2022-03-07 19:08:18 +07:00
Natt Akuma
b8ea64b801
Rename WS to Swan
2022-03-07 19:04:20 +07:00
Natt Akuma
3b88786ffb
Merge branch 'master' of https://github.com/tildearrow/furnace into x16
2022-03-07 16:46:32 +07:00
Natt Akuma
7f3519b970
Implement VERA noise generation instead of rand()
2022-03-07 16:46:12 +07:00
Natt Akuma
56be067af6
No need to de-duplicate writes here
2022-03-07 15:45:00 +07:00