Commit graph

2790 commits

Author SHA1 Message Date
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
70f512003e OPN: fix wrong getGain in ExtCh 2025-09-16 03:05:27 -05: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
tildearrow
c1b7a06a37 MultiPCM: add renderInstruments()
call it on instrument addition/removal/modification,
reset and/or renderSamples
2025-09-14 05:25:44 -05:00
tildearrow
684bebf202 MultiPCM: fix muting on reset 2025-09-13 14:14:11 -05:00
tildearrow
de1ab67d4a Merge branch 'master' into hasSampleHeader 2025-09-13 04:23:19 -05:00
tildearrow
551da762ee Merge branch 'master' into getSampleMemOffset 2025-09-13 04:13:27 -05:00
tildearrow
d16bad802d NDS: fix volume
it was twice as loud and global volume would clip
2025-09-12 05:10:17 -05:00
tildearrow
825039ec5a Lynx: write duty on forceIns()
issue #2674
2025-09-10 23:51:08 -05:00
tildearrow
17420d5d23 QSound: fix loop end being used as sample end
even if loop is disabled
2025-09-08 02:32:24 -05:00
tildearrow
3a66e0ceee T6W28: actually fix the phase reset issue
issue #2665
2025-09-07 04:34:59 -05:00
tildearrow
0da42f18a6 T6W28: fix noise reset on all duty macro steps
issue #2665
2025-09-05 13:26:52 -05:00
tildearrow
aa67f78d36 MMC5: fix typo in comment 2025-09-05 02:10:58 -05:00
tildearrow
67c7afd4cd MMC5: fix env mode not set after reset/forceIns
issue #2675
2025-09-05 01:01:27 -05:00
cam900
d558798bbc Fix MultiPCM dummy instrument 2025-08-30 08:18:07 +09:00
cam900
ffc681b8fa Fix MultiPCM sample OOB issue 2025-08-30 08:15:13 +09: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
cam900
bd8d9a56a0 Prepare to add hasSamplePtrHeader and hasSampleInstHeader in dispatch (WIP)
for refresh sample memory when loop/end pointer and instrument parameter changed. Also, this PR has minor code style fixes and add warning in MultiPCM sample map usage.
2025-08-27 22:52:19 +09:00
cam900
e9b6b441e3 Merge branch 'master' of https://github.com/tildearrow/furnace into getSampleMemOffset 2025-08-27 21:18:29 +09:00
cam900
4ed40d37d6 Add sample limit in OPL4 PCM, Reduce duplicate
it has 512 (if header at 0x000000) or 128 (otherwise; first 384 sample is from bottommost area (ex: YRW801 ROM) in this case) sample limits
2025-08-27 21:02:51 +09:00
cam900
44b2d3d037 QSound: Fix ADPCM Address and code style,
Add QSound ADPCM sample warning:
Because QSound ADPCM has twice long max sample length but start/end addresses are byte aligned, doesn't have loop and pitch (fixed to output rate / 3).
2025-08-20 17:57:40 -05:00
tildearrow
ee64dd6a16 T6W28: fix noise emulation
thanks to Burnt Fishy and The Beesh-Spweesh! for information
2025-08-19 20:58:08 -05:00
tildearrow
3b37a5334a OPNA/B: fix SSG DAC/TFX not working with LLE core 2025-08-19 04:23:58 -05:00
Electric Keet
bf348efe24 VERA version number fix. 2025-08-11 05:05:25 -05:00
cam900
915805862f
msm6295.cpp: Add sample count limit when NMK112 banked
In this case, sample limit is expanded to 8192. (32 samples per bank * 256 banks)
2025-08-01 19:35:40 +09:00
tildearrow
1b40577585 MSM6295: mark samples after 126 as unloaded 2025-07-29 05:20:32 -05:00
tildearrow
c8d323d708 Supervision: fix crash 2025-07-28 05:25:17 -05:00
tildearrow
387d9e0654 breaking the limit, part 2
all dispatches adapted to 32768 samples.
sample limit unlocked.
testing is required.
2025-07-27 20:16:59 -05:00
tildearrow
c60948be9e add stdint.h to ymf278.h
issue #2610
2025-07-24 01:04:25 -05:00
tildearrow
ab27e6090e ES5506: fix channel count with Amiga pitch 2025-06-25 18:05:03 -05:00
tildearrow
c592c44c37 SM8521: "improve" noise
unconfirmed

issue #2567
2025-06-25 17:13:12 -05:00
tildearrow
801f5c5720 OPL4: fix use of invalid samples
issue #2217
2025-06-24 03:46:08 -05:00
tildearrow
38e4245ee0 Virtual Boy: envelope bug status 2025-06-24 02:54:18 -05:00
Floogle
83c9d0a3ee
Improve Virtual Boy emulator (#2446) 2025-06-23 19:52:20 -05:00
tildearrow
ec69c30ca0 NES: here's your FamiTracker compatibility flag 2025-06-21 21:39:29 -05:00
tildearrow
d7c5fceac4 OPL4: fix PCM chan osc on ymfm
for real
issue #2566
2025-06-21 17:46:27 -05:00
tildearrow
8d8aecca2a OPLL: fix op 2 TL macro in preset patch 2025-06-21 17:31:09 -05:00
tildearrow
c08d42b483 OPL4: fix PCM chan osc on ymfm??????
issue #2566
PCM only has two outputs
2025-06-21 10:57:29 -05:00
tildearrow
c3886dd5a8 OPLL: fix pitch calculation
possibly issue #2538
2025-06-21 10:39:11 -05:00
tildearrow
4af0345b03 OPL3: fix channel 7 hard reset
issue #2582
2025-06-21 04:07:59 -05:00
tildearrow
a36d78305a YM2612: implement urgent flag on ymfm and LLE
issue #2475
2025-06-18 02:51:14 -05:00
tildearrow
b1f824c3bf YM2612: add an "urgent" flag to queued writes
to let DAC writes through during delay (due to hard reset) and avoid clicks
issue #2475

ymfm and LLE implementations currently missing
2025-06-17 19:57:16 -05:00
tildearrow
a27f76590f VIC-20: fix on/off or note off during forceIns()
for real this time
issue #2539
2025-06-11 18:10:51 -05:00
tildearrow
b53fb9fde7 VRC6: fix duty without note
issue #2556
2025-06-11 16:21:37 -05:00
cam900
a5148a3441 Implement getSampleMemOffset for further optimize VGM logging (specifically OPL4 PCM) 2025-06-04 21:16:27 +09:00
tildearrow
ffbe910c99 dev231 - YM2612: actually be YM2612 by default
pull request #2533
2025-06-02 12:59:10 -05:00
cam900
967e717396 ES5506: Fix pingpong loop 2025-06-02 16:56:41 +09:00
cam900
ece9dd83c7 ES5506: Fix sample direction 2025-06-02 16:38:15 +09:00
cam900
7929cecb9d Syncing works without that 2025-06-02 15:40:29 +09:00
cam900
f3aca62e7a E5506: Fix masked CR writing, Fix type 2025-06-02 15:38:03 +09:00