Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into FileManagement

This commit is contained in:
wolfy852 2017-10-07 14:52:40 -05:00
commit 93584f6811
101 changed files with 411 additions and 565 deletions

View File

@ -58,6 +58,3 @@ jobs:
key: v1-SRB2-{{ .Branch }}-{{ checksum "objs/Linux/SDL/Release/depend.dep" }} key: v1-SRB2-{{ .Branch }}-{{ checksum "objs/Linux/SDL/Release/depend.dep" }}
paths: paths:
- /root/.ccache - /root/.ccache

View File

@ -100,6 +100,21 @@ matrix:
compiler: gcc-6 compiler: gcc-6
env: WFLAGS="-Wno-tautological-compare" env: WFLAGS="-Wno-tautological-compare"
#gcc-6 (Ubuntu 6.1.1-3ubuntu11~14.04.1) 6.1.1 20160511 #gcc-6 (Ubuntu 6.1.1-3ubuntu11~14.04.1) 6.1.1 20160511
- os: linux
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- libsdl2-mixer-dev
- libpng-dev
- libgl1-mesa-dev
- libgme-dev
- p7zip-full
- gcc-7
compiler: gcc-7
env: WFLAGS="-Wno-tautological-compare -Wno-error=implicit-fallthrough -Wimplicit-fallthrough=3"
#gcc-7 (Ubuntu 7.2.0-1ubuntu1~14.04) 7.2.0 20170802
- os: linux - os: linux
compiler: clang compiler: clang
#clang version 3.5.0 (tags/RELEASE_350/final) #clang version 3.5.0 (tags/RELEASE_350/final)
@ -162,6 +177,51 @@ matrix:
- clang-3.8 - clang-3.8
compiler: clang-3.8 compiler: clang-3.8
#clang version 3.8.1-svn271127-1~exp1 (branches/release_38) #clang version 3.8.1-svn271127-1~exp1 (branches/release_38)
- os: linux
addons:
apt:
sources:
- llvm-toolchain-precise-3.9
- ubuntu-toolchain-r-test
packages:
- libsdl2-mixer-dev
- libpng-dev
- libgl1-mesa-dev
- libgme-dev
- p7zip-full
- clang-3.9
compiler: clang-3.9
#clang version 3.9.X
# - os: linux
# addons:
# apt:
# sources:
# - llvm-toolchain-precise-4.0
# - ubuntu-toolchain-r-test
# packages:
# - libsdl2-mixer-dev
# - libpng-dev
# - libgl1-mesa-dev
# - libgme-dev
# - p7zip-full
# - clang-4.0
# compiler: clang-4.0
# #clang version 4.0.X
# - os: linux
# addons:
# apt:
# sources:
# - llvm-toolchain-precise-5.0
# - ubuntu-toolchain-r-test
# packages:
# - libsdl2-mixer-dev
# - libpng-dev
# - libgl1-mesa-dev
# - libgme-dev
# - p7zip-full
# - clang-5.0
# compiler: clang-5.0
# #clang version 5.0.X
# - os: osx # - os: osx
# osx_image: beta-xcode6.1 # osx_image: beta-xcode6.1
# #Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn) # #Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
@ -192,6 +252,9 @@ matrix:
- compiler: clang-3.6 - compiler: clang-3.6
- compiler: clang-3.7 - compiler: clang-3.7
- compiler: clang-3.8 - compiler: clang-3.8
- compiler: clang-3.9
- compiler: clang-4.0
- compiler: clang-5.0
cache: cache:
apt: true apt: true
@ -219,9 +282,9 @@ before_script:
before_install: before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install sdl2_mixer game-music-emu p7zip; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install sdl2 sdl2_mixer game-music-emu p7zip; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install cmake||true; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install cmake||true; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -O -L https://www.libsdl.org/release/SDL2-2.0.4.dmg; hdiutil attach SDL2-2.0.4.dmg; sudo cp -a /Volumes/SDL2/SDL2.framework /Library/Frameworks/; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -O -L https://www.libsdl.org/release/SDL2-2.0.6.dmg; hdiutil attach SDL2-2.0.6.dmg; sudo cp -a /Volumes/SDL2/SDL2.framework /Library/Frameworks/; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -O -L https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-2.0.1.dmg; hdiutil attach SDL2_mixer-2.0.1.dmg; sudo cp -a /Volumes/SDL2_mixer/SDL2_mixer.framework /Library/Frameworks/; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -O -L https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-2.0.1.dmg; hdiutil attach SDL2_mixer-2.0.1.dmg; sudo cp -a /Volumes/SDL2_mixer/SDL2_mixer.framework /Library/Frameworks/; fi
- mkdir -p $HOME/srb2_cache - mkdir -p $HOME/srb2_cache

2
bin/DC/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/Dos/Debug/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/Dos/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/FreeBSD/Debug/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/FreeBSD/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/SDL/Debug/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/SDL/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/ARMV4Dbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/ARMV4IDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/ARMV4IRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/ARMV4Rel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/ARMV4TDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/ARMV4TRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPS16Dbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPS16Rel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSIIDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSIIRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSII_FPDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSII_FPRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSIVDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSIVRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSIV_FPDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/MIPSIV_FPRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/SH3Dbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/SH3Rel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/SH4Dbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/SH4Rel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/X86Dbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/X86Rel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/emulatorDbg/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/WinCE/emulatorRel/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
bin/dummy/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/FreeBSD/SDL/Debug/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/FreeBSD/SDL/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/MasterClient/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/MasterServer/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/XBOX/SDL/Debug/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/XBOX/SDL/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/cygwin/Debug/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/cygwin/Release/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

2
objs/dummy/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# DON'T REMOVE
# This keeps the folder from disappearing

View File

@ -209,7 +209,13 @@ LIBS+=-lm
endif endif
ifdef SDL ifdef SDL
include sdl/Makefile.cfg #SDL 2.0
ifndef SDL12
include sdl/Makefile.cfg
#SDL 1.2
else
include sdl12/Makefile.cfg
endif #ifndef SDL12
endif #ifdef SDL endif #ifdef SDL
ifdef DISTCC ifdef DISTCC

View File

@ -7,6 +7,21 @@
# and other things # and other things
# #
ifdef GCC80
GCC72=1
endif
ifdef GCC72
GCC71=1
endif
ifdef GCC71
GCC64=1
endif
ifdef GCC64
GCC64=1
endif
ifdef GCC63 ifdef GCC63
GCC62=1 GCC62=1
@ -322,22 +337,24 @@ ifdef MINGW64
BIN:=$(BIN)/Mingw64 BIN:=$(BIN)/Mingw64
else else
ifdef WII ifdef WII
INTERFACE=sdl INTERFACE=sdl12
NONX86=1 NONX86=1
STATIC=1 STATIC=1
PREFIX?=powerpc-eabi PREFIX?=powerpc-eabi
SDL=1 SDL=1
SDL12=1
SDLMAIN=1 SDLMAIN=1
OBJDIR:=$(OBJDIR)/Wii OBJDIR:=$(OBJDIR)/Wii
BIN:=$(BIN)/Wii BIN:=$(BIN)/Wii
NOUPX=1 NOUPX=1
else else
ifdef PS3N ifdef PS3N
INTERFACE=sdl INTERFACE=sdl12
NONX86=1 NONX86=1
STATIC=1 STATIC=1
PREFIX?=ppu PREFIX?=ppu
SDL=1 SDL=1
SDL12=1
# unsure? # unsure?
#SDLMAIN=1 #SDLMAIN=1
# can't compile SDL_mixer for ps3... # can't compile SDL_mixer for ps3...
@ -352,34 +369,38 @@ ifdef MINGW
BIN:=$(BIN)/Mingw BIN:=$(BIN)/Mingw
else else
ifdef XBOX ifdef XBOX
INTERFACE=sdl INTERFACE=sdl12
NASMFORMAT=win32 NASMFORMAT=win32
PREFIX?=/usr/local/openxdk/bin/i386-pc-xbox PREFIX?=/usr/local/openxdk/bin/i386-pc-xbox
SDL=1 SDL=1
SDL12=1
OBJDIR:=$(OBJDIR)/XBOX OBJDIR:=$(OBJDIR)/XBOX
BIN:=$(BIN)/XBOX BIN:=$(BIN)/XBOX
else else
ifdef PSP ifdef PSP
INTERFACE=sdl INTERFACE=sdl12
NONX86=1 NONX86=1
SDL=1 SDL=1
SDL12=1
OBJDIR:=$(OBJDIR)/PSP OBJDIR:=$(OBJDIR)/PSP
BIN:=$(BIN)/PSP BIN:=$(BIN)/PSP
NOUPX=1 NOUPX=1
else else
ifdef DC ifdef DC
INTERFACE=sdl INTERFACE=sdl12
NONX86=1 NONX86=1
SDL=1 SDL=1
SDL12=1
OBJDIR:=$(OBJDIR)/DC OBJDIR:=$(OBJDIR)/DC
BIN:=$(BIN)/DC BIN:=$(BIN)/DC
NOUPX=1 NOUPX=1
else else
ifdef WINCE ifdef WINCE
INTERFACE=sdl INTERFACE=sdl12
NONX86=1 NONX86=1
PREFIX?=arm-wince-pe PREFIX?=arm-wince-pe
SDL=1 SDL=1
SDL12=1
OBJDIR:=$(OBJDIR)/WinCE OBJDIR:=$(OBJDIR)/WinCE
BIN:=$(BIN)/WinCE BIN:=$(BIN)/WinCE
else else
@ -404,6 +425,12 @@ endif
endif endif
endif endif
ifdef GP2X
ifdef SDL
SDL12=1
endif
endif
ifdef ARCHNAME ifdef ARCHNAME
OBJDIR:=$(OBJDIR)/$(ARCHNAME) OBJDIR:=$(OBJDIR)/$(ARCHNAME)
BIN:=$(BIN)/$(ARCHNAME) BIN:=$(BIN)/$(ARCHNAME)
@ -437,7 +464,13 @@ OBJDUMP_OPTS?=--wide --source --line-numbers
LD=$(CC) LD=$(CC)
ifdef SDL ifdef SDL
# SDL 2.0
ifndef SDL12
INTERFACE=sdl INTERFACE=sdl
# SDL 1.2
else
INTERFACE=sdl12
endif
OBJDIR:=$(OBJDIR)/SDL OBJDIR:=$(OBJDIR)/SDL
endif endif

View File

@ -412,7 +412,7 @@ static Instruction symbexec (const Proto *pt, int lastpc, int reg) {
case OP_FORLOOP: case OP_FORLOOP:
case OP_FORPREP: case OP_FORPREP:
checkreg(pt, a+3); checkreg(pt, a+3);
/* go through */ /* FALLTHRU */
case OP_JMP: { case OP_JMP: {
int dest = pc+1+b; int dest = pc+1+b;
/* not full check and jump is forward and do not skip `lastpc'? */ /* not full check and jump is forward and do not skip `lastpc'? */

View File

@ -306,11 +306,12 @@ static void read_string (LexState *ls, int del, SemInfo *seminfo) {
save_and_next(ls); /* skip $ */ save_and_next(ls); /* skip $ */
seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + 1, seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + 1,
luaZ_bufflen(ls->buff) - 2); luaZ_bufflen(ls->buff) - 2);
ls->refstr++; /* expect '\' anytime soon */ ls->refstr++; /* expect '\' anytime soon */
lua_assert(ls->lookahead.token == TK_EOS); lua_assert(ls->lookahead.token == TK_EOS);
ls->lookahead.token = TK_CONCAT; ls->lookahead.token = TK_CONCAT;
return; return;
} }
/* FALLTHRU */
default: { default: {
if (!isdigit(ls->current)) if (!isdigit(ls->current))
save_and_next(ls); /* handles \\, \", \', and \? */ save_and_next(ls); /* handles \\, \", \', and \? */
@ -340,7 +341,8 @@ static void read_string (LexState *ls, int del, SemInfo *seminfo) {
}; };
switch (i) { switch (i) {
case 4: save( ls, (c>>8) & 0xff ); // pass-through.. case 4: save( ls, (c>>8) & 0xff );
/* FALLTHRU */
case 2: save( ls, c&0xff ); case 2: save( ls, c&0xff );
break; break;
case 5: case 5:
@ -350,7 +352,7 @@ static void read_string (LexState *ls, int del, SemInfo *seminfo) {
} }
continue; continue;
// "\u0000".."\x10FFFF": UTF-8 encoded Unicode // "\u0000".."\x10FFFF": UTF-8 encoded Unicode
// //
// Note that although codes are entered like this (must have min. four digit, // Note that although codes are entered like this (must have min. four digit,
// just to tease you!) the actual outcome in the string will vary between // just to tease you!) the actual outcome in the string will vary between
@ -482,20 +484,22 @@ static int llex (LexState *ls, SemInfo *seminfo) {
else if (sep == -1) return '['; else if (sep == -1) return '[';
else luaX_lexerror(ls, "invalid long string delimiter", TK_STRING); else luaX_lexerror(ls, "invalid long string delimiter", TK_STRING);
} }
/* FALLTHRU */
case '=': { case '=': {
next(ls); next(ls);
if (ls->current != '=') return '='; if (ls->current != '=') return '=';
else { next(ls); return TK_EQ; } else { next(ls); return TK_EQ; }
} }
/* FALLTHRU */
case '<': { case '<': {
next(ls); next(ls);
if (ls->current == '<') { next(ls); return TK_SHL; } if (ls->current == '<') { next(ls); return TK_SHL; }
if (ls->current != '=') return '<'; if (ls->current != '=') return '<';
else { next(ls); return TK_LE; } else { next(ls); return TK_LE; }
} }
case '>': { case '>': {
next(ls); next(ls);
if (ls->current == '>') { next(ls); return TK_SHR; } if (ls->current == '>') { next(ls); return TK_SHR; }
if (ls->current != '=') return '>'; if (ls->current != '=') return '>';
else { next(ls); return TK_GE; } else { next(ls); return TK_GE; }
} }
@ -547,9 +551,10 @@ static int llex (LexState *ls, SemInfo *seminfo) {
} }
case '\\': if (ls->refstr) { case '\\': if (ls->refstr) {
ls->refstr--; ls->refstr--;
ls->current = '"'; /* whacky! */ ls->current = '"'; /* whacky! */
return TK_CONCAT; return TK_CONCAT;
} }
/* FALLTHRU */
default: { default: {
if (isspace(ls->current)) { if (isspace(ls->current)) {
lua_assert(!currIsNewline(ls)); lua_assert(!currIsNewline(ls));

View File

@ -478,6 +478,7 @@ static TValue *newkey (lua_State *L, Table *t, const TValue *key) {
return luaH_getnum(t, k); /* use specialized version */ return luaH_getnum(t, k); /* use specialized version */
/* else go through */ /* else go through */
} }
/* FALLTHRU */
default: { default: {
Node *n = mainposition(t, key); Node *n = mainposition(t, key);
do { /* check whether `key' is somewhere in the chain */ do { /* check whether `key' is somewhere in the chain */

View File

@ -1189,7 +1189,10 @@ finish:
CONS_Printf(M_GetText("%s set to %s\n"), var->name, var->string); CONS_Printf(M_GetText("%s set to %s\n"), var->name, var->string);
var->flags &= ~CV_SHOWMODIFONETIME; var->flags &= ~CV_SHOWMODIFONETIME;
} }
DEBFILE(va("%s set to %s\n", var->name, var->string)); else // display message in debug file only
{
DEBFILE(va("%s set to %s\n", var->name, var->string));
}
var->flags |= CV_MODIFIED; var->flags |= CV_MODIFIED;
// raise 'on change' code // raise 'on change' code
#ifdef HAVE_BLUA #ifdef HAVE_BLUA

View File

@ -51,7 +51,7 @@
#endif #endif
#ifdef _XBOX #ifdef _XBOX
#include "sdl/SRB2XBOX/xboxhelp.h" #include "sdl12/SRB2XBOX/xboxhelp.h"
#endif #endif
// //
@ -1903,6 +1903,7 @@ static boolean CL_ServerConnectionTicker(boolean viams, const char *tmpsave, tic
break; // exit the case break; // exit the case
cl_mode = CL_ASKJOIN; // don't break case continue to cljoin request now cl_mode = CL_ASKJOIN; // don't break case continue to cljoin request now
/* FALLTHRU */
case CL_ASKJOIN: case CL_ASKJOIN:
CL_LoadServerFiles(); CL_LoadServerFiles();
@ -3635,6 +3636,7 @@ static void HandlePacketFromAwayNode(SINT8 node)
// Do not remove my own server (we have just get a out of order packet) // Do not remove my own server (we have just get a out of order packet)
if (node == servernode) if (node == servernode)
break; break;
/* FALLTHRU */
default: default:
DEBFILE(va("unknown packet received (%d) from unknown host\n",netbuffer->packettype)); DEBFILE(va("unknown packet received (%d) from unknown host\n",netbuffer->packettype));
@ -3791,6 +3793,7 @@ FILESTAMP
break; break;
case PT_TEXTCMD2: // splitscreen special case PT_TEXTCMD2: // splitscreen special
netconsole = nodetoplayer2[node]; netconsole = nodetoplayer2[node];
/* FALLTHRU */
case PT_TEXTCMD: case PT_TEXTCMD:
if (client) if (client)
break; break;
@ -4145,7 +4148,10 @@ static INT16 Consistancy(void)
#ifdef MOBJCONSISTANCY #ifdef MOBJCONSISTANCY
if (!thinkercap.next) if (!thinkercap.next)
{
DEBFILE(va("Consistancy = %u\n", ret));
return ret; return ret;
}
for (th = thinkercap.next; th != &thinkercap; th = th->next) for (th = thinkercap.next; th != &thinkercap; th = th->next)
{ {
if (th->function.acp1 != (actionf_p1)P_MobjThinker) if (th->function.acp1 != (actionf_p1)P_MobjThinker)
@ -4214,6 +4220,8 @@ static INT16 Consistancy(void)
} }
#endif #endif
DEBFILE(va("Consistancy = %u\n", (ret & 0xFFFF)));
return (INT16)(ret & 0xFFFF); return (INT16)(ret & 0xFFFF);
} }

View File

@ -83,7 +83,7 @@ int snprintf(char *str, size_t n, const char *fmt, ...);
#endif #endif
#ifdef _XBOX #ifdef _XBOX
#include "sdl/SRB2XBOX/xboxhelp.h" #include "sdl12/SRB2XBOX/xboxhelp.h"
#endif #endif
#ifdef HWRENDER #ifdef HWRENDER

View File

@ -1030,6 +1030,7 @@ boolean HSendPacket(INT32 node, boolean reliable, UINT8 acknum, size_t packetlen
#endif #endif
return false; return false;
} }
netbuffer->ack = netbuffer->ackreturn = 0; // don't hold over values from last packet sent/received
M_Memcpy(&reboundstore[rebound_head], netbuffer, M_Memcpy(&reboundstore[rebound_head], netbuffer,
doomcom->datalength); doomcom->datalength);
reboundsize[rebound_head] = doomcom->datalength; reboundsize[rebound_head] = doomcom->datalength;
@ -1365,7 +1366,7 @@ boolean D_CheckNetGame(void)
#else #else
if (M_CheckParm("-debugfile")) if (M_CheckParm("-debugfile"))
{ {
char filename[20]; char filename[21];
INT32 k = doomcom->consoleplayer - 1; INT32 k = doomcom->consoleplayer - 1;
if (M_IsNextParm()) if (M_IsNextParm())
k = atoi(M_GetNextParm()) - 1; k = atoi(M_GetNextParm()) - 1;

View File

@ -2526,7 +2526,7 @@ static void Got_Teamchange(UINT8 **cp, INT32 playernum)
error = true; error = true;
break; break;
} }
//fall down /* FALLTHRU */
case GT_TAG: case GT_TAG:
switch (NetPacket.packet.newteam) switch (NetPacket.packet.newteam)
{ {

View File

@ -11,6 +11,7 @@
/// \brief Load dehacked file and change tables and text /// \brief Load dehacked file and change tables and text
#include "doomdef.h" #include "doomdef.h"
#include "d_main.h" // for srb2home
#include "g_game.h" #include "g_game.h"
#include "sounds.h" #include "sounds.h"
#include "info.h" #include "info.h"
@ -2800,6 +2801,8 @@ static void readmaincfg(MYFILE *f)
strncpy(savegamename, timeattackfolder, sizeof (timeattackfolder)); strncpy(savegamename, timeattackfolder, sizeof (timeattackfolder));
strlcat(savegamename, "%u.ssg", sizeof(savegamename)); strlcat(savegamename, "%u.ssg", sizeof(savegamename));
// can't use sprintf since there is %u in savegamename
strcatbf(savegamename, srb2home, PATHSEP);
gamedataadded = true; gamedataadded = true;
titlechanged = true; titlechanged = true;
@ -7071,7 +7074,7 @@ struct {
{"ME_ALLEMERALDS",ME_ALLEMERALDS}, {"ME_ALLEMERALDS",ME_ALLEMERALDS},
{"ME_ULTIMATE",ME_ULTIMATE}, {"ME_ULTIMATE",ME_ULTIMATE},
{"ME_PERFECT",ME_PERFECT}, {"ME_PERFECT",ME_PERFECT},
#ifdef HAVE_BLUA #ifdef HAVE_BLUA
// p_local.h constants // p_local.h constants
{"FLOATSPEED",FLOATSPEED}, {"FLOATSPEED",FLOATSPEED},

View File

@ -94,7 +94,7 @@ static fixed_t paldiv = 0;
* \return fademask_t for lump * \return fademask_t for lump
*/ */
static fademask_t *F_GetFadeMask(UINT8 masknum, UINT8 scrnnum) { static fademask_t *F_GetFadeMask(UINT8 masknum, UINT8 scrnnum) {
static char lumpname[9] = "FADEmmss"; static char lumpname[10] = "FADEmmss";
static fademask_t fm = {NULL,0,0,0,0,0}; static fademask_t fm = {NULL,0,0,0,0,0};
lumpnum_t lumpnum; lumpnum_t lumpnum;
UINT8 *lump, *mask; UINT8 *lump, *mask;

View File

@ -22,7 +22,7 @@
#include <windows.h> #include <windows.h>
#endif #endif
#ifdef _WIN32_WCE #ifdef _WIN32_WCE
#include "sdl/SRB2CE/cehelp.h" #include "sdl12/SRB2CE/cehelp.h"
#else #else
#include <sys/stat.h> #include <sys/stat.h>
#endif #endif

View File

@ -747,7 +747,7 @@ void G_SetGameModified(boolean silent)
*/ */
const char *G_BuildMapName(INT32 map) const char *G_BuildMapName(INT32 map)
{ {
static char mapname[9] = "MAPXX"; // internal map name (wad resource name) static char mapname[10] = "MAPXX"; // internal map name (wad resource name)
I_Assert(map > 0); I_Assert(map > 0);
I_Assert(map <= NUMMAPS); I_Assert(map <= NUMMAPS);
@ -2066,6 +2066,7 @@ void G_Ticker(boolean run)
case GS_TITLESCREEN: case GS_TITLESCREEN:
if (titlemapinaction) P_Ticker(run); // then intentionally fall through if (titlemapinaction) P_Ticker(run); // then intentionally fall through
/* FALLTHRU */
case GS_WAITINGPLAYERS: case GS_WAITINGPLAYERS:
F_TitleScreenTicker(run); F_TitleScreenTicker(run);
break; break;

View File

@ -338,7 +338,7 @@ angle_t gld_FrustumAngle(void)
} }
// If the pitch is larger than this you can look all around at a FOV of 90 // If the pitch is larger than this you can look all around at a FOV of 90
if (abs(aimingangle) > 46 * ANG1) if (aimingangle > (ANGLE_45+ANG1) && (ANGLE_315-ANG1) > aimingangle)
return 0xffffffff; return 0xffffffff;
// ok, this is a gross hack that barely works... // ok, this is a gross hack that barely works...

View File

@ -64,7 +64,7 @@ typedef struct GLMipmap_s GLMipmap_t;
// //
struct GLTexture_s struct GLTexture_s
{ {
GLMipmap_t mipmap; GLMipmap_t mipmap;
float scaleX; //used for scaling textures on walls float scaleX; //used for scaling textures on walls
float scaleY; float scaleY;
}; };
@ -88,7 +88,7 @@ struct GLPatch_s
UINT16 wadnum; // the software patch lump num for when the hardware patch UINT16 wadnum; // the software patch lump num for when the hardware patch
UINT16 lumpnum; // was flushed, and we need to re-create it UINT16 lumpnum; // was flushed, and we need to re-create it
GLMipmap_t mipmap; GLMipmap_t mipmap;
} ATTRPACK; };
typedef struct GLPatch_s GLPatch_t; typedef struct GLPatch_s GLPatch_t;
#endif //_HWR_DATA_ #endif //_HWR_DATA_

View File

@ -428,7 +428,7 @@ static md2_model_t *md2_readModel(const char *filename)
spr2 |= FF_SPR2SUPER; spr2 |= FF_SPR2SUPER;
if (model->spr2frames[spr2*2 + 1]++ == 0) // numspr2frames if (model->spr2frames[spr2*2 + 1]++ == 0) // numspr2frames
model->spr2frames[spr2*2] = i; // starting frame model->spr2frames[spr2*2] = i; // starting frame
CONS_Debug(DBG_RENDER, "frame %s, sprite2 %s - starting frame %d, number of frames %d\n", frame->name, spr2names[spr2 & ~FF_SPR2SUPER], model->spr2frames[spr2*2], model->spr2frames[spr2*2 + 1]); CONS_Debug(DBG_RENDER, "frame %s, sprite2 %s - starting frame %s, number of frames %s\n", frame->name, spr2names[spr2 & ~FF_SPR2SUPER], sizeu1(model->spr2frames[spr2*2]), sizeu2(model->spr2frames[spr2*2 + 1]));
} }
} }
} }

View File

@ -97,7 +97,7 @@
#include <time.h> #include <time.h>
#ifdef _arch_dreamcast #ifdef _arch_dreamcast
#include "sdl/SRB2DC/dchelp.h" #include "sdl12/SRB2DC/dchelp.h"
#endif #endif
#if (defined (__unix__) && !defined (MSDOS)) || defined(__APPLE__) || defined (UNIXCOMMON) #if (defined (__unix__) && !defined (MSDOS)) || defined(__APPLE__) || defined (UNIXCOMMON)
@ -192,7 +192,7 @@ static UINT8 UPNP_support = TRUE;
#define close closesocket #define close closesocket
#ifdef _WIN32_WCE #ifdef _WIN32_WCE
#include "sdl/SRB2CE/cehelp.h" #include "sdl12/SRB2CE/cehelp.h"
#endif #endif
#endif #endif

View File

@ -135,7 +135,7 @@ static const struct {
}; };
// goes through the above list and returns the utype string for the userdata type // goes through the above list and returns the utype string for the userdata type
// returns "unknown" instead if we couldn't find the right userdata type // returns "unknown" instead if we couldn't find the right userdata type
static const char *GetUserdataUType(lua_State *L) static const char *GetUserdataUType(lua_State *L)
{ {
UINT8 i; UINT8 i;

View File

@ -254,7 +254,7 @@ static int lib_searchBlockmap(lua_State *L)
if (P_MobjWasRemoved(mobj)){ // ...unless the original object was removed if (P_MobjWasRemoved(mobj)){ // ...unless the original object was removed
lua_pushboolean(L, false); // in which case we have to stop now regardless lua_pushboolean(L, false); // in which case we have to stop now regardless
return 1; return 1;
} }
} }
lua_pushboolean(L, retval); lua_pushboolean(L, retval);
return 1; return 1;

View File

@ -165,10 +165,12 @@ static int lib_setSpr2default(lua_State *L)
{ {
const char *name = lua_tostring(L, 1); const char *name = lua_tostring(L, 1);
for (i = 0; i < free_spr2; i++) for (i = 0; i < free_spr2; i++)
{
if (fastcmp(name, spr2names[i])) if (fastcmp(name, spr2names[i]))
break; break;
if (i == free_spr2) }
return luaL_error(L, "spr2defaults[] invalid index"); if (i == free_spr2)
return luaL_error(L, "spr2defaults[] invalid index");
} }
else else
return luaL_error(L, "spr2defaults[] invalid index"); return luaL_error(L, "spr2defaults[] invalid index");
@ -182,10 +184,12 @@ static int lib_setSpr2default(lua_State *L)
{ {
const char *name = lua_tostring(L, 2); const char *name = lua_tostring(L, 2);
for (j = 0; j < free_spr2; j++) for (j = 0; j < free_spr2; j++)
{
if (fastcmp(name, spr2names[j])) if (fastcmp(name, spr2names[j]))
break; break;
if (j == free_spr2) }
return luaL_error(L, "spr2defaults[] invalid index"); if (j == free_spr2)
return luaL_error(L, "spr2defaults[] invalid index");
} }
if (j >= free_spr2) if (j >= free_spr2)

View File

@ -1255,7 +1255,7 @@ void Command_ObjectPlace_f(void)
{ {
objectplacing = true; objectplacing = true;
if ((players[0].powers[pw_carry] == CR_NIGHTSMODE)) if (players[0].powers[pw_carry] == CR_NIGHTSMODE)
return; return;
if (!COM_CheckParm("-silent")) if (!COM_CheckParm("-silent"))

View File

@ -980,18 +980,18 @@ UINT8 M_CompletionEmblems(void) // Bah! Duplication sucks, but it's for a separa
levelnum = emblemlocations[i].level; levelnum = emblemlocations[i].level;
embtype = emblemlocations[i].var; embtype = emblemlocations[i].var;
flags = MV_BEATEN; flags = MV_BEATEN;
if (embtype & ME_ALLEMERALDS) if (embtype & ME_ALLEMERALDS)
flags |= MV_ALLEMERALDS; flags |= MV_ALLEMERALDS;
if (embtype & ME_ULTIMATE) if (embtype & ME_ULTIMATE)
flags |= MV_ULTIMATE; flags |= MV_ULTIMATE;
if (embtype & ME_PERFECT) if (embtype & ME_PERFECT)
flags |= MV_PERFECT; flags |= MV_PERFECT;
res = ((mapvisited[levelnum - 1] & flags) == flags); res = ((mapvisited[levelnum - 1] & flags) == flags);
emblemlocations[i].collected = res; emblemlocations[i].collected = res;
if (res) if (res)
++somethingUnlocked; ++somethingUnlocked;

View File

@ -20,9 +20,10 @@
#include <stdlib.h> #include <stdlib.h>
#endif #endif
#ifdef _WIN32_WCE // Was this just for the #define USEASM?
#include "sdl/SRB2CE/cehelp.h" //#ifdef _WIN32_WCE
#endif //#include "sdl12/SRB2CE/cehelp.h"
//#endif
/*! /*!
\brief bits of the fraction \brief bits of the fraction

View File

@ -3256,6 +3256,7 @@ static void M_DrawGenericMenu(void)
W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE)); W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE));
} }
} }
/* FALLTHRU */
case IT_NOTHING: case IT_NOTHING:
case IT_DYBIGSPACE: case IT_DYBIGSPACE:
y += LINEHEIGHT; y += LINEHEIGHT;
@ -3314,6 +3315,7 @@ static void M_DrawGenericMenu(void)
break; break;
case IT_STRING2: case IT_STRING2:
V_DrawString(x, y, 0, currentMenu->menuitems[i].text); V_DrawString(x, y, 0, currentMenu->menuitems[i].text);
/* FALLTHRU */
case IT_DYLITLSPACE: case IT_DYLITLSPACE:
y += SMALLLINEHEIGHT; y += SMALLLINEHEIGHT;
break; break;
@ -3326,6 +3328,7 @@ static void M_DrawGenericMenu(void)
case IT_TRANSTEXT: case IT_TRANSTEXT:
if (currentMenu->menuitems[i].alphaKey) if (currentMenu->menuitems[i].alphaKey)
y = currentMenu->y+currentMenu->menuitems[i].alphaKey; y = currentMenu->y+currentMenu->menuitems[i].alphaKey;
/* FALLTHRU */
case IT_TRANSTEXT2: case IT_TRANSTEXT2:
V_DrawString(x, y, V_TRANSLUCENT, currentMenu->menuitems[i].text); V_DrawString(x, y, V_TRANSLUCENT, currentMenu->menuitems[i].text);
y += SMALLLINEHEIGHT; y += SMALLLINEHEIGHT;
@ -3675,6 +3678,7 @@ static void M_DrawCenteredMenu(void)
W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE)); W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE));
} }
} }
/* FALLTHRU */
case IT_NOTHING: case IT_NOTHING:
case IT_DYBIGSPACE: case IT_DYBIGSPACE:
y += LINEHEIGHT; y += LINEHEIGHT;
@ -3732,6 +3736,7 @@ static void M_DrawCenteredMenu(void)
break; break;
case IT_STRING2: case IT_STRING2:
V_DrawCenteredString(x, y, 0, currentMenu->menuitems[i].text); V_DrawCenteredString(x, y, 0, currentMenu->menuitems[i].text);
/* FALLTHRU */
case IT_DYLITLSPACE: case IT_DYLITLSPACE:
y += SMALLLINEHEIGHT; y += SMALLLINEHEIGHT;
break; break;
@ -4883,6 +4888,10 @@ static boolean M_AddonsRefresh(void)
#define offs 1 #define offs 1
#ifdef __GNUC__
#pragma GCC optimize ("0")
#endif
static void M_DrawAddons(void) static void M_DrawAddons(void)
{ {
INT32 x, y; INT32 x, y;
@ -5004,6 +5013,10 @@ static void M_DrawAddons(void)
#undef CANSAVE #undef CANSAVE
} }
#ifdef __GNUC__
#pragma GCC reset_options
#endif
#undef offs #undef offs
static void M_AddonExec(INT32 ch) static void M_AddonExec(INT32 ch)
@ -6117,7 +6130,7 @@ static void M_DrawLoadGameData(void)
V_DrawFill(x+6, y+64, 72, 50, col); V_DrawFill(x+6, y+64, 72, 50, col);
} }
} }
V_DrawSmallScaledPatch(x, y, 0, savselp[0]); V_DrawSmallScaledPatch(x, y, 0, savselp[0]);
x += 2; x += 2;
y += 1; y += 1;
@ -6149,7 +6162,7 @@ static void M_DrawLoadGameData(void)
else else
patch = savselp[5]; patch = savselp[5];
} }
V_DrawSmallScaledPatch(x, y, flags, patch); V_DrawSmallScaledPatch(x, y, flags, patch);
y += 41; y += 41;
@ -8719,6 +8732,7 @@ static void M_HandleSetupMultiPlayer(INT32 choice)
COM_BufAddText (va("%s %s\n",setupm_cvdefaultname->name,setupm_name)); COM_BufAddText (va("%s %s\n",setupm_cvdefaultname->name,setupm_name));
break; break;
} }
/* FALLTHRU */
case KEY_RIGHTARROW: case KEY_RIGHTARROW:
if (itemOn == 1) //player skin if (itemOn == 1) //player skin
{ {
@ -9165,7 +9179,7 @@ static void M_DrawControl(void)
y += SMALLLINEHEIGHT; y += SMALLLINEHEIGHT;
} }
V_DrawScaledPatch(currentMenu->x - 20, cursory, 0, V_DrawScaledPatch(currentMenu->x - 20, cursory, 0,
W_CachePatchName("M_CURSOR", PU_CACHE)); W_CachePatchName("M_CURSOR", PU_CACHE));
} }

View File

@ -1086,7 +1086,7 @@ void M_StartMovie(void)
moviemode = M_StartMovieGIF(pathname); moviemode = M_StartMovieGIF(pathname);
break; break;
} }
// fall thru /* FALLTHRU */
case MM_APNG: case MM_APNG:
moviemode = M_StartMovieAPNG(pathname); moviemode = M_StartMovieAPNG(pathname);
break; break;

View File

@ -65,7 +65,7 @@
#endif #endif
#ifdef _arch_dreamcast #ifdef _arch_dreamcast
#include "sdl/SRB2DC/dchelp.h" #include "sdl12/SRB2DC/dchelp.h"
#endif #endif
#include <sys/time.h> // timeval,... (TIMEOUT) #include <sys/time.h> // timeval,... (TIMEOUT)
@ -92,7 +92,7 @@
#include "m_misc.h" // GetRevisionString() #include "m_misc.h" // GetRevisionString()
#ifdef _WIN32_WCE #ifdef _WIN32_WCE
#include "sdl/SRB2CE/cehelp.h" #include "sdl12/SRB2CE/cehelp.h"
#endif #endif
#include "i_addrinfo.h" #include "i_addrinfo.h"

View File

@ -79,7 +79,7 @@ void T_MoveCeiling(ceiling_t *ceiling)
P_LinedefExecute((INT16)(ceiling->texture + INT16_MAX + 2), NULL, NULL); P_LinedefExecute((INT16)(ceiling->texture + INT16_MAX + 2), NULL, NULL);
if (ceiling->texture > -1) // flat changing if (ceiling->texture > -1) // flat changing
ceiling->sector->ceilingpic = ceiling->texture; ceiling->sector->ceilingpic = ceiling->texture;
// don't break /* FALLTHRU */
case raiseToHighest: case raiseToHighest:
// case raiseCeilingByLine: // case raiseCeilingByLine:
case moveCeilingByFrontTexture: case moveCeilingByFrontTexture:
@ -182,6 +182,7 @@ void T_MoveCeiling(ceiling_t *ceiling)
// except generalized ones, reset speed, start back up // except generalized ones, reset speed, start back up
case crushAndRaise: case crushAndRaise:
ceiling->speed = CEILSPEED; ceiling->speed = CEILSPEED;
/* FALLTHRU */
case fastCrushAndRaise: case fastCrushAndRaise:
ceiling->direction = 1; ceiling->direction = 1;
break; break;
@ -200,6 +201,7 @@ void T_MoveCeiling(ceiling_t *ceiling)
if (ceiling->texture > -1) // flat changing if (ceiling->texture > -1) // flat changing
ceiling->sector->ceilingpic = ceiling->texture; ceiling->sector->ceilingpic = ceiling->texture;
// don't break // don't break
/* FALLTHRU */
// in all other cases, just remove the active ceiling // in all other cases, just remove the active ceiling
case lowerAndCrush: case lowerAndCrush:
@ -427,6 +429,7 @@ INT32 EV_DoCeiling(line_t *line, ceiling_e type)
case crushAndRaise: case crushAndRaise:
ceiling->crush = true; ceiling->crush = true;
ceiling->topheight = sec->ceilingheight; ceiling->topheight = sec->ceilingheight;
/* FALLTHRU */
case lowerAndCrush: case lowerAndCrush:
ceiling->bottomheight = sec->floorheight; ceiling->bottomheight = sec->floorheight;
ceiling->bottomheight += 4*FRACUNIT; ceiling->bottomheight += 4*FRACUNIT;

View File

@ -4824,9 +4824,11 @@ void A_UnidusBall(mobj_t *actor)
case 0: // at least one frame where not dashing case 0: // at least one frame where not dashing
if (!skull) ++actor->extravalue2; if (!skull) ++actor->extravalue2;
else break; else break;
/* FALLTHRU */
case 1: // at least one frame where ARE dashing case 1: // at least one frame where ARE dashing
if (skull) ++actor->extravalue2; if (skull) ++actor->extravalue2;
else break; else break;
/* FALLTHRU */
case 2: // not dashing again? case 2: // not dashing again?
if (skull) break; if (skull) break;
// launch. // launch.
@ -6065,7 +6067,7 @@ void A_Boss7Chase(mobj_t *actor)
break; break;
} }
actor->threshold++; actor->threshold++;
// fall into... /* FALLTHRU */
case 1: // Chaingun Goop case 1: // Chaingun Goop
A_FaceTarget(actor); A_FaceTarget(actor);
P_SetMobjState(actor, S_BLACKEGG_SHOOT1); P_SetMobjState(actor, S_BLACKEGG_SHOOT1);
@ -10187,7 +10189,7 @@ void A_FlickyAim(mobj_t *actor)
{ {
angle_t posvar; angle_t posvar;
fixed_t chasevar, chasex, chasey; fixed_t chasevar, chasex, chasey;
if (flickyhitwall) if (flickyhitwall)
actor->movedir *= -1; actor->movedir *= -1;

View File

@ -316,6 +316,7 @@ void T_MoveFloor(floormove_t *movefloor)
case moveFloorByFrontSector: case moveFloorByFrontSector:
if (movefloor->texture < -1) // chained linedef executing if (movefloor->texture < -1) // chained linedef executing
P_LinedefExecute((INT16)(movefloor->texture + INT16_MAX + 2), NULL, NULL); P_LinedefExecute((INT16)(movefloor->texture + INT16_MAX + 2), NULL, NULL);
/* FALLTHRU */
case instantMoveFloorByFrontSector: case instantMoveFloorByFrontSector:
if (movefloor->texture > -1) // flat changing if (movefloor->texture > -1) // flat changing
movefloor->sector->floorpic = movefloor->texture; movefloor->sector->floorpic = movefloor->texture;
@ -364,6 +365,7 @@ void T_MoveFloor(floormove_t *movefloor)
case moveFloorByFrontSector: case moveFloorByFrontSector:
if (movefloor->texture < -1) // chained linedef executing if (movefloor->texture < -1) // chained linedef executing
P_LinedefExecute((INT16)(movefloor->texture + INT16_MAX + 2), NULL, NULL); P_LinedefExecute((INT16)(movefloor->texture + INT16_MAX + 2), NULL, NULL);
/* FALLTHRU */
case instantMoveFloorByFrontSector: case instantMoveFloorByFrontSector:
if (movefloor->texture > -1) // flat changing if (movefloor->texture > -1) // flat changing
movefloor->sector->floorpic = movefloor->texture; movefloor->sector->floorpic = movefloor->texture;

View File

@ -483,9 +483,11 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
case MT_REDTEAMRING: case MT_REDTEAMRING:
if (player->ctfteam != 1) if (player->ctfteam != 1)
return; return;
/* FALLTHRU */
case MT_BLUETEAMRING: // Yes, I'm lazy. Oh well, deal with it. case MT_BLUETEAMRING: // Yes, I'm lazy. Oh well, deal with it.
if (special->type == MT_BLUETEAMRING && player->ctfteam != 2) if (special->type == MT_BLUETEAMRING && player->ctfteam != 2)
return; return;
/* FALLTHRU */
case MT_RING: case MT_RING:
case MT_FLINGRING: case MT_FLINGRING:
if (!(P_CanPickupItem(player, false))) if (!(P_CanPickupItem(player, false)))
@ -3390,7 +3392,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
P_SetMobjState(target, target->info->meleestate); // go to pinch pain state P_SetMobjState(target, target->info->meleestate); // go to pinch pain state
break; break;
} }
// fallthrough /* FALLTHRU */
default: default:
P_SetMobjState(target, target->info->painstate); P_SetMobjState(target, target->info->painstate);
break; break;

View File

@ -6781,6 +6781,7 @@ void P_MobjThinker(mobj_t *mobj)
whoosh->momz = mobj->target->momz; // Stay reasonably centered for a few frames whoosh->momz = mobj->target->momz; // Stay reasonably centered for a few frames
mobj->target->player->pflags &= ~PF_SHIELDABILITY; // prevent eternal whoosh mobj->target->player->pflags &= ~PF_SHIELDABILITY; // prevent eternal whoosh
} }
/* FALLTHRU */
case MT_FLAMEAURA_ORB: case MT_FLAMEAURA_ORB:
if (!(mobj->flags2 & MF2_SHIELD)) if (!(mobj->flags2 & MF2_SHIELD))
return; return;
@ -6889,9 +6890,9 @@ void P_MobjThinker(mobj_t *mobj)
P_SetScale(mobj, mobj->target->scale); P_SetScale(mobj, mobj->target->scale);
if (!(mobj->eflags & MFE_VERTICALFLIP)) if (!(mobj->eflags & MFE_VERTICALFLIP))
mobj->z = mobj->target->z + mobj->target->height + FixedMul((16 + abs((leveltime % TICRATE) - TICRATE/2))*FRACUNIT, mobj->target->scale); mobj->z = mobj->target->z + mobj->target->height + FixedMul((16 + abs((signed)(leveltime % TICRATE) - TICRATE/2))*FRACUNIT, mobj->target->scale);
else else
mobj->z = mobj->target->z - FixedMul((16 + abs((leveltime % TICRATE) - TICRATE/2))*FRACUNIT, mobj->target->scale) - mobj->height; mobj->z = mobj->target->z - FixedMul((16 + abs((signed)(leveltime % TICRATE) - TICRATE/2))*FRACUNIT, mobj->target->scale) - mobj->height;
break; break;
case MT_DROWNNUMBERS: case MT_DROWNNUMBERS:
if (!mobj->target) if (!mobj->target)
@ -7268,7 +7269,7 @@ void P_MobjThinker(mobj_t *mobj)
break; break;
case MT_AQUABUZZ: case MT_AQUABUZZ:
P_MobjCheckWater(mobj); // solely for MFE_UNDERWATER for A_FlickySpawn P_MobjCheckWater(mobj); // solely for MFE_UNDERWATER for A_FlickySpawn
// no break here on purpose /* FALLTHRU */
case MT_BIGAIRMINE: case MT_BIGAIRMINE:
{ {
if (mobj->tracer && mobj->tracer->player && mobj->tracer->health > 0 if (mobj->tracer && mobj->tracer->player && mobj->tracer->health > 0
@ -7752,7 +7753,7 @@ void P_MobjThinker(mobj_t *mobj)
else else
mobj->z = mobj->floorz; mobj->z = mobj->floorz;
} }
// THERE IS NO BREAK HERE ON PURPOSE /* FALLTHRU */
default: default:
// check mobj against possible water content, before movement code // check mobj against possible water content, before movement code
P_MobjCheckWater(mobj); P_MobjCheckWater(mobj);
@ -8789,6 +8790,7 @@ void P_PrecipitationEffects(void)
{ {
case PRECIP_RAIN: // no lightning or thunder whatsoever case PRECIP_RAIN: // no lightning or thunder whatsoever
sounds_thunder = false; sounds_thunder = false;
/* FALLTHRU */
case PRECIP_STORM_NOSTRIKES: // no lightning strikes specifically case PRECIP_STORM_NOSTRIKES: // no lightning strikes specifically
effects_lightning = false; effects_lightning = false;
break; break;
@ -11311,4 +11313,4 @@ mobj_t *P_SpawnMobjFromMobj(mobj_t *mobj, fixed_t xofs, fixed_t yofs, fixed_t zo
newmobj->destscale = mobj->destscale; newmobj->destscale = mobj->destscale;
P_SetScale(newmobj, mobj->scale); P_SetScale(newmobj, mobj->scale);
return newmobj; return newmobj;
} }

View File

@ -1670,12 +1670,18 @@ static inline void SaveWhatThinker(const thinker_t *th, const UINT8 type)
static void P_NetArchiveThinkers(void) static void P_NetArchiveThinkers(void)
{ {
const thinker_t *th; const thinker_t *th;
UINT32 numsaved = 0;
WRITEUINT32(save_p, ARCHIVEBLOCK_THINKERS); WRITEUINT32(save_p, ARCHIVEBLOCK_THINKERS);
// save off the current thinkers // save off the current thinkers
for (th = thinkercap.next; th != &thinkercap; th = th->next) for (th = thinkercap.next; th != &thinkercap; th = th->next)
{ {
if (!(th->function.acp1 == (actionf_p1)P_RemoveThinkerDelayed
|| th->function.acp1 == (actionf_p1)P_RainThinker
|| th->function.acp1 == (actionf_p1)P_SnowThinker))
numsaved++;
if (th->function.acp1 == (actionf_p1)P_MobjThinker) if (th->function.acp1 == (actionf_p1)P_MobjThinker)
{ {
SaveMobjThinker(th, tc_mobj); SaveMobjThinker(th, tc_mobj);
@ -1869,6 +1875,8 @@ static void P_NetArchiveThinkers(void)
#endif #endif
} }
CONS_Debug(DBG_NETPLAY, "%u thinkers saved\n", numsaved);
WRITEUINT8(save_p, tc_end); WRITEUINT8(save_p, tc_end);
} }
@ -2656,6 +2664,7 @@ static void P_NetUnArchiveThinkers(void)
UINT8 tclass; UINT8 tclass;
UINT8 restoreNum = false; UINT8 restoreNum = false;
UINT32 i; UINT32 i;
UINT32 numloaded = 0;
if (READUINT32(save_p) != ARCHIVEBLOCK_THINKERS) if (READUINT32(save_p) != ARCHIVEBLOCK_THINKERS)
I_Error("Bad $$$.sav at archive block Thinkers"); I_Error("Bad $$$.sav at archive block Thinkers");
@ -2689,6 +2698,7 @@ static void P_NetUnArchiveThinkers(void)
if (tclass == tc_end) if (tclass == tc_end)
break; // leave the saved thinker reading loop break; // leave the saved thinker reading loop
numloaded++;
switch (tclass) switch (tclass)
{ {
@ -2844,6 +2854,8 @@ static void P_NetUnArchiveThinkers(void)
} }
} }
CONS_Debug(DBG_NETPLAY, "%u thinkers loaded\n", numloaded);
if (restoreNum) if (restoreNum)
{ {
executor_t *delay = NULL; executor_t *delay = NULL;

View File

@ -3746,6 +3746,7 @@ void P_ProcessSpecialSector(player_t *player, sector_t *sector, sector_t *rovers
goto DoneSection2; goto DoneSection2;
} }
} }
/* FALLTHRU */
case 4: // Linedef executor that doesn't require touching floor case 4: // Linedef executor that doesn't require touching floor
case 5: // Linedef executor case 5: // Linedef executor
case 6: // Linedef executor (7 Emeralds) case 6: // Linedef executor (7 Emeralds)
@ -4788,6 +4789,8 @@ static void P_RunSpecialSectorCheck(player_t *player, sector_t *sector)
// requires touching floor. // requires touching floor.
break; break;
} }
/* FALLTHRU */
case 1: // Starpost activator case 1: // Starpost activator
case 5: // Fan sector case 5: // Fan sector
case 6: // Super Sonic Transform case 6: // Super Sonic Transform
@ -5944,6 +5947,8 @@ void P_SpawnSpecials(INT32 fromnetsave)
EV_DoFloor(&lines[i], bounceFloor); EV_DoFloor(&lines[i], bounceFloor);
if (lines[i].special == 54) if (lines[i].special == 54)
break; break;
/* FALLTHRU */
case 55: // New super cool and awesome moving ceiling type case 55: // New super cool and awesome moving ceiling type
if (lines[i].backsector) if (lines[i].backsector)
EV_DoCeiling(&lines[i], bounceCeiling); EV_DoCeiling(&lines[i], bounceCeiling);
@ -5955,7 +5960,8 @@ void P_SpawnSpecials(INT32 fromnetsave)
EV_DoFloor(&lines[i], bounceFloorCrush); EV_DoFloor(&lines[i], bounceFloorCrush);
if (lines[i].special == 57) if (lines[i].special == 57)
break; //only move the floor break; //only move the floor
/* FALLTHRU */
case 58: // New super cool and awesome moving ceiling crush type case 58: // New super cool and awesome moving ceiling crush type
if (lines[i].backsector) if (lines[i].backsector)
@ -7043,6 +7049,7 @@ static void P_SpawnScrollers(void)
Add_Scroller(sc_ceiling, -dx, dy, control, s, accel, l->flags & ML_NOCLIMB); Add_Scroller(sc_ceiling, -dx, dy, control, s, accel, l->flags & ML_NOCLIMB);
if (special != 533) if (special != 533)
break; break;
/* FALLTHRU */
case 523: // carry objects on ceiling case 523: // carry objects on ceiling
dx = FixedMul(dx, CARRYFACTOR); dx = FixedMul(dx, CARRYFACTOR);
@ -7057,6 +7064,7 @@ static void P_SpawnScrollers(void)
Add_Scroller(sc_floor, -dx, dy, control, s, accel, l->flags & ML_NOCLIMB); Add_Scroller(sc_floor, -dx, dy, control, s, accel, l->flags & ML_NOCLIMB);
if (special != 530) if (special != 530)
break; break;
/* FALLTHRU */
case 520: // carry objects on floor case 520: // carry objects on floor
dx = FixedMul(dx, CARRYFACTOR); dx = FixedMul(dx, CARRYFACTOR);

View File

@ -8819,7 +8819,7 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
// x1.2 dist for analog // x1.2 dist for analog
if (P_AnalogMove(player)) if (P_AnalogMove(player))
dist = FixedMul(dist, 6*FRACUNIT/5); dist = FixedMul(dist, 6*FRACUNIT/5);
if (player->climbing || player->exiting || player->playerstate == PST_DEAD || (player->powers[pw_carry] == CR_ROPEHANG || player->powers[pw_carry] == CR_GENERIC || player->powers[pw_carry] == CR_MACESPIN)) if (player->climbing || player->exiting || player->playerstate == PST_DEAD || (player->powers[pw_carry] == CR_ROPEHANG || player->powers[pw_carry] == CR_GENERIC || player->powers[pw_carry] == CR_MACESPIN))
dist <<= 1; dist <<= 1;
} }
@ -9773,6 +9773,7 @@ void P_PlayerThink(player_t *player)
player->drawangle = R_PointToAngle2(0, 0, player->mo->momx, player->mo->momy); player->drawangle = R_PointToAngle2(0, 0, player->mo->momx, player->mo->momy);
break; break;
} }
/* FALLTHRU */
default: default:
player->drawangle = player->mo->angle; player->drawangle = player->mo->angle;
break; break;

View File

@ -65,37 +65,6 @@ ifdef MACOSX
LIBS+=-framework CoreFoundation LIBS+=-framework CoreFoundation
endif endif
#
#here is GP2x (arm-gp2x-linux)
#
ifdef GP2X
PNG_CONFIG?=$(PREFIX)-libpng12-config
ifdef STATIC #need a better setting name
CFLAGS+=-I$(OPEN2X)/include
ifndef NOMIXER
LIBS+=-lvorbisidec
ifdef MIKMOD
LIBS+=-lmikmod
endif
ifdef SMPEGLIB
LIBS+=-lsmpeg
LD=$(CXX)
endif
endif
NONET=1
endif
ifndef ARCHNAME
"error"
endif
NONX86=1
NOHW=1
NOHS=1
NOMD5=1
WFLAGS+=-O0
OPTS+=-DGP2X -ffast-math -mcpu=arm920t
EXENAME?=SRB2GP2X.gpe
endif
ifndef NOHW ifndef NOHW
OPTS+=-I/usr/X11R6/include OPTS+=-I/usr/X11R6/include
LDFLAGS+=-L/usr/X11R6/lib LDFLAGS+=-L/usr/X11R6/lib

View File

@ -14,26 +14,6 @@ ifdef PANDORA
include sdl/SRB2Pandora/Makefile.cfg include sdl/SRB2Pandora/Makefile.cfg
endif #ifdef PANDORA endif #ifdef PANDORA
ifdef DC
include sdl/SRB2DC/Makefile.cfg
endif #ifdef DC
ifdef PS3N
include sdl/SRB2PS3/Makefile.cfg
endif #ifdef PS3N
ifdef PSP
include sdl/SRB2PSP/Makefile.cfg
endif #ifdef PSP
ifdef XBOX
include sdl/SRB2XBOX/Makefile.cfg
endif #ifdef XBOX
ifdef WINCE
include sdl/SRB2CE/Makefile.cfg
endif #ifef WINCE
ifdef CYGWIN32 ifdef CYGWIN32
include sdl/MakeCYG.cfg include sdl/MakeCYG.cfg
endif #ifdef CYGWIN32 endif #ifdef CYGWIN32
@ -150,15 +130,8 @@ endif
endif endif
endif endif
# FIXME: DevkitPPC and ready-compiled SDL Wii require these things to be in a silly order
ifdef WII
include sdl/SRB2WII/Makefile.cfg
endif #ifdef WII
CFLAGS+=$(SDL_CFLAGS) CFLAGS+=$(SDL_CFLAGS)
LIBS:=$(SDL_LDFLAGS) $(LIBS) LIBS:=$(SDL_LDFLAGS) $(LIBS)
ifndef WII
ifdef STATIC ifdef STATIC
LIBS+=$(shell $(SDL_CONFIG) --static-libs) LIBS+=$(shell $(SDL_CONFIG) --static-libs)
endif endif
endif

View File

@ -33,7 +33,6 @@
void ShowEndTxt(void) void ShowEndTxt(void)
{ {
#if !(defined (_WIN32_WCE) || defined (_XBOX) || defined (_arch_dreamcast))
INT32 i; INT32 i;
UINT16 j, att = 0; UINT16 j, att = 0;
INT32 nlflag = 1; INT32 nlflag = 1;
@ -232,5 +231,4 @@ void ShowEndTxt(void)
printf("\n"); printf("\n");
Z_Free(data); Z_Free(data);
#endif
} }

View File

@ -37,14 +37,8 @@
#pragma warning(default : 4214 4244) #pragma warning(default : 4214 4244)
#endif #endif
#if defined (_XBOX) || defined (_arch_dreamcast) || defined(GP2X) #ifndef NOLOADSO
#define NOLOADSO #include "SDL_loadso.h"
#endif
#if SDL_VERSION_ATLEAST(1,2,6) && !defined (NOLOADSO)
#include "SDL_loadso.h" // 1.2.6+
#elif !defined (NOLOADSO)
#define NOLOADSO
#endif #endif
#define _CREATE_DLL_ // necessary for Unix AND Windows #define _CREATE_DLL_ // necessary for Unix AND Windows

View File

@ -26,28 +26,6 @@
#include <unistd.h> #include <unistd.h>
#endif #endif
#ifdef _WII
#include <limits.h>
#include <network.h>
#include <fat.h>
#ifdef REMOTE_DEBUGGING
#include <debug.h>
#endif
static char wiicwd[PATH_MAX] = "sd:/";
static char localip[16] = {0};
static char gateway[16] = {0};
static char netmask[16] = {0};
#endif
#ifdef _PSP
#include <pspmoduleinfo.h>
#include <pspthreadman.h>
PSP_HEAP_SIZE_KB(24*1024);
PSP_MAIN_THREAD_ATTR(PSP_THREAD_ATTR_USER | PSP_THREAD_ATTR_VFPU);
PSP_MAIN_THREAD_NAME("SRB2");
PSP_MAIN_THREAD_STACK_SIZE_KB(256);
#endif
#ifdef HAVE_SDL #ifdef HAVE_SDL
#ifdef HAVE_TTF #ifdef HAVE_TTF
@ -79,23 +57,12 @@ FILE *logstream = NULL;
#endif #endif
#endif #endif
#if defined (_WIN32) && !defined (_XBOX) #if defined (_WIN32)
#include "../win32/win_dbg.h" #include "../win32/win_dbg.h"
typedef BOOL (WINAPI *p_IsDebuggerPresent)(VOID); typedef BOOL (WINAPI *p_IsDebuggerPresent)(VOID);
#endif #endif
#ifdef _arch_dreamcast #if defined (_WIN32)
#include <arch/arch.h>
KOS_INIT_FLAGS(INIT_DEFAULT
//| INIT_NET
//| INIT_MALLOCSTATS
//| INIT_QUIET
//| INIT_OCRAM
//| INIT_NO_DCLOAD
);
#endif
#if defined (_WIN32) && !defined (_XBOX) && !defined (_WIN32_WCE)
static inline VOID MakeCodeWritable(VOID) static inline VOID MakeCodeWritable(VOID)
{ {
#ifdef USEASM // Disable write-protection of code segment #ifdef USEASM // Disable write-protection of code segment
@ -136,13 +103,6 @@ static inline VOID MakeCodeWritable(VOID)
\return int \return int
*/ */
#if defined (_XBOX) && defined (__GNUC__)
void XBoxStartup()
{
const char *logdir = NULL;
myargc = -1;
myargv = NULL;
#else
#ifdef FORCESDLMAIN #ifdef FORCESDLMAIN
int SDL_main(int argc, char **argv) int SDL_main(int argc, char **argv)
#else #else
@ -152,56 +112,19 @@ int main(int argc, char **argv)
const char *logdir = NULL; const char *logdir = NULL;
myargc = argc; myargc = argc;
myargv = argv; /// \todo pull out path to exe from this string myargv = argv; /// \todo pull out path to exe from this string
#endif
#ifdef HAVE_TTF #ifdef HAVE_TTF
#ifdef _PS3 #ifdef _WIN32
// apparently there is a bug in SDL_PSL1GHT which needs this to be set to work around
SDL_setenv("SDL_VIDEODRIVER", "psl1ght", 1);
I_StartupTTF(FONTPOINTSIZE, SDL_INIT_VIDEO, SDL_SWSURFACE|SDL_DOUBLEBUF);
#elif defined(_WIN32)
I_StartupTTF(FONTPOINTSIZE, SDL_INIT_VIDEO|SDL_INIT_AUDIO, SDL_SWSURFACE); I_StartupTTF(FONTPOINTSIZE, SDL_INIT_VIDEO|SDL_INIT_AUDIO, SDL_SWSURFACE);
#else #else
I_StartupTTF(FONTPOINTSIZE, SDL_INIT_VIDEO, SDL_SWSURFACE); I_StartupTTF(FONTPOINTSIZE, SDL_INIT_VIDEO, SDL_SWSURFACE);
#endif #endif
#endif #endif
#ifdef _PS3
// initialise controllers.
//ioPadInit(7);
#endif
// init Wii-specific stuff
#ifdef _WII
// Start network
if_config(localip, netmask, gateway, TRUE);
#ifdef REMOTE_DEBUGGING
#if REMOTE_DEBUGGING == 0
DEBUG_Init(GDBSTUB_DEVICE_TCP, GDBSTUB_DEF_TCPPORT); // Port 2828
#elif REMOTE_DEBUGGING > 2
DEBUG_Init(GDBSTUB_DEVICE_TCP, REMOTE_DEBUGGING); // Custom Port
#elif REMOTE_DEBUGGING < 0
DEBUG_Init(GDBSTUB_DEVICE_USB, GDBSTUB_DEF_CHANNEL); // Slot 1
#else
DEBUG_Init(GDBSTUB_DEVICE_USB, REMOTE_DEBUGGING-1); // Custom Slot
#endif
#endif
// Start FAT filesystem
fatInitDefault();
if (getcwd(wiicwd, PATH_MAX))
I_PutEnv(va("HOME=%ssrb2wii", wiicwd));
#endif
logdir = D_Home(); logdir = D_Home();
#ifdef LOGMESSAGES #ifdef LOGMESSAGES
#if defined(_WIN32_WCE) || defined(GP2X) #ifdef DEFAULTDIR
logstream = fopen(va("%s.log",argv[0]), "wt");
#elif defined (_WII)
logstream = fopen(va("%s/log.txt",logdir), "wt");
#elif defined (DEFAULTDIR)
if (logdir) if (logdir)
logstream = fopen(va("%s/"DEFAULTDIR"/log.txt",logdir), "wt"); logstream = fopen(va("%s/"DEFAULTDIR"/log.txt",logdir), "wt");
else else
@ -211,8 +134,7 @@ int main(int argc, char **argv)
//I_OutputMsg("I_StartupSystem() ...\n"); //I_OutputMsg("I_StartupSystem() ...\n");
I_StartupSystem(); I_StartupSystem();
#if defined (_WIN32) && !defined (_XBOX) #if defined (_WIN32)
#ifndef _WIN32_WCE
{ {
#if 0 // just load the DLL #if 0 // just load the DLL
p_IsDebuggerPresent pfnIsDebuggerPresent = (p_IsDebuggerPresent)GetProcAddress(GetModuleHandleA("kernel32.dll"), "IsDebuggerPresent"); p_IsDebuggerPresent pfnIsDebuggerPresent = (p_IsDebuggerPresent)GetProcAddress(GetModuleHandleA("kernel32.dll"), "IsDebuggerPresent");
@ -226,11 +148,8 @@ int main(int argc, char **argv)
LoadLibraryA("exchndl.dll"); LoadLibraryA("exchndl.dll");
} }
} }
#endif
prevExceptionFilter = SetUnhandledExceptionFilter(RecordExceptionInfo); prevExceptionFilter = SetUnhandledExceptionFilter(RecordExceptionInfo);
#ifndef _WIN32_WCE
MakeCodeWritable(); MakeCodeWritable();
#endif
#endif #endif
// startup SRB2 // startup SRB2
CONS_Printf("Setting up SRB2...\n"); CONS_Printf("Setting up SRB2...\n");

View File

@ -26,19 +26,12 @@
#include "../config.h.in" #include "../config.h.in"
#endif #endif
#ifndef _WIN32_WCE
#include <signal.h> #include <signal.h>
#endif
#ifdef _XBOX #ifdef _WIN32
#include "SRB2XBOX/xboxhelp.h"
#endif
#if defined (_WIN32) && !defined (_XBOX)
#define RPC_NO_WINDOWS_H #define RPC_NO_WINDOWS_H
#include <windows.h> #include <windows.h>
#include "../doomtype.h" #include "../doomtype.h"
#ifndef _WIN32_WCE
typedef BOOL (WINAPI *p_GetDiskFreeSpaceExA)(LPCSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER); typedef BOOL (WINAPI *p_GetDiskFreeSpaceExA)(LPCSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER);
typedef BOOL (WINAPI *p_IsProcessorFeaturePresent) (DWORD); typedef BOOL (WINAPI *p_IsProcessorFeaturePresent) (DWORD);
typedef DWORD (WINAPI *p_timeGetTime) (void); typedef DWORD (WINAPI *p_timeGetTime) (void);
@ -46,7 +39,6 @@ typedef UINT (WINAPI *p_timeEndPeriod) (UINT);
typedef HANDLE (WINAPI *p_OpenFileMappingA) (DWORD, BOOL, LPCSTR); typedef HANDLE (WINAPI *p_OpenFileMappingA) (DWORD, BOOL, LPCSTR);
typedef LPVOID (WINAPI *p_MapViewOfFile) (HANDLE, DWORD, DWORD, DWORD, SIZE_T); typedef LPVOID (WINAPI *p_MapViewOfFile) (HANDLE, DWORD, DWORD, DWORD, SIZE_T);
#endif #endif
#endif
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
@ -59,18 +51,10 @@ typedef LPVOID (WINAPI *p_MapViewOfFile) (HANDLE, DWORD, DWORD, DWORD, SIZE_T);
#include <fcntl.h> #include <fcntl.h>
#endif #endif
#ifdef _arch_dreamcast
#include <arch/gdb.h>
#include <arch/timer.h>
#include <conio/conio.h>
#include <dc/pvr.h>
void __set_fpscr(long); // in libgcc / kernel's startup.s?
#else
#include <stdio.h> #include <stdio.h>
#if defined (_WIN32) && !defined (_WIN32_WCE) && !defined (_XBOX) #ifdef _WIN32
#include <conio.h> #include <conio.h>
#endif #endif
#endif
#ifdef _MSC_VER #ifdef _MSC_VER
#pragma warning(disable : 4214 4244) #pragma warning(disable : 4214 4244)
@ -88,15 +72,10 @@ void __set_fpscr(long); // in libgcc / kernel's startup.s?
#pragma warning(default : 4214 4244) #pragma warning(default : 4214 4244)
#endif #endif
#if SDL_VERSION_ATLEAST(1,2,7) && !defined (DC) #include "SDL_cpuinfo.h"
#include "SDL_cpuinfo.h" // 1.2.7 or greater
#define HAVE_SDLCPUINFO #define HAVE_SDLCPUINFO
#endif
#ifdef _PSP #if defined (__unix__) || defined(__APPLE__) || (defined (UNIXCOMMON) && !defined (__HAIKU__))
//#include <pspiofilemgr.h>
#elif !defined(_PS3)
#if defined (__unix__) || defined(__APPLE__) || (defined (UNIXCOMMON) && !defined (_arch_dreamcast) && !defined (__HAIKU__) && !defined (_WII))
#if defined (__linux__) #if defined (__linux__)
#include <sys/vfs.h> #include <sys/vfs.h>
#else #else
@ -111,20 +90,17 @@ void __set_fpscr(long); // in libgcc / kernel's startup.s?
#include <sys/vmmeter.h> #include <sys/vmmeter.h>
#endif #endif
#endif #endif
#endif
#ifndef _PS3 #if defined (__linux__) || (defined (UNIXCOMMON) && !defined (__HAIKU__))
#if defined (__linux__) || (defined (UNIXCOMMON) && !defined (_arch_dreamcast) && !defined (_PSP) && !defined (__HAIKU__) && !defined (_WII))
#ifndef NOTERMIOS #ifndef NOTERMIOS
#include <termios.h> #include <termios.h>
#include <sys/ioctl.h> // ioctl #include <sys/ioctl.h> // ioctl
#define HAVE_TERMIOS #define HAVE_TERMIOS
#endif #endif
#endif #endif
#endif
#ifndef NOMUMBLE #ifndef NOMUMBLE
#if defined (__linux__) && !defined(_PS3) // need -lrt #ifdef __linux__ // need -lrt
#include <sys/mman.h> #include <sys/mman.h>
#ifdef MAP_FAILED #ifdef MAP_FAILED
#define HAVE_SHM #define HAVE_SHM
@ -132,7 +108,7 @@ void __set_fpscr(long); // in libgcc / kernel's startup.s?
#include <wchar.h> #include <wchar.h>
#endif #endif
#if defined (_WIN32) && !defined (_WIN32_WCE) && !defined (_XBOX) #ifdef _WIN32
#define HAVE_MUMBLE #define HAVE_MUMBLE
#define WINMUMBLE #define WINMUMBLE
#elif defined (HAVE_SHM) #elif defined (HAVE_SHM)
@ -140,10 +116,6 @@ void __set_fpscr(long); // in libgcc / kernel's startup.s?
#endif #endif
#endif // NOMUMBLE #endif // NOMUMBLE
#ifdef _WIN32_WCE
#include "SRB2CE/cehelp.h"
#endif
#ifndef O_BINARY #ifndef O_BINARY
#define O_BINARY 0 #define O_BINARY 0
#endif #endif
@ -153,44 +125,7 @@ void __set_fpscr(long); // in libgcc / kernel's startup.s?
#endif #endif
// Locations for searching the srb2.srb // Locations for searching the srb2.srb
#ifdef _arch_dreamcast #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
#define DEFAULTWADLOCATION1 "/cd"
#define DEFAULTWADLOCATION2 "/pc"
#define DEFAULTWADLOCATION3 "/pc/home/alam/srb2code/data"
#define DEFAULTSEARCHPATH1 "/cd"
#define DEFAULTSEARCHPATH2 "/pc"
//#define DEFAULTSEARCHPATH3 "/pc/home/alam/srb2code/data"
#elif defined (GP2X)
#define DEFAULTWADLOCATION1 "/mnt/sd"
#define DEFAULTWADLOCATION2 "/mnt/sd/SRB2"
#define DEFAULTWADLOCATION3 "/tmp/mnt/sd"
#define DEFAULTWADLOCATION4 "/tmp/mnt/sd/SRB2"
#define DEFAULTSEARCHPATH1 "/mnt/sd"
#define DEFAULTSEARCHPATH2 "/tmp/mnt/sd"
#elif defined (_WII)
#define NOCWD
#define NOHOME
#define NEED_SDL_GETENV
#define DEFAULTWADLOCATION1 "sd:/srb2wii"
#define DEFAULTWADLOCATION2 "usb:/srb2wii"
#define DEFAULTSEARCHPATH1 "sd:/srb2wii"
#define DEFAULTSEARCHPATH2 "usb:/srb2wii"
// PS3: TODO: this will need modification most likely
#elif defined (_PS3)
#define NOCWD
#define NOHOME
#define DEFAULTWADLOCATION1 "/dev_hdd0/game/SRB2-PS3_/USRDIR/etc"
#define DEFAULTWADLOCATION2 "/dev_usb/SRB2PS3"
#define DEFAULTSEARCHPATH1 "/dev_hdd0/game/SRB2-PS3_/USRDIR/etc"
#define DEFAULTSEARCHPATH2 "/dev_usb/SRB2PS3"
#elif defined (_PSP)
#define NOCWD
#define NOHOME
#define DEFAULTWADLOCATION1 "host0:/bin/Resources"
#define DEFAULTWADLOCATION2 "ms0:/PSP/GAME/SRB2PSP"
#define DEFAULTSEARCHPATH1 "host0:/"
#define DEFAULTSEARCHPATH2 "ms0:/PSP/GAME/SRB2PSP"
#elif defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
#define DEFAULTWADLOCATION1 "/usr/local/share/games/SRB2" #define DEFAULTWADLOCATION1 "/usr/local/share/games/SRB2"
#define DEFAULTWADLOCATION2 "/usr/local/games/SRB2" #define DEFAULTWADLOCATION2 "/usr/local/games/SRB2"
#define DEFAULTWADLOCATION3 "/usr/share/games/SRB2" #define DEFAULTWADLOCATION3 "/usr/share/games/SRB2"
@ -198,23 +133,6 @@ void __set_fpscr(long); // in libgcc / kernel's startup.s?
#define DEFAULTSEARCHPATH1 "/usr/local/games" #define DEFAULTSEARCHPATH1 "/usr/local/games"
#define DEFAULTSEARCHPATH2 "/usr/games" #define DEFAULTSEARCHPATH2 "/usr/games"
#define DEFAULTSEARCHPATH3 "/usr/local" #define DEFAULTSEARCHPATH3 "/usr/local"
#elif defined (_XBOX)
#define NOCWD
#ifdef __GNUC__
#include <openxdk/debug.h>
#endif
#define DEFAULTWADLOCATION1 "c:\\srb2"
#define DEFAULTWADLOCATION2 "d:\\srb2"
#define DEFAULTWADLOCATION3 "e:\\srb2"
#define DEFAULTWADLOCATION4 "f:\\srb2"
#define DEFAULTWADLOCATION5 "g:\\srb2"
#define DEFAULTWADLOCATION6 "h:\\srb2"
#define DEFAULTWADLOCATION7 "i:\\srb2"
#elif defined (_WIN32_WCE)
#define NOCWD
#define NOHOME
#define DEFAULTWADLOCATION1 "\\Storage Card\\SRB2DEMO"
#define DEFAULTSEARCHPATH1 "\\Storage Card"
#elif defined (_WIN32) #elif defined (_WIN32)
#define DEFAULTWADLOCATION1 "c:\\games\\srb2" #define DEFAULTWADLOCATION1 "c:\\games\\srb2"
#define DEFAULTWADLOCATION2 "\\games\\srb2" #define DEFAULTWADLOCATION2 "\\games\\srb2"
@ -270,9 +188,6 @@ static void JoyReset(SDLJoyInfo_t *JoySet)
{ {
if (JoySet->dev) if (JoySet->dev)
{ {
#ifdef GP2X //GP2X's SDL does an illegal free on the 1st joystick...
if (SDL_JoystickIndex(JoySet->dev) != 0)
#endif
SDL_JoystickClose(JoySet->dev); SDL_JoystickClose(JoySet->dev);
} }
JoySet->dev = NULL; JoySet->dev = NULL;
@ -308,7 +223,6 @@ SDL_bool framebuffer = SDL_FALSE;
UINT8 keyboard_started = false; UINT8 keyboard_started = false;
#if !defined (DC)
FUNCNORETURN static ATTRNORETURN void signal_handler(INT32 num) FUNCNORETURN static ATTRNORETURN void signal_handler(INT32 num)
{ {
//static char msg[] = "oh no! back to reality!\r\n"; //static char msg[] = "oh no! back to reality!\r\n";
@ -362,7 +276,6 @@ FUNCNORETURN static ATTRNORETURN void quit_handler(int num)
raise(num); raise(num);
I_Quit(); I_Quit();
} }
#endif
#ifdef HAVE_TERMIOS #ifdef HAVE_TERMIOS
// TERMIOS console code from Quake3: thank you! // TERMIOS console code from Quake3: thank you!
@ -487,9 +400,7 @@ static void I_StartupConsole(void)
signal(SIGTTIN, SIG_IGN); signal(SIGTTIN, SIG_IGN);
signal(SIGTTOU, SIG_IGN); signal(SIGTTOU, SIG_IGN);
#if !defined(GP2X) //read is bad on GP2X
consolevent = !M_CheckParm("-noconsole"); consolevent = !M_CheckParm("-noconsole");
#endif
framebuffer = M_CheckParm("-framebuffer"); framebuffer = M_CheckParm("-framebuffer");
if (framebuffer) if (framebuffer)
@ -577,7 +488,7 @@ void I_GetConsoleEvents(void)
(void)d; (void)d;
} }
#elif defined (_WIN32) && !(defined (_XBOX) || defined (_WIN32_WCE)) #elif defined (_WIN32)
static BOOL I_ReadyConsole(HANDLE ci) static BOOL I_ReadyConsole(HANDLE ci)
{ {
DWORD gotinput; DWORD gotinput;
@ -716,17 +627,6 @@ static inline void I_ShutdownConsole(void){}
void I_GetConsoleEvents(void){} void I_GetConsoleEvents(void){}
static inline void I_StartupConsole(void) static inline void I_StartupConsole(void)
{ {
#ifdef _arch_dreamcast
char title[] = "SRB2 for Dreamcast!\n";
__set_fpscr(0x00040000); /* ignore FPU underflow */
//printf("\nHello world!\n\n");
pvr_init_defaults();
conio_init(CONIO_TTY_PVR, CONIO_INPUT_LINE);
conio_set_theme(CONIO_THEME_MATRIX);
conio_clear();
conio_putstr(title);
//printf("\nHello world!\n\n");
#endif
#ifdef _DEBUG #ifdef _DEBUG
consolevent = !M_CheckParm("-noconsole"); consolevent = !M_CheckParm("-noconsole");
#else #else
@ -746,7 +646,6 @@ static inline void I_ShutdownConsole(void){}
// //
void I_StartupKeyboard (void) void I_StartupKeyboard (void)
{ {
#if !defined (DC)
#ifdef SIGINT #ifdef SIGINT
signal(SIGINT , quit_handler); signal(SIGINT , quit_handler);
#endif #endif
@ -763,7 +662,6 @@ void I_StartupKeyboard (void)
signal(SIGSEGV , signal_handler); signal(SIGSEGV , signal_handler);
signal(SIGABRT , signal_handler); signal(SIGABRT , signal_handler);
signal(SIGFPE , signal_handler); signal(SIGFPE , signal_handler);
#endif
} }
// //
@ -775,10 +673,6 @@ void I_OutputMsg(const char *fmt, ...)
XBOXSTATIC char txt[8192]; XBOXSTATIC char txt[8192];
va_list argptr; va_list argptr;
#ifdef _arch_dreamcast
if (!keyboard_started) conio_printf(fmt);
#endif
va_start(argptr,fmt); va_start(argptr,fmt);
vsprintf(txt, fmt, argptr); vsprintf(txt, fmt, argptr);
va_end(argptr); va_end(argptr);
@ -788,7 +682,7 @@ void I_OutputMsg(const char *fmt, ...)
DEFAULTFONTBGR, DEFAULTFONTBGG, DEFAULTFONTBGB, DEFAULTFONTBGA, txt); DEFAULTFONTBGR, DEFAULTFONTBGG, DEFAULTFONTBGB, DEFAULTFONTBGA, txt);
#endif #endif
#if defined (_WIN32) && !defined (_XBOX) && defined (_MSC_VER) #if defined (_WIN32) && defined (_MSC_VER)
OutputDebugStringA(txt); OutputDebugStringA(txt);
#endif #endif
@ -803,7 +697,7 @@ void I_OutputMsg(const char *fmt, ...)
} }
#endif #endif
#if defined (_WIN32) && !defined (_XBOX) && !defined(_WIN32_WCE) #if defined (_WIN32)
#ifdef DEBUGFILE #ifdef DEBUGFILE
if (debugfile != stderr) if (debugfile != stderr)
#endif #endif
@ -917,22 +811,12 @@ INT32 I_GetKey (void)
// //
void I_JoyScale(void) void I_JoyScale(void)
{ {
#ifdef GP2X
if (JoyInfo.dev && SDL_JoystickIndex(JoyInfo.dev) == 0)
Joystick.bGamepadStyle = true;
else
#endif
Joystick.bGamepadStyle = cv_joyscale.value==0; Joystick.bGamepadStyle = cv_joyscale.value==0;
JoyInfo.scale = Joystick.bGamepadStyle?1:cv_joyscale.value; JoyInfo.scale = Joystick.bGamepadStyle?1:cv_joyscale.value;
} }
void I_JoyScale2(void) void I_JoyScale2(void)
{ {
#ifdef GP2X
if (JoyInfo2.dev && SDL_JoystickIndex(JoyInfo2.dev) == 0)
Joystick.bGamepadStyle = true;
else
#endif
Joystick2.bGamepadStyle = cv_joyscale2.value==0; Joystick2.bGamepadStyle = cv_joyscale2.value==0;
JoyInfo2.scale = Joystick2.bGamepadStyle?1:cv_joyscale2.value; JoyInfo2.scale = Joystick2.bGamepadStyle?1:cv_joyscale2.value;
} }
@ -1035,11 +919,6 @@ void I_GetJoystickEvents(void)
event.type = ev_keydown; event.type = ev_keydown;
else else
event.type = ev_keyup; event.type = ev_keyup;
#ifdef _PSP
if (i == 12)
event.data1 = KEY_ESCAPE;
else
#endif
event.data1 = KEY_JOY1 + i; event.data1 = KEY_JOY1 + i;
D_PostEvent(&event); D_PostEvent(&event);
} }
@ -1090,13 +969,11 @@ void I_GetJoystickEvents(void)
axisy = SDL_JoystickGetAxis(JoyInfo.dev, i*2 + 1); axisy = SDL_JoystickGetAxis(JoyInfo.dev, i*2 + 1);
else axisy = 0; else axisy = 0;
#ifdef _arch_dreamcast // -128 to 127
axisx = axisx*8; // -32768 to 32767
axisy = axisy*8;
#else // -32768 to 32767
axisx = axisx/32; axisx = axisx/32;
axisy = axisy/32; axisy = axisy/32;
#endif
if (Joystick.bGamepadStyle) if (Joystick.bGamepadStyle)
{ {
@ -1214,15 +1091,11 @@ static int joy_open(const char *fname)
if (JoyInfo.buttons > JOYBUTTONS) if (JoyInfo.buttons > JOYBUTTONS)
JoyInfo.buttons = JOYBUTTONS; JoyInfo.buttons = JOYBUTTONS;
#ifdef DC
JoyInfo.hats = 0;
#else
JoyInfo.hats = SDL_JoystickNumHats(JoyInfo.dev); JoyInfo.hats = SDL_JoystickNumHats(JoyInfo.dev);
if (JoyInfo.hats > JOYHATS) if (JoyInfo.hats > JOYHATS)
JoyInfo.hats = JOYHATS; JoyInfo.hats = JOYHATS;
JoyInfo.balls = SDL_JoystickNumBalls(JoyInfo.dev); JoyInfo.balls = SDL_JoystickNumBalls(JoyInfo.dev);
#endif
//Joystick.bGamepadStyle = !stricmp(SDL_JoystickName(JoyInfo.dev), "pad"); //Joystick.bGamepadStyle = !stricmp(SDL_JoystickName(JoyInfo.dev), "pad");
@ -1379,13 +1252,9 @@ void I_GetJoystick2Events(void)
axisy = SDL_JoystickGetAxis(JoyInfo2.dev, i*2 + 1); axisy = SDL_JoystickGetAxis(JoyInfo2.dev, i*2 + 1);
else axisy = 0; else axisy = 0;
#ifdef _arch_dreamcast // -128 to 127 // -32768 to 32767
axisx = axisx*8;
axisy = axisy*8;
#else // -32768 to 32767
axisx = axisx/32; axisx = axisx/32;
axisy = axisy/32; axisy = axisy/32;
#endif
if (Joystick2.bGamepadStyle) if (Joystick2.bGamepadStyle)
{ {
@ -1504,15 +1373,11 @@ static int joy_open2(const char *fname)
if (JoyInfo2.buttons > JOYBUTTONS) if (JoyInfo2.buttons > JOYBUTTONS)
JoyInfo2.buttons = JOYBUTTONS; JoyInfo2.buttons = JOYBUTTONS;
#ifdef DC
JoyInfo2.hats = 0;
#else
JoyInfo2.hats = SDL_JoystickNumHats(JoyInfo2.dev); JoyInfo2.hats = SDL_JoystickNumHats(JoyInfo2.dev);
if (JoyInfo2.hats > JOYHATS) if (JoyInfo2.hats > JOYHATS)
JoyInfo2.hats = JOYHATS; JoyInfo2.hats = JOYHATS;
JoyInfo2.balls = SDL_JoystickNumBalls(JoyInfo2.dev); JoyInfo2.balls = SDL_JoystickNumBalls(JoyInfo2.dev);
#endif
//Joystick.bGamepadStyle = !stricmp(SDL_JoystickName(JoyInfo2.dev), "pad"); //Joystick.bGamepadStyle = !stricmp(SDL_JoystickName(JoyInfo2.dev), "pad");
@ -1796,7 +1661,7 @@ static void I_ShutdownMouse2(void)
if (fdmouse2 != -1) close(fdmouse2); if (fdmouse2 != -1) close(fdmouse2);
mouse2_started = 0; mouse2_started = 0;
} }
#elif defined (_WIN32) && !defined (_XBOX) #elif defined (_WIN32)
static HANDLE mouse2filehandle = INVALID_HANDLE_VALUE; static HANDLE mouse2filehandle = INVALID_HANDLE_VALUE;
@ -1994,7 +1859,7 @@ void I_StartupMouse2(void)
} }
mouse2_started = 1; mouse2_started = 1;
I_AddExitFunc(I_ShutdownMouse2); I_AddExitFunc(I_ShutdownMouse2);
#elif defined (_WIN32) && !defined (_XBOX) #elif defined (_WIN32)
DCB dcb; DCB dcb;
if (mouse2filehandle != INVALID_HANDLE_VALUE) if (mouse2filehandle != INVALID_HANDLE_VALUE)
@ -2089,7 +1954,7 @@ FUNCMATH ticcmd_t *I_BaseTiccmd2(void)
return &emptycmd2; return &emptycmd2;
} }
#if (defined (_WIN32) && !defined (_WIN32_WCE)) && !defined (_XBOX) #if defined (_WIN32)
static HMODULE winmm = NULL; static HMODULE winmm = NULL;
static DWORD starttickcount = 0; // hack for win2k time bug static DWORD starttickcount = 0; // hack for win2k time bug
static p_timeGetTime pfntimeGetTime = NULL; static p_timeGetTime pfntimeGetTime = NULL;
@ -2159,13 +2024,8 @@ static void I_ShutdownTimer(void)
// //
tic_t I_GetTime (void) tic_t I_GetTime (void)
{ {
#ifdef _arch_dreamcast
static Uint64 basetime = 0;
Uint64 ticks = timer_ms_gettime64(); //using timer_ms_gettime64 instand of SDL_GetTicks for the Dreamcast
#else
static Uint32 basetime = 0; static Uint32 basetime = 0;
Uint32 ticks = SDL_GetTicks(); Uint32 ticks = SDL_GetTicks();
#endif
if (!basetime) if (!basetime)
basetime = ticks; basetime = ticks;
@ -2174,11 +2034,7 @@ tic_t I_GetTime (void)
ticks = (ticks*TICRATE); ticks = (ticks*TICRATE);
#if 0 //#ifdef _WIN32_WCE
ticks = (ticks/10);
#else
ticks = (ticks/1000); ticks = (ticks/1000);
#endif
return (tic_t)ticks; return (tic_t)ticks;
} }
@ -2189,7 +2045,7 @@ tic_t I_GetTime (void)
// //
FUNCMATH void I_StartupTimer(void) FUNCMATH void I_StartupTimer(void)
{ {
#if (defined (_WIN32) && !defined (_WIN32_WCE)) && !defined (_XBOX) #ifdef _WIN32
// for win2k time bug // for win2k time bug
if (M_CheckParm("-gettickcount")) if (M_CheckParm("-gettickcount"))
{ {
@ -2205,9 +2061,6 @@ FUNCMATH void I_StartupTimer(void)
pfntimeGetTime = (p_timeGetTime)GetProcAddress(winmm, "timeGetTime"); pfntimeGetTime = (p_timeGetTime)GetProcAddress(winmm, "timeGetTime");
} }
I_AddExitFunc(I_ShutdownTimer); I_AddExitFunc(I_ShutdownTimer);
#elif 0 //#elif !defined (_arch_dreamcast) && !defined(GP2X) // the DC have it own timer and GP2X have broken pthreads?
if (SDL_InitSubSystem(SDL_INIT_TIMER) < 0)
I_Error("SRB2: Needs SDL_Timer, Error: %s", SDL_GetError());
#endif #endif
} }
@ -2215,35 +2068,14 @@ FUNCMATH void I_StartupTimer(void)
void I_Sleep(void) void I_Sleep(void)
{ {
#if !(defined (_arch_dreamcast) || defined (_XBOX))
if (cv_sleep.value != -1) if (cv_sleep.value != -1)
SDL_Delay(cv_sleep.value); SDL_Delay(cv_sleep.value);
#endif
} }
INT32 I_StartupSystem(void) INT32 I_StartupSystem(void)
{ {
SDL_version SDLcompiled; SDL_version SDLcompiled;
SDL_version SDLlinked; SDL_version SDLlinked;
#ifdef _XBOX
#ifdef __GNUC__
char DP[] =" Sonic Robo Blast 2!\n";
debugPrint(DP);
#endif
unlink("e:/Games/SRB2/stdout.txt");
freopen("e:/Games/SRB2/stdout.txt", "w+", stdout);
unlink("e:/Games/SRB2/stderr.txt");
freopen("e:/Games/SRB2/stderr.txt", "w+", stderr);
#endif
#ifdef _arch_dreamcast
#ifdef _DEBUG
//gdb_init();
#endif
printf(__FILE__":%i\n",__LINE__);
#ifdef _DEBUG
//gdb_breakpoint();
#endif
#endif
SDL_VERSION(&SDLcompiled) SDL_VERSION(&SDLcompiled)
SDL_GetVersion(&SDLlinked); SDL_GetVersion(&SDLlinked);
I_StartupConsole(); I_StartupConsole();
@ -2251,11 +2083,7 @@ INT32 I_StartupSystem(void)
SDLcompiled.major, SDLcompiled.minor, SDLcompiled.patch); SDLcompiled.major, SDLcompiled.minor, SDLcompiled.patch);
I_OutputMsg("Linked with SDL version: %d.%d.%d\n", I_OutputMsg("Linked with SDL version: %d.%d.%d\n",
SDLlinked.major, SDLlinked.minor, SDLlinked.patch); SDLlinked.major, SDLlinked.minor, SDLlinked.patch);
#if 0 //#ifdef GP2X //start up everything if (SDL_Init(0) < 0)
if (SDL_Init(SDL_INIT_NOPARACHUTE|SDL_INIT_EVERYTHING) < 0)
#else
if (SDL_Init(SDL_INIT_NOPARACHUTE) < 0)
#endif
I_Error("SRB2: SDL System Error: %s", SDL_GetError()); //Alam: Oh no.... I_Error("SRB2: SDL System Error: %s", SDL_GetError()); //Alam: Oh no....
#ifndef NOMUMBLE #ifndef NOMUMBLE
I_SetupMumble(); I_SetupMumble();
@ -2297,9 +2125,7 @@ void I_Quit(void)
I_ShutdownGraphics(); I_ShutdownGraphics();
I_ShutdownInput(); I_ShutdownInput();
I_ShutdownSystem(); I_ShutdownSystem();
#ifndef _arch_dreamcast
SDL_Quit(); SDL_Quit();
#endif
/* if option -noendtxt is set, don't print the text */ /* if option -noendtxt is set, don't print the text */
if (!M_CheckParm("-noendtxt") && W_CheckNumForName("ENDOOM") != LUMPERROR) if (!M_CheckParm("-noendtxt") && W_CheckNumForName("ENDOOM") != LUMPERROR)
{ {
@ -2308,10 +2134,6 @@ void I_Quit(void)
} }
death: death:
W_Shutdown(); W_Shutdown();
#ifdef GP2X
chdir("/usr/gp2x");
execl("/usr/gp2x/gp2xmenu", "/usr/gp2x/gp2xmenu", NULL);
#endif
exit(0); exit(0);
} }
@ -2364,10 +2186,8 @@ void I_Error(const char *error, ...)
I_ShutdownInput(); I_ShutdownInput();
if (errorcount == 7) if (errorcount == 7)
I_ShutdownSystem(); I_ShutdownSystem();
#ifndef _arch_dreamcast
if (errorcount == 8) if (errorcount == 8)
SDL_Quit(); SDL_Quit();
#endif
if (errorcount == 9) if (errorcount == 9)
{ {
M_SaveConfig(NULL); M_SaveConfig(NULL);
@ -2386,12 +2206,6 @@ void I_Error(const char *error, ...)
buffer, NULL); buffer, NULL);
W_Shutdown(); W_Shutdown();
#ifdef GP2X
chdir("/usr/gp2x");
execl("/usr/gp2x/gp2xmenu", "/usr/gp2x/gp2xmenu", NULL);
#endif
exit(-1); // recursive errors detected exit(-1); // recursive errors detected
} }
} }
@ -2427,9 +2241,7 @@ void I_Error(const char *error, ...)
I_ShutdownGraphics(); I_ShutdownGraphics();
I_ShutdownInput(); I_ShutdownInput();
I_ShutdownSystem(); I_ShutdownSystem();
#ifndef _arch_dreamcast
SDL_Quit(); SDL_Quit();
#endif
// Implement message box with SDL_ShowSimpleMessageBox, // Implement message box with SDL_ShowSimpleMessageBox,
// which should fail gracefully if it can't put a message box up // which should fail gracefully if it can't put a message box up
@ -2449,11 +2261,6 @@ void I_Error(const char *error, ...)
*(INT32 *)2 = 4; //Alam: Debug! *(INT32 *)2 = 4; //Alam: Debug!
#endif #endif
#ifdef GP2X
chdir("/usr/gp2x");
execl("/usr/gp2x/gp2xmenu", "/usr/gp2x/gp2xmenu", NULL);
#endif
exit(-1); exit(-1);
} }
@ -2516,7 +2323,7 @@ void I_ShutdownSystem(void)
for (c = MAX_QUIT_FUNCS-1; c >= 0; c--) for (c = MAX_QUIT_FUNCS-1; c >= 0; c--)
if (quit_funcs[c]) if (quit_funcs[c])
(*quit_funcs[c])(); (*quit_funcs[c])();
#ifdef LOGMESSAGES #ifdef LOGMESSAGES
if (logstream) if (logstream)
{ {
I_OutputMsg("I_ShutdownSystem(): end of logstream.\n"); I_OutputMsg("I_ShutdownSystem(): end of logstream.\n");
@ -2529,10 +2336,8 @@ void I_ShutdownSystem(void)
void I_GetDiskFreeSpace(INT64 *freespace) void I_GetDiskFreeSpace(INT64 *freespace)
{ {
#if defined (_arch_dreamcast) || defined (_PSP) #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
*freespace = 0; #if defined (SOLARIS) || defined (__HAIKU__)
#elif defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
#if defined (SOLARIS) || defined (__HAIKU__) || defined (_WII) || defined (_PS3)
*freespace = INT32_MAX; *freespace = INT32_MAX;
return; return;
#else // Both Linux and BSD have this, apparently. #else // Both Linux and BSD have this, apparently.
@ -2544,7 +2349,7 @@ void I_GetDiskFreeSpace(INT64 *freespace)
} }
*freespace = stfs.f_bavail * stfs.f_bsize; *freespace = stfs.f_bavail * stfs.f_bsize;
#endif #endif
#elif (defined (_WIN32) && !defined (_WIN32_WCE)) && !defined (_XBOX) #elif defined (_WIN32)
static p_GetDiskFreeSpaceExA pfnGetDiskFreeSpaceEx = NULL; static p_GetDiskFreeSpaceExA pfnGetDiskFreeSpaceEx = NULL;
static boolean testwin95 = false; static boolean testwin95 = false;
ULARGE_INTEGER usedbytes, lfreespace; ULARGE_INTEGER usedbytes, lfreespace;
@ -2575,13 +2380,6 @@ void I_GetDiskFreeSpace(INT64 *freespace)
char *I_GetUserName(void) char *I_GetUserName(void)
{ {
#ifdef GP2X
static char username[MAXPLAYERNAME] = "GP2XUSER";
return username;
#elif defined (PSP)
static char username[MAXPLAYERNAME] = "PSPUSER";
return username;
#elif !(defined (_WIN32_WCE) || defined (_XBOX))
static char username[MAXPLAYERNAME]; static char username[MAXPLAYERNAME];
char *p; char *p;
#ifdef _WIN32 #ifdef _WIN32
@ -2613,7 +2411,6 @@ char *I_GetUserName(void)
if (strcmp(username, "") != 0) if (strcmp(username, "") != 0)
return username; return username;
#endif
return NULL; // dummy for platform independent version return NULL; // dummy for platform independent version
} }
@ -2622,7 +2419,7 @@ INT32 I_mkdir(const char *dirname, INT32 unixright)
//[segabor] //[segabor]
#if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON) || defined (__CYGWIN__) || defined (__OS2__) #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON) || defined (__CYGWIN__) || defined (__OS2__)
return mkdir(dirname, unixright); return mkdir(dirname, unixright);
#elif (defined (_WIN32) || (defined (_WIN32_WCE) && !defined (__GNUC__))) && !defined (_XBOX) #elif defined (_WIN32)
UNREFERENCED_PARAMETER(unixright); /// \todo should implement ntright under nt... UNREFERENCED_PARAMETER(unixright); /// \todo should implement ntright under nt...
return CreateDirectoryA(dirname, NULL); return CreateDirectoryA(dirname, NULL);
#else #else
@ -2636,9 +2433,6 @@ char *I_GetEnv(const char *name)
{ {
#ifdef NEED_SDL_GETENV #ifdef NEED_SDL_GETENV
return SDL_getenv(name); return SDL_getenv(name);
#elif defined(_WIN32_WCE)
(void)name;
return NULL;
#else #else
return getenv(name); return getenv(name);
#endif #endif
@ -2648,8 +2442,6 @@ INT32 I_PutEnv(char *variable)
{ {
#ifdef NEED_SDL_GETENV #ifdef NEED_SDL_GETENV
return SDL_putenv(variable); return SDL_putenv(variable);
#elif defined(_WIN32_WCE)
return ((variable)?-1:0);
#else #else
return putenv(variable); return putenv(variable);
#endif #endif
@ -2789,15 +2581,6 @@ static const char *locateWad(void)
if (((envstr = I_GetEnv("SRB2WADDIR")) != NULL) && isWadPathOk(envstr)) if (((envstr = I_GetEnv("SRB2WADDIR")) != NULL) && isWadPathOk(envstr))
return envstr; return envstr;
#if defined(_WIN32_WCE) || defined(_PS3) || defined(_PSP)
// examine argv[0]
strcpy(returnWadPath, myargv[0]);
pathonly(returnWadPath);
I_PutEnv(va("HOME=%s",returnWadPath));
if (isWadPathOk(returnWadPath))
return returnWadPath;
#endif
#ifndef NOCWD #ifndef NOCWD
I_OutputMsg(",."); I_OutputMsg(",.");
// examine current dir // examine current dir
@ -2916,9 +2699,9 @@ const char *I_LocateWad(void)
if (waddir) if (waddir)
{ {
// change to the directory where we found srb2.srb // change to the directory where we found srb2.srb
#if (defined (_WIN32) && !defined (_WIN32_WCE)) && !defined (_XBOX) #if defined (_WIN32)
SetCurrentDirectoryA(waddir); SetCurrentDirectoryA(waddir);
#elif !defined (_WIN32_WCE) && !defined (_PS3) #else
if (chdir(waddir) == -1) if (chdir(waddir) == -1)
I_OutputMsg("Couldn't change working directory\n"); I_OutputMsg("Couldn't change working directory\n");
#endif #endif
@ -2935,17 +2718,7 @@ const char *I_LocateWad(void)
// quick fix for compil // quick fix for compil
UINT32 I_GetFreeMem(UINT32 *total) UINT32 I_GetFreeMem(UINT32 *total)
{ {
#if defined (_arch_dreamcast) #ifdef FREEBSD
//Dreamcast!
if (total)
*total = 16<<20;
return 8<<20;
#elif defined (_PSP)
// PSP
if (total)
*total = 32<<20;
return 16<<20;
#elif defined (FREEBSD)
struct vmmeter sum; struct vmmeter sum;
kvm_t *kd; kvm_t *kd;
struct nlist namelist[] = struct nlist namelist[] =
@ -2982,7 +2755,7 @@ UINT32 I_GetFreeMem(UINT32 *total)
if (total) if (total)
*total = 32 << 20; *total = 32 << 20;
return 32 << 20; return 32 << 20;
#elif (defined (_WIN32) || (defined (_WIN32_WCE) && !defined (__GNUC__))) && !defined (_XBOX) #elif defined (_WIN32)
MEMORYSTATUS info; MEMORYSTATUS info;
info.dwLength = sizeof (MEMORYSTATUS); info.dwLength = sizeof (MEMORYSTATUS);
@ -3054,7 +2827,7 @@ UINT32 I_GetFreeMem(UINT32 *total)
const CPUInfoFlags *I_CPUInfo(void) const CPUInfoFlags *I_CPUInfo(void)
{ {
#if (defined (_WIN32) && !defined (_WIN32_WCE)) && !defined (_XBOX) #if defined (_WIN32)
static CPUInfoFlags WIN_CPUInfo; static CPUInfoFlags WIN_CPUInfo;
SYSTEM_INFO SI; SYSTEM_INFO SI;
p_IsProcessorFeaturePresent pfnCPUID = (p_IsProcessorFeaturePresent)GetProcAddress(GetModuleHandleA("kernel32.dll"), "IsProcessorFeaturePresent"); p_IsProcessorFeaturePresent pfnCPUID = (p_IsProcessorFeaturePresent)GetProcAddress(GetModuleHandleA("kernel32.dll"), "IsProcessorFeaturePresent");

View File

@ -26,10 +26,7 @@
#include "i_ttf.h" #include "i_ttf.h"
// Search directories to find aforementioned TTF file. // Search directories to find aforementioned TTF file.
#ifdef _PS3 #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
#include <sysutil/video.h>
#define FONTSEARCHPATH1 "/dev_hdd0/game/SRB2-PS3_/USRDIR/etc"
#elif defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
#define FONTSEARCHPATH1 "/usr/share/fonts" #define FONTSEARCHPATH1 "/usr/share/fonts"
#define FONTSEARCHPATH2 "/usr/local/share/fonts" #define FONTSEARCHPATH2 "/usr/local/share/fonts"
#define FONTSEARCHPATH3 "/usr/games/SRB2" #define FONTSEARCHPATH3 "/usr/games/SRB2"
@ -233,16 +230,9 @@ void I_StartupTTF(UINT32 fontpointsize, Uint32 initflags, Uint32 vidmodeflags)
{ {
char *fontpath = NULL; char *fontpath = NULL;
INT32 fontstatus = -1; INT32 fontstatus = -1;
#ifdef _PS3
videoState state;
videoGetState(0, 0, &state);
videoGetResolution(state.displayMode.resolution, &res);
bitsperpixel = 24;
#else
res.width = 320; res.width = 320;
res.height = 200; res.height = 200;
bitsperpixel = 8; bitsperpixel = 8;
#endif
// what's the point of trying to display an error? // what's the point of trying to display an error?
// SDL_ttf is not started, can't display anything to screen (presumably)... // SDL_ttf is not started, can't display anything to screen (presumably)...

View File

@ -57,13 +57,12 @@ int currentfonthinting;
int currentfontoutline; int currentfontoutline;
#endif #endif
#ifndef _PS3
typedef struct typedef struct
{ {
UINT16 width; UINT16 width;
UINT16 height; UINT16 height;
} VideoResolution; } VideoResolution;
#endif
UINT8 bitsperpixel; UINT8 bitsperpixel;
typedef enum typedef enum

View File

@ -47,7 +47,7 @@
#include "../doomdef.h" #include "../doomdef.h"
#if defined (_WIN32) #ifdef _WIN32
#include "SDL_syswm.h" #include "SDL_syswm.h"
#endif #endif
@ -941,6 +941,7 @@ static inline boolean I_SkipFrame(void)
case GS_LEVEL: case GS_LEVEL:
if (!paused) if (!paused)
return false; return false;
/* FALLTHRU */
//case GS_TIMEATTACK: -- sorry optimisation but now we have a cool level platter and that being laggardly looks terrible //case GS_TIMEATTACK: -- sorry optimisation but now we have a cool level platter and that being laggardly looks terrible
case GS_WAITINGPLAYERS: case GS_WAITINGPLAYERS:
return skip; // Skip odd frames return skip; // Skip odd frames

View File

@ -43,12 +43,10 @@
#define HAVE_ZLIB #define HAVE_ZLIB
#ifndef _MSC_VER #ifndef _MSC_VER
#ifndef _WII
#ifndef _LARGEFILE64_SOURCE #ifndef _LARGEFILE64_SOURCE
#define _LARGEFILE64_SOURCE #define _LARGEFILE64_SOURCE
#endif #endif
#endif #endif
#endif
#ifndef _LFS64_LARGEFILE #ifndef _LFS64_LARGEFILE
#define _LFS64_LARGEFILE #define _LFS64_LARGEFILE

View File

@ -49,7 +49,7 @@
#define MIX_CHANNELS 8 #define MIX_CHANNELS 8
#endif #endif
#if defined (_WIN32) && !defined (_WIN32_WCE) && !defined (_XBOX) #ifdef _WIN32
#include <direct.h> #include <direct.h>
#elif defined (__GNUC__) #elif defined (__GNUC__)
#include <unistd.h> #include <unistd.h>
@ -85,21 +85,11 @@
// mixing buffer, and the samplerate of the raw data. // mixing buffer, and the samplerate of the raw data.
// Needed for calling the actual sound output. // Needed for calling the actual sound output.
#if defined (_WIN32_WCE) || defined (DC) || defined (PSP) || defined(GP2X)
#define NUM_CHANNELS MIX_CHANNELS
#else
#define NUM_CHANNELS MIX_CHANNELS*4 #define NUM_CHANNELS MIX_CHANNELS*4
#endif
#define INDEXOFSFX(x) ((sfxinfo_t *)x - S_sfx) #define INDEXOFSFX(x) ((sfxinfo_t *)x - S_sfx)
#if defined (_WIN32_WCE) || defined (DC) || defined (PSP)
static Uint16 samplecount = 512; //Alam: .5KB samplecount at 11025hz is 46.439909297052154195011337868481ms of buffer
#elif defined(GP2X)
static Uint16 samplecount = 128;
#else
static Uint16 samplecount = 1024; //Alam: 1KB samplecount at 22050hz is 46.439909297052154195011337868481ms of buffer static Uint16 samplecount = 1024; //Alam: 1KB samplecount at 22050hz is 46.439909297052154195011337868481ms of buffer
#endif
typedef struct chan_struct typedef struct chan_struct
{ {
@ -151,17 +141,10 @@ static SDL_bool musicStarted = SDL_FALSE;
#ifdef HAVE_MIXER #ifdef HAVE_MIXER
static SDL_mutex *Msc_Mutex = NULL; static SDL_mutex *Msc_Mutex = NULL;
/* FIXME: Make this file instance-specific */ /* FIXME: Make this file instance-specific */
#ifdef _arch_dreamcast
#define MIDI_PATH "/ram"
#elif defined(GP2X)
#define MIDI_PATH "/mnt/sd/srb2"
#define MIDI_PATH2 "/tmp/mnt/sd/srb2"
#else
#define MIDI_PATH srb2home #define MIDI_PATH srb2home
#if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON) #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
#define MIDI_PATH2 "/tmp" #define MIDI_PATH2 "/tmp"
#endif #endif
#endif
#define MIDI_TMPFILE "srb2music" #define MIDI_TMPFILE "srb2music"
#define MIDI_TMPFILE2 "srb2wav" #define MIDI_TMPFILE2 "srb2wav"
static INT32 musicvol = 62; static INT32 musicvol = 62;
@ -176,7 +159,7 @@ static SDL_bool canlooping = SDL_TRUE;
#if SDL_MIXER_VERSION_ATLEAST(1,2,7) #if SDL_MIXER_VERSION_ATLEAST(1,2,7)
#define USE_RWOPS // ok, USE_RWOPS is in here #define USE_RWOPS // ok, USE_RWOPS is in here
#if defined (DC) || defined (_WIN32_WCE) || defined (_XBOX) //|| defined(_WIN32) || defined(GP2X) #if 0 // defined(_WIN32)
#undef USE_RWOPS #undef USE_RWOPS
#endif #endif
#endif #endif
@ -1188,13 +1171,6 @@ void I_StartupSound(void)
#endif #endif
#ifndef HAVE_MIXER #ifndef HAVE_MIXER
nomidimusic = nodigimusic = true; nomidimusic = nodigimusic = true;
#endif
#ifdef DC
//nosound = true;
#ifdef HAVE_MIXER
nomidimusic = true;
nodigimusic = true;
#endif
#endif #endif
memset(channels, 0, sizeof (channels)); //Alam: Clean it memset(channels, 0, sizeof (channels)); //Alam: Clean it
@ -1243,13 +1219,7 @@ void I_StartupSound(void)
audio.samples /= 2; audio.samples /= 2;
} }
#if defined (_PSP) && defined (HAVE_MIXER) // Bug in PSP's SDL_OpenAudio, can not open twice
I_SetChannels();
sound_started = true;
Snd_Mutex = SDL_CreateMutex();
#else
if (nosound) if (nosound)
#endif
return; return;
#ifdef HW3SOUND #ifdef HW3SOUND
@ -1302,7 +1272,7 @@ void I_StartupSound(void)
snddev.bps = 16; snddev.bps = 16;
snddev.sample_rate = audio.freq; snddev.sample_rate = audio.freq;
snddev.numsfxs = NUMSFX; snddev.numsfxs = NUMSFX;
#if defined (_WIN32) && !defined (_XBOX) #if defined (_WIN32)
snddev.cooplevel = 0x00000002; snddev.cooplevel = 0x00000002;
snddev.hWnd = vid.WndParent; snddev.hWnd = vid.WndParent;
#endif #endif
@ -1520,9 +1490,7 @@ void I_InitMusic(void)
I_OutputMsg("Compiled for SDL_mixer version: %d.%d.%d\n", I_OutputMsg("Compiled for SDL_mixer version: %d.%d.%d\n",
MIXcompiled.major, MIXcompiled.minor, MIXcompiled.patch); MIXcompiled.major, MIXcompiled.minor, MIXcompiled.patch);
#ifdef MIXER_POS #ifdef MIXER_POS
#ifndef _WII
if (MIXlinked->major == 1 && MIXlinked->minor == 2 && MIXlinked->patch < 7) if (MIXlinked->major == 1 && MIXlinked->minor == 2 && MIXlinked->patch < 7)
#endif
canlooping = SDL_FALSE; canlooping = SDL_FALSE;
#endif #endif
#ifdef USE_RWOPS #ifdef USE_RWOPS
@ -1531,13 +1499,11 @@ void I_InitMusic(void)
#endif #endif
I_OutputMsg("Linked with SDL_mixer version: %d.%d.%d\n", I_OutputMsg("Linked with SDL_mixer version: %d.%d.%d\n",
MIXlinked->major, MIXlinked->minor, MIXlinked->patch); MIXlinked->major, MIXlinked->minor, MIXlinked->patch);
#if !(defined (DC) || defined (PSP) || defined(GP2X) || defined (WII))
if (audio.freq < 44100 && !M_CheckParm ("-freq")) //I want atleast 44Khz if (audio.freq < 44100 && !M_CheckParm ("-freq")) //I want atleast 44Khz
{ {
audio.samples = (Uint16)(audio.samples*(INT32)(44100/audio.freq)); audio.samples = (Uint16)(audio.samples*(INT32)(44100/audio.freq));
audio.freq = 44100; //Alam: to keep it around the same XX ms audio.freq = 44100; //Alam: to keep it around the same XX ms
} }
#endif
if (sound_started if (sound_started
#ifdef HW3SOUND #ifdef HW3SOUND
@ -1929,7 +1895,7 @@ boolean I_StartDigSong(const char *musicname, boolean looping)
if (loopstart > 0) if (loopstart > 0)
{ {
loopstartDig = (double)((44.1l+loopstart) / 44100.0l); //8 PCM chucks off and PCM to secs loopstartDig = (double)((44.1l+loopstart) / 44100.0l); //8 PCM chucks off and PCM to secs
//#ifdef GP2X//#ifdef PARANOIA //#ifdef PARANOIA
//I_OutputMsg("I_StartDigSong: setting looping point to %ul PCMs(%f seconds)\n", loopstart, loopstartDig); //I_OutputMsg("I_StartDigSong: setting looping point to %ul PCMs(%f seconds)\n", loopstart, loopstartDig);
//#endif //#endif
} }

View File

@ -1,5 +1,5 @@
# #
# sdl/makeCYG.cfg for SRB2/Cygwin # sdl12/makeCYG.cfg for SRB2/Cygwin
# #
# #

View File

@ -1,5 +1,5 @@
# #
# sdl/makeNIX.cfg for SRB2/?nix # sdl12/makeNIX.cfg for SRB2/?nix
# #
#Valgrind support #Valgrind support

View File

@ -1,5 +1,5 @@
# #
# sdl/makefile.cfg for SRB2/SDL # sdl12/makefile.cfg for SRB2/SDL
# #
# #
@ -7,35 +7,35 @@
# #
ifdef UNIXCOMMON ifdef UNIXCOMMON
include sdl/MakeNIX.cfg include sdl12/MakeNIX.cfg
endif endif
ifdef PANDORA ifdef PANDORA
include sdl/SRB2Pandora/Makefile.cfg include sdl12/SRB2Pandora/Makefile.cfg
endif #ifdef PANDORA endif #ifdef PANDORA
ifdef DC ifdef DC
include sdl/SRB2DC/Makefile.cfg include sdl12/SRB2DC/Makefile.cfg
endif #ifdef DC endif #ifdef DC
ifdef PS3N ifdef PS3N
include sdl/SRB2PS3/Makefile.cfg include sdl12/SRB2PS3/Makefile.cfg
endif #ifdef PS3N endif #ifdef PS3N
ifdef PSP ifdef PSP
include sdl/SRB2PSP/Makefile.cfg include sdl12/SRB2PSP/Makefile.cfg
endif #ifdef PSP endif #ifdef PSP
ifdef XBOX ifdef XBOX
include sdl/SRB2XBOX/Makefile.cfg include sdl12/SRB2XBOX/Makefile.cfg
endif #ifdef XBOX endif #ifdef XBOX
ifdef WINCE ifdef WINCE
include sdl/SRB2CE/Makefile.cfg include sdl12/SRB2CE/Makefile.cfg
endif #ifef WINCE endif #ifef WINCE
ifdef CYGWIN32 ifdef CYGWIN32
include sdl/MakeCYG.cfg include sdl12/MakeCYG.cfg
endif #ifdef CYGWIN32 endif #ifdef CYGWIN32
ifdef SDL_PKGCONFIG ifdef SDL_PKGCONFIG
@ -151,7 +151,7 @@ endif
# FIXME: DevkitPPC and ready-compiled SDL Wii require these things to be in a silly order # FIXME: DevkitPPC and ready-compiled SDL Wii require these things to be in a silly order
ifdef WII ifdef WII
include sdl/SRB2WII/Makefile.cfg include sdl12/SRB2WII/Makefile.cfg
endif #ifdef WII endif #ifdef WII
CFLAGS+=$(SDL_CFLAGS) CFLAGS+=$(SDL_CFLAGS)

View File

@ -27,10 +27,10 @@ PKGNAME?=SRB2PS3.pkg
endif endif
DGBNAME?=$(EXENAME).debug DGBNAME?=$(EXENAME).debug
SRB2PS3DIR=sdl/SRB2PS3 SRB2PS3DIR=sdl12/SRB2PS3
ICON0?=$(SRB2PS3DIR)/ICON0.png ICON0?=$(SRB2PS3DIR)/ICON0.png
SFOXML?=sfo.xml SFOXML?=sfo.xml
SRB2TTF?=sdl/srb2.ttf SRB2TTF?=sdl12/srb2.ttf
TITLE=Sonic Robo Blast 2 v2.0.6 TITLE=Sonic Robo Blast 2 v2.0.6
APPID=SRB2-PS3 APPID=SRB2-PS3

View File

@ -36,14 +36,14 @@ endif
PSP_EBOOT_TITLE=SRB2-PSP vME PSP_EBOOT_TITLE=SRB2-PSP vME
PSP_EBOOT_SFO=$(BIN)/PARAM.SFO PSP_EBOOT_SFO=$(BIN)/PARAM.SFO
PSP_EBOOT_ICON=sdl/SRB2PSP/ICON0.png PSP_EBOOT_ICON=sdl12/SRB2PSP/ICON0.png
PSP_EBOOT_ICON1=NULL PSP_EBOOT_ICON1=NULL
PSP_EBOOT_UNKPNG=NULL PSP_EBOOT_UNKPNG=NULL
PSP_EBOOT_PIC1=sdl/SRB2PSP/PIC1.png PSP_EBOOT_PIC1=sdl12/SRB2PSP/PIC1.png
PSP_EBOOT_SND0=NULL PSP_EBOOT_SND0=NULL
PSP_EBOOT_PSAR=NULL PSP_EBOOT_PSAR=NULL
SIGNER?=sdl/SRB2PSP/psp-prxsign/psp-prxsign SIGNER?=sdl12/SRB2PSP/psp-prxsign/psp-prxsign
SDL=1 SDL=1
PREFIX=psp PREFIX=psp
@ -100,8 +100,8 @@ kxploit: $(BIN)/$(EXENAME) $(PSP_EBOOT_SFO)
$(PSP_EBOOT_ICON1) $(PSP_EBOOT_UNKPNG) $(PSP_EBOOT_PIC1) \ $(PSP_EBOOT_ICON1) $(PSP_EBOOT_UNKPNG) $(PSP_EBOOT_PIC1) \
$(PSP_EBOOT_SND0) NULL $(PSP_EBOOT_PSAR) $(PSP_EBOOT_SND0) NULL $(PSP_EBOOT_PSAR)
sdl/SRB2PSP/psp-prxsign/psp-prxsign: sdl12/SRB2PSP/psp-prxsign/psp-prxsign:
-$(MAKE) -C sdl/SRB2PSP/psp-prxsign CFLAGS=-pipe CC="$(HOSTCC)" -$(MAKE) -C sdl12/SRB2PSP/psp-prxsign CFLAGS=-pipe CC="$(HOSTCC)"
fix-up: $(BIN)/$(EXENAME) fix-up: $(BIN)/$(EXENAME)
@echo Running psp-fixup-imports on $(EXENAME) @echo Running psp-fixup-imports on $(EXENAME)

View File

@ -2,8 +2,8 @@
PNDNAME=SRB2.pnd PNDNAME=SRB2.pnd
PNDDIR=$(BIN)/pnd PNDDIR=$(BIN)/pnd
ICON=sdl/SRB2Pandora/icon.png ICON=sdl12/SRB2Pandora/icon.png
PXML=sdl/SRB2Pandora/PXML.xml PXML=sdl12/SRB2Pandora/PXML.xml
SED=sed SED=sed
CAT=cat CAT=cat

View File

@ -16,8 +16,8 @@ EXENAME?=$(SRB2NAME).elf
DBGNAME?=$(SRB2NAME).elf.debug DBGNAME?=$(SRB2NAME).elf.debug
DOLNAME?=$(SRB2NAME).dol DOLNAME?=$(SRB2NAME).dol
ICONPNG?=sdl/SRB2WII/icon.png ICONPNG?=sdl12/SRB2WII/icon.png
METAXML?=sdl/SRB2WII/meta.xml METAXML?=sdl12/SRB2WII/meta.xml
APPDIR=apps/$(SRB2NAME) APPDIR=apps/$(SRB2NAME)
ZIPNAME=$(SRB2NAME).zip ZIPNAME=$(SRB2NAME).zip

View File

@ -486,7 +486,7 @@ void S_InitRuntimeSounds (void)
{ {
sfxenum_t i; sfxenum_t i;
INT32 value; INT32 value;
char soundname[7]; char soundname[10];
for (i = sfx_freeslot0; i <= sfx_lastskinsoundslot; i++) for (i = sfx_freeslot0; i <= sfx_lastskinsoundslot; i++)
{ {

View File

@ -2066,7 +2066,7 @@ static void ST_overlayDrawer(void)
V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132)-(splitscreen ? 12 : 0), V_HUDTRANSHALF, M_GetText("You'll steal a life on respawn.")); V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132)-(splitscreen ? 12 : 0), V_HUDTRANSHALF, M_GetText("You'll steal a life on respawn."));
} }
} }
else if (!gametype == GT_COOP) else if (gametype != GT_COOP)
V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), V_HUDTRANSHALF, M_GetText("Press Fire to enter the game.")); V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), V_HUDTRANSHALF, M_GetText("Press Fire to enter the game."));
if (!splitscreen) if (!splitscreen)
{ {

View File

@ -1308,6 +1308,7 @@ char *V_WordWrap(INT32 x, INT32 w, INT32 option, const char *string)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 8; spacewidth = 8;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 8; charwidth = 8;
break; break;
@ -1389,6 +1390,7 @@ void V_DrawString(INT32 x, INT32 y, INT32 option, const char *string)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 8; spacewidth = 8;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 8; charwidth = 8;
break; break;
@ -1502,6 +1504,7 @@ void V_DrawSmallString(INT32 x, INT32 y, INT32 option, const char *string)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 4; spacewidth = 4;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 4; charwidth = 4;
break; break;
@ -1607,6 +1610,7 @@ void V_DrawThinString(INT32 x, INT32 y, INT32 option, const char *string)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 5; spacewidth = 5;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 5; charwidth = 5;
break; break;
@ -1704,6 +1708,7 @@ void V_DrawStringAtFixed(fixed_t x, fixed_t y, INT32 option, const char *string)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 8; spacewidth = 8;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 8; charwidth = 8;
break; break;
@ -1988,6 +1993,7 @@ INT32 V_StringWidth(const char *string, INT32 option)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 8; spacewidth = 8;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 8; charwidth = 8;
break; break;
@ -2029,6 +2035,7 @@ INT32 V_SmallStringWidth(const char *string, INT32 option)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 4; spacewidth = 4;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 4; charwidth = 4;
break; break;
@ -2067,6 +2074,7 @@ INT32 V_ThinStringWidth(const char *string, INT32 option)
{ {
case V_MONOSPACE: case V_MONOSPACE:
spacewidth = 5; spacewidth = 5;
/* FALLTHRU */
case V_OLDSPACING: case V_OLDSPACING:
charwidth = 5; charwidth = 5;
break; break;

Some files were not shown because too many files have changed in this diff Show More