aboutsummaryrefslogtreecommitdiff
path: root/source/memmap.h
diff options
context:
space:
mode:
authoraliaspider2014-10-30 00:23:30 +0100
committeraliaspider2014-10-30 00:23:30 +0100
commit804169dd621a3ad3eec1a32ce30350de667fee80 (patch)
tree5bce839a3652f6725d50639cccd3f589ee901515 /source/memmap.h
parent5382d193371c8db303d056b87b8ffd51316bf2e0 (diff)
downloadsnes9x2005-804169dd621a3ad3eec1a32ce30350de667fee80.tar.gz
snes9x2005-804169dd621a3ad3eec1a32ce30350de667fee80.tar.bz2
snes9x2005-804169dd621a3ad3eec1a32ce30350de667fee80.zip
apply a facelift
Diffstat (limited to 'source/memmap.h')
-rw-r--r--source/memmap.h237
1 files changed, 119 insertions, 118 deletions
diff --git a/source/memmap.h b/source/memmap.h
index 2d83852..3304095 100644
--- a/source/memmap.h
+++ b/source/memmap.h
@@ -1,6 +1,6 @@
/*******************************************************************************
Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
-
+
(c) Copyright 1996 - 2002 Gary Henderson (gary.henderson@ntlworld.com) and
Jerremy Koot (jkoot@snes9x.com)
@@ -43,46 +43,46 @@
S-DD1 C emulator code
(c) Copyright 2003 Brad Jorsch with research by
Andreas Naive and John Weidman
-
+
S-RTC C emulator code
(c) Copyright 2001 John Weidman
-
+
ST010 C++ emulator code
(c) Copyright 2003 Feather, Kris Bleakley, John Weidman and Matthew Kendora
- Super FX x86 assembler emulator code
- (c) Copyright 1998 - 2003 zsKnight, _Demo_, and pagefault
+ Super FX x86 assembler emulator code
+ (c) Copyright 1998 - 2003 zsKnight, _Demo_, and pagefault
- Super FX C emulator code
+ Super FX C emulator code
(c) Copyright 1997 - 1999 Ivar, Gary Henderson and John Weidman
SH assembler code partly based on x86 assembler code
- (c) Copyright 2002 - 2004 Marcus Comstedt (marcus@mc.pp.se)
+ (c) Copyright 2002 - 2004 Marcus Comstedt (marcus@mc.pp.se)
+
-
Specific ports contains the works of other authors. See headers in
individual files.
-
+
Snes9x homepage: http://www.snes9x.com
-
+
Permission to use, copy, modify and distribute Snes9x in both binary and
source form, for non-commercial purposes, is hereby granted without fee,
providing that this license information and copyright notice appear with
all copies and any derived work.
-
+
This software is provided 'as-is', without any express or implied
warranty. In no event shall the authors be held liable for any damages
arising from the use of this software.
-
+
Snes9x is freeware for PERSONAL USE only. Commercial users should
seek permission of the copyright holders first. Commercial use includes
charging money for Snes9x or software derived from Snes9x.
-
+
The copyright holders request that bug fixes and improvements to the code
should be forwarded to them so everyone can benefit from the modifications
in future versions.
-
+
Super NES and Super Nintendo Entertainment System are trademarks of
Nintendo Co., Limited and its subsidiary companies.
*******************************************************************************/
@@ -105,11 +105,11 @@
#else
#define READ_WORD(s) ( *(uint8 *) (s) |\
- (*((uint8 *) (s) + 1) << 8))
+ (*((uint8 *) (s) + 1) << 8))
#define READ_DWORD(s) ( *(uint8 *) (s) |\
- (*((uint8 *) (s) + 1) << 8) |\
- (*((uint8 *) (s) + 2) << 16) |\
- (*((uint8 *) (s) + 3) << 24))
+ (*((uint8 *) (s) + 1) << 8) |\
+ (*((uint8 *) (s) + 2) << 16) |\
+ (*((uint8 *) (s) + 3) << 24))
#define WRITE_WORD(s, d) *(uint8 *) (s) = (d), \
*((uint8 *) (s) + 1) = (d) >> 8
#define WRITE_DWORD(s, d) *(uint8 *) (s) = (uint8) (d), \
@@ -137,132 +137,133 @@
#define BIGFIRST 2
#define SMALLFIRST 3
-bool8 LoadROM (const char *);
-uint32 FileLoader (uint8* buffer, const char* filename, int32 maxsize);
-void InitROM (bool8);
-bool8 LoadSRAM (const char *);
-bool8 SaveSRAM (const char *);
-bool8 Init ();
-void Deinit ();
-void FreeSDD1Data ();
-
-void WriteProtectROM ();
-void FixROMSpeed ();
-void MapRAM ();
-void MapExtraRAM ();
-char *Safe (const char *);
+bool8 LoadROM(const char*);
+uint32 FileLoader(uint8* buffer, const char* filename, int32 maxsize);
+void InitROM(bool8);
+bool8 LoadSRAM(const char*);
+bool8 SaveSRAM(const char*);
+bool8 Init();
+void Deinit();
+void FreeSDD1Data();
+
+void WriteProtectROM();
+void FixROMSpeed();
+void MapRAM();
+void MapExtraRAM();
+char* Safe(const char*);
void BSLoROMMap();
-void JumboLoROMMap (bool8);
-void LoROMMap ();
-void LoROM24MBSMap ();
-void SRAM512KLoROMMap ();
+void JumboLoROMMap(bool8);
+void LoROMMap();
+void LoROM24MBSMap();
+void SRAM512KLoROMMap();
// void SRAM1024KLoROMMap ();
-void SufamiTurboLoROMMap ();
-void HiROMMap ();
-void SuperFXROMMap ();
-void TalesROMMap (bool8);
-void AlphaROMMap ();
-void SA1ROMMap ();
-void BSHiROMMap ();
+void SufamiTurboLoROMMap();
+void HiROMMap();
+void SuperFXROMMap();
+void TalesROMMap(bool8);
+void AlphaROMMap();
+void SA1ROMMap();
+void BSHiROMMap();
void SPC7110HiROMMap();
void SPC7110Sram(uint8);
void SetaDSPMap();
-bool8 AllASCII (uint8 *b, int size);
-int ScoreHiROM (bool8 skip_header, int32 offset);
-int ScoreLoROM (bool8 skip_header, int32 offset);
+bool8 AllASCII(uint8* b, int size);
+int ScoreHiROM(bool8 skip_header, int32 offset);
+int ScoreLoROM(bool8 skip_header, int32 offset);
#if 0
void SufamiTurboAltROMMap();
#endif
-void ApplyROMFixes ();
-void CheckForIPSPatch (const char *rom_filename, bool8 header,
- int32* rom_size);
-
-const char *TVStandard ();
-const char *Speed ();
-const char *StaticRAMSize ();
-const char *MapType ();
-const char *MapMode ();
-const char *KartContents ();
-const char *Size ();
-const char *Headers ();
-const char *ROMID ();
-const char *CompanyID ();
+void ApplyROMFixes();
+void CheckForIPSPatch(const char* rom_filename, bool8 header,
+ int32* rom_size);
+
+const char* TVStandard();
+const char* Speed();
+const char* StaticRAMSize();
+const char* MapType();
+const char* MapMode();
+const char* KartContents();
+const char* Size();
+const char* Headers();
+const char* ROMID();
+const char* CompanyID();
void ParseSNESHeader(uint8*);
-enum {
-MAP_PPU, MAP_CPU, MAP_DSP, MAP_LOROM_SRAM, MAP_HIROM_SRAM,
-MAP_NONE, MAP_DEBUG, MAP_C4, MAP_BWRAM, MAP_BWRAM_BITMAP,
-MAP_BWRAM_BITMAP2, MAP_SA1RAM, MAP_SPC7110_ROM, MAP_SPC7110_DRAM,
-MAP_RONLY_SRAM, MAP_OBC_RAM, MAP_SETA_DSP, MAP_SETA_RISC, MAP_LAST
+enum
+{
+ MAP_PPU, MAP_CPU, MAP_DSP, MAP_LOROM_SRAM, MAP_HIROM_SRAM,
+ MAP_NONE, MAP_DEBUG, MAP_C4, MAP_BWRAM, MAP_BWRAM_BITMAP,
+ MAP_BWRAM_BITMAP2, MAP_SA1RAM, MAP_SPC7110_ROM, MAP_SPC7110_DRAM,
+ MAP_RONLY_SRAM, MAP_OBC_RAM, MAP_SETA_DSP, MAP_SETA_RISC, MAP_LAST
};
enum { MAX_ROM_SIZE = 0x800000 };
typedef struct
{
- uint8 *RAM;
- uint8 *ROM;
- uint8 *VRAM;
- uint8 *SRAM;
- uint8 *BWRAM;
- uint8 *FillRAM;
- uint8 *C4RAM;
- bool8 HiROM;
- bool8 LoROM;
- uint32 SRAMMask;
- uint8 SRAMSize;
- uint8 *Map [MEMMAP_NUM_BLOCKS];
- uint8 *WriteMap [MEMMAP_NUM_BLOCKS];
- uint8 MemorySpeed [MEMMAP_NUM_BLOCKS];
- uint8 BlockIsRAM [MEMMAP_NUM_BLOCKS];
- uint8 BlockIsROM [MEMMAP_NUM_BLOCKS];
- char ROMName [ROM_NAME_LEN];
- char ROMId [5];
- char CompanyId [3];
- uint8 ROMSpeed;
- uint8 ROMType;
- uint8 ROMSize;
- int32 ROMFramesPerSecond;
- int32 HeaderCount;
- uint32 CalculatedSize;
- uint32 CalculatedChecksum;
- uint32 ROMChecksum;
- uint32 ROMComplementChecksum;
- uint8 *SDD1Index;
- uint8 *SDD1Data;
- uint32 SDD1Entries;
- uint32 SDD1LoggedDataCountPrev;
- uint32 SDD1LoggedDataCount;
- uint8 SDD1LoggedData [MEMMAP_MAX_SDD1_LOGGED_ENTRIES];
- char ROMFilename [_MAX_PATH];
- uint8 ROMRegion;
- uint32 ROMCRC32;
- uint8 ExtendedFormat;
- uint8 *BSRAM;
+ uint8* RAM;
+ uint8* ROM;
+ uint8* VRAM;
+ uint8* SRAM;
+ uint8* BWRAM;
+ uint8* FillRAM;
+ uint8* C4RAM;
+ bool8 HiROM;
+ bool8 LoROM;
+ uint32 SRAMMask;
+ uint8 SRAMSize;
+ uint8* Map [MEMMAP_NUM_BLOCKS];
+ uint8* WriteMap [MEMMAP_NUM_BLOCKS];
+ uint8 MemorySpeed [MEMMAP_NUM_BLOCKS];
+ uint8 BlockIsRAM [MEMMAP_NUM_BLOCKS];
+ uint8 BlockIsROM [MEMMAP_NUM_BLOCKS];
+ char ROMName [ROM_NAME_LEN];
+ char ROMId [5];
+ char CompanyId [3];
+ uint8 ROMSpeed;
+ uint8 ROMType;
+ uint8 ROMSize;
+ int32 ROMFramesPerSecond;
+ int32 HeaderCount;
+ uint32 CalculatedSize;
+ uint32 CalculatedChecksum;
+ uint32 ROMChecksum;
+ uint32 ROMComplementChecksum;
+ uint8* SDD1Index;
+ uint8* SDD1Data;
+ uint32 SDD1Entries;
+ uint32 SDD1LoggedDataCountPrev;
+ uint32 SDD1LoggedDataCount;
+ uint8 SDD1LoggedData [MEMMAP_MAX_SDD1_LOGGED_ENTRIES];
+ char ROMFilename [_MAX_PATH];
+ uint8 ROMRegion;
+ uint32 ROMCRC32;
+ uint8 ExtendedFormat;
+ uint8* BSRAM;
#if 0
- bool8 LoadMulti (const char *,const char *,const char *);
+ bool8 LoadMulti(const char*, const char*, const char*);
#endif
-}CMemory;
+} CMemory;
void ResetSpeedMap();
extern CMemory Memory;
-void S9xDeinterleaveMode2 ();
+void S9xDeinterleaveMode2();
bool8 LoadZip(const char* zipname,
- int32 *TotalFileSize,
- int32 *headers,
- uint8 *buffer);
+ int32* TotalFileSize,
+ int32* headers,
+ uint8* buffer);
-void S9xAutoSaveSRAM ();
+void S9xAutoSaveSRAM();
#ifdef NO_INLINE_SET_GET
-uint8 S9xGetByte (uint32 Address);
-uint16 S9xGetWord (uint32 Address);
-void S9xSetByte (uint8 Byte, uint32 Address);
-void S9xSetWord (uint16 Byte, uint32 Address);
-void S9xSetPCBase (uint32 Address);
-uint8 *S9xGetMemPointer (uint32 Address);
-uint8 *GetBasePointer (uint32 Address);
+uint8 S9xGetByte(uint32 Address);
+uint16 S9xGetWord(uint32 Address);
+void S9xSetByte(uint8 Byte, uint32 Address);
+void S9xSetWord(uint16 Byte, uint32 Address);
+void S9xSetPCBase(uint32 Address);
+uint8* S9xGetMemPointer(uint32 Address);
+uint8* GetBasePointer(uint32 Address);
extern uint8 OpenBus;