summaryrefslogtreecommitdiff
path: root/arm9/lib/include/CARD_common.h
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/include/CARD_common.h')
-rw-r--r--arm9/lib/include/CARD_common.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/arm9/lib/include/CARD_common.h b/arm9/lib/include/CARD_common.h
index 1396de12..9cedac4f 100644
--- a/arm9/lib/include/CARD_common.h
+++ b/arm9/lib/include/CARD_common.h
@@ -1,6 +1,51 @@
#ifndef NITRO_CARD_COMMON_H_
#define NITRO_CARD_COMMON_H_
+typedef enum
+{
+ CARD_RESULT_SUCCESS = 0,
+ CARD_RESULT_FAILURE,
+ CARD_RESULT_INVALID_PARAM,
+ CARD_RESULT_UNSUPPORTED,
+ CARD_RESULT_TIMEOUT,
+ CARD_RESULT_ERROR,
+ CARD_RESULT_NO_RESPONSE,
+ CARD_RESULT_CANCELED
+}
+CARDResult;
+
+typedef enum
+{
+ CARD_REQ_INIT = 0, /* initialize (setting from ARM9)*/
+ CARD_REQ_ACK, /* request done (acknowledge from ARM7)*/
+ CARD_REQ_IDENTIFY, /* CARD_IdentifyBackup*/
+ CARD_REQ_READ_ID, /* CARD_ReadRomID (TEG && ARM9)*/
+ CARD_REQ_READ_ROM, /* CARD_ReadRom (TEG && ARM9)*/
+ CARD_REQ_WRITE_ROM, /* (reserved)*/
+ CARD_REQ_READ_BACKUP, /* CARD_ReadBackup*/
+ CARD_REQ_WRITE_BACKUP, /* CARD_WriteBackup*/
+ CARD_REQ_PROGRAM_BACKUP, /* CARD_ProgramBackup*/
+ CARD_REQ_VERIFY_BACKUP, /* CARD_VerifyBackup*/
+ CARD_REQ_ERASE_PAGE_BACKUP, /* CARD_EraseBackupPage*/
+ CARD_REQ_ERASE_SECTOR_BACKUP, /* CARD_EraseBackupSector*/
+ CARD_REQ_ERASE_CHIP_BACKUP, /* CARD_EraseBackupChip*/
+ CARD_REQ_MAX
+}
+CARDRequest;
+
+typedef enum
+{
+ CARD_REQUEST_MODE_RECV, /* Data reception*/
+ CARD_REQUEST_MODE_SEND, /* Send data (Including single verify)*/
+ CARD_REQUEST_MODE_SEND_VERIFY, /* Send data + verify*/
+ CARD_REQUEST_MODE_SPECIAL /* special operations like sector deletion*/
+}
+CARDRequestMode;
+
+CARDResult CARD_GetResultCode(void);
+
+#define CARD_RETRY_COUNT_MAX 10
+
void CARD_Init(void);
#endif //NITRO_CARD_COMMON_H_