Commit graph

752 commits

Author SHA1 Message Date
Natt Akuma feb138cefc Add VIC-20 support 2022-03-22 14:48:48 +07:00
tildearrow f4f91ca49e GUI: ability to customize toggle button color 2022-03-22 01:57:06 -05:00
tildearrow 73d2f97274 GUI: fix visualizer option in menu 2022-03-22 01:34:53 -05:00
tildearrow 6dbc46d50e GUI: prevent editing non-8/16-bit samples 2022-03-22 01:21:13 -05:00
tildearrow e256efa641 GUI: add option to load Japanese chars
issue #52
2022-03-21 23:36:17 -05:00
tildearrow bd84dc1c17 GUI: make clang happy 2022-03-21 21:48:36 -05:00
tildearrow cec5def347 what?
unacceptable.
2022-03-21 21:47:27 -05:00
tildearrow 80927b80b1 fix build 2022-03-21 17:38:11 -05:00
tildearrow 7e5c27c5b7 GUI: massive code split
gui.cpp now less than 3000 lines
2022-03-21 17:34:43 -05:00
tildearrow e62f9bffd3 GUI: re-organize code
ins/wave/sample lists now in dataList.cpp
wave editor now under its own file
2022-03-21 16:34:19 -05:00
tildearrow cbbca2d6c8 GUI: no mention of PET in wave edit 2022-03-21 16:22:43 -05:00
tildearrow 948d585767
Merge pull request #300 from AYCEdemo/petvic
Add PET support
2022-03-21 16:20:55 -05:00
tildearrow 1003d9fcb8 GUI: more "modified" status situations
fixes #236
2022-03-21 16:17:51 -05:00
tildearrow 0a114b1168 GUI: don't allow direct saving to the backup file 2022-03-21 14:47:10 -05:00
tildearrow 854d0fea48 GUI: add option to restore backup 2022-03-21 14:32:33 -05:00
tildearrow 8c961f0aae add backup functionality - UNTESTED 2022-03-21 14:11:28 -05:00
Natt Akuma c32ea59285 PET: Use wave bits macro instead 2022-03-22 01:37:22 +07:00
Natt Akuma 47c5c34e1c Add PET support 2022-03-21 21:02:51 +07:00
tildearrow b45d2be312 GUI: sample editor almost complete
only keybinds are missing
2022-03-21 03:45:20 -05:00
tildearrow 2df7658fd0 GUI: implement sample sel operations
plenty of them
2022-03-21 02:43:52 -05:00
tildearrow a68dbed760 GUI: add options for rounded UI elements 2022-03-21 00:52:38 -05:00
tildearrow b83b46aa2c GUI: more sample editor work
scrollbar and some layout changes
2022-03-21 00:41:18 -05:00
tildearrow 20799402c8 GUI: select all is vertical now 2022-03-20 22:22:10 -05:00
tildearrow 21b15d686b GUI: prevent typing out-of-range notes
cope
2022-03-20 22:16:20 -05:00
tildearrow ef3bf8f924 GUI: display sample selection - NOT FINISHED 2022-03-20 18:31:25 -05:00
tildearrow b04e1f2870 GUI: implement sample draw 2022-03-20 18:25:48 -05:00
tildearrow bdc29455cc GUI: one more change to the status bar 2022-03-20 05:19:23 -05:00
tildearrow b7fd410c1f GUI: temporarily hide BRR sample type 2022-03-20 05:19:04 -05:00
tildearrow 9a94b7124d GUI: creditssss 2022-03-20 04:42:23 -05:00
tildearrow 34e679d642
Merge pull request #298 from djtuBIG-MaliceX/feature/OPL_SBI_Instrument_Import
OPL1/2/3 Instrument Import - SBI and S3I (Adlib only) format
2022-03-20 04:39:52 -05:00
tildearrow 299dbf14e4 GUI: sample editor status bar 2022-03-20 04:28:57 -05:00
tildearrow 03cb910e93 GUI: sample resampling 2022-03-20 03:14:00 -05:00
James Alan Nguyen cbe74b26ad More #79 - Add S3I Adlib instrument support. Also fix SafeReader SEEK_CUR handling (wasn't used at all). 2022-03-20 17:12:03 +11:00
tildearrow 4593e33064 GUI: fix X1-010 flags 2022-03-19 22:02:21 -05:00
tildearrow 67ca88b478 GUI: prepare for sample select/draw 2022-03-19 16:14:11 -05:00
James Alan Nguyen efdedd1044 Fix typo 2022-03-20 01:02:34 +11:00
James Alan Nguyen e032580639 Started SBI import work (Issue #79 SBI task). Also ensure catch by reference not value. 2022-03-20 00:55:34 +11:00
tildearrow 689ed3bf65 sample editor workkkkkkk 2022-03-19 03:42:44 -05:00
tildearrow c59c176de2 W O R K A R O U N D
adding text fixes the issue
2022-03-17 23:28:01 -05:00
tildearrow 6c5e6c2a0f
Merge pull request #294 from cam900/bubsys
Reduce naming confusion in Bubble System Wavetable Sound
2022-03-17 22:03:24 -05:00
tildearrow a5906c6482 GUI: update credits 2022-03-17 22:03:14 -05:00
tildearrow 1af6eb21f6 freaking clang extension 2022-03-17 18:30:28 -05:00
tildearrow 5f0c1e9077 GUI: more sample editor work 2022-03-17 18:28:56 -05:00
tildearrow b31ab408db GUI: new sample editor work 2022-03-17 18:08:59 -05:00
tildearrow d63f3d311b fix arpeggio not resetting note to base on 0000 2022-03-17 16:37:49 -05:00
tildearrow 9dea093052 GUI: reduce scroll boundaries 2022-03-17 16:17:33 -05:00
cam900 a7c750a44e Merge branch 'master' of https://github.com/tildearrow/furnace into bubsys 2022-03-18 03:20:33 +09:00
tildearrow 3c1b1b69fc GUI: define sample edit texture 2022-03-17 03:43:02 -05:00
tildearrow dce68749d6 GUI: work on the drum UI 2022-03-17 02:07:46 -05:00
cam900 234c5e9295 Reduce naming confusion in Bubble System Wavetable Sound
It means Custom wavetable sound generator logic on Bubble System.
It's wavetable select and volume is controlled by single AY-3-8910 IO for both channels, Another AY-3-8910 IO is used for reading sound status.

Schematics: http://pdf.textfiles.com/manuals/ARCADE/K-R/Nemesis%20[Schematics]%20[English].pdf (Nemesis, derivative of Bubble system)
2022-03-17 10:11:48 +09:00
tildearrow d09aa778d9 prepare to rewrite sample editor - DO NOT USE! 2022-03-16 18:40:11 -05:00
tildearrow a3efaf0bd3 fix 2022-03-16 17:02:57 -05:00
tildearrow 3163730fe8 prepare for drum kits/sample map 2022-03-16 17:01:44 -05:00
tildearrow 73cf7cf161 GUI: enforce minimum size for macro edit left col
UNTESTED
2022-03-16 13:45:22 -05:00
tildearrow fb68d2e5cb GUI: add option to toggle visualizer in settings 2022-03-16 13:31:42 -05:00
tildearrow 966d133bf4 OPL: FM macros 2022-03-16 03:44:22 -05:00
tildearrow 9322e9467c GUI: prepare macro editor for OPL op macros 2022-03-16 02:01:44 -05:00
tildearrow 492533e5c0 GUI: add option to view Hz as base tempo 2022-03-16 01:27:34 -05:00
tildearrow 790c4345d9 GUI: add ability to view Hz as base tempo 2022-03-15 23:43:24 -05:00
tildearrow 02e9edbad9 unlock the power of DECIMAL HZ! 2022-03-15 23:30:15 -05:00
tildearrow 0a307fc4a6 MOD import: more improvements
- prepare for old Soundtracker MOD import
- add "bypass limits" flag - dope.mod plays correctly now
- automatic channel names
2022-03-15 18:32:15 -05:00
tildearrow 8355aa0175 GUI: OPL 4-op algorithm images 2022-03-15 00:09:45 -05:00
tildearrow bfae208a24 GUI: change default layout 2022-03-14 17:40:22 -05:00
tildearrow 8012676993 MOD import: crash fix 2022-03-14 17:16:43 -05:00
tildearrow 37c733af6b
Merge pull request #287 from AYCEdemo/mod-import
.mod import
2022-03-14 16:12:02 -05:00
Natt Akuma 54da047b5a Apply requested changes
- Use sample->init() instead
- Implement set Hz by tempo effect and move from C4xx to F0xx
- Add "SAMPLE_POS" to cmdName
2022-03-15 03:59:42 +07:00
tildearrow 9643498946 GUI: fix orders up 2022-03-14 15:53:43 -05:00
Natt Akuma 91e856c61e Merge branch 'master' of https://github.com/tildearrow/furnace into mod-import 2022-03-15 03:08:37 +07:00
tildearrow 749b0f39d0 GUI: better order display - UNTESTED 2022-03-14 14:54:45 -05:00
Natt Akuma c7fb5df206 Merge branch 'master' of https://github.com/tildearrow/furnace into mod-import 2022-03-14 21:57:54 +07:00
Natt Akuma 87f225074c .mod import 2022-03-14 21:50:52 +07:00
cam900 f24a776a7a More user friendly instrument name 2022-03-14 19:40:27 +09:00
cam900 2c6267bd6b Merge branch 'master' of https://github.com/tildearrow/furnace into scc 2022-03-14 19:22:31 +09:00
cam900 69aeb7dd58 Add Bubble System Support
Bubble System 2 channel Wavetable sound generator logic is configuration with K005289, 4 bit PROM and DAC.
K005289 controls pitch and 5 bit address generator per channel, Waveform select and Volume control is tied to AY-3-8910 ports. (each port for per channels)
these configuration is better known as K005289, the part of logic.
furnace emulates this configurations as single system, waveform format is 15 level and 32 width.
2022-03-14 19:22:12 +09:00
tildearrow e009fc64f2 allow instrument change during slides 2022-03-14 01:23:31 -05:00
tildearrow a96fd5727e GUI: begin working on unified ins/wave/sample list 2022-03-14 00:26:27 -05:00
tildearrow 394a440f3d prepare for unified ins/wave/sample list 2022-03-13 23:37:25 -05:00
tildearrow 4ba6058b03 GUI: system file dialog on by default
in order to make a test build
2022-03-13 23:24:57 -05:00
tildearrow f56f4c80d1 GUI: move to system file dialog
default setting will be selected by a poll
2022-03-13 23:10:43 -05:00
tildearrow 0874d58fb8 damn it 2022-03-13 22:02:50 -05:00
tildearrow d9a93e0cec ... 2022-03-13 21:19:52 -05:00
tildearrow bfc4432023 nooooooooooooooooooooooooooooooooo 2022-03-13 21:06:08 -05:00
tildearrow 5e77b47467 system file picker anyone? DO NOT COMPILE! 2022-03-13 18:32:35 -05:00
tildearrow 3be56d50ab GUI: prepare for two things
- unified ins/wave/sample view
- macro line drawing
2022-03-13 17:30:43 -05:00
tildearrow d607f35aa2
Merge pull request #279 from cam900/intv_alt
Add AY-3-8914 support as configurable in AY-3-8910
2022-03-13 11:17:36 -05:00
tildearrow a41736cc89 GUI: partially implement note input latch
the UI for it is missing
2022-03-13 04:51:05 -05:00
tildearrow 6167feaf18 GUI: implement shrink and expand!
yay ONE MORE THING!!!!! then O P L
2022-03-13 03:13:11 -05:00
tildearrow cd42a8b9f3 GUI: implement flip 2022-03-13 02:36:52 -05:00
tildearrow bd705d837d interpolate now works on notes 2022-03-12 21:13:42 -05:00
tildearrow a0c658f1d3 GUI: implement interpolate values 2022-03-12 21:06:47 -05:00
tildearrow adafb49be7 GUI: prepare for interpolate 2022-03-12 15:12:39 -05:00
tildearrow ab8bace7f4 change default SAA1099 core to SAASound 2022-03-12 12:53:53 -05:00
tildearrow 7971b7323b GUI: add nibble mode to randomize 2022-03-12 03:40:56 -05:00
tildearrow de604bdf01 GUI: add gradient/fade edit option 2022-03-12 03:04:34 -05:00
tildearrow e82b1e6a67 GUI: don't allow right-click menu movement 2022-03-12 03:04:16 -05:00
tildearrow 1f058ac653 GUI: add move cursor by edit step on insert option 2022-03-12 02:32:02 -05:00
tildearrow a6eec9f7c4 GUI: implement randomize 2022-03-12 02:24:23 -05:00
tildearrow 3e890a391b GUI: operation mask
this means transpose also works on non-note columns!
2022-03-12 02:13:15 -05:00
tildearrow f52d919240 GUI: implement paste overflow 2022-03-11 23:50:59 -05:00
tildearrow fe9b379ca9 GUI: implement paste mix 2022-03-11 23:47:16 -05:00
tildearrow cf07e1861e add "auto-insert one tick gap" option 2022-03-11 23:01:18 -05:00
tildearrow 2a0aa19b2b fix broken DAC mode
adds new compat flag
2022-03-11 22:11:33 -05:00
tildearrow 07d15643c2 GUI: implement paste flood 2022-03-11 17:56:10 -05:00
tildearrow cb3c4e2302 GUI: clamp waves to max value 2022-03-11 17:00:57 -05:00
tildearrow 5fadcf4891 GUI: fix transpose octave range 2022-03-11 16:53:46 -05:00
cam900 3ac1dce3fe Add AY-3-8914 support as configurable in AY-3-8910
Previous PR (https://github.com/tildearrow/furnace/pull/278) is closed due this, but archived for info.
It's AY with 4 level envelope volume per channel and different register format.
2022-03-12 03:30:54 +09:00
tildearrow 74a23b3ec5 GUI: begin work on some of the new actions 2022-03-11 01:31:21 -05:00
tildearrow 0700ba7e65 GUI: start with the pattern view focused 2022-03-10 22:10:52 -05:00
tildearrow bbca8b260b
Merge pull request #243 from cam900/gui_systems
Add various system, Minor corrections
2022-03-10 18:31:23 -05:00
tildearrow c6fda7a156 Merge branch 'x1_010' of https://github.com/cam900/furnace into cam900-x1_010 2022-03-10 18:24:52 -05:00
tildearrow a9f80b841c VERA: add ins color and reset 2022-03-10 17:46:40 -05:00
tildearrow 85b9f340a9 Merge branch 'x16' of https://github.com/AYCEdemo/furnace into x16 2022-03-10 14:35:33 -05:00
cam900 406faaeeea Gamate
Handheld game console by Taiwanese Bit Corporation that supports stereo headphone, with had a AY-3-8910 based sound.
2022-03-11 04:07:11 +09:00
cam900 3b6559a5a1 Merge branch 'master' of https://github.com/tildearrow/furnace into gui_systems 2022-03-11 03:53:51 +09:00
cam900 a969694b2b Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010 2022-03-11 02:46:46 +09:00
tildearrow 93b3e16213 i need to go
TODO:
- EDIT LATCH
- EDIT MASK
2022-03-09 18:03:15 -05:00
tildearrow b80b33ac8e GUI: demand scroll X in more situations 2022-03-09 16:42:15 -05:00
tildearrow 2fb6ea021b GUI: this menu is packed with features
that DON'T WORK YET
2022-03-09 15:43:30 -05:00
cam900 3d13a7d446 Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010 2022-03-10 03:21:02 +09:00
Natt Akuma 80e3148a43 Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-09 18:06:47 +07:00
tildearrow 372f2a20a2 GUI: much better 2022-03-09 03:40:24 -05:00
tildearrow 1a3eed7830 fix MinGW build 2022-03-09 02:30:36 -05:00
tildearrow 9e080956ec prepare to add a right click menu to pattern
DO NOT USE IF YOU WANT TO SOLO CHANNELS - I'LL FIX IT when I
come back
2022-03-08 18:26:41 -05:00
tildearrow 698b8e960f I must be blind 2022-03-08 14:20:21 -05:00
tildearrow 42a3391574 GUI: add OPZ waveforms 2022-03-08 13:46:48 -05:00
tildearrow ad19a69f27 GUI: improvements to OPL ins edit 2022-03-08 13:12:20 -05:00
cam900 6c432bc42e Allow Left waveform can be invertable,
Improvement documents
2022-03-09 00:50:10 +09:00
cam900 da73c365e4 Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010 2022-03-08 23:30:57 +09:00
Natt Akuma 43cfb09acf Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-08 17:53:00 +07:00
Natt Akuma a86a7f766b VERA doesn't have config flags 2022-03-08 15:06:11 +07:00
tildearrow 270225f6d1 WonderSwan doesn't have config flags 2022-03-07 23:47:40 -05:00
cam900 2e6cc9fc7c Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
# Conflicts:
#	CMakeLists.txt
#	papers/doc/7-systems/README.md
#	src/engine/dispatch.h
#	src/engine/dispatchContainer.cpp
#	src/engine/playback.cpp
#	src/engine/sysDef.cpp
#	src/gui/gui.cpp
2022-03-08 13:38:24 +09:00
tildearrow 2d922d5e09 GUI: attribution 2022-03-07 23:11:14 -05:00
tildearrow 0210548291
swan let's go
Add WonderSwan support and flatten second chip checks in VGM export into variables
2022-03-07 23:05:32 -05:00
tildearrow cdd45bb18c allow detune 4 2022-03-07 22:28:20 -05:00
tildearrow ec007b4443 OPL: more work - still not there yet 2022-03-07 18:19:25 -05:00
cam900 65149a466f Fix accidently auto-generated spaces 2022-03-08 00:15:21 +09:00
Natt Akuma 3b88786ffb Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-07 16:46:32 +07:00
Natt Akuma 252dc16492 Add X16 to the New menu 2022-03-07 16:45:34 +07:00
Natt Akuma 25088d6032 Fix playback and VGM export 2022-03-07 15:44:59 +07:00
Natt Akuma 840a6fa306 Add WonderSwan support 2022-03-07 15:44:59 +07:00
cam900 55934bc044 Fix crash 2022-03-07 13:09:25 +09:00
cam900 458f8c5881 Fix instrument allocation 2022-03-07 12:21:51 +09:00
cam900 7a2c86e9d7 Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010 2022-03-07 10:28:54 +09:00
tildearrow 2bfb84cd1e AY: add 1.10 and 2.10 rates 2022-03-06 14:18:18 -05:00
cam900 fca4bdc1ee Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
# Conflicts:
#	.gitmodules
#	CMakeLists.txt
2022-03-07 02:35:14 +09:00
cam900 4a83c7c5a7 Add Seta/Allumer X1-010 Support
its 16 channel wavetable/PCM chip, with (optional) stereo support.
Its also has envelope, this feature has similar as AY PSG's one but its shape is also stored at RAM, and each nibble in envelope data is for each output: so i decided to added some feature for more stereo-ish envelope.
Split: Envelope shape will be splitted to Left and Right half for each output.
HInv, Vinv: Envelope shape will be Horizontally/Vertically mirrored the left one.

Max sample length is sample bank size of Seta 2 arcade hardware (currently not emulated yet, nor it doesn't support on VGM).

Chip id is temporary, it can be changed with to suggestions.
2022-03-07 02:31:03 +09:00
tildearrow 6728edbb71 UNTESTED! DO NOT USE - PC speaker passthrough 2022-03-05 15:00:19 -05:00
tildearrow c684107b11 not a voice 2022-03-05 13:21:03 -05:00
freq-mod e3a27cb37c
Change OPLL friendly param names
to be less cringy
2022-03-05 19:06:46 +01:00