Commit graph

799 commits

Author SHA1 Message Date
tildearrow
eca315b99a prepare for supporting channel count in user syste
ms
2025-11-24 20:48:22 -05:00
tildearrow
fea3bab550 Merge branch 'chanColorsEtc' into inf2 2025-11-21 10:51:44 -05:00
tildearrow
1882a4f12d consider channel color for the rest of functions 2025-11-21 10:51:03 -05:00
tildearrow
47e2910498 giga-refactor, part 20
convert compat SegaPCM to normal SegaPCM with 5 channels
convert Neo Geo CD to YM2610
2025-11-21 04:58:56 -05:00
tildearrow
caea061cbb giga-refactor, part 17
don't clear chip flags when changing channel count
2025-11-19 01:47:14 -05:00
tildearrow
f6d0979209 don't allow chip channel count to be set to 0 2025-11-16 17:05:43 -05:00
tildearrow
663f32d9d4 giga-refactor, part 13
get rid of time base
2025-11-16 15:45:24 -05:00
tildearrow
90a9a86e09 giga-refactor, part 9
new format saving
compatibility flags now part of own struct
2025-11-16 01:41:17 -05:00
tildearrow
7bb770ad01 giga-refactor, part 7 2025-11-15 05:09:11 -05:00
tildearrow
a1bca68e4a asgfdlhjkashdjfl 2025-11-15 03:00:40 -05:00
tildearrow
7b11fe68ad giga-refactor, part 6
make engine dispatchChanOfChan-aware
2025-11-13 16:33:35 -05:00
tildearrow
2cae7aaf9a giga-refactor, part 3
make use of systemChans
2025-11-12 06:05:36 -05:00
tildearrow
9a5de4fc22 fix system alteration functions 2025-11-12 05:14:31 -05:00
tildearrow
db419dc6c8 giga-refactor, part 2 2025-11-12 05:06:51 -05:00
tildearrow
a654d33df2 giga-refactor, part 1 2025-11-12 00:39:28 -05:00
tildearrow
2f25acd017 move asset dir functions to another file
and get them out of the engine
2025-11-11 18:33:23 -05:00
tildearrow
2ff3def8f8 rely on song.systemChans 2025-11-11 05:31:06 -05:00
tildearrow
b8db5b4a1a dev239 - Merge branch 'noLegacySample' 2025-11-10 04:44:00 -05:00
tildearrow
9e8c97cc6f heuristic for song length determination
song length calculation of lorge.fur now takes 18ms (from ~1 hour)
2025-11-09 20:42:38 -05:00
tildearrow
9992660708 prepare for nuking legacy sample mode 2025-11-07 19:18:56 -05:00
tildearrow
deee0f816c file player: fix output rate changes 2025-11-01 12:18:11 -05:00
tildearrow
5b145b7121 multiple instrument playback, part 1
not implemented for MIDI yet
2025-10-31 19:36:13 -05:00
tildearrow
08a27be76f GUI: chord input
looks like a horrid hack, but it works
I'll improve some of the code at some point
2025-10-31 05:03:58 -05:00
tildearrow
3516245d2e rename totalTicksOff to totalTimeDrift 2025-10-30 20:40:22 -05:00
tildearrow
5ff81aef33 some time refactors
no more weird totalTicks name
code looks better
2025-10-30 20:35:30 -05:00
Redas Jefisovas
a2b56b5b64 feat: add clearer explanations to effects 2025-10-30 19:07:06 -05:00
tildearrow
319da2d391 file player cue point and loop tracking
no loop trail yet
2025-10-30 04:07:27 -05:00
tildearrow
3c106f7861 improve time tracking on step play
now it fetches row time from song timestamps
also syncs file player!
2025-10-30 01:49:02 -05:00
tildearrow
cb220d41ec DivSongTimestamps, part 8
now remove walkSong()
2025-10-29 19:39:53 -05:00
tildearrow
a49306b4bd more reference player work 2025-10-29 19:25:08 -05:00
tildearrow
c1175bcc35 DivSongTimestamps, part 5
deprecate walkSong and remove findSongLength
2025-10-29 04:21:31 -05:00
tildearrow
2f11128c8d DivSongTimestamps, part 2
compilation fixes
2025-10-28 21:13:32 -05:00
tildearrow
8c1c338e91 DivSongTimestamps, part 1
this is actually a refactor
it will replace walkSong and the other function and fix bugs in the process
2025-10-28 21:07:21 -05:00
tildearrow
d3c85ae748 prepare for DivSongTimestamps
this will replace walkSong and findSongLength while
offering more features
2025-10-28 05:31:50 -05:00
tildearrow
25cb78b306 fix playSub() inconsistency in low-latency mode 2025-10-28 03:05:43 -05:00
tildearrow
394c6c35aa earliest implementation of sync
does not loop correctly
2025-10-27 19:34:21 -05:00
tildearrow
f77aafb44d reference player prototype
poor performance
no playback sync yet
2025-10-27 05:15:47 -05:00
tildearrow
99c6cbffa6 ASIO backend, part 8
add control panel button
last commit unless it doesn't work somewhere
2025-10-25 21:23:50 -05:00
tildearrow
db2f368813 ASIO backend, part 6
add support for handling device resets
this will be extended to the SDL and PortAudio backends soon
2025-10-25 18:40:02 -05:00
tildearrow
f5fd8102c7 ASIO backend, part 2
half-working:
- crashes on exit
- doesn't work on launch (must go to settings > audio and click OK)
2025-10-25 04:30:23 -05:00
tildearrow
d2f7c49aa4 remove unused globalPitch variable 2025-10-22 14:25:03 -05:00
tildearrow
29929beeac remove partial pitch linearity
the hacky mode is no more
2025-10-22 14:00:52 -05:00
tildearrow
6c804c3674 pattern data refactor, part 6
crap
2025-10-15 21:56:04 -05:00
tildearrow
7ba6b3680a pattern data refactor, part 5
the engine is done
still does not compile
2025-10-15 21:05:13 -05:00
tildearrow
d4ecf4045b pattern data refactor, part 1
this first stage changes the way notes are encoded
instead of note/octave, it is just note
2025-10-14 05:07:35 -05:00
yohannd1
b8ce3219eb channel drag copy: fix channel copying code (thanks tildearrow & eknous) 2025-10-04 04:05:06 -05:00
yohannd1
1099c79ec8 channel drag copy: initial impl 2025-10-04 04:05:06 -05:00
cam900
1b712e03ee Add notifySampleChanged in dispatch and engine:
This method/variables are for notify sample is changed/altered/added/removed.  can be called together with updateSampleTex for sample update.

multipcm: Fix possible desync with instrument and sample parameter

opl4: Split sample table render and sample data render, Add notifySampleChange for refresh sample parameters
2025-10-01 12:31:39 +02:00
tildearrow
3a06e7b963 remove hasSampleInsHeader()
- it is only used by MultiPCM
- an alternative approach is in place
2025-09-14 14:21:31 -05:00
cam900
957b57f3d9 Add primary MultiPCM support
Partially revert previous commit
Add notifyInsAddition in dispatch for instrument addition
Refresh sample memory when instrument type changed
Fix naming for consistency
Also, this commit fixes a some possible issue in MultiPCM on openMSX core.
Chip ID: Already determined
2025-08-29 16:24:32 +09:00