Commit graph

644 commits

Author SHA1 Message Date
tildearrow cb0a8396c4 improve 2023-08-24 04:31:32 -05:00
tildearrow 95b0b25011 Merge branch 'master' into macro-values-fix 2023-08-24 03:43:56 -05:00
Electric Keet 92773adb37 Correcting an ampersand.
Little things like this make a difference.
2023-08-23 09:47:31 -07:00
tildearrow 5c71b64195 GUI: improve wavetable tab in ins edit 2023-08-23 02:19:36 -05:00
Electric Keet ab76546f7a Fixing the fix.
This checks for both values being set to zero (their freshly-initialized state, which shouldn't happen in normal use) and sets them to proper defaults if so. Otherwise, it uses what was already there.
2023-08-22 14:23:32 -07:00
Electric Keet 4a9bf44b56 Fix macro mode changes resetting Bottom and Top. 2023-08-22 13:24:45 -07:00
tildearrow 70f774312b GUI: OPLL preview 2023-08-21 19:56:22 -05:00
tildearrow 617ee5e324 THIS CRASHES 2023-08-21 17:24:41 -05:00
tildearrow d74172680f GUI: prepare FM preview for the other OPs 2023-08-20 20:18:27 -05:00
Electric Keet 9397f95499 Vertical label alignment for macros.
I don't know how I missed these. I use them constantly!
2023-08-20 14:39:03 -07:00
tildearrow c05efedee0 GUI: improve single macro view 2023-08-16 00:43:15 -05:00
tildearrow 4707ef6979 GUI: center it 2023-08-15 22:25:01 -05:00
Electric Keet cb5f59d02b Select the correct amount of vertical space.
Tested in both occurring situations.
2023-08-15 16:55:53 -07:00
Electric Keet 02ef1549dd Fixed vertical centering. 2023-08-15 14:58:50 -07:00
Electric Keet f09ef69da1 Break "no instrument selected" lines.
In the instrument editor, when instruments are loaded but no instrument is selected, there's a dropdown to select a type and then "or Open or Create New"... but on one line, they're too long for the window's width. With this, they're on two lines.
2023-08-15 11:58:05 -07:00
tildearrow 6ae8f615d9 we got custom icons 2023-08-14 20:02:10 -05:00
tildearrow fc16164dbd
Merge pull request #1342 from tildearrow/c140
Chicken ice cream
2023-08-12 16:29:49 -05:00
tildearrow 393af54938 GUI: bring the combo box back 2023-08-12 16:21:24 -05:00
cam900 14c5d94499 C140 Part 2 2023-08-09 20:30:00 +09:00
Electric Keet 3effd9e506 Yet more vertical centering of labels. 2023-08-06 22:47:17 -07:00
tildearrow 97d44d9a26 GUI: Namco 163 offset -> position 2023-07-29 13:43:49 -05:00
tildearrow c2f83a3aef GUI: remove ability to save legacy .fui 2023-07-27 01:35:28 -05:00
tildearrow 677f7fe682 ES5506: some cleanup
and fix sample map... ugh

issue #1282
2023-07-26 19:16:57 -05:00
tildearrow 20418bb490 add TED to Furnace
#855 #873
2023-07-23 04:42:38 -05:00
tildearrow ad88ce46ab dev164 - Namco 163: improvements, part 4
- per-channel wave offset/length
- wave load position/length effects
- global wave load effects that actually make sense
- update doc
2023-07-21 19:54:35 -05:00
tildearrow 9f9b946522 Namco 163: improvements, part 3
revive the wave length macro
2023-07-20 19:17:00 -05:00
tildearrow 7cc166beb0 Namco 163: improvements, part 2 2023-07-20 18:23:58 -05:00
tildearrow b087b28325 remove Namco 163 name setting 2023-07-20 16:50:19 -05:00
tildearrow d779b4c516 Namco 163: get rid of wave load
part of some serious work... the global wave load feature will be improved
2023-07-19 14:29:38 -05:00
tildearrow b42614189f Namco 163: dang 2023-07-19 01:43:41 -05:00
cam900 7aaa52297e Merge branch 'master' of https://github.com/tildearrow/furnace into k053260 2023-07-10 19:56:29 +09:00
tildearrow 494572e4e5 GUI: display correct OPLL preset for chip type 2023-07-09 05:35:49 -05:00
tildearrow 62c5ec83f4 GUI: fix OPLL FB/DC/DM preview for preset patches 2023-07-09 05:28:14 -05:00
cam900 ac8db58cbf Merge branch 'master' of https://github.com/tildearrow/furnace into k053260 2023-07-06 20:00:20 +09:00
tildearrow a69b02f525 GUI: add patch number to OPLL patches 2023-06-30 17:31:23 -05:00
cam900 7402575d11 Merge branch 'master' of https://github.com/tildearrow/furnace into k053260 2023-06-17 10:41:56 +09:00
tildearrow 7f0dc576d8 GUI: possibly fix asset name carry-over issue
issue #1155
2023-06-11 18:20:07 -05:00
tildearrow 27935cec11 GUI: add option to copy WaveSynth out to new wave 2023-05-02 01:53:39 -05:00
cam900 523e08ed5c Merge branch 'master' of https://github.com/tildearrow/furnace into k053260 2023-05-02 13:46:56 +09:00
tildearrow 6ec9696a50 GUI: allow right-clicking vertical sliders! 2023-04-20 04:01:00 -05:00
tildearrow 381147fc1f GUI: fix some sliders not being right-clickable
issue #1065
2023-04-20 03:43:35 -05:00
cam900 f2ae73aee9 Merge branch 'master' of https://github.com/tildearrow/furnace into k053260 2023-04-13 12:04:31 +09:00
tildearrow b9b121efdf GUI: new sample map UI, part 4
right click menu
2023-04-12 01:38:44 -05:00
tildearrow e4bfcd9850 GUI: new sample map UI, part 3
keyboard input
2023-04-12 00:50:31 -05:00
tildearrow 7af514a658 GUI: new sample map UI, part 2
next commit will introduce keyboard input
2023-04-11 19:41:20 -05:00
tildearrow f90ca2410f GUI: new sample map UI, part 1
keyboard/MIDI missing
2023-04-11 18:17:30 -05:00
tildearrow 8d4fa6e0cc prepare for new sample map UI 2023-04-10 19:49:14 -05:00
cam900 548aa5e6ac Merge branch 'master' of https://github.com/tildearrow/furnace into k053260 2023-04-08 08:51:00 +09:00
tildearrow 99d2199db6 dev152 - sample map notes, part 1 2023-04-07 16:54:05 -05:00
cam900 9c56c3d01b [WIP] K063260 skeleton 2023-04-02 14:32:47 +09:00
tildearrow 09a30570de GUI: add an FM preview
currently for OPN only
2023-03-18 04:22:50 -05:00
tildearrow de2a6c418b VIC-20: add on/off macro 2023-03-17 16:50:42 -05:00
tildearrow 49c47087e5 GUI: C64 macro mode usability fix
reset macro zoom when changing macro modes
2023-03-17 14:54:00 -05:00
freq-mod f29867a655 Revert "fix the legendary chiptune moment"
This reverts commit c2761e4f41.
2023-03-12 13:07:21 +01:00
freq-mod 0db4dc0179 Revert "fix this for real"
This reverts commit 9b92b118c6.
2023-03-12 13:07:14 +01:00
freq-mod c33d587622 Revert "fix offset"
This reverts commit b289d4ac1d.
2023-03-12 13:06:34 +01:00
freq-mod b289d4ac1d
fix offset
beyond that point, i can't improve
2023-03-10 23:33:50 +01:00
freq-mod 9b92b118c6
fix this for real
sorry for indentation
2023-03-10 22:54:09 +01:00
freq-mod c2761e4f41
fix the legendary chiptune moment
it still distorts on the first key on, but not later on
2023-03-10 15:42:58 +01:00
freq-mod 708c0e359a
n163: macro removal part 2 2023-03-09 21:39:32 +01:00
freq-mod 5e75239e38
hide pointless n163 macros
hopefully it works
2023-03-09 17:17:08 +01:00
tildearrow 3cede1c2fd GUI: Namco WSG noise macro 2023-03-09 02:37:22 -05:00
tildearrow 30448dd09c GUI: PV-1000 ought to have a vol macro at least 2023-03-05 16:48:19 -05:00
tildearrow 77f1ca3339 rename D65784221391491G18414119492 to PV1000
it probably was only used there anyway
2023-03-05 14:01:21 -05:00
cam900 dbd1f56a10 Add NEC D65010G031 support
chip flag and instrument color is placeholder
2023-03-05 14:01:44 +09:00
tildearrow 3de621796e GUI: add modulation table string for FDS/VB 2023-02-18 22:40:15 -05:00
tildearrow c9eb4482b0 ES5506: new vol/pan range is 4095 2023-02-12 01:48:02 -05:00
cam900 5c06470145 Add SM8521 instrument type 2023-02-11 21:56:41 +09:00
tildearrow bcde1d532f ES5506: remove envelope macros 2023-02-06 05:06:54 -05:00
cam900 2c5dc0875a Address comments 2023-02-06 09:16:28 +09:00
cam900 dd79ae401b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-02-05 10:00:27 +09:00
tildearrow 9bf38e02ca GUI: ins edit disable scroll if no scroll range 2023-02-01 14:33:41 -05:00
tildearrow 1dec8bff40 GUI: prevent user from sliding macros out of view 2023-02-01 14:16:20 -05:00
cam900 3403e10b0b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-24 08:14:29 +09:00
tildearrow 45faadd4c8 update copyright year 2023-01-19 19:18:40 -05:00
cam900 7340d029ae Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-19 16:51:27 +09:00
tildearrow 2c528c9ca8 OPN: add LFO speed macro
issue #927
2023-01-16 16:10:34 -05:00
cam900 46865b3adb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-16 10:07:13 +09:00
tildearrow 1a27bf3373 GUI: fix KSL values 1/2 being swapped in OPL 2023-01-15 14:12:23 -05:00
cam900 b64c089c56 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-13 09:48:52 +09:00
tildearrow 009b2c080d GUI: hide arp/pitch macros on 6258/6295 ins 2023-01-12 16:23:59 -05:00
cam900 536c345763 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-12 23:31:56 +09:00
tildearrow 77f7fcd555 Merge branch 'master' into newDispatch 2023-01-04 23:03:23 -05:00
tildearrow 8e63257756 GUI: fix possible crash in grid mode 2023-01-04 22:59:21 -05:00
tildearrow abf2461573 OPL: increase range of pan macro 2023-01-04 19:16:37 -05:00
cam900 8a71a81ffb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-02 09:26:05 +09:00
tildearrow 53b8e013e7 GUI: hide wave macro from RF ins 2022-12-29 05:15:00 -05:00
cam900 ff937604c7
Merge branch 'master' into es5506_alt 2022-12-29 16:18:24 +09:00
tildearrow 6811413afc GUI: fix MSM5232 part labels 2022-12-28 15:31:26 -05:00
cam900 96c0bea63b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-25 18:48:29 +09:00
tildearrow 618ff1d393 release v0.6pre2 2022-12-24 23:39:44 -05:00
tildearrow 0914359063 dev131 - SNES: add more sustain modes and D2 2022-12-24 18:03:57 -05:00
cam900 a793bed56d
Merge branch 'master' into es5506_alt 2022-12-24 12:01:03 +09:00
tildearrow 0d10b99cf7 POKEY: add AUDCTL macro 2022-12-20 02:59:26 -05:00
tildearrow ba674a0329 start work on POKEY
to-do:
- add ability to change AUDCTL
- bass shape frequency and waveform mapping
- easy noise???
2022-12-19 19:45:04 -05:00
cam900 429aed0ab1 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-17 15:00:44 +09:00
cam900 d5f44557c2 add (Partial) GA20 support 2022-12-15 20:03:54 +09:00
cam900 2e7a0c37e3 Add DIV_CMD_SAMPLE_DIR command and macro 2022-12-15 17:35:01 +09:00
cam900 8365d1c977
Merge branch 'master' into es5506_alt 2022-12-15 16:06:59 +09:00
tildearrow b619580b4b add ins type for Pokémon Mini and GA20 2022-12-15 00:47:46 -05:00
tildearrow dafa0189a8
Merge pull request #776 from cam900/k007232
Add K007232 support
2022-12-14 23:59:41 -05:00
tildearrow 4566068afd SADFGLKJHASHDJLFK 2022-12-14 23:38:38 -05:00
cam900 b2e15a5967
Merge branch 'master' into es5506_alt 2022-12-13 14:48:50 +09:00
cam900 2b7b227539 Merge branch 'master' of https://github.com/tildearrow/furnace into k007232 2022-12-13 14:41:35 +09:00
cam900 592bf34bf3 Addressing comments 2022-12-11 11:09:13 +09:00
cam900 c561ceceaf Add tooltips in GUI, enum-ize piano mode/Special notes 2022-12-11 04:32:51 +09:00
cam900 76cdc3a6a5 (Partially) K007232 support
Chip ID is placeholder.
2022-12-08 14:18:22 +09:00
cam900 2ec35d903f Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-04 16:53:54 +09:00
tildearrow 6b34b9fcab GUI: add functions to inhibit inertial scrolling 2022-12-01 04:28:12 -05:00
cam900 7867b59580 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-11-30 17:39:43 +09:00
tildearrow d6ae735ffe dev126 - new ins format 2022-11-20 19:19:24 -05:00
tildearrow 94512e5b20 GUI: OPLL built-in patch preview! 2022-11-15 17:51:43 -05:00
tildearrow 91e19b864e GUI: fix unsigned detune (again) 2022-11-15 16:09:24 -05:00
cam900 46880634b4 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-11-15 11:52:30 +09:00
freq-mod 9ef3ec19bc
fix YM2151 LFO shapes, correct some presets (#741)
* fix YM2151 LFO shapes, correct some presets

* pc-98 beeper clocks

1 for less advanced, earlier sound sources, 2 for more advanced, later era

* revert the last commit

* Revert "revert the last commit"

This reverts commit 0746f37052a46e5c0cf503590d3062da7d82dd20.

	zmieniono:       src/gui/presets.cpp

* Revert "pc-98 beeper clocks"

This reverts commit ba78cd44d88181d79733f6f30196bc588c762a33.

	zmieniono:       src/gui/presets.cpp

* remove beeper from zx128

finally caring about hw playback ey
2022-11-13 16:59:28 -05:00
tildearrow c12b397944 GUI: more macro editor layouts, part 1 2022-11-11 00:46:39 -05:00
tildearrow c7b2227ee0 GUI: prepare to add more macro editor layouts 2022-11-10 19:21:01 -05:00
cam900 dce48d2703 Merge branch 'es5506_alt' of https://github.com/cam900/furnace; branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-11-07 09:48:22 +09:00
cam900 9312813fe9 Fix build 2022-11-07 09:47:34 +09:00
cam900 7a803f1e73 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-11-07 09:45:54 +09:00
cam900 a5acf458ba Add tooltips in alternate FM layout 2022-11-07 09:41:48 +09:00
tildearrow 38696423ae GUI: hide second wave if it is a single-wave FX 2022-11-06 03:03:53 -05:00
Lumigado 9df88b7c98 added tooltips to 'Modern' FM instrument editor layout 2022-11-05 19:47:18 -04:00
tildearrow 7a676fb94e GUI: make wave synth preview size follow ins type 2022-11-05 16:53:54 -05:00
cam900 87cb3c49a4 Update ES5506:
Remove transwave for now
- It consumes high CPU usage, so possibly little headroom for anything else.
Fix per-voice OSC via git master
Fix default channel for ES5506
Fix macro order - Filter macro must be executed after key on
Add SSV preset
2022-10-22 17:19:39 +09:00
cam900 487607b6ae Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-10-22 10:17:00 +09:00
tildearrow 373367724b GUI: use canvasW/H instead of scrW/H*dpiScale 2022-10-20 02:34:14 -05:00
tildearrow b9b76bef0b GUI: fix unsigned detune 2022-10-16 17:57:24 -05:00
tildearrow 2cead0b7f9 Virtual Boy: phase reset macro 2022-10-15 04:00:41 -05:00
tildearrow b4b7ab86fb T6W28: honor poll 2022-10-13 03:41:40 -05:00
tildearrow 0f0c8b5567 Virtual Boy: noise length macro 2022-10-13 03:30:05 -05:00
tildearrow 843d18290d T6W28: finish it up (mostly) 2022-10-12 04:05:09 -05:00
cam900 081773b2da
Merge branch 'master' into es5506_alt 2022-10-12 15:31:38 +09:00
tildearrow a3fdf171f3 T6W28: separate instrument type 2022-10-12 00:46:33 -05:00
tildearrow 0407fa2d3e GUI: add Virtual Boy mod table editor 2022-10-10 22:17:31 -05:00
tildearrow f679aadf68 have Amiga/SNES thing'n smpl wt toggle include DAC 2022-10-10 20:56:04 -05:00
cam900 f8c494e1dd
Merge branch 'master' into es5506_alt 2022-10-09 20:05:15 +09:00
tildearrow 504778d975 Virtual Boy: more work 2022-10-08 23:25:15 -05:00
tildearrow 70361c44ca GUI: editor improvements when no asset is selected 2022-10-08 17:57:14 -05:00
tildearrow 66234df636 finish work on ADSR/LFO macro type 2022-10-07 16:47:18 -05:00
tildearrow 3ffe257158 GUI: LFO macro UI 2022-10-07 15:06:04 -05:00
tildearrow a979bc244d start working on ADSR macro mode 2022-10-07 04:11:45 -05:00
tildearrow c63ff7320e GUI: improve "no instrument seleted" prompt 2022-10-03 19:08:32 -05:00
tildearrow 4eed3dbc4d SNES: gain macro 2022-10-03 18:40:07 -05:00
cam900 66f7ab688b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-10-02 10:52:14 +09:00
tildearrow 7b55ba4e77 MSM5232: more options 2022-10-01 19:47:40 -05:00
tildearrow 62f022eea0 MSM5232: noise macro 2022-10-01 03:40:06 -05:00
cam900 930369b797 Make macOS happy 2022-10-01 17:22:18 +09:00
tildearrow 5e18edb229 early MSM5232 work 2022-10-01 03:15:40 -05:00
cam900 987cc113b4 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-30 20:01:21 +09:00
cam900 fdd53c1587 Fix crash, enum-ise reverse mode 2022-09-30 19:54:13 +09:00
tildearrow 468f434b66 chip flags rewrite, part 5 - DO NOT USE
after fixing the GUI the last thing to do is upgrade all the presets to
the new format
but that will be SO boring
2022-09-30 00:26:54 -05:00
cam900 62f1ba73eb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-29 22:05:41 +09:00
tildearrow 0acca7458d chip flags rewrite, part 2
move systemFlags to legacy status
2022-09-29 03:29:24 -05:00
tildearrow 7770ca8965 SNES: more fixes (especially GUI ones) 2022-09-28 19:33:16 -05:00
tildearrow 6028523eaf dev118 - SNES true sustain 2022-09-28 19:08:22 -05:00
cam900 81bebc5112 Reduce unnecessary changes, Volume macro fixes, calcArp 2022-09-25 19:21:49 +09:00
cam900 5a6cde65ed Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-25 18:34:36 +09:00
cam900 8e1ce1abb1 Sync to master 2022-09-25 18:32:34 +09:00
cam900 0a49d4bfd0 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-25 18:32:06 +09:00
tildearrow b4c020c11b SNES: invert/pitch mod/noise control
echo still work in progress
2022-09-25 03:33:39 -05:00
tildearrow a0dc9de262 ADSFGGGGGJKSDGHASLJKFHL 2022-09-24 19:40:03 -05:00
tildearrow c0de45ff0c Merge branch 'snes' of https://github.com/akumanatt/furnace into akumanatt-snes 2022-09-24 02:53:11 -05:00
tildearrow 04117c5098 Purposeful Conflict 2022-09-24 02:41:29 -05:00
tildearrow d0e581e4cd OPM/NES ins type split, part 2 2022-09-24 01:37:29 -05:00
tildearrow 3d5125e792 OPM/NES ins type split, part 1 2022-09-24 01:33:36 -05:00
tildearrow 5dfa089c49 GUI: some UI corrections
and prepare for OPM/NES split
2022-09-24 00:57:53 -05:00
cam900 e00758d67c Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-09-22 23:02:01 +09:00
tildearrow b053d31a6d implement KVS on the rest of FM chips 2022-09-22 01:30:51 -05:00
tildearrow ac68419b78 implement KVS on YM2612 2022-09-22 01:18:41 -05:00
tildearrow 51c142169f GUI: OPZ compact editor fixes 2022-09-21 23:25:57 -05:00
Natt Akuma 7956d41f1b SNES: Get wavesynth and envelope working
No samples, inverted volumes and E/P/N yet
It's been 3 months...
2022-09-18 18:33:54 +07:00
tildearrow 6bf6a854ef GUI: comfortable wave macro height 2022-09-17 22:55:58 -05:00
cam900 0f5a400b29 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-09-18 00:11:53 +09:00
tildearrow 587e066d43 GUI: randomize in macros under the right click 2022-09-16 00:18:14 -05:00
tildearrow aa38292ca4 GUI: fix OPLL/OPL op swapping 2022-09-16 00:04:43 -05:00
tildearrow d19c6fc236 GUI: add operator copy 2022-09-13 03:29:28 -05:00
tildearrow 6e1f54b777 YM2612: implement OpMask
will be done for OPM and the rest of the OPN chips later
2022-09-12 01:50:27 -05:00
tildearrow 7b1713758b dev114 - operator muting for OPN/OPM 2022-09-12 00:37:25 -05:00
tildearrow b82e96ec20 GUI: fix toggles losing their colors on hover 2022-09-10 23:50:53 -05:00
tildearrow 2f0e97f6d9 GUI: FM operator swapping 2022-09-10 23:20:22 -05:00
tildearrow 0ac92209d0 GUI: even more mobile work 2022-09-09 18:53:20 -05:00
tildearrow d021005f26 GUI: fix arp macro hover 2022-09-09 16:41:00 -05:00
tildearrow 7e065e4cfe GUI: more mobile UI things 2022-09-09 15:31:29 -05:00
tildearrow f7bca46a4a GUI: implement save as format in editors as well 2022-09-04 02:37:43 -05:00
cam900 54dbd0690c Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro
# Conflicts:
#	src/engine/fileOps.cpp
#	src/engine/platform/lynx.cpp
#	src/engine/platform/rf5c68.cpp
#	src/engine/platform/su.cpp
#	src/engine/platform/x1_010.h
#	src/engine/platform/ym2610.cpp
#	src/engine/platform/ym2610.h
#	src/engine/platform/ym2610b.cpp
#	src/engine/platform/ym2610b.h
#	src/engine/sysDef.cpp
#	src/gui/insEdit.cpp

Add effect command for ADPCM-A global volume, X1-010 Sample bank slot
2022-08-27 17:25:48 +09:00
cam900 4cc79fb49d Prepare for split sample chip instrument
(MSM6258, MSM6295, QSound, Sega PCM, ADPCM-A, ADPCM-B, YMZ280B, RF5C68)
Instrument color and icons are placeholder.

different volume range, hard panned/soft panned and/or independent volume per output, chip-dependent features (global volume, echo, etc)
Allow use sample in instrument tab for chip with sample support
Prepare to support X1-010 Seta 2 style bankswitch behavior
Prepare to support AY89x0 PCM DAC
Support volume for PCE sample (DAC)
Fix Lynx, Y8950 sample pitch matches to sample preview
Support PCM DAC with backward and pingpong loop mode
Reduce some codes
Add Sega PCM, AY89x0, QSound, PCM DAC, Lynx per-channel debug support
2022-08-27 16:27:36 +09:00
tildearrow 96b3ccab8a I see UI!!!! 2022-08-23 03:57:21 -05:00
tildearrow 226f43fea3 several important bug fixes to advanced arp macro 2022-08-22 19:09:08 -05:00
tildearrow c009cb3536 dev112 - prepare for advanced arp macro
this new advanced arp macro offers more flexibility and reduces code duplication
it allows you to set each step of the macro to either relative or fixed mode
(instead of just one mode for the entire macro)

the UI is still a work in progress and doesn't work well

this change is big and may break things! further fixes incoming
2022-08-22 15:59:45 -05:00
tildearrow 3b6fa212b8 implement macro speed/delay 2022-08-22 03:52:32 -05:00
tildearrow 2650fe609f dev111 - many macro changes
- max macro length is now 255
- loop/rel pos is now unsigned (255 = no)
- prepare for macro speed/delay
2022-08-22 02:13:33 -05:00
tildearrow f01be34b5e GUI: highlight current macro position
not for op macros (yet)
2022-08-20 01:10:30 -05:00
tildearrow 4d057d3328 dev109 - define SNES instrument params 2022-08-19 19:42:01 -05:00
tildearrow 9c80f91870 relative 2022-08-19 00:00:10 -05:00
cam900 13158b86cf Clamp height of panning macro when higher than 128
so, current filter macro behavior is:
"Fixed" option enabled: override current filter value to macro value
"Fixed" option disabled: current filter value = filter value determined from ES5506 tab or command ± filter macro value
2022-08-19 12:03:25 +09:00
tildearrow 9bd3f6c34b remove delta mode entirely
so it was used on the filter but i'm not sure why couldn't it be
done in absolute mode instead
2022-08-18 18:36:22 -05:00
tildearrow c473f94f0d remove delta mode
it's unnecessary in my opinion

unless I am missing something
2022-08-18 18:21:51 -05:00
tildearrow aa1e34ffd3 Revert "Fix duplication"
This reverts commit 446e62c69f.
2022-08-18 18:05:34 -05:00
tildearrow fa6a61e493 Revert "Fix panning macro height"
This reverts commit 087ff27f06.
2022-08-18 18:05:13 -05:00
cam900 087ff27f06 Fix panning macro height 2022-08-19 00:18:46 +09:00
cam900 446e62c69f Fix duplication 2022-08-18 21:29:48 +09:00
cam900 5190c6daab Implement ES5506 instrument type
ES5506 has these features:
- 16 bit independent volume register per left/right output (Logarithmic, 4 LSB is for envelope)
- Programmable filter per each channels, 4 pole, 4 filter mode and 2 16 bit coefficient register (4 LSB is for envelope)
- Hardware envelope

Add more than 2 macro type support
"Delta" macro type: Use delta from previous value
2022-08-18 21:20:10 +09:00
tildearrow 4e7eb728db GUI: fix moving GB HW seq step down 2022-08-17 18:37:16 -05:00
tildearrow 55d12e1ada GUI: finally re-organize the GB env UI 2022-08-17 18:29:40 -05:00
tildearrow 39feda54ac OPZ: volume macro should go to 127 2022-08-12 04:11:17 -05:00
tildearrow b156336216 GUI: fix Game Boy ins edit crashes 2022-08-11 14:27:33 -05:00
tildearrow 00ae5b4142 GUI: fix volume macro always being 15
issue #629
2022-08-11 11:30:45 -05:00
tildearrow df10b6cc59 Game Boy: hardware sequences, part 3
the previous commit was part 2
2022-08-10 14:16:26 -05:00
tildearrow 28698beaf3 dev106 - Game Boy: implement hw seq
and prepare for software envelope maybe
2022-08-10 01:55:44 -05:00
tildearrow 800f08b0fd Game Boy: hardware sequences, part 1
still not working! just the UI for it
2022-08-07 06:06:14 -05:00
tildearrow 5534f55f7a dev104 - add "is sample" flag to Sound Unit ins 2022-08-06 04:04:18 -05:00
tildearrow eafbf24290 GUI: YM2423 patch names
thanks freq-mod!
2022-08-03 17:31:00 -05:00
tildearrow 0183c5d9ff GUI: remove one new line 2022-08-03 14:41:53 -05:00
tildearrow 034b4fd4f6 GUI: YMF281 patch names
thanks nicco1690!
2022-08-03 00:10:32 -05:00
tildearrow 1f57d09fbf GUI: display correct OPLL patch names 2022-08-02 23:16:42 -05:00
Aleksi Knutsi 8011e7adc7
Implement Phase Reset Timer macro for Sound Unit (#573)
* Implement Phase Reset Timer Macro

* And make the macro actually work

* Delete ex4Max variable
2022-07-23 19:13:30 -05:00
tildearrow a137eefd20 GUI: refine the Namco [C]163 chip name option 2022-07-21 19:00:32 -05:00
tildearrow f6b45d3d9b GUI: add Namco C163 chip name option 2022-07-21 15:21:29 -05:00
cam900 4e8d71fc22
Fix sample map struct
Structize sample map variable is for easily extend features.
2022-07-21 13:42:20 +09:00
cam900 a5959ae7b9 Struct-ize sample map variable 2022-07-20 23:01:06 +09:00
cam900 f3b9c6dde6
Merge branch 'master' into es5506_alt 2022-07-02 13:28:49 +09:00
tildearrow 96bc63470f GUI: add unsigned detune option
closes #559
2022-06-28 15:06:22 -05:00
tildearrow f8347ac50f GUI: fix several things in OPL drums ins editor
- alternate layout being wrong
- macros being wrong
2022-06-27 03:30:57 -05:00
cam900 8ae1d36ab6 Typecasting here 2022-06-26 09:56:07 +09:00
cam900 04af689ae9 Fix typecasting(again) 2022-06-26 09:28:18 +09:00
cam900 3119ed8cc5 Merge remote-tracking branch 'upstream/master' into es5506_alt 2022-06-26 00:47:34 +09:00
cam900 2b5bb91237 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (55 commits)
  GUI: get rid of these stupid icons
  update to-do list
  MSM6258: the final bits
  MSM6258: clock/rate selection
  MSM6258: prepare for rate changing
  Update n163.md
  YM2612: DualPCM per-channel osc
  YM2612: more DualPCM muting fixes
  YM2612: fix DualPCM muting
  GUI: finish the blank ins up
  GUI: add "blank new instrument" option
  GUI: add mono/poly note preview button
  PC speaker: don't use printf/perror
  YM2612: CSM arpeggio and slides
  YM2612: - C   S   M -
  YM2612: half-working CSM
  YM2612: earliest completely untested CSM work
  delay collapse/expand pattern/song feature :<
  GUI: much more stable osc view
  YM2612: fix DAC output not visible in per-chan osc
  ...

# Conflicts:
#	src/engine/platform/genesis.cpp
#	src/engine/platform/genesis.h
#	src/ta-utils.h
2022-06-26 00:36:36 +09:00
Natt Akuma 22dd22ca33 Allow accessing all 256 waves in macros 2022-06-22 19:38:29 +07:00
tildearrow 2313e4fcc3 GUI: temporarily remove freqs in sample map 2022-06-19 14:03:36 -05:00
cam900 0c1a8bc001 Merge branch 'master' into preset1 2022-06-17 09:19:17 +09:00
tildearrow 327a013186 GUI: finish alternate FM layout 2022-06-13 23:22:17 -05:00
tildearrow bd7710991b GUI: a bit more to it 2022-06-13 03:57:31 -05:00
tildearrow 17fb152e25 GUI: work on alternate FM layout 2022-06-13 03:54:42 -05:00
cam900 e0e6a45000 Prepare for reducing duplicates for 4op FM related codes, Add and correct bunch of presets, Add various clock, type options for chips
Prepare for reducing duplicates for 4op FM related codes

Add and correct bunch of presets
- mostly based on MAME source.
- Neo Geo AES uses slightly difference clock for NTSC, PAL colorbust frequency.
- Turbosound FM + SAA: Some Turbosound FM has additional SAA1099, for additional sound channel and Plays SAM coupe tune?
- PC-98:
 - Sound Orchestra: OPN with hardpanned stereo, some model has with OPL family FM addons.
   V variation has Y8950 and supports ADPCM.
 - Sound Blaster 16 for PC-9800: This famous PC sound card is also exists for PC-98, with optional OPN PC-9801-26(K) compatibility on some models.
- IBM PCjr: PC with SN PSG sound, but less popular than previous models, and compatible Tandy 1000.
- Tandy 1000: PCjr and previous IBM PC compatible, also has SN PSG (later embedded in their ASIC, like Sega).
- Hexion: One of konami's budget arcade hardware with SCC + MSM6295 sound system, like their amusement hardware in this era.
- DJ Boy, Atari JSA IIIs, Skimaxx: How to panning sound or plays stereo sound on MSM6295 - just use MSM6295s per each output!
- Air Buster: One of arcade hardware with OPN + MSM6295 sound system, Used this configuration is also some hardwares.
- Tecmo system: One of arcade hardware with pretty unique sound system: OPL3, YMZ280B, MSM6295; first 2 entry is mostly used in music, last entry is mostly used in sound effect.
- Sunsoft Shanghai 3: Predecessor of Sunsoft Arcade is using YM2149 rather than FM, MSM6295 is still there.
- Atari Klax: example of arcade hardware sound system with single MSM6295 only.
- Ikari warriors: This early SNK Triple-Z80 hardware uses 2 OPL1s and no ADPCM supports.
- Coreland Cyber Tank: This rare arcade machine's stereo sound is like SB Pro, but it's actually produced in 2 Y8950s.
- Data East MLC: Latest arcade hardware from Data East, with single YMZ280B for sound.
- Kaneko Jackie Chan: Predecessor of Super Kaneko Nova System hardware, also with YMZ280B.
- Super Kaneko Nova System: Latest arcade hardware from Kaneko, with single YMZ280B for sound. this announced 3D acceleration addon, but finally cancelled.
- Toaplan 1: Home of Late 80-Early 90s Good ol' stuffs, Example of arcade sound system with single OPL2
- Namco Pac-Land: and this era, Namco start to change Custom 15 WSG to their Custom 30 WSG with featured RAM based waveform, and mailbox feature.
- Namco System 1: One of latest usage of Custom 30 WSG, with OPM FM hardware and 8 bit DAC and Stereo output.

Add various clock, type options for chips
- SN7: Prepare to add 17 bit noise variation, Game gear stereo extentsion, NCR PSG variation (MAME core only for now)
- OPN, OPNA: Add placeholder for prescaler option
- OPL: Prepare for OPL3L, OPL4 downscaled output rate option
2022-06-06 19:04:52 +09: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
cam900 3b411cd14f Fix dead link, Frequency, Instrument editor related issue 2022-05-31 13:48:35 +09:00
cam900 a3bca9efa7 Merge remote-tracking branch 'upstream/master' into es5506_alt 2022-05-31 12:18:46 +09:00
tildearrow e9f17168a4 prepare for OPL drums instrument type
#310
2022-05-30 18:37:07 -05:00
cam900 32152fd89b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (53 commits)
  prepare for better backward writing
  VGM export: fix oops
  GUI: drag-and-drop ins/wave/sample loading
  GUI: add "set loop" to sample editor
  MSM6295: VGM export!
  oops
  MSM6295: add rate select effect (20xx)
  update meteor shower
  MSVC is better than GCC right?
  update to-do list
  door into summer
  GUI: implement input for touch events
  GUI: update SDL hints
  fix Termux build
  add another demo song
  add demos/ecolove.fur
  update to-do list
  update demos/README.md
  add new demo songs
  dev99 - major Fractal system change
  ...

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/platform/genesis.cpp
#	src/engine/playback.cpp
#	src/engine/song.h
#	src/engine/vgmOps.cpp
2022-05-29 13:47:39 +09:00
cam900 cbf20c6320 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (58 commits)
  SMS: early Nuked-PSG modding
  SMS: add modified Nuked-PSG core
  build release and don't strip
  strip MinGW builds
  FDS: a bit more
  FDS: set a post-amp value
  FDS: fix NSFplay core low pass filter precision
  fix .dmf saving
  fix compilation on GCC 12
  Fix multithreading on CI
  Lynx: why did I not commit this
  Lynx: more sample improvements
  Lynx: sample improvements
  Lynx: add sample support!
  GUI: fix wavetable list oversight
  WaveSynth: fix phase modulation - again
  GUI: fix possible wave editor crash
  WaveSynth: fix phase modulation
  Lynx: add phase reset macro
  fix another fucking IGFD crash bug
  ...

# Conflicts:
#	src/gui/insEdit.cpp
#	src/gui/presets.cpp
2022-05-27 13:01:06 +09: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 42a082b2a7 Lynx: add phase reset macro 2022-05-25 00:28:47 -05:00
cam900 17881837ab Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (64 commits)
  finish wave synth!
  update contributing guidelines
  Namco WSG: make non-linear slides faster
  wave synth work
  SoundUnit: fix order of filter bits
  GUI: add Namco arcade presets
  implement some dual wave synth effects
  Y8950: fix ADPCM VGM export
  Namco WSG: finish it up
  Namco WSG: 8 channel WSG (CUS30) now works
  Namco WSG: muting
  Namco WSG: 8 channel WSG (15xx) now works
  Namco WSG: 3 channel WSG now works
  YM2612: change key on/off strategy
  GUI: fix scrollbars not working
  Please enter the commit message for your changes.
  shhhhhhhhhhhh
  update to-do list
  Whoops
  it doesn't work (yet)
  ...

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/platform/su.cpp
#	src/engine/playback.cpp
#	src/engine/sample.cpp
#	src/engine/sample.h
#	src/engine/song.h
#	src/engine/vgmOps.cpp
#	src/gui/presets.cpp
2022-05-25 00:52:00 +09:00
cam900 f7ba60bfa9 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (46 commits)
  PCE: fix two issues
  SegaPCM: fix samples bigger than 64KB
  SCC: implement VGM soft reset
  GUI: add option to clear orders
  GUI: implement "clear all subsongs"
  GUI: fix crash when deleting current subsong
  CI: only 1 core for MinGW
  Fix AY8910 envelope hangs
  OPL: fix fixed frequency drums
  pick nits: the sequel
  pick nits
  AY: fix possible hang
  hide .ftm format
  Add x2 icon variations as well
  Install more size variations on Linux
  OPLL: fix fixed drums freq
  GUI: make backupTimer atomic
  Have OPN* platforms set the correct YM2149 chip type.
  update to-do list
  ZX beeper: clarify effects (will be done later)
  ...

# Conflicts:
#	src/engine/platform/segapcm.cpp
2022-05-22 18:24:17 +09: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 315c2645d2 Namco WSG: finish it up 2022-05-21 02:56:36 -05:00