quakeforge/tools
Bill Currie 6d5e8922a5 [qfcc] Add a handle type for engine resources
I never liked the various hacks I had come up with for representing
resource handles in Ruamoko. Structs with an int were awkward to test,
pointers and ints could be modified, etc etc. The new @handle keyword (@
used to keep handle free for use) works just like struct, union and
enum in syntax, but creates an opaque type suitable for a 32-bit handle.
The backing type is a function so v6 progs can use it without (all the
necessary opcodes exist) and no modifications were needed for
type-checking in binary expressions, but only assignment and comparisons
are supported, and (of course) nil. Tested using cbuf_t and QFile: seems
to work as desired.

I had considered 64-bit handles, but really, if more than 4G resource
objects are needed, I'm not sure QF can handle the game. However, that
limit is per resource manager, not total.
2023-05-25 10:41:28 +09:00
..
3dfx_stub Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
bsp2img [image] Make WritePNG take settings from tex_t 2022-04-01 01:01:53 +09:00
build_scripts Strip the executables. 2013-01-23 22:09:54 +09:00
carne Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
cross Fix some mxe build issues 2023-03-25 21:36:45 +09:00
cvs2cl audit the usage of "only" 2010-01-13 06:42:26 +00:00
Forge Handle quest format brushes. 2012-09-12 08:24:17 +09:00
gas2masm Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
gl_stub [gl_stub] Make some gen functions generate indices 2023-03-05 18:31:30 +09:00
io_mesh_qfmdl [qfmap] Parse field info from quaked comments 2022-09-22 09:35:56 +09:00
io_qfmap [qfmap] Fix some blender bit-rot. 2022-09-22 09:35:56 +09:00
misc [tools] Show major file offsets in mdl dumper 2022-05-19 13:26:45 +09:00
pak [build] Fix selective build of tools 2021-03-26 16:11:29 +09:00
qfbsp Correct some typos in comments/docs 2022-05-19 13:26:45 +09:00
qfcc [qfcc] Add a handle type for engine resources 2023-05-25 10:41:28 +09:00
qflight [plist] Use reference counts for items 2023-03-13 11:26:13 +09:00
qflmp [build] Fix selective build of tools 2021-03-26 16:11:29 +09:00
qfmodelgen [build] Fix selective build of tools 2021-03-26 16:11:29 +09:00
qfspritegen Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
qfvis [simd] Improve portability for aarch64 2023-03-25 21:21:13 +09:00
quaketoascii Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
texpaint Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
wad [build] Fix selective build of tools 2021-03-26 16:11:29 +09:00
wav [build] Fix selective build of tools 2021-03-26 16:11:29 +09:00
Makemodule.am [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00