aboutsummaryrefslogtreecommitdiff
path: root/src/dbopl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/dbopl.cpp')
-rw-r--r--src/dbopl.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/dbopl.cpp b/src/dbopl.cpp
index cd857f4..fb28e20 100644
--- a/src/dbopl.cpp
+++ b/src/dbopl.cpp
@@ -1997,7 +1997,7 @@ namespace DBOPL
Bit32s out32[1024];
if(GCC_UNLIKELY(*samples > 512))
*samples = 512;
- memset(out32, 0, sizeof(Bit32s) * size_t(*samples) * 2);
+ memset(out32, 0, sizeof(Bit32s) * 1024);
if(!chip.opl3Active)
chip.GenerateBlock2(static_cast<Bitu>(*samples), out32);
else
@@ -2011,7 +2011,6 @@ namespace DBOPL
{
if(GCC_UNLIKELY(*samples > 512))
*samples = 512;
-
if(!chip.opl3Active)
chip.GenerateBlock2_Mix(static_cast<Bitu>(*samples), out);
else
@@ -2023,11 +2022,11 @@ namespace DBOPL
Bit32s out32[1024];
if(GCC_UNLIKELY(*samples > 512))
*samples = 512;
- memset(out32, 0, sizeof(Bit32s) * size_t(*samples) * 2);
+ memset(out32, 0, sizeof(Bit32s) * 1024);
if(!chip.opl3Active)
- chip.GenerateBlock2_Mix(static_cast<Bitu>(*samples), out32);
+ chip.GenerateBlock2(static_cast<Bitu>(*samples), out32);
else
- chip.GenerateBlock3_Mix(static_cast<Bitu>(*samples), out32);
+ chip.GenerateBlock3(static_cast<Bitu>(*samples), out32);
ssize_t sz = *samples * 2;
for(ssize_t i = 0; i < sz; i++)
out[i] += static_cast<Bit16s>(DBOPL_CLAMP(out32[i], static_cast<ssize_t>(INT16_MIN), static_cast<ssize_t>(INT16_MAX)));