aicaarm namespace

This commit is contained in:
Flyinghead 2021-01-29 11:39:00 +01:00
parent 1b47ef0ab1
commit 75f7b92342
6 changed files with 21 additions and 16 deletions

View File

@ -88,7 +88,7 @@ const int AICA_TICK = 145125; // 44.1 KHz / 32
static int AicaUpdate(int tag, int c, int j)
{
arm_Run(32);
aicaarm::run(32);
if (!settings.aica.NoBatch && !settings.aica.DSPEnabled)
AICA_Sample32();

View File

@ -115,7 +115,7 @@ u32 ReadMem_aica_reg(u32 addr,u32 sz)
static void ArmSetRST()
{
ARMRST &= 1;
arm_SetEnabled(ARMRST == 0);
aicaarm::enable(ARMRST == 0);
}
void WriteMem_aica_reg(u32 addr,u32 data,u32 sz)

View File

@ -79,7 +79,7 @@ static void runInterpreter(u32 CycleCount)
}
}
void arm_Run(u32 samples)
void aicaarm::run(u32 samples)
{
for (u32 i = 0; i < samples; i++)
{
@ -89,12 +89,12 @@ void arm_Run(u32 samples)
}
#endif
void arm_Init()
void aicaarm::init()
{
#if FEAT_AREC != DYNAREC_NONE
arm7rec_init();
#endif
arm_Reset();
aicaarm::reset();
for (int i = 0; i < 256; i++)
{
@ -270,7 +270,7 @@ static void CPUUndefinedException()
armNextPC = 0x04;
}
void arm_Reset()
void aicaarm::reset()
{
DEBUG_LOG(AICA_ARM, "AICA ARM Reset");
#if FEAT_AREC != DYNAREC_NONE
@ -333,10 +333,10 @@ void CPUFiq()
*/
void arm_SetEnabled(bool enabled)
void aicaarm::enable(bool enabled)
{
if(!Arm7Enabled && enabled)
arm_Reset();
aicaarm::reset();
Arm7Enabled=enabled;
}
@ -398,3 +398,4 @@ template void DYNACALL MSR_do<0>(u32 v);
template void DYNACALL MSR_do<1>(u32 v);
#endif // FEAT_AREC != DYNAREC_NONE

View File

@ -1,10 +1,14 @@
#pragma once
#include "types.h"
void arm_Init();
void arm_Reset();
void arm_Run(u32 samples);
void arm_SetEnabled(bool enabled);
namespace aicaarm {
void init();
void reset();
void run(u32 samples);
void enable(bool enabled);
}
enum Arm7Reg
{

View File

@ -707,7 +707,7 @@ extern "C" void DYNACALL arm_mainloop(u32 cycl, void* regs, void* entrypoints);
// Run a timeslice of arm7
void arm_Run(u32 samples)
void aicaarm::run(u32 samples)
{
for (u32 i = 0; i < samples; i++)
{

View File

@ -6,7 +6,7 @@
//called when plugin is used by emu (you should do first time init here)
s32 libARM_Init()
{
arm_Init();
aicaarm::init();
return 0;
}
@ -20,6 +20,6 @@ void libARM_Term()
//It's supposed to reset anything
void libARM_Reset(bool hard)
{
arm_Reset();
arm_SetEnabled(false);
aicaarm::reset();
aicaarm::enable(false);
}