|
SSBM Decomp
|
#include "lbcardnew.h"#include <Runtime/platform.h>#include <ctype.h>#include <placeholder.h>#include <stdlib.h>#include <string.h>#include "types.h"#include <dolphin/card.h>#include <sysdolphin/baselib/card.h>#include <sysdolphin/baselib/debug.h>#include <sysdolphin/baselib/memory.h>Data Structures | |
| struct | CardTask |
| struct | lbcardnew_state_t |
| struct | SnapshotNode |
Macros | |
| #define | SECTOR_SIZE 0x2000 |
| #define | _p(x) |
Enumerations | |
| enum | resultMask { resultMask_Ready = 1 << LbCardResult_Ready , resultMask_2 = 1 << LbCardResult_2 , resultMask_NoFile = 1 << LbCardResult_NoFile , resultMask_NullFilename = 1 << LbCardResult_NullFilename , resultMask_Malformed = 1 << LbCardResult_Malformed , resultMask_Busy = 1 << LbCardResult_Busy , resultMask_BadSectorSize = 1 << LbCardResult_BadSectorSize , resultMask_Invalid = 1 << LbCardResult_Invalid , resultMask_FatalError = 1 << LbCardResult_FatalError , resultMask_DeviceError = 1 << LbCardResult_DeviceError , resultMask_16 = 1 << LbCardResult_16 } |
| enum | CardTaskType { LbCardNewTask_Mount , LbCardNewTask_Check , LbCardNewTask_Open , LbCardNewTask_Unk3 , LbCardNewTask_Format , LbCardNewTask_Delete , LbCardNewTask_Rename , LbCardNewTask_Create , LbCardNewTask_Read , LbCardNewTask_Write , LbCardNewTask_SetStatus , LbCardNewTask_ReadHeader , LbCardNewTask_ListSnapshots , LbCardNewTask_FindFile , LbCardNewTask_None } |
| Operations dispatched by lb_80019CB0. More... | |
Functions | |
| ASSERT_SIZE (CardTask, 0x54) | |
| ASSERT_OFFSET (CardTask, filename, 0x10) | |
| ASSERT_OFFSET (CardTask, new_filename, 0x31) | |
| static CardTask * | getNewTask (void) |
| static int | executeNextTask (lbCardResult result) |
| static void | fn_8001A0B0 (int file_idx, int hsd_error) |
| static int | taskMount (void) |
| static int | taskCheck (void) |
| static int | taskOpen (const char *filename, LbCardEntry *file_entries) |
| static int | taskUnk3 (void) |
| static int | taskFormat (void) |
| static int | taskDelete (char *filename) |
| static int | taskRename (const char *old_name, const char *new_name) |
| static int | taskCreate (const char *filename) |
| static int | taskRead (LbCardEntry *file_entries) |
| static int | taskWrite (LbCardEntry *file_entries) |
| static int | taskSetStatus (void) |
| static int | taskReadHeader (void) |
| static int | taskListSnapshots (void) |
| static int | taskFindFile (const char *filename) |
| static lbCardResult | convertSdkResult (int sdk_result) |
| static CardTask * | lb_80019C38_noinline (void) |
| static void | resetTaskArray (void) |
| static void | resetState (int chan, void *save_data, int *status_out, LbCardOnFinishedCallback callback) |
| static void | onCardComplete (UNUSED s32 chan, s32 result) |
| static int | convertHsdResult (int hsd_result) |
| static void | setTaskFilename (const char *filename, void *file_entries) |
| static void | setupCardEntries (CardState *ctx, void *icon, LbCardEntry *entry) |
| static int | readCardFileSize (const volatile int *file_size) |
| Preserve the volatile file-size reads in the request builders. | |
| s32 | lb_8001B6E0 (s32 file_idx) |
| int | lbCardNew_CompleteNextTask (void) |
| int | lbCardNew_CompleteAllTasks (int result) |
| static CardTask * | setupTask (CardTaskType type, int result_mask) |
| static void | addTaskEntries (CardTaskType type, int result_mask, void *file_entries) |
| static void | addTask (CardTaskType type, int result_mask) |
| static void | lb_8001A4CC_dontinline (const char *filename, void *file_entries) |
| u32 | lb_8001B7E0 (int chan, char *filename, void *file_entries, void *save_data, int *status_out) |
| int | lb_8001B8C8 (int chan) |
| int | lbCardNew_DeleteSnap (int chan, const char *filename, UNK_T status_out) |
| int | lb_8001BA44 (int chan, const char *filename, UNK_T status_out) |
| int | lb_8001BB48 (int chan, char *filename, void *file_entries, void *save_data, char *comment, void *banner, void *icons, UNK_T status_out) |
| int | lb_8001BC18 (int chan, char *filename, void **file_entries, void *save_data, char *comment, void *banner, void *icons, bool *status_out) |
| int | lb_8001BD34 (int chan, const char *filename, UNK_T file_entries, UNK_T status_out) |
| int | lb_8001BE30 (int chan, const char *filename, UNK_T file_entries, char *comment, void *banner, void *icons, UNK_T status_out, UNK_T callback) |
| int | lb_8001BF04 (int chan, char *filename, void *file_entries, char *comment, void *banner, void *icons, UNK_T status_out) |
| int | lb_8001BFD8 (int chan, lbCardNew_SnapshotEntry *snapshot_entries, int *free_blocks, int *free_files) |
| int | lb_8001C0F4 (int chan, const char *name_a, const char *name_b, const char *name_c, UNK_T status_out) |
| int | lb_8001C2D8 (int chan, const char *company, const char *game_name, const char *filename) |
| int | lbCardNew_ProbeEx (int chan) |
| int | lb_8001C4A8 (void *file_entries, void *icon_data) |
| void | lbCardNew_AllocWorkArea (void) |
| void | lbCardNew_ForgetMemory (void) |
| void | lbCardNew_Init (void) |
Variables | |
| static struct lbcardnew_state_t | state |
| #define SECTOR_SIZE 0x2000 |
| enum resultMask |
| enum CardTaskType |
Operations dispatched by lb_80019CB0.
Values describe observed behavior; they are separate from task result codes and the HSD request/command tags.
| ASSERT_SIZE | ( | CardTask | , |
| 0x54 | ) |
| ASSERT_OFFSET | ( | CardTask | , |
| new_filename | , | ||
| 0x31 | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
inlinestatic |
|
inlinestatic |
Preserve the volatile file-size reads in the request builders.
| int lbCardNew_CompleteNextTask | ( | void | ) |
| int lbCardNew_CompleteAllTasks | ( | int | result | ) |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
| u32 lb_8001B7E0 | ( | int | chan, |
| char * | filename, | ||
| void * | file_entries, | ||
| void * | save_data, | ||
| int * | status_out ) |
| int lb_8001B8C8 | ( | int | chan | ) |
| int lbCardNew_DeleteSnap | ( | int | chan, |
| const char * | filename, | ||
| UNK_T | status_out ) |
| int lb_8001BA44 | ( | int | chan, |
| const char * | filename, | ||
| UNK_T | status_out ) |
| int lb_8001BB48 | ( | int | chan, |
| char * | filename, | ||
| void * | file_entries, | ||
| void * | save_data, | ||
| char * | comment, | ||
| void * | banner, | ||
| void * | icons, | ||
| UNK_T | status_out ) |
| int lb_8001BC18 | ( | int | chan, |
| char * | filename, | ||
| void ** | file_entries, | ||
| void * | save_data, | ||
| char * | comment, | ||
| void * | banner, | ||
| void * | icons, | ||
| bool * | status_out ) |
| int lb_8001BE30 | ( | int | chan, |
| const char * | filename, | ||
| UNK_T | file_entries, | ||
| char * | comment, | ||
| void * | banner, | ||
| void * | icons, | ||
| UNK_T | status_out, | ||
| UNK_T | callback ) |
| int lb_8001BF04 | ( | int | chan, |
| char * | filename, | ||
| void * | file_entries, | ||
| char * | comment, | ||
| void * | banner, | ||
| void * | icons, | ||
| UNK_T | status_out ) |
| int lb_8001BFD8 | ( | int | chan, |
| lbCardNew_SnapshotEntry * | snapshot_entries, | ||
| int * | free_blocks, | ||
| int * | free_files ) |
| int lb_8001C0F4 | ( | int | chan, |
| const char * | name_a, | ||
| const char * | name_b, | ||
| const char * | name_c, | ||
| UNK_T | status_out ) |
| int lb_8001C2D8 | ( | int | chan, |
| const char * | company, | ||
| const char * | game_name, | ||
| const char * | filename ) |
| int lbCardNew_ProbeEx | ( | int | chan | ) |
| int lb_8001C4A8 | ( | void * | file_entries, |
| void * | icon_data ) |
| void lbCardNew_AllocWorkArea | ( | void | ) |
| void lbCardNew_ForgetMemory | ( | void | ) |
| void lbCardNew_Init | ( | void | ) |
|
static |