Commit Graph

10002 Commits

Author SHA1 Message Date
Bill Currie 3e651b43f8 Handle aliased values when emitting statements
With this, cast address initializers work. I have to wonder if the alias
value short-circuit was legacy from long before the rewrite, as it was
quite trivial to handle in the back-end.
2020-02-15 23:49:12 +09:00
Bill Currie e4eb793fb3 Treat aliased values as constant
One step closer to cast address initializers working.
2020-02-15 23:49:12 +09:00
Bill Currie ce9902baed Don't short-circuit aliased values
Not sure why I thought it was a good idea as it turns out this is why
cast pointer initializers were being lost.
2020-02-15 23:49:12 +09:00
Bill Currie 3257e7145b Add failing global init test too 2020-02-15 23:49:12 +09:00
Bill Currie 4caa875442 Finish up alignment tests and add address cast
It turns out that initializing a local int with a pointer cast doesn't
work.
2020-02-15 23:49:12 +09:00
Bill Currie a4a57b6ffd Implement aligned allocations 2020-02-15 23:49:12 +09:00
Bill Currie 293f10211a Start on alignment test
Currently fails (deliberately, WIP)
2020-02-15 23:49:12 +09:00
Bill Currie 0542daacdf Create more double related tests
Including catching warnings :) (yay -Werror)
2020-02-15 23:49:12 +09:00
Bill Currie 7e7e0526dd Fix a double constant issue
There will be more of these :/
2020-02-15 23:49:12 +09:00
Bill Currie 7e09a94469 Fix "casts" between signed and unsigned int 2020-02-15 23:49:12 +09:00
Bill Currie 5d8d805b60 Fix test for single overload functions
All functions are stored in the overload functions table, even those
that are never explicitly overloaded, but only explicitly overloaded
functions (those with @overload) use the type-qualified naming.
2020-02-15 23:49:12 +09:00
Bill Currie 533fb8acc9 Implement double constants 2020-02-15 23:49:12 +09:00
Bill Currie 2cd62fe01b Fix several double-related bug
float is promoted to double through ... for non-v6 code.
PR_Sprintf has custom param access via P_*, messed up doubles.
2020-02-15 23:49:12 +09:00
Bill Currie eb7f825158 Test for full-float % 2020-02-15 23:49:12 +09:00
Bill Currie 8920c59515 Find @override functions even when there's only one 2020-02-15 23:49:12 +09:00
Bill Currie 98216c6eb0 Fixed some missed doxygen updates 2020-02-15 23:49:12 +09:00
Bill Currie df7c08a010 Add support for doubles to Ruamoko
Only as scalars, I still need to think about what to do for vectors and
quaternions due to param size issues. Also, doubles are not yet
guaranteed to be correctly aligned.
2020-02-15 23:49:12 +09:00
Bill Currie 13b608f40c Don't truncat float % float
This allows full usage, eg, x % pi, but otherwise maintains
compatibility with integer %
2020-02-15 23:49:12 +09:00
Bill Currie 16f8dca72e Align local and far data spaces
I plan on adding doubles, and so it's necessary to ensure that attempts
to align doubles in local or far data spaces remain aligned after final
linking.
2020-02-15 23:49:12 +09:00
Bill Currie 197f856a30 Fix incorrect scalar/quaternion division
It's just not possible.
2020-02-15 23:49:12 +09:00
Bill Currie c50dda1d08 Document segmented text 2020-02-15 23:48:47 +09:00
Bill Currie de64be1d67 Show more info when dumping x11 video modes
Found in an old stash. Probably the start of xrandr support.
2020-02-12 11:04:28 +09:00
Bill Currie 31501ad641 Add some docs for linked lists
Found in an old stash
2020-02-12 10:52:47 +09:00
Bill Currie 729ac22267 Make qw connection sequence visible
Black lines with transparent background on a black backdrop...
2020-02-11 15:54:45 +09:00
Bill Currie bdf2443d01 Fix ambiguous image file name warnings
Most of the warnings are due to a bug in doxygen (fixed in 1.8.17,
but...), however some were legit due to overzealous image search paths
wildly including the doxygen output tree.
2020-02-11 15:27:32 +09:00
Bill Currie 9248e8cf01 Update for doxygen 1.8.16 2020-02-11 15:22:42 +09:00
Bill Currie 6ce87497f3 Fix a potential buffer overflow
Highly unlikely to have that many sub models, but it does keep gcc
quiet.
2020-02-06 17:42:21 +09:00
Bill Currie 9d09d65d9a Clean up some export stuff
While it's not there yet, the eventual goal is to support multiple
models in the one blend file, so per-object settings is a requirement.
2019-08-20 16:52:43 +09:00
Bill Currie c14e5623ad Get the mdl frames script property working
Maybe late 2.78+, blender added the ability to use any ID type in
PointerProperty, which is just what I wanted for the frames script.
2019-08-16 22:34:45 +09:00
Bill Currie 839d90981d Clean up a few last things for blender 2.80
Many many thanks to Aleksander Marhall for the initial work.
2019-08-16 22:32:37 +09:00
khreathor 008b5a4d2c Import/Export fixes after some Blender 2.8 API changes 2019-08-16 21:38:29 +09:00
khreathor 11e5f39fdc Fix for the export error when there is no Shape Keys available 2019-08-16 21:38:29 +09:00
khreathor 36da80c0d0 Export proper frame names 2019-08-16 21:38:29 +09:00
khreathor 33d114c09e Set playback/animation range to start from frame 1 2019-08-16 21:38:29 +09:00
khreathor ff5f9f1831 Add "empty" skin during export for models with no materials or texture nodes 2019-08-16 21:38:29 +09:00
khreathor 3913febace MDL properties in object panel are back 2019-08-16 21:38:29 +09:00
khreathor 31fa7a81ef Fix for single skin being marked as skingroup 2019-08-16 21:38:29 +09:00
khreathor 94c3c8c2cb Skingroup image export order based on texture node position (height) in shader editor. Nodes with higher position are exported first. 2019-08-16 21:38:29 +09:00
khreathor 4f29f57e77 Proper node positioning after import 2019-08-16 21:38:29 +09:00
khreathor a13c382969 Skingroup images import order fix 2019-08-16 21:38:29 +09:00
khreathor 4d1f05186b Skingroups export added 2019-08-16 21:38:29 +09:00
khreathor 17e76149a1 Adjust playback range on import, to fit mdl's animation length 2019-08-16 21:38:29 +09:00
khreathor 66fe862a87 Import skingroups as separate materials with skins as textures 2019-08-16 21:38:29 +09:00
khreathor ae86790e6c Initial Blender 2.8 changes - it works, now it's time for improvements 2019-08-16 21:38:29 +09:00
khreathor 8112c4e8b6 Moved MDL settings from Object tab to export options/presets 2019-08-16 21:38:29 +09:00
khreathor 90a707f7f9 Export animation range selected with start/end playback range in Timeline Editor 2019-08-16 21:38:29 +09:00
Bill Currie 302a462c32 Make SetMouse timeout after 2 seconds
This makes sure that some unchecked event doesn't cause a lockup.
However, blocking input is really not the way to go: need to implement a
state machine and use non-blocking event reads.
2019-07-10 22:28:33 +09:00
Bill Currie 980cf58ac5 Wait for the window to be visible before mouse warping
This fixes the hang during fullscreen startup on my system (the motion
events weren't being generated because there was no window to see the
motion).
2019-07-10 22:28:33 +09:00
Bill Currie a4f963f67b Add a cvar to block use of x11 vidmode
Or really, allow it if the user specifically requests it: the default is
blocked. Modern systems (particularly displays) do not really like
changing resolution, so doing so by default seems rather wrong.
2019-07-10 22:28:33 +09:00
Bill Currie c3fa78ef4d Include test for 2d vector expressions 2019-07-06 14:49:28 +09:00