Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
A
 addrWidth, dma_data
 AfterTransferChecks, dma_data
 alreadyStarted
 ASICRegisters
 attributes, OAMSprite
B
 bios, Memory
 Breakpoint
 breakpointHitID, BreakpointsEvaluator
 breakpoints, BreakpointsEvaluator
 BreakpointsEvaluator
 buffer_bg0, PPU
 buffer_bg1, PPU
 buffer_bg2, PPU
 buffer_bg3, PPU
 buffer_nul, PPU
 buffer_obj, PPU
 buffer_obj_priority, PPU
C
 cart_ram, Memory
 cartridgeStoNAccess, Memory
 CheckIOAccess, Memory
 CheckVMatch, PPU
 ClearHBlank, PPU
 ClearVBlank, PPU
 ComputeWaitStates, Memory
 ComputeWaitStatesAB, Memory
 control
 count
 CpsrGetCarry, CPU
 CpsrGetFIQDisable, CPU
 CpsrGetIRQDisable, CPU
 CpsrGetMode, CPU
 CpsrGetOverflow, CPU
 CpsrGetSign, CPU
 CpsrGetThumbMode, CPU
 CpsrGetZero, CPU
 CpsrSetCarry, CPU
 CpsrSetCarryByAddVals, CPU
 CpsrSetFIQDisable, CPU
 CpsrSetIRQDisable, CPU
 CpsrSetMode, CPU
 CpsrSetOverflow, CPU
 CpsrSetOverflowByVals, CPU
 CpsrSetSign, CPU
 CpsrSetSignByVal, CPU
 CpsrSetThumbMode, CPU
 CpsrSetZero, CPU
 CpsrSetZeroByVal, CPU
 cpu
 CPU
 cyclesCounter, timer_data
int addrWidth
Keeps track of the word length in the transfer (so that you don’t always have to do those shifts and ands to load it)
inline void AfterTransferChecks(int chan)
Computes if, after a transfer, a dma has finished its transfer, if it shall be re-enabled, if there’re addresses that have to be reloaded..
bool alreadyStarted
True if the transfer is on the way.
bool alreadyStarted
If true, the timer is running.
struct ASICRegisters
This struct holds 0x804 bytes of data.
uint16_t attributes[3]
The actual sprite data.
int8_t bios [0x4000 ]
The bios memory.
struct Breakpoint
Represents a Break Rule data.
int breakpointHitID
If some rule causes a break, its ID will be stored here.
std::vector<Breakpoint> breakpoints
The list of breakpoints (break rules) currently active.
struct BreakpointsEvaluator
Holds and evaluates break conditions
uint16_t buffer_bg0[38400]
Background 0 buffer.
uint16_t buffer_bg1[38400]
Background 1 buffer.
uint16_t buffer_bg2[38400]
Background 2 buffer.
uint16_t buffer_bg3[38400]
Background 3 buffer.
uint16_t buffer_nul[38400]
Backdrop buffer.
uint16_t buffer_obj[38400]
Sprites layer buffer.
uint8_t buffer_obj_priority[38400]
Sprites priorities buffer.
int8_t cart_ram[0x10000]
Cartridge RAM.
bool cartridgeStoNAccess
Cartridge ROM has sequential and non-sequential accesses.
inline void CheckIOAccess()
Does all the operations needed after an IO access.
inline void CheckVMatch()
Generates an interrupt if VCOUNT is equal to LYC.
inline void ClearHBlank()
Clears HBLANK Flag.
inline void ClearVBlank()
Clears VBlank Flag.
inline int ComputeWaitStates(int cyclesS,  
int cyclesN,  
int accessWidth = 2)
Computes the wait states of the last memory access.
inline int ComputeWaitStatesAB(uint32_t addr,  
int cyclesS,  
int cyclesN,  
int accessWidth = 2)
Computes the WaitStates given an address.
uint16_t* control
Pointer to the control register
uint16_t* control
Pointer to the Timer control register.
uint16_t* count
Pointer to the word count register.
uint16_t* count
Pointer to the Timer count register.
inline bool CpsrGetCarry()
Getter for the Carry Flag.
inline bool CpsrGetFIQDisable()
Getter for the Fast Interrupt Disable Flag.
inline bool CpsrGetIRQDisable()
Getter for the Interrupt Disable Flag.
inline int CpsrGetMode()
Getter for the CPU Mode.
inline bool CpsrGetOverflow()
Getter for the Overflow Flag.
inline bool CpsrGetSign()
Getter for the Sign Flag.
inline bool CpsrGetThumbMode()
Getter for the Thumb Mode Flag.
inline bool CpsrGetZero()
Getter for the Zero Flag.
inline void CpsrSetCarry(bool value)
Setter for the Carry Flag.
inline void CpsrSetCarryByAddVals(int op1,
int op2,
int res)
Sets the carry flag looking at the operands of an addition.
inline void CpsrSetFIQDisable(bool value)
Setter for the F Flag.
inline void CpsrSetIRQDisable(bool value)
Setter for the I Flag.
inline void CpsrSetMode(int value)
Setter for the Mode field of the CPSR.
inline void CpsrSetOverflow(bool value)
Setter for the Overflow Flag.
inline void CpsrSetOverflowByVals(int op1,
int op2,
int res)
Sets the overflow flag looking at the operands.
inline void CpsrSetSign(bool value)
Setter for the Sign Flag.
inline void CpsrSetSignByVal(int val)
Sets the sign flag according to a value.
inline void CpsrSetThumbMode(bool value)
Setter for the T Flag.
inline void CpsrSetZero(bool value)
Setter for the Zero Flag.
inline void CpsrSetZeroByVal(int val)
Sets the zero flag according to a value.
CPU* cpu
A pointer to the cpu of the GBA.
CPU cpu
The core of the device.
class CPU
This class represents an ARM7TDMI CPU running at 16.78MHZ with 32 bit registers and two execution modes (ARM32bit, THUMB16bit).
CPU(Memory *mem)
Initializes the CPU.
int cyclesCounter
Internal counter of cycles.
Close