⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 port.h

📁 著名SFC模拟器Snes9x的源代码。
💻 H
字号:
/* * Snes9x - Portable Super Nintendo Entertainment System (TM) emulator. * * (c) Copyright 1996 - 2001 Gary Henderson (gary@daniver.demon.co.uk) and *                           Jerremy Koot (jkoot@snes9x.com) * * Super FX C emulator code  * (c) Copyright 1997 - 1999 Ivar (Ivar@snes9x.com) and *                           Gary Henderson. * Super FX assembler emulator code (c) Copyright 1998 zsKnight and _Demo_. * * DSP1 emulator code (c) Copyright 1998 Ivar, _Demo_ and Gary Henderson. * C4 asm and some C emulation code (c) Copyright 2000 zsKnight and _Demo_. * C4 C code (c) Copyright 2001 Gary Henderson (gary@daniver.demon.co.uk). * * DOS port code contains the works of other authors. See headers in * individual files. * * Snes9x homepage: 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. */#ifndef _PORT_H_#define _PORT_H_#include <limits.h>#ifndef STORM#include <memory.h>#include <string.h>#else#include strings.h>#include <clib/powerpc_protos.h>#endif#include <sys/types.h>//#define PIXEL_FORMAT RGB565#define GFX_MULTI_FORMAT#if defined(TARGET_OS_MAC) && TARGET_OS_MAC#include "zlib.h"#define ZLIB#define EXECUTE_SUPERFX_PER_LINE#define SOUND#define VAR_CYCLES#define CPU_SHUTDOWN#define SPC700_SHUTDOWN#define PIXEL_FORMAT RGB555#define CHECK_SOUND()#define M_PI 3.14159265359#undef  _MAX_PATH#undef DEBUGGER // Apple Universal Headers sometimes #define DEBUGGER#undef GFX_MULTI_FORMATint    strncasecmp(const char *s1, const char *s2, unsigned n);int    strcasecmp(const char *s1, const char *s2 );#endif#ifndef snes9x_types_defined#define snes9x_types_definedtypedef unsigned char uint8;typedef unsigned short uint16;typedef unsigned int uint32;typedef unsigned char bool8;typedef signed char int8;typedef short int16;#ifndef __WIN32__typedef int int32;typedef long long int64;#else#ifndef WSAAPI// winsock2.h typedefs int32 as well.typedef long int32;#endiftypedef __int64 int64;#endif#endif#include "pixform.h"#ifndef TRUE#define TRUE 1#endif#ifndef FALSE#define FALSE 0#endif#ifdef STORM#define EXTERN_C#define START_EXTERN_C#define END_EXTERN_C#else#if defined(__cplusplus) || defined(c_plusplus)#define EXTERN_C extern "C"#define START_EXTERN_C extern "C" {#define END_EXTERN_C }#else#define EXTERN_C extern#define START_EXTERN_C#define END_EXTERN_C#endif#endif#ifndef __WIN32__#ifndef PATH_MAX#define PATH_MAX 1024#endif#define _MAX_DIR PATH_MAX#define _MAX_DRIVE 1#define _MAX_FNAME PATH_MAX#define _MAX_EXT PATH_MAX#define _MAX_PATH PATH_MAX#define ZeroMemory(a,b) memset((a),0,(b))void _makepath (char *path, const char *drive, const char *dir,		const char *fname, const char *ext);void _splitpath (const char *path, char *drive, char *dir, char *fname,		 char *ext);#else // __WIN32__#define strcasecmp stricmp#define strncasecmp strnicmp#endifEXTERN_C void S9xGenerateSound ();#ifdef STORMEXTERN_C int soundsignal;EXTERN_C void MixSound(void);//Yes, CHECK_SOUND is getting defined correctly!#define CHECK_SOUND if (Settings.APUEnabled) if(SetSignalPPC(0L, soundsignal) & soundsignal) MixSound#else#define CHECK_SOUND()#endif#ifdef __DJGPP#define SLASH_STR "\\"#define SLASH_CHAR '\\'#else#define SLASH_STR "/"#define SLASH_CHAR '/'#endif#ifdef __linuxtypedef void (*SignalHandler)(int);#define SIG_PF SignalHandler#endif#if defined(__i386__) || defined(__i486__) || defined(__i586__) || \    defined(__WIN32__) || defined(__alpha__)#define LSB_FIRST#define FAST_LSB_WORD_ACCESS#else#define MSB_FIRST#endif#ifdef __sun#define TITLE "Snes9X: Solaris"#endif#ifdef __linux#define TITLE "Snes9X: Linux"#endif#ifndef TITLE#define TITLE "Snes9x"#endif#ifdef STORM#define STATIC#define strncasecmp strnicmp#else#define STATIC static#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -