Minor cleanup of gamecart.c

This commit is contained in:
Balint Kovacs 2019-07-12 23:01:14 +02:00 committed by d0k3
parent 7b0a101f13
commit 38d9a23427
2 changed files with 12 additions and 11 deletions

View File

@ -25,7 +25,7 @@ typedef struct {
u64 cart_size; u64 cart_size;
u64 data_size; u64 data_size;
u32 save_size; u32 save_size;
int save_type; CardType save_type;
u32 unused_offset; u32 unused_offset;
} PACKED_ALIGN(16) CartDataCtr; } PACKED_ALIGN(16) CartDataCtr;
@ -41,7 +41,7 @@ typedef struct {
u64 cart_size; u64 cart_size;
u64 data_size; u64 data_size;
u32 save_size; u32 save_size;
int save_type; CardType save_type;
u32 arm9i_rom_offset; u32 arm9i_rom_offset;
} PACKED_ALIGN(16) CartDataNtrTwl; } PACKED_ALIGN(16) CartDataNtrTwl;
@ -101,10 +101,10 @@ u32 InitCartRead(CartData* cdata) {
// save data // save data
u32 card2_offset = getle32(cdata->header + 0x200); u32 card2_offset = getle32(cdata->header + 0x200);
if ((card2_offset != 0xFFFFFFFF) || (SPIGetCardType((CardType*) (CardType*) &(cdata->save_type), 0) != 0) || (cdata->save_type < 0)) { if ((card2_offset != 0xFFFFFFFF) || (SPIGetCardType(&(cdata->save_type), 0) != 0)) {
cdata->save_type = -1; cdata->save_type = NO_CHIP;
cdata->save_size = 0; }
} else cdata->save_size = SPIGetCapacity((CardType) cdata->save_type); cdata->save_size = SPIGetCapacity(cdata->save_type);
} else { // NTR/TWL cartridges } else { // NTR/TWL cartridges
// NTR header // NTR header
TwlHeader* nds_header = (void*)cdata->header; TwlHeader* nds_header = (void*)cdata->header;
@ -136,10 +136,10 @@ u32 InitCartRead(CartData* cdata) {
// save data // save data
u32 infrared = (*(nds_header->game_code) == 'I') ? 1 : 0; u32 infrared = (*(nds_header->game_code) == 'I') ? 1 : 0;
if ((SPIGetCardType((CardType*) &(cdata->save_type), infrared) != 0) || (cdata->save_type < 0)) { if (SPIGetCardType(&(cdata->save_type), infrared) != 0) {
cdata->save_type = -1; cdata->save_type = NO_CHIP;
cdata->save_size = 0; }
} else cdata->save_size = SPIGetCapacity((CardType) cdata->save_type); cdata->save_size = SPIGetCapacity(cdata->save_type);
} }
return 0; return 0;
} }

View File

@ -1,6 +1,7 @@
#pragma once #pragma once
#include "common.h" #include "common.h"
#include "spi.h"
#define CART_NONE 0 #define CART_NONE 0
#define CART_CTR (1<<0) #define CART_CTR (1<<0)
@ -19,7 +20,7 @@ typedef struct {
u64 cart_size; u64 cart_size;
u64 data_size; u64 data_size;
u32 save_size; u32 save_size;
int save_type; CardType save_type;
u32 arm9i_rom_offset; // TWL specific u32 arm9i_rom_offset; // TWL specific
} PACKED_ALIGN(16) CartData; } PACKED_ALIGN(16) CartData;