asm: rename TEXT, DATA, CONST macros to SEG_TEXT, SEG_DATA and SEG_CONST

Defining certain keywords in nasm makes it go haywire.
See, https://bugzilla.nasm.us/show_bug.cgi?id=3392505

$ cat 1.asm
%define TEXT  _TEXT     align=1 public use32 class=CODE FLAT
%define DATA  _DATA     align=4 public use32 class=DATA FLAT
%define CONST CONST2    align=4 public use32 class=DATA FLAT

segment TEXT
segment DATA
segment CONST

$ nasm -E 1.asm
%line 4+1 1.asm

[segment _TEXT align=1 public use32 class=CODE FLAT]
[segment _DATA align=4 public use32 class=_DATA align=4 public use32 class=DATA FLAT FLAT]
[segment CONST2 align=4 public use32 class=_DATA align=4 public use32 class=_DATA align=4 public use32 class=DATA FLAT FLAT FLAT]

Either this (with nasm-2.0..nasm-2.09.xx), or it errors out with:
1.asm:6: error: interminable macro recursion
1.asm:7: error: interminable macro recursion
... which happens with nasm-2.10.xx-nasm-2.13.01

The glide3 tree uses this for Watcom builds / obj output format,
and the result is not what is intended.  After the renaming, it
works as expected:

$ cat 1.asm
%define SEG_TEXT   _TEXT    align=1 public use32 class=CODE FLAT
%define SEG_DATA   _DATA    align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2    align=4 public use32 class=DATA FLAT

segment SEG_TEXT
segment SEG_DATA
segment SEG_CONST

$ nasm -E 1.asm
%line 4+1 1.asm

[segment _TEXT align=1 public use32 class=CODE FLAT]
[segment _DATA align=4 public use32 class=DATA FLAT]
[segment CONST2 align=4 public use32 class=DATA FLAT]
This commit is contained in:
sezero
2018-08-16 21:11:10 +03:00
parent 9d646ac504
commit e6797e4fd8
27 changed files with 142 additions and 147 deletions

View File

@@ -32,7 +32,6 @@
;; Revision 1.1.1.1 1999/12/07 21:49:13 joseph
;; Initial checkin into SourceForge.
;;
;;
;; 7 5/18/98 12:16p Peter
;; culling enabling
;
@@ -88,7 +87,7 @@ extrn _FifoMakeRoom, 12
%endif
%ENDMACRO ; WRITE_MM1LOW_FIFO
segment DATA
segment SEG_DATA
One DD 1.0
Area DD 0
%IF GLIDE_PACKED_RGB
@@ -96,7 +95,7 @@ segment DATA
bias1 DD 0
%ENDIF
segment CONST
segment SEG_CONST
$T2003 DD 12288.0
$T2005 DD 1.0
$T2006 DD 256.0
@@ -125,7 +124,7 @@ Y equ 4
;; enables/disables trisProcessed and trisDrawn counters
%define STATS 1
segment TEXT
segment SEG_TEXT
ALIGN 32
PROC_TYPE _trisetup_cull

View File

@@ -107,9 +107,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -122,9 +122,9 @@
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -137,9 +137,9 @@
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -152,9 +152,9 @@
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]

View File

@@ -120,7 +120,7 @@ _texData$ equ 24 + STACKOFFSET
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32

View File

@@ -69,7 +69,7 @@ CPUTypeP6 equ 6h
;;; References to external data:
segment TEXT
segment SEG_TEXT
;;
;; _cpu_detect_asm - detect the type of CPU
;;
@@ -279,7 +279,6 @@ UnknownVendor:
mov eax, 0ffffffffh
jmp DoneCpu
endp

View File

@@ -106,9 +106,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%endif
@@ -117,9 +117,9 @@
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
%endif
@@ -128,9 +128,9 @@
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
%endif
@@ -139,8 +139,8 @@
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
%endif

View File

@@ -47,7 +47,7 @@ CPUTypeP6 equ 6h
;;; References to external data:
segment TEXT
segment SEG_TEXT
;;
;; _cpu_detect_asm - detect the type of CPU
;;

View File

@@ -106,9 +106,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -121,9 +121,9 @@
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -136,9 +136,9 @@
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -151,9 +151,9 @@
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]

View File

@@ -54,7 +54,7 @@ CPUTypeP6 equ 6h
;;; References to external data:
segment TEXT
segment SEG_TEXT
;;
;; _cpu_detect_asm - detect the type of CPU
;;

View File

@@ -96,7 +96,7 @@ extrn _FifoMakeRoom
%ENDMACRO ; WRITE_MM1LOW_FIFO
segment DATA
segment SEG_DATA
One DD 1.0
Area DD 0
@@ -119,7 +119,7 @@ _vc$ equ 12 + STKOFF
X equ 0
Y equ 4
segment CONST
segment SEG_CONST
T2003 DD 12288.0 ; 12288
T2005 DD 1.0 ; 1
T2006 DD 256.0 ; 256
@@ -134,7 +134,7 @@ T2006 DD 256.0 ; 256
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32

View File

@@ -30,11 +30,11 @@
extrn _GlideRoot
extrn _FifoMakeRoom
segment CONST
segment SEG_CONST
ALIGN 8
_F256_F256 DD 256.0, 256.0
segment DATA
segment SEG_DATA
ALIGN 8
btab DD 0, 0, 0, 0, 0, 0, 0, 0
atab DD 0, 0, 0, 0, 0, 0, 0, 0
@@ -42,7 +42,7 @@ vSize DD 0
strideinbytes DD 0
vertices DD 0
segment TEXT
segment SEG_TEXT
_pktype equ 20
_type equ 24
@@ -3805,14 +3805,14 @@ endp
extrn _GlideRoot
extrn _FifoMakeRoom
segment CONST
segment SEG_CONST
_F1 DD 1.0
_F256 DD 256.0
_VPF1 DD 1.0
_VPF256 DD 256.0
segment DATA
segment SEG_DATA
vSize DD 0
ccoow DD 0
packetVal DD 0
@@ -3835,7 +3835,7 @@ xc DD 0
yc DD 0
zArea DD 0
segment TEXT
segment SEG_TEXT
%define _pktype 20
%define _type 24
%define _mode 28

View File

@@ -102,9 +102,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -117,9 +117,9 @@
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -132,9 +132,9 @@
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -147,9 +147,9 @@
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]

View File

@@ -123,7 +123,7 @@ _texData$ equ 24 + STACKOFFSET
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
@@ -342,7 +342,7 @@ endp
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
@@ -533,7 +533,7 @@ endp
;segment TEXT
;segment SEG_TEXT
ALIGN 32

View File

@@ -64,7 +64,7 @@ CPUTypeP6 equ 6h
;;; References to external data:
segment TEXT
segment SEG_TEXT
;;
;; _cpu_detect_asm - detect the type of CPU
;;
@@ -274,7 +274,6 @@ UnknownVendor:
mov eax, 0ffffffffh
jmp DoneCpu
endp

View File

@@ -108,11 +108,11 @@ extrn _grValidateState
movd [fifo], mm1 ; store current param | previous param
%ENDMACRO ; WRITE_MM1LOW_FIFO
segment DATA
segment SEG_DATA
One DD 1.0
Area DD 0
segment CONST
segment SEG_CONST
$T2003 DD 12288.0
$T2005 DD 1.0
$T2006 DD 256.0
@@ -150,7 +150,7 @@ Y equ 4
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
PROC_TYPE clip_nocull_invalid

View File

@@ -31,11 +31,11 @@ extrn _grCommandTransportMakeRoom, 12
;;; include listing.inc
%INCLUDE "fxgasm.h"
segment CONST
segment SEG_CONST
ALIGN 8
_F256_F256 DD 256.0, 256.0
segment DATA
segment SEG_DATA
ALIGN 8
btab DD 0, 0, 0, 0, 0, 0, 0, 0
atab DD 0, 0, 0, 0, 0, 0, 0, 0
@@ -44,7 +44,7 @@ strideinbytes DD 0
vertices DD 0
segment TEXT
segment SEG_TEXT
ALIGN 32
%define _mode 20
@@ -2143,14 +2143,14 @@ endp
;;; include listing.inc
%INCLUDE "fxgasm.h"
segment CONST
segment SEG_CONST
_F1 DD 1.0
_F256 DD 256.0
_VPF1 DD 1.0
_VPF256 DD 256.0
segment DATA
segment SEG_DATA
vSize DD 0
ccoow DD 0
packetVal DD 0
@@ -2162,7 +2162,7 @@ vPtr0 DD 0
vPtr1 DD 0
vPtr2 DD 0
segment TEXT
segment SEG_TEXT
_pktype equ 20
_type equ 24

View File

@@ -35,7 +35,7 @@
extrn _GlideRoot
segment TEXT
segment SEG_TEXT
align 4
proc grDrawTriangle, 12

View File

@@ -102,9 +102,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%macro SET_TLSBASE 1
mov %1, dword [fs:18h] ; get thread local storage base pointer
@@ -125,9 +125,9 @@
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
extrn threadValueDJGPP
@@ -148,9 +148,9 @@ extrn threadValueDJGPP
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
extrn threadValueLinux
@@ -171,9 +171,9 @@ extrn threadValueLinux
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
extrn threadValueDJGPP

View File

@@ -111,7 +111,7 @@ _texData$ equ 24 + STACKOFFSET
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
@@ -327,7 +327,7 @@ endp
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
@@ -518,7 +518,7 @@ endp
;segment TEXT
;segment SEG_TEXT
ALIGN 32

View File

@@ -200,11 +200,11 @@ extrn halStore32, 8
%ENDMACRO ; WRITE_MM1LOW_FIFO
segment DATA
segment SEG_DATA
One DD 1.0
Area DD 0
segment CONST
segment SEG_CONST
$T2003 DD 12288.0
$T2005 DD 1.0
$T2006 DD 256.0
@@ -244,7 +244,7 @@ Y equ 4
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
PROC_TYPE clip_nocull_invalid

View File

@@ -33,11 +33,11 @@ extrn _grCommandTransportMakeRoom, 12
;;; include listing.inc
%INCLUDE "fxgasm.h"
segment CONST
segment SEG_CONST
ALIGN 8
_F256_F256 DD 256.0, 256.0
segment DATA
segment SEG_DATA
ALIGN 8
btab DD 0, 0, 0, 0, 0, 0, 0, 0
atab DD 0, 0, 0, 0, 0, 0, 0, 0
@@ -46,7 +46,7 @@ strideinbytes DD 0
vertices DD 0
segment TEXT
segment SEG_TEXT
ALIGN 32
proc _grDrawTriangles_3DNow, 12
@@ -2193,11 +2193,11 @@ endp
;;; include listing.inc
%INCLUDE "fxgasm.h"
segment CONST
segment SEG_CONST
ALIGN 8
_F256_F256 DD 43800000h, 43800000h ; 256 | 256
segment DATA
segment SEG_DATA
ALIGN 8
btab DD 0, 0, 0, 0, 0, 0, 0, 0
atab DD 0, 0, 0, 0, 0, 0, 0, 0
@@ -2206,7 +2206,7 @@ strideinbytes DD 0
vertices DD 0
segment TEXT
segment SEG_TEXT
ALIGN 32
proc _grDrawTriangles_SSE, 12
@@ -4393,14 +4393,14 @@ endp
;;; include listing.inc
%INCLUDE "fxgasm.h"
segment CONST
segment SEG_CONST
_F1 DD 1.0
_F256 DD 256.0
_VPF1 DD 1.0
_VPF256 DD 256.0
segment DATA
segment SEG_DATA
vSize DD 0
ccoow DD 0
packetVal DD 0
@@ -4412,7 +4412,7 @@ vPtr0 DD 0
vPtr1 DD 0
vPtr2 DD 0
segment TEXT
segment SEG_TEXT
_pktype equ 20
_type equ 24

View File

@@ -35,7 +35,7 @@
extrn _GlideRoot
segment TEXT
segment SEG_TEXT
align 4
proc grDrawTriangle, 12

View File

@@ -103,9 +103,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%if USE_STANDARD_TLS_FUNC == 1
@@ -145,9 +145,9 @@ extrn getThreadValue
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
extrn threadValueDJGPP
@@ -168,9 +168,9 @@ extrn threadValueDJGPP
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
extrn threadValueLinux
@@ -191,9 +191,9 @@ extrn threadValueLinux
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
extrn threadValueDJGPP

View File

@@ -114,7 +114,7 @@ _texData$ equ 24 + STACKOFFSET
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
@@ -327,7 +327,7 @@ endp
;
;--------------------------------------------------------------------------
segment TEXT
segment SEG_TEXT
ALIGN 32
@@ -518,7 +518,7 @@ endp
;segment TEXT
;segment SEG_TEXT
ALIGN 32

View File

@@ -44,7 +44,7 @@ CPUTypeP6 equ 6h
;;; References to external data:
segment TEXT
segment SEG_TEXT
;;
;; _cpu_detect_asm - detect the type of CPU
;;

View File

@@ -65,7 +65,7 @@ extrn _trisetup, 12
%define fsubs fsub DWORD
%define fmuls fmul DWORD
segment DATA
segment SEG_DATA
One DD 1.0
Area DD 0
dxAB DD 0
@@ -81,7 +81,7 @@ segment DATA
snap_xc DD 0
snap_yc DD 0
segment CONST
segment SEG_CONST
SNAP_BIAS DD 786432.0
; Ugly, but seems to workaround the problem with locally defined
@@ -240,7 +240,7 @@ Y equ 4
%define i edx ; i = dlp->i
%define tmpy ebp ; temp Y storage
segment TEXT
segment SEG_TEXT
;--------------------------------------------------------------------------

View File

@@ -50,14 +50,13 @@ extrn _grValidateState
extrn _grVpDrawTriangle, 12
extrn _trisetup, 12
; some useful floating load and store macros <ala gmt>
%define flds fld DWORD
%define fadds fadd DWORD
%define fsubs fsub DWORD
%define fmuls fmul DWORD
segment DATA
segment SEG_DATA
One DD 1.0
Area DD 0
dxAB DD 0
@@ -73,7 +72,7 @@ segment DATA
snap_xc DD 0
snap_yc DD 0
segment CONST
segment SEG_CONST
SNAP_BIAS DD 786432.0
; Ugly, but seems to workaround the problem with locally defined
@@ -205,7 +204,7 @@ Y equ 4
%define i edx ; i = dlp->i
%define tmpy ebp ; temp Y storage
segment TEXT
segment SEG_TEXT
;--------------------------------------------------------------------------
@@ -601,7 +600,6 @@ no_padding0:
mov eax, 1h ; return 1 (triangle drawn)
ret
align 4
zero_area:
backfaced:

View File

@@ -102,9 +102,9 @@
;---------------------------------------
%if XOS == XOS_WIN32
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rdata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rdata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -117,9 +117,9 @@
;---------------------------------------
%if XOS == XOS_DJGPP
%define TEXT .text
%define DATA .data
%define CONST .rodata
%define SEG_TEXT .text
%define SEG_DATA .data
%define SEG_CONST .rodata
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -132,9 +132,9 @@
;---------------------------------------
%if XOS == XOS_LINUX
%define TEXT .text align=32
%define DATA .data align=32
%define CONST .rodata align=32
%define SEG_TEXT .text align=32
%define SEG_DATA .data align=32
%define SEG_CONST .rodata align=32
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]
@@ -147,9 +147,9 @@
;---------------------------------------
%if XOS == XOS_WATCD
%define TEXT _TEXT align=1 public use32 class=CODE FLAT
%define DATA _DATA align=4 public use32 class=DATA FLAT
%define CONST CONST2 align=4 public use32 class=DATA FLAT
%define SEG_TEXT _TEXT align=1 public use32 class=CODE FLAT
%define SEG_DATA _DATA align=4 public use32 class=DATA FLAT
%define SEG_CONST CONST2 align=4 public use32 class=DATA FLAT
%macro GET_GC 0
mov gc, [_GlideRoot + curGC]