Commit Graph

734 Commits

Author SHA1 Message Date
tildearrow 3cf71c4ccb Neo Geo: implement FM macros 2022-01-27 02:32:34 -05:00
tildearrow 5eb974456d Arcade: implement FM macros 2022-01-27 02:17:09 -05:00
tildearrow 684daa29e3 more uninitialized stuff :< 2022-01-27 02:02:33 -05:00
tildearrow c47851e7c7 GUI: highlight loop 2022-01-27 01:04:26 -05:00
tildearrow 8edcbc8d39 fix 0Bxx and 0Dxx commands
now wiz lab and sixeight-v2 play correctly
TODO: fix walkSong
2022-01-27 00:29:37 -05:00
tildearrow 0e633ea69b GUI: add a debug window 2022-01-27 00:29:16 -05:00
tildearrow 30b012cc5e Game Boy: initialize uninitialized variable 2022-01-26 18:03:25 -05:00
tildearrow 1347d16da4 Genesis: fully implement volume macro 2022-01-26 18:03:08 -05:00
tildearrow 143543e0b4 GUI: and more macro editor work 2022-01-26 17:22:29 -05:00
tildearrow 554b69e9f3 GUI: MML strings for waveforms
issue #67
2022-01-26 16:29:49 -05:00
tildearrow a895cb9c5e NES: fix issue for real 2022-01-26 16:07:55 -05:00
tildearrow bf19feab89 NES: actually set chip type to 2A07 if PAL
fixes #72
see also #27
2022-01-26 15:55:37 -05:00
tildearrow f86838df99 no longer shift arpeggio macro by 12 2022-01-26 15:53:52 -05:00
tildearrow 1981dc6033 GUI: MML string improvements 2022-01-26 15:23:50 -05:00
tildearrow e195031538 add MML strings in macro editor
completely UNTESTED as I wrote this on bed
2022-01-26 13:13:17 -05:00
tildearrow c822532b54 several improvements to new macro UI
now it is fully usable
well, almost
2022-01-26 03:49:46 -05:00
tildearrow 4d1b69e905 fix Ctrl-C not stopping in console mode 2022-01-26 03:00:58 -05:00
tildearrow d882fd33f8 GB: lower volume
somehow a fix brought in a bug
2022-01-26 03:00:49 -05:00
tildearrow 496501803f GUI: add advanced VGM export menu
does NOT work yet!
2022-01-26 00:26:15 -05:00
tildearrow b2d2da1f1c correct names for Genesis and SMS 2022-01-25 22:29:00 -05:00
tildearrow 8bcab6e139 VGM export: write resets and GD3 tag
may be non-standard compliant (yet)
also it crashes foobar2000 for some reason but this will be fixed
2022-01-25 18:46:27 -05:00
tildearrow c7ee0ce642 save my register writes 2022-01-25 16:52:55 -05:00
tildearrow 3672ceccb7 VGM export: write loop point
proper channel reset after loop pending!!!
2022-01-25 16:44:21 -05:00
tildearrow 503a79c904 what? 2022-01-25 15:51:53 -05:00
tildearrow 61a1932bce add walkSong 2022-01-25 15:06:29 -05:00
tildearrow 6d54023b70 VGM export: report number of total writes 2022-01-25 04:43:56 -05:00
tildearrow b527fc06b2 try to unglitch the sample loops again
this time it works better but it slightly moves the song clock...
will look at it when i wake up
2022-01-25 03:34:11 -05:00
tildearrow e8163b71e2 try to unglitch the sample loops
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
2022-01-25 03:24:32 -05:00
tildearrow 0c8ec07633 VGM export: kind of implement sample loop
for PCE, NES and Genesis
kinda glitchy
2022-01-25 03:12:53 -05:00
tildearrow b6c536c907 VGM export: fix PC Engine samples 2022-01-25 02:38:46 -05:00
tildearrow 2dac7f3b87 add ability to switch octaves using numpad / and * 2022-01-25 00:08:46 -05:00
tildearrow 511b6ba0be VGM export: PCE samples (kinda) 2022-01-24 18:04:09 -05:00
tildearrow cda191afee VGM export: NES samples 2022-01-24 17:48:58 -05:00
tildearrow 92b5620497 VGM export: fix sample glitch if length&255==0 2022-01-24 17:19:34 -05:00
tildearrow 9d2032d627 VGM export: Arcade sample looping 2022-01-24 17:13:47 -05:00
tildearrow d945e5299a Merge commit 'bd8c06bbb786df086d478e1574c6fe11ee6651b6' 2022-01-24 15:53:02 -05:00
tildearrow bd8c06bbb7 prevent crash when playing empty sample
fixes #62
2022-01-24 15:47:39 -05:00
tildearrow 50a0f1f360 VGM export: fix up SegaPCM
turns out it is capable of arbitrary loop position!
2022-01-24 15:23:42 -05:00
tildearrow 9654c6a85d add -vgmout parameter
to output VGM files from command line
2022-01-24 13:15:07 -05:00
tildearrow fedc045909 add SegaPCM commands
let's hope it works
2022-01-24 13:06:06 -05:00
tildearrow 993ab767b6 ADPCM memory safety 2022-01-24 12:47:18 -05:00
tildearrow e221bcb023 VGM export: bake SegaPCM samples
after this, the following has to be done:
- PCM playback
- PCM playback on PCE and NES (let's hope this is possible)
2022-01-24 12:39:05 -05:00
tildearrow ea796c2d6b VGM export: fix noise in Neo Geo 2022-01-24 02:57:49 -05:00
tildearrow 066f0f074f fix clicking 2022-01-24 02:55:01 -05:00
tildearrow 1b4081a044 VGM export: implement ADPCM storage
possibly first open-source Neo Geo tracker that exports to .vgm
2022-01-24 02:52:45 -05:00
tildearrow a3a2e3ff47 add more chips to VGM export
missing:
- Sega PCM
- Neo Geo ADPCM
2022-01-24 02:09:03 -05:00
tildearrow 0ab0ebdddb GUI: actually add the export VGM option 2022-01-24 01:10:38 -05:00
tildearrow 858d5343b8 earliest VGM export!
only supports single-chip Genesis for now
the other systems will be added shortly
2022-01-24 01:01:08 -05:00
tildearrow 35ee06d6cf fix ECxx effect
fixes #57
2022-01-23 22:00:46 -05:00
tildearrow 9fe0efd63a VGM export skeleton DOES NOT WORK
VGM export not there yet. please don't use it.
2022-01-23 21:50:45 -05:00
tildearrow f42a326693 GUI: revamp the macro editor 2022-01-23 17:55:02 -05:00
tildearrow 0928dea37a oops 2022-01-23 17:02:24 -05:00
tildearrow c5282df819 GUI: rename Absolute to Fixed
see issue #55
2022-01-23 17:02:09 -05:00
tildearrow beeb074975 GUI: prepare for modern macro view 2022-01-23 17:01:19 -05:00
tildearrow 5e2a827e68 GUI: add setting to change macro UI 2022-01-23 16:46:32 -05:00
tildearrow 32e56be9b7 GUI: add the last FM macro tab 2022-01-23 16:34:20 -05:00
tildearrow 9274033358 GUI: disable macro loop with right click
issue #53
2022-01-23 15:56:03 -05:00
tildearrow 524f8c312e Genesis: implement arp macros 2022-01-23 15:55:12 -05:00
tildearrow 45d9bef2a8 Genesis: restore LFO value when changing order 2022-01-23 15:15:46 -05:00
tildearrow cd2854d027 it works 2022-01-23 15:12:00 -05:00
tildearrow b39b1c0a25 Genesis: implement FM macros (partial, untested) 2022-01-23 13:19:19 -05:00
tildearrow 04f0c6a7cb prepare the skeleton for VGM export 2022-01-23 13:19:06 -05:00
tildearrow ccc2467d7b run all the 60 macros
one more step and then we have FM macros
2022-01-23 03:27:44 -05:00
tildearrow a45c697004 now Neo Geo 2022-01-23 00:57:47 -05:00
tildearrow e79a1bd64d bring command-line audio export back! 2022-01-22 23:50:49 -05:00
tildearrow 58c9edf9c1 store FM macros in file
a few more steps and then we'll have functional FM macros
2022-01-22 22:21:21 -05:00
tildearrow 9940222a6f prepare for storage of FM macros 2022-01-22 18:28:43 -05:00
tildearrow f286e65dc1 fix it! 2022-01-22 18:06:18 -05:00
tildearrow d62b111c78 Genesis: separate channel state from instrument
paves way for FM macros
with this change, extended channel 3 mode breaks! do not use
until I diagnose the problem.
2022-01-22 17:43:57 -05:00
tildearrow c5956b939e GUI: change modifier key to Command on macOS 2022-01-22 16:34:44 -05:00
tildearrow 67b47b43b2 prepare to add compatibility flags 2022-01-22 15:30:23 -05:00
tildearrow c8a5ab8787 GUI: implement use system font 2022-01-22 03:37:57 -05:00
tildearrow 12428a9fcd fix scrolling on differing font sizes 2022-01-22 03:15:43 -05:00
tildearrow 28c339cb6d implement selecting with shift 2022-01-22 03:12:02 -05:00
tildearrow c64c1c1c2d Amiga: tune it a bit 2022-01-22 02:54:46 -05:00
tildearrow da7893f015 use the old version of Exo font
i liked it more
2022-01-22 02:54:32 -05:00
tildearrow 413fbd985a NES: same thing 2022-01-22 02:38:01 -05:00
tildearrow 371c23a7ee Genesis: fix sample desync when muting DAC channel 2022-01-22 02:36:58 -05:00
tildearrow 4327654415 GUI: slight color change 2022-01-22 02:34:36 -05:00
tildearrow 79dc5904b4 GUI: apply primary/secondary colors 2022-01-22 02:32:17 -05:00
tildearrow 71abb69e88 GUI: add ability to change colors
only partially works. primary/secondary colors don't work yet
2022-01-22 01:50:52 -05:00
tildearrow 031a61e771 GUI: oops i missed something 2022-01-22 00:30:42 -05:00
tildearrow 8b79bf78a9 add Furnace instrument loading
TODO: .dmp loading
2022-01-22 00:14:48 -05:00
tildearrow 969a5d203b GUI: fix detune values
fixes #51
2022-01-21 23:30:05 -05:00
tildearrow 2fa565180f temporarily limit font range
until I can load unifont dynamically to not run out of memory
2022-01-21 18:20:38 -05:00
tildearrow 724b1cd1a8 move more wavetable loading logic
now it's safer
2022-01-21 18:17:05 -05:00
tildearrow 186e491c59 allow loading wavetables 2022-01-21 17:59:48 -05:00
tildearrow c82440a7bc GUI: finish op macro UI
now to revamp the other UIs...
2022-01-21 17:13:50 -05:00
tildearrow 945416642a GUI: improve OP macro UI 2022-01-21 17:00:28 -05:00
tildearrow 61639e5123 release v0.4.6
don't worry, this won't be the final release
2022-01-21 04:42:18 -05:00
tildearrow 4cffcc01e5 ffffiiiiixxxx #47 2022-01-21 04:35:25 -05:00
tildearrow bc32809ecb fix #46 2022-01-21 04:27:00 -05:00
tildearrow f5b71e35b1 i will release 0.4.6 to fix clipboard bug first 2022-01-21 03:45:59 -05:00
tildearrow 5fcb83a7f5 GUI: set column width 2022-01-21 03:13:32 -05:00
tildearrow b9902902be GUI: prepare for FM macros
the most complicated UI to date
2022-01-21 02:54:52 -05:00
tildearrow 3b5370681a GUI: set size constraints for wave editor 2022-01-21 02:06:49 -05:00
tildearrow 9307a14a1d GUI: display C64/AY/SAA wave macros differently
hopefully better
2022-01-21 01:56:30 -05:00
tildearrow e06911258e TIA: fix mute being ignored at times 2022-01-20 23:14:18 -05:00
tildearrow d8e8fd4031 SAA1099 doesn't like DC offset correction 2022-01-20 23:09:04 -05:00
tildearrow ff0e48679b arcade: fix PCM channels not muting when Nuked-OPM 2022-01-20 22:13:56 -05:00
tildearrow 730561d3a3 arcade: add effects to control AMD/PMD 2022-01-20 17:54:11 -05:00
tildearrow e10f61eda2 GUI: set a minimum window size for the ins editor 2022-01-20 17:42:14 -05:00
tildearrow 4b43694db0 fix negative notes 2022-01-20 16:56:35 -05:00
tildearrow 46fd774f30 allow sample preview via keyboard 2022-01-20 16:51:31 -05:00
tildearrow 05bbfaced2 get rid of a debug message 2022-01-20 16:41:18 -05:00
tildearrow 917c9cf2e3 Genesis: allow sample preview 2022-01-20 16:40:18 -05:00
tildearrow 0b7772e76c PCE: allow sample preview 2022-01-20 16:33:20 -05:00
tildearrow e23df0f09e move config file to proper directory on macOS 2022-01-20 16:27:11 -05:00
tildearrow aa82ccfbc5 GUI: allow use of negative octaves
closes #41
2022-01-20 16:21:35 -05:00
tildearrow 0f28ae0fee implement Furnace-style PCM on Arcade/Gen/NES/PCE 2022-01-20 16:09:05 -05:00
tildearrow 812d0397a8 GUI: rename Amiga ins type to sample 2022-01-20 14:18:15 -05:00
tildearrow 751f6d025a prepare to add effect descriptions 2022-01-20 13:48:20 -05:00
tildearrow 8d1e14e844 GUI: implement pattern cursor wrapping
to be tested. see issue #34
2022-01-20 13:15:37 -05:00
tildearrow 8ab97a959c add ps_fopen to properly handle fopen on Windows
fixes #22
2022-01-20 05:04:03 -05:00
tildearrow 1ee23ac198 AY8930: fix first channel envelope reset at random 2022-01-20 03:25:57 -05:00
tildearrow 75ce5f4e2a add auto-envelope mode (29xy effect)
this closes #32
2022-01-20 03:23:03 -05:00
tildearrow 04240ffa46 GUI: move cursor up on pull delete
fixes #28
2022-01-20 02:53:59 -05:00
tildearrow 4ee17d35cd implement sample loop on the rest of systems 2022-01-20 02:46:28 -05:00
tildearrow 3954a23f3e GUI: add double-click to toggle solo
closes #33
2022-01-20 02:28:55 -05:00
tildearrow 86f0ec45fa GUI: allow order input 2022-01-20 02:11:03 -05:00
tildearrow b66918bf62 don't compile icon.c under Windows either
MSVC weirds out
2022-01-20 01:46:03 -05:00
tildearrow 1e0131cdac and do it for real 2022-01-20 01:40:50 -05:00
tildearrow 0282c9c0b4 GUI: re-arrange FM parameter layout 2022-01-20 01:39:54 -05:00
tildearrow 93c4ab0cc8 GUI: rewrite note preview logic
now with polyphony! see issue #16
2022-01-20 01:32:16 -05:00
tildearrow 6db9d312ec fix crash when previewing size 0 waves 2022-01-20 00:43:08 -05:00
tildearrow d8571eda08 add types for ins/wave formats 2022-01-20 00:39:28 -05:00
tildearrow 797ffd62da GUI: center file picker and limit to win size 2022-01-20 00:31:36 -05:00
tildearrow 3a87017821 GUI: force a minimum file picker window size
see issue #16
2022-01-20 00:13:50 -05:00
tildearrow 7ad715da38 GUI: hide duty macro if PCE 2022-01-20 00:09:30 -05:00
tildearrow 85dd6c3579 add ability to preview wavetables
issue #16
2022-01-20 00:07:53 -05:00
tildearrow 85bb081f3b prevent clock drift when previewing samples 2022-01-19 23:23:47 -05:00
tildearrow e394b5ca5a C64: solve one ADSR bug
set decay to 0 if sustain is 15
2022-01-19 22:58:37 -05:00
tildearrow 51a89adb3d more headache 2022-01-19 22:05:39 -05:00
tildearrow abea8e5dce fix clipboard pasting bug
NOT ANOTHER OF THESE!
2022-01-19 21:53:21 -05:00
tildearrow fee174a65a fix ECxx accuracy 2022-01-19 21:53:09 -05:00
tildearrow 18df843864 reduce clicking on play/loop 2022-01-19 21:04:51 -05:00
tildearrow 0e346f5d73 temporarily reduce channel limit to 63
thanks ImGui
2022-01-19 18:24:37 -05:00
tildearrow 9f6b8ed521 prepare for different order edit modes
see issue #31
2022-01-19 18:19:52 -05:00
tildearrow 7c509ba9b8 highlight cursor row when edit mode is on
closes #29
2022-01-19 18:10:42 -05:00
tildearrow a47a571f0b add row number base setting
closes #30
2022-01-19 18:04:07 -05:00
tildearrow f39e522e7e really allow 8 effect columns
third time is the charm
2022-01-19 17:34:20 -05:00
tildearrow 64a7744f10 one more crash fix! 2022-01-19 17:09:34 -05:00
tildearrow 068fb0f3ce release v0.4.5 2022-01-19 17:02:27 -05:00
tildearrow 379d90ae4d add more fonts
partially related to an issue when displaying non-Latin characters
however a true fix isn't coming yet as I haven't figured out a way
to load glyphs during run-time as needed
2022-01-19 16:58:01 -05:00
tildearrow b091404d63 increase effect column limit to 8 2022-01-19 13:10:41 -05:00
tildearrow e24738fcda possibly fix a crash when opening file picker
with missing directory
2022-01-19 05:44:19 -05:00
tildearrow 62a499644f add wavetable saving 2022-01-19 05:10:06 -05:00
tildearrow 7c40948680 release v0.4.4 2022-01-19 04:34:12 -05:00
tildearrow 44ef49d267 GUI: fix note pasting
issue #23
2022-01-19 04:32:40 -05:00
tildearrow dce289a5a0 add early code for saving instruments 2022-01-19 03:28:29 -05:00
tildearrow a989fa8920 prepare for ins/wave loading/saving 2022-01-19 03:15:20 -05:00
tildearrow 464714df00 GUI: add clone instrument/wave 2022-01-19 02:59:44 -05:00
tildearrow fe757ac6e7 release 0.4.3
urgent release due to serious bug when removing systems
2022-01-19 01:40:15 -05:00
tildearrow efee5c3d7a now remove debug messages 2022-01-19 01:36:47 -05:00
tildearrow aa1a3f8aab oh yes more fixes 2022-01-19 01:36:20 -05:00
tildearrow f98662d329 slide accuracy fixes 2022-01-19 01:27:32 -05:00
tildearrow e87239f8ce fix retrigger implementation
no longer broken
2022-01-19 00:01:34 -05:00
tildearrow 1642f29df8 fix critical bug when removing systems 2022-01-18 22:02:04 -05:00
tildearrow 20bca9cce4 AY8930 code attribution 2022-01-18 18:32:42 -05:00
tildearrow 5a7cf57aa2 AY8930: implement noise and/or mask
cannot confirm whether this behavior is accurate to hardware though...
thanks Eulous for details on this!
2022-01-18 18:21:27 -05:00
tildearrow 488bd45907 lower PCE volume a bit
see issue #16
2022-01-18 17:35:41 -05:00
tildearrow a956f37f1b Genesis/Neo Geo: fix extended channel mode volume 2022-01-18 17:18:07 -05:00
tildearrow 64745648a0 allow negative octaves 2022-01-18 16:55:32 -05:00
tildearrow 4bfc85bebc prepare for FM macros
issue #19
2022-01-18 16:32:53 -05:00
tildearrow 2363f1dd58 GUI: reduce height of AY8930 duty macro to 8 2022-01-18 15:54:15 -05:00
tildearrow 05fd372728 AY: fix wave macro and effect 2022-01-18 15:48:40 -05:00
tildearrow a148a04e2c disable delay locking bug emulation entirely
so it appears the bug emulation caused an actual bug
2022-01-18 15:24:42 -05:00
tildearrow 0356cf2c7a TIA: add 10xx effect for selecting shape 2022-01-18 15:12:36 -05:00
tildearrow f652d6c738 fix devendor again and prepare for 0.4.2 2022-01-18 02:09:47 -05:00
tildearrow aaca180683 add per-channel audio export 2022-01-18 02:04:03 -05:00
tildearrow 9b8044a401 add export one audio file per system mode 2022-01-18 01:26:22 -05:00
tildearrow 4419f72218 devendor libraries 2022-01-18 00:45:17 -05:00
tildearrow 345962092e add notifyWaveChange
fixes #8
2022-01-18 00:25:10 -05:00
tildearrow af30d4990a GUI: add algorithm text 2022-01-18 00:04:13 -05:00
tildearrow 6d9f5db6a4 add notifyInsChange
see issue #8
2022-01-17 23:59:52 -05:00
tildearrow 8d4d47950c rewrite audio export
now it is possible to export audio from the GUI!
multiple export coming soon
2022-01-17 23:34:29 -05:00
tildearrow a377ba1f96 fix clicking if chip rate is less than audio rate 2022-01-17 22:15:00 -05:00
tildearrow 15f8a9b66f GUI: prevent stuck note if ImGui wants capture kb 2022-01-17 21:34:57 -05:00
tildearrow 7165d39105 Neo Geo/AY: implement 20xx command 2022-01-17 21:14:35 -05:00
tildearrow df3ae12278 fix furnace for 32-bit 2022-01-17 21:08:14 -05:00
tildearrow a0896f949c and againnnnn 2022-01-17 18:18:28 -05:00
tildearrow d73c0512eb fix Microsoft C compiler build... again 2022-01-17 18:15:47 -05:00
tildearrow cba4385607 ignore speed change if speed is 0
fixes #9
2022-01-17 18:05:29 -05:00
tildearrow ce027d99f6 force insChanged on note input
partially solves issue #8
2022-01-17 18:01:40 -05:00
tildearrow 84e9d52d7f Microsoft C compiler compatibility
unsupported and not recommended!
2022-01-17 17:44:17 -05:00
tildearrow d828018500 release v0.4.1
fixes critical AppImage fail issue and some other things
2022-01-17 17:31:48 -05:00
tildearrow f3a61f3222 fix build in old compiler 2022-01-17 17:12:24 -05:00
tildearrow 69be47b419 PCE: no abort 2022-01-17 16:59:34 -05:00
tildearrow ecd2955c0f honor arcade core setting 2022-01-17 16:27:57 -05:00
tildearrow 6884494b5c fix issue with volume macro+slide 2022-01-17 16:23:47 -05:00
tildearrow dde2462025 proper non-QWERTY keyboard support 2022-01-17 14:53:46 -05:00
tildearrow 5900e3bb6e extra error messages for audio init fail 2022-01-17 14:36:40 -05:00
tildearrow 8b89f1b516 prepare for writing register dumps 2022-01-17 13:29:35 -05:00
tildearrow 49fa75f4b5 GUI: add transpose keys 2022-01-17 02:06:05 -05:00
tildearrow 1632b2864a possibly fix crash when switching JACK backend out 2022-01-17 01:49:36 -05:00
tildearrow 6ca3c4ec4d dynamic audio settings changing 2022-01-17 01:42:26 -05:00
tildearrow d6d6bf80ec move audio init/quit to separate functions 2022-01-17 01:20:02 -05:00
tildearrow 3026bf8ba9 temporarily disable audio export
I need to rewrite the audio export code so it becomes possible to export
audio from the GUI
2022-01-16 23:32:13 -05:00
tildearrow 12236248dd prepare for eventual export 2022-01-16 23:21:27 -05:00
tildearrow 499af535da GUI: audio quality option
not working yet
2022-01-16 17:38:52 -05:00