Commit graph

2357 commits

Author SHA1 Message Date
OPNA2608
3d00e1d784 Fix WIN32 define timing in IGFD
When the compiler hits IGFD, WIN32 is only set if standard extensions are enabled. (Why?)
IGFD identifies Windows via WIN32 instead of _WIN32. (Why?)

- WIN32 is needed for #ifdef-gated Windows-specific methods in the header & code files.
  - There's fallback code in the code file to set WIN32 if _WIN32 or __WIN32__ is set.
    - Which is hit *after* the header gets included, so the header doesn't expose required methods.
      -> Boom, error!

Workaround by moving the fallback into the header.
2022-05-08 00:34:20 +02:00
OPNA2608
58fc35227e Fix outdated calling convention in SAASound (maybe fix MinGW)
https://docs.microsoft.com/en-us/cpp/cpp/stdcall?view=msvc-170

> For compatibility with previous versions, _stdcall is a synonym for __stdcall
> unless compiler option /Za (Disable language extensions) is specified.
2022-05-07 23:31:42 +02:00
tildearrow
24b7dd6f54 GUI: macro UI refactor, part 3
we have a scrollbar (i think)
2022-05-07 16:25:02 -05:00
tildearrow
d4d3cb44b9 GUI: macro UI refactor, part 2
the macro editor is finally back
2022-05-07 02:49:56 -05:00
tildearrow
02680cb389
Merge pull request #389 from OPNA2608/msvc/more_warning_squashing
Fix more MSVC warnings
2022-05-07 02:28:28 -05:00
tildearrow
ff273cc3b9 Masochism Volatile Compiler 2022-05-07 00:08:38 -05:00
tildearrow
aea7bf2112 GUI: is the macro UI back yet 2022-05-06 23:52:26 -05:00
tildearrow
b2953e00fe OPL: fix 4-op muting (I think)
fixes #435
2022-05-06 23:52:14 -05:00
tildearrow
716ef56f03 GUI: macro UI refactor, part 1 - PLEASE READ
- DO NOT USE THIS VERSION! -

to @cam900 and @grauw: do NOT pull this commit yet! it will fail to compile!
2022-05-06 18:01:12 -05:00
tildearrow
81a77a633b GUI: remove classic macro view
after this, some changes to the macro view code will arrive
hopefully these will make the code much cleaner
(NORMAL_MACRO has too many arguments!)
2022-05-06 14:16:27 -05:00
OPNA2608
b35701f938 Maybe just enforce for C++
We don't demand a specific standard for C anyway, maybe that'll trip it up less?
2022-05-06 12:52:50 +02:00
OPNA2608
d0524c025e Forbid standard extensions
Standard or bust.
2022-05-06 12:40:36 +02:00
tildearrow
05af3c147a .ftm loading progress (incomplete, not working) 2022-05-06 01:26:49 -05: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
6e19f5d719 dev93 - Merge branch 'grauw-multipcm-ins' 2022-05-05 21:17:08 -05:00
tildearrow
4548cae022 Merge branch 'multipcm-ins' of https://github.com/grauw/furnace into grauw-multipcm-ins 2022-05-05 21:16:56 -05:00
tildearrow
5ba1833f74 GUI: I am so drunk 2022-05-05 18:23:28 -05:00
tildearrow
6672a886a3 GUI: fix crash when loading instrument
fixes #431
2022-05-05 17:45:18 -05:00
Laurens Holst
3784c4e1d2 MultiPCM instrument type, editor and file ops. 2022-05-05 21:56:48 +02:00
tildearrow
9a2938ff3e GUI: fix values button working as notes 2022-05-05 13:23:06 -05:00
tildearrow
9915fc0c8f GUI: add "don't display multi-system" option 2022-05-05 00:52:15 -05:00
tildearrow
030ba9eaf1 GUI: implement this on the keybind as well 2022-05-04 23:49:33 -05:00
tildearrow
202a528477 dev92 - GUI: customizable channel collapsing! 2022-05-04 23:36:03 -05:00
tildearrow
c3e55ae117 GUI: more improvements to instrument loading
now with an "instrument load always replace" option
2022-05-04 23:11:51 -05:00
tildearrow
99a313b684 GUI: implement instrument load replace 2022-05-04 22:55:11 -05:00
tildearrow
6aefd392ff NES: fix duty effect not working at all 2022-05-04 22:04:18 -05:00
tildearrow
10e8d71745 GUI: part 2 of previous commit 2022-05-04 22:01:19 -05:00
tildearrow
71cef797c6 GUI: only use edit color when pat view is focused 2022-05-04 20:56:26 -05:00
tildearrow
44f1134875 GUI: fix more issues
- macro range is now 128 (it was 127 before)
- fix #407
2022-05-04 18:42:36 -05:00
tildearrow
99b5afd4da here's the new OPLL default instrument
piano_guitar_idk by Weeppiko
2022-05-04 18:20:15 -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
6731edc568 update to-do list 2022-05-04 14:10:37 -05:00
tildearrow
6bd5a9bcb6 prepare for possible .ftm import 2022-05-04 14:10:28 -05:00
tildearrow
467036df2a implement extra FM effects (OPN, OPM and OPZ)
issue #38
2022-05-04 14:09:43 -05:00
tildearrow
28e7b86728 fix sample saving 2022-05-03 17:41:10 -05:00
tildearrow
30e60f643c add extra FM effects to effect post handler
see #38
the last thing left to do is to put these effects on the dispatch code
2022-05-03 17:37:17 -05:00
tildearrow
9dfa2f9cbb dev91 - it's a breaking change 2022-05-03 16:53:25 -05: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
tildearrow
1a6a132a59 aaaaaa 2022-05-03 16:22:24 -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
b8a2c90b61 GUI: add audio load meter to statistics 2022-05-03 02:29:12 -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
7d684654fc
Merge pull request #413 from cam900/osc_debug
Debug improvements
2022-05-03 01:51:18 -05:00
tildearrow
c23ee8e7c9 GUI: put "OK" and "Cancel" buttons in the bottom 2022-05-03 01:48:57 -05:00