Commit graph

443 commits

Author SHA1 Message Date
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