Commit graph

424 commits

Author SHA1 Message Date
freq-mod
8a946eb99f changed channel naming a bit
to be more specific
2022-02-03 14:41:34 -05:00
tildearrow
5086bc1097 implement the linear pitch flag 2022-02-03 02:24:11 -05:00
tildearrow
2a15673610 implement loop modality and pitch control flags
issue #113
2022-02-03 00:52:50 -05:00
tildearrow
3379e8b380 prepare for compat flags, piano, comments, etc. 2022-02-03 00:34:48 -05:00
tildearrow
ccfe3bdd97 Genesis: add ability to use ymfm instead of Nuked 2022-02-02 23:08:45 -05:00
tildearrow
da8e4715bd finally fix the build 2022-02-02 18:24:33 -05:00
tildearrow
d691ec6d76 add a chip playground
in debug menu
2022-02-01 18:08:19 -05:00
tildearrow
df97142157 fix improper dir sep when loading sample on Win 2022-02-01 03:20:15 -05:00
tildearrow
ba08d3515f GUI: fix several file dialog bugs
damn it
2022-02-01 02:52:36 -05:00
tildearrow
de931c1d2f did I just make an instrument loader 2022-02-01 01:21:51 -05:00
tildearrow
227fff021e try fixing .dmp loading
what a mess this format was before 1.0
2022-02-01 00:58:00 -05:00
tildearrow
af26ec9faf fix loading some .dmf modules 2022-01-31 16:33:32 -05:00
tildearrow
da8380a6e2 prepare to fix loading old .dmp files 2022-01-31 12:55:51 -05:00
tildearrow
432f440be5 VGM export: fix SN chip mode not being set 2022-01-30 23:51:35 -05:00
tildearrow
ff5357de10 VGM export: fix playback speed being wrong
if audio rate wasn't 44100Hz
2022-01-30 23:07:09 -05:00
tildearrow
fe0dc38f37 add VGM export warnings 2022-01-30 17:18:10 -05:00
tildearrow
5b2f776718 which arcade 2022-01-30 13:26:51 -05:00
tildearrow
9b213223cc VGM export: respect clock rate flags 2022-01-30 13:07:23 -05:00
tildearrow
17ca6402d3 add instrument read error messages 2022-01-29 04:25:55 -05:00
tildearrow
54a84c2ce1 preliminary .dmp loading
preliminary I said
some things don't load
2022-01-29 03:21:47 -05:00
tildearrow
5dafd10fc7 add several warning dialogs 2022-01-29 01:22:32 -05:00
tildearrow
e9accf16db one more change to the format 2022-01-29 00:22:12 -05:00
tildearrow
629d229bc1 i will finish this later today 2022-01-28 18:12:56 -05:00
tildearrow
bfed0b3209 change setPAL to setFlags 2022-01-28 12:59:53 -05:00
tildearrow
0567a3f71b GUI: add chip names option 2022-01-28 03:17:35 -05:00
tildearrow
ec66b7a21b add song tuning
soon: system clock settings
2022-01-28 00:55:51 -05:00
tildearrow
0071894471 GUI: add a preliminary oscilloscope 2022-01-27 17:49:00 -05:00
tildearrow
b812fc4041 prepare for sample C-4 freq
issue #70
2022-01-27 16:52:06 -05:00
tildearrow
cd9b2b675e VGM export: dual chip for real 2022-01-27 15:47:57 -05:00
tildearrow
60a1e6f395 VGM export: kind of dual chip support 2022-01-27 13:10:51 -05:00
tildearrow
c577eeafac VGM export: implement sys selection/loop options
the final thing to do is dual chip support, but I wanna get 0.5
out already
2022-01-27 02:46:40 -05:00
tildearrow
c47851e7c7 GUI: highlight loop 2022-01-27 01:04:26 -05:00
tildearrow
0e633ea69b GUI: add a debug window 2022-01-27 00:29:16 -05:00
tildearrow
f86838df99 no longer shift arpeggio macro by 12 2022-01-26 15:53:52 -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
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
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
tildearrow
c2669f208e fix wiz lab AGAIN and implement repeat pat
0x0b + 0x0d = broken
2021-12-21 17:42:27 -05:00
tildearrow
726b457ae7 another uninitialized variable 2021-12-21 16:02:31 -05:00
tildearrow
48f4f5835b add a sample preview button (hopefully)
the next commit will be about normalizing sample rate
2021-12-21 13:06:14 -05:00
tildearrow
6ee4e33b89 GUI: add status bar 2021-12-21 02:30:09 -05:00
tildearrow
5523a43804 better loop tracking 2021-12-21 02:02:25 -05:00
tildearrow
997c460fc1 greatly improved playback resume
no more song weirding out when changing orders
2021-12-21 01:29:07 -05:00
tildearrow
1cc9b9fe20 GUI: more more more work
error dialog boxes and drawOrders improvements
2021-12-20 23:20:30 -05:00
tildearrow
7f3885d2b1 GUI: ability to add/del effect cols and EExx value 2021-12-20 19:46:49 -05:00
tildearrow
1234dcf2bc properly load unsigned 8-bit samples 2021-12-20 16:33:10 -05:00
tildearrow
548fa2ad73 don't stop the song until it has been loaded 2021-12-20 14:20:05 -05:00
tildearrow
498fa99c5a finally fix invalid module disrupting program 2021-12-19 21:11:23 -05:00
tildearrow
245e7acd10 prepare for config management 2021-12-19 16:52:04 -05:00
tildearrow
f42cfcbdc8 custom config directory 2021-12-19 03:16:24 -05:00
tildearrow
9d8a2f780b GUI: add a wavetable editor 2021-12-18 17:54:26 -05:00
tildearrow
beceefd34b only output playback status in console mode 2021-12-18 04:26:17 -05:00
tildearrow
b3b66ecbdb channel mute/solo! 2021-12-18 03:25:42 -05:00
tildearrow
c4c019e593 fix E5xx range in old modules 2021-12-18 01:09:43 -05:00
tildearrow
8c57eb9696 add ability to change system 2021-12-17 22:14:41 -05:00
tildearrow
b6ca7e3dc7 ability to add/remove instruments/waves/samples 2021-12-17 03:33:12 -05:00
tildearrow
2baed0cff0 fix windows build... 2021-12-16 15:51:19 -05:00
tildearrow
07ab05798b remove an empty line 2021-12-16 03:09:00 -05:00
tildearrow
ce71c2e9ad fix memory leak 2021-12-16 02:21:43 -05:00
tildearrow
e13631b69b typooooo 2021-12-15 17:33:57 -05:00
tildearrow
c54df74df1 GUI: rate change and new window title 2021-12-15 17:32:08 -05:00
tildearrow
ebb28d912b untested saving code and memory leak fix 2021-12-15 14:15:44 -05:00
tildearrow
2879b5e4d0 arcade: add ymfm-based core
less CPU usage at the cost of some quality
2021-12-15 01:23:58 -05:00
tildearrow
52087edceb lots of changes
- GUI: ability to load files
- GUI: arrow key navigation
- fix sample volumes
2021-12-15 00:37:27 -05:00
tildearrow
95e3a098d0 add Neo Geo extended channel 2 support 2021-12-14 14:31:57 -05:00
tildearrow
bde8a7f79d warning-free compilation 2021-12-14 12:33:26 -05:00
tildearrow
9e2e02a12e GUI: colored pattern view 2021-12-13 17:09:46 -05:00
tildearrow
285cc9b766 allow running GUI without loaded module 2021-12-13 14:40:03 -05:00
tildearrow
6b499fbc79 GUI: channel namws 2021-12-13 13:10:56 -05:00
tildearrow
efde2c5798 earliest pattern view 2021-12-13 02:03:36 -05:00
tildearrow
9a1683bb45 GUI: C64 and game boy ins edit UI 2021-12-12 18:19:43 -05:00
tildearrow
63fe2e2c95 fix output to audio file 2021-12-12 15:22:27 -05:00
tildearrow
4b32599237 GUI: macro editor (kind of) and order view 2021-12-12 04:21:09 -05:00
tildearrow
93c88a093f fix volume regression 2021-12-11 16:51:34 -05:00
tildearrow
f39e2ea112 GUI: play/stop/change order 2021-12-11 03:34:43 -05:00
tildearrow
20a9282efe neo geo: finish it up 2021-12-10 23:41:00 -05:00
tildearrow
fbd94bbce9 neo geo: ADPCM!! 2021-12-10 22:51:50 -05:00
tildearrow
a95ee7b7ba neo geo: found the problem 2021-12-10 15:16:58 -05:00
tildearrow
e365aa4bdb more neo geo stuff 2021-12-10 04:22:13 -05:00
tildearrow
d789ae759e neo geo let's goooooo 2021-12-09 13:25:02 -05:00
tildearrow
e3f14f3850 1-byte offset should be safe 2021-12-09 02:58:53 -05:00
tildearrow
daed339e07 add a save function
and it loads on DefleMask!
2021-12-09 02:38:55 -05:00
tildearrow
d395abe47f actually obey the orders 2021-12-09 01:44:40 -05:00
tildearrow
defaf7397a arcade: finish it up
0.12 feature parityyyyyyyy!
2021-12-09 00:46:48 -05:00
tildearrow
aff0afa7d1 prepare for arcade platform! 2021-12-08 17:40:35 -05:00
tildearrow
9362cfa481 add clock drift for exact tempo 2021-12-08 02:57:41 -05:00
tildearrow
6a02754996 add PAL flag to dispatch
now platforms run at their correct clock speed when in PAL mode

also fix clipping in Genesis
2021-12-08 01:56:40 -05:00
tildearrow
4eec990ec1 when the fix breaks something 2021-12-08 01:16:29 -05:00
tildearrow
b689d51ec9 audio file output stereo support 2021-12-07 12:33:55 -05:00
tildearrow
f71ee6b45d preliminary audio file output 2021-12-07 12:21:23 -05:00
tildearrow
7649b845aa prepare for file output 2021-12-07 04:39:52 -05:00
tildearrow
4cba677c04 i know a better way 2021-12-07 04:32:42 -05:00
tildearrow
7490ed89a1 Revert "Revert "prepare to add file out - does not compile!""
This reverts commit ada8e71884.
2021-12-07 04:22:36 -05:00
tildearrow
ada8e71884 Revert "prepare to add file out - does not compile!"
This reverts commit 45b202b85b.
2021-12-07 04:20:11 -05:00
tildearrow
45b202b85b prepare to add file out - does not compile! 2021-12-07 03:52:41 -05:00
tildearrow
3ee761fc87 C64: finish it all
all modules play correctly, bar:
- motherfunksignal (almost)
- filters are a bit weird
2021-12-07 01:23:57 -05:00
tildearrow
6efcfc2e8a prepare for possible major optimization
by just forwarding an output buffer to the dispatch and begin/length,
the number of calls may be reduced which improves performance.
2021-12-06 05:21:42 -05:00
tildearrow
ff07a19405 kind of C64 2021-12-04 23:55:28 -05:00
tildearrow
3286c3c0c5 NES system! almost 2021-12-04 01:19:54 -05:00
tildearrow
86131bf05e add a log level flag 2021-06-09 12:28:46 -05:00
tildearrow
f7080bb2c1 add parameter parsing 2021-06-09 03:33:03 -05:00
tildearrow
cf6b213d2c even more ancient version compatibility 2021-06-09 01:52:00 -05:00
tildearrow
5b707eeeec better ancient version sample support 2021-06-09 01:16:26 -05:00
tildearrow
5b2684b5e1 PCE: the adventures of missing wavetables 2021-06-08 22:21:05 -05:00
tildearrow
d74fa698af prepare for PC Engine platform
using Mednafen core
2021-06-06 14:02:38 -05:00
tildearrow
a1ab7c5d57 game boy progress, part 1
noise and wave channels don't play correctly yet
2021-05-27 13:30:37 -05:00
tildearrow
a2e64606c0 wire up early GB support
TODO: check why are envelopes not working
2021-05-26 17:43:14 -05:00
tildearrow
c2b3d85f77 bind the game boy
TODO: sound
2021-05-26 03:17:12 -05:00
tildearrow
09ed99f0b0 genesis extended channel 3 support.
as of today Furnace is able to play most Genesis songs without trouble.
bugs are expected, and fixes will arrive.

are you ready?
2021-05-18 16:02:49 -05:00
tildearrow
c0f7f12c89 misc fixes and new effects
- fix 8-bit samples
- 0C effect
- E3 effect
2021-05-18 02:29:17 -05:00
tildearrow
ccd5acf1e4 even. more. volume. slide. fixes.
so it happens on >volMax too
amazing
2021-05-18 01:52:03 -05:00
tildearrow
9736b77401 better volume slide accuracy
volume slide seems to be kind of quirky:
- sliding all the way down and then up suddenly sets the vol to max
- apparently there is an overflow and the slide stops when it reaches
  its boundaries (instead of continuing)
2021-05-17 15:06:11 -05:00
tildearrow
3a1019a08c more fixes and tweaks
memory management party
2021-05-16 20:49:54 -05:00
tildearrow
2532401265 prepare for ch3 mode 2021-05-16 17:43:10 -05:00
tildearrow
dbc2e6285f a lot of work
- round to nearest instead of round to zero in SMS period calc
- implement arpeggio
- implement arp macro (kinda)
- polish the SMS platform
- correct the DIV_CMD_PITCH range to 1 semitone
- fix PSG volume in Genesis
- use a better register write strat in Genesis
- fix a bug caused by legacy code
- implement ECxx command
- implement EDxx command
- implement SN noise mode command
- vibrato table is now 64 positions long (instead of 60)
2021-05-16 03:03:23 -05:00
tildearrow
3172fd37ed more SMS work
it is able to play some modules... the next step is to bind this to the
Genesis platform
2021-05-15 16:42:48 -05:00
tildearrow
d9f076ef64 prepare to add SMS platform
plays but no macro yet
2021-05-15 14:18:16 -05:00
tildearrow
eb692ca9a9 implement several effects
volume slides, vibrato, slides and portamento
2021-05-14 14:16:48 -05:00
tildearrow
c5fa0a3d6d it doesn't... 2021-05-13 03:18:54 -05:00
tildearrow
45a6d70479 massive improvements to genesis playback 2021-05-13 02:39:26 -05:00
tildearrow
062a9837c0 G E N E S I S
without SN
2021-05-12 17:19:18 -05:00
tildearrow
f810fc0c3c earliest playback
no sound, just terminal output
2021-05-12 03:58:55 -05:00
tildearrow
9d17655836 engine audio fixes 2021-05-11 18:23:35 -05:00
tildearrow
8c014802c9 convert chars to signed/unsigned 2021-05-11 15:26:38 -05:00
tildearrow
783d56c72a initial commit
took me a day to make the base...
...and ~12 hours to write a reader that reads 100% of all demo songs in
1.0
2021-05-11 15:08:08 -05:00