mirror of
https://github.com/dingusdev/dingusppc.git
synced 2026-04-20 02:17:23 +00:00
Preparing Alpha 1.02 release
This commit is contained in:
+13
-1
@@ -185,6 +185,8 @@ int AwacsScreamer::device_postinit() {
|
||||
}
|
||||
|
||||
uint32_t AwacsScreamer::snd_ctrl_read(uint32_t offset, int size) {
|
||||
uint32_t return_val = 0;
|
||||
|
||||
switch (offset) {
|
||||
case AWAC_SOUND_CTRL_REG:
|
||||
return this->snd_ctrl_reg;
|
||||
@@ -193,7 +195,13 @@ uint32_t AwacsScreamer::snd_ctrl_read(uint32_t offset, int size) {
|
||||
case AWAC_CODEC_STATUS_REG:
|
||||
return (AWAC_AVAILABLE << 8) | (AWAC_MAKER_CRYSTAL << 16) | (AWAC_REV_SCREAMER << 20);
|
||||
case AWAC_CLIP_COUNT:
|
||||
return this->clip_count;
|
||||
return_val = this->clip_count;
|
||||
this->clip_count = 0;
|
||||
return return_val;
|
||||
case AWAC_BYTE_SWAP:
|
||||
return this->byte_swap ? 0 : 1;
|
||||
case AWAC_FRAME_COUNT:
|
||||
return this->frame_count;
|
||||
default:
|
||||
LOG_F(ERROR, "%s: unsupported register at offset 0x%X", this->name.c_str(), offset);
|
||||
}
|
||||
@@ -221,6 +229,10 @@ void AwacsScreamer::snd_ctrl_write(uint32_t offset, uint32_t value, int size) {
|
||||
break;
|
||||
case AWAC_CLIP_COUNT:
|
||||
this->clip_count = BYTESWAP_32(value);
|
||||
case AWAC_BYTE_SWAP:
|
||||
this->byte_swap = BYTESWAP_32(value);
|
||||
case AWAC_FRAME_COUNT:
|
||||
this->frame_count = BYTESWAP_32(value);
|
||||
default:
|
||||
LOG_F(ERROR, "%s: unsupported register at offset 0x%X", this->name.c_str(),
|
||||
offset);
|
||||
|
||||
@@ -97,6 +97,7 @@ enum {
|
||||
AWAC_CODEC_STATUS_REG = 0x20,
|
||||
AWAC_CLIP_COUNT = 0x30,
|
||||
AWAC_BYTE_SWAP = 0x40,
|
||||
AWAC_FRAME_COUNT = 0x50,
|
||||
};
|
||||
|
||||
/** Apple source calls this kValidData but doesn't explain
|
||||
@@ -189,6 +190,8 @@ private:
|
||||
uint16_t control_regs[8] = {}; // control registers, each 12-bits wide
|
||||
uint8_t is_busy = 0;
|
||||
uint32_t clip_count = 0;
|
||||
uint32_t byte_swap = 0;
|
||||
uint32_t frame_count = 0;
|
||||
|
||||
std::unique_ptr<AudioProcessor> audio_proc;
|
||||
};
|
||||
|
||||
@@ -62,7 +62,7 @@ static void sigabrt_handler(int signum) {
|
||||
}
|
||||
|
||||
static string appDescription = string(
|
||||
"\nDingusPPC - Alpha 1.02 (5/10/2025) "
|
||||
"\nDingusPPC - Alpha 1.02 (3/14/2025) "
|
||||
"\nWritten by divingkatae, maximumspatium, "
|
||||
"\njoevt, mihaip, kkaisershot, et. al. "
|
||||
"\n(c) 2018-2024 The DingusPPC Dev Team. "
|
||||
|
||||
Reference in New Issue
Block a user