Cores/Nds/NdsConstants.cs
namespace Emulotl.Nds;
public static class NdsConstants
{
public const int ScreenWidth = 256;
public const int ScreenHeight = 192;
public const int ScreenCount = 2;
public const int Arm7ClockHz = 33513982;
public const int Arm9ClockHz = Arm7ClockHz * 2;
public const int DotsPerLine = 355;
public const int CyclesPerDot = 6;
public const int CyclesPerLine = DotsPerLine * CyclesPerDot;
public const int LinesPerFrame = 263;
public const int VisibleLines = 192;
public const int CyclesPerFrame = CyclesPerLine * LinesPerFrame;
public const double Fps = (double)Arm7ClockHz / CyclesPerFrame;
public const int AudioCyclesPerSample = 1024;
public const int AudioSampleRate = Arm7ClockHz / AudioCyclesPerSample;
public const int AudioSamplesPerFrame = (CyclesPerFrame + AudioCyclesPerSample - 1) / AudioCyclesPerSample;
public const int MainRamSize = 4 * 1024 * 1024;
public const int SharedWramSize = 32 * 1024;
public const int Arm7WramSize = 64 * 1024;
public const int Arm9ItcmSize = 32 * 1024;
public const int Arm9DtcmSize = 16 * 1024;
public const int Arm7BiosSize = 16 * 1024;
public const int Arm9BiosSize = 32 * 1024;
public const int VramSize = 656 * 1024;
public const int PaletteSize = 2 * 1024;
public const int OamSize = 2 * 1024;
public const int HeaderGameCodeOffset = 0x0C;
public const int HeaderSize = 0x200;
}