Christoph Oelckers
5b9fece062
- fixed bad definition of FBlockThingsIterator.Next(). When implementing the BlockLinesIterator apparently some incorrect code got modified.
...
- fixed an uninitialized variable in P_CheckSight.
2017-03-10 10:38:30 +01:00
Rachael Alexanderson
0d5cb0536e
- enable multiprocessor compilation with MSVC++ using /MP for MSBuild
...
- Target NEON processors for ARM.
2017-03-10 00:44:25 +01:00
Christoph Oelckers
609e4c78b4
- fixed: NOINFIGHTSPECIES checked the wrong target actor.
2017-03-09 18:44:32 +01:00
Christoph Oelckers
f8391ce97e
- there was something missing...
2017-03-09 17:44:00 +01:00
Christoph Oelckers
3113faedcf
- fixed bad syntax.
2017-03-09 17:42:25 +01:00
Christoph Oelckers
878e6015df
- made all iterator classes natively abstract so that they do not get a ConstructNative method so that OP_NEW can refuse creating them without the need to mark them as abstract.
...
- block creation of actors with the 'new' instruction. Unlike the above these cannot be made abstract because without ConstructNative they cannot be serialized.
2017-03-09 17:21:37 +01:00
Christoph Oelckers
20c56f6dda
- added SectorTagIterator and LineIDIterator script classes.
2017-03-09 17:05:51 +01:00
Christoph Oelckers
420f71fc4f
- added a BlockLinesIterator script class.
2017-03-09 16:45:48 +01:00
ZZYZX
4dd1910d6d
Fixed the size of the local params array for WorldTick/UiTick
2017-03-09 15:38:49 +01:00
ZZYZX
5eb20b7877
Removed Create, CreateOnce, Register, Unregister from the C++ side as well
2017-03-09 15:38:49 +01:00
ZZYZX
01561eb768
Added: UiTick in EventHandlers, a callback that executes at 35fps on every handler in ui scope;
...
Removed: RenderOverlay, RenderFrame (commented out), Create, CreateOnce, Register, Unregister (completely)
2017-03-09 15:38:49 +01:00
Christoph Oelckers
e080f0cf89
- removed Windows.h include from gl_system.h and cleaned up that file. This means that most OpenGL sources can now be compiled without any Windows dependencies, which is significantly faster.
2017-03-09 13:19:51 +01:00
Christoph Oelckers
396c570a96
- moved Win32GLVideo's definition into the .cpp file, because it isn't needed anywhere else.
2017-03-09 13:09:38 +01:00
Christoph Oelckers
05919a2926
- remove Windows includes from gl_load.h
...
This is one of two places that unconditionally pulled in all Windows headers into the GL code.
We also do not need the cruft for defining the standard integer types. GZDoom is C++11 which means that stdint.h will be present. So the madness with the definitions should be avoided to ensure that the types are always the same.
2017-03-09 13:03:49 +01:00
Christoph Oelckers
03e1cbcfc0
- removed Windows types from several files which don't need them.
...
- split out the software renderer's video classes into their own file because they got included by all OpenGL sources.
2017-03-09 12:52:31 +01:00
Christoph Oelckers
8bd9c5a983
- moved some ACS enums from p_acs.h to p_acs.cpp.
...
There is really no point including this in multiple files if only one of them actually uses these constants.
2017-03-09 09:49:07 +01:00
Christoph Oelckers
77bac4f6fa
- fixed code generation for min/max when the first operand was a local variable or constant.
...
The code for constants was not optimal because the first operand of the instructions cannot be constant. This was solved by swapping it with the second choice which will always be non-constant.
The code for local variables did not allocate a new destination register and would overwrite the first parameter's variable.
2017-03-09 09:36:12 +01:00
Christoph Oelckers
a632fae33f
- for some reason the change to c_expr.cpp got lost.
...
- moved NO_SANITIZE to autosegs.h, because it's the only place where it is used.
2017-03-08 21:14:21 +01:00
Christoph Oelckers
b513b32bcf
- reduced missing texture messages in the menu to warnings.
2017-03-08 19:04:35 +01:00
Christoph Oelckers
f341e7fb6a
- removed SQWORD, there were only a handful of occurences.
2017-03-08 19:02:50 +01:00
Christoph Oelckers
ba0f5a3f94
- most WORD and SWORD are gone.
2017-03-08 18:55:55 +01:00
Christoph Oelckers
8ab562ef13
- the fourth.
2017-03-08 18:55:54 +01:00
Christoph Oelckers
6dee9ff566
- replaced another large batch of homegrown type use.
2017-03-08 18:55:53 +01:00
Christoph Oelckers
6c6bab73ad
- more of the same.
2017-03-08 18:55:53 +01:00
Christoph Oelckers
ad41b23506
- replaced the homegrown integer types in all p* sources and headers.
2017-03-08 18:55:52 +01:00
alexey.lysiuk
3a0e29dab9
Added missing linker options for native MIDI support on macOS
...
Continuous integration is a cool thing: I completely forgot about addition of these frameworks because of my build environment which relies on static libraries and custom command line options
2017-03-08 16:11:04 +02:00
Christoph Oelckers
b8f7e305db
- changed TObjPtr to take a pointer as its template argument and not the class it points to.
...
This addresses the main issue with TObjPtr, namely that using it required pulling in the entire class hierarchy in basic headers like r_defs which polluted nearly every single source file in the project.
2017-03-08 13:35:21 +01:00
Christoph Oelckers
1cb89c6b37
- fixed bad call to validate function.
2017-03-08 13:35:21 +01:00
alexey.lysiuk
de9c9221fe
Added AudioToolbox MIDI device for macOS
...
This device is the default one for OpenAL backend on Apple's platform
2017-03-08 11:23:36 +02:00
alexey.lysiuk
54ca55f070
Default MIDI device is now created by sound backend
...
OpenAL backend now plays music by default
It uses WinMM device on Windows and OPL on other platforms
2017-03-08 11:04:02 +02:00
alexey.lysiuk
938043892a
Update CI configurations
...
Increase git clone depth to 10 for both services so quick pushes won't break the build
Disable email notifications for AppVeyor
2017-03-08 10:44:42 +02:00
Christoph Oelckers
2f29b075b2
- made CountInv clearscope and const.
2017-03-07 22:55:15 +01:00
Christoph Oelckers
d911cdcfe7
- missed a bit.
2017-03-07 22:18:50 +01:00
Christoph Oelckers
e2f3a09dd0
- refactored the scope check for VirtualScope calls.
...
It now uses a dedicated opcode instead of piggybacking on OP_CALL and it passes data that is closer to the VM. Symbols should be avoided at this level.
It also will skip the scope instruction if the code generator detects that both calling function and the self pointer type have the same scope, this assumes that subclasses cannot flip between UI and Play.
2017-03-07 22:17:48 +01:00
Christoph Oelckers
0c686c593b
- simplify the runtime checks for OP_NEW.
...
They are not needed for OP_NEW_K which can evaluate the class relations at compile time and for OP_NEW the calling function can also be checked at compile time, passing only the scope value itself.
2017-03-07 19:57:55 +01:00
Christoph Oelckers
7a0c466b24
- fixed: For reflective floors, closed doors need to be considered an outer boundary, even if the floor below the door is reflective itself.
2017-03-07 18:59:48 +01:00
Christoph Oelckers
7ce8009576
- made several read-only actor functions accessible to UI code.
2017-03-07 18:59:48 +01:00
alexey.lysiuk
5e91e79a4f
Updated Travis CL configuration
...
Remove Debug macOS target
Add GCC 6 Linux target
Set Clang Linux target to build Debug configuration
Add FMOD Ex dependency
Exclude AppVeyor test branches from build
Set git clone depth to three
Remove unused APT source
2017-03-07 17:15:48 +02:00
ZZYZX
620ce72ebd
Fixed E_Responder for mouse events. It being active during console was actually a bug, because console should prevent any events.
2017-03-07 12:46:26 +01:00
ZZYZX
883048b538
Added E_Responder call for direct mouse input interception
2017-03-07 12:46:26 +01:00
alexey.lysiuk
e5a3d2244e
Updated AppVeyor configuration
...
Add dependencies for sound backends
Exclude travis test branches from build
Set git clone depth to one
2017-03-07 11:59:52 +02:00
Christoph Oelckers
1c95ddacb8
Revert "Moved some ancient playsim mouse input code around so that it works properly with input events"
...
This reverts commit 2e0eb742eb
.
This effectively nullifies the attempt to get a higher mouse update rate for the display.
2017-03-07 10:26:03 +01:00
ZZYZX
a681b5b706
Just in case, don't send useless mouse move events to G_Responder.
2017-03-07 09:47:47 +01:00
ZZYZX
2e0eb742eb
Moved some ancient playsim mouse input code around so that it works properly with input events
2017-03-07 09:47:47 +01:00
Christoph Oelckers
9d6b5f7015
- switched the menu code over to the data types of the event system.
...
Note that this will require adjustment of all menu code which overrides the Responder method!
2017-03-06 22:27:51 +01:00
Christoph Oelckers
4f97db74f2
- fixed: The deprecation checks in the compiler backend were wrong.
2017-03-06 19:24:31 +01:00
Major Cooke
e111b0b92e
Fixed: Deprecated functions could not act because FxVMFunctionCall::CheckAccessibility returned false on warning.
2017-03-06 17:37:18 +01:00
alexey.lysiuk
cf23deef74
Fixed ssize_t type definition for mpg123 (affects MSVC x64 only)
...
According to MinGW headers (which is used for compiling libmpg123) ssize_t type must be 64-bit in size on 64-bit Windows
Moreover it was impossible to build GZDoom with the recent versions of libmpg123 because of wrong type redifinition
Tested MP3 music on Deus Vult II with Release x64 and OpenAL backend
2017-03-06 18:05:06 +02:00
ZZYZX
21ecd714ec
Added a way to tell apart console-executed events from code-executed SendNetworkEvent
2017-03-06 11:23:36 +01:00
alexey.lysiuk
f4b0435e66
Added basic Travis CI configuration
...
Build with GCC 5.4 and Clang 3.9 on Ubuntu Linux and Clang from Xcode 8.2 on Apple's macOS
Build with all dependencies except FMOD
2017-03-06 10:41:22 +02:00