Commit Graph

305 Commits

Author SHA1 Message Date
tildearrow d211170e86 implement relative pitch macro mode 2022-04-28 01:31:16 -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 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 9eaf600b4b GUI: rename Amiga/Sample to Sample 2022-04-27 17:44:00 -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 2a952b1a66 dev87 - C64 changes
issue #335
2022-04-25 17:55:48 -05:00
tildearrow 7b79c32258 increase range of arp macro to 120 2022-04-25 14:58:58 -05:00
tildearrow 7410622425 GUI: min ins selector width fix 2022-04-21 17:39:13 -05:00
tildearrow a4ff0c3876 GUI: fix relative/fixed toggle label being wrong 2022-04-18 04:18:33 -05:00
tildearrow fc8a130c71 implement panning macro
except for QSound
2022-04-17 14:15:57 -05:00
tildearrow c9324e04bd GUI: vertical C64 envelope editor 2022-04-17 02:51:03 -05:00
tildearrow 768419f461 GUI: implement GB envelope view 2022-04-17 01:15:34 -05: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 8669e2cddc GUI: a better look for panning macro 2022-04-16 17:24:40 -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 be483470ef GUI: add "Use standard OPL waveform names" option 2022-04-14 21:57:39 -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 24209c7853 dev82 - amiga wavetables
closes #16 (yay!)
2022-04-12 01:19:00 -05: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
tildearrow 51207e58ad part 2 - finally 2022-04-10 16:52:03 -05: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 55639747ee Make GCC happy 2022-04-10 16:32:58 +09: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
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
tildearrow 5bd076d13e initial bring-up of the wave synth
issue #16
2022-04-08 02:11:33 -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 b162c09f7c GUI: OPZ instrument editor work - dev77 2022-04-07 00:45:53 -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 590b21bc37 GUI: prepare for FDS ins editor 2022-04-04 13:26:02 -05:00
tildearrow ac3772c024 initial FDS bring-up 2022-04-03 22:37:16 -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 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 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 d321292543 separate VRC6 and VRC6 saw ins types 2022-03-31 15:25:58 -05: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 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
tildearrow 6e35640537 GUI: less annoying PET waveform view 2022-03-25 02:10:44 -05:00
cam900 39654bfa86 Merge branch 'master' of https://github.com/tildearrow/furnace into n163 2022-03-24 13:11:22 +09: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 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
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 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
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 dce68749d6 GUI: work on the drum UI 2022-03-17 02:07:46 -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 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 8355aa0175 GUI: OPL 4-op algorithm images 2022-03-15 00:09:45 -05: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 a96fd5727e GUI: begin working on unified ins/wave/sample list 2022-03-14 00:26:27 -05:00
tildearrow cb3c4e2302 GUI: clamp waves to max value 2022-03-11 17:00:57 -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
cam900 3d13a7d446 Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010 2022-03-10 03:21:02 +09:00
Natt Akuma 80e3148a43 Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-09 18:06:47 +07:00
tildearrow 698b8e960f I must be blind 2022-03-08 14:20:21 -05:00
tildearrow 42a3391574 GUI: add OPZ waveforms 2022-03-08 13:46:48 -05:00
tildearrow ad19a69f27 GUI: improvements to OPL ins edit 2022-03-08 13:12:20 -05:00
cam900 6c432bc42e Allow Left waveform can be invertable,
Improvement documents
2022-03-09 00:50:10 +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
tildearrow 0210548291
swan let's go
Add WonderSwan support and flatten second chip checks in VGM export into variables
2022-03-07 23:05:32 -05:00
tildearrow cdd45bb18c allow detune 4 2022-03-07 22:28:20 -05:00
tildearrow ec007b4443 OPL: more work - still not there yet 2022-03-07 18:19:25 -05:00
cam900 65149a466f Fix accidently auto-generated spaces 2022-03-08 00:15:21 +09: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 55934bc044 Fix crash 2022-03-07 13:09:25 +09:00
cam900 458f8c5881 Fix instrument allocation 2022-03-07 12:21:51 +09: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 c684107b11 not a voice 2022-03-05 13:21:03 -05:00
freq-mod e3a27cb37c
Change OPLL friendly param names
to be less cringy
2022-03-05 19:06:46 +01:00
Natt Akuma 9abf872ff3 Add VERA support for Commander X16 2022-03-04 18:20:38 +07:00
tildearrow 59d813db7c PCE: add noise macro (finally!) 2022-03-04 02:20:13 -05:00
tildearrow 8758277199 OPLL: implement fixed freq mode for drums
issue #249
2022-03-04 01:18:16 -05:00
tildearrow 6132aa666e GUI: hide duty/wave macros in OPLL/OPL 2022-03-03 18:10:41 -05:00
tildearrow 05bdfe74db GUI: fix some out-of-range sliders in OPLL 2022-03-03 17:23:55 -05:00
tildearrow 29474cd5c7 GUI: possibly expand fixed arp macro range
untested
2022-03-03 14:50:23 -05:00
tildearrow d9ae033f32 OPLL: 95%
FM macros working

TODO:
- proper drums
2022-03-01 00:56:13 -05:00
tildearrow f8046facfc GUI: make sliders right-clickable 2022-02-28 22:42:52 -05:00
tildearrow f8e7dd7214 GUI: hopefully finish OPLL op macro interface 2022-02-28 18:38:36 -05:00
tildearrow bd9289cfdd store OP macros
todo
2022-02-28 18:16:05 -05:00
tildearrow 4abaf4b9ec fix 2022-02-28 14:32:17 -05:00
tildearrow 90ad8b5268 OPLL: 91%
GUI improvements
soon I gotta allocate macros for the YMU759 params

TODO:
- FM macros
- drums mode
- muting
2022-02-28 14:13:14 -05:00
tildearrow 271b3fb0fe OPLL: 80%
accuracy fixes pending though
then macros and then drum mode
2022-02-26 03:27:37 -05:00
BlastBrothers 577c281a17 Inst type combo box shows all the instruments 2022-02-24 18:15:18 -05:00
BlastBrothers 101e2c4383 Mixer: Wide bars/invert box moved to reduce height 2022-02-24 17:45:37 -05:00
BlastBrothers b95e0691a4 Wavetable graph no longer fills the whole window 2022-02-23 22:56:31 -05:00
BlastBrothers 9f69e5e204 Wavetable text input now spans the whole width 2022-02-23 14:25:06 -05:00
BlastBrothers c139242611 Had to make the FM editor a little bit shorter 2022-02-23 12:00:48 -05:00
BlastBrothers 1c33fe0edb force update 2022-02-23 11:51:02 -05:00
BlastBrothers 9237a0f6fa
Merge branch 'tildearrow:master' into master 2022-02-22 20:09:41 -05:00
BlastBrothers 71efc3d7c3 Reverse sliders so louder/longer is on the right 2022-02-22 19:15:00 -05:00
BlastBrothers c128463edc FM editor fits without vertical scrollbar at 1080p 2022-02-22 13:21:29 -05:00
BlastBrothers c345acd3f7 Handle cases where AR, Dr, or D2R are 0 2022-02-22 12:45:46 -05:00
BlastBrothers d3497c1ed0 Minor code cleanup 2022-02-22 11:55:13 -05:00
BlastBrothers 765cca1451 revert horiz SL line behavior 2022-02-22 09:20:05 -05:00
BlastBrothers d0aaf581f5 Slopes of DR and D2R stay constant when SL changes 2022-02-22 09:16:36 -05:00
BlastBrothers 532d2387c5 SL line again (yes, the env clips thru the window) 2022-02-22 08:31:48 -05:00
BlastBrothers f5f4aa00a1 Draw two lines to SL, changed env horiz. scaling 2022-02-22 08:25:09 -05:00
Waldemar Pawlaszek 79e53cfd10 Merge branch 'master' of git://github.com/tildearrow/furnace into tildearrow-master
# Conflicts:
#	src/gui/insEdit.cpp
2022-02-22 09:13:49 +01:00
tildearrow 721445cf07 release v0.5.7 (for real this time)
also fix oscilloscope and add layout reset option
2022-02-22 02:01:59 -05:00
tildearrow a253e3d016 GUI: improve arp macro view 2022-02-21 23:33:44 -05:00
BlastBrothers 600f54a402 Envelopes now scale with TL 2022-02-21 23:17:19 -05:00
BlastBrothers 78a609b438 Draw release as shaded triangle in background 2022-02-21 18:17:25 -05:00
BlastBrothers a840ec7929 Compress the envelope horizontally 2022-02-21 17:23:07 -05:00
BlastBrothers 5466551e5a Horizontal line showing sustain 2022-02-21 16:31:52 -05:00
BlastBrothers 90a67666c5 Env size, ssg tickbox, tab names 2022-02-21 13:59:19 -05:00
BlastBrothers 964fc56030 tab names, env size, ssg tickbox 2022-02-21 13:55:26 -05:00
Waldemar Pawlaszek 8a8c8406b7
Merge branch 'tildearrow:master' into master 2022-02-21 05:58:25 +01:00
tildearrow e697c055b6 replay keyOn in active channels during forceIns
fixes an issue when playing orders
2022-02-20 21:39:14 -05:00
Waldemar Pawlaszek 2e4c7ec60a Initial Atari Lynx Support 2022-02-20 18:15:15 +01:00
tildearrow 859ac5e373 GUI: add the rest of instrument types
NO UI YET
2022-02-19 03:37:47 -05:00
tildearrow 5ef34eb140 GUI: hide volume macro on GB instruments 2022-02-17 22:25:53 -05:00
tildearrow 0feba09de2 GUI: code split, part 1 2022-02-17 13:08:17 -05:00