Commit graph

2330 commits

Author SHA1 Message Date
tildearrow 1c98975771 GUI: Android scaling detection fix 2022-11-04 14:55:26 -05:00
tildearrow 6fbe11696e GUI: hex mode for SNES filter MML string 2022-11-03 03:22:25 -05:00
tildearrow cb34b7e1a7 GUI: add SNES echo filter MML string 2022-11-03 02:59:37 -05:00
cam900 bf6487b8bd
Merge branch 'master' into es5506_alt 2022-11-03 13:44:07 +09:00
tildearrow f69db930fc GUI: make sure Λ is loaded 2022-11-02 04:01:25 -05:00
tildearrow 99db23d933 GUI: update font_plexSans.cpp 2022-11-02 04:01:16 -05:00
tildearrow a3cb770b75 add another demo song
by FΛDE
2022-11-02 03:52:49 -05:00
tildearrow 254288ccd6 GUI: add presets for PCM DAC, Pong and NES 2022-11-02 03:40:32 -05:00
tildearrow d4e1a3e65f GUI: wave/sample preview using piano 2022-11-02 03:30:51 -05:00
tildearrow 4531e9fc9c load .brr loop position if present 2022-11-01 02:47:27 -05:00
tildearrow 4508fea6e0 GUI: fix feeling lucky not changing system name 2022-10-30 21:57:52 -05:00
cam900 72594d978b Fix ES5506 command before keyon, Fix freqOffs change behavior, Fix initializing behavior, Reduce unnecessary variable 2022-10-29 21:49:31 +09:00
cam900 792beeb409 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-10-29 20:33:36 +09:00
tildearrow ddd9564b8c another demo song 2022-10-28 15:05:59 -05:00
tildearrow 896249ab93 GUI; mark modified when typing in comments 2022-10-28 14:33:42 -05:00
tildearrow c9d7b371e1 GUI: batch wave/sample loading 2022-10-28 04:11:27 -05:00
tildearrow d7d744e633 GUI: batch instrument loading 2022-10-28 03:44:17 -05:00
cam900 9378a1043f Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-10-28 13:23:32 +09:00
tildearrow b5e9500472 add new demo song
by UserSniper
2022-10-27 15:52:28 -05:00
cam900 13b2a72a01 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-10-26 12:28:24 +09:00
tildearrow e4a85a58f8 GUI: capture display orientation events 2022-10-24 22:03:27 -05:00
tildearrow 774313d89c GUI: whoops 2022-10-24 15:18:35 -05:00
tildearrow 5b3225d69c Merge branch 'master' of github.com:tildearrow/furnace 2022-10-24 14:59:00 -05:00
tildearrow 4c1cf9991b GUI: get window size on every frame 2022-10-24 14:57:12 -05:00
tildearrow 1a38ed2261 GUI: get window size 2022-10-24 04:09:25 -05:00
tildearrow 4acb6ccc09 fine, here's your Pong 2022-10-24 03:19:42 -05:00
tildearrow 1868e48c92 what is this 2022-10-23 03:03:46 -05:00
tildearrow 0d3a3741a9 GUI: fix crash when creating a wave from sample 2022-10-23 03:00:27 -05:00
tildearrow e19538af2e GUI: fix non-working mouse events after minimizing 2022-10-23 02:51:38 -05:00
tildearrow 403bc76d18 GUI: remove this shit 2022-10-22 17:28:35 -05:00
tildearrow 9b6449d320 GUI: fix Virtual Boy having a PAL option 2022-10-22 03:47:42 -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
tildearrow 0ce746d1d3 GUI: fix 3+ digit addresses in register view 2022-10-22 03:05:48 -05: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 d96674186e GUI: new scaling factor detection technique 2022-10-20 01:49:33 -05:00
tildearrow 375d060f48 GUI: prepare for new HiDPI strategy 2022-10-19 15:33:20 -05:00
tildearrow dc229078cc GUI: size constraints for effect list 2022-10-19 14:07:20 -05:00
tildearrow ca1118a40f GUI: fix crash in no asset menu (wave/sample) 2022-10-19 13:53:56 -05:00
tildearrow 7486bb17f4 GUI: fix wave edit randomize 2022-10-19 13:14:52 -05:00
tildearrow 47fb434d5b GUI: update Genesis presets to be 32 2022-10-17 16:12:10 -05:00
tildearrow 684b5a928b VGM export: prepare for "direct stream mode"
this will eventually allow for DualPCM and MSM6258 export

DO NOT USE YET
2022-10-17 04:17:00 -05:00
tildearrow 81a2bce4d4 GUI: prepare for multiple asset load 2022-10-16 19:40:14 -05:00
tildearrow 6216e286f8 GUI: mark modified cases in wave editor 2022-10-16 18:30:48 -05:00
tildearrow 40108976c3 GUI: more mark modified cases 2022-10-16 18:28:42 -05:00
tildearrow 2272028b10 GUI: mixer changes mark song as modified 2022-10-16 18:23:13 -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 ef5d6cb554 GUI: update credits 2022-10-12 15:14:28 -05:00
tildearrow 78fc022c04 GUI: format 2022-10-12 14:54:29 -05:00
tildearrow 8be5e5a9e6
Merge pull request #699 from system64MC/wavetable_interpolation_no_opf2
Wavetable interpolation
2022-10-12 14:26:43 -05:00
System64 0782e3af1d
Update waveEdit.cpp 2022-10-12 12:07:19 +02:00
System64 a51840b801
Fixed assertion crash and fixed a bug with the cubic interpolation. The interpolated waveform will now stay in phase. 2022-10-12 11:59:04 +02: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 f8896ed64c T 6 W 2 8 2022-10-12 00:12:56 -05:00
tildearrow 8b87905304 Virtual Boy: fix noise phase reset 2022-10-11 03:52:25 -05:00
tildearrow 385a9adab2 update credits 2022-10-11 02:23:29 -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
tildearrow 6c88c9c798 GUI: update wave size hints for Virtual Boy 2022-10-10 03:02:36 -05:00
tildearrow 4dec0e52a5 GUI: notify wave change when using wave editor 2022-10-10 03:00:07 -05:00
tildearrow 8c551afd83 GUI: fix InvCheckbox not working at all 2022-10-10 02:17:24 -05:00
tildearrow 6a3def514a GUI: invert some compat flags
they are called "compatibility" flags for a reason
it doesn't make too much sense to have some of these flags enabled
when creating a new Furnace song.
2022-10-09 17:59:44 -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 ec22150fb5 GUI: add pitch table calculator 2022-10-08 21:45:48 -05:00
tildearrow f76e4044c7 prepare for Virtual Boy 2022-10-08 19:37:22 -05:00
tildearrow 70361c44ca GUI: editor improvements when no asset is selected 2022-10-08 17:57:14 -05:00
tildearrow f169ffa8dc GUI: fix assert fail when removing ins thru rgtclk 2022-10-08 17:41:34 -05:00
tildearrow 75d75f68e6 dev121 - NES/SN: Defle compat fixes FOR REAL
THIS IS MOST LIKELY THE LAST DEFLE COMPAT FLAG I ADD

...besides future "no arp+porta in linear pitch" compat flag
2022-10-08 00:53:01 -05:00
tildearrow 55c97c9529 GUI: fx rgtclk if cntr pat opt & RC n left win gap 2022-10-07 18:14:25 -05:00
tildearrow a73ccdae41 GUI: fix paste not updating sel if cursor moves 2022-10-07 17:11:13 -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 2cebd75236 GUI: loop range buttons crs inc/dec should be 16
IT IS HARD TO FIT A DESCRIPTION IN 50 CHARS
2022-10-06 15:38:08 -05:00
System64 77f66642f4
Update gui.cpp 2022-10-04 11:43:14 +02:00
tildearrow 263982719d MSM5232: oh come on why didn't I commit this? 2022-10-04 03:34:38 -05:00
tildearrow 70e0b4ab52 GUI: add option to center pattern - INCOMPLETE
if you right click on the left area it doesn't work
2022-10-03 19:22:24 -05:00
tildearrow c63ff7320e GUI: improve "no instrument seleted" prompt 2022-10-03 19:08:32 -05:00
tildearrow 992b8f4b40 GUI: fix blurry text in ins list when non-AA font 2022-10-03 18:56:18 -05:00
tildearrow 4eed3dbc4d SNES: gain macro 2022-10-03 18:40:07 -05:00
System64 46b5e64415
added interpolations for wavetable resize 2022-10-03 19:48:07 +02:00
System64 76bd96706e
Update gui.h 2022-10-03 19:42:52 +02:00
tildearrow 02e87236ce credits 2022-10-02 19:12:31 -05:00
tildearrow 54183ce4a2 GUI fail error report 2022-10-02 16:12:02 -05:00
tildearrow cef1fa9d99 GUI: fix glitch when removing orders 2022-10-02 02:14:12 -05:00
tildearrow 492b1a8347 GUI: implement clear recent file list option 2022-10-02 01:36:37 -05:00
tildearrow 0c79280aae GUI: fix loop not updating samples on SNES 2022-10-02 01:32:12 -05:00
tildearrow 85f739497f fix bug when seeking with VT num>den 2022-10-02 01:02:01 -05:00
tildearrow 92d5525692 Game Boy: fix Synchronize 2022-10-02 00:06:06 -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 c19357e7a4 GUI: MSM5232 preset 2022-10-01 03:52:28 -05:00
tildearrow 62f022eea0 MSM5232: noise macro 2022-10-01 03:40:06 -05:00
tildearrow 81ac2ba3b1 MSM5232: add detune option 2022-10-01 03:27:57 -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
tildearrow 8e4e1e93db GUI: BRR warning 2022-09-30 19:04:39 -05:00
tildearrow 41c8386485 GUI: fix loop being hard to set 2022-09-30 18:59:56 -05:00
tildearrow 5e4bfe2f11 GUI: sample editor changes 2022-09-30 18:24:20 -05:00
tildearrow 3e997ae886 GUI: add a sample preview rate hint 2022-09-30 17:47:17 -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 73a9eb5ccc SNES: easier filter config 2022-09-30 04:02:11 -05:00
tildearrow 36f3641c9f GUI: fix occasional crash on select all 2022-09-30 03:40:40 -05:00
tildearrow b08d248223 GUI: OH WAIT 2022-09-30 03:15:05 -05:00
tildearrow 8ce175c30c chip flags rewrite, part 7
fix GUI completely - flags are now usable
2022-09-30 03:13:41 -05:00
tildearrow 89311690a0 chip flags rewrite, part 6
fix GUI (partially)
2022-09-30 02:14:54 -05: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
tildearrow ee6e0aa0e0 chip flags rewrite, part 3 - DO NOT USE
the next thing to do is to change DivDispatch::setFlags() to use
the new flags

no chip configuration until this is finished!
2022-09-29 18:03:39 -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
tildearrow 9517b8ee14 fc 2022-09-28 01:15:50 -05:00
cam900 013c7b92fb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-27 00:01:10 +09:00
tildearrow 122694d7c9 MIDI output improvements 2022-09-26 01:27:36 -05:00
tildearrow a6e4345863 PLENTY OF TODO WHEN I COME BACK
CRASHES EVERYWHERE
2022-09-25 20:07:21 -05:00
cam900 b42d5b7c1b
Merge branch 'master' into es5506_alt 2022-09-26 07:31:06 +09:00
tildearrow 07822de0a2 curr -> cur 2022-09-25 17:31:01 -05:00
cam900 305ee2cbb0 Merge branch 'master' of https://github.com/tildearrow/furnace 2022-09-26 07:28:26 +09:00
cam900 b8d2c51a14 Fix AY89x0 regression 2022-09-26 07:28:04 +09:00
tildearrow 656de800cf renderSamples optimization
only render sample types which are used
stability remains to be tested
2022-09-25 17:18:04 -05:00
cam900 b0b729201a Remove duplicate 2022-09-25 19:23:23 +09: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 89ece073f6 GUI: add SNES to the sample chip list 2022-09-25 04:03:13 -05:00
tildearrow b4c020c11b SNES: invert/pitch mod/noise control
echo still work in progress
2022-09-25 03:33:39 -05:00
tildearrow cbdf23efa7 allow loading .brr samples directly 2022-09-25 01:20:08 -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 98cebf92f2
Merge pull request #491 from ZeroByteOrg/ZSMv1
Commander X16 Native Export Format: ZSM
2022-09-24 02:28:25 -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
ZeroByteOrg d7900c2390 Implemented changes requested by Tildearrow 2022-09-23 23:23:03 -05:00
ZeroByteOrg c3654eb67c Merge branch 'master' into ZSMv1 2022-09-23 22:24:22 -05:00
tildearrow eb8849ce63 add disableSampleMacro flag for compatibility 2022-09-23 19:18:32 -05:00
tildearrow 5e2cefff94 dev117 - save the flag
also serves as marker version for this huge change
2022-09-23 13:36:23 -05:00
tildearrow b9a4b568b6 i honestly don't agree with this compat flag 2022-09-23 13:28:57 -05:00
tildearrow 6b684d655a fix build 2022-09-23 12:37:03 -05:00
cam900 8f0966378f Remove these for fix compile 2022-09-24 00:45:24 +09:00
cam900 8d80c5f743 Actually compile fix 2022-09-24 00:37:37 +09:00
cam900 53c3efc9c1 Fix compile (once again) 2022-09-24 00:32:05 +09:00
cam900 b05dafe297 Add compatible flag for Y8950 ADPCM Frequency 2022-09-24 00:24:30 +09:00
cam900 a44d696f09 Fix compile (again) 2022-09-24 00:11:34 +09:00
cam900 b41d306cb3 Fix compile 2022-09-23 23:42:56 +09:00
cam900 62ce5ae3ce Add compatible flag for PCE DAC volume (always enabled for now)
Fix furnacePCM detection for MSM6295
2022-09-23 23:41:55 +09:00
cam900 cf1d4e55cf Fix ADPCM-A playback
Add per-chip debug function
Add YM2203, YM2608, YM2610/B debug window
Extend YM2612 debug window
Remove unnecessary values in YM2151, Sega PCM platform
2022-09-23 23:24:02 +09:00
tildearrow 764ae60740 prepare for splitting OPN/OPM and NES/SN 2022-09-23 03:41:38 -05:00
cam900 a23b0ff790 More consistent naming 2022-09-23 14:48:18 +09:00
cam900 16e59bf000 Fix naming 2022-09-23 14:14:06 +09:00
cam900 e00758d67c Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-09-22 23:02:01 +09:00
tildearrow d354f58a7c really release 0.6pre1.5 2022-09-22 04:27:18 -05:00
tildearrow 1ceca2a509 release v0.6pre1.5 2022-09-22 04:13:26 -05:00
tildearrow b9d8d91ca7 GUI: I am done
look I need to sleep
2022-09-22 04:10:12 -05: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 9685a5c0d8 AY: add stereo separation slider 2022-09-22 00:18:40 -05:00
tildearrow 51c142169f GUI: OPZ compact editor fixes 2022-09-21 23:25:57 -05:00
tildearrow ad097e0526 GUI: add paste with instrument
like paste mix but changes the instrument
2022-09-21 22:59:53 -05:00
tildearrow e22d7484cb dev115 - automatic system detection 2022-09-21 19:27:42 -05:00
cam900 e1679e8ea6
Fix preset
Atari ST series uses YM2419 or YM3439
2022-09-21 13:22:04 +09:00
tildearrow 28d3417196 GUI: more channel bar polishing 2022-09-20 19:41:07 -05:00
tildearrow eb0aac0f54 GUI: more work on it 2022-09-20 19:07:17 -05:00
freq-mod 980f970809
fix opll bbc micro clock, improve some presets 2022-09-20 21:13:29 +00:00
tildearrow a58529a49b GUI: fix some thread problems with keyHit 2022-09-20 02:57:56 -05:00
tildearrow e1890173b2 GUI: implement channel volume bar 2022-09-20 02:32:23 -05:00
tildearrow 3cb1571fb6 GUI: implement channel style settings 2022-09-20 01:00:31 -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
Natt Akuma 0ee6d761f5 Merge branch 'master' of https://github.com/tildearrow/furnace into snes 2022-09-18 18:33:25 +07:00
tildearrow ebb939c189 GUI: add channel font option 2022-09-18 04:20:08 -05:00
tildearrow 75bcad558a GUI: channel customization, part 1 2022-09-18 03:51:10 -05: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 3e311d94a2 GUI: fix FM wave gen mult 16 2022-09-16 02:04:01 -05: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
ZeroByteOrg b14bf9ea33 Merge branch 'master' into ZSMv1 2022-09-15 12:03:53 -05:00
tildearrow 146255b08e OPZ: SysEx fixes and notes 2022-09-13 03:29:36 -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 d4867c5050 GUI: consistency in credits 2022-09-11 05:14:15 -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 09233b6de0 GUI: add signed waveform view mode 2022-09-10 22:35:21 -05:00
tildearrow fc14211997 GUI: wave generator, part 9
it's complete!
2022-09-10 22:12:03 -05:00
tildearrow 2a051900a7 update Bullet_Hell.fur 2022-09-10 21:46:10 -05:00
tildearrow f0d3ad1c82 GUI: don't care about clipboard data version 2022-09-10 21:33:35 -05:00
tildearrow 7d89708bf7 Clang can you stop complaining 2022-09-10 21:25:58 -05:00
tildearrow fc4aea3c91 update demo songs (#661) 2022-09-10 21:21:08 -05:00
tildearrow a46ef0c0be GUI: wave generator, part 8
to-do:
- normalize
- /2
- ×2
- smooth
2022-09-10 19:35:50 -05:00
tildearrow eb2c01097f GUI: add recent file list 2022-09-10 18:53:27 -05:00
tildearrow 99340234b8 GUI: wave generator, part 7
prepare for WaveTools (formerly Mangle)
2022-09-10 16:01:22 -05:00
tildearrow 187653a70f dev113 - loop detection changes 2022-09-10 01:39:42 -05:00
tildearrow 917a03eb07 TIA: fixes fixes fixes 2022-09-09 23:40:21 -05:00
tildearrow f2e519d71e GUI: add an option to exit mobile UI 2022-09-09 19:23:53 -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 9a3c81d90a GUI: wave generator, part 6
FM now with feedback!
2022-09-09 03:23:18 -05:00
tildearrow 0c8cde9f85 GUI: mark modified upon order val change 2022-09-09 00:02:43 -05:00
tildearrow 0fd72c53ef GUI: and more mobile UI progress 2022-09-08 23:20:33 -05:00
tildearrow 2c18fe1051 GUI: lots of mobile UI progress 2022-09-08 19:15:19 -05:00
tildearrow ae6e956f06 GUI: some mobile view work 2022-09-08 17:04:38 -05:00
tildearrow 773b63b810 GUI: don't save layout periodically 2022-09-08 13:16:57 -05:00
tildearrow 4ad324bfed screw you clangd extension 2022-09-08 01:49:36 -05:00
tildearrow 21baf2e272 GUI: typo fixing 2022-09-08 01:45:05 -05:00
tildearrow 56ba47408c GUI: initialize variables 2022-09-08 01:37:16 -05:00
tildearrow 43100fbbee
Merge pull request #644 from NatsumiFox/master
GUI: Remember window x/y position and maximized state.
2022-09-08 01:35:29 -05:00
tildearrow a59ed84322 GUI: fix wave gen FM con checkboxes doing nothing 2022-09-06 14:28:57 -05:00
tildearrow f94c6f101a GUI: wave generator, part 5
completely untested FM generation
2022-09-05 05:48:20 -05:00
tildearrow 9435ab12b0 GUI: wave generator, part 4
prepare FM
2022-09-04 04:00:56 -05:00
tildearrow f7bca46a4a GUI: implement save as format in editors as well 2022-09-04 02:37:43 -05:00
tildearrow 90a0db06f8 GUI: one tiny fix 2022-09-04 02:27:00 -05:00
tildearrow f34b01c0e5 GUI: work around .dmf/.dmp saving issue 2022-09-04 02:26:29 -05:00
cam900 d82d7255d1 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-31 19:18:15 +09:00
tildearrow a33e6e3989 GUI: add "create wave from selection" option
in sample editor
2022-08-31 03:34:13 -05:00
cam900 26d3e02dd8 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-29 11:47:36 +09:00
aurora 3b0df75bf6 Merge branch 'master' of https://github.com/tildearrow/furnace 2022-08-29 05:44:34 +03:00
tildearrow 32050a211f GUI: update credits 2022-08-28 15:54:21 -05:00
tildearrow c3ced46fa3 coming soon: reSIDfp core 2022-08-28 15:10:44 -05:00
ZeroByteOrg ca4fb5b7d4 Merge branch 'master' into ZSMv1 2022-08-28 10:54:20 -05:00
tildearrow 3e8f248f77 fix saving a pre-24 .dmf song 2022-08-28 01:03:23 -05:00
cam900 e3aee980c5 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-28 10:02:52 +09:00
tildearrow 58853ce5d5 OPNB-B -> OPNB2 2022-08-27 16:12:00 -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 efd5cc0dac GUI: implement search in "Choose a System!" 2022-08-27 00:14:17 -05:00
tildearrow 73f88c7635 GUI: and here is the new chip selector 2022-08-26 23:35:16 -05:00
tildearrow daf176e197 GUI: prepare for new chip picker 2022-08-26 19:30:13 -05:00
tildearrow be9385f701 GUI: work on chip manager 2022-08-26 18:51:17 -05:00
tildearrow 897a61db85 copy paste 2022-08-26 16:44:27 -05:00
tildearrow 1b80b96189 prepare for chip swapping 2022-08-26 03:03:36 -05:00
tildearrow 46d5a8759c GUI: fix some interpolate issues 2022-08-25 23:39:55 -05:00
tildearrow 24c5ba89e2 GUI: don't rename settings 2022-08-25 22:09:32 -05:00
cam900 3597e57bb2 Add Traditional Chinese and Korean support 2022-08-26 08:49:08 +09:00
tildearrow a7d0949eac GUI: different pattern manager layout 2022-08-25 18:13:46 -05: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
aurora bcc85dee20 Merge branch 'master' of https://github.com/tildearrow/furnace 2022-08-22 22:21:23 +03:00
aurora 0e847dc1aa add setting for choosing whether to save window position 2022-08-22 22:17:19 +03:00
aurora 8b3c4a84a8 implement bounds check for window spawning 2022-08-22 22:05:16 +03: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 38afdd3378 dev110 - add cut/delay effect policy compat flag
INCOMPLETE!!!
2022-08-21 23:56:58 -05:00
aurora e88e0a4e4e GUI: Remember window x/y position and maximized state. Warning: This may cause issues when windows are re-ordered. Is there a way to fix windows spawning outside of screen boundaries? 2022-08-22 03:47:00 +03:00
tildearrow 808832864c add another demo song
by Raijin
2022-08-21 16:53:45 -05:00
cam900 16d7cd3320 More docs 2022-08-21 14:08:14 +09:00
cam900 ba126b820a Add preset
MSX + Neotron
MSX sound expansion with YM2610 or YM2610B (optional), from Neo Geo and bunch of arcade boards - especially Taito's.

MSX + SIMPL
Covox speech thing-ish 8bit DAC for MSX.
2022-08-21 14:07:24 +09:00
tildearrow 1b2d2fdb98 system 2022-08-20 17:04:57 -05:00
tildearrow 0f92c4e35a GUI: fix change ins applying to off and release 2022-08-20 04:46:45 -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 c74d7fab37 dev108 - add SN period range compat flag
there's room for possible improvement
2022-08-19 18:46:19 -05:00
tildearrow 94cf589e92 GUI: prepare for chip manager window 2022-08-19 04:41:45 -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 3f14625361 Revert "Fix initializing"
This reverts commit 0b09408ee8.
2022-08-18 18:05:45 -05:00
tildearrow aa1e34ffd3 Revert "Fix duplication"
This reverts commit 446e62c69f.
2022-08-18 18:05:34 -05:00
tildearrow 90633b2cbc Revert "oops"
This reverts commit 1f65b104f2.
2022-08-18 18:05:31 -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 1f65b104f2 oops 2022-08-18 21:30:08 +09:00
cam900 446e62c69f Fix duplication 2022-08-18 21:29:48 +09:00
cam900 0b09408ee8 Fix initializing 2022-08-18 21:28:25 +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 89eace2472 GUI: prepare for channel header customization opti
ons
2022-08-16 13:53:51 -05:00
ZeroByteOrg 941d45ad80 Merge branch 'master' into ZSMv1 2022-08-16 11:24:18 -05:00
tildearrow 8a3358ba5a GUI: pattern manager, part 1 2022-08-16 04:19:00 -05:00
tildearrow d1c5a4725b add option to save unused patterns
closes #106

also prepare for the pattern manager window
2022-08-16 03:42:17 -05:00
tildearrow 976e193309 SoundUnit: add 1-bit PDM rev emulation 2022-08-16 02:08:10 -05:00
tildearrow fcb8fba77b GUI: fix particle commands 2022-08-16 02:07:57 -05:00
tildearrow 5fe661e9a3 allow rates down to 1Hz 2022-08-15 22:40:04 -05:00
tildearrow 774a949cca GUI: fix labels being empty 2022-08-13 18:16:24 -05:00
tildearrow bb5cee4a66 GUI: add pattern label customization settings 2022-08-13 18:00:29 -05:00
tildearrow ee16d20047 add demo song
by brickblock369
2022-08-13 15:53:47 -05:00
tildearrow 02fb5abc02 add ability to save ins/wave as .dmp/.dmw
also saving wavetables as raw data
2022-08-13 15:43:13 -05:00
tildearrow 041a76ad81 raw sample import fixes 2022-08-13 06:25:11 -05:00
tildearrow 91f9352eaf implement raw sample import
untested
2022-08-13 05:50:36 -05:00
tildearrow ce2d322e47 GUI: add replace for wave/sample and prepare for
raw sample import
2022-08-13 04:17:32 -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
cam900 86baa8c014 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-12 01:39:47 +09:00
tildearrow 00ae5b4142 GUI: fix volume macro always being 15
issue #629
2022-08-11 11:30:45 -05:00
cam900 7d83cbb7d6 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-08-11 22:22:05 +09:00
cam900 d44f5f0b2b Prepare for backward and bi-directional loop 2022-08-11 22:21:54 +09:00
tildearrow 01d1556fb4 GUI: rename "system" to "chip"
"system" made sense when Furnace was a .dmf tracker and had
compound setups like Genesis (YM2612+SN)

however, it doesn't make too much sense now when compared to "chip"
2022-08-11 05:38:31 -05:00
tildearrow 340052cf0a Game Boy: add chip revision flag 2022-08-11 00:46:15 -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 da8f7dabd5 i guess
to anybody who bothers reading the contents of this commit:
who cares? you promised me C163 would become the name
but nobody has bothered to call it C163 for an entire week.

there's no point on pushing a dead idea forward!
2022-08-09 14:53:31 -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 42a0ee13b8 add two demo songs
by psdominator and LVintageNerd
2022-08-06 22:26:18 -05:00
tildearrow 6934a499c1 SoundUnit: actually finish it 2022-08-06 18:23:11 -05:00
freq-mod b5fa556a38
Merge branch 'tildearrow:master' into wave-edit-tooltip 2022-08-06 17:44:18 +02:00
tildearrow 5534f55f7a dev104 - add "is sample" flag to Sound Unit ins 2022-08-06 04:04:18 -05:00
tildearrow a0968aed07 GUI: fix text/binary command stream outs being swa 2022-08-05 03:27:35 -05:00
tildearrow 049ab06544 PCE: add option to pick A/non-A revision of chip 2022-08-04 23:37:28 -05:00
tildearrow d54d853ff8 add a command stream dump option 2022-08-04 00:51:47 -05:00
tildearrow 7ec4f7cb9e VGM export: add option to insert pattern change hi
nts
2022-08-03 18:44:45 -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 0d4f20b7a6 SoundUnit: add 64K chip revision 2022-08-03 00:05:58 -05:00
tildearrow 1f57d09fbf GUI: display correct OPLL patch names 2022-08-02 23:16:42 -05:00
tildearrow fe07051f89 rename Envelope release to Macro release 2022-08-01 22:51:13 -05:00
tildearrow 1921fd1759 PCE: implement anti-click technology 2022-07-30 01:00:51 -05:00
tildearrow b3e9f53ec4 GUI: the poll 2022-07-27 17:57:36 -05:00
freq-mod 9447442fed Update waveform editor height/width guide 2022-07-27 16:09:36 +02:00
tildearrow 185b283ef6 GUI: wave generator, part 3 2022-07-27 02:36:36 -05:00
tildearrow 693d457fff GUI: wave generator, part 2 2022-07-27 02:23:29 -05:00
tildearrow 7d5f5a91c6 GUI: wave generator, part 1 2022-07-27 01:20:26 -05:00
tildearrow 173e9b0df9 **Namco C163** 2022-07-26 18:23:01 -05:00
tildearrow 47aba6186d GUI: fix possible crash in sample editing actions 2022-07-26 03:34:41 -05:00
tildearrow 09e457003b add option for soft-clipping 2022-07-25 18:41:47 -05:00
tildearrow b0c2b10135 GUI: add "scale" option to find/replace 2022-07-25 18:32:26 -05:00
tildearrow ffe06013d7 GUI: fix preset typo 2022-07-24 01:58:14 -05:00
tildearrow 1dbdf8558c Merge branch 'master' of github.com:tildearrow/furnace 2022-07-24 01:57:21 -05:00
tildearrow 588f3f737c preliminary Future Composer module loading
only loads patterns and doesn't deduplicate
conversion required to fit in the Furnace format (no transpose ins/note)
even the pattern loader itself isn't complete due to how different the
format is
2022-07-24 01:57:10 -05:00
cam900 6697be4d95
Add/Update more presets
Williams/Midway ADPCM Sound board
Used for conjunction with their Y/T unit, it has ordinary de facto standard OPM+MSM6295 on this era with software controlled DAC from predecessors.

Konami Battlantis
Used at Battlantis arcade hardware, It is early SB Pro but mono configuration.

Sega System 24
This Sega's early arcade system featured to floppy disk and high resolution graphics. Sound hardware is similar as their System 16, but ADPCM is replaced to software controlled DAC.

Namco System 86
Predecessor of System 1(a.k.a. System 87), It features similar sound hardware and optional ROM and DAC expansion.

Namco Thunder Ceptor
Used at Thunder Ceptor, their Front view arcade machine. Namco system 86 and System 1 sound system is directly derived from this machine's sound system.

Irem M72
Irem's first arcade system with FM sound system, All released game except R-Type is featured also LOUD software controlled DAC, inherited from their predecessors sound system.
2022-07-24 13:28:26 +09:00
tildearrow 84c955058b GUI: Z280 whoops
issue #576
2022-07-23 22:22:05 -05:00
Christoph Neidahl e08399156a
Haiku support (#596)
* Don't apply Wayland videodriver workaround on Haiku

* dirent.d_type-less type detecting in IGFD

The Dumb Way(tm). `stat`'s `st_mode` should be nicer?

* CMake check for dirent.d_type, stat-based fallback

* Move config dir setup to separate function

Nicer to work with than macro kerfuffle.

* Default sysFileDialog to off on Haiku

* Logging stuff

* Honour CMAKE_INSTALL_BINDIR

* Use find_directory on Haiku

Includes forgotten configPath line when home==NULL.

* Address PR review notes
2022-07-23 22:11:30 -05:00
tildearrow de77d51d7a GUI: update credits 2022-07-23 21:19:43 -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 623c0efbba
Merge pull request #578 from tildearrow/ngp
Add generic PCM DAC system
2022-07-23 19:12:51 -05:00
tildearrow 78b5419004 GUI: fix effect list hotkey 2022-07-23 19:08:39 -05:00
tildearrow 26d60dd107 GUI: fix per-chan osc debug crash
fixes #600
2022-07-23 19:01:30 -05:00
tildearrow 984d61d081 GUI: update song information 2022-07-23 18:53:49 -05:00
tildearrow dfcb9551e7 GUI: update credits 2022-07-23 18:53:42 -05:00
tildearrow efa75a4480 GUI: sub-song info experiment 2022-07-23 18:40:48 -05:00
tildearrow 6051f92e68 GUI: add setting to customize initial system name 2022-07-23 18:22:42 -05:00
tildearrow 8d88ac766c dev103 - store system name and other info in song 2022-07-23 17:02:03 -05:00
cam900 5127d5ef18
Implement sample loop end position, enum-ise sample depth (#557)
TODO: new sample format
2022-07-21 23:36:42 -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
tildearrow 09b47fafe3 update demo songs 2022-07-21 14:49:42 -05:00
tildearrow 191a0dedf9 GUI: improve wavetable editor, part 2 2022-07-21 03:14:52 -05:00
tildearrow 962dab012c GUI: improve wavetable editor, part 1 2022-07-21 02:49:19 -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
tildearrow dff7c61b79 GUI: add option to disable threaded input 2022-07-20 00:32:06 -05:00
tildearrow 96b7e5d353 GUI: implement multi sel on NFD and IGFD 2022-07-16 01:52:15 -05:00
tildearrow 666b0d581a GUI: add multi-selection capability to file dialog 2022-07-15 02:23:16 -05:00
tildearrow bad11bc21e whoops 2022-07-14 02:00:51 -05:00
tildearrow 28a2db7a57 GUI: system file picker error feedback 2022-07-14 01:59:55 -05:00
tildearrow 2f98da5675 GUI: sample editor icon improvements 2022-07-12 19:15:10 -05:00
ZeroByteOrg 850508e1b8 Merge branch 'master' into ZSMv1 2022-07-11 12:59:59 -05:00
tildearrow c85b67b1da NES + chip -> Famicom + chip 2022-07-09 15:55:27 -05:00
cam900 9898d824c0
Fix typo 2022-07-07 04:09:50 +09:00
tildearrow f4a85bebff dev101 - fix SMSFM_intro.dmf 2022-07-04 01:43:59 -05:00
tildearrow 4b1db78a0b GUI: remove debug message 2022-07-03 23:02:45 -05:00
tildearrow c3a693e804 GUI: possibly fix replace crashes 2022-07-03 23:02:25 -05:00
Natt Akuma d3cd7bbb81 Add generic PCM DAC system
For use with NGP DAC and some arcade system combos
2022-07-03 01:42:47 +07:00
cam900 f3b9c6dde6
Merge branch 'master' into es5506_alt 2022-07-02 13:28:49 +09:00
cam900 364c7c4104
Add Sega System E Preset
It is Sega System C/2 but Master system; but this system has 2 SMS VDPs (One for foreground and another for background) and they has they own PSG output.
FM addon is unofficial, but System E release of Fantasy zone II support that.

MAME driver: https://github.com/mamedev/mame/blob/master/src/mame/sega/segae.cpp
FM Addon example (Fantasy Zone II): https://www.youtube.com/watch?v=7dLc9UZ81CI
2022-07-02 11:59:27 +09:00
Natt Akuma fac415c8e8 Prepare for NGP system
Also add PCM DAC as system format 0xc0
2022-07-02 08:19:25 +07:00
ZeroByteOrg 40d67d7bb5 Merge branch 'master' into ZSMv1 2022-06-29 13:14:15 -05:00
tildearrow a8a38dce2b 0.6pre1 - introduce the final changes
- implement E1xy/E2xy Defle bug when using same note twice
- add SNK Touchdown Fever preset
- update README.md and to-do list
- update credits

thank you for your patience!

see you in 0.6pre1.5 coming soon...
2022-06-29 04:57:05 -05:00
tildearrow 9fee9fa363 GUI: run per-chan osc on instrument preview 2022-06-29 01:37:12 -05:00
tildearrow 96bc63470f GUI: add unsigned detune option
closes #559
2022-06-28 15:06:22 -05:00
tildearrow fc489239c2 tildearrow Sound Unit no longer a secret 2022-06-27 05:04:23 -05:00
tildearrow 32ca9e6b0f remember last dir when using NFD 2022-06-27 04:58:25 -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 a647a2599f Fix typecasting 2022-06-26 09:06:13 +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
tildearrow fa29c6c00a GUI: update credits 2022-06-24 14:23:57 -05:00
tildearrow 522fecc635 GUI: gradient whoops 2022-06-24 03:17:40 -05:00
tildearrow deffd99503 pass filter to NFD - DOES NOT BUILD
I am so lazy to adapt the macOS part
2022-06-24 03:11:36 -05:00
tildearrow 96b126fd42 GUI: fix gradient color byte order 2022-06-23 20:58:48 -05:00
tildearrow aa511d2718 GUI: implement Gradient2D::fromString()
WE ARE CLOSE
2022-06-23 18:18:33 -05:00
ZeroByteOrg ae7b271e1d Merge branch 'master' into ZSMv1 2022-06-23 13:45:12 -05:00
tildearrow 1b5396e814 GUI: save per-chan osc state 2022-06-23 04:02:41 -05:00
tildearrow 4731dad917 GUI: colors 2022-06-22 15:10:53 -05:00
Natt Akuma 22dd22ca33 Allow accessing all 256 waves in macros 2022-06-22 19:38:29 +07:00
tildearrow e0bccc8c14 GUI: prepare for colors in the per-chan osc 2022-06-21 18:01:53 -05:00
tildearrow af4a359801 GUI: make spoiler actually visible 2022-06-20 21:11:40 -05:00
tildearrow 4ca64cc66c GUI: hide hidden channels in per-chan osc 2022-06-20 18:56:20 -05:00
tildearrow b697694c0d GUI: per-channel osc DC offset centering 2022-06-20 18:41:23 -05:00
cam900 b3201853bc
Fix YM2151 clock in CPS-1 2022-06-21 06:54:18 +09:00
cam900 df21621ce7
Add drums mode in here, too 2022-06-21 06:36:41 +09:00
cam900 41135f4a95
Add extended channel 3 preset for here 2022-06-21 06:35:11 +09:00
tildearrow 57fab16269 GUI: add ability to drag to move when holding Ctrl 2022-06-20 16:24:14 -05:00
tildearrow 60334fb03c GUI: add spoiler window 2022-06-20 15:20:02 -05:00
tildearrow d66ff353ba GUI: more fixes to drag to move 2022-06-19 19:07:38 -05:00
tildearrow 35bc757adf GUI: fix macOS system file picker crash 2022-06-19 18:51:51 -05:00
tildearrow d47c50edaf GUI: fix drag to move 2022-06-19 18:23:44 -05:00
tildearrow 2313e4fcc3 GUI: temporarily remove freqs in sample map 2022-06-19 14:03:36 -05:00
tildearrow 52328df8c3 GUI: system file picker ins preview! (Windows) 2022-06-19 01:36:36 -05:00
tildearrow 8a1f544eef GUI: add ability to move selection by dragging 2022-06-18 23:18:34 -05:00
tildearrow ea082b255c GUI: prepare for drag selection to move 2022-06-18 03:52:03 -05:00
tildearrow 0e163baffc GUI: update credits 2022-06-18 02:00:10 -05:00
cam900 33046c8e19 More presets
Dynax/Nakanihon 3rd generation hardware:
Naming reference is MAME source (https://github.com/mamedev/mame/blob/master/src/mame/drivers/ddenlovr.cpp), It's sound system combined with AY PSG(optional), OPLL, MSM6295 and mostly used in their mahjong, hanafuda, and something else.

Dynax/Nakanihon Real Break:
This sound system is used in Billard Academy Real Break (MAME source: https://github.com/mamedev/mame/blob/master/src/mame/drivers/realbrk.cpp), MSM6295 is replaced to YMZ280B but entire music is still drived in OPLL.
2022-06-18 11:42:14 +09:00
tildearrow 39fa3d7d85 Merge branch 'master' into preset1 2022-06-17 20:40:09 -05:00
tildearrow ab7c2acd56 GUI: try 2022-06-17 04:51:45 -05:00
tildearrow d911c8eeab GUI: remove pointless comment in find/replace 2022-06-17 02:42:55 -05:00
tildearrow 56b56ebdde GUI: fix cursor moving on undo replace 2022-06-17 02:41:40 -05:00
tildearrow a8ae8f6e54 address the final find and replace issue 2022-06-17 02:40:34 -05:00
tildearrow 02d4712e9c implement undo in find and replace 2022-06-17 02:21:07 -05:00
tildearrow d8513e0856 GUI: use Native File Dialog on Windows/macOS
latter is untested
2022-06-17 01:28:22 -05:00
cam900 66f3f0e678 Input clock is too high for these chips 2022-06-17 14:34:00 +09:00
cam900 25af023dc6 Various corrections and fixes
Fix SN PSG pitch corrections
Revive YM2612 from dead
Add Game Gear stereo function finally
Add OPN/A prescaler config
2022-06-17 14:30:18 +09:00
cam900 0c1a8bc001 Merge branch 'master' into preset1 2022-06-17 09:19:17 +09:00
tildearrow 7875ca4ac3 fix build 2022-06-16 02:09:57 -05:00
tildearrow bdbebc99f1 GUI: prepare for replace undo 2022-06-16 01:26:19 -05:00
tildearrow 64f5343289 I give up trying to fix this file dialog
for now
2022-06-15 02:03:20 -05:00
tildearrow cc06f36c92 GUI: fix dumb header insertion 2022-06-14 14:08:28 -05:00
tildearrow d48801cfde GUI: slight visualizer tweaks 2022-06-14 04:41:57 -05: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
tildearrow f3f8804f47 GUI: find and replace, part 13
one more part coming or maybe not
2022-06-12 14:39:08 -05:00
tildearrow 74b524a912 GUI: find and replace, part 12
replace is almost complete - some refinements left to do though
2022-06-12 03:50:05 -05:00
tildearrow f0e9bd5f57 GUI: find and replace, part 11
lax mode done

now replace time...
2022-06-11 22:42:30 -05:00
tildearrow 44341d8ccd GUI: find and replace, part 10
find kind of works (only lax mode left to do)
then i'll do replace
2022-06-11 03:53:34 -05:00
tildearrow 7354b1221c GUI: find and replace, part 9 2022-06-11 02:14:30 -05:00
tildearrow fa9fb6f8f5 GUI: find and replace, part 8 2022-06-10 18:27:47 -05:00
Natt Akuma 47768edd20 Merge branch 'master' of https://github.com/tildearrow/furnace into snes 2022-06-10 23:00:03 +07:00
Natt Akuma b49b596fbe WIP SNES support, part 2
Make the code build again, still no sound though
2022-06-10 22:59:44 +07:00
tildearrow 30bd73f83a GUI: find and replace, part 7
the next parts will be dedicated on getting it working
2022-06-10 02:17:17 -05:00
tildearrow 936d9dfa49 GUI: find and replace, part 6 2022-06-09 18:52:38 -05:00
tildearrow 7dc3dc96c4 GUI: find and replace, part 5 2022-06-09 16:41:54 -05:00
Natt Akuma f3a90d554c WIP SNES support, part 1 2022-06-10 03:19:31 +07:00
tildearrow 38f4b75b12 GUI: find and replace, part 4 2022-06-08 18:02:04 -05:00
ZeroByteOrg 6a64df6c68 Merge branch 'master' into ZSMv1 2022-06-07 20:46:38 -05:00
cam900 06e21b507b Merge branch 'master' into preset1 2022-06-08 10:11:08 +09:00
tildearrow dc3b0e8322 GUI: find and replace, part 3 2022-06-07 19:48:42 -05:00
tildearrow d90cfc0f33 fix build 2022-06-07 19:26:19 -05:00
tildearrow bfbbdbf1d6 GUI: find and replace, part 2
still does not work
2022-06-07 18:51:18 -05:00
ZeroByteOrg d3717a5710 Merge branch 'master' into ZSMv1 2022-06-07 16:10:06 -05:00
tildearrow aa09ffeedd GUI: find and replace, part 1
it does not work yet
2022-06-07 13:49:12 -05:00
cam900 8e69a7b617 Merge branch 'master' into preset1 2022-06-08 00:00:04 +09:00
tildearrow a300916753 GUI: fix effect val cell spacing not beinghPlease enter the commit message for your changes. Lines starting 2022-06-06 23:46:15 -05:00
cam900 dd93f6d18e Merge branch 'master' into preset1 2022-06-07 13:04:17 +09:00
cam900 3e953f57b3 Prepare for TI-99/4A support
only works on MAME core only for now.
2022-06-07 12:57:09 +09:00
tildearrow eac59604df fix edit menu being too big 2022-06-06 18:04:19 -05:00
tildearrow 6dc408d99c SAA1099: remove MAME core
closes #529

the MAME core is inaccurate.
it doesn't emulate envelope too well.
2022-06-06 15:05:08 -05:00
tildearrow 98f31877de GUI: remove chan osc debug info 2022-06-06 13:15:41 -05:00
cam900 44cee98868 Oops 2022-06-06 23:46:33 +09:00
ZeroByteOrg 378f6a957b Merge branch 'master' into ZSMv1 2022-06-06 09:44:57 -05:00
cam900 35caab6f82 Merge branch 'master' into preset1 2022-06-06 19:09:12 +09: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 9edc4818b5 prepare for find and replace window 2022-06-06 05:03:19 -05:00
tildearrow b6ea8ede86 fade out experiments - DO NOT COMPILE 2022-06-06 03:05:55 -05:00
tildearrow fe4aec70db GUI: add play from beginning hotkey 2022-06-06 01:28:46 -05:00
tildearrow 8b33525a36 GUI: always go to beginning of song when loading 2022-06-06 01:23:35 -05:00
tildearrow 992d61661b GUI: better selection cursor tracking during playb 2022-06-06 01:08:15 -05:00
tildearrow 1778362933 GUI: add all/none buttons to ins selector 2022-06-05 23:44:52 -05:00
tildearrow b8c785230e GUI: implement instrument bank ins picker 2022-06-05 23:34:58 -05:00
tildearrow eb71c27ad9 GUI: preliminary "select instrument" dialog 2022-06-05 19:04:41 -05:00
tildearrow d1b33d1410 GUI: get rid of these stupid icons 2022-06-05 00:42:14 -05:00
tildearrow 05c2fb357f MSM6258: clock/rate selection 2022-06-04 17:51:59 -05:00
tildearrow 0d99d29ceb GUI: finish the blank ins up 2022-06-04 00:19:04 -05:00
tildearrow d15c276f74 GUI: add "blank new instrument" option 2022-06-03 18:30:40 -05:00
tildearrow 1f1d2c85bd GUI: add mono/poly note preview button 2022-06-03 18:05:07 -05:00
tildearrow 2ac9651009 delay collapse/expand pattern/song feature :<
too much work...
2022-06-03 13:44:40 -05:00
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
cam900 3ab3774f92 Don't trim when set loop point 2022-05-31 14:15:47 +09:00
cam900 3b411cd14f Fix dead link, Frequency, Instrument editor related issue 2022-05-31 13:48:35 +09:00
tildearrow c306b33603 GUI: more osc stuff 2022-05-30 22:22:53 -05:00
cam900 a3bca9efa7 Merge remote-tracking branch 'upstream/master' into es5506_alt 2022-05-31 12:18:46 +09: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
cam900 0788e519d7 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  MSM6295: fallback rate
  MSM6295: add more rates
2022-05-30 08:14:00 +09:00
cam900 4f6f13e938 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  GUI: improve unified data view
  GUI: sample editor preview in selection
  finally
  Revert "fudge and bread"
  Revert "fire!"
  Revert "temporarily kill MSVC"
  Revert "MSVC: ughh, f**k you, you d**khead."
  MSVC: ughh, f**k you, you d**khead.
  temporarily kill MSVC
  fire!

# Conflicts:
#	src/engine/engine.h
#	src/engine/playback.cpp
2022-05-30 08:13:27 +09: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
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
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
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
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
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
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
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 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
cam900 028adf2c8e Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (70 commits)
  whoops
  GUI: AY8930 credits
  GUI: fix inability to close subsongs
  BANK
  OPN: wire up ExtCh system
  fix build failure
  dev95 - multiple songs in a single file (READ)
  DO NOT USE - THIS FAILS - WORK IN PROGRESS
  enforce asset limits
  old .dmf loading improvements
  add AICA and YMZ ADPCM formats
  allocate ID for YMZ280B
  harden .fur file saver
  Fix AY VGM output, Fix presets
  preparations for UI improvements
  GUI: add more presets
  prepare for ExtCh OPN/OPNA
  GUI: clarify that lock layout doesn't work yet
  GUI: remember last state of order edit mode
  GUI: store edit/followOrders/followPattern state
  ...

# Conflicts:
#	src/engine/fileOps.cpp
#	src/engine/platform/ym2610.cpp
#	src/engine/platform/ym2610b.cpp
#	src/engine/sample.cpp
#	src/engine/sample.h
#	src/engine/sysDef.cpp
#	src/gui/doAction.cpp
#	src/gui/sysConf.cpp
2022-05-18 03:09:55 +09: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
cam900 2a19834e14 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  full linear pitch is now the default
  add a full linear pitch mode, part 7
  X1-010: implement linear pitch (part 6)
  VERA: implement full linear pitch (part 5)
  YM2610(B): implement full linear pitch (part 4)
  add a full linear pitch mode, part 3
  YM2612: implement full linear pitch (part 2)
  update readme
  re-enable warnings are errors on MSVC
  YM2612: early full linear pitch experiment
  GUI: window movement only by clicking on title bar
  Fix GCC errors 2
  Fix GCC errors
  Remove SCC from TODO.md
  SCC has no config flags currently
  Add SCC and SCC+ support

# Conflicts:
#	CMakeLists.txt
#	src/engine/dispatchContainer.cpp
#	src/gui/guiConst.cpp
2022-05-16 00:37:07 +09: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
cam900 54e78699a7 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  dev94 - add a full linear pitch mode, part 1
  YM2610(B): use f-num/block baseFreq calculation
  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
2022-05-11 00:55:03 +09:00
cam900 4efa711a2b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (44 commits)
  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
  Fix outdated calling convention in SAASound (maybe fix MinGW)
  GUI: macro UI refactor, part 3
  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
  Maybe just enforce for C++
  Forbid standard extensions
  .ftm loading progress (incomplete, not working)
  ...

# Conflicts:
#	src/engine/instrument.h
#	src/gui/insEdit.cpp

Transwave Checkpoint
2022-05-11 00:16:20 +09: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
cam900 ab1ac51d68 Fix build, Transwave Checkpoint 2022-05-08 17:56:52 +09: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
cam900 4021abe495 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  YM2610: optimize oscilloscope fetch CPU usage
  GUI: add audio load meter to statistics
  GUI: put "OK" and "Cancel" buttons in the bottom
  better FM chip names
  sysDef refactor, part 3 - PLEASE READ
  NO
  Reduce unnecessary line
  Debug improvements
  AY8930: Fix VGM output.

# Conflicts:
#	.gitignore
#	src/engine/playback.cpp
#	src/gui/debugWindow.cpp
2022-05-04 03:32:26 +09:00
cam900 317c4b4f82 Prepare for transwave 2022-05-04 03:09:58 +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 a601d0eea5 Match previous filter coefficient value to current value in debug menu
Progress state:
Filter slide up/down, both for K1, K2
2022-05-03 12:39:17 +09:00
cam900 ec5069ad21 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* '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/engine/sample.h
#	src/gui/debugWindow.cpp
2022-05-03 11:11:43 +09:00
cam900 e136db6d7a Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (26 commits)
  prepare for #38
  NES: DPCM work!
  fix bug caused by new renderSamples approach
  NES: prepare for DPCM
  OPZ: more fixed frequency mode fixes
  OPZ: possibly fix fixed freq emulation
  OPZ: fix muting
  OPL: fix panning
  damn it
  per-channel oscilloscope, part 10
  NES: NSFPlay per-channel osc
  NES: NSFPlay muting
  NES: now fix tri_mute
  NES: finally
  fix typo in playback engine
  NES: wire up NSFplay
  now fix it damn it
  now move these files
  add readme
  convertir de Shift-JIS a UTF-8
  ...

# Conflicts:
#	src/engine/engine.cpp
#	src/engine/engine.h
#	src/engine/platform/nes.cpp
#	src/engine/vgmOps.cpp
#	src/gui/stats.cpp
2022-05-03 11:07:50 +09: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
cam900 8283d46e7d Disable reversed playback checkbox when using sample map
Clamp per-channel OSC output, Reduce warning
2022-05-02 21:19:10 +09: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
cam900 e246697928 Prepare for per-channel osc view, ES550X core update 2022-05-01 21:26:10 +09:00
cam900 329048bf6c Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  Clang you are so arrogant
  ok so screw you
  let's hope this works
  attempt to fix CI
  per-channel oscilloscope, part 8
  per-channel oscilloscope, part 7
  per-channel oscilloscope, part 6
  per-channel oscilloscope, part 5
  but PCE supports samples!
  per-channel oscilloscope, part 4
  YM2612: fix Furnace DAC mode glitching slides
  per-channel oscilloscope, part 3
  GUI: add missing actions to settings
  per-channel oscilloscope, part 2
  Revert PC speaker presets
  Have host sound chip appear before expansions
2022-05-01 19:59:03 +09: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
cam900 83405dcb4f Sync with master
* Add boundary for system enum
* Add ES5506 VGM version (not support yet)
2022-05-01 00:44:29 +09:00
cam900 5414213710 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  maybe uninitialized
  GUI: prepare for a per-channel oscilloscope?
  GUI: add backdrop if system file picker is open
  GUI: add ability to customize startup system
  GUI: finally implement "don't scroll when moving c ursor" setting
  new panning effects (80/81/82)
  GUI: fix sample paste crash
  GUI: implement sample scroll with mouse wheel
  sysDef oopsie

# Conflicts:
#	src/gui/guiConst.cpp
2022-05-01 00:25:21 +09:00
cam900 53a52788e2 Add per-note map reversed playback support
Prepare for pcm changed flag, 8 bit panning command
Reduce register spamming in volume update routine

Progress report:
* Emulation core update, Dispatch update:
  * Volume is unsigned like original chip, for reduce overflow.
* Add multi-mode macro support for radio button
2022-04-30 23:45:05 +09: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
cam900 72e8bb89a7 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  GUI: sample/macro zoom with ctrl-wheel
  GUI: prevent division by zero
  GUI: possibly fix an instrument saving issue
  GUI: add chip randomizer button
  update to-do list
  oops
  NES: add DMC write effect
  SoundUnit: implement panning
  QSound: implement panning macro - PLEASE READ
  further improve channel allocation
  update format.md for eventual ExtCh extra systems
  improvements to swap/stomp channel

# Conflicts:
#	src/gui/insEdit.cpp
2022-04-30 02:32:55 +09: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
cam900 cdb3a51766 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  implement channel swapping
  implement relative pitch macro mode
  prepare for relative pitch macro

# Conflicts:
#	src/gui/insEdit.cpp
2022-04-28 23:30:50 +09:00
tildearrow 859b2cf8db implement channel swapping
issue #378
2022-04-28 03:36:15 -05:00
cam900 3956b2cd30 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  dev90 - linear pitch macro option
  dev89 - C64: add test/gate macro
  YMU759: update system definition
  more changes to autoNoteOn
  SoundUnit: ring modulation
  GUI: improve the maximize auto-detection a bit
  GUI: possibly remember maximized state
  NES: fix audio resolution being too low
  update to-do list
  SoundUnit: more stuff
  SoundUnit: max cutoff 16383
  effectRows -> effectCols
  GUI: rename Amiga/Sample to Sample
  This is not a sample properties table
  Define the compact wave editor
  Menu option, settings file

# Conflicts:
#	src/gui/insEdit.cpp
2022-04-28 16:05:01 +09: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
cam900 8c214d40e1 Fix build, Core update 2022-04-27 22:08:18 +09:00
cam900 37216e323f Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  fix MSVC oh my
  improvements to sysDef and UX changes

# Conflicts:
#	src/engine/dispatchContainer.cpp
#	src/gui/insEdit.cpp
2022-04-27 21:21:08 +09:00
cam900 0209ebda03 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  sysDef refactor, part 2
  sysDef refactor, part 1 - PLEASE READ NOTE
  prepare for macroInt preview in instrument editor
  GUI: fix #400
  fix metronome in low-latency mode

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/dispatchContainer.cpp
#	src/engine/instrument.h
#	src/engine/song.h
#	src/engine/sysDef.cpp
#	src/gui/dataList.cpp
#	src/gui/gui.h
#	src/gui/guiConst.cpp
2022-04-27 19:52:04 +09: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
cam900 482dbf8dd5 Checkpoint
Addressing reviews, Fix GCC/Clang builds, Core updates
2022-04-27 14:29:53 +09: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 97d2bddf1f Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
# Conflicts:
#	src/gui/insEdit.cpp
#	src/gui/sampleEdit.cpp
2022-04-26 12:54:11 +09:00
cam900 49a41ff862 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (77 commits)
  GUI: use pattern font for input latch
  GUI: partially implement note input latch UI
  GUI: transpose value does not transpose effect ID
  GUI: prepare for note input latch UI
  GUI: min ins selector width fix
  GUI: separate operation masks
  GUI: add missing FDS preset
  GUI: prepare for separate operation mask
  GUI: "none" instrument should not remove inscolumn
  GUI: fix ins 0 being inserted on blank song
  GUI: add a "none" option to instrument list
  update to-do list
  GUI: add "absorb" instrument input mode
  use good default instrument when adding ins
  better default instrument for OPL/OPLL
  GUI: fix selection being visible in dummy row area
  Further fix looped sample preview
  GUI: fix about screen in power saving mode
  VRC6: saw volume 63
  GUI: add an effect list window
  ...

# Conflicts:
#	src/engine/platform/amiga.cpp
#	src/engine/vgmOps.cpp
#	src/gui/dataList.cpp
#	src/gui/guiConst.cpp
#	src/gui/insEdit.cpp
#	src/gui/sampleEdit.cpp
2022-04-26 12:04:23 +09: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