Commit Graph

1622 Commits

Author SHA1 Message Date
tildearrow ead4a05348 GUI: much more stable osc view 2022-06-03 03:32:24 -05:00
tildearrow cc80bfbd81 PC speaker: add alternative output methods 2022-06-03 01:18:32 -05:00
tildearrow 4262674e61 GUI: remove debug text in per-chan osc 2022-06-02 01:36:28 -05:00
tildearrow ddcd76328d add ability to move sub-songs 2022-06-01 18:50:30 -05:00
tildearrow 8ef7f91c93
Merge pull request #505 from lunathir/master
Small Fractal fixes
2022-05-31 19:04:36 -05:00
tildearrow b8a0084587 implement volMacroLinger compatibility flag
issue #425
2022-05-31 18:34:23 -05:00
tildearrow a945ee5353 GUI: disclaimer about OPLL drums volume slider 2022-05-31 18:06:45 -05:00
tildearrow 9d10b5bf2b OPL: complete the drum instrument type
#310
2022-05-31 17:44:52 -05:00
tildearrow 107c82106c GUI: only set X11 window type if SDL >= 2.0.22
fixes #509
2022-05-31 13:14:43 -05:00
freq-mod 61e765c916
more presets (#488)
* more presets

* oops

consistency anyone?

* alpha 68k was an alpha denshi system

* more presets

6295 edition. Requires fact-checking, and maybe, cherrypicking

* facepalm

* #342 presets

that should conclude it

* address feedback

* naming update

* MSM6295 wasnt used in MLC

* address feedback part 2

and adding OKI chips to the sample category
2022-05-31 15:23:38 +02:00
tildearrow dfc8706f5a GUI: more to it 2022-05-31 04:09:38 -05:00
tildearrow 54e93db207 GUI: try using FFTW for per-chan osc wave center
not reliable yet
2022-05-31 03:24:29 -05:00
tildearrow c306b33603 GUI: more osc stuff 2022-05-30 22:22:53 -05:00
tildearrow fc0a51ed56 GUI: add oscilloscope window size setting
and also remember last zoom/winSize value
2022-05-30 21:40:07 -05:00
tildearrow bc98673a20 GUI: double click selects column 2022-05-30 19:02:24 -05:00
tildearrow e9f17168a4 prepare for OPL drums instrument type
#310
2022-05-30 18:37:07 -05:00
Lunathir 5dacf631e1 Small Fractal fixes: add YM2612 settings to chip config and fixed YM2612 Fractal presets 2022-05-29 15:24:06 -07:00
tildearrow 1cb07eb1a2 MSM6295: add more rates 2022-05-29 13:29:18 -05:00
tildearrow 5f4db8ca0b GUI: improve unified data view 2022-05-29 02:59:11 -05:00
tildearrow 84d4ca63c2 GUI: sample editor preview in selection 2022-05-29 02:13:08 -05:00
tildearrow 08543a2dc9 GUI: drag-and-drop ins/wave/sample loading 2022-05-28 18:51:05 -05:00
tildearrow 5de31f510c GUI: add "set loop" to sample editor 2022-05-28 18:37:49 -05:00
tildearrow d1b928dbd9 MSVC is better than GCC right? 2022-05-27 21:02:19 -05:00
tildearrow e194ff1481 GUI: implement input for touch events 2022-05-27 16:10:37 -05:00
tildearrow ab91147c16 GUI: update SDL hints 2022-05-27 15:55:20 -05:00
ZeroByteOrg 0846f66a7e Removed merge conflict tag from gui.cpp 2022-05-27 13:00:23 -05:00
ZeroByteOrg 8af85096ff Fixed incorrect conflict-resolution in gui.cpp line 3049 2022-05-27 09:36:24 -05:00
ZeroByteOrg dcba41c6e9 Fixed mmlString[32] in gui.h 2022-05-27 09:36:24 -05:00
ZeroByteOrg b034e3c5da Commander X16 file export: ZSM format 2022-05-27 09:36:24 -05:00
tildearrow a776129c3d dev98 - YM2612: add Fractal system
partially done
2022-05-27 04:02:53 -05:00
tildearrow 0b7d27dc29 YM2612: add reverse sample playback 2022-05-27 02:47:44 -05:00
tildearrow 13acffa427 GUI: store piano options in config 2022-05-27 01:13:33 -05:00
tildearrow d0adbc444e GUI: more channel dragging improvements 2022-05-27 01:08:11 -05:00
tildearrow e8af633f10 GUI: improve channel swapping 2022-05-27 01:04:12 -05:00
tildearrow 3651027d99 a 2022-05-27 00:29:29 -05:00
tildearrow efaca3b094
Merge pull request #496 from cam900/largecolumns_alt
Allow more than 64 columns in Dear ImGUI (patched)
2022-05-27 00:19:21 -05:00
tildearrow 5d1785fb38 GUI: add timing debug info 2022-05-27 00:19:10 -05:00
cam900 67a7f39d9a Allow more than 64 columns in Dear ImGUI (patched)
Improves Channel window displays, with System info.
2022-05-27 13:38:45 +09:00
tildearrow 33dc18bac2 GUI: add pattern cell spacing settings 2022-05-26 22:26:44 -05:00
tildearrow 3a9ef81fe0
Merge pull request #494 from MAHBOD-85/MAHBOD-85-patch-1
Modern layout fix
2022-05-26 22:02:40 -05:00
tildearrow e3ebe0cb92 SMS: add modified Nuked-PSG core 2022-05-26 18:46:20 -05:00
Mahbod-Karamoozian 186dd8c522
Modern layout fix
This fixes the problem that is present in raijin's layout
2022-05-26 23:44:04 +04:30
tildearrow f8794ae9a4 GUI: fix wavetable list oversight 2022-05-25 23:50:11 -05:00
tildearrow 7750a9b9f3 GUI: fix possible wave editor crash 2022-05-25 12:18:11 -05:00
tildearrow 42a082b2a7 Lynx: add phase reset macro 2022-05-25 00:28:47 -05:00
tildearrow 979cb63c5b GUI: fix .cfgc/.cfgk extension duplication 2022-05-24 12:46:51 -05:00
tildearrow 3932a82d14 GUI: add frame shading setting 2022-05-24 03:49:52 -05:00
tildearrow 8dde6a604e add rounding to AddRectFilledMultiColor 2022-05-24 03:30:27 -05:00
tildearrow 08d85869a9 GUI: slight changes to edit controls
- align classic
- stretch compact vertical
2022-05-24 03:06:17 -05:00
tildearrow d490746325 GUI: finish lock layout 2022-05-24 02:38:10 -05:00
tildearrow 49943aba76 GUI: add setting to make osc escape bounds 2022-05-23 17:42:25 -05:00
tildearrow f8d851cbc2 the Namco C163 trial 2022-05-23 16:01:35 -05:00
tildearrow 402a1d06cf more chip naming improvements 2022-05-23 15:28:38 -05:00
tildearrow 278979a2f2 change names of 15xx/CUS30 to C15 and C30 2022-05-23 15:08:29 -05:00
tildearrow d3edc58cb1 MSM6295: add clock rate flag 2022-05-23 03:13:22 -05:00
tildearrow 16afb6d7be GUI: hacky implementation of lock layout 2022-05-22 18:20:53 -05:00
tildearrow 393d1c018d dev97 - add old octave boundary compat flag 2022-05-22 13:25:59 -05:00
tildearrow 806153fd8e finish wave synth! 2022-05-22 03:14:46 -05:00
tildearrow 367d14357c wave synth work
now there is a preview
2022-05-21 18:36:15 -05:00
tildearrow 61916be495 SoundUnit: fix order of filter bits 2022-05-21 16:04:06 -05:00
tildearrow 4bbcb2dd35 GUI: add Namco arcade presets 2022-05-21 16:03:54 -05:00
tildearrow 315c2645d2 Namco WSG: finish it up 2022-05-21 02:56:36 -05:00
tildearrow 9162e8e241 Namco WSG: 8 channel WSG (CUS30) now works 2022-05-21 02:16:38 -05:00
tildearrow dca2aec606 GUI: fix scrollbars not working 2022-05-20 21:57:41 -05:00
tildearrow c9833bd58e shhhhhhhhhhhh 2022-05-20 17:29:59 -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 251734bd04 prepare for the last chips for 0.6pre1
YMZ280B is counted. don't worry.
2022-05-20 02:43:39 -05:00
tildearrow a34481205a GUI: more mobilework 2022-05-19 16:35:00 -05:00
tildearrow 769a89852f GUI: scroll instrument/wave/sample list when
selecting item
2022-05-19 13:06:26 -05:00
tildearrow e63b83eeb3 remove AICA and X68000 ADPCM sample types 2022-05-19 04:35:39 -05:00
Natt Akuma b70ea9af57 Change YMZ ADPCM type back to 3
Also fix some other mistakes
2022-05-19 12:39:38 +07:00
tildearrow dad1e71a33 OPNA: ExtCh system copy-paste 2022-05-18 22:49:21 -05:00
tildearrow 51d09ba407 GUI: early mobile UI 2022-05-18 18:42:59 -05:00
Natt Akuma 0ae0c6f703 Add YMZ280B support 2022-05-18 21:04:25 +07:00
tildearrow 42e8bfebbd GUI: same size for piano option buttons 2022-05-18 00:31:01 -05:00
tildearrow 255fc4cc25 GUI: even more piano work
- don't allow piano window to be moved if clicking on piano
- only treat left click as a touch point
2022-05-18 00:23:13 -05:00
tildearrow cfa05143ab dev96 - add virtual tempo 2022-05-18 00:05:25 -05:00
tildearrow f1ca53561f GUI: more piano/input pad work 2022-05-17 18:55:44 -05:00
tildearrow 68b5522070 GUI: turn sub-song removal into a warning
issue #466
2022-05-17 17:21:29 -05:00
tildearrow 80165094f0 GUI: add a value input pad 2022-05-17 16:11:59 -05:00
tildearrow 40a63433c5 GUI: prepare for the input pad 2022-05-17 15:48:37 -05:00
tildearrow 63d09c0f54 GUI: piano note input 2022-05-17 15:28:27 -05:00
tildearrow 72645e9e13 GUI: piano note playback 2022-05-17 15:20:56 -05:00
tildearrow f96d5b4e81 GUI: add touch input primitives 2022-05-17 12:46:52 -05:00
tildearrow b5c336295f GUI: add option to clear orders 2022-05-17 01:46:34 -05:00
tildearrow c4614bff30 GUI: implement "clear all subsongs" 2022-05-17 01:42:21 -05:00
tildearrow b8a4fdb4c6 GUI: fix crash when deleting current subsong 2022-05-17 01:15:31 -05:00
tildearrow 5a0c715ba0 pick nits: the sequel 2022-05-16 20:49:31 -05:00
James Alan Nguyen ec80a2218c Merge branch 'master' into feature/Moar-patch-bank-support-part3 2022-05-17 11:36:34 +10:00
tildearrow 0ae105ded3 hide .ftm format 2022-05-16 12:33:12 -05:00
tildearrow c5259066e1 GUI: make backupTimer atomic 2022-05-16 03:09:59 -05:00
James Alan Nguyen e6ad01b0f3 Merge branch 'master' into feature/Moar-patch-bank-support-part3 2022-05-15 18:46:45 +10:00
tildearrow 25ab4467b4 whoops 2022-05-15 02:53:52 -05:00
tildearrow e3d0c517c8 GUI: AY8930 credits 2022-05-15 02:37:39 -05:00
tildearrow 6d0abbfd52 GUI: fix inability to close subsongs 2022-05-15 02:37:33 -05:00
tildearrow c5c612c354
Merge pull request #421 from cam900/ay_divider
Some AY-3-8910, AY8930 enhancements
2022-05-15 02:14:50 -05:00
James Alan Nguyen 0e07b745c7 Merge branch 'master' into feature/Moar-patch-bank-support-part3 2022-05-15 16:49:52 +10:00
tildearrow c5786b61fb dev95 - multiple songs in a single file (READ)
experimental feature! proceed with caution.
if you experience song corruption or crashes, report issue immediately!

files with multiple songs will be readable in older versions of Furnace,
but only the first song will be read in those versions.

issue #199
2022-05-15 01:42:49 -05:00
tildearrow 06ec22d6a5 enforce asset limits 2022-05-14 17:51:05 -05:00
tildearrow ce253230ce add AICA and YMZ ADPCM formats 2022-05-14 16:59:07 -05:00
cam900 f62f6ed77b Fix AY VGM output, Fix presets 2022-05-15 00:58:00 +09:00
James Alan Nguyen 80e8a3155c Merge branch 'master' into feature/Moar-patch-bank-support-part3 2022-05-14 23:22:57 +10:00
cam900 8e50ad8c90
Merge branch 'master' into ay_divider 2022-05-14 22:09:25 +09:00
tildearrow 6f8f8d21f3 preparations for UI improvements
mostly around the system add/change UI
2022-05-14 04:05:29 -05:00
tildearrow f7c56bb05f GUI: add more presets 2022-05-14 02:38:38 -05:00
tildearrow 107d5e1514 prepare for ExtCh OPN/OPNA 2022-05-14 02:38:20 -05:00
tildearrow a8e1c1ceb3 GUI: clarify that lock layout doesn't work yet 2022-05-14 02:00:33 -05:00
tildearrow 7649b08e0e GUI: remember last state of order edit mode 2022-05-14 01:56:27 -05:00
tildearrow 4a33a3846a GUI: store edit/followOrders/followPattern state
in config
2022-05-14 01:53:14 -05:00
tildearrow 1ba5ac6766 GUI: add ability to select entire row
when clicking on row number
2022-05-14 01:46:06 -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
LovelyA72 bf11e85bff Enable loading of common Chinese characters 2022-05-13 21:52:33 -04:00
tildearrow be0cbfa1f7 GUI: fix non-spaced MML string parsing
fixes #457
2022-05-13 18:03:35 -05:00
tildearrow 7218710268 add Y8950 system 2022-05-13 16:52:44 -05:00
tildearrow 1b4256bb28 spelling change: Rom -> ROM - PLEASE READ
@Grauw: please update your MultiPCM code.
i know it's just a trivial change I made, but in my opinion "ROM"
indicates it's an acronym...
2022-05-12 22:15:03 -05:00
tildearrow 9bac00efe5
Merge pull request #448 from grauw/sample-rom-settings
Add emulation settings for YRW801, TG100 and MU5 sample ROMs.
2022-05-12 22:10:25 -05:00
Laurens Holst c29f18dfc2 Add emulation settings for YRW801, TG100 and MU5 sample ROMs. 2022-05-12 20:18:01 +02:00
tildearrow 613b538fb9 GUI: add setting to bring old macro vSlider back 2022-05-12 03:29:34 -05:00
tildearrow 76adccc0fc GUI: even more improvements to macro editor 2022-05-12 03:01:35 -05:00
tildearrow 0e03bf6bec GUI: fix default vScroll for pitch macro 2022-05-12 02:49:09 -05:00
James Alan Nguyen fbcd84d79b Address review comments 2022-05-12 10:29:45 +10:00
James Alan Nguyen 4354e4064b Merge branch 'master' into feature/Moar-patch-bank-support-part3 2022-05-12 09:57:11 +10:00
tildearrow a58d49a831 GUI: more mobile-specific changes 2022-05-11 16:09:23 -05:00
tildearrow c6bfc8178a
Merge pull request #444 from akumanatt/x16
VERA: halve output volume to match other PSGs
2022-05-11 16:08:16 -05:00
tildearrow ff0319780e OPN: VGM export - good night 2022-05-11 03:41:02 -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 e48faa4114 VERA: halve output volume to match other PSGs
In terms of maximum single-channel output.
X16's mixing is kept by halving YM2151 part.
2022-05-11 15:22:17 +07:00
tildearrow 8eb4fe365b
Merge pull request #443 from akumanatt/scc
Add SCC and SCC+ support
2022-05-11 01:09:08 -05:00
tildearrow c79e5e8081 GUI: window movement only by clicking on title bar
on by default now
2022-05-10 16:19:49 -05:00
tildearrow 8784fe5664 dev94 - add a full linear pitch mode, part 1 2022-05-10 03:51:18 -05:00
Natt Akuma 78ce2360bf SCC has no config flags currently 2022-05-10 11:32:07 +07:00
Natt Akuma a3fc76c984 Add SCC and SCC+ support 2022-05-10 11:25:10 +07:00
cam900 a9a249fd4c Merge branch 'master' of https://github.com/tildearrow/furnace into ay_divider
* 'master' of https://github.com/tildearrow/furnace: (24 commits)
  GUI: remove insLoadAlwaysReplace setting
  GUI: right click menu for open instrument
  GUI: add a threshold for macro right click
  OPZ: remove debug printf
  GUI: add macro right click menu
  GUI: prepare for macro right click menu
  update gitignore
  add something
  prepare for something
  did i fix macOS build?
  GUI: macro edit improvements
  GUI: now add ability to load VMEM
  Update sysDef.cpp
  GUI: add an option for it
  add preliminary TX81Z SysEx response
  OPL: drum volume
  OPL: implement hard reset
  GUI: add icon size setting
  GUI: macro UI refactor, part 4
  Fix WIN32 define timing in IGFD
  ...
2022-05-10 09:03:03 +09:00
tildearrow da71a6a804 GUI: remove insLoadAlwaysReplace setting 2022-05-09 13:22:42 -05:00
tildearrow 2e9bd65b9e GUI: right click menu for open instrument 2022-05-09 13:20:44 -05:00
James Alan Nguyen 25abf4c733 WOPN progress 2022-05-09 21:22:21 +10:00
James Alan Nguyen 9bc9468baa Start GYB import, also fix uf allocation leak and other bank loader cleanup 2022-05-09 21:22:20 +10:00
tildearrow 6bc1ee0957 GUI: add a threshold for macro right click 2022-05-08 22:52:21 -05:00
tildearrow 580d982f1e GUI: add macro right click menu 2022-05-08 18:32:16 -05:00
tildearrow 3963f93aa4 GUI: prepare for macro right click menu 2022-05-08 17:35:21 -05:00
tildearrow 787eda0a34 GUI: macro edit improvements
- reset zoom levels when changing instrument type
- set a default zoom level for pitch macro
2022-05-08 04:45:48 -05:00
tildearrow 16eae18fdf GUI: now add ability to load VMEM 2022-05-08 02:47:20 -05:00
tildearrow 4faa65a2e9 GUI: add an option for it 2022-05-08 02:07:58 -05:00
tildearrow 2c643aca4c add preliminary TX81Z SysEx response
- load voice data
2022-05-08 02:01:32 -05:00
tildearrow d582fce862 GUI: add icon size setting 2022-05-07 21:39:29 -05:00
tildearrow 3170803389 GUI: macro UI refactor, part 4 2022-05-07 18:30:16 -05: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
tildearrow d4d3cb44b9 GUI: macro UI refactor, part 2
the macro editor is finally back
2022-05-07 02:49:56 -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 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
cam900 76997fd5ba
Merge branch 'master' into ay_divider 2022-05-06 19:17:34 +09: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
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 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 6e7b4d7e7f the final part of extra FM effects 2022-05-04 17:39:22 -05:00
tildearrow 6bd5a9bcb6 prepare for possible .ftm import 2022-05-04 14:10:28 -05:00
cam900 4f1ebc3b6e Some AY-3-8910, AY8930 enhancements
Fix AY PSG clock divider function when exists, Update emulation core (MAME AY PSG and compatibles - includes noise routine updates)
Fix configuration flag, Add MSX Darky sound expander to preset

Clock divider isn't affected to expanded mode's tone and noise generator?
2022-05-04 23:04:20 +09:00
tildearrow b8a2c90b61 GUI: add audio load meter to statistics 2022-05-03 02:29:12 -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
cam900 0d5962bb08 Reduce unnecessary line 2022-05-03 10:28:01 +09:00
cam900 2412f688de Merge branch 'master' of https://github.com/tildearrow/furnace into osc_debug
* '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/gui/debugWindow.cpp
2022-05-03 10:23:36 +09:00
cam900 3f0c83eb45 Debug improvements
Add oscilloscope debug, Hideable sample debug
2022-05-03 10:20:20 +09:00
tildearrow 62289d924e FDS: add NSFPlay core 2022-05-02 16:53:55 -05:00
tildearrow a6ef36d42e SoundUnit: PCM support 2022-05-02 14:51:06 -05:00
tildearrow 5a724e4949 NES: DPCM work! 2022-05-02 03:42:40 -05:00
tildearrow 5adc29906a
Merge pull request #410 from grauw/dispatch-render-samples
Move renderSamples() to DivDispatch implementations.
2022-05-02 00:25:58 -05:00
tildearrow cb7aa4aa05 NES: wire up NSFplay
no muting supported for now
see #27
2022-05-01 23:20:20 -05:00
tildearrow 2c9bad3b3d per-channel oscilloscope, part 9
work in progress!
2022-05-01 18:29:16 -05:00
Laurens Holst 7f0074511c Move renderSamples() to DivDispatch implementations.
To prevent rendering samples for systems that are not in use.

Additionally, it gives the systems more flexibility to render the samples
according to their specific configuration.
2022-05-01 23:23:38 +02:00
tildearrow e1fd16637c per-channel oscilloscope, part 4
OPM, OPN2, OPLL and SN
plus hide unimplemented channels
2022-04-30 22:59:26 -05:00
tildearrow 312a037816 GUI: add missing actions to settings 2022-04-30 17:50:38 -05:00
tildearrow b3b747a67a
Merge pull request #406 from akumanatt/patch-1
Have host sound chip appear before expansions
2022-04-30 14:28:27 -05:00
tildearrow 4197fa44fb GUI: prepare for a per-channel oscilloscope?
currently supported systems:
- Amiga
- AY-3-8910
- Dummy System
- OPLL
- SegaPCM

no trigger supported yet!
2022-04-30 03:58:30 -05:00
tildearrow ba657fe4db GUI: add backdrop if system file picker is open 2022-04-30 02:02:55 -05:00
tildearrow 52c0044bd9 GUI: add ability to customize startup system 2022-04-30 01:37:37 -05:00
Natt Akuma 9f49504891
Revert PC speaker presets 2022-04-30 11:59:47 +07:00
tildearrow d79e5d77a7 GUI: finally implement "don't scroll when moving c
ursor" setting
2022-04-29 23:53:15 -05:00
tildearrow 2e8634626d new panning effects (80/81/82) 2022-04-29 23:41:14 -05:00
tildearrow 9c4fed2f4e GUI: fix sample paste crash 2022-04-29 22:41:07 -05:00
tildearrow a8da4f0dba GUI: implement sample scroll with mouse wheel 2022-04-29 17:55:22 -05:00
tildearrow 635bd72904 GUI: sample/macro zoom with ctrl-wheel 2022-04-29 05:39:18 -05:00
tildearrow aeea8a4912 GUI: prevent division by zero 2022-04-29 04:42:18 -05:00
tildearrow dbf4635646
Merge pull request #405 from ZoomTen/chip-randomize
add chip randomizer button (enhancement)
2022-04-29 04:38:27 -05:00
tildearrow 0817fdeb84 GUI: possibly fix an instrument saving issue 2022-04-29 04:34:20 -05:00
Natt Akuma a9a01bad4a
Have host sound chip appear before expansions
So that they are consistent with NES expansions.
For X16, the VERA is more integral to the system and has lower I/O address than YM2151
and YM2151 was once an expansion chip during development.
2022-04-29 16:32:30 +07:00
Zumi Daxuya ee4d4c4251 GUI: add chip randomizer button 2022-04-29 15:56:16 +07:00
tildearrow 5567746e0b QSound: implement panning macro - PLEASE READ
the panning strategy for QSound has changed!
it's now 08xy where x is left and y is right (muting is not possible though!)
this makes it consistent with other chips, plus QSound's pan range was
32 anyway

in order to toggle the QSound effect use effect 12xx
2022-04-28 23:58:11 -05:00
tildearrow 859b2cf8db implement channel swapping
issue #378
2022-04-28 03:36:15 -05:00
tildearrow d211170e86 implement relative pitch macro mode 2022-04-28 01:31:16 -05:00
tildearrow 66f5b2117f dev90 - linear pitch macro option 2022-04-28 00:26:21 -05:00
tildearrow 4a9855f090 dev89 - C64: add test/gate macro
and "don't test/gate before new note" setting
2022-04-27 23:54:45 -05:00
tildearrow ff33eed2fd GUI: improve the maximize auto-detection a bit 2022-04-27 20:43:34 -05:00
tildearrow f057581b27 GUI: possibly remember maximized state 2022-04-27 20:40:30 -05:00
tildearrow dce862fdb9 SoundUnit: more stuff 2022-04-27 18:28:46 -05:00
tildearrow 410a509d73 SoundUnit: max cutoff 16383 2022-04-27 18:03:24 -05:00
tildearrow 3306e853d1 effectRows -> effectCols
i don't know why did I call it "rows"
2022-04-27 17:53:55 -05:00
tildearrow 9eaf600b4b GUI: rename Amiga/Sample to Sample 2022-04-27 17:44:00 -05:00
tildearrow c171f3255a
Merge pull request #371 from BlastBrothers/compact-wave-editor
Compact wave editor
2022-04-27 15:02:23 -05: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
tildearrow e8f29cf122 prepare for macroInt preview in instrument editor 2022-04-26 15:24:45 -05:00
tildearrow 9eb9561b53 GUI: fix #400 2022-04-26 01:07:28 -05:00
cam900 584e97f313
Missing header 2022-04-26 09:20:41 +09:00
tildearrow e8c9b645c5 GUI: implement instrument preview in file dialog
SADLY it's just for the built-in file dialog
but i'll think of a solution for the external one
2022-04-25 18:58:17 -05:00
tildearrow b3f1935f2b GUI: prepare for more UX improvements
- add "temporary instrument" to DivEngine
- prepare for two things:
  - instrument preview on file picker (at least built-in one)
  - instrument selector for banks (#364)
2022-04-25 18:23:12 -05:00
tildearrow 2a952b1a66 dev87 - C64 changes
issue #335
2022-04-25 17:55:48 -05:00
tildearrow 8ba2787160 GUI: add two ImGui settings 2022-04-25 16:46:38 -05:00
tildearrow f3f92b8035 GUI: deprecate compat rate 2022-04-25 15:07:36 -05:00
tildearrow 7b79c32258 increase range of arp macro to 120 2022-04-25 14:58:58 -05:00
tildearrow ed6820ac46 GUI: fix cursor going out of bounds on paste 2022-04-25 11:23:44 -05:00
tildearrow bd68ef5cc3 dev86 - SN duty macro phase reset fix 2022-04-24 18:12:18 -05:00
tildearrow 521b311692 GUI: implement clear 2022-04-24 17:39:18 -05:00
tildearrow e414056f2d prepare for a clear option 2022-04-24 16:57:58 -05:00
tildearrow bb4bc01778 Merge branch 'newpitch' 2022-04-24 14:41:12 -05:00
tildearrow 23be8d9336 the final piece of f-num/block work 2022-04-24 14:40:07 -05:00
tildearrow 6493a0481c i hate this 2022-04-23 13:39:00 -05:00
James Alan Nguyen 3865e3eac6 #79: OPNI support added...... 2022-04-24 03:49:01 +10:00
James Alan Nguyen 6bd199923f OPLI progress... still figuring out correct readings 2022-04-24 02:37:25 +10:00
James Alan Nguyen a049e43618 #79: .y12 import done 2022-04-24 00:45:19 +10:00
James Alan Nguyen 3550ad512a OPM import: Fix reset read procedural flow 2022-04-23 20:20:29 +10:00
tildearrow 9c8d122389 GUI: use pattern font for input latch 2022-04-22 01:27:27 -05:00
tildearrow 2278c1a465 GUI: partially implement note input latch UI 2022-04-21 18:30:32 -05:00
tildearrow bd58059261 GUI: transpose value does not transpose effect ID 2022-04-21 18:11:34 -05:00
tildearrow 50deead11a GUI: prepare for note input latch UI 2022-04-21 18:10:59 -05:00
tildearrow 7410622425 GUI: min ins selector width fix 2022-04-21 17:39:13 -05:00
tildearrow 023761373d GUI: separate operation masks
also separate note/value transpose commands
2022-04-21 17:32:28 -05:00
tildearrow 521bb9c16a GUI: add missing FDS preset 2022-04-21 16:01:46 -05:00
tildearrow bc235ed494 GUI: prepare for separate operation mask 2022-04-21 03:45:06 -05:00
tildearrow 21c4d09c06 GUI: "none" instrument should not remove inscolumn 2022-04-21 03:26:34 -05:00
tildearrow bfdfac004f GUI: fix ins 0 being inserted on blank song 2022-04-21 03:22:01 -05:00
tildearrow dba9482cee GUI: add a "none" option to instrument list 2022-04-21 02:53:09 -05:00
tildearrow 06a69a20e8 GUI: add "absorb" instrument input mode 2022-04-21 02:35:50 -05:00
tildearrow 73a4552e09 Merge branch 'master' of github.com:tildearrow/furnace 2022-04-20 15:30:24 -05:00
tildearrow 5630b69e64 GUI: fix selection being visible in dummy row area 2022-04-20 15:29:07 -05:00
tildearrow f18f2968bd
Merge pull request #382 from cam900/patch-8
Further fix looped sample preview
2022-04-20 14:15:32 -05:00
cam900 ce5f3fd94e
Further fix looped sample preview 2022-04-20 20:38:20 +09:00
tildearrow dac6231574 GUI: fix about screen in power saving mode 2022-04-19 21:55:23 -05:00
tildearrow d4380e1524 GUI: add an effect list window 2022-04-19 18:44:05 -05:00
tildearrow a4ff0c3876 GUI: fix relative/fixed toggle label being wrong 2022-04-18 04:18:33 -05:00
tildearrow b8c790bf79 dev84 - new compat flag and store macro modes 2022-04-18 00:52:29 -05:00
tildearrow fc8a130c71 implement panning macro
except for QSound
2022-04-17 14:15:57 -05:00
BlastBrothers 4bb77ea3cb This is not a sample properties table 2022-04-17 11:38:28 -04:00
tildearrow c9324e04bd GUI: vertical C64 envelope editor 2022-04-17 02:51:03 -05:00
tildearrow 0258342324 M S V C 2022-04-17 02:08:53 -05:00
tildearrow 53994cebbd GUI: new default key for full-screen 2022-04-17 02:08:19 -05:00
tildearrow 4f59eb2602 GUI: add toggle full-screen keybind 2022-04-17 01:57:50 -05:00
tildearrow 0952d1b2f9 GUI: add a full-screen option 2022-04-17 01:54:42 -05:00
tildearrow 3ce617335c
Merge pull request #365 from djtuBIG-MaliceX/feature/More-OPL-Patch-Support
More OPL patch support
2022-04-17 01:17:57 -05:00
tildearrow 768419f461 GUI: implement GB envelope view 2022-04-17 01:15:34 -05:00
James Alan Nguyen ac656f07bb Merge branch 'master' into feature/More-OPL-Patch-Support 2022-04-17 15:41:18 +10:00
tildearrow 003c9c3235 GUI: prepare for GB envelope view 2022-04-16 23:58:29 -05:00
tildearrow 99d57bf342 GUI: C64 envelope view 2022-04-16 23:43:49 -05:00
tildearrow 42e8454143 ADSR test area 2022-04-16 22:53:40 -05:00
tildearrow 523adfac86 GUI: fix sample up/down actions not changing wavef
orm
2022-04-16 22:28:14 -05:00
BlastBrothers ab4f9945a5 Define the compact wave editor 2022-04-16 21:51:53 -04:00
BlastBrothers 559a99c5fc Menu option, settings file 2022-04-16 20:47:40 -04:00
tildearrow ef6e63239c GUI: introduce power-saving mode 2022-04-16 18:35:25 -05:00
tildearrow 8669e2cddc GUI: a better look for panning macro 2022-04-16 17:24:40 -05:00
tildearrow 330171edc3 GUI: add "note preview behavior" setting 2022-04-16 13:13:19 -05:00
tildearrow d0c76e020c GUI: more note preview fixes 2022-04-16 00:10:52 -05:00
tildearrow a81393472c GUI: move all preview actions to callback 2022-04-15 23:47:39 -05:00
tildearrow b48a2368be more low-latency mode work
playSub() runs at normal tick rate
2022-04-15 22:22:47 -05:00
James Alan Nguyen 1985546d0b Add file extension to picker 2022-04-15 22:20:46 +10:00
tildearrow 96715ed88c add experimental low-latency mode
do not use (yet)!
2022-04-15 05:37:23 -05:00
tildearrow c743a9e96a implement phase reset macro on supported systems 2022-04-15 03:16:14 -05:00
tildearrow c76e719371 GUI: prepare for more macros 2022-04-15 02:51:38 -05:00
tildearrow f9e9c6c179 huh 2022-04-15 01:30:21 -05:00
tildearrow 600c38543b what is valid then 2022-04-15 01:29:29 -05:00
tildearrow 3e15a066f8 Soundtracker .mod loading support
this required a re-organization of DivEngine::load() but it works
eventually we'll be able to load other file formats this way
2022-04-15 00:45:55 -05:00
tildearrow 51bc1119e8 hopefully fix oscilloscope line being out of bound 2022-04-14 23:22:25 -05:00
tildearrow aa415caa57 GUI: fix another cppcheck warning 2022-04-14 23:22:11 -05:00
tildearrow be483470ef GUI: add "Use standard OPL waveform names" option 2022-04-14 21:57:39 -05:00
tildearrow 68445435f9 fix several misc issues 2022-04-14 18:25:59 -05:00
tildearrow 8ff694eb13 GUI: fix MIDI input settings crash 2022-04-14 16:20:10 -05:00
tildearrow 5eb2717884 GUI: slightly tweak note preview algorithm
issue #338
2022-04-14 13:54:47 -05:00
tildearrow 11516d7923 GUI: allow cursor movement when stepping 2022-04-14 03:05:58 -05:00
tildearrow 55e085b148 GUI: separate current order from engine order
fixes #105
2022-04-14 02:58:29 -05:00
tildearrow 0e2ecaf6be add setting to disable scrollChangesOrder
it's kinda unreliable at the moment
2022-04-14 01:25:21 -05:00
tildearrow d6333af330 GUI: unreliable version of #63 2022-04-13 18:16:55 -05:00
tildearrow 720f046f28 GUI: implement no-nibble-push value input 2022-04-13 17:42:55 -05:00
tildearrow e86174921b GUI: partially add a piano 2022-04-13 03:24:49 -05:00
tildearrow 2e2fafd878 GUI: add metronome volume setting 2022-04-13 02:29:07 -05:00
tildearrow 2cd454a59d major warning dialog changes
it makes more sense now. closes #321
2022-04-13 02:09:59 -05:00
tildearrow 75f99cfb09 update credits 2022-04-13 00:37:48 -05:00
tildearrow fbf7f9304e dev83 - yet another E1xy/E2xy fix
and 17xx fix in ExtCh
2022-04-13 00:34:00 -05:00
tildearrow aab7cf2512 oops 2022-04-12 23:03:24 -05:00
tildearrow ff75c7fe01 GUI: implement macro line drawing 2022-04-12 23:03:20 -05:00
tildearrow 45f14a951a GUI: add Colorize instrument editor using instrume
nt type option
2022-04-12 21:30:12 -05:00
tildearrow 152d05dbfc GUI: add "separate car/mod colors" to FM editor
and other improvements
2022-04-12 18:26:25 -05:00
tildearrow 8facb43081 GUI: change behavior of play buttons 2022-04-12 17:01:41 -05:00
tildearrow 25c5c97c47 GUI: add YM2414 to system presets 2022-04-12 16:12:32 -05:00
tildearrow bc3e64726e prepare for "select instruments to load" dialog 2022-04-12 15:38:40 -05:00
tildearrow 40451cc039 GUI: update credits 2022-04-12 04:36:45 -05:00
tildearrow a20861559b implement .dmc loading 2022-04-12 03:34:53 -05:00
tildearrow dae7a9a099 GUI: add "Create instrument from sample" option 2022-04-12 03:00:57 -05:00
tildearrow 3b0be2c42a GUI: focus sample editor when clicking on waveform 2022-04-12 02:46:51 -05:00
tildearrow ea463e4dfd
Merge pull request #352 from OPNA2608/add/ff_import
Add FF bank import
2022-04-12 02:43:16 -05:00
tildearrow 5a5f800297 GUI: deduplicate a lot of code 2022-04-12 02:39:03 -05:00
tildearrow ffef40c098 GUI: clampSetting() for sample layout 2022-04-12 02:24:42 -05:00
tildearrow 0ae414da01 Merge branch 'compact-sample-editor' of https://github.com/BlastBrothers/furnace into BlastBrothers-compact-sample-editor 2022-04-12 02:21:53 -05:00
tildearrow 455cccdef0 GUI: sample improvements
- resample change C-4 note
- add duplicate option
2022-04-12 02:15:12 -05:00
tildearrow 9baa261253 GUI: reduce initial oscilloscope latency 2022-04-12 01:51:15 -05:00
tildearrow 24209c7853 dev82 - amiga wavetables
closes #16 (yay!)
2022-04-12 01:19:00 -05:00
tildearrow 014e86d3d1 add missing license headers 2022-04-12 00:18:29 -05:00
tildearrow e77ecfd04b N163: implement wave synth
I hope this does not break any songs
2022-04-12 00:17:34 -05:00
BlastBrothers 0771cdcdae Add in the alternate editor as an option 2022-04-11 22:14:20 -04:00
BlastBrothers 93b87cc65d Sample preview can only be so tall now 2022-04-11 21:51:43 -04:00
BlastBrothers f362b1288c Add (currently useless) menu option ofr compact editor 2022-04-11 21:27:23 -04:00
BlastBrothers f6381771a9 Revert "Thin sample editor"
This reverts commit 8a2bf3ae39.
2022-04-11 20:16:51 -04:00
BlastBrothers 61715fd8b0 Revert "Rearrange buttons"
This reverts commit 052a0923fe.
2022-04-11 20:15:46 -04:00
BlastBrothers af2b19ae62 Revert "Sample preview has maximum y height relative to x"
This reverts commit 1151db5091.
2022-04-11 20:15:03 -04:00
BlastBrothers 1d14ca2d88
Merge branch 'tildearrow:master' into master 2022-04-11 19:51:31 -04:00
tildearrow 8407a7d3a4 add several TODO comments
self-note: check this one after you come back!
2022-04-11 18:12:05 -05:00
BlastBrothers 83baae92d9 Now it works ofr OPLL too, plus global sus 2022-04-11 17:26:40 -04:00
BlastBrothers 62ea469600 Works for OPLx 2022-04-11 13:55:20 -04:00
BlastBrothers 0094e75bcf Pass sus to drawFMEnv- but is this the right var? 2022-04-11 12:15:11 -04:00
BlastBrothers 72632b9b72
Merge branch 'tildearrow:master' into master 2022-04-11 10:15:47 -04:00
tildearrow 128fc596cb GUI: wait what? 2022-04-11 04:07:01 -05:00
tildearrow 224d8e11e5 GUI: add some oscilloscope settings 2022-04-11 03:34:38 -05:00
tildearrow 7bb0743598 GUI: fix file path corruption on sys file picker 2022-04-11 03:14:12 -05:00
tildearrow ac286fc8d1 GUI: real-time color setting preview 2022-04-11 02:53:21 -05:00
tildearrow 7905b813e0 GUI: TableSetupScrollFreeze() for log view 2022-04-11 02:45:02 -05:00
tildearrow 283d74c32f GUI: friendlier name for N163 TDM disable 2022-04-11 02:39:06 -05:00
tildearrow d2a8b028e8
Merge pull request #354 from cam900/n163_demultiplex
Add support of N163 demultiplexed output
2022-04-11 02:38:17 -05:00
tildearrow 9e0e725802 Sorry but I think I'd like to go now. 2022-04-11 00:12:24 -05:00
tildearrow 552967246d **SUBMODULE UPDATE - PLEASE READ!**
as of now I have added the Date library as a submodule in order to have
log messages in the correct time zone

please update your submodules by doing:
```
git submodule update --init --recursive
```
2022-04-10 23:01:55 -05:00
tildearrow fddd05dc1a improve logging facility
we have a log viewer within the program now
2022-04-10 22:12:02 -05:00
tildearrow 51207e58ad part 2 - finally 2022-04-10 16:52:03 -05:00
OPNA2608 91d8c48542 Add FF bank import 2022-04-10 14:16:33 +02:00
cam900 e6d74766ca Add support of N163 demultiplexed output
so, there's to way for reduce N163 noises: reduce channel limit and demultiplex
* channel limit is runtime changeable and it makes some usable effects with disable demultiplex
* demultiplex is used for "non-ear destroyable" emulators, but less hardware accurate. (when LPF and RF filter is not considered)
Furnace support both after this, You can choose output behavior via configuration flag.
2022-04-10 20:22:49 +09:00
cam900 9a6127e4c1 Change macro 2022-04-10 18:47:32 +09:00
cam900 518841c17e Fix FM layout in "Compact" mode, Prepare for per-operator on/off control on FM (possibly controllable with phase reset macro?) 2022-04-10 18:36:04 +09:00
cam900 68cf969600 Merge remote-tracking branch 'upstream/master' into macro 2022-04-10 16:34:23 +09:00
cam900 55639747ee Make GCC happy 2022-04-10 16:32:58 +09:00
tildearrow 570c43e332 GUI: follow cursor when pasting 2022-04-10 02:20:16 -05:00
cam900 eb05310d37 Fix issue in instrument editor 2022-04-10 15:49:26 +09:00
cam900 13bdf2d86d Prepare for FMS2, AMS2 macro for YM2414 2022-04-10 15:16:51 +09:00
cam900 ae4f005d67 Merge remote-tracking branch 'upstream/master' into macro
# Conflicts:
#	src/engine/platform/c64.cpp
#	src/gui/insEdit.cpp
2022-04-10 14:47:10 +09:00
cam900 d3e5efe834 Prepare for macro refactoring 2022-04-10 14:01:55 +09:00
tildearrow 0eb02422d5 fix possible pattern crash
issue #325
2022-04-09 18:25:38 -05:00
tildearrow 38ca437190 DC offset improvements 2022-04-09 18:25:25 -05:00
tildearrow 46bf69769b
Merge pull request #331 from OPNA2608/msvc/sane_warning_level
Resolve/Mute MSVC warnings, enable WAE for MSVC
2022-04-09 15:26:58 -05:00
OPNA2608 b6fb3820da Remove unneeded includes
Some are harmless, some screw with SDL's standard includes due to preceeding `_USE_MATH_DEFINES`.
2022-04-09 21:10:15 +02:00
tildearrow 11cdc3924d GUI: improve oscilloscope
it's not finished yet
2022-04-09 05:02:24 -05:00
OPNA2608 16ad29ae7a Fix C4293: '<<': shift count negative or too big, undefined behavior
MSVC seems kinda braindead: https://reviews.llvm.org/D41030#952363
2022-04-09 10:54:06 +02:00
OPNA2608 4c19a973ef Fix for C4805: '|': unsafe mix of type 'unsigned char' and type 'bool' in operation 2022-04-09 10:54:06 +02:00
tildearrow 7bf2a3ea1a GUI: prepare for oscilloscope improvements 2022-04-09 02:42:58 -05:00
tildearrow 9e0e8f3345 dev80 - increase song limits
up to 256 patterns
up to 256 orders
2022-04-08 17:21:36 -05:00
cam900 dccd30f73c
Fix loop area view in sample editor 2022-04-09 00:42:27 +09:00
BlastBrothers 052a0923fe Rearrange buttons 2022-04-08 10:48:42 -04:00
BlastBrothers 1151db5091 Sample preview has maximum y height relative to x 2022-04-08 10:23:51 -04:00
BlastBrothers 7850e892d5
Merge branch 'tildearrow:master' into master 2022-04-08 09:44:53 -04:00
tildearrow 62ff7317e3 GUI: effectCursorDir improvements 2022-04-08 02:16:57 -05:00
tildearrow 5bd076d13e initial bring-up of the wave synth
issue #16
2022-04-08 02:11:33 -05:00
BlastBrothers 8a2bf3ae39 Thin sample editor 2022-04-08 00:01:42 -04:00
tildearrow 5d52ef7f00 support .dmf with 6-bit wavetables 2022-04-07 20:13:11 -05:00
tildearrow 500ce8086d GUI: initial wave synth UI 2022-04-07 18:27:17 -05:00
tildearrow 05dfec9f3d GUI: fix VRC6 saw waveform macro being displayed 2022-04-07 13:48:22 -05:00
tildearrow 3f5d0a1e46 GUI: fix paste mode binds not working 2022-04-07 02:37:19 -05:00
tildearrow 48838440ba GUI: add ability to colorize rows per highlight 2022-04-07 02:24:54 -05:00
tildearrow dab164f09e GUI: add "effect deletion alters value" setting 2022-04-07 02:02:52 -05:00
tildearrow ad09254cf4 dev78 - new compat flag that fixes ExtCh 2022-04-07 01:14:34 -05:00
tildearrow b162c09f7c GUI: OPZ instrument editor work - dev77 2022-04-07 00:45:53 -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 743664aad1 GUI: extension check for keybinds/colors/layout 2022-04-06 14:45:58 -05:00
tildearrow 4d23c1dc6d new extension for colors and keybinds 2022-04-06 14:17:29 -05:00
tildearrow da1f34372a GUI: I forgot about layout! 2022-04-06 14:11:58 -05:00
tildearrow eb8f99dafe GUI: import/export colors/keybinds/layout
untested
2022-04-06 13:53:39 -05:00
tildearrow 4a131952e4 GUI: ps_fopen 2022-04-06 02:46:09 -05:00
tildearrow 132c5007fa GUI: simplify color load/save code
they are in guiConst.cpp now too.
2022-04-06 02:30:12 -05:00
tildearrow 95ce867ce3 GUI: add mentions of FDS to wave editor 2022-04-06 02:09:53 -05:00
tildearrow 1054f92029 GUI: simplify keybind load/save code
as of now action definitions are in guiConst.cpp.
2022-04-06 01:52:58 -05:00
tildearrow 5de58e1f6d GUI: add settings for borders 2022-04-06 00:34:26 -05:00
tildearrow 280cbb3e39 FDS: possibly final work
the last thing left to do is the filter, but everything works now
2022-04-05 18:18:14 -05:00
tildearrow e1976b96a0 TODO: modulation table 2022-04-05 14:55:17 -05:00
tildearrow 5f71857439 GUI: attempt at optimizing pattern draw code 2022-04-04 23:38:38 -05:00
tildearrow 590b21bc37 GUI: prepare for FDS ins editor 2022-04-04 13:26:02 -05:00
tildearrow f89360392f GUI: add setting to customize the title bar
closes #339
2022-04-04 13:25:38 -05:00
tildearrow e5a162dbe6 GUI: add presets for FDS and MMC5 2022-04-04 00:48:08 -05:00
tildearrow ac3772c024 initial FDS bring-up 2022-04-03 22:37:16 -05:00
tildearrow 9ef50bbda7 GUI: fix keybinds leaking after setting them to no 2022-04-03 19:23:02 -05:00
tildearrow 90bbc42290 GUI: more usability improvements
- move cursor to end of clipboard when pasting
- better effect input
2022-04-03 19:20:30 -05:00
tildearrow e44d081adc prepare for .opm support
goodbye addInstrumentFromFile
hello instrumentFromFile + addInstrumentPtr

these changes are required to allow loading instrument banks
2022-04-03 01:56:49 -05:00
tildearrow 44d72c2106 GUI: add load/save/select to ins/wave editors
TODO: on sample editor
TODO: load replace instead of load insert
2022-04-02 18:22:06 -05:00
tildearrow 6c732a1891 GUI: change sample add icon to new 2022-04-02 18:21:29 -05:00
tildearrow fa234afc9d GUI: prepare to add a "lock layout" option 2022-04-02 15:07:47 -05:00
tildearrow b90a26a33d GUI: order view similar pattern coloring 2022-04-02 00:41:52 -05:00
tildearrow ab5ed4413e GUI: usability fixes (ctrl-wheel)
as of now Ctrl-wheel allows you to fine change sliders
also added undo/redo buttons to sample editor
2022-04-02 00:11:44 -05:00
tildearrow 81c8bf4e59 add ability to select VGM version when exporting
by default it is 1.71 but please tell me if you want this to be changed
2022-04-01 21:40:32 -05:00
tildearrow ffb01dd19c Revert "release 0.6pre0"
This reverts commit f7566455c2.
2022-04-01 05:20:00 -05:00
tildearrow f7566455c2 release 0.6pre0 2022-04-01 04:45:06 -05:00
tildearrow 4b436ef1fc and more MIDI input refinements 2022-04-01 02:21:10 -05:00
tildearrow 052dcb2576 implement more MIDI stuff 2022-04-01 01:50:01 -05:00
tildearrow de7a4eb2e9 GUI: better MIDI learn options 2022-03-31 22:48:46 -05:00
tildearrow a5a65d4db3 GUI: implement MIDI learn 2022-03-31 18:39:01 -05:00
tildearrow d321292543 separate VRC6 and VRC6 saw ins types 2022-03-31 15:25:58 -05:00
tildearrow 45ce940d66 better MIDI and note input handling
closes #147
2022-03-31 01:51:57 -05:00
tildearrow a8ee4b1245 GUI: kinda working MIDI note input 2022-03-30 18:18:39 -05:00
tildearrow 501ecc063d GUI: earliest MIDI note input 2022-03-30 15:44:27 -05:00
tildearrow cb107ebbac GUI: possibly fix out-of-range notes in preview
now they should release
2022-03-30 04:49:15 -05:00
tildearrow f1ee04393b GUI: fix log error if MIDI map file doesn't exist 2022-03-30 01:01:45 -05:00
tildearrow 941aab0def GUI: add ability to input waveform data in hex
closes #327
2022-03-30 00:28:49 -05:00
tildearrow c7a37959f0 GUI: early MIDI action UI - COMPLETELY UNTESTED
it will crash (or not)
2022-03-29 17:38:30 -05:00
tildearrow 2921f88895 try using 0 2022-03-29 16:18:38 -05:00
tildearrow 77798f6ed7 more MIDI work... still not there 2022-03-29 16:09:15 -05:00
tildearrow f92eb9352d GUI: fix visual glitch when changing song length 2022-03-29 01:36:45 -05:00
tildearrow 92c1add075 GUI: prevent one possible bug when moving cursor 2022-03-29 00:37:45 -05:00
tildearrow 4825fe7adb more work 2022-03-28 18:19:47 -05:00
tildearrow 81319e34bc error: There was a problem with the editor 'vi'. 2022-03-28 15:31:03 -05:00
tildearrow 08910d37b2 oh yes more MIDI work 2022-03-28 15:24:09 -05:00
tildearrow f1b5a35ff5
Merge pull request #306 from cam900/preset2
Add more presets
2022-03-28 13:23:22 -05:00
tildearrow 5360cd73f4 earliest MIDI input! (no note input tho) 2022-03-28 03:46:50 -05:00
cam900 b11c840ed4
Merge branch 'master' into preset2 2022-03-28 12:46:52 +09:00
tildearrow 4422ff7695 Merge branch 'vrc6' of https://github.com/cam900/furnace into cam900-vrc6 2022-03-27 22:16:04 -05:00
tildearrow 075f758e4d Namco 163 refinements 2022-03-27 22:04:01 -05:00
tildearrow c4fc797578
Merge #304 - DO NOT COMPILE
Add Namco 163 Support
Not final - changes needed
2022-03-27 21:35:58 -05:00
cam900 79d6433006 Merge branch 'master' of https://github.com/tildearrow/furnace into vrc6 2022-03-28 10:11:09 +09:00
tildearrow e5ce7c63f8 GUI: redesign FM editor layout, part 4
now with OPL and OPLL
2022-03-27 18:30:46 -05:00
tildearrow ef88fc57d8 GUI: remove invalid comment 2022-03-27 16:35:55 -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
tildearrow 09b5dd556e GUI: add setting to change position of SL slider 2022-03-27 03:38:04 -05:00
tildearrow f7d7b00e93 GUI: redesign FM editor layout, part 3 2022-03-27 03:29:45 -05:00
tildearrow 1c98748a88 GUI: redesign FM editor layout, part 2 2022-03-27 01:38:24 -05:00
tildearrow 9b6e582f8d dev72 - two more compat flags 2022-03-26 22:15:15 -05:00
tildearrow 3ea9c0360f implement F3xx and F4xx for fine vol slides 2022-03-26 20:58:33 -05:00
tildearrow 7237e8fb39 GUI: add a space
i am lazy
2022-03-26 18:30:08 -05:00
tildearrow 4caa9376bc GUI: what 2022-03-26 17:30:26 -05:00
tildearrow 26791df58e GUI: redesign FM editor layout, part 1
thanks Raijin for the concept
2022-03-25 18:16:47 -05:00
cam900 dc62c8610c SAA1099 in CMS/Game Blaster and Compatible isn't hard panned per chip
Info: http://hackipedia.org/browse.cgi/Computer/Platform/PC%2c%20IBM%20compatible/Sound%20and%20Music/Creative%20Labs/Game%20Blaster/C%e2%88%95MS%20Programming%20Information%20by%20Creative%20Labs%20%281990%29.pdf , VGMs recorded from CMS/Game Blaster
2022-03-26 02:24:58 +09:00
cam900 ae17f7e616 NES with Family Noraebang
An Karaoke unit connectable for NES cartridge slot.
And, sure. It is unlicensed.
2022-03-26 00:47:39 +09:00
tildearrow 6e35640537 GUI: less annoying PET waveform view 2022-03-25 02:10:44 -05:00
tildearrow bd36a4ffdc dev71 - more compatibility flags for .mod 2022-03-23 23:57:10 -05:00
cam900 168577e4b9
Revert preset 2022-03-24 13:49:41 +09:00
cam900 6f18be3ede Add presets:
Standalone OPLs

Sound Blaster Pro 1.0
Earliest Sound Blaster Pro has 2 OPL2s, it supports stereo like successor but with hardpanned OPL2: one for Left output and one for Right output.

PC-FXGA
PC-FX, SuperGrafx on steroids, Released at December 1994 in NEC.
PC-FXGA is PC add-on card version of PC-FX for IBM PC and PC-98. It's released at 1995 with 3D acceleration - it lacks at original PC-FX console.

SAAYM
Modern CMS/Game Blaster Compatible PC ISA sound card with YM2151 addon. Commander X16 will be use its configuration but SAA in X16 is finally replaced to VERA.

Seta 1 + FM Addon
X1-010 and YM3438, Both driven by Z80. Ultra Toukon Densetsu used this configuration.
2022-03-24 13:46:35 +09:00
cam900 39654bfa86 Merge branch 'master' of https://github.com/tildearrow/furnace into n163 2022-03-24 13:11:22 +09:00
tildearrow 3ed38aca5e GUI: allow customization of file picker colors 2022-03-23 22:32:36 -05:00
tildearrow 6492eeff56 GUI: proper sample errors 2022-03-23 16:39:08 -05:00
tildearrow 5a08e0d230 OPLL: add patch macro 2022-03-23 15:50:18 -05:00
cam900 df8f40486d Fix frequency, Loading waveform, Add instrument tab for waveform initialize
now for saving DivInstrumentN163 struct is... needs to compatibility breaks?
2022-03-24 03:53:07 +09:00
cam900 e8d567d3df Merge branch 'master' of https://github.com/tildearrow/furnace into n163 2022-03-24 03:22:33 +09:00
tildearrow ac79e7d6af add broken speed alternation flag - dev70 2022-03-23 01:35:57 -05:00
tildearrow afc701b0b9 GUI: sample edit undo/redo!
it seems to work but if you find bugs/crashes tell me
2022-03-23 00:42:59 -05:00
tildearrow 519dd7f2dd GUI: aaand more sample editor work
now it has a right click menu
2022-03-22 18:05:32 -05:00
tildearrow 8e0119b2d3 GUI: more sample editor fixes 2022-03-22 17:33:54 -05:00
tildearrow 97926c4e5c GUI: update sample texture 2022-03-22 17:04:36 -05:00
tildearrow 7ebc63a514 GUI: implement sample paste 2022-03-22 17:01:06 -05:00
tildearrow a199c102ce GUI: hopefully better workaround to macOS #4 2022-03-22 15:37:36 -05:00
cam900 73267444fc
Merge branch 'master' into n163 2022-03-23 03:26:09 +09:00
tildearrow c24ad24a03
Merge pull request #302 from AYCEdemo/petvic
Add VIC-20 support
2022-03-22 13:25:21 -05: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
tildearrow 705ba4273b GUI: sample editor keybinds
works
2022-03-22 04:54:01 -05:00
Natt Akuma feb138cefc Add VIC-20 support 2022-03-22 14:48:48 +07:00
tildearrow f4f91ca49e GUI: ability to customize toggle button color 2022-03-22 01:57:06 -05:00
tildearrow 73d2f97274 GUI: fix visualizer option in menu 2022-03-22 01:34:53 -05:00
tildearrow 6dbc46d50e GUI: prevent editing non-8/16-bit samples 2022-03-22 01:21:13 -05:00
tildearrow e256efa641 GUI: add option to load Japanese chars
issue #52
2022-03-21 23:36:17 -05:00
tildearrow bd84dc1c17 GUI: make clang happy 2022-03-21 21:48:36 -05:00
tildearrow cec5def347 what?
unacceptable.
2022-03-21 21:47:27 -05:00
tildearrow 80927b80b1 fix build 2022-03-21 17:38:11 -05:00
tildearrow 7e5c27c5b7 GUI: massive code split
gui.cpp now less than 3000 lines
2022-03-21 17:34:43 -05:00
tildearrow e62f9bffd3 GUI: re-organize code
ins/wave/sample lists now in dataList.cpp
wave editor now under its own file
2022-03-21 16:34:19 -05:00
tildearrow cbbca2d6c8 GUI: no mention of PET in wave edit 2022-03-21 16:22:43 -05:00
tildearrow 948d585767
Merge pull request #300 from AYCEdemo/petvic
Add PET support
2022-03-21 16:20:55 -05:00
tildearrow 1003d9fcb8 GUI: more "modified" status situations
fixes #236
2022-03-21 16:17:51 -05:00
tildearrow 0a114b1168 GUI: don't allow direct saving to the backup file 2022-03-21 14:47:10 -05:00
tildearrow 854d0fea48 GUI: add option to restore backup 2022-03-21 14:32:33 -05:00
tildearrow 8c961f0aae add backup functionality - UNTESTED 2022-03-21 14:11:28 -05:00
Natt Akuma c32ea59285 PET: Use wave bits macro instead 2022-03-22 01:37:22 +07:00
Natt Akuma 47c5c34e1c Add PET support 2022-03-21 21:02:51 +07:00
tildearrow b45d2be312 GUI: sample editor almost complete
only keybinds are missing
2022-03-21 03:45:20 -05:00
tildearrow 2df7658fd0 GUI: implement sample sel operations
plenty of them
2022-03-21 02:43:52 -05:00
tildearrow a68dbed760 GUI: add options for rounded UI elements 2022-03-21 00:52:38 -05:00
tildearrow b83b46aa2c GUI: more sample editor work
scrollbar and some layout changes
2022-03-21 00:41:18 -05:00
tildearrow 20799402c8 GUI: select all is vertical now 2022-03-20 22:22:10 -05:00
tildearrow 21b15d686b GUI: prevent typing out-of-range notes
cope
2022-03-20 22:16:20 -05:00
tildearrow ef3bf8f924 GUI: display sample selection - NOT FINISHED 2022-03-20 18:31:25 -05:00
tildearrow b04e1f2870 GUI: implement sample draw 2022-03-20 18:25:48 -05:00
tildearrow bdc29455cc GUI: one more change to the status bar 2022-03-20 05:19:23 -05:00
tildearrow b7fd410c1f GUI: temporarily hide BRR sample type 2022-03-20 05:19:04 -05:00
tildearrow 9a94b7124d GUI: creditssss 2022-03-20 04:42:23 -05:00
tildearrow 34e679d642
Merge pull request #298 from djtuBIG-MaliceX/feature/OPL_SBI_Instrument_Import
OPL1/2/3 Instrument Import - SBI and S3I (Adlib only) format
2022-03-20 04:39:52 -05:00
tildearrow 299dbf14e4 GUI: sample editor status bar 2022-03-20 04:28:57 -05:00
tildearrow 03cb910e93 GUI: sample resampling 2022-03-20 03:14:00 -05:00
James Alan Nguyen cbe74b26ad More #79 - Add S3I Adlib instrument support. Also fix SafeReader `SEEK_CUR` handling (wasn't used at all). 2022-03-20 17:12:03 +11:00
tildearrow 4593e33064 GUI: fix X1-010 flags 2022-03-19 22:02:21 -05:00
tildearrow 67ca88b478 GUI: prepare for sample select/draw 2022-03-19 16:14:11 -05:00
James Alan Nguyen efdedd1044 Fix typo 2022-03-20 01:02:34 +11:00
James Alan Nguyen e032580639 Started SBI import work (Issue #79 SBI task). Also ensure catch by reference not value. 2022-03-20 00:55:34 +11:00
tildearrow 689ed3bf65 sample editor workkkkkkk 2022-03-19 03:42:44 -05:00
tildearrow c59c176de2 W O R K A R O U N D
adding text fixes the issue
2022-03-17 23:28:01 -05:00
tildearrow 6c5e6c2a0f
Merge pull request #294 from cam900/bubsys
Reduce naming confusion in Bubble System Wavetable Sound
2022-03-17 22:03:24 -05:00
tildearrow a5906c6482 GUI: update credits 2022-03-17 22:03:14 -05:00
tildearrow 1af6eb21f6 freaking clang extension 2022-03-17 18:30:28 -05:00
tildearrow 5f0c1e9077 GUI: more sample editor work 2022-03-17 18:28:56 -05:00
tildearrow b31ab408db GUI: new sample editor work 2022-03-17 18:08:59 -05:00
tildearrow d63f3d311b fix arpeggio not resetting note to base on 0000 2022-03-17 16:37:49 -05:00
tildearrow 9dea093052 GUI: reduce scroll boundaries 2022-03-17 16:17:33 -05:00
cam900 a7c750a44e Merge branch 'master' of https://github.com/tildearrow/furnace into bubsys 2022-03-18 03:20:33 +09:00
tildearrow 3c1b1b69fc GUI: define sample edit texture 2022-03-17 03:43:02 -05:00
tildearrow dce68749d6 GUI: work on the drum UI 2022-03-17 02:07:46 -05: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 d09aa778d9 prepare to rewrite sample editor - DO NOT USE! 2022-03-16 18:40:11 -05:00
tildearrow a3efaf0bd3 fix 2022-03-16 17:02:57 -05:00
tildearrow 3163730fe8 prepare for drum kits/sample map 2022-03-16 17:01:44 -05:00
tildearrow 73cf7cf161 GUI: enforce minimum size for macro edit left col
UNTESTED
2022-03-16 13:45:22 -05:00
tildearrow fb68d2e5cb GUI: add option to toggle visualizer in settings 2022-03-16 13:31:42 -05:00
tildearrow 966d133bf4 OPL: FM macros 2022-03-16 03:44:22 -05:00
tildearrow 9322e9467c GUI: prepare macro editor for OPL op macros 2022-03-16 02:01:44 -05:00
tildearrow 492533e5c0 GUI: add option to view Hz as base tempo 2022-03-16 01:27:34 -05:00
tildearrow 790c4345d9 GUI: add ability to view Hz as base tempo 2022-03-15 23:43:24 -05:00
tildearrow 02e9edbad9 unlock the power of DECIMAL HZ! 2022-03-15 23:30:15 -05:00
tildearrow 0a307fc4a6 MOD import: more improvements
- prepare for old Soundtracker MOD import
- add "bypass limits" flag - dope.mod plays correctly now
- automatic channel names
2022-03-15 18:32:15 -05:00
tildearrow 8355aa0175 GUI: OPL 4-op algorithm images 2022-03-15 00:09:45 -05:00
tildearrow bfae208a24 GUI: change default layout 2022-03-14 17:40:22 -05:00
tildearrow 8012676993 MOD import: crash fix 2022-03-14 17:16:43 -05:00
tildearrow 37c733af6b
Merge pull request #287 from AYCEdemo/mod-import
.mod import
2022-03-14 16:12:02 -05:00
Natt Akuma 54da047b5a Apply requested changes
- Use sample->init() instead
- Implement set Hz by tempo effect and move from C4xx to F0xx
- Add "SAMPLE_POS" to cmdName
2022-03-15 03:59:42 +07:00
tildearrow 9643498946 GUI: fix orders up 2022-03-14 15:53:43 -05:00
Natt Akuma 91e856c61e Merge branch 'master' of https://github.com/tildearrow/furnace into mod-import 2022-03-15 03:08:37 +07:00
tildearrow 749b0f39d0 GUI: better order display - UNTESTED 2022-03-14 14:54:45 -05:00
Natt Akuma c7fb5df206 Merge branch 'master' of https://github.com/tildearrow/furnace into mod-import 2022-03-14 21:57:54 +07:00
Natt Akuma 87f225074c .mod import 2022-03-14 21:50:52 +07:00
cam900 f24a776a7a More user friendly instrument name 2022-03-14 19:40:27 +09:00
cam900 2c6267bd6b Merge branch 'master' of https://github.com/tildearrow/furnace into scc 2022-03-14 19:22:31 +09: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 e009fc64f2 allow instrument change during slides 2022-03-14 01:23:31 -05:00
tildearrow a96fd5727e GUI: begin working on unified ins/wave/sample list 2022-03-14 00:26:27 -05:00
tildearrow 394a440f3d prepare for unified ins/wave/sample list 2022-03-13 23:37:25 -05:00
tildearrow 4ba6058b03 GUI: system file dialog on by default
in order to make a test build
2022-03-13 23:24:57 -05:00
tildearrow f56f4c80d1 GUI: move to system file dialog
default setting will be selected by a poll
2022-03-13 23:10:43 -05:00
tildearrow 0874d58fb8 damn it 2022-03-13 22:02:50 -05:00