N64FlashcartMenu
Loading...
Searching...
No Matches
Data Structures | Macros | Enumerations | Functions
Sc64

Data Structures

struct  sc64_buffers_t
 

Macros

#define SC64_BUFFERS_BASE   (0x1FFE0000UL)
 
#define SC64_BUFFERS   ((sc64_buffers_t *) SC64_BUFFERS_BASE)
 

Enumerations

enum  sc64_error_t {
  SC64_OK , SC64_ERROR_BAD_ARGUMENT , SC64_ERROR_BAD_ADDRESS , SC64_ERROR_BAD_CONFIG_ID ,
  SC64_ERROR_TIMEOUT , SC64_ERROR_SD_CARD , SC64_ERROR_UNKNOWN_CMD = -1
}
 
enum  sc64_cfg_t {
  CFG_BOOTLOADER_SWITCH , CFG_ROM_WRITE_ENABLE , CFG_ROM_SHADOW_ENABLE , CFG_DD_MODE ,
  CFG_ISV_ADDRESS , CFG_BOOT_MODE , CFG_SAVE_TYPE , CFG_CIC_SEED ,
  CFG_TV_TYPE , CFG_DD_SD_ENABLE , CFG_DD_DRIVE_TYPE , CFG_DD_DISK_STATE ,
  CFG_BUTTON_STATE , CFG_BUTTON_MODE , CFG_ROM_EXTENDED_ENABLE
}
 
enum  sc64_dd_mode_t { DD_MODE_DISABLED = 0 , DD_MODE_REGS = 1 , DD_MODE_IPL = 2 , DD_MODE_FULL = 3 }
 
enum  sc64_boot_mode_t {
  BOOT_MODE_MENU = 0 , BOOT_MODE_ROM = 1 , BOOT_MODE_DDIPL = 2 , BOOT_MODE_DIRECT_ROM = 3 ,
  BOOT_MODE_DIRECT_DDIPL = 4
}
 
enum  sc64_save_type_t {
  SAVE_TYPE_NONE , SAVE_TYPE_EEPROM_4K , SAVE_TYPE_EEPROM_16K , SAVE_TYPE_SRAM ,
  SAVE_TYPE_FLASHRAM , SAVE_TYPE_SRAM_BANKED , SAVE_TYPE_SRAM_128K
}
 
enum  sc64_cic_seed_t { CIC_SEED_AUTO = 0xFFFF }
 
enum  sc64_tv_type_t { TV_TYPE_PAL = 0 , TV_TYPE_NTSC = 1 , TV_TYPE_MPAL = 2 , TV_TYPE_PASSTHROUGH = 3 }
 
enum  sc64_drive_type_t { DRIVE_TYPE_RETAIL , DRIVE_TYPE_DEVELOPMENT }
 
enum  sc64_disk_state_t { DISK_STATE_EJECTED , DISK_STATE_INSERTED , DISK_STATE_CHANGED }
 
enum  sc64_button_mode_t { BUTTON_MODE_NONE , BUTTON_MODE_N64_IRQ , BUTTON_MODE_USB_PACKET , BUTTON_MODE_DD_DISK_SWAP }
 

Functions

flashcart_tsc64_get_flashcart (void)
 
void sc64_lock (void)
 
sc64_error_t sc64_get_version (uint16_t *major, uint16_t *minor, uint32_t *revision)
 
sc64_error_t sc64_get_config (sc64_cfg_t cfg, uint32_t *value)
 
sc64_error_t sc64_set_config (sc64_cfg_t cfg, uint32_t value)
 
sc64_error_t sc64_writeback_pending (bool *pending)
 
sc64_error_t sc64_writeback_enable (void *address)
 
sc64_error_t sc64_flash_wait_busy (void)
 
sc64_error_t sc64_flash_get_erase_block_size (size_t *erase_block_size)
 
sc64_error_t sc64_flash_erase_block (void *address)
 

Detailed Description


Data Structure Documentation

◆ sc64_buffers_t

struct sc64_buffers_t
Data Fields
uint8_t BUFFER[8192]
uint8_t EEPROM[2048]
uint8_t DD_SECTOR[256]
uint8_t FLASHRAM[128]