- Fixed: Building with NOASM defined no longer worked, because the DrawSlab routines in a.asm conflicted with the ones in r_draw.cpp.

SVN r3194 (trunk)
This commit is contained in:
Randy Heit 2011-05-08 04:28:45 +00:00
parent 37aab20cb3
commit d642c5b1b0
3 changed files with 18 additions and 10 deletions

View file

@ -29,8 +29,8 @@
%define mvlineasm1 _mvlineasm1 %define mvlineasm1 _mvlineasm1
%define mvlineasm4 _mvlineasm4 %define mvlineasm4 _mvlineasm4
%define R_SetupDrawSlab _R_SetupDrawSlab %define R_SetupDrawSlabA _R_SetupDrawSlabA
%define R_DrawSlab _R_DrawSlab %define R_DrawSlabA _R_DrawSlabA
%endif %endif
EXTERN ylookup ; near EXTERN ylookup ; near
@ -79,11 +79,11 @@ lastslabcolormap:
SECTION .text SECTION .text
GLOBAL R_SetupDrawSlab GLOBAL R_SetupDrawSlabA
GLOBAL @R_SetupDrawSlab@4 GLOBAL @R_SetupDrawSlabA@4
R_SetupDrawSlab: R_SetupDrawSlabA:
mov ecx, [esp+4] mov ecx, [esp+4]
@R_SetupDrawSlab@4: @R_SetupDrawSlabA@4:
cmp [lastslabcolormap], ecx cmp [lastslabcolormap], ecx
je .done je .done
mov [lastslabcolormap], ecx mov [lastslabcolormap], ecx
@ -591,8 +591,8 @@ align 16
;***************************** Voxel Slabs ******************************* ;***************************** Voxel Slabs *******************************
;************************************************************************* ;*************************************************************************
GLOBAL R_DrawSlab GLOBAL R_DrawSlabA
R_DrawSlab: R_DrawSlabA:
push ebx push ebx
push ebp push ebp
push esi push esi

View file

@ -1363,12 +1363,12 @@ void R_FillSpan (void)
#ifndef X86_ASM #ifndef X86_ASM
static const BYTE *slabcolormap; static const BYTE *slabcolormap;
extern "C" void R_SetupDrawSlab(const BYTE *colormap) extern "C" void R_SetupDrawSlabC(const BYTE *colormap)
{ {
slabcolormap = colormap; slabcolormap = colormap;
} }
extern "C" void STACK_ARGS R_DrawSlab(int dx, fixed_t v, int dy, fixed_t vi, const BYTE *vptr, BYTE *p) extern "C" void STACK_ARGS R_DrawSlabC(int dx, fixed_t v, int dy, fixed_t vi, const BYTE *vptr, BYTE *p)
{ {
int x; int x;
const BYTE *colormap = slabcolormap; const BYTE *colormap = slabcolormap;

View file

@ -216,6 +216,14 @@ void R_FillColumnP (void);
void R_FillColumnHorizP (void); void R_FillColumnHorizP (void);
void R_FillSpan (void); void R_FillSpan (void);
#ifdef X86_ASM
#define R_SetupDrawSlab R_SetupDrawSlabA
#define R_DrawSlab R_DrawSlabA
#else
#define R_SetupDrawSlab R_SetupDrawSlabC
#define R_DrawSlab R_DrawSlabC
#endif
extern "C" void R_SetupDrawSlab(const BYTE *colormap); extern "C" void R_SetupDrawSlab(const BYTE *colormap);
extern "C" void STACK_ARGS R_DrawSlab(int dx, fixed_t v, int dy, fixed_t vi, const BYTE *vptr, BYTE *p); extern "C" void STACK_ARGS R_DrawSlab(int dx, fixed_t v, int dy, fixed_t vi, const BYTE *vptr, BYTE *p);