Commit Graph

29 Commits

Author SHA1 Message Date
Diomendius
ce6b7e2486 Fix equality test in gpr2gpa.cpp
I don't think this actually gets hit when converting the base Glider PRO
resources, but it's an obvious error that makes the condition always
true.
2024-07-31 20:23:34 +12:00
Diomendius
a7852b8c30 Add gpr2gpa to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
41b96494c2 Fix double-use of va_list in AppendFmt
AppendFmt calls vsnprintf twice, first to check the size of the
formatted string, then to write it for real, but it used the same
va_list for both calls, so the second call got an invalid va_list after
the first call had already consumed all its arguments.

This is UB and at least on Linux makes the second call print garbage. I
presume Windows implements va_list differently such that this somehow
worked correctly, because on Linux, all of the dialog items get parsed
into invalid JSON due to this bug, with lines like this (note the
missing second array element and closing bracket):
    "pos" : [ -55947262,
2024-07-31 20:23:34 +12:00
elasota
7e3569500a Handle RGB15BE blit 2021-09-02 04:13:43 -04:00
elasota
376fdf16c4 Add name-to-comment support to GPAs 2021-09-01 22:06:43 -04:00
elasota
c27d78d329 Bulk import script early version + StuffIt 5 fixes. 2021-06-30 00:45:53 -04:00
elasota
b616c6bf6e Icon refactor 2021-06-06 01:12:21 -04:00
elasota
a2d374f650 Allocator refactor 2021-04-28 01:46:07 -04:00
elasota
2cd4e4f178 UTF refactor to eliminate duplicated code outside of PL 2021-04-27 09:54:01 -04:00
elasota
3917e1a370 File system refactor, bug fixes 2021-03-07 04:31:05 -05:00
elasota
ef12c471a7 Fix missing directory entries for resource additions that have no existing directory (i.e. LICS) 2020-11-25 15:51:12 -05:00
elasota
f07137b52d Move IOStream to GpCommon 2020-09-12 13:32:53 -04:00
elasota
1981320afe Add support for 16-bit, stereo, and MACE 3:1 sound import. 2020-06-20 01:03:41 -04:00
elasota
01e6ff4f5d Fix >16bpp images emitting color table data, causing image corruption, especially in 24bpp images 2020-06-07 17:45:29 -04:00
elasota
b37b0a4f8a Add MACE 6:1 decompression to fix some missing audio samples, parallelize deflate compression 2020-06-07 17:18:04 -04:00
elasota
cfb66d9c9b Fix res patch file adding not working 2020-06-06 01:49:54 -04:00
elasota
7d5f844fd4 Fix bad usage formatting 2020-05-27 18:06:12 -04:00
elasota
153213e079 Improve PICT compatibility, add batch mode to gpr2gpa 2020-05-17 17:54:58 -04:00
elasota
ebb6d7608e Add unpacktool 2020-05-09 21:05:58 -04:00
elasota
d90ea24405 Add support for GPA patching, remove some unusable video options 2020-03-14 03:21:20 -04:00
elasota
57d0678090 Transcode special chars via UTF-8 2020-02-07 22:08:52 -05:00
elasota
7c3dc7d1a3 Convert DITLs to JSON 2020-02-07 02:45:45 -05:00
elasota
7cb6994f90 Import indexed strings as text files 2020-01-24 02:41:42 -05:00
elasota
928efdd527 Switch timestamp format to combined UTC + local so fewer stupid hacks are required. 2020-01-23 22:36:12 -05:00
elasota
b20e1876e3 Do TZ conversion in GPA conversion, keep timestamps in UTC. This makes ZIP conversion inconsistent across TZs, but less hacky everywhere else. Pending addition of a tool to just dump a combined timestamp. 2020-01-23 03:45:36 -05:00
elasota
a1475d2ee3 Fixed a bunch of improper timestamp handling, made ZIP timestamping deterministic, added default timestamp 2020-01-23 02:47:31 -05:00
elasota
93b4554961 Migrate image storage from PICT to BMP 2020-01-18 21:15:31 -05:00
elasota
c79ddd0d35 Add text anti-aliasing, disable arcade mode 2020-01-18 18:20:16 -05:00
elasota
d8331eaeb7 Switch to zip archive format for resource data, prep work for moving from PICT/snd to BMP/WAV 2020-01-18 08:37:57 -05:00