Commit graph

12 commits

Author SHA1 Message Date
Christoph Oelckers
05d8856fe0 - moved file system implementation to 'common'. 2020-04-11 14:00:20 +02:00
Christoph Oelckers
c1bb7de23a - more file system refactoring.
* moved the sprite renaming out of the file system entirely into a caller-provided callback.
* renamed several functions to closer match the terms of a file system.
* moved the VM interface out of the implementation.
2020-04-11 14:00:19 +02:00
Christoph Oelckers
83befa7686 - moved the "??? lumps" messages out of the single resource file handlers into the calling function and did a bit of include cleanup. 2020-04-11 14:00:18 +02:00
Christoph Oelckers
135f159927 - pass lump filters as parameter when initializing the file system to reduce dependencies on high level state in the low level code. 2020-04-11 14:00:17 +02:00
Christoph Oelckers
1574799683 - moved most parts of the Doom specific lump setup out of the file format implementations into the main class.
This is to keep as much higher level logic out of these as possible. The presentation of the data should be a concern of the file system, not the data containers.
2020-04-11 14:00:16 +02:00
Christoph Oelckers
ef300a9ea8 - lump flags cleanup. 2020-04-11 14:00:16 +02:00
Christoph Oelckers
6996d54a23 - moved more code to 'common'.
This is all low level utilities with no dependencies on game logic. Having this in a separate directory makes sharing with Raze a lot easier.
2020-04-11 14:00:12 +02:00
Christoph Oelckers
31aa855a51 - generate a hash identifier for each loaded resource file.
This is not useful by itself but can be used for adding new features later, e.g. mod-wide compatibility settings or file specific lump replacement or injection.
2019-09-13 12:29:17 +02:00
Christoph Oelckers
0abc66dbff - uncoupled the decompressors from ZDoom's internal error handling.
This code made it hard to repurpose this code for other tools, so now the error handler must be passed as a callback to OpenDecompressor.
2019-08-20 23:14:00 +02:00
Rachael Alexanderson
068522f9c8 - fix building on FreeBSD 2019-03-03 17:08:45 +01:00
Christoph Oelckers
868ac5adf8 - switched the Windows backend to use the Windows Unicode API.
With localization for non-Latin languages on the support list the multibyte API doesn't cut it anymore. It neither can handle system text output outside the local code page nor can an ANSI window receive text input outside its own code page.
Similar problems exist for file names. With the multibyte API it is impossible to handle any file containing characters outside the active local code page.

So as of now, everything that may pass along some Unicode text will use the Unicode API with some text conversion functions. The only places where calls to the multibyte API were left are those where known string literals are passed or where the information is not used for anything but comparing it to other return values from the same API.
2019-02-14 22:23:33 +01:00
Christoph Oelckers
db77ed79cd - moved the resourcefiles and textures folders into gamedata. 2019-02-01 18:31:57 +01:00
Renamed from src/resourcefiles/file_wad.cpp (Browse further)