diff options
Diffstat (limited to 'utils/gen_adldata')
-rw-r--r-- | utils/gen_adldata/file_formats/load_op2.h | 20 | ||||
-rw-r--r-- | utils/gen_adldata/ini/ini_processing.cpp | 9 | ||||
-rw-r--r-- | utils/gen_adldata/ini/ini_processing_variant.h | 2 |
3 files changed, 27 insertions, 4 deletions
diff --git a/utils/gen_adldata/file_formats/load_op2.h b/utils/gen_adldata/file_formats/load_op2.h index 30a118f..58d6988 100644 --- a/utils/gen_adldata/file_formats/load_op2.h +++ b/utils/gen_adldata/file_formats/load_op2.h @@ -3,7 +3,16 @@ #include "../progs_cache.h" -#pragma pack(push, 1) +#ifndef _MSC_VER +#define PACKED_STRUCT __attribute__((packed)) +#else +#define PACKED_STRUCT +#endif + +#ifdef _MSC_VER +#pragma pack(push,1) +#endif + struct Doom_OPL2instrument { unsigned char trem_vibr_1; /* OP 1: tremolo/vibrato/sustain/KSR/multi */ @@ -21,8 +30,7 @@ struct Doom_OPL2instrument unsigned char level_2; /* OP 2: output level */ unsigned char unused; short basenote; /* base note offset */ -} __attribute__((packed)); -#pragma pack(pop) +} PACKED_STRUCT; struct Doom_opl_instr { @@ -34,7 +42,11 @@ struct Doom_opl_instr unsigned char finetune; unsigned char note; struct Doom_OPL2instrument patchdata[2]; -} __attribute__((packed)); +} PACKED_STRUCT; + +#ifdef _MSC_VER +#pragma pack(pop) +#endif static bool LoadDoom(const char *fn, unsigned bank, const char *prefix) diff --git a/utils/gen_adldata/ini/ini_processing.cpp b/utils/gen_adldata/ini/ini_processing.cpp index 2f15821..4ef43fc 100644 --- a/utils/gen_adldata/ini/ini_processing.cpp +++ b/utils/gen_adldata/ini/ini_processing.cpp @@ -30,6 +30,7 @@ DEALINGS IN THE SOFTWARE. #include "ini_processing.h" #include <cstdio> +#include <cctype> #include <cstring> #include <cstdlib> #include <clocale> @@ -37,6 +38,14 @@ DEALINGS IN THE SOFTWARE. #include <algorithm> #include <assert.h> #ifdef _WIN32 + #ifdef _MSC_VER + #ifdef _WIN64 + typedef __int64 ssize_t; + #else + typedef __int32 ssize_t; + #endif + #define NOMINMAX //Don't override std::min and std::max + #endif #include <windows.h> #endif diff --git a/utils/gen_adldata/ini/ini_processing_variant.h b/utils/gen_adldata/ini/ini_processing_variant.h index 34f999a..3395e4e 100644 --- a/utils/gen_adldata/ini/ini_processing_variant.h +++ b/utils/gen_adldata/ini/ini_processing_variant.h @@ -32,6 +32,8 @@ INI Processor and target value (to be compatible with QSettings) #include <string> #include <cstring> +#include <algorithm> +#include <cctype> #include <cstdlib> #ifdef INI_PROCESSING_ALLOW_QT_TYPES #include <QString> |