Commit Graph

199 Commits

Author SHA1 Message Date
ptitSeb
19bd3f733b Use SDL constants for mouse buttons 2016-04-07 10:45:45 +02:00
ptitSeb
0c16613056 Fix a nasty typo 2016-04-07 09:10:09 +02:00
ptitSeb
3ec4d484e2 Fix for 64bits build 2016-04-07 09:09:51 +02:00
Ryan C. Gordon
239b9c7992 Patched to compile. 2016-04-07 00:21:28 -04:00
Alexander Pavlov
6b9ebc3ccb Update GameAgent for Linuxport. 2016-04-06 23:31:08 -04:00
Ryan C. Gordon
e2e6f41582 Merge branch 'master' of git://github.com/ptitSeb/Serious-Engine into ptitSeb-master
Conflicts:
	Sources/Engine/Math/Float.cpp
2016-04-06 23:27:55 -04:00
Ryan C. Gordon
9820436fbe First pass at cleaning out 64-bit issues.
Touches a lot of code to remove long constants like "1L", so this patch is
large and ugly, but I think it makes all those Clamp() calls look nicer in
the long run.

Most of the game is 64-bit clean, since we can build without assembly code
now. I've marked the things that are obviously still wrong with STUBBED lines.

That being said: a 64-bit build can already run the demos mostly correctly,
so we're actually almost there!

There are a few obvious things that are obviously wrong, to be fixed.
2016-04-06 23:20:29 -04:00
Ryan C. Gordon
70f3f7fe35 Turned off an assert that reads past the start of an array.
It'll crash here anyway if that assertion would have triggered, I think.
2016-04-06 23:20:29 -04:00
ptitSeb
2ccc337898 The control87 is a fake one when using USE_PORTABLE_C, regardless the architecture 2016-04-06 22:45:02 +02:00
ptitSeb
efde059273 Getting paranoid with mixed integer / float operations 2016-04-06 22:45:01 +02:00
ptitSeb
ead5da376d Cannot cast a Float to Unsigned integer directly on ARM, of sign will be lost, so double cast 2016-04-06 22:45:01 +02:00
Ryan C. Gordon
553dbe2c62 Deleted changelog autogenerated by Visual C++. 2016-04-06 15:42:40 -04:00
Ryan C. Gordon
6b248af4d0 Moved STUBBED where all platforms can see it, made it more robust. 2016-04-06 15:35:12 -04:00
Ryan C. Gordon
b42025bc9f Unix basedir: Don't read past start of array if $PATH has an empty item. 2016-04-06 15:01:09 -04:00
Ryan C. Gordon
91827e7d2a Define PLATFORM_PANDORA instead of PANDORA, to match other targets. 2016-04-06 13:40:08 -04:00
ptitSeb
7590c3ca04 GLES hardware doen't read depth, so I assume ARM based machine can'tt either 2016-04-06 16:30:39 +02:00
ptitSeb
b76bbc77d4 Fixed a typo 2016-04-06 14:15:05 +02:00
ptitSeb
4bfca131b8 gettimeofday is not reliable on PANDORA, so use clock_gettime instead 2016-04-06 13:56:26 +02:00
ptitSeb
ddb0e94ef2 Rename isMenuEnabled to isMenuEnabled_ to avoid a symbol collicion that (can) happens at runtime 2016-04-06 13:54:22 +02:00
ptitSeb
4757cbbd2b Just to be safe, as casting +inf to integer gives 0xFFFFFFFF on x86 and 0x7FFFFFFF on arm 2016-04-06 13:52:10 +02:00
ptitSeb
c4ac41ed56 Added codepath for ARM here (simple copy of PPC version) 2016-04-06 13:49:12 +02:00
ptitSeb
b2fd42dc60 TREMOR function signatures 2016-04-06 13:48:32 +02:00
ptitSeb
8dd48b5cd8 Unstubbed the Portable C functions of LayerMixer 2016-04-06 13:47:10 +02:00
ptitSeb
af9d472619 Unstubbed the Dithered Portable C functions (ordered one unstested) 2016-04-06 13:46:26 +02:00
ptitSeb
73aab13a79 Try to fix the Portable C UploadTexture_OGL function 2016-04-06 13:44:36 +02:00
ptitSeb
8c03fccd64 Fixed the bsr Portable C function, the game start correctly now 2016-04-06 13:41:32 +02:00
ptitSeb
8c49b5f7a0 Unstubbed the Fog Portable C function 2016-04-06 13:40:56 +02:00
ptitSeb
2406f62c4b Unstubbed the Color Portable C functions 2016-04-06 13:40:02 +02:00
ptitSeb
73ea5ca7d4 Case fixing of an include 2016-04-06 13:38:09 +02:00
ptitSeb
0252ff1b6c ARM processor don't convert +inf to 0xFFFFFFFF like a x86 processor do 2016-04-06 13:37:07 +02:00
ptitSeb
f105e7225a Unstubbed the portable C sound mixer 2016-04-06 13:35:58 +02:00
ptitSeb
4e9dee7763 I had issue with the autoincrement. I prefer some warning about void* math 2016-04-06 13:33:54 +02:00
ptitSeb
205d71eccc Tremor can be used instead of Vorbis. Usefull for ARM based machines 2016-04-06 13:32:52 +02:00
ptitSeb
ebb70977ea ASM is now an Option, and so is Pandora build. Tremor can be used instead of Vorbis, and the binary is rename to ssam to avoid collision in name for inplace compiling 2016-04-06 13:31:53 +02:00
Ryan C. Gordon
9581eeb02a Let CMake file use a pre-built copy of ECC.
This help cross-compilation. You can do something like this now, to get a
native ECC that runs on the build machine, then build the rest for the
cross-compile target system:

rm -rf cmake-build-ecc
mkdir $_
cd $_
cmake ..
make ecc
cd ..

rm -rf cmake-build
mkdir $_
cd $_
cmake -DECC=/wherever/SeriousEngine/Sources/cmake-build-ecc/ecc ..
make
2016-04-05 12:06:18 -04:00
Ryan C. Gordon
7bbd5df8c0 Fixed a string-literal-to-char* conversion warning. 2016-04-04 22:42:06 -04:00
Ryan C. Gordon
c752e7cace Fixed a mismerge.
(But I still need to figure out what I'm doing between SetAbsolutePath() and
whatever I had before...)
2016-04-04 22:40:30 -04:00
Steven Chamberlain
3adda272b7 Fix pointer truncation on 64-bit
Use size_t instead of int for arithmetic on pointers, to avoid

truncation on ILP64 architectures (like amd64).
2016-04-04 22:09:51 -04:00
Steven Chamberlain
26f1a33749 Building on GNU/kFreeBSD and possibly Hurd
* Only use ENOSR and ENOPKG if defined

ENOSR and ENOPKG are part of the POSIX optional STREAMS extension, and
are not available on most other platforms than GNU/Linux.

* Support building on other GNU platforms than Linux

Build for other GNU platforms the same way as Linux:  this includes
CMAKE_SYSTEM_NAME "GNU" (GNU/Hurd) and "GNU/kFreeBSD" (GNU/kFreeBSD).
2016-04-04 20:34:34 -04:00
Ryan C. Gordon
5ba4bccabd Backed out the splitting up of SeriousSam/Menu.cpp 2016-04-04 16:09:41 -04:00
Ryan C. Gordon
f35e86661e Moved Ogg Vorbis files to the "External" directory, plugged into CMake project. 2016-04-04 02:43:12 -04:00
Ryan C. Gordon
6436618937 Merge github.com:Croteam-Official/Serious-Engine
Conflicts:
	Sources/Engine/Sound/SoundDecoder.cpp
2016-04-04 02:41:23 -04:00
Ryan C. Gordon
a7e4f8237e Patched to compile on Linux, and cleaned out almost all compiler warnings. 2016-04-04 02:34:07 -04:00
SLAwww
1e6eafd777 Merge pull request #33 from rcgordon/ecc-empty-files-simplify
Simplify dealing with empty files in ECC
2016-04-04 00:43:41 +03:00
zcaliptium
f697fcc2f5 Engine: Return dynamic vorbisfile library loading. 2016-04-03 23:45:57 +03:00
zcaliptium
6e35f6bd11 Initial commit 2016-04-03 18:59:48 +03:00
Ryan C. Gordon
706814653d Simplify dealing with empty files.
Why write a parser when you already have a perfectly good one already?  :)
2016-04-03 02:07:52 -04:00
Ryan C. Gordon
f9bfaf7435 Initial add of build-linux.sh 2016-04-03 01:23:42 -04:00
Ryan C. Gordon
986140db64 Build on Mac OS X with reported number of CPU cores. 2016-04-03 00:00:04 -04:00
Ryan C. Gordon
1a2ccb8f50 Merge github.com:Croteam-Official/Serious-Engine
Conflicts:
	Sources/Ecc/Parser.cpp
	Sources/Ecc/Scanner.cpp
	Sources/Engine/Base/Scanner.cpp
	Sources/Engine/GameAgent/GameAgent.cpp
	Sources/Engine/Graphics/Gfx_wrapper.h
	Sources/Engine/Network/Network.cpp
	Sources/Engine/Sound/SoundDecoder.h
	Sources/Engine/Templates/HashTableTemplate.cpp
	Sources/Engine/Terrain/Terrain.h
	Sources/EntitiesMP/ParticleCloudsHolder.es
	Sources/EntitiesMP/ParticleCloudsMarker.es
	Sources/SeriousSam/CDCheck.h
	Sources/SeriousSam/Menu.cpp
	Sources/SeriousSam/MenuGadgets.cpp
	Sources/SeriousSam/SeriousSam.cpp
	Sources/SeriousSam/SplashScreen.cpp
	Sources/SeriousSam/StdH.cpp
	Sources/SeriousSam/StdH.h
	Sources/Shaders/StdH.cpp
2016-04-02 23:56:12 -04:00
Tan Wang Leng
33a3bda3e3 Fix missing endif() 2016-04-02 22:55:53 -04:00
Salamanderrake
cdcf6afc34 Sources/CMakeLists.txt: Added missing find_packge(SDL REQUIRED) to link in the SDL1.2 libraries via ${SDL_LIBRARY} generate variable
and added to the target_link_libraries for SeriousSam and SeriousSamDedicated. I don't know not linking the SDL library was

	the intended outcome but SeriousSam* was failing to link to libSeriousEngine.a.
2016-04-02 22:33:11 -04:00
Ryan C. Gordon
a96fe8de8b Patched to compile on Linux.
(The EntitiesMP and/or GameMP libraries need symbols exported from the main
binary, but when we built the engine as a static library to reuse it between
the client and server, the Linux linker stripped out symbols those libraries
needed. If we can force these symbols to remain, or maybe move to shared
library..? then we can avoid building the engine sources twice to get the
dedicated server too. For now, though...good enough!)
2016-04-02 21:55:48 -04:00
Ryan C. Gordon
74a7321a7f Don't do the Mac policy for now, it upsets pre-3.0 CMake.
I don't want to bump requirements to CMake 3 yet.
2016-04-02 21:54:38 -04:00
Ryan C. Gordon
9c5fa5f0fc Fixed some things GCC complained about on this Linux box. 2016-04-02 02:03:41 -04:00
Salamanderrake
2be26952c7 Case Issue with #include statement.
* Gfx_wrapper.cpp: two #include statemenst with incorrect case.

* Fixed an empty line issue
2016-04-02 01:12:25 -04:00
Salamanderrake
4ce00bca08 Statistics_internal.h: Incorrect case as its Statistics_Internal.h on disk. 2016-04-02 01:11:53 -04:00
Salamanderrake
7778fdcaae Add missing ; to Sources/Ecc/Parser.y 2016-04-01 23:38:29 -04:00
Ryan C. Gordon
49b5163cc9 Regenerated parsers and scanners. 2016-04-01 15:17:48 -04:00
Ryan C. Gordon
d02a7a41c4 Added CMake and a simple Mac build script, and nuked the awful old Makefile. 2016-04-01 15:17:23 -04:00
Ryan C. Gordon
0d426d5998 Fixed up some StdH includes. 2016-04-01 14:04:24 -04:00
Ryan C. Gordon
3e59daa5e6 Fixed function signature for yyerror to take a const char *. 2016-04-01 12:19:18 -04:00
Ryan C. Gordon
5aea1f7c4d Untangle the symbols in the engine's parser and the Ska parser. 2016-04-01 01:49:13 -04:00
Ryan C. Gordon
b29b27a868 Turn this back off. 2016-04-01 01:49:13 -04:00
Ryan C. Gordon
0f6b9ca1c1 We actually get NULL here, so these stay for now, Clang warnings be damned. 2016-03-31 21:54:25 -04:00
Ryan C. Gordon
88c41117f5 Fill in some stuff that is needed to compile.
I had better versions of this stuff, which I still need to re-merge.
2016-03-31 21:53:54 -04:00
zcaliptium
f9f4ec904c Fix the License. 2016-04-01 01:12:10 +03:00
zcaliptium
9bb4fa43cd Update SeriousSam/StdH.h 2016-04-01 01:04:08 +03:00
zcaliptium
ecac2063ff Resolve conflicts 2016-04-01 01:00:14 +03:00
zcaliptium
4cb76b506f GameExecutable: Replace 4-spaced tabs with 2-spaced. 2016-03-31 23:27:11 +03:00
Ryan C. Gordon
f1e8add4ca "-mdynamic-no-pic" was largely a Mac OS X/powerpc optimization. Remove it. 2016-03-31 16:01:23 -04:00
zcaliptium
80471f5041 GameExecutable: Fix } else { formatting.
Make code more readable.
2016-03-31 22:57:40 +03:00
Ryan C. Gordon
887bc474e0 Deal with other things that are optimizing out instead of linking properly. 2016-03-31 15:48:48 -04:00
Ryan C. Gordon
7c9d29ad1a Naturally, there are two files with inline asm with an "mmShift" symbol. :) 2016-03-31 15:48:48 -04:00
zcaliptium
6434adfc1b GameExecutable: Fix spaces for headers. 2016-03-31 22:43:28 +03:00
zcaliptium
7972586d1d GameExecutable: Cleanup. Make some extern functions and variables static. 2016-03-31 21:58:50 +03:00
zcaliptium
3aa14342b3 GameExecutable: Get rid of CMENU preprocessor.
Use preprocessor for making the code shorter was bad idea. It makes
weird code parser, shows a lot of false errors and breaks code
highlighting(blinking).
2016-03-31 20:58:27 +03:00
zcaliptium
e9267112a1 GameExecutable: Get rid of the TECHTESTONLY and _SE_DEMO code. 2016-03-31 20:12:26 +03:00
Ryan C. Gordon
ee754e7edf Made static variables that inline asm needs to touch non-static.
I dislike having to do this, but Clang sees them as unused and removes them
from the object file, causing linking to fail.

The real solution here is to remove all the assembly code because it's 2016
and this game doesn't have to run on 133MHz Pentium now.  :)
2016-03-31 13:04:57 -04:00
Ryan C. Gordon
ed527eb29e A little tapdancing to fix a missing symbol at link time. 2016-03-31 12:40:11 -04:00
Ryan C. Gordon
2668cdc44f Fix up some mismerges and get the OpenGL code to compile again. 2016-03-31 12:26:43 -04:00
Ryan C. Gordon
c2be372822 Some work to get Stream.cpp compiling. 2016-03-31 12:25:53 -04:00
Ryan C. Gordon
fbfef87ce0 Fixed a mismerge. 2016-03-31 12:25:40 -04:00
Ryan C. Gordon
75b824ddf8 Removed the exception handling code from CTStream.
I think this is a leftover from the mmap()-like code that used to be
in the engine, but now it's a lot of complexity to basically test this:

- Was this a memory access violation?
- If no, crash.
- If yes:
  - Was it part of a CTStream?
  - If no, crash.
  - If yes, crash.

Instead, let's just crash.   :)

(If I'm misunderstanding this, just roll back from revision control.)
2016-03-31 12:22:55 -04:00
zcaliptium
ca5873a2af GameExecutable: Some cleanup and reorder.
Clean clean clean!
2016-03-31 19:21:46 +03:00
RocketersAlex
c5f5d72e3f Update MSLegacy.h Network.cpp GameAgent.cpp 2016-03-31 05:43:38 +03:00
zcaliptium
cb907fbb87 GameExecutable: Add License into sources. 2016-03-31 03:38:57 +03:00
zcaliptium
1f0da8a443 GameExecutable: Some cleanup for menu code. 2016-03-30 23:09:51 +03:00
zcaliptium
de240b4ad7 GameExecutable: Continue refactoring. Rename some files. 2016-03-30 22:25:24 +03:00
zcaliptium
ef788b5299 GameExecutable: Put menus' extern variables into container. 2016-03-30 21:21:32 +03:00
Ryan C. Gordon
105bc12d64 Bunch more work on getting this to compile. Down to Stream and Gfx_OpenGL now. 2016-03-30 13:41:30 -04:00
zcaliptium
36c6eb19c0 Continue splitting Menu.cpp into multiple files. 2016-03-30 19:23:12 +03:00
Ryan C. Gordon
7d118bd249 First attempt at porting GameAgent code. 2016-03-30 11:00:29 -04:00
Ryan C. Gordon
8ea00b12d2 More work on getting this to compile. 2016-03-30 11:00:01 -04:00
Ryan C. Gordon
4f061d916c Adding regenerated parsers so they'll stop spamming my diffs. 2016-03-30 10:59:17 -04:00
Ryan C. Gordon
888b35dbca Mismerge fix. 2016-03-30 10:56:56 -04:00
RocketersAlex
0d8f7da318 Fixed SeriousSam and GameAgent bugs 2016-03-30 16:54:30 +03:00
Ryan C. Gordon
146da64d86 Fixed filename case on an include statement. 2016-03-30 04:00:23 -04:00
Ryan C. Gordon
98972f6a43 Build everything with -fPIC until we dump this Makefile for CMake. 2016-03-30 03:58:31 -04:00
Ryan C. Gordon
2e7af8cf00 More mismerge corrections and other fixes to get this closer to compiling. 2016-03-30 02:01:02 -04:00