00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 typedef struct EdgeAsmTag EdgeAsm;
00024 typedef struct EdgeAsmFPUTag EdgeAsmFPU;
00025
00026
00027
00028 extern void DrawScanLineGouraudNoZBufferZWrite_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00029 extern void DrawScanLineGouraudNoZBufferZWriteTrans_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00030
00031 extern void DrawScanLineGouraudNoZBufferZWriteSolid_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00032
00033
00034 extern void DrawScanLineGouraudNoZ_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00035 extern void DrawScanLineGouraudNoZTrans_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00036
00037 extern void DrawScanLineGouraudNoZSolid_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00038
00039
00040 extern void DrawScanLineGouraudNoZAlphaTex_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00041
00042 extern void DrawScanLineGouraudNoZBufferZWriteAlphaTex_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00043
00044 extern void DrawScanLineGouraudZBufferNoZWriteAlphaTex_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00045
00046 extern void DrawScanLineGouraudZBufferAlphaTex_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00047
00048
00049 extern void DrawScanLineGouraudNoZAlphaARGB_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00050
00051 extern void DrawScanLineGouraudNoZBufferZWriteAlphaARGB_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00052
00053 extern void DrawScanLineGouraudZBufferNoZWriteAlphaARGB_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00054
00055 extern void DrawScanLineGouraudZBufferAlphaARGB_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00056
00058 extern void DrawScanLineGouraudZBuffer_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00059 extern void DrawScanLineGouraudZBufferTrans_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00060
00061 extern void DrawScanLineGouraudZBufferSolid_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00062
00063
00064 extern void DrawScanLineGouraudZBufferNoZWrite_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00065 extern void DrawScanLineGouraudZBufferNoZWriteTrans_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00066
00067 extern void DrawScanLineGouraudZBufferNoZWriteSolid_Asm3DNow(EdgeAsm *pLeft, EdgeAsm *pRight);
00068
00069
00070
00071 extern void DrawSpan32_AsmLit3DNow(int32 x1, int32 x2, int32 y);
00072 extern void DrawSpan32_AsmLitZWrite3DNow(int32 x1, int32 x2, int32 y);
00073 extern void DrawSpan32_AsmLitZBuffer3DNow(int32 x1, int32 x2, int32 y);
00074 extern void DrawSpan32_AsmGouraud3DNow(int32 x1, int32 x2, int32 y, geFloat r1, geFloat g1, geFloat b1, geFloat r2, geFloat g2, geFloat b2);
00075 extern void DrawSpan32_AsmGouraudZWrite3DNow(int32 x1, int32 x2, int32 y, geFloat r1, geFloat g1, geFloat b1, geFloat r2, geFloat g2, geFloat b2);
00076 extern void DrawSpan32_AsmGouraudZBuffer3DNow(int32 x1, int32 x2, int32 y, geFloat r1, geFloat g1, geFloat b1, geFloat r2, geFloat g2, geFloat b2);
00077 extern void DrawSpan32_AsmGouraudZBufferAlphaARGB3DNow(int32 x1, int32 x2, int32 y, geFloat r1, geFloat g1, geFloat b1, geFloat r2, geFloat g2, geFloat b2);
00078 extern void DrawSpan32_AsmGouraudZBufferVertexAlpha3DNow(int32 x1, int32 x2, int32 y, geFloat r1, geFloat g1, geFloat b1, geFloat r2, geFloat g2, geFloat b2);
00079
00080 typedef struct EdgeAsmWorldTag EdgeAsmWorld;
00081
00082 extern void Femms3DNow(void);
00083 extern void StepWorld3DNow(EdgeAsmWorld *edge);