Commit Graph

144 Commits

Author SHA1 Message Date
tildearrow 25eb3e4aae furnace II - the final fix 2022-03-13 22:21:01 -05:00
tildearrow 0874d58fb8 damn it 2022-03-13 22:02:50 -05:00
tildearrow 5e77b47467 system file picker anyone? DO NOT COMPILE! 2022-03-13 18:32:35 -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 9bd15bd513 VERA: bring up actual emulation core 2022-03-10 15:51:27 -05:00
cam900 75b635229c Unnecessary changes 2022-03-09 01:01:40 +09:00
cam900 66eb40e55e Extract X1-010 core from submodule 2022-03-09 01:00:09 +09: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
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
tildearrow 63456a88d8 get rid of SDL1 check
see pull request #244
2022-03-02 16:10:18 -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 1e98f0c4a1 sample system rewrite! **PLEASE READ**
this commit mostly rewrites the sample system.
as of now samples can be ADPCM, 8-bit, BRR or 16-bit
or something...

consider this VERY EXPERIMENTAL.
if you find any issues REPORT THEM immediately.

it's nearly 4am...
2022-02-24 03:57:45 -05: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 869f799299
Merge branch 'tildearrow:master' into master 2022-02-21 19:58:30 +01:00
tildearrow fd28d1aef0 add support for building without RtMidi 2022-02-21 13:47:49 -05:00
Waldemar Pawlaszek 1d5813aba3
Merge branch 'tildearrow:master' into master 2022-02-21 12:53:52 +01:00
tildearrow d0df796c12 release v0.5.7 2022-02-21 03:19:42 -05:00
Waldemar Pawlaszek 8a8c8406b7
Merge branch 'tildearrow:master' into master 2022-02-21 05:58:25 +01:00
tildearrow 197d3ab39d OR SYSTEM_RTMIDI 2022-02-20 17:58:12 -05:00
Waldemar Pawlaszek 2e4c7ec60a Initial Atari Lynx Support 2022-02-20 18:15:15 +01:00
tildearrow 840be64314 split config management 2022-02-18 13:11:04 -05:00
tildearrow 84cf4ec046
Merge pull request #187 from TheEssem/patch-1
Change LICENSE install location
2022-02-18 13:05:19 -05:00
tildearrow 1a95e18f13 split system definition code
engine.cpp is now shy of 2500 lines
2022-02-18 13:04:33 -05:00
tildearrow 650beebe99 split VGM ops code 2022-02-18 12:58:36 -05:00
Essem bc0814babd
Change LICENSE install location
Necessary for packaging on some distros
2022-02-18 11:57:46 -06:00
tildearrow c39d3898b4 split file ops code 2022-02-18 12:39:45 -05:00
tildearrow f735617ee3 GUI: code split, part 4
gui.cpp now 5600 lines
2022-02-17 22:59:11 -05:00
tildearrow dde2849a16 GUI: code split, part 3 2022-02-17 22:40:23 -05:00
tildearrow b3d26d3309 GUI: code split, part 2 2022-02-17 14:04:39 -05:00
tildearrow 0feba09de2 GUI: code split, part 1 2022-02-17 13:08:17 -05:00
tildearrow 7bc0f530a3 oh I forgot about CMake and Info.plist! 2022-02-17 03:38:54 -05:00
tildearrow 91579e09eb GUI: don't abort on font load failure
paving the way for custom fonts
2022-02-14 18:00:04 -05:00
tildearrow 2f766553e8 add SAASound as an alternate SAA1099 core
DOES NOT WORK YET
2022-02-13 17:02:49 -05:00
tildearrow aa0e318543 add RtMidi for eventual MIDI support 2022-02-13 15:02:43 -05:00
Plane dbed326a58 Tell MSVC source files are in UTF-8 format
On some locales (e.g. Japanese) MSVC will fail to build Furnace
because it makes an incorrect assumption about the encoding of
source files.  In particular, string literals in engine.cpp cause
compile errors.  This probably doesn't show up in CI because of
the difference in locale.

This patch adds the `/source-charset:utf-8` compiler flag for MSVC,
which tells it the encoding of the source files.

With this change, MSVC appears to build Furnace properly.  Tested
with Visual Studio Professional 2022.
2022-02-10 21:26:13 -05:00
OPNA2608 f56d771a4d Fix ObjC code linking 2022-02-10 21:25:23 -05:00
tildearrow 569de9d81a add preliminary ymfm OPZ code 2022-02-09 23:19:02 -05:00
tildearrow 589b887928 release v0.5.5 2022-02-09 03:44:48 -05:00