/*---------------------------------------------------------------------* Copyright (C) 1998 Nintendo. $RCSfile: os_gbpak.h,v $ $Revision: 1.1 $ $Date: 1998/10/09 08:01:07 $ *---------------------------------------------------------------------*/ #ifndef _OS_GBPAK_H_ #define _OS_GBPAK_H_ #ifdef _LANGUAGE_C_PLUS_PLUS extern "C" { #endif #include #include "os_message.h" #include "os_pfs.h" #if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) /************************************************************************** * * Type definitions * */ typedef struct { u16 fixed1; u16 start_address; u8 nintendo_chr[0x30]; u8 game_title[16]; u16 company_code; u8 body_code; u8 cart_type; u8 rom_size; u8 ram_size; u8 country_code; u8 fixed2; u8 version; u8 isum; u16 sum; } OSGbpakId; #endif /* defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) */ /************************************************************************** * * Global definitions * */ /* definition for 64GB-PAK */ #define OS_GBPAK_POWER 0x01 #define OS_GBPAK_RSTB_DETECTION 0x04 #define OS_GBPAK_RSTB_STATUS 0x08 #define OS_GBPAK_GBCART_PULL 0x40 #define OS_GBPAK_GBCART_ON 0x80 #define OS_GBPAK_POWER_OFF 0x00 /* power of 64GB-PAK */ #define OS_GBPAK_POWER_ON 0x01 #define OS_GBPAK_ROM_ID_SIZE 0x50 /* ID size of GB cartridge */ #if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) /************************************************************************** * * Macro definitions * */ /************************************************************************** * * Extern variables * */ /************************************************************************** * * Function prototypes * */ /* 64GB-PAK */ extern s32 osGbpakInit(OSMesgQueue *, OSPfs *, int); extern s32 osGbpakPower(OSPfs *, s32); extern s32 osGbpakGetStatus(OSPfs *, u8 *); extern s32 osGbpakReadWrite(OSPfs *, u16, u16, u8 *, u16); extern s32 osGbpakReadId(OSPfs *, OSGbpakId *, u8 *); extern s32 osGbpakCheckConnector(OSPfs *, u8 *); #endif /* defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) */ #ifdef _LANGUAGE_C_PLUS_PLUS } #endif #endif /* !_OS_GBPAK_H_ */