Commit graph

757 commits

Author SHA1 Message Date
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 2c643aca4c add preliminary TX81Z SysEx response
- load voice data
2022-05-08 02:01:32 -05:00
tildearrow 6672a886a3 GUI: fix crash when loading instrument
fixes #431
2022-05-05 17:45:18 -05:00
tildearrow 9a2938ff3e GUI: fix values button working as notes 2022-05-05 13:23:06 -05:00
tildearrow 9915fc0c8f GUI: add "don't display multi-system" option 2022-05-05 00:52:15 -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 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 6bd5a9bcb6 prepare for possible .ftm import 2022-05-04 14:10:28 -05:00
tildearrow 2c9bad3b3d per-channel oscilloscope, part 9
work in progress!
2022-05-01 18:29:16 -05: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
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 635bd72904 GUI: sample/macro zoom with ctrl-wheel 2022-04-29 05:39:18 -05:00
tildearrow 0817fdeb84 GUI: possibly fix an instrument saving issue 2022-04-29 04:34:20 -05:00
tildearrow 859b2cf8db implement channel swapping
issue #378
2022-04-28 03:36:15 -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 3306e853d1 effectRows -> effectCols
i don't know why did I call it "rows"
2022-04-27 17:53:55 -05:00
tildearrow 78bdd98e0b improvements to sysDef and UX changes
- "no undo" in clear option
- only display instrument types depending on current systems
2022-04-27 04:48:56 -05:00
tildearrow 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
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
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 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 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 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 023761373d GUI: separate operation masks
also separate note/value transpose commands
2022-04-21 17:32:28 -05:00
tildearrow bc235ed494 GUI: prepare for separate operation mask 2022-04-21 03:45:06 -05:00
tildearrow 21c4d09c06 GUI: "none" instrument should not remove inscolumn 2022-04-21 03:26:34 -05:00
tildearrow bfdfac004f GUI: fix ins 0 being inserted on blank song 2022-04-21 03:22:01 -05:00
tildearrow 06a69a20e8 GUI: add "absorb" instrument input mode 2022-04-21 02:35:50 -05:00
tildearrow d4380e1524 GUI: add an effect list window 2022-04-19 18:44:05 -05:00
tildearrow 0258342324 M S V C 2022-04-17 02:08:53 -05:00
tildearrow 4f59eb2602 GUI: add toggle full-screen keybind 2022-04-17 01:57:50 -05:00
tildearrow 0952d1b2f9 GUI: add a full-screen option 2022-04-17 01:54:42 -05:00
James Alan Nguyen ac656f07bb Merge branch 'master' into feature/More-OPL-Patch-Support 2022-04-17 15:41:18 +10:00
tildearrow ef6e63239c GUI: introduce power-saving mode 2022-04-16 18:35:25 -05:00
tildearrow 330171edc3 GUI: add "note preview behavior" setting 2022-04-16 13:13:19 -05:00
tildearrow d0c76e020c GUI: more note preview fixes 2022-04-16 00:10:52 -05:00
tildearrow a81393472c GUI: move all preview actions to callback 2022-04-15 23:47:39 -05:00
tildearrow b48a2368be more low-latency mode work
playSub() runs at normal tick rate
2022-04-15 22:22:47 -05:00
James Alan Nguyen 1985546d0b Add file extension to picker 2022-04-15 22:20:46 +10:00
tildearrow c76e719371 GUI: prepare for more macros 2022-04-15 02:51:38 -05:00
tildearrow f9e9c6c179 huh 2022-04-15 01:30:21 -05:00
tildearrow 5eb2717884 GUI: slightly tweak note preview algorithm
issue #338
2022-04-14 13:54:47 -05:00
tildearrow 11516d7923 GUI: allow cursor movement when stepping 2022-04-14 03:05:58 -05:00
tildearrow 55e085b148 GUI: separate current order from engine order
fixes #105
2022-04-14 02:58:29 -05:00
tildearrow d6333af330 GUI: unreliable version of #63 2022-04-13 18:16:55 -05:00
tildearrow 720f046f28 GUI: implement no-nibble-push value input 2022-04-13 17:42:55 -05:00
tildearrow e86174921b GUI: partially add a piano 2022-04-13 03:24:49 -05:00
tildearrow 2cd454a59d major warning dialog changes
it makes more sense now. closes #321
2022-04-13 02:09:59 -05:00
tildearrow ff75c7fe01 GUI: implement macro line drawing 2022-04-12 23:03:20 -05:00
tildearrow a20861559b implement .dmc loading 2022-04-12 03:34:53 -05:00
tildearrow ea463e4dfd
Merge pull request #352 from OPNA2608/add/ff_import
Add FF bank import
2022-04-12 02:43:16 -05:00
tildearrow ac286fc8d1 GUI: real-time color setting preview 2022-04-11 02:53:21 -05:00
tildearrow 552967246d **SUBMODULE UPDATE - PLEASE READ!**
as of now I have added the Date library as a submodule in order to have
log messages in the correct time zone

please update your submodules by doing:
```
git submodule update --init --recursive
```
2022-04-10 23:01:55 -05:00
tildearrow fddd05dc1a improve logging facility
we have a log viewer within the program now
2022-04-10 22:12:02 -05:00
OPNA2608 91d8c48542 Add FF bank import 2022-04-10 14:16:33 +02:00
tildearrow 11cdc3924d GUI: improve oscilloscope
it's not finished yet
2022-04-09 05:02:24 -05:00
tildearrow 7bf2a3ea1a GUI: prepare for oscilloscope improvements 2022-04-09 02:42:58 -05:00
tildearrow 9e0e8f3345 dev80 - increase song limits
up to 256 patterns
up to 256 orders
2022-04-08 17:21:36 -05:00
tildearrow 62ff7317e3 GUI: effectCursorDir improvements 2022-04-08 02:16:57 -05:00
tildearrow 5d52ef7f00 support .dmf with 6-bit wavetables 2022-04-07 20:13:11 -05:00
tildearrow 743664aad1 GUI: extension check for keybinds/colors/layout 2022-04-06 14:45:58 -05:00
tildearrow 4d23c1dc6d new extension for colors and keybinds 2022-04-06 14:17:29 -05:00
tildearrow eb8f99dafe GUI: import/export colors/keybinds/layout
untested
2022-04-06 13:53:39 -05:00
tildearrow 4a131952e4 GUI: ps_fopen 2022-04-06 02:46:09 -05:00
tildearrow f89360392f GUI: add setting to customize the title bar
closes #339
2022-04-04 13:25:38 -05:00
tildearrow 90bbc42290 GUI: more usability improvements
- move cursor to end of clipboard when pasting
- better effect input
2022-04-03 19:20:30 -05:00
tildearrow e44d081adc prepare for .opm support
goodbye addInstrumentFromFile
hello instrumentFromFile + addInstrumentPtr

these changes are required to allow loading instrument banks
2022-04-03 01:56:49 -05:00
tildearrow fa234afc9d GUI: prepare to add a "lock layout" option 2022-04-02 15:07:47 -05:00
tildearrow ab5ed4413e GUI: usability fixes (ctrl-wheel)
as of now Ctrl-wheel allows you to fine change sliders
also added undo/redo buttons to sample editor
2022-04-02 00:11:44 -05:00
tildearrow 81c8bf4e59 add ability to select VGM version when exporting
by default it is 1.71 but please tell me if you want this to be changed
2022-04-01 21:40:32 -05:00
tildearrow ffb01dd19c Revert "release 0.6pre0"
This reverts commit f7566455c2.
2022-04-01 05:20:00 -05:00
tildearrow f7566455c2 release 0.6pre0 2022-04-01 04:45:06 -05:00
tildearrow 052dcb2576 implement more MIDI stuff 2022-04-01 01:50:01 -05:00
tildearrow a5a65d4db3 GUI: implement MIDI learn 2022-03-31 18:39:01 -05:00
tildearrow d321292543 separate VRC6 and VRC6 saw ins types 2022-03-31 15:25:58 -05:00
tildearrow 45ce940d66 better MIDI and note input handling
closes #147
2022-03-31 01:51:57 -05:00
tildearrow a8ee4b1245 GUI: kinda working MIDI note input 2022-03-30 18:18:39 -05:00
tildearrow 501ecc063d GUI: earliest MIDI note input 2022-03-30 15:44:27 -05:00
tildearrow cb107ebbac GUI: possibly fix out-of-range notes in preview
now they should release
2022-03-30 04:49:15 -05:00
tildearrow 941aab0def GUI: add ability to input waveform data in hex
closes #327
2022-03-30 00:28:49 -05:00
tildearrow c7a37959f0 GUI: early MIDI action UI - COMPLETELY UNTESTED
it will crash (or not)
2022-03-29 17:38:30 -05:00
tildearrow 4825fe7adb more work 2022-03-28 18:19:47 -05:00
tildearrow 81319e34bc error: There was a problem with the editor 'vi'. 2022-03-28 15:31:03 -05:00
tildearrow 08910d37b2 oh yes more MIDI work 2022-03-28 15:24:09 -05:00
tildearrow 6492eeff56 GUI: proper sample errors 2022-03-23 16:39:08 -05:00
tildearrow 519dd7f2dd GUI: aaand more sample editor work
now it has a right click menu
2022-03-22 18:05:32 -05:00
tildearrow 7ebc63a514 GUI: implement sample paste 2022-03-22 17:01:06 -05:00
tildearrow a199c102ce GUI: hopefully better workaround to macOS #4 2022-03-22 15:37:36 -05:00
tildearrow 705ba4273b GUI: sample editor keybinds
works
2022-03-22 04:54:01 -05: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 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 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 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 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 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 b04e1f2870 GUI: implement sample draw 2022-03-20 18:25:48 -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
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 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
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 fb68d2e5cb GUI: add option to toggle visualizer in settings 2022-03-16 13:31:42 -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 bfae208a24 GUI: change default layout 2022-03-14 17:40:22 -05:00