Commit Graph

238 Commits

Author SHA1 Message Date
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 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 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 9d2032d627 VGM export: Arcade sample looping 2022-01-24 17:13:47 -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 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 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 04f0c6a7cb prepare the skeleton for VGM export 2022-01-23 13:19:06 -05:00
tildearrow e79a1bd64d bring command-line audio export back! 2022-01-22 23:50:49 -05:00
tildearrow 8b79bf78a9 add Furnace instrument loading
TODO: .dmp loading
2022-01-22 00:14:48 -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 46fd774f30 allow sample preview via keyboard 2022-01-20 16:51:31 -05:00
tildearrow e23df0f09e move config file to proper directory on macOS 2022-01-20 16:27:11 -05:00
tildearrow 751f6d025a prepare to add effect descriptions 2022-01-20 13:48:20 -05:00
tildearrow 8ab97a959c add ps_fopen to properly handle fopen on Windows
fixes #22
2022-01-20 05:04:03 -05:00
tildearrow 6db9d312ec fix crash when previewing size 0 waves 2022-01-20 00:43:08 -05:00
tildearrow 85dd6c3579 add ability to preview wavetables
issue #16
2022-01-20 00:07:53 -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 62a499644f add wavetable saving 2022-01-19 05:10:06 -05:00
tildearrow dce289a5a0 add early code for saving instruments 2022-01-19 03:28:29 -05:00
tildearrow 1642f29df8 fix critical bug when removing systems 2022-01-18 22:02:04 -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 345962092e add notifyWaveChange
fixes #8
2022-01-18 00:25:10 -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 a0896f949c and againnnnn 2022-01-17 18:18:28 -05:00
tildearrow 8b89f1b516 prepare for writing register dumps 2022-01-17 13:29:35 -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 45b6c19867 rename system to platform
easier to understand
2022-01-16 01:17:30 -05:00
tildearrow 3a340b99f4 add getPreferInsType 2022-01-15 22:11:40 -05:00
tildearrow 31f8378cef Amiga: take loop pos into account 2022-01-15 18:03:37 -05:00
tildearrow 785f7e4d40 samples may have loop points 2022-01-15 17:54:21 -05:00
tildearrow 113a1577b6 do the Amiga 2022-01-15 17:28:33 -05:00
tildearrow dce06d8ec4 add AY8930 platform 2022-01-14 00:02:10 -05:00
tildearrow 805cf69c52 deprecate macro heights
now we do everything based on the ins type
2022-01-13 20:44:45 -05:00
tildearrow 0545775de6 prepare for better ins del safety 2022-01-13 17:40:29 -05:00
tildearrow 943f88b306 add four more macros
they eventually will be used
2022-01-13 13:55:33 -05:00
tildearrow 11cf0dc560 prevent saving unsupported systems to .dmf 2022-01-13 03:05:36 -05:00
tildearrow 2fcb474544 stuff
implement two systems and system vol/pan
2022-01-13 01:03:57 -05:00
tildearrow 9b40dd994b prepare for more platforms 2022-01-12 22:58:51 -05:00
tildearrow cd739f5fde change master clock to sampleRate*256
this hopefully fixes the hang by doing all clock ops on a master clock
rather than one clock per system
2022-01-12 17:45:07 -05:00
tildearrow 6245b3af31 add Cxxx effect for mid-song Hz change
also add hang detection as I ran into one of them while test multi-chip
2022-01-12 02:45:26 -05:00
tildearrow 69b56e6d4c prepare for adding wavetable from file 2022-01-11 16:25:55 -05:00
tildearrow 4c5fbc252b allow moving ins/wave/samples up or down 2022-01-11 03:52:11 -05:00
tildearrow 5637639950 waveform width/height controls 2022-01-11 03:16:32 -05:00
tildearrow 02b5b05e04 prepare for 0.3 2022-01-10 17:30:36 -05:00
tildearrow c36d19f495 not an oopsie 2022-01-10 03:35:29 -05:00
tildearrow d0a2a0f902 auto-determine ins type when adding 2022-01-09 23:50:26 -05:00
tildearrow 7d336d61f7 how did I miss that!!!!!!!! 2022-01-09 22:17:03 -05:00
tildearrow 325478e37a GUI: revamp instrument editor 2022-01-09 17:48:09 -05:00
tildearrow 7568f1a1b9 better YMU759 support
time base now loaded as rate and timer no longer bugs out

also you can save YMU759 songs as .fur now, even if it is pointless
2022-01-09 17:08:14 -05:00
tildearrow 9b6db75d4f C64: use full cutoff/duty range
this means .dmf becomes a second-class citizen since it only supports a
range of 0-100 (yeah) for arbitrary reasons...

the last bit to do is add effect that allows you to use the full range
2022-01-09 17:00:52 -05:00
tildearrow 4bbfc22c2a GUI: add/remove options 2022-01-09 16:36:47 -05:00
tildearrow 925a29249b implement Furnace format loading 2022-01-09 14:54:28 -05:00
tildearrow 0b4ad13858 more work 2022-01-09 04:42:58 -05:00
tildearrow 8d9cddde37 implement Furnace format saving
experimental and no loading yet
2022-01-09 03:52:41 -05:00
tildearrow c43cc0ae80 GUI: add option to add more systems 2022-01-08 18:18:23 -05:00
tildearrow 06c7ac92a2 earliest multi-chip support
no saving, no adding chips yet...
only the beginning
2022-01-08 17:15:12 -05:00
tildearrow 7080434ed4 this does not compile 2022-01-08 16:03:32 -05:00
tildearrow f47543ab98 prepare for multiple chip support, part 2 2022-01-08 03:02:04 -05:00
tildearrow 254bf18036 move the code a bit to load/save other formats 2022-01-08 02:22:04 -05:00
tildearrow 073703f8ba refuse to save YMU759 songs
the .dmf format no longer allows YMU759 songs...
2022-01-08 02:04:43 -05:00
tildearrow 121a9b2cb8 prepare for multiple chip support 2022-01-08 01:57:37 -05:00
tildearrow 530a9bafc7 add a metronome 2022-01-04 00:02:41 -05:00
tildearrow 943e4e374f better compatibility with old GB modules 2022-01-03 23:22:39 -05:00
tildearrow 4c8ff2edb3 fix clicks on replay 2022-01-03 03:37:58 -05:00
tildearrow 7ed1777bdc fix 128 instrument song failing to read 2022-01-03 03:35:13 -05:00
tildearrow dc5990a37e a lot of master system fixes!
fixes forest frolick, professional tracker, YZYX, Monday (kinda),
MasterTracker and Ice Fields
2021-12-29 02:08:50 -05:00
tildearrow 6222e0933a prepare for more settings work 2021-12-29 00:50:00 -05:00
tildearrow 8f9f37f424 are you for real right now 2021-12-28 23:10:13 -05:00
tildearrow be3b4da834 add note preview feature 2021-12-28 18:23:57 -05:00
tildearrow d766c4aaf0 finally do EFxx right
took a while to figure out...
2021-12-28 00:51:38 -05:00
tildearrow 11478fbdfe prevent clipping in ADPCM samples 2021-12-27 15:22:57 -05:00
tildearrow 8428f7da32 GUI: make the new button work 2021-12-24 18:23:01 -05:00
tildearrow 7ba8607270 changes to sample rate storage
as of now we store and use the actual sample rate as opposed to an index
fo a fixed rate table.

this allows for more flexibility in a future file format...
2021-12-23 18:04:44 -05:00
tildearrow 830e880a57 GUI: colored channe names 2021-12-23 17:09:33 -05:00
tildearrow bbb0a14946 GUI: finish order buttons 2021-12-22 17:39:16 -05:00
tildearrow dbf0d3fd88 now remove debug info 2021-12-22 12:01:37 -05:00
tildearrow d92e91c5d8 fix popping ADPCM samples in Neo Geo
finally!
2021-12-22 12:00:40 -05:00