diff options
Diffstat (limited to 'src/factories/BaseFactory.h')
| -rw-r--r-- | src/factories/BaseFactory.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/factories/BaseFactory.h b/src/factories/BaseFactory.h index 3335827..2486517 100644 --- a/src/factories/BaseFactory.h +++ b/src/factories/BaseFactory.h @@ -31,7 +31,8 @@ struct ParseResultData; #define SEGMENT_NUMBER(x) (((uint32_t)(x) >> 24) & 0xFF) // I would love to use 0x01000000, but the stupid compiler takes it as 0x01 #define IS_SEGMENTED(x) ((SEGMENT_NUMBER(x) > 0) && (SEGMENT_NUMBER(x) < 0x20)) -#define ASSET_PTR(x) (IS_SEGMENTED(x) ? SEGMENT_OFFSET(x) : (x)) +#define IS_VIRTUAL_SEGMENT(x) (SEGMENT_NUMBER(x) >= 0x80) +#define ASSET_PTR(x) ((IS_SEGMENTED(x) || IS_VIRTUAL_SEGMENT(x)) ? SEGMENT_OFFSET(x) : (x)) #define tab_t "\t" #define fourSpaceTab " " |
