Commit graph

5315 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
cam900 9df2500195 Merge branch 'master' of https://github.com/tildearrow/furnace into ay_divider
* 'master' of https://github.com/tildearrow/furnace:
  GUI: macro UI refactor, part 2
  Masochism Volatile Compiler
  GUI: is the macro UI back yet
  OPL: fix 4-op muting (I think)
  GUI: macro UI refactor, part 1 - PLEASE READ
  GUI: remove classic macro view
  Fix more MSVC warnings
2022-05-07 23:04:01 +09:00
cam900 0b0a6dbf28 Fix divider again, split tone and envelope clock divider 2022-05-07 23:00:22 +09:00
cam900 234f418f65 Merge branch 'ay_divider' of https://github.com/cam900/furnace into ay_divider
* 'ay_divider' of https://github.com/cam900/furnace:
  it isn't necesaary
  .ftm loading progress (incomplete, not working)
  OPZ: fix fixed frequency effects
  OPZ: fix EGShift emulation
  GUI: I am so drunk
  GUI: fix crash when loading instrument
  MultiPCM instrument type, editor and file ops.
  GUI: fix values button working as notes
  GUI: add "don't display multi-system" option
  GUI: implement this on the keybind as well
2022-05-07 21:54:21 +09: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
LoKiToon da8a7fa8dd
Add files via upload 2022-05-07 08:34:19 +03:00
LoKiToon b8dc46d641
Merge branch 'tildearrow:master' into master 2022-05-07 08:16:12 +03:00
LoKiToon 70dea89dc1
Add files via upload 2022-05-07 08:15:36 +03:00
tildearrow ff273cc3b9 Masochism Volatile Compiler 2022-05-07 00:08:38 -05:00
LoKiToon d0a86d7c2a
Merge branch 'tildearrow:master' into master 2022-05-07 08:06:01 +03: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
cam900 3c7ce65db7
it isn't necesaary 2022-05-06 19:18:55 +09:00
cam900 76997fd5ba
Merge branch 'master' into ay_divider 2022-05-06 19:17:34 +09: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
cam900 96f303ac9f Fix configuration description 2022-05-05 15:43:59 +09: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
cam900 9109d2c64f Merge branch 'master' of https://github.com/tildearrow/furnace into ay_divider
* 'master' of https://github.com/tildearrow/furnace:
  dev92 - GUI: customizable channel collapsing!
  GUI: more improvements to instrument loading
  GUI: implement instrument load replace
  NES: fix duty effect not working at all
  GUI: part 2 of previous commit
  GUI: only use edit color when pat view is focused
  GUI: fix more issues
  here's the new OPLL default instrument
  OPL: fix channel muting - PLEASE READ!
  OPLL: fix compatible drum mode
  the final part of extra FM effects
  implement extra FM effects (OPLL and OPL)
  update to-do list
  prepare for possible .ftm import
  implement extra FM effects (OPN, OPM and OPZ)

# Conflicts:
#	src/engine/engine.h
2022-05-05 13:39:58 +09:00
cam900 7b91045bac Add documents
Important: it will break previously baked modules with 5B and AY8930
2022-05-05 13:38:10 +09: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