2008-09-23 01:00:10 +02:00
|
|
|
// -*- C++ -*-
|
|
|
|
// VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator.
|
|
|
|
// Copyright (C) 1999-2003 Forgotten
|
|
|
|
// Copyright (C) 2005 Forgotten and the VBA development team
|
|
|
|
|
|
|
|
// This program is free software; you can redistribute it and/or modify
|
|
|
|
// it under the terms of the GNU General Public License as published by
|
|
|
|
// the Free Software Foundation; either version 2, or(at your option)
|
|
|
|
// any later version.
|
|
|
|
//
|
|
|
|
// This program is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
// GNU General Public License for more details.
|
|
|
|
//
|
|
|
|
// You should have received a copy of the GNU General Public License
|
|
|
|
// along with this program; if not, write to the Free Software Foundation,
|
|
|
|
// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
|
|
|
|
#ifndef VBA_GLOBALS_H
|
|
|
|
#define VBA_GLOBALS_H
|
|
|
|
|
2009-01-08 08:35:44 +01:00
|
|
|
#include "GBA.h"
|
2008-09-23 01:00:10 +02:00
|
|
|
|
|
|
|
#define VERBOSE_SWI 1
|
|
|
|
#define VERBOSE_UNALIGNED_MEMORY 2
|
|
|
|
#define VERBOSE_ILLEGAL_WRITE 4
|
|
|
|
#define VERBOSE_ILLEGAL_READ 8
|
|
|
|
#define VERBOSE_DMA0 16
|
|
|
|
#define VERBOSE_DMA1 32
|
|
|
|
#define VERBOSE_DMA2 64
|
|
|
|
#define VERBOSE_DMA3 128
|
|
|
|
#define VERBOSE_UNDEFINED 256
|
|
|
|
#define VERBOSE_AGBPRINT 512
|
|
|
|
#define VERBOSE_SOUNDOUTPUT 1024
|
|
|
|
|
|
|
|
extern reg_pair reg[45];
|
|
|
|
extern bool ioReadable[0x400];
|
|
|
|
extern bool N_FLAG;
|
|
|
|
extern bool C_FLAG;
|
|
|
|
extern bool Z_FLAG;
|
|
|
|
extern bool V_FLAG;
|
|
|
|
extern bool armState;
|
|
|
|
extern bool armIrqEnable;
|
|
|
|
extern u32 armNextPC;
|
|
|
|
extern int armMode;
|
|
|
|
extern u32 stop;
|
|
|
|
extern int saveType;
|
|
|
|
extern bool useBios;
|
|
|
|
extern bool skipBios;
|
|
|
|
extern int frameSkip;
|
|
|
|
extern bool speedup;
|
|
|
|
extern bool synchronize;
|
|
|
|
extern bool cpuDisableSfx;
|
|
|
|
extern bool cpuIsMultiBoot;
|
|
|
|
extern bool parseDebug;
|
|
|
|
extern int layerSettings;
|
|
|
|
extern int layerEnable;
|
|
|
|
extern bool speedHack;
|
|
|
|
extern int cpuSaveType;
|
|
|
|
extern bool cheatsEnabled;
|
|
|
|
extern bool mirroringEnable;
|
|
|
|
extern bool skipSaveGameBattery;
|
|
|
|
|
|
|
|
extern u8 *bios;
|
|
|
|
extern u8 *rom;
|
|
|
|
extern u8 *internalRAM;
|
|
|
|
extern u8 *workRAM;
|
|
|
|
extern u8 *paletteRAM;
|
|
|
|
extern u8 *vram;
|
|
|
|
extern u8 *pix;
|
|
|
|
extern u8 *oam;
|
|
|
|
extern u8 *ioMem;
|
|
|
|
|
|
|
|
extern u16 DISPCNT;
|
|
|
|
extern u16 DISPSTAT;
|
|
|
|
extern u16 VCOUNT;
|
|
|
|
extern u16 BG0CNT;
|
|
|
|
extern u16 BG1CNT;
|
|
|
|
extern u16 BG2CNT;
|
|
|
|
extern u16 BG3CNT;
|
|
|
|
extern u16 BG0HOFS;
|
|
|
|
extern u16 BG0VOFS;
|
|
|
|
extern u16 BG1HOFS;
|
|
|
|
extern u16 BG1VOFS;
|
|
|
|
extern u16 BG2HOFS;
|
|
|
|
extern u16 BG2VOFS;
|
|
|
|
extern u16 BG3HOFS;
|
|
|
|
extern u16 BG3VOFS;
|
|
|
|
extern u16 BG2PA;
|
|
|
|
extern u16 BG2PB;
|
|
|
|
extern u16 BG2PC;
|
|
|
|
extern u16 BG2PD;
|
|
|
|
extern u16 BG2X_L;
|
|
|
|
extern u16 BG2X_H;
|
|
|
|
extern u16 BG2Y_L;
|
|
|
|
extern u16 BG2Y_H;
|
|
|
|
extern u16 BG3PA;
|
|
|
|
extern u16 BG3PB;
|
|
|
|
extern u16 BG3PC;
|
|
|
|
extern u16 BG3PD;
|
|
|
|
extern u16 BG3X_L;
|
|
|
|
extern u16 BG3X_H;
|
|
|
|
extern u16 BG3Y_L;
|
|
|
|
extern u16 BG3Y_H;
|
|
|
|
extern u16 WIN0H;
|
|
|
|
extern u16 WIN1H;
|
|
|
|
extern u16 WIN0V;
|
|
|
|
extern u16 WIN1V;
|
|
|
|
extern u16 WININ;
|
|
|
|
extern u16 WINOUT;
|
|
|
|
extern u16 MOSAIC;
|
|
|
|
extern u16 BLDMOD;
|
|
|
|
extern u16 COLEV;
|
|
|
|
extern u16 COLY;
|
|
|
|
extern u16 DM0SAD_L;
|
|
|
|
extern u16 DM0SAD_H;
|
|
|
|
extern u16 DM0DAD_L;
|
|
|
|
extern u16 DM0DAD_H;
|
|
|
|
extern u16 DM0CNT_L;
|
|
|
|
extern u16 DM0CNT_H;
|
|
|
|
extern u16 DM1SAD_L;
|
|
|
|
extern u16 DM1SAD_H;
|
|
|
|
extern u16 DM1DAD_L;
|
|
|
|
extern u16 DM1DAD_H;
|
|
|
|
extern u16 DM1CNT_L;
|
|
|
|
extern u16 DM1CNT_H;
|
|
|
|
extern u16 DM2SAD_L;
|
|
|
|
extern u16 DM2SAD_H;
|
|
|
|
extern u16 DM2DAD_L;
|
|
|
|
extern u16 DM2DAD_H;
|
|
|
|
extern u16 DM2CNT_L;
|
|
|
|
extern u16 DM2CNT_H;
|
|
|
|
extern u16 DM3SAD_L;
|
|
|
|
extern u16 DM3SAD_H;
|
|
|
|
extern u16 DM3DAD_L;
|
|
|
|
extern u16 DM3DAD_H;
|
|
|
|
extern u16 DM3CNT_L;
|
|
|
|
extern u16 DM3CNT_H;
|
|
|
|
extern u16 TM0D;
|
|
|
|
extern u16 TM0CNT;
|
|
|
|
extern u16 TM1D;
|
|
|
|
extern u16 TM1CNT;
|
|
|
|
extern u16 TM2D;
|
|
|
|
extern u16 TM2CNT;
|
|
|
|
extern u16 TM3D;
|
|
|
|
extern u16 TM3CNT;
|
|
|
|
extern u16 P1;
|
|
|
|
extern u16 IE;
|
|
|
|
extern u16 IF;
|
|
|
|
extern u16 IME;
|
|
|
|
|
|
|
|
#endif // VBA_GLOBALS_H
|