Commit graph

123 commits

Author SHA1 Message Date
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
tildearrow
211208ed53 GUI: fix UI scaling on macOS
required patching ImGui D:
but hey, it mostly works! issue #35
2022-02-08 02:04:23 -05:00
tildearrow
045dfa679a release v0.5.4
sorry this doesn't include too many features as it is another critical
bug fix release
2022-02-05 16:47:22 -05:00
tildearrow
50516d86ae release v0.5.3 2022-02-05 04:42:10 -05:00
tildearrow
34ec189be5 release v0.5.2
FAST
2022-02-05 03:10:19 -05:00
tildearrow
26cd33bae6 fix windows build 2022-02-02 01:06:29 -05:00
tildearrow
09106f661f fix Termux build 2022-02-01 16:05:01 -05:00
Christoph Neidahl
c83e146d11
Improve devendoring & other CMake stuff (#21)
* Improve devendoring

* Add warning flags for own C++ code

For https://github.com/tildearrow/furnace/pull/12#issuecomment-1017330467.

* Document new CMake options

* pkg-config stuff

* Warnings stuff for MSVC yay

* Use more specific linking vars & functions

* Fix Linux icon location

* DEPENDENCIES_LEGACY_LDFLAGS for JACK too
2022-02-01 15:50:25 -05:00
tildearrow
7c9beca93f release 0.5.1 2022-02-01 03:50:11 -05:00
tildearrow
82e24c0db0 useless change 2022-01-31 16:33:37 -05:00
tildearrow
0e633ea69b GUI: add a debug window 2022-01-27 00:29:16 -05:00
tildearrow
8bcab6e139 VGM export: write resets and GD3 tag
may be non-standard compliant (yet)
also it crashes foobar2000 for some reason but this will be fixed
2022-01-25 18:46:27 -05:00
tildearrow
9d2032d627 VGM export: Arcade sample looping 2022-01-24 17:13:47 -05:00
OPNA2608
c061b36720 Fix MSVC linking 2022-01-21 13:47:09 +01:00
tildearrow
61639e5123 release v0.4.6
don't worry, this won't be the final release
2022-01-21 04:42:18 -05:00
tildearrow
8ab97a959c add ps_fopen to properly handle fopen on Windows
fixes #22
2022-01-20 05:04:03 -05:00
tildearrow
b66918bf62 don't compile icon.c under Windows either
MSVC weirds out
2022-01-20 01:46:03 -05:00
tildearrow
068fb0f3ce release v0.4.5 2022-01-19 17:02:27 -05:00
tildearrow
379d90ae4d add more fonts
partially related to an issue when displaying non-Latin characters
however a true fix isn't coming yet as I haven't figured out a way
to load glyphs during run-time as needed
2022-01-19 16:58:01 -05:00
tildearrow
62a499644f add wavetable saving 2022-01-19 05:10:06 -05:00
tildearrow
7c40948680 release v0.4.4 2022-01-19 04:34:12 -05:00
tildearrow
dce289a5a0 add early code for saving instruments 2022-01-19 03:28:29 -05:00