コード例 #1
0
ファイル: spc700.c プロジェクト: tuluse/CATSFC-libretro
void ApuCA()
{
   // MOV1 membit,C
   MemBit();
   if (APUCheckCarry())
      S9xAPUSetByte(S9xAPUGetByte(IAPU.Address) | (1 << IAPU.Bit), IAPU.Address);
   else
      S9xAPUSetByte(S9xAPUGetByte(IAPU.Address) & ~(1 << IAPU.Bit), IAPU.Address);
   IAPU.PC += 3;
}
コード例 #2
0
ファイル: spc700.c プロジェクト: tuluse/CATSFC-libretro
void ApuEA()
{
   // NOT1 membit
   MemBit();
   S9xAPUSetByte(S9xAPUGetByte(IAPU.Address) ^ (1 << IAPU.Bit), IAPU.Address);
   IAPU.PC += 3;
}
コード例 #3
0
ファイル: spc700.c プロジェクト: tuluse/CATSFC-libretro
void Apu0C()
{
   // ASL abs
   Absolute();
   uint8_t Work8 = S9xAPUGetByte(IAPU.Address);
   ASL(Work8);
   S9xAPUSetByte(Work8, IAPU.Address);
   IAPU.PC += 3;
}
コード例 #4
0
ファイル: spc700.c プロジェクト: tuluse/CATSFC-libretro
void Apu6C()
{
   // ROR abs
   Absolute();
   uint8_t Work8 = S9xAPUGetByte(IAPU.Address);
   ROR(Work8);
   S9xAPUSetByte(Work8, IAPU.Address);
   IAPU.PC += 3;
}
コード例 #5
0
void Apu4C()
{
   // LSR abs
   Absolute();
   uint8 Work8 = S9xAPUGetByte(((IAPU.Address)));
   LSR(Work8);
   S9xAPUSetByte(Work8, IAPU.Address);
   IAPU.PC += 3;
}
コード例 #6
0
void Apu2C()
{
   // ROL abs
   Absolute();
   uint8 Work8 = S9xAPUGetByte(((IAPU.Address)));
   ROL(Work8);
   S9xAPUSetByte(Work8, IAPU.Address);
   IAPU.PC += 3;
}
コード例 #7
0
ファイル: spc700.c プロジェクト: tuluse/CATSFC-libretro
void Apu4E()
{
   // TCLR1 abs
   Absolute();
   uint8_t Work8 = S9xAPUGetByte(IAPU.Address);
   S9xAPUSetByte(Work8 & ~IAPU.Registers.YA.B.A, IAPU.Address);
   Work8 &= IAPU.Registers.YA.B.A;
   APUSetZN8(Work8);
   IAPU.PC += 3;
}
コード例 #8
0
void Apu0E()
{
   // TSET1 abs
   Absolute();
   uint8 Work8 = S9xAPUGetByte(IAPU.Address);
   S9xAPUSetByte(Work8 | IAPU.YA.B.A, IAPU.Address);
   Work8 &= IAPU.YA.B.A;
   APUSetZN8(Work8);
   IAPU.PC += 3;
}
コード例 #9
0
ファイル: spc700.c プロジェクト: tuluse/CATSFC-libretro
void Apu8C()
{
   // DEC abs
   Absolute();
   uint8_t Work8 = S9xAPUGetByte(IAPU.Address) - 1;
   S9xAPUSetByte(Work8, IAPU.Address);
   APUSetZN8(Work8);

#ifdef SPC700_SHUTDOWN
   IAPU.WaitCounter++;
#endif

   IAPU.PC += 3;
}