sezero e6797e4fd8 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]
2018-08-16 21:11:10 +03:00
2018-08-05 12:02:59 +03:00

This is the source code to 3Dfx Glide for Voodoo graphics accelerators.
It's forked from the original CVS repo of Glide open source project at
sourceforge:  https://sourceforge.net/projects/glide/
Source is licensed under 3DFX GLIDE Source Code General Public License:
see 'glide_license.txt' under the glide2x, glide3x or swlibs directory.
Description
3Dfx Glide -- forked from GITHUB repository https://github.com/sezero/glide
Readme 13 MiB
Languages
C 81.1%
Roff 8.2%
Assembly 8%
C++ 1.8%
Makefile 0.5%
Other 0.3%