Commit Graph

305 Commits

Author SHA1 Message Date
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