// SPDX-License-Identifier: MIT // // Copyright (c) 2020 Antonio Niño Díaz #ifndef UGBA_H__ #define UGBA_H__ #ifdef __cplusplus extern "C" { #endif #include "background.h" #include "bios.h" #include "bios_wrappers.h" #include "console.h" #include "debug.h" #include "definitions.h" #include "display.h" #include "dma.h" #include "fp_math.h" #include "hardware.h" #include "input.h" #include "interrupts.h" #include "obj.h" #include "sound.h" #include "sram.h" #include "timer.h" #include "vram.h" // Initialize library. This function needs to be called at the start of main(). EXPORT_API void UGBA_Init(int* argc, char** argv[]); #ifndef __GBA__ // Initialize library with no video output (for testing). This function needs to // be called at the start of main(). Not implemented in GBA as it isn't usedul // there. EXPORT_API void UGBA_InitHeadless(int* argc, char** argv[]); #endif // This function tries to detect specific flashcarts with special needs and // returns a value to be written to REG_WAITCNT based on the flashcart. The best // possible returned value is WAITCNT_OPTIMIZED. EXPORT_API uint16_t UGBA_FlashcartOptimizedWaitstates(void); #ifdef __cplusplus } #endif #endif // UGBA_H__