Magnus Norddahl
845bf93c95
Change triangle full block to use vectored load and store
2016-11-20 01:29:19 +01:00
Christoph Oelckers
3c726aa570
- scriptified A_FirePlasma.
2016-11-20 01:18:21 +01:00
Christoph Oelckers
fdab994fcb
- scriptified the Rocket launcher.
2016-11-20 01:11:01 +01:00
Christoph Oelckers
814493b68d
- scriptified the Super Shotgun.
2016-11-20 00:45:06 +01:00
Christoph Oelckers
af34d82888
- scriptified A_Saw.
...
- implemented multiple-return-value assignment. Due to some grammar conflicts the originally intended Lua-inspired syntax of 'a, b = Function()' could not be done, so it's '[a, b] = Function()'
2016-11-20 00:25:38 +01:00
Rachael Alexanderson
08c4f2ac18
- Added a tool to clear the LLVM cache, if ever there is corruption or it needs rebuilt.
2016-11-19 17:08:08 -05:00
Rachael Alexanderson
fc011e42dd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-19 12:46:01 -05:00
Christoph Oelckers
74c5659fc5
- explicitly call Destroy in PClass::StaticShutdown because some class type objects were no longer automatically collected.
2016-11-19 18:09:34 +01:00
Christoph Oelckers
7595343aaa
- fixed: Completely empty if statements left the code generator in a broken state.
2016-11-19 18:02:07 +01:00
Magnus Norddahl
b4eb49678a
Cache the optimized bitcode (note: this adds LLVMBitWriter as a dependency)
2016-11-19 17:14:37 +01:00
alexey.lysiuk
c28bcca3f3
Print unknown if release information is unavailable on macOS
...
At least 10.4 Tiger doesn't support required sysctl name
2016-11-19 16:42:16 +01:00
alexey.lysiuk
60ac12be0a
Fixed compilation warnings in Cocoa backend
2016-11-19 16:42:16 +01:00
alexey.lysiuk
3b240b73e9
Fixed endianness issue with saved games
...
See http://forum.zdoom.org/viewtopic.php?t=54272
2016-11-19 16:42:16 +01:00
Christoph Oelckers
0b70df88d8
- scriptified A_FireShotgun and A_FireChaingun.
2016-11-19 16:39:45 +01:00
Magnus Norddahl
d197ebca78
Remove redundant line
2016-11-19 14:07:39 +01:00
Christoph Oelckers
d50da34664
- scriptified the pistol to test if struct member functions work.
...
- made APlayerPawn::PlayAttacking(2) virtual script functions so that mods have better control over player animations. Note that these have no native base so they skip the templated interface for managing virtual functions.
2016-11-19 13:56:29 +01:00
Magnus Norddahl
114fda1ed5
Added missing TranslateAlphaBlend and created a helper function for specifying the translation
2016-11-19 13:32:57 +01:00
Christoph Oelckers
de8cacc465
- for struct member calls an address request is needed.
2016-11-19 12:41:00 +01:00
Magnus Norddahl
17ed585c1f
Fix vsync not working
2016-11-19 12:30:58 +01:00
Christoph Oelckers
25e285b65d
- fixed bad conversion from FString to const char * in state label type cast.
2016-11-19 12:25:53 +01:00
Christoph Oelckers
9fab8380ff
- fixed: FxVMFunctionCall::GetDirectFunction did not check if the function could be called with no arguments.
2016-11-19 12:22:58 +01:00
Christoph Oelckers
f11f020b6c
- allow functions in structs. This is needed for several internal data types like players, sectors, lines, etc.
...
- added a new type 'NativeStruct'. This will be used for types that cannot be instantiated, and is also needed to cleanly handle many internal types that only can exist as reference.
2016-11-19 12:12:29 +01:00
Christoph Oelckers
df4e9324c9
- added terminators to all flag lists.
2016-11-19 09:24:54 +01:00
Christoph Oelckers
10bc01c000
- fixed yet another place where VS did not warn about improper use of NULL.
2016-11-19 09:10:31 +01:00
Magnus Norddahl
272fe7f754
Added blending modes to triangle codegen
2016-11-19 02:53:32 +01:00
Christoph Oelckers
3ce699bf9b
- implemented pass-by-reference arguments - so far only for memory based variables.
...
- changed Dehacked weapon function lookup to check the symbol table instead of directly referencing the VM functions. Once scriptified these pointers will no longer be available.
- removed all special ATAGs from the VM. While well intentioned any pointer tagged with them is basically unusable because it'd trigger asserts all over the place.
- scriptified A_Punch for testing pass-by-reference parameters and stack variables.
2016-11-19 01:23:56 +01:00
Christoph Oelckers
7ff5069617
- added all missing things to enable the scriptified version of A_BrainSpit.
...
This uses a global function, this has been placed into DObject for now because the scripting interface does not allow non-class-owned functions yet.
2016-11-18 22:12:53 +01:00
Christoph Oelckers
aa32d8970b
- scriptified a_hereticmisc.cpp.
2016-11-18 21:34:06 +01:00
Christoph Oelckers
34c949f84b
- implemented the string concatenation operator '..'. This is capable of stringifying all of the common types for output.
...
- gave OP_CONCAT some sane semantics. The way this was defined, by specifying the source operands as a range of registers instead of a pair like everything else made it completely useless for the task at hand.
- changed formatting for floats to %.5f which for normal output in a game makes more sense. For special cases there should be a special formatting function for ints and floats that can do more specialized conversions.
2016-11-18 17:44:25 +01:00
Christoph Oelckers
24481781b4
- added missing unsigned casts to the VM.
...
- make the pointer to string cast a bit more useful by using the actual object's type rather than 'Object' which can be a great asset when debugging.
- fixed a few bad asserts.
2016-11-18 14:50:21 +01:00
Magnus Norddahl
5d6ceb868e
Move viewport stuff to its own function
2016-11-18 14:40:53 +01:00
Christoph Oelckers
f71aad4cdd
- cleanup of the remaining FxBinary operators.
...
- changed FxCompareEq with strings and other types that can be cast to from a string always convert the string to the other type before comparing.
2016-11-18 14:19:55 +01:00
Christoph Oelckers
d9953eb3bd
- cleaned up FxCompareRel::Resolve. Also added unsigned integer support to it and FxMulDiv (these, aside from the float cast, are the only two operations where this is important.)
2016-11-18 12:23:58 +01:00
Christoph Oelckers
b6801d526b
- same as last commit for FxMulDiv and FxPow.
...
- some streamlining of FxAddSub.
2016-11-18 11:53:18 +01:00
Christoph Oelckers
a00181c899
- started refactoring binary operators by starting to movw the relevant parts or ResolveLR into the respective Resolve methods. FxAddSub complete.
...
This one-size-fits all function has become too unwieldy with all its special cases and makes improvements harder than necessary.
2016-11-18 11:28:15 +01:00
Magnus Norddahl
dbb6c7ca27
Add support for specifying a viewport out of screen bounds and fixed statusbar by doing just that!
2016-11-18 01:58:39 +01:00
Christoph Oelckers
8650d6806e
- script export of player_t.
...
- replaced __alignof with the standard alignof equivalent.
2016-11-18 00:42:04 +01:00
Rachael Alexanderson
bac3ae3bf8
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-11-17 17:37:11 -05:00
Christoph Oelckers
b3b5cb2fa4
- fixed: Lines with both sides in the same sector but an active portal may not be discarded early.
2016-11-17 23:13:17 +01:00
Rachael Alexanderson
aa08285676
- Moved scaling before rotation again - this time, using a formula provided by Graf, the rendering pitch is now dynamically scaled based on the aspect ratio, causing pitch aiming to once again be correct.
2016-11-17 16:44:55 -05:00
Christoph Oelckers
6461f5995b
- fixed: Script defined pointers were not added to the FlatPointers array.
2016-11-17 22:21:08 +01:00
Magnus Norddahl
6be80efa51
Moved scale back to be after pitch - otherwise the the bullets don't end up where you point
2016-11-17 21:19:50 +01:00
Magnus Norddahl
eac9367ace
Fix perspective when status bar is visible
2016-11-17 21:07:00 +01:00
Christoph Oelckers
e4dfb13d25
- fixed: OP_LO was missing a read barrier.
2016-11-17 20:41:59 +01:00
Christoph Oelckers
3bcd85eb8a
added class pointer casts. Due to grammar problems the type has to be put into parentheses to get the class token out of the global parsing namespace:
...
class<Actor> myclass = (class<Actor>)(GetClass());
2016-11-17 20:31:53 +01:00
Rachael Alexanderson
7447c49dc5
- Added pixelratio support for the softpoly renderer.
2016-11-17 13:50:35 -05:00
Christoph Oelckers
022228d8a9
- fixed code generation of class type cast for local variables.
2016-11-17 19:30:30 +01:00
Christoph Oelckers
8205e6cf08
- optimize access to array members with constant index. Like with struct members this can be combined with the outer index/address.
...
- fixed register allocation with array indices and stack variables.
2016-11-17 18:06:56 +01:00
Christoph Oelckers
2cc48ec378
- implemented code generation for stack variables.
...
- fixed code generation for using local variables as array index. This must use a different register for the array element offset because the original register may not be overwritten.
2016-11-17 16:44:41 +01:00
Magnus Norddahl
b02e3d9514
Add shaded blend mode for the decals
2016-11-17 14:28:14 +01:00