]> git.pld-linux.org Git - packages/Glide_V2.git/commitdiff
- added gcc4,gasp,cpp,link patches
authorJakub Bogusz <qboosh@pld-linux.org>
Mon, 9 Jan 2012 17:09:22 +0000 (17:09 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- fixed License field
- added READMEs to doc
- ghost soname symlinks
- changed URL from dead 3dfx.com to sf project

Changed files:
    Glide_V2.spec -> 1.22
    glide-cpp.patch -> 1.1
    glide-gasp.patch -> 1.1
    glide-gcc4.patch -> 1.1
    glide-link.patch -> 1.1

Glide_V2.spec
glide-cpp.patch [new file with mode: 0644]
glide-gasp.patch [new file with mode: 0644]
glide-gcc4.patch [new file with mode: 0644]
glide-link.patch [new file with mode: 0644]

index 001327f269ab4e7a25cebd1794c00e5c85298a85..c3370b666b451e2d3ca6c86421fbc94ea7b0d0b5 100644 (file)
@@ -4,11 +4,14 @@ Name:         Glide_V2
 Version:       2.53
 Release:       7
 Group:         Libraries
-License:       GPL
-Vendor:                3Dfx Interactive Inc.
+License:       3DFX GLIDE Source Code General Public License
 Source0:       GlideV2.tar.gz
 # Source0-md5: a7110232c3d4d888580aaff7919017d2
-URL:           http://www.3dfx.com/
+Patch0:                glide-gcc4.patch
+Patch1:                glide-gasp.patch
+Patch2:                glide-cpp.patch
+Patch3:                glide-link.patch
+URL:           http://glide.sourceforge.net/
 %ifarch %{ix86}
 BuildRequires: /usr/bin/gasp
 %endif
@@ -24,13 +27,23 @@ Linuksem.
 
 %prep
 %setup -q -n GlideV2
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
 chmod +x swlibs/include/make/ostype
+%{__rm} glide3x/cvg/init/*.{o,a}
+
+ln glide2x/README README.glide2x
+ln glide3x/README README.glide3x
 
 %build
 # Make sure we build for Voodoo2
 export FX_GLIDE_HW=cvg
-%{__make} V2 CNODEBUG="%{rpmcflags} %{!?debug:-fomit-frame-pointer -funroll-loops} \
-       %{!?debug:-fexpensive-optimizations -ffast-math -DBIG_OPT}"
+%{__make} V2 \
+       CC="%{__cc}" \
+       CNODEBUG="%{rpmcflags} %{!?debug:-fomit-frame-pointer -funroll-loops} \
+               %{!?debug:-fexpensive-optimizations -ffast-math -DBIG_OPT}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -67,7 +80,7 @@ ln -sf libglide3x.so.3 $RPM_BUILD_ROOT%{_libdir}/libglide3x.so
 # Install Texus
 ######################################################################
 install -m 755 glide2x/swlibs/lib/libtexus.so.1.1 \
-    $RPM_BUILD_ROOT%{_libdir}
+       $RPM_BUILD_ROOT%{_libdir}
 
 ln -sf libtexus.so.1 $RPM_BUILD_ROOT%{_libdir}/libtexus.so
 
@@ -85,6 +98,8 @@ install glide2x/cvg/glide/tests/test00 \
 install glide3x/cvg/glide3/tests/test00 \
        $RPM_BUILD_ROOT%{_bindir}/testGlide3x
 
+/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -93,18 +108,21 @@ rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc glide2x/glide_license.txt
+%doc README.glide2x README.glide3x glide_license.txt
 %attr(755,root,root) %{_bindir}/texus
 %attr(755,root,root) %{_bindir}/test3Dfx
 %attr(755,root,root) %{_bindir}/testGlide3x
 %attr(755,root,root) %{_bindir}/testGlide2x
 %attr(755,root,root) %{_libdir}/libglide.so.2.53
+%attr(755,root,root) %ghost %{_libdir}/libglide.so.2
 %attr(755,root,root) %{_libdir}/libglide.so
 %attr(755,root,root) %{_libdir}/libglide2x.so
 %attr(755,root,root) %{_libdir}/libglide2x.so.2
 %attr(755,root,root) %{_libdir}/libglide3.so.3.01
+%attr(755,root,root) %ghost %{_libdir}/libglide3.so.3
 %attr(755,root,root) %{_libdir}/libglide3.so
 %attr(755,root,root) %{_libdir}/libglide3x.so
 %attr(755,root,root) %{_libdir}/libglide3x.so.3
 %attr(755,root,root) %{_libdir}/libtexus.so.1.1
+%attr(755,root,root) %ghost %{_libdir}/libtexus.so.1
 %attr(755,root,root) %{_libdir}/libtexus.so
diff --git a/glide-cpp.patch b/glide-cpp.patch
new file mode 100644 (file)
index 0000000..e6c3ffc
--- /dev/null
@@ -0,0 +1,204 @@
+--- GlideV2/glide3x/cvg/glide3/src/fxglide.h.orig      2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/fxglide.h   2012-01-08 20:16:45.707252884 +0100
+@@ -1417,7 +1417,7 @@
+ #ifdef GLIDE3
+ #define GR_STATE_ENTRY(name, type, args) \
+-   type _##name## args
++   type _##name args
+ #else
+ #define GR_STATE_ENTRY(name, type, args) \
+    GR_ENTRY(name, type, args)
+@@ -3339,17 +3339,17 @@
+ #endif
+ #ifdef GLIDE3_DEBUG
+-#define TEX_INFO(ptr,field)                         ptr##field
++#define TEX_INFO(ptr,field)                         ptr.field
+ #define G3_LOD_TRANSLATE(lod)                       (lod)
+ #define G3_ASPECT_TRANSLATE(aspect)                 (aspect)
+ #else /* !GLIDE3_DEBUG */
+-#define TEX_INFO(ptr,field)                         ptr##field##Log2
++#define TEX_INFO(ptr,field)                         ptr.field##Log2
+ #define G3_LOD_TRANSLATE(lod)                       (0x8-lod)
+ #define G3_ASPECT_TRANSLATE(aspect)                 (0x3-(aspect))
+ #endif /* !GLIDE3_DEBUG */
+ #else /* !(defined(GLIDE3) && defined(GLIDE3_ALPHA)) */
+-#define TEX_INFO(ptr,field)                         ptr##field
++#define TEX_INFO(ptr,field)                         ptr.field
+ #define G3_LOD_TRANSLATE(lod)                       (lod)
+ #define G3_ASPECT_TRANSLATE(aspect)                 (aspect)
+ #endif /* !(defined(GLIDE3) && defined(GLIDE3_ALPHA)) */
+--- GlideV2/glide3x/cvg/glide3/src/gsplash.c.orig      2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/gsplash.c   2012-01-08 20:16:33.697252482 +0100
+@@ -298,9 +298,9 @@
+ downloadTexture(Texture *texture, Gu3dfInfo *info) 
+ {
+   texture->info.data        = info->data;
+-  TEX_INFO(texture->info.,smallLod)    = info->header.small_lod;
+-  TEX_INFO(texture->info.,largeLod)    = info->header.large_lod;
+-  TEX_INFO(texture->info.,aspectRatio) = info->header.aspect_ratio;
++  TEX_INFO(texture->info,smallLod)    = info->header.small_lod;
++  TEX_INFO(texture->info,largeLod)    = info->header.large_lod;
++  TEX_INFO(texture->info,aspectRatio) = info->header.aspect_ratio;
+   texture->info.format      = info->header.format;
+   texture->addr = nextFreeBase;
+--- GlideV2/glide3x/cvg/glide3/src/ditex.c.orig        2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/ditex.c     2012-01-08 20:22:59.743932075 +0100
+@@ -568,9 +568,9 @@
+   FxU32 memrequired;
+   GR_CHECK_F( "grTexTextureMemRequired", !info, "invalid info pointer" );
+-  memrequired = _grTexTextureMemRequired( G3_LOD_TRANSLATE(TEX_INFO(info->,smallLod)),
+-                                          G3_LOD_TRANSLATE(TEX_INFO(info->,largeLod)),
+-                                          G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio)),
++  memrequired = _grTexTextureMemRequired( G3_LOD_TRANSLATE(TEX_INFO((*info),smallLod)),
++                                          G3_LOD_TRANSLATE(TEX_INFO((*info),largeLod)),
++                                          G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio)),
+                                           info->format,
+                                           evenOdd );
+                         
+@@ -635,12 +635,12 @@
+     ---------------------------------------------------------------*/
+ #if defined(GLIDE3) && defined(GLIDE3_ALPHA)
+ #ifdef GLIDE3_DEBUG
+-  for( lod = TEX_INFO(info->,largeLod); lod <= TEX_INFO(info->,smallLod); lod++ ) {
++  for( lod = TEX_INFO((*info),largeLod); lod <= TEX_INFO((*info),smallLod); lod++ ) {
+ #else
+-  for( lod = TEX_INFO(info->,largeLod); lod >= TEX_INFO(info->,smallLod); lod-- ) {
++  for( lod = TEX_INFO((*info),largeLod); lod >= TEX_INFO((*info),smallLod); lod-- ) {
+ #endif
+ #else
+-  for( lod = TEX_INFO(info->,largeLod); lod <= TEX_INFO(info->,smallLod); lod++ ) {
++  for( lod = TEX_INFO((*info),largeLod); lod <= TEX_INFO((*info),smallLod); lod++ ) {
+ #endif
+     /*
+     ** note for glide3 lod translation:
+@@ -649,13 +649,13 @@
+     grTexDownloadMipMapLevel( tmu, 
+                               startAddress, 
+                               lod,
+-                              TEX_INFO(info->,largeLod),
+-                              TEX_INFO(info->,aspectRatio),
++                              TEX_INFO((*info),largeLod),
++                              TEX_INFO((*info),aspectRatio),
+                               info->format,
+                               evenOdd,
+                               src_base );
+                
+-    src_base += _grMipMapHostSize[_gr_aspect_index_table[G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio))]][G3_LOD_TRANSLATE(lod)]
++    src_base += _grMipMapHostSize[_gr_aspect_index_table[G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio))]][G3_LOD_TRANSLATE(lod)]
+                     << (info->format>=GR_TEXFMT_16BIT);
+   }
+ } /* grTexDownloadMipMap */
+--- GlideV2/glide3x/cvg/glide3/src/gtex.c.orig 2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/gtex.c      2012-01-09 16:40:49.713045393 +0100
+@@ -980,16 +980,16 @@
+   /*-------------------------------------------------------------
+     Update Texture Unit State
+     -------------------------------------------------------------*/
+-  gc->state.tmu_config[tmu].smallLod = G3_LOD_TRANSLATE(TEX_INFO(info->,smallLod));
+-  gc->state.tmu_config[tmu].largeLod = G3_LOD_TRANSLATE(TEX_INFO(info->,largeLod));
++  gc->state.tmu_config[tmu].smallLod = G3_LOD_TRANSLATE(TEX_INFO((*info),smallLod));
++  gc->state.tmu_config[tmu].largeLod = G3_LOD_TRANSLATE(TEX_INFO((*info),largeLod));
+   gc->state.tmu_config[tmu].evenOdd  =  evenOdd; 
+   
+   /*-------------------------------------------------------------
+     Calculate Base Address
+     -------------------------------------------------------------*/
+   baseAddress = _grTexCalcBaseAddress(startAddress,
+-                                       G3_LOD_TRANSLATE(TEX_INFO(info->,largeLod)),
+-                                       G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio)),
++                                       G3_LOD_TRANSLATE(TEX_INFO((*info),largeLod)),
++                                       G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio)),
+                                        info->format,
+                                        evenOdd) >> 3;
+ #if (GLIDE_PLATFORM & GLIDE_HW_H3)
+@@ -1016,11 +1016,11 @@
+   tLod = gc->state.tmu_config[tmu].tLOD;
+   tLod &= ~(SST_LODMIN | SST_LODMAX | SST_LOD_ASPECT |
+             SST_LOD_TSPLIT | SST_LOD_ODD | SST_LOD_S_IS_WIDER);
+-  tLod |= SST_TLOD_MINMAX_INT(G3_LOD_TRANSLATE(TEX_INFO(info->,largeLod)),
++  tLod |= SST_TLOD_MINMAX_INT(G3_LOD_TRANSLATE(TEX_INFO((*info),largeLod)),
+                      gc->state.tmu_config[tmu].mmMode==GR_MIPMAP_DISABLE ? 
+-                              G3_LOD_TRANSLATE(TEX_INFO(info->,largeLod)) : G3_LOD_TRANSLATE(TEX_INFO(info->,smallLod)));
++                              G3_LOD_TRANSLATE(TEX_INFO((*info),largeLod)) : G3_LOD_TRANSLATE(TEX_INFO((*info),smallLod)));
+   tLod |= _gr_evenOdd_xlate_table[evenOdd];
+-  tLod |= _gr_aspect_xlate_table[G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio))];
++  tLod |= _gr_aspect_xlate_table[G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio))];
+   /* Write relevant registers out to hardware */
+   hw = SST_TMU(hw, tmu);
+@@ -1175,7 +1175,7 @@
+ #else
+                                            G3_LOD_TRANSLATE(GR_LOD_LOG2_256),
+ #endif
+-                                           G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio)),
++                                           G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio)),
+                                            info->format,
+                                            evenOdd) >> 3;
+       GR_SET(tmuChip, hw, texBaseAddr, baseAddress);
+@@ -1189,7 +1189,7 @@
+ #else
+                                            G3_LOD_TRANSLATE(GR_LOD_LOG2_128),
+ #endif
+-                                           G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio)),
++                                           G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio)),
+                                            info->format,
+                                            evenOdd) >> 3;
+       GR_SET(tmuChip, hw, texBaseAddr1, baseAddress);
+@@ -1203,7 +1203,7 @@
+ #else
+                                            G3_LOD_TRANSLATE(GR_LOD_LOG2_64),
+ #endif
+-                                           G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio)),
++                                           G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio)),
+                                            info->format,
+                                            evenOdd) >> 3;
+       GR_SET(tmuChip, hw, texBaseAddr2, baseAddress);
+@@ -1217,7 +1217,7 @@
+ #else
+                                            G3_LOD_TRANSLATE(GR_LOD_LOG2_32),
+ #endif
+-                                           G3_ASPECT_TRANSLATE(TEX_INFO(info->,aspectRatio)),
++                                           G3_ASPECT_TRANSLATE(TEX_INFO((*info),aspectRatio)),
+                                            info->format,
+                                            evenOdd) >> 3;
+       GR_SET(tmuChip, hw, texBaseAddr38, baseAddress);
+--- GlideV2/glide3x/cvg/glide3/src/distate.c.orig      2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/distate.c   2012-01-09 16:50:12.976397585 +0100
+@@ -166,25 +166,25 @@
+  */
+ #define STOREARG(function, arg) \
+-gc->state.stateArgs.##function##Args.arg = arg
++gc->state.stateArgs.function##Args.arg = arg
+ #define LOADARG(function, arg) \
+-gc->state.stateArgs.##function##Args.arg
++gc->state.stateArgs.function##Args.arg
+ #define INVALIDATE(regset) \
+-gc->state.invalid |= ##regset##BIT
++gc->state.invalid |= regset##BIT
+ #define NOTVALID(regset) \
+-(gc->state.invalid & ##regset##BIT)
++(gc->state.invalid & regset##BIT)
+ #define SETVALID(regset) \
+-(gc->state.invalid &= ~(##regset##BIT))
++(gc->state.invalid &= ~(regset##BIT))
+ #define ENABLEMODE(mode) \
+-gc->state.grEnableArgs.##mode## = GR_MODE_ENABLE;
++gc->state.grEnableArgs.mode = GR_MODE_ENABLE;
+ #define DISABLEMODE(mode) \
+-gc->state.grEnableArgs.##mode## = GR_MODE_DISABLE;
++gc->state.grEnableArgs.mode = GR_MODE_DISABLE;
+ /*-------------------------------------------------------------------
+   Function: grAlphaBlendFunction
diff --git a/glide-gasp.patch b/glide-gasp.patch
new file mode 100644 (file)
index 0000000..b1edc68
--- /dev/null
@@ -0,0 +1,63 @@
+--- GlideV2/glide2x/cvg/glide/src/xdraw2.S.orig        2000-04-20 23:26:36.000000000 +0200
++++ GlideV2/glide2x/cvg/glide/src/xdraw2.S     2012-01-08 18:34:13.720380228 +0100
+@@ -128,18 +128,32 @@
+ .text
++.MACRO GR_FIFO_WRITE __addr __offset __data   
++    mov    \__data, \__offset(\__addr)
++.ENDM # GR_FIFO_WRITE
++
+       .align 4
+       .globl  _trisetup_cull
+       .type _trisetup_cull, @function
+ _trisetup_cull:       
+ #        .code
++EMITNOCULL    .ASSIGNA        0
++
+ .MACRO        SYMNAME prefix
++.AIF \&EMITNOCULL EQ 0
+       .LCULL\prefix:  
++.AELSE
++      .LNOCULL\prefix:
++.AENDI
+ .ENDM
+ .MACRO        SYMNAMEOP op prefix
++.AIF \&EMITNOCULL EQ 0
+       \op .LCULL\prefix
++.AELSE
++      \op .LNOCULL\prefix
++.AENDI
+ .ENDM
+                               
+ GLIDE_CULLING       .ASSIGNA 1
+@@ -154,13 +168,7 @@
+ .L_end_trisetup_cull:
+       .size _trisetup_cull,.L_end_trisetup_cull-_trisetup_cull
+-.MACRO        SYMNAME prefix
+-      .LNOCULL\prefix:        
+-.ENDM
+-
+-.MACRO        SYMNAMEOP op prefix
+-      \op .LNOCULL\prefix
+-.ENDM
++EMITNOCULL    .ASSIGNA        1
+ .AIF \&GLIDE_PACKED_RGB EQ 1
+       .align 4
+         .globl  _trisetup_cull_rgb
+--- GlideV2/glide2x/cvg/glide/src/xdraw2.inc.S.orig    2000-04-20 23:26:36.000000000 +0200
++++ GlideV2/glide2x/cvg/glide/src/xdraw2.inc.S 2012-01-08 18:33:24.560378579 +0100
+@@ -155,10 +155,6 @@
+ packCol .REG      (%edi)
+ tempVal .REG      (%edi)
+-.MACRO GR_FIFO_WRITE __addr __offset __data   
+-    mov    \__data, \__offset(\__addr)
+-.ENDM # GR_FIFO_WRITE
+-
+ .align 4
+  SYMNAME __triBegin
+     mov     fifoPtr(gc), fifo         # Fetch Fifo Ptr
diff --git a/glide-gcc4.patch b/glide-gcc4.patch
new file mode 100644 (file)
index 0000000..ee9e8ee
--- /dev/null
@@ -0,0 +1,329 @@
+--- GlideV2/glide2x.orig/cvg/glide/tests/display.c
++++ GlideV2/glide2x/cvg/glide/tests/display.c
+@@ -65,6 +65,10 @@ static const char *sourceFormatString[] 
+     "GR_LFB_SRC_FMT_ZA16      "
+ };
++static void imageConvert( void *dst,
++                          void *src,
++                          GrLfbSrcFmt_t format,
++                          FxU32 *bpp );
+ int main( int argc, char **argv)
+ {
+@@ -91,11 +95,6 @@ int main( int argc, char **argv)
+     static FxU32 imageWidth;
+     static FxU32 imageHeight;
+-    static void imageConvert( void *dst, 
+-                              void *src,
+-                              GrLfbSrcFmt_t format, 
+-                              FxU32 *bpp );
+-
+     srcfname[0] = 0;
+     dstfname[0] = 0;
+--- GlideV2/glide2x.orig/cvg/glide/tests/test26.c
++++ GlideV2/glide2x/cvg/glide/tests/test26.c
+@@ -57,6 +57,10 @@ static const char *sourceFormatString[] 
+   "GR_LFB_SRC_FMT_ZA16      "
+ };
++static void imageConvert( void *dst,
++                          void *src,
++                          GrLfbSrcFmt_t format,
++                          FxU32 *bpp );
+ int main( int argc, char **argv) {
+   char match; 
+@@ -80,11 +84,6 @@ int main( int argc, char **argv) {
+   static FxU32 imageWidth;
+   static FxU32 imageHeight;
+-  static void imageConvert( void *dst, 
+-                            void *src,
+-                            GrLfbSrcFmt_t format, 
+-                            FxU32 *bpp );
+-
+   /* Process Command Line Arguments */
+   while( (rv = tlGetOpt( argc, argv, "bdnr", &match, &remArgs )) ) {
+     if ( rv == -1 ) {
+--- GlideV2/glide3x.orig/cvg/glide3/tests/display.c
++++ GlideV2/glide3x/cvg/glide3/tests/display.c
+@@ -56,6 +56,10 @@ static const char *sourceFormatString[] 
+     "GR_LFB_SRC_FMT_ZA16      "
+ };
++static void imageConvert( void *dst,
++                          void *src,
++                          GrLfbSrcFmt_t format,
++                          FxU32 *bpp );
+ void main( int argc, char **argv) {
+     char match; 
+@@ -81,11 +85,6 @@ void main( int argc, char **argv) {
+     static FxU32 imageWidth;
+     static FxU32 imageHeight;
+-    static void imageConvert( void *dst, 
+-                              void *src,
+-                              GrLfbSrcFmt_t format, 
+-                              FxU32 *bpp );
+-
+     srcfname[0] = 0;
+     dstfname[0] = 0;
+--- GlideV2/glide3x.orig/cvg/glide3/tests/test26.c
++++ GlideV2/glide3x/cvg/glide3/tests/test26.c
+@@ -48,6 +48,10 @@ static const char *sourceFormatString[] 
+     "GR_LFB_SRC_FMT_ZA16      "
+ };
++static void imageConvert( void *dst,
++                          void *src,
++                          GrLfbSrcFmt_t format,
++                          FxU32 *bpp );
+ void main( int argc, char **argv) {
+     char match; 
+@@ -69,11 +73,6 @@ void main( int argc, char **argv) {
+     static FxU32 imageWidth;
+     static FxU32 imageHeight;
+-    static void imageConvert( void *dst, 
+-                              void *src,
+-                              GrLfbSrcFmt_t format, 
+-                              FxU32 *bpp );
+-
+     /* Initialize Glide */
+     grGlideInit();
+     assert( hwconfig = tlVoodooType() );
+--- GlideV2/glide3x/cvg/glide3/src/gaa.c.orig  2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/gaa.c       2012-01-09 16:01:27.262966287 +0100
+@@ -572,7 +572,7 @@
+       e = pointers;
+       if (mode)
+         e = *(float **)e;
+-      (float *)pointers += stride;
++      pointers = (float *)pointers + stride;
+       
+       ptX = FARRAY(e, gc->state.vData.vertexInfo.offset);
+       ptY = FARRAY(e, gc->state.vData.vertexInfo.offset+4);
+@@ -673,7 +673,7 @@
+       if (mode)
+         e = *(float **)e;
+       oow = 1.0f / FARRAY(e, gc->state.vData.wInfo.offset);        
+-      (float *)pointers += stride;
++      pointers = (float *)pointers + stride;
+       
+       ptX = FARRAY(e, gc->state.vData.vertexInfo.offset)
+         *oow*gc->state.Viewport.hwidth+gc->state.Viewport.ox;
+@@ -790,9 +790,9 @@
+         v1 = *(float **)v1;
+         v2 = *(float **)v2;
+       }
+-      (float *)pointers += stride;
++      pointers = (float *)pointers + stride;
+       if (ltype == GR_LINES)
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+       
+       /* draw from low Y to high Y */
+       if (FARRAY(v2, gc->state.vData.vertexInfo.offset+4) < FARRAY(v1, gc->state.vData.vertexInfo.offset+4)) {
+@@ -966,9 +966,9 @@
+           v1 = *(float **)v1;
+           v2 = *(float **)v2;
+         }
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         if (ltype == GR_LINES)
+-          (float *)pointers += stride;
++          pointers = (float *)pointers + stride;
+         owa = oowa = 1.0f / FARRAY(v1, gc->state.vData.wInfo.offset);
+         owb = oowb = 1.0f / FARRAY(v2, gc->state.vData.wInfo.offset);
+       }
+@@ -980,7 +980,7 @@
+           v1 = *(float **)v1;
+           v2 = *(float **)v2;
+         }
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         owb = oowb = 1.0f / FARRAY(v2, gc->state.vData.wInfo.offset);
+       }
+       
+@@ -1304,7 +1304,7 @@
+       b = *(float **)b;
+       c = *(float **)c;
+     }
+-    (float *)pointers += stride*3;
++    pointers = (float *)pointers + stride*3;
+     /* move culling test to here */
+     {
+@@ -1612,7 +1612,7 @@
+       b = *(float **)b;
+       c = *(float **)c;
+     }
+-    (float *)pointers += stride*3;
++    pointers = (float *)pointers + stride*3;
+     oowa = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);        
+     oowb = 1.0f / FARRAY(b, gc->state.vData.wInfo.offset);        
+     oowc = 1.0f / FARRAY(c, gc->state.vData.wInfo.offset);        
+@@ -1777,7 +1777,7 @@
+   if (type == kSetupFan) {
+     v[0] = (mode == 0) ? pointers : *(float **)pointers;
+     while (sCount--) {
+-      (float *)pointers += stride;
++      pointers = (float *)pointers + stride;
+       if (mode) {
+         v[1] = *(float **)pointers;
+         v[2] = *((float **)pointers+1);
+@@ -1819,7 +1819,7 @@
+         _grAADrawTriangles(1, type, 3, v);
+       else
+         _grAAVpDrawTriangles(1, type, 3, v);    
+-      (float *)pointers += stride;
++      pointers = (float *)pointers + stride;
+       flip = ~flip;
+     }
+     flip = ~flip;
+--- GlideV2/glide3x/cvg/glide3/src/gdraw.c.orig        2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/src/gdraw.c     2012-01-09 16:06:50.666310453 +0100
+@@ -457,7 +457,7 @@
+         vPtr = pointers;
+         if (mode) vPtr = *(float **)vPtr;
+         
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         
+         GDBG_INFO_MORE(gc->myLevel, "(%f %f)\n",  
+                        FARRAY(vPtr,gc->state.vData.vertexInfo.offset), 
+@@ -546,7 +546,7 @@
+         if (mode)
+           vPtr = *(float **)vPtr;
+         oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset);        
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         
+         {
+           FxU32 x, y;
+@@ -666,9 +666,9 @@
+           a = *(float **)a;
+           b = *(float **)b;
+         }
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         if (ltype == GR_LINES)
+-          (float *)pointers += stride;
++          pointers = (float *)pointers + stride;
+         
+         /*
+         ** compute absolute deltas and draw from low Y to high Y
+@@ -828,10 +828,10 @@
+             a = *(float **)a;
+             b = *(float **)b;
+           }
+-          (float *)pointers += stride;
++          pointers = (float *)pointers + stride;
+           owa = oowa = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);        
+           owb = oowb = 1.0f / FARRAY(b, gc->state.vData.wInfo.offset);        
+-          (float *)pointers += stride;
++          pointers = (float *)pointers + stride;
+         }
+         else {
+           owa = oowa = oowb;
+@@ -841,7 +841,7 @@
+             a = *(float **)a;
+             b = *(float **)b;
+           }
+-          (float *)pointers += stride;
++          pointers = (float *)pointers + stride;
+           owb = oowb = 1.0f / FARRAY(b, gc->state.vData.wInfo.offset);
+         }
+         fay = tmp1 = FARRAY(a, gc->state.vData.vertexInfo.offset+4)
+@@ -1011,7 +1011,7 @@
+         vPtr = pointers;
+         if (mode)
+           vPtr = *(float **)vPtr;
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         
+         i = gc->tsuDataList[dataElem];
+         
+@@ -1051,7 +1051,7 @@
+                  *oow*gc->state.Viewport.hwidth + gc->state.Viewport.ox);
+         TRI_SETF(FARRAY(vPtr, 4)
+                  *oow*gc->state.Viewport.hheight + gc->state.Viewport.oy);
+-        (float *)pointers += stride;
++        pointers = (float *)pointers + stride;
+         
+         TRI_VP_SETFS(vPtr,oow);
+       }
+--- GlideV2/glide3x/cvg/glide3/tests/test31.c.orig     2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/tests/test31.c  2012-01-09 17:08:13.793100443 +0100
+@@ -307,12 +307,12 @@
+         packedrgb = !packedrgb;
+         if (packedrgb) {
+           grVertexLayout(GR_PARAM_PARGB,   GR_VERTEX_R_OFFSET << 2, GR_PARAM_ENABLE);
+-          (FxU32)vtxList[0].r = 0xff0000ff;
+-          (FxU32)vtxList[1].r = 0xff00ff00;
+-          (FxU32)vtxList[2].r = 0xffff0000;
+-          (FxU32)vtxList[3].r = 0xffff0000;
+-          (FxU32)vtxList[4].r = 0xff00ff00;
+-          (FxU32)vtxList[5].r = 0xff0000ff;
++          *(FxU32*)&vtxList[0].r = 0xff0000ff;
++          *(FxU32*)&vtxList[1].r = 0xff00ff00;
++          *(FxU32*)&vtxList[2].r = 0xffff0000;
++          *(FxU32*)&vtxList[3].r = 0xffff0000;
++          *(FxU32*)&vtxList[4].r = 0xff00ff00;
++          *(FxU32*)&vtxList[5].r = 0xff0000ff;
+         }
+         else {
+           grVertexLayout(GR_PARAM_RGB, GR_VERTEX_R_OFFSET << 2, GR_PARAM_ENABLE);
+--- GlideV2/glide3x/cvg/glide3/tests/test32.c.orig     2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/tests/test32.c  2012-01-09 17:13:56.743111927 +0100
+@@ -449,10 +449,10 @@
+         packedrgb = !packedrgb;
+         if (packedrgb) {
+           grVertexLayout(GR_PARAM_PARGB,   GR_VERTEX_R_OFFSET << 2, GR_PARAM_ENABLE);
+-          (FxU32)srcVerts[0].r = 0xff0000ff;
+-          (FxU32)srcVerts[1].r = 0xff00ff00;
+-          (FxU32)srcVerts[2].r = 0xffff0000;
+-          (FxU32)srcVerts[3].r = 0xffff0000;
++          *(FxU32*)&srcVerts[0].r = 0xff0000ff;
++          *(FxU32*)&srcVerts[1].r = 0xff00ff00;
++          *(FxU32*)&srcVerts[2].r = 0xffff0000;
++          *(FxU32*)&srcVerts[3].r = 0xffff0000;
+         }
+         else {
+           grVertexLayout(GR_PARAM_RGB, GR_VERTEX_R_OFFSET << 2, GR_PARAM_ENABLE);
+--- GlideV2/glide3x/cvg/glide3/tests/sbench.c.orig     2000-04-20 23:26:39.000000000 +0200
++++ GlideV2/glide3x/cvg/glide3/tests/sbench.c  2012-01-09 17:50:20.359851708 +0100
+@@ -281,11 +281,11 @@
+                               0.5f, 0.5f);
+           if (packedrgb) {
+-            (FxU32) vPtrArray[v][GR_VERTEX_R_OFFSET] =
++            *(FxU32*) &vPtrArray[v][GR_VERTEX_R_OFFSET] =
+               ((unsigned char) (vPtrArray[v][GR_VERTEX_R_OFFSET]) << 16) |
+               ((unsigned char) (vPtrArray[v][GR_VERTEX_G_OFFSET]) << 8) |
+               ((unsigned char) (vPtrArray[v][GR_VERTEX_B_OFFSET]));
+-            (FxU32) vPtrArray[v][GR_VERTEX_R_OFFSET] |= 0xff000000;
++            *(FxU32*) &vPtrArray[v][GR_VERTEX_R_OFFSET] |= 0xff000000;
+           }
+         }
+       } else { /* listType == GR_TRIANGLE_FAN */
+@@ -356,11 +356,11 @@
+             vPtrArray[v][GR_VERTEX_A_OFFSET] = 255.f;
+           }
+           if (packedrgb) {
+-            (FxU32) vPtrArray[v][GR_VERTEX_R_OFFSET] =
++            *(FxU32*) &vPtrArray[v][GR_VERTEX_R_OFFSET] =
+               ((unsigned char) (vPtrArray[v][GR_VERTEX_R_OFFSET]) << 16) |
+               ((unsigned char) (vPtrArray[v][GR_VERTEX_G_OFFSET]) << 8) |
+               ((unsigned char) (vPtrArray[v][GR_VERTEX_B_OFFSET]));
+-            (FxU32) vPtrArray[v][GR_VERTEX_R_OFFSET] |= 0xff000000;
++            *(FxU32*) &vPtrArray[v][GR_VERTEX_R_OFFSET] |= 0xff000000;
+           }
+         }
+ #endif
diff --git a/glide-link.patch b/glide-link.patch
new file mode 100644 (file)
index 0000000..947a97c
--- /dev/null
@@ -0,0 +1,10 @@
+--- GlideV2/glide2x/cvg/glide/src/makefile.linux.orig  2000-04-20 23:26:36.000000000 +0200
++++ GlideV2/glide2x/cvg/glide/src/makefile.linux       2012-01-09 17:58:16.809867662 +0100
+@@ -205,6 +205,7 @@
+ SHARED_LIBRARY  =     libglide.so.2.53
+ endif
+ RCFILE          =       glide.rc
++LINKLIBRARIES +=      -lm
+ # Make a static link library for things like the diags.
+ ifeq ($(FX_DLL_BUILD),1)
This page took 0.124668 seconds and 4 git commands to generate.