tildearrow
f8896ed64c
T 6 W 2 8
2022-10-12 00:12:56 -05:00
cam900
f8c494e1dd
Merge branch 'master' into es5506_alt
2022-10-09 20:05:15 +09:00
tildearrow
f76e4044c7
prepare for Virtual Boy
2022-10-08 19:37:22 -05:00
cam900
66f7ab688b
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
2022-10-02 10:52:14 +09:00
tildearrow
5e18edb229
early MSM5232 work
2022-10-01 03:15:40 -05:00
cam900
987cc113b4
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
2022-09-30 20:01:21 +09:00
tildearrow
48db9a1d0c
chip flags rewrite, part 4 - DO NOT USE
...
the next part is to drop systemFlagsOld completely
and then to fix the GUI
2022-09-29 20:13:40 -05:00
cam900
0a49d4bfd0
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
2022-09-25 18:32:06 +09:00
Natt Akuma
0ee6d761f5
Merge branch 'master' of https://github.com/tildearrow/furnace into snes
2022-09-18 18:33:25 +07:00
tildearrow
8d280fd9a3
C64: bind reSIDfp
2022-08-29 03:26:49 -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
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
3119ed8cc5
Merge remote-tracking branch 'upstream/master' into es5506_alt
2022-06-26 00:47:34 +09:00
Natt Akuma
f3a90d554c
WIP SNES support, part 1
2022-06-10 03:19:31 +07: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
cam900
32152fd89b
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace : (53 commits)
prepare for better backward writing
VGM export: fix oops
GUI: drag-and-drop ins/wave/sample loading
GUI: add "set loop" to sample editor
MSM6295: VGM export!
oops
MSM6295: add rate select effect (20xx)
update meteor shower
MSVC is better than GCC right?
update to-do list
door into summer
GUI: implement input for touch events
GUI: update SDL hints
fix Termux build
add another demo song
add demos/ecolove.fur
update to-do list
update demos/README.md
add new demo songs
dev99 - major Fractal system change
...
# Conflicts:
# src/engine/dispatch.h
# src/engine/platform/genesis.cpp
# src/engine/playback.cpp
# src/engine/song.h
# src/engine/vgmOps.cpp
2022-05-29 13:47:39 +09:00
tildearrow
a776129c3d
dev98 - YM2612: add Fractal system
...
partially done
2022-05-27 04:02:53 -05:00
cam900
cbf20c6320
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace : (58 commits)
SMS: early Nuked-PSG modding
SMS: add modified Nuked-PSG core
build release and don't strip
strip MinGW builds
FDS: a bit more
FDS: set a post-amp value
FDS: fix NSFplay core low pass filter precision
fix .dmf saving
fix compilation on GCC 12
Fix multithreading on CI
Lynx: why did I not commit this
Lynx: more sample improvements
Lynx: sample improvements
Lynx: add sample support!
GUI: fix wavetable list oversight
WaveSynth: fix phase modulation - again
GUI: fix possible wave editor crash
WaveSynth: fix phase modulation
Lynx: add phase reset macro
fix another fucking IGFD crash bug
...
# Conflicts:
# src/gui/insEdit.cpp
# src/gui/presets.cpp
2022-05-27 13:01:06 +09:00
tildearrow
e3ebe0cb92
SMS: add modified Nuked-PSG core
2022-05-26 18:46:20 -05:00
cam900
17881837ab
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace : (64 commits)
finish wave synth!
update contributing guidelines
Namco WSG: make non-linear slides faster
wave synth work
SoundUnit: fix order of filter bits
GUI: add Namco arcade presets
implement some dual wave synth effects
Y8950: fix ADPCM VGM export
Namco WSG: finish it up
Namco WSG: 8 channel WSG (CUS30) now works
Namco WSG: muting
Namco WSG: 8 channel WSG (15xx) now works
Namco WSG: 3 channel WSG now works
YM2612: change key on/off strategy
GUI: fix scrollbars not working
Please enter the commit message for your changes.
shhhhhhhhhhhh
update to-do list
Whoops
it doesn't work (yet)
...
# Conflicts:
# src/engine/dispatch.h
# src/engine/platform/su.cpp
# src/engine/playback.cpp
# src/engine/sample.cpp
# src/engine/sample.h
# src/engine/song.h
# src/engine/vgmOps.cpp
# src/gui/presets.cpp
2022-05-25 00:52:00 +09:00
tildearrow
8ea60f37c5
MSM6258: start work - DO NOT USE!
2022-05-23 19:01:10 -05:00
tildearrow
f25cd17590
early OKI MSM6295 work
2022-05-23 01:46:58 -05:00
tildearrow
6976e0b75f
auto merge failed
2022-05-20 17:29:29 -05:00
tildearrow
bd8e72e5b2
it doesn't work (yet)
2022-05-20 15:29:09 -05:00
Natt Akuma
27a412c134
Merge branch 'master' of https://github.com/tildearrow/furnace into rf5c68
2022-05-21 03:02:08 +07:00
Natt Akuma
581f6d5d05
Merge branch 'master' of https://github.com/tildearrow/furnace into ymz280b
2022-05-21 02:34:51 +07:00
Natt Akuma
b7a6bf5a0b
Add RF5C68 and RF5C164 support
2022-05-21 01:45:26 +07:00
tildearrow
dad1e71a33
OPNA: ExtCh system copy-paste
2022-05-18 22:49:21 -05:00
Natt Akuma
0ae0c6f703
Add YMZ280B support
2022-05-18 21:04:25 +07:00
cam900
028adf2c8e
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace : (70 commits)
whoops
GUI: AY8930 credits
GUI: fix inability to close subsongs
BANK
OPN: wire up ExtCh system
fix build failure
dev95 - multiple songs in a single file (READ)
DO NOT USE - THIS FAILS - WORK IN PROGRESS
enforce asset limits
old .dmf loading improvements
add AICA and YMZ ADPCM formats
allocate ID for YMZ280B
harden .fur file saver
Fix AY VGM output, Fix presets
preparations for UI improvements
GUI: add more presets
prepare for ExtCh OPN/OPNA
GUI: clarify that lock layout doesn't work yet
GUI: remember last state of order edit mode
GUI: store edit/followOrders/followPattern state
...
# Conflicts:
# src/engine/fileOps.cpp
# src/engine/platform/ym2610.cpp
# src/engine/platform/ym2610b.cpp
# src/engine/sample.cpp
# src/engine/sample.h
# src/engine/sysDef.cpp
# src/gui/doAction.cpp
# src/gui/sysConf.cpp
2022-05-18 03:09:55 +09:00
cam900
2a19834e14
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace :
full linear pitch is now the default
add a full linear pitch mode, part 7
X1-010: implement linear pitch (part 6)
VERA: implement full linear pitch (part 5)
YM2610(B): implement full linear pitch (part 4)
add a full linear pitch mode, part 3
YM2612: implement full linear pitch (part 2)
update readme
re-enable warnings are errors on MSVC
YM2612: early full linear pitch experiment
GUI: window movement only by clicking on title bar
Fix GCC errors 2
Fix GCC errors
Remove SCC from TODO.md
SCC has no config flags currently
Add SCC and SCC+ support
# Conflicts:
# CMakeLists.txt
# src/engine/dispatchContainer.cpp
# src/gui/guiConst.cpp
2022-05-16 00:37:07 +09:00
tildearrow
d5db7775bd
OPN: wire up ExtCh system
2022-05-15 02:00:36 -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
7218710268
add Y8950 system
2022-05-13 16:52:44 -05:00
tildearrow
f2db15b2ce
add OPNA chip (work in progress)
2022-05-13 02:52:43 -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
a3fc76c984
Add SCC and SCC+ support
2022-05-10 11:25:10 +07:00
cam900
ec5069ad21
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace :
document (NON-WORKING) extended op param effects
FDS: add NSFPlay core
NES: fix Furnace-style DPCM
SoundUnit: fix PCM pitch
SoundUnit: PCM support
# Conflicts:
# src/engine/sample.h
# src/gui/debugWindow.cpp
2022-05-03 11:11:43 +09:00
cam900
e136db6d7a
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace : (26 commits)
prepare for #38
NES: DPCM work!
fix bug caused by new renderSamples approach
NES: prepare for DPCM
OPZ: more fixed frequency mode fixes
OPZ: possibly fix fixed freq emulation
OPZ: fix muting
OPL: fix panning
damn it
per-channel oscilloscope, part 10
NES: NSFPlay per-channel osc
NES: NSFPlay muting
NES: now fix tri_mute
NES: finally
fix typo in playback engine
NES: wire up NSFplay
now fix it damn it
now move these files
add readme
convertir de Shift-JIS a UTF-8
...
# Conflicts:
# src/engine/engine.cpp
# src/engine/engine.h
# src/engine/platform/nes.cpp
# src/engine/vgmOps.cpp
# src/gui/stats.cpp
2022-05-03 11:07:50 +09:00
tildearrow
62289d924e
FDS: add NSFPlay core
2022-05-02 16:53:55 -05:00
tildearrow
cb7aa4aa05
NES: wire up NSFplay
...
no muting supported for now
see #27
2022-05-01 23:20:20 -05:00
cam900
37216e323f
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace :
fix MSVC oh my
improvements to sysDef and UX changes
# Conflicts:
# src/engine/dispatchContainer.cpp
# src/gui/insEdit.cpp
2022-04-27 21:21:08 +09:00
cam900
0209ebda03
Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
...
* 'master' of https://github.com/tildearrow/furnace :
sysDef refactor, part 2
sysDef refactor, part 1 - PLEASE READ NOTE
prepare for macroInt preview in instrument editor
GUI: fix #400
fix metronome in low-latency mode
# Conflicts:
# src/engine/dispatch.h
# src/engine/dispatchContainer.cpp
# src/engine/instrument.h
# src/engine/song.h
# src/engine/sysDef.cpp
# src/gui/dataList.cpp
# src/gui/gui.h
# src/gui/guiConst.cpp
2022-04-27 19:52:04 +09:00
tildearrow
78bdd98e0b
improvements to sysDef and UX changes
...
- "no undo" in clear option
- only display instrument types depending on current systems
2022-04-27 04:48:56 -05:00
tildearrow
24d60507e7
sysDef refactor, part 2
...
to @cam900 and @grauw: you may now pull this to your branch.
check out the comments in sysDef.cpp though.
2022-04-27 00:56:15 -05:00
cam900
29ea6dc360
Partially ES5506 support (not working yet!)
...
Add sample related enums
Add support for backward/pingpong loop, loop end position
Structize Notemap in sample instrument
2022-04-21 01:52:37 +09:00
tildearrow
fddd05dc1a
improve logging facility
...
we have a log viewer within the program now
2022-04-10 22:12:02 -05:00
tildearrow
38ca437190
DC offset improvements
2022-04-09 18:25:25 -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
2da96a7e76
initial MMC5 bring-up
2022-04-06 00:34:12 -05:00
tildearrow
ac3772c024
initial FDS bring-up
2022-04-03 22:37:16 -05:00
tildearrow
4422ff7695
Merge branch 'vrc6' of https://github.com/cam900/furnace into cam900-vrc6
2022-03-27 22:16:04 -05: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
cam900
73267444fc
Merge branch 'master' into n163
2022-03-23 03:26:09 +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
Natt Akuma
47c5c34e1c
Add PET support
2022-03-21 21:02:51 +07: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
a65df5cdab
OPL: pretend to be YMU and enable SOME emulation?
2022-03-15 00:33:57 -05: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
ab8bace7f4
change default SAA1099 core to SAASound
2022-03-12 12:53:53 -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
Natt Akuma
43cfb09acf
Merge branch 'master' of https://github.com/tildearrow/furnace into x16
2022-03-08 17:53:00 +07: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
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
03d2f87804
OPL: some work - still does not work
2022-03-07 17:07:29 -05: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
840a6fa306
Add WonderSwan support
2022-03-07 15:44:59 +07:00
cam900
fca4bdc1ee
Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
...
# Conflicts:
# .gitmodules
# CMakeLists.txt
2022-03-07 02:35:14 +09:00
cam900
4a83c7c5a7
Add Seta/Allumer X1-010 Support
...
its 16 channel wavetable/PCM chip, with (optional) stereo support.
Its also has envelope, this feature has similar as AY PSG's one but its shape is also stored at RAM, and each nibble in envelope data is for each output: so i decided to added some feature for more stereo-ish envelope.
Split: Envelope shape will be splitted to Left and Right half for each output.
HInv, Vinv: Envelope shape will be Horizontally/Vertically mirrored the left one.
Max sample length is sample bank size of Seta 2 arcade hardware (currently not emulated yet, nor it doesn't support on VGM).
Chip id is temporary, it can be changed with to suggestions.
2022-03-07 02:31:03 +09:00
tildearrow
c34b8325c9
more OPL preparation
...
DOES NOT WORK YET - JUST A PLACEHOLDER
2022-03-05 18:18:08 -05:00
tildearrow
84ba63db24
add PC speaker system
...
haha
2022-03-04 18:18:43 -05:00
Natt Akuma
9abf872ff3
Add VERA support for Commander X16
2022-03-04 18:20:38 +07:00
cam900
1631af8f8e
Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b
2022-03-02 01:18:36 +09:00
tildearrow
90ad8b5268
OPLL: 91%
...
GUI improvements
soon I gotta allocate macros for the YMU759 params
TODO:
- FM macros
- drums mode
- muting
2022-02-28 14:13:14 -05:00
tildearrow
14749e165e
OPLL: VRC7
2022-02-28 02:19:27 -05:00
cam900
ee013ad7a9
Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b
2022-02-27 06:41:11 +09:00
tildearrow
271b3fb0fe
OPLL: 80%
...
accuracy fixes pending though
then macros and then drum mode
2022-02-26 03:27:37 -05:00
cam900
cd4c876c5e
Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b
...
# Conflicts:
# src/engine/engine.cpp
# src/engine/playback.cpp
2022-02-25 23:47:28 +09:00
tildearrow
37f850c6c4
prepare for OPLL system - DOES NOT WORK
2022-02-25 04:26:01 -05:00
cam900
1e2d5694b9
Prepare to support YM2610B and with Extended channel 3 mode
...
Allow 8 bit volume for YM2610 ADPCM-B
Remove sample mode macro in YM2610, it's always enabled and seperated channels.
TODO: ADPCM-B is still not implemented, FM Channel 2 is silenced in extended channel 3 configuration
2022-02-25 01:02:35 +09:00
tildearrow
e4b9a6d1d9
compound system flattening, part 1
...
as of now compound systems (Genesis and Arcade) are translated to
separate chips.
this improves audio quality and makes things easier.
it also allows you to change the volume of each chip on a Genesis.
also adds SegaPCM system with 16 channels!
2022-02-23 02:52:30 -05:00
tildearrow
e6ee28ce0d
Merge branch 'cps2' of https://github.com/superctr/furnace into superctr-cps2
2022-02-22 18:21:57 -05:00
Ian Karlsson
b3908216f8
Implement QSound support
2022-02-22 11:36:12 +01:00
Waldemar Pawlaszek
2e4c7ec60a
Initial Atari Lynx Support
2022-02-20 18:15:15 +01:00
tildearrow
b9832abbeb
license clarification, part 3
2022-02-14 22:12:20 -05:00
tildearrow
9ea510c351
SAA1099: implement SAASound core option
2022-02-13 17:49:24 -05:00
tildearrow
91cbf9947b
NOTICE: ADPCM-B DOES NOT WORK YET
...
it's selectable now but the channel is useless (for now)
2022-02-10 03:35:08 -05:00
tildearrow
632f17862e
better blip_buf excess strategy
...
fixes #133
2022-02-07 21:31:58 -05:00
tildearrow
a93a9c19f3
add "force mono audio" option and fix flags not be
...
ing set after a dispatch reset
2022-02-04 17:04:36 -05:00
tildearrow
ccfe3bdd97
Genesis: add ability to use ymfm instead of Nuked
2022-02-02 23:08:45 -05:00
tildearrow
d8e8fd4031
SAA1099 doesn't like DC offset correction
2022-01-20 23:09:04 -05:00
tildearrow
18df843864
reduce clicking on play/loop
2022-01-19 21:04:51 -05:00
tildearrow
a377ba1f96
fix clicking if chip rate is less than audio rate
2022-01-17 22:15:00 -05:00
tildearrow
ecd2955c0f
honor arcade core setting
2022-01-17 16:27:57 -05:00
tildearrow
6ca3c4ec4d
dynamic audio settings changing
2022-01-17 01:42:26 -05:00
tildearrow
113a1577b6
do the Amiga
2022-01-15 17:28:33 -05:00