summaryrefslogtreecommitdiff
path: root/arm9/lib/src/FS_rom.c
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/src/FS_rom.c')
-rw-r--r--arm9/lib/src/FS_rom.c126
1 files changed, 0 insertions, 126 deletions
diff --git a/arm9/lib/src/FS_rom.c b/arm9/lib/src/FS_rom.c
deleted file mode 100644
index 09098dfe..00000000
--- a/arm9/lib/src/FS_rom.c
+++ /dev/null
@@ -1,126 +0,0 @@
-#include "FS_rom.h"
-#include "FS_archive.h"
-#include "FS_file.h"
-#include "CARD_pullOut.h"
-#include "CARD_rom.h"
-#include "CARD_common.h"
-#include "MB_mb.h"
-#include "OS_printf.h"
-
-static u32 fsi_default_dma_no;
-s32 fsi_card_lock_id;
-CARDRomRegion fsi_ovt9;
-CARDRomRegion fsi_ovt7;
-FSArchive fsi_arc_rom;
-
-ARM_FUNC void FSi_OnRomReadDone(void * p_arc)
-{
- FS_NotifyArchiveAsyncEnd(p_arc, CARD_IsPulledOut() ? FS_RESULT_ERROR : FS_RESULT_SUCCESS);
-}
-
-ARM_FUNC FSResult FSi_ReadRomCallback(FSArchive * p_arc, void * dst, u32 src, u32 len)
-{
- CARD_ReadRomAsync(fsi_default_dma_no, (const void *)src, dst, len, FSi_OnRomReadDone, p_arc);
- return FS_RESULT_PROC_ASYNC;
-}
-
-ARM_FUNC FSResult FSi_WriteDummyCallback(FSArchive * p_arc, const void *src, u32 dst, u32 len)
-{
-#pragma unused(p_arc, src, dst, len)
- return FS_RESULT_FAILURE;
-}
-
-ARM_FUNC FSResult FSi_RomArchiveProc(FSFile * p_arc, FSCommandType cmd)
-{
-#pragma unused(p_arc)
- switch (cmd)
- {
- case FS_COMMAND_ACTIVATE:
- CARD_LockRom((u16)fsi_card_lock_id);
- return FS_RESULT_SUCCESS;
- case FS_COMMAND_IDLE:
- CARD_UnlockRom((u16)fsi_card_lock_id);
- return FS_RESULT_SUCCESS;
- case FS_COMMAND_WRITEFILE:
- return FS_RESULT_UNSUPPORTED;
- default:
- return FS_RESULT_PROC_UNKNOWN;
- }
-}
-
-ARM_FUNC FSResult FSi_ReadDummyCallback(FSArchive *p_arc, void *dst, u32 src, u32 len)
-{
-#pragma unused (p_arc, dst, src, len)
- return FS_RESULT_FAILURE;
-}
-
-ARM_FUNC FSResult FSi_EmptyArchiveProc(FSFile *p_file, FSCommandType cmd)
-{
-#pragma unused(p_file, cmd)
- return FS_RESULT_UNSUPPORTED;
-}
-
-ARM_FUNC void FSi_InitRom(u32 default_dma_no)
-{
- fsi_default_dma_no = default_dma_no;
- fsi_card_lock_id = OS_GetLockID();
- fsi_ovt9.offset = 0;
- fsi_ovt9.length = 0;
- fsi_ovt7.offset = 0;
- fsi_ovt7.length = 0;
-
- CARD_Init();
-
- FS_InitArchive(&fsi_arc_rom);
- (void)FS_RegisterArchiveName(&fsi_arc_rom, "rom", 3);
-
- if (MB_IsMultiBootChild())
- {
- fsi_ovt9.offset = (u32)~0;
- fsi_ovt9.length = 0;
- fsi_ovt7.offset = (u32)~0;
- fsi_ovt7.length = 0;
- FS_SetArchiveProc(&fsi_arc_rom, FSi_EmptyArchiveProc, (u32)FS_ARCHIVE_PROC_ALL);
- (void)FS_LoadArchive(&fsi_arc_rom, 0x00000000, 0, 0, 0, 0, FSi_ReadDummyCallback, FSi_WriteDummyCallback);
- }
- else
- {
- const CARDRomRegion *const fnt = CARD_GetRomRegionFNT();
- const CARDRomRegion *const fat = CARD_GetRomRegionFAT();
-
- FS_SetArchiveProc(&fsi_arc_rom, FSi_RomArchiveProc,
- FS_ARCHIVE_PROC_WRITEFILE |
- FS_ARCHIVE_PROC_ACTIVATE | FS_ARCHIVE_PROC_IDLE);
-
- if ((fnt->offset == 0xFFFFFFFF) || (fnt->offset == 0x00000000) ||
- (fat->offset == 0xFFFFFFFF) || (fat->offset == 0x00000000))
- {
- OS_Warning("file-system : no MAKEROM-information in rom header.");
- }
- else
- {
- (void)FS_LoadArchive(&fsi_arc_rom, 0x00000000,
- fat->offset, fat->length,
- fnt->offset, fnt->length,
- FSi_ReadRomCallback, FSi_WriteDummyCallback);
- }
- }
-}
-
-ARM_FUNC u32 FS_SetDefaultDMA(u32 dma_no)
-{
- OSIntrMode bak_psr = OS_DisableInterrupts();
- u32 bak_dma_no = fsi_default_dma_no;
- BOOL bak_stat = FS_SuspendArchive(&fsi_arc_rom);
- fsi_default_dma_no = dma_no;
- if (bak_stat)
- (void)FS_ResumeArchive(&fsi_arc_rom);
- (void)OS_RestoreInterrupts(bak_psr);
- return bak_dma_no;
-}
-
-ARM_FUNC u32 FS_TryLoadTable(void * p_mem, u32 size)
-{
- return FS_LoadArchiveTables(&fsi_arc_rom, p_mem, size);
-}
-