OSCR
Open Source Cartridge Reader
Loading...
Searching...
No Matches
OSCR::Cores::N64 Namespace Reference

System core for the Nintendo 64. More...

Enumerations

enum class  MenuOption : uint8_t {
  Cart , Controller , FlashRepro , FlashGameshark ,
  FlashXplorer64 , RefreshCart , Back
}

Functions

void menu ()
void cartMenu ()
void menuSaveType ()
void controllerMenu ()
void openCRDB ()
void closeCRDB ()
void cartOn ()
void cartOff ()
void setupController ()
void adOut ()
void adIn ()
void setAddress (uint32_t myAddress)
uint16_t readWord ()
void writeWord (uint16_t myWord)
void sendJoyBus (uint8_t const *buffer, char length)
uint16_t recvJoyBus (uint8_t *output, uint8_t byte_count)
void get_button ()
void resetController ()
void checkController ()
uint8_t readBlock (byte *output, uint16_t myAddress)
bool readMPK ()
bool checkHeader (byte *buf)
bool writeMPK ()
bool refreshCart ()
bool getCartInfo ()
void idCart ()
bool readSave ()
bool writeSave ()
bool readEepromPageList (byte *output, uint8_t page_number, uint8_t page_count)
bool writeEeprom ()
void resetEeprom ()
void readEeprom ()
bool readSaveData (uint32_t sramSize, bool isFlash)
bool verifySaveData (uint32_t maxAddress, uint16_t offset, uint16_t bufferSize, bool isFlash)
bool writeSRAM (uint32_t sramSize)
bool writeFRAM ()
void sendFramCmd (uint32_t myCommand)
void initFRAM ()
uint8_t waitForFram (uint8_t flashramType)
uint8_t getFramType ()
void readRom ()
uint32_t blankcheck (uint8_t flashramType)
void sendFlashromGamesharkCommand (uint16_t cmd)
bool flashGameshark ()
void unlockGSAddressRanges ()
bool idGameshark ()
void resetGameshark ()
void backupGameshark ()
void eraseGameshark ()
void writeGameshark ()
uint32_t verifyGameshark ()
void blankCheck ()
void sendFlashromXplorerCommand (uint16_t cmd)
void flashXplorer ()
bool idXplorer ()
void resetXplorer ()
void backupXplorer ()
uint32_t unscramble (uint32_t addr)
uint32_t scramble (uint32_t addr)
void oddXPaddrWrite (uint32_t addr, uint16_t data)
void evenXPaddrWrite (uint32_t addr, uint16_t data)
void eraseXplorer ()
void blankCheck_XP64 ()
void writeXplorer ()
uint32_t verifyXplorer ()
void flashRepro ()
void sendFlashromCommand (uint32_t addr, uint8_t cmd)
void idFlashrom ()
void resetFlashrom (uint32_t flashBase)
void eraseFlashrom ()
void writeFlashrom (uint32_t sectorSize)
uint32_t verifyFlashrom ()
void writeFlashBuffer (uint32_t sectorSize, uint8_t bufferSize)
void resetIntel4400 ()
void eraseIntel4400 ()
void writeIntel4400 ()
void resetMSP55LV100 (uint32_t flashBase)
void eraseMSP55LV100 ()
void writeMSP55LV100 (uint32_t sectorSize)
void eraseSector (uint32_t sectorSize)
bool blankcheckFlashrom ()
void printHeader ()

Variables

uint16_t eepPages
struct { 
   char   stick_x 
   char   stick_y 
N64_status
String button = "N/A"
String lastbutton = "N/A"
uint32_t romBase = 0x10000000
uint8_t flashramType = 1
bool MN63F81MPN = false
bool quit = 1
crc32_t crc1
constexpr uint16_t const kBufferSize8 = OSCR::Storage::kBufferSize / 8
constexpr uint32_t const kSaveAddress = 0x08000000
constexpr char const PROGMEM menuOptionFlashGameshark [] = "Flash Gameshark"
constexpr char const PROGMEM menuOptionFlashXplorer64 [] = "Flash Xplorer 64"
constexpr char const *const PROGMEM menuOptions []
constexpr char const PROGMEM menuOptionControllerTest [] = "Test"
constexpr char const *const PROGMEM menuOptionsController []
constexpr char const *const PROGMEM menuOptionsCart []
constexpr uint8_t menuOptionsROM []
constexpr char const PROGMEM N64SaveItem2 [] = "4K EEPROM"
constexpr char const PROGMEM N64SaveItem3 [] = "16K EEPROM"
constexpr char const PROGMEM N64SaveItem4 [] = "SRAM"
constexpr char const PROGMEM N64SaveItem5 [] = "FLASH"
constexpr char const *const PROGMEM saveOptionsN64 []
crdbRecord * romDetail
ExtendedRecord * romRecord
uint16_t flashid
uint32_t flashSize

Detailed Description

System core for the Nintendo 64.

Variable Documentation

◆ menuOptions

char const* const PROGMEM OSCR::Cores::N64::menuOptions[]
constexpr
Initial value:
= {
OSCR::Strings::MenuOptions::Cartridge,
OSCR::Strings::MenuOptions::Controller,
OSCR::Strings::MenuOptions::WriteFlash,
menuOptionFlashGameshark,
menuOptionFlashXplorer64,
OSCR::Strings::MenuOptions::RefreshCart,
OSCR::Strings::MenuOptions::Back,
}

◆ menuOptionsCart

char const* const PROGMEM OSCR::Cores::N64::menuOptionsCart[]
constexpr
Initial value:
= {
OSCR::Strings::MenuOptions::ReadROM,
OSCR::Strings::MenuOptions::ReadSave,
OSCR::Strings::MenuOptions::WriteSave,
OSCR::Strings::MenuOptions::SetSaveType,
OSCR::Strings::MenuOptions::Back,
}

◆ menuOptionsController

char const* const PROGMEM OSCR::Cores::N64::menuOptionsController[]
constexpr
Initial value:
= {
OSCR::Strings::MenuOptions::Read,
OSCR::Strings::MenuOptions::Write,
OSCR::Strings::MenuOptions::Back,
}

◆ menuOptionsROM

uint8_t OSCR::Cores::N64::menuOptionsROM[]
constexpr
Initial value:
= {
4,
8,
12,
16,
32,
64,
128,
}

◆ saveOptionsN64

char const* const PROGMEM OSCR::Cores::N64::saveOptionsN64[]
constexpr
Initial value:
= {
OSCR::Strings::Common::None,
N64SaveItem2,
N64SaveItem3,
N64SaveItem4,
N64SaveItem5,
}