N64FlashcartMenu
Loading...
Searching...
No Matches
Data Structures | Macros | Enumerations | Functions
sc64_ll.h File Reference

SC64 flashcart low level access. More...

Go to the source code of this file.

Data Structures

struct  sc64_buffers_t
 The SC64 buffers structure. More...
 
struct  sc64_disk_mapping_t
 
struct  sc64_disk_mapping_t.disks
 

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
}
 The SC64 State Enumeration.
 
enum  sc64_cfg_id_t {
  CFG_ID_BOOTLOADER_SWITCH , CFG_ID_ROM_WRITE_ENABLE , CFG_ID_ROM_SHADOW_ENABLE , CFG_ID_DD_MODE ,
  CFG_ID_ISV_ADDRESS , CFG_ID_BOOT_MODE , CFG_ID_SAVE_TYPE , CFG_ID_CIC_SEED ,
  CFG_ID_TV_TYPE , CFG_ID_DD_SD_ENABLE , CFG_ID_DD_DRIVE_TYPE , CFG_ID_DD_DISK_STATE ,
  CFG_ID_BUTTON_STATE , CFG_ID_BUTTON_MODE , CFG_ID_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
}
 The SC64 Boot Mode Enumeration.
 
enum  sc64_save_type_t {
  SAVE_TYPE_NONE , SAVE_TYPE_EEPROM_4KBIT , SAVE_TYPE_EEPROM_16KBIT , SAVE_TYPE_SRAM_256KBIT ,
  SAVE_TYPE_FLASHRAM_1MBIT , SAVE_TYPE_SRAM_BANKED , SAVE_TYPE_SRAM_1MBIT
}
 The SC64 Save Type Enumeration.
 
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

void sc64_ll_lock (void)
 
sc64_error_t sc64_ll_get_version (uint16_t *major, uint16_t *minor, uint32_t *revision)
 
sc64_error_t sc64_ll_get_config (sc64_cfg_id_t cfg, uint32_t *value)
 
sc64_error_t sc64_ll_set_config (sc64_cfg_id_t cfg, uint32_t value)
 
sc64_error_t sc64_ll_set_disk_mapping (sc64_disk_mapping_t *disk_mapping)
 
sc64_error_t sc64_ll_writeback_pending (bool *pending)
 
sc64_error_t sc64_ll_writeback_enable (void *address)
 
sc64_error_t sc64_ll_flash_wait_busy (void)
 
sc64_error_t sc64_ll_flash_get_erase_block_size (size_t *erase_block_size)
 
sc64_error_t sc64_ll_flash_erase_block (void *address)
 

Detailed Description

SC64 flashcart low level access.