Files
ac-decomp/include/Famicom/famicomPriv.h
T
2025-08-07 03:34:48 -04:00

72 lines
1.8 KiB
C

#ifndef FAMICOMPRIV_H
#define FAMICOMPRIV_H
#include "types.h"
#include "Famicom/famicom.h"
#include "Famicom/ks_nes.h"
#ifdef __cplusplus
extern "C" {
#endif
/* sizeof (FamicomCommon) == 0xB8 */
typedef struct FamicomCommon {
/* 0x00 */ ksNesCommonWorkObj* wp;
/* 0x04 */ ksNesStateObj* sp;
/* 0x08 */ u8* nesromp;
/* 0x0C */ u8* chrramp;
/* 0x10 */ u8* bbramp;
/* 0x14 */ u8* noise_bufp;
/* 0x18 */ u8* chr_to_i8_bufp;
/* 0x1C */ u8* result_bufp;
/* 0x20 */ u8* highscore_flagsp;
/* 0x24 */ u8* nesinfo_tagsp;
/* 0x28 */ int _28;
/* 0x2C */ u8 nesrom_memcard; // TRUE: rom is loaded from memcard, FALSE: rom is loaded internally
/* 0x2D */ u8 rom_no;
/* 0x2E */ s8 save_pl_no;
/* 0x2F */ u8 mura_save_name[33];
/* 0x50 */ u8 famicom_save_name[33];
/* 0x74 */ FamicomSaveDataHeader* save_data_header;
/* 0x78 */ u8* internal_save_datap;
/* 0x7C */ size_t save_data_total_size;
/* 0x80 */ size_t save_data_single_size;
/* 0x84 */ int _84;
/* 0x88 */ u8* save_data_name;
/* 0x8C */ u8 _8C;
/* 0x8D */ u8 low_res_mode;
/* 0x8E */ MemcardGameHeader_t memcard_game_header;
/* 0xB0 */ u8* memcard_save_comment;
/* 0xB4 */ size_t unused_save_data_start_ofs;
} FamicomCommon;
extern Famicom_MallocInfo* my_malloc_current;
extern u8 save_game_image;
extern u8** nesrom_filename_ptrs;
extern u32 nesinfo_tags_size;
extern u8* nesinfo_tags_start;
extern u8* nesinfo_tags_end;
extern u32 nesinfo_data_size;
extern u8* nesinfo_data_start;
extern u8* nesinfo_data_end;
extern u8 InputValid[];
extern u32 InputData[];
extern u32 InputButton[];
extern u32 InputTrigger[];
extern u32 InputRepeat[];
extern u32 InputRepeatCount[];
extern u8 tcs_bad;
extern u8 ics_bad;
extern FamicomCommon famicomCommon;
#ifdef __cplusplus
}
#endif
#endif /* FAMICOMPRIV_H */