496 lines
21 KiB
Plaintext
496 lines
21 KiB
Plaintext
|
Microsoft (R) Macro Assembler Version 9.00.30729.01 06/23/11 13:09:02
|
|||
|
c:\Winamp\libvp6\corelibs\cdxv\vpxblit\wx86\bcy00.asm Page 1 - 1
|
|||
|
|
|||
|
|
|||
|
;//==========================================================================
|
|||
|
;//
|
|||
|
;// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
|||
|
;// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
|||
|
;// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
|
|||
|
;// PURPOSE.
|
|||
|
;//
|
|||
|
;// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.
|
|||
|
;//
|
|||
|
;//--------------------------------------------------------------------------
|
|||
|
|
|||
|
|
|||
|
;/***********************************************\
|
|||
|
;??? bcy00.asm
|
|||
|
; yv12 to yuy2 same blitter
|
|||
|
;\***********************************************/
|
|||
|
|
|||
|
.586
|
|||
|
.387
|
|||
|
.MODEL flat, SYSCALL, os_dos
|
|||
|
.MMX
|
|||
|
|
|||
|
00000000 .CODE
|
|||
|
|
|||
|
NAME x86bcy00
|
|||
|
|
|||
|
PUBLIC bcy00_MMX_
|
|||
|
PUBLIC _bcy00_MMX
|
|||
|
|
|||
|
|
|||
|
INCLUDE wilk.ash
|
|||
|
C ;//==========================================================================
|
|||
|
C ;//
|
|||
|
C ;// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
|||
|
C ;// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
|||
|
C ;// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
|
|||
|
C ;// PURPOSE.
|
|||
|
C ;//
|
|||
|
C ;// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.
|
|||
|
C ;//
|
|||
|
C ;//--------------------------------------------------------------------------
|
|||
|
C
|
|||
|
C
|
|||
|
C ;/***********************************************\
|
|||
|
C ;
|
|||
|
C ;\***********************************************/
|
|||
|
C
|
|||
|
C ;;
|
|||
|
C ;; YUV buffer configuration structure
|
|||
|
C ;;
|
|||
|
C ;------------------------------------------------
|
|||
|
00000030 C YUV_BUFFER_CONFIG STRUC
|
|||
|
00000000 00000000 C YWidth dd ?
|
|||
|
00000004 00000000 C YHeight dd ?
|
|||
|
00000008 00000000 C YStride dd ?
|
|||
|
C
|
|||
|
0000000C 00000000 C UVWidth dd ?
|
|||
|
00000010 00000000 C UVHeight dd ?
|
|||
|
00000014 00000000 C UVStride dd ?
|
|||
|
C
|
|||
|
00000018 00000000 C YBuffer dd ?
|
|||
|
0000001C 00000000 C UBuffer dd ?
|
|||
|
00000020 00000000 C VBuffer dd ?
|
|||
|
C
|
|||
|
00000024 00000000 C uvStart dd ?
|
|||
|
00000028 00000000 C uvDstArea dd ?
|
|||
|
0000002C 00000000 C uvUsedArea dd ?
|
|||
|
C YUV_BUFFER_CONFIG ENDS
|
|||
|
C ;------------------------------------------------
|
|||
|
C
|
|||
|
INCLUDE wblit.ash
|
|||
|
C ;//==========================================================================
|
|||
|
C ;//
|
|||
|
C ;// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
|||
|
C ;// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
|||
|
C ;// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
|
|||
|
C ;// PURPOSE.
|
|||
|
C ;//
|
|||
|
C ;// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.
|
|||
|
C ;//
|
|||
|
C ;//--------------------------------------------------------------------------
|
|||
|
C
|
|||
|
C
|
|||
|
C ;/***********************************************\
|
|||
|
C ;??? wblit.ash
|
|||
|
C ;
|
|||
|
C ;\***********************************************/
|
|||
|
C
|
|||
|
C ;------------------------------------------------
|
|||
|
00000028 C x86_Params STRUC
|
|||
|
00000000 00000006 [ C dd 6 dup (?) ;6 pushed regs
|
|||
|
00000000
|
|||
|
]
|
|||
|
0DD0000C 00000000 C dd ? ;return address
|
|||
|
0DD00010 00000000 C dst dd ?
|
|||
|
0DD00014 00000000 C scrnPitch dd ?
|
|||
|
0DD00018 00000000 C buffConfig dd ?
|
|||
|
C x86_Params ENDS
|
|||
|
C ;------------------------------------------------
|
|||
|
C
|
|||
|
C EXTERNDEF _WK_YforY:DWORD
|
|||
|
C EXTERNDEF _WK_UforBG:DWORD
|
|||
|
C EXTERNDEF _WK_VforRG:DWORD
|
|||
|
C
|
|||
|
C EXTERNDEF _WK_YforY_MMX:DWORD
|
|||
|
C EXTERNDEF _WK_UforBG_MMX:DWORD
|
|||
|
C EXTERNDEF _WK_VforRG_MMX:DWORD
|
|||
|
C
|
|||
|
C EXTERNDEF _WK_ClampTableR:DWORD
|
|||
|
C EXTERNDEF _WK_ClampTableG:DWORD
|
|||
|
C EXTERNDEF _WK_ClampTableB:DWORD
|
|||
|
C
|
|||
|
C EXTERNDEF _WK_ClampTableR555:DWORD
|
|||
|
C EXTERNDEF _WK_ClampTableG555:DWORD
|
|||
|
C EXTERNDEF _WK_ClampTableB555:DWORD
|
|||
|
C
|
|||
|
C EXTERNDEF _WK_ClampTableR565:DWORD
|
|||
|
C EXTERNDEF _WK_ClampTableG565:DWORD
|
|||
|
C EXTERNDEF _WK_ClampTableB565:DWORD
|
|||
|
C
|
|||
|
= 00000600 C CLAMPCENTER EQU 256*4+128*4
|
|||
|
C
|
|||
|
C
|
|||
|
C EXTERNDEF WK_johnsTable_MMX:DWORD
|
|||
|
C EXTERNDEF WK_johnsTable:DWORD
|
|||
|
C
|
|||
|
C EXTERNDEF WK_RGB_MULFACTOR_555:QWORD
|
|||
|
C EXTERNDEF WK_RB_MASK_555:QWORD
|
|||
|
C EXTERNDEF WK_G_MASK_555:QWORD
|
|||
|
C
|
|||
|
C EXTERNDEF WK_RGB_MULFACTOR_565:QWORD
|
|||
|
C EXTERNDEF WK_RB_MASK_565:QWORD
|
|||
|
C EXTERNDEF WK_G_MASK_565:QWORD
|
|||
|
C
|
|||
|
C EXTERNDEF WK_MASK_YY_MMX:DWORD
|
|||
|
C EXTERNDEF WK_MASK_BYTE0:DWORD
|
|||
|
C
|
|||
|
C
|
|||
|
|
|||
|
;------------------------------------------------
|
|||
|
; local vars
|
|||
|
00000000 L_3s QWORD 0003000300030003h ; 4 3's
|
|||
|
0003000300030003
|
|||
|
00000008 L_2s QWORD 0002000200020002h ; 4 3's
|
|||
|
0002000200020002
|
|||
|
|
|||
|
= 00000000 L_blkWidth EQU 0
|
|||
|
= 00000004 L_YStride EQU L_blkWidth+4
|
|||
|
= 00000008 L_Height EQU L_YStride+4
|
|||
|
= 0000000C L_extraWidth EQU L_Height+4
|
|||
|
= 00000010 L_tempspaceL EQU L_extraWidth+4
|
|||
|
= 00000018 L_tempspaceH EQU L_tempspaceL+8
|
|||
|
= 00000020 LOCAL_SPACE EQU L_tempspaceL+16
|
|||
|
|
|||
|
;------------------------------------------------
|
|||
|
;void bcy00_MMX(unsigned long *dst, int scrnPitch, YUV_BUFFER_CONFIG *buffConfig);
|
|||
|
;
|
|||
|
00000010 bcy00_MMX_:
|
|||
|
00000010 _bcy00_MMX:
|
|||
|
00000010 56 push esi
|
|||
|
00000011 57 push edi
|
|||
|
|
|||
|
00000012 55 push ebp
|
|||
|
00000013 53 push ebx
|
|||
|
|
|||
|
00000014 51 push ecx
|
|||
|
00000015 52 push edx
|
|||
|
|
|||
|
00000016 8B 7C 24 1C mov edi,[esp].dst ; edi = dst
|
|||
|
0000001A 8B 6C 24 24 mov ebp,[esp].buffConfig ; ebp = buffConfig
|
|||
|
|
|||
|
0000001E 90 nop
|
|||
|
0000001F 83 EC 20 sub esp,LOCAL_SPACE
|
|||
|
|
|||
|
00000022 8B 45 08 mov eax,[ebp].YStride ; eax = YStride
|
|||
|
00000025 89 44 24 04 mov L_YStride[esp],eax ; save to local
|
|||
|
|
|||
|
00000029 8B 45 04 mov eax,[ebp].YHeight ; eax = Height
|
|||
|
0000002C 48 dec eax ; 1 less than full height
|
|||
|
|
|||
|
0000002D 89 44 24 08 mov L_Height[esp], eax ; save to local
|
|||
|
00000031 8B 4D 00 mov ecx,[ebp].YWidth ; ecx = YWidth
|
|||
|
|
|||
|
; mov eax, [esp+LOCAL_SPACE].scrnPitch
|
|||
|
|
|||
|
00000034 8B C1 mov eax, ecx ; eax = YWidth
|
|||
|
00000036 C1 E9 03 shr ecx,3 ;blocks of 8 pixels
|
|||
|
|
|||
|
00000039 8B 75 18 mov esi,[ebp].YBuffer ; esi = YBuffer
|
|||
|
0000003C 33 DB xor ebx,ebx ; ebx = 0
|
|||
|
|
|||
|
0000003E 89 0C 24 mov L_blkWidth[esp],ecx ; Save YWidth/8 to local
|
|||
|
00000041 83 E0 07 and eax, 7 ; extraWidth
|
|||
|
|
|||
|
00000044 89 44 24 0C mov L_extraWidth[esp], eax ; save extraWidth;
|
|||
|
00000048 8B C3 mov eax,ebx ; eax = 0;
|
|||
|
|
|||
|
0000004A 8B 55 20 mov edx,[ebp].VBuffer ; edx = YBuffer
|
|||
|
0000004D 8B 6D 1C mov ebp,[ebp].UBuffer ; ebp = UBuffer
|
|||
|
|
|||
|
00000050 0F EF E4 pxor mm4,mm4
|
|||
|
;
|
|||
|
; eax = 0
|
|||
|
; ebx = 0;
|
|||
|
; ecx = YWidth/8
|
|||
|
; edx = VBuffer
|
|||
|
; ebp = UBuffer
|
|||
|
; esi = YBuffer
|
|||
|
; edi = dst
|
|||
|
;
|
|||
|
|
|||
|
00000053 hloop:
|
|||
|
00000053 wloop:
|
|||
|
00000053 0F 6F 3C 13 movq mm7,[edx+ebx] ; get 8 v's
|
|||
|
00000057 0F 60 FC punpcklbw mm7,mm4 ; unpack v's with 0's
|
|||
|
|
|||
|
0000005A 0F D5 3D pmullw mm7,L_3s ; v's * 3
|
|||
|
00000000 R
|
|||
|
00000061 0F 6F 2C 10 movq mm5,[edx+eax] ; get 8 v's pointed to by eax
|
|||
|
|
|||
|
00000065 0F 7F EE movq mm6,mm5 ; copy to mm7
|
|||
|
00000068 0F 60 F4 punpcklbw mm6,mm4 ; unpack v's with 0's
|
|||
|
|
|||
|
0000006B 0F FD FE paddw mm7,mm6 ; mm7 = 3 * [ebx] + 1 * [eax]
|
|||
|
0000006E 0F FD 3D paddw mm7,L_2s ; mm7 = 3 * [ebx] + 1 * [eax] + 2
|
|||
|
00000008 R
|
|||
|
|
|||
|
00000075 0F 71 D7 02 psrlw mm7,2 ; mm7 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
|
|||
|
|
|||
|
00000079 0F 6F 1C 2B movq mm3,[ebp+ebx] ; get 8 u's into mm1
|
|||
|
0000007D 0F 60 DC punpcklbw mm3,mm4 ; unpack u's with 0's
|
|||
|
|
|||
|
00000080 0F D5 1D pmullw mm3,L_3s ; u's * 3
|
|||
|
00000000 R
|
|||
|
00000087 0F 6F 2C 28 movq mm5,[ebp+eax] ; get 8 u's pointed to by eax
|
|||
|
|
|||
|
0000008B 0F 7F EE movq mm6,mm5 ; copy to mm3
|
|||
|
0000008E 0F 60 F4 punpcklbw mm6,mm4 ; unpack u's with 0's
|
|||
|
|
|||
|
00000091 0F FD DE paddw mm3,mm6 ; mm3 = 3 * [ebx] + 1 * [eax]
|
|||
|
00000094 0F FD 1D paddw mm3,L_2s ; mm3 = 3 * [ebx] + 1 * [eax] + 2
|
|||
|
00000008 R
|
|||
|
|
|||
|
0000009B 0F 71 D3 02 psrlw mm3,2 ; mm3 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
|
|||
|
|
|||
|
0000009F 0F 71 F7 08 psllw mm7,8 ; v3 0 v2 0 v1 0 v0 0
|
|||
|
000000A3 0F EB DF por mm3,mm7 ; v3 u3 v2 u2 v1 u1 v0 u0
|
|||
|
|
|||
|
000000A6 0F 6F 04 5E movq mm0,[esi+ebx*2] ; get the y's
|
|||
|
000000AA 0F 7F C1 movq mm1,mm0 ; save upper y's
|
|||
|
|
|||
|
000000AD 0F 60 C3 punpcklbw mm0,mm3 ; v1 y3 u1 y2 v0 y1 u0 y0
|
|||
|
000000B0 0F 68 CB punpckhbw mm1,mm3 ; v3 y7 u3 y6 v2 y5 u2 y4
|
|||
|
|
|||
|
000000B3 49 dec ecx
|
|||
|
000000B4 0F 7F 04 9F movq [edi+ebx*4],mm0 ;write first 4 pixels
|
|||
|
;-
|
|||
|
|
|||
|
000000B8 0F 7F 4C 9F 08 movq 8[edi+ebx*4],mm1 ;write next 4 pixels
|
|||
|
;-
|
|||
|
|
|||
|
000000BD 8D 40 04 lea eax,[eax+4] ;increment *1 pointer to next pixel
|
|||
|
000000C0 8D 5B 04 lea ebx,[ebx+4] ;increment *3 pointer to next pixel
|
|||
|
|
|||
|
000000C3 7F 8E jg wloop
|
|||
|
;------------------------------------------------------------
|
|||
|
; need to handle the line end condition when YWidth%8 !=0
|
|||
|
;------------------------------------------------------------
|
|||
|
000000C5 8B 4C 24 0C mov ecx, L_extraWidth[esp] ; extraWidth
|
|||
|
|
|||
|
000000C9 ewloop:
|
|||
|
000000C9 49 dec ecx
|
|||
|
000000CA 78 79 js phloop
|
|||
|
|
|||
|
000000CC 0F 6F 3C 13 movq mm7,[edx+ebx] ; get 8 v's
|
|||
|
000000D0 0F 60 FC punpcklbw mm7,mm4 ; unpack v's with 0's
|
|||
|
|
|||
|
000000D3 0F D5 3D pmullw mm7,L_3s ; v's * 3
|
|||
|
00000000 R
|
|||
|
000000DA 0F 6F 2C 10 movq mm5,[edx+eax] ; get 8 v's pointed to by eax
|
|||
|
|
|||
|
000000DE 0F 7F EE movq mm6,mm5 ; copy to mm7
|
|||
|
000000E1 0F 60 F4 punpcklbw mm6,mm4 ; unpack v's with 0's
|
|||
|
|
|||
|
000000E4 0F FD FE paddw mm7,mm6 ; mm7 = 3 * [ebx] + 1 * [eax]
|
|||
|
000000E7 0F FD 3D paddw mm7,L_2s ; mm7 = 3 * [ebx] + 1 * [eax] + 2
|
|||
|
00000008 R
|
|||
|
|
|||
|
000000EE 0F 71 D7 02 psrlw mm7,2 ; mm7 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
|
|||
|
|
|||
|
000000F2 0F 6F 1C 2B movq mm3,[ebp+ebx] ; get 8 u's into mm1
|
|||
|
000000F6 0F 60 DC punpcklbw mm3,mm4 ; unpack u's with 0's
|
|||
|
|
|||
|
000000F9 0F D5 1D pmullw mm3,L_3s ; u's * 3
|
|||
|
00000000 R
|
|||
|
00000100 0F 6F 2C 28 movq mm5,[ebp+eax] ; get 8 u's pointed to by eax
|
|||
|
|
|||
|
00000104 0F 7F EE movq mm6,mm5 ; copy to mm3
|
|||
|
00000107 0F 60 F4 punpcklbw mm6,mm4 ; unpack u's with 0's
|
|||
|
|
|||
|
0000010A 0F FD DE paddw mm3,mm6 ; mm3 = 3 * [ebx] + 1 * [eax]
|
|||
|
0000010D 0F FD 1D paddw mm3,L_2s ; mm3 = 3 * [ebx] + 1 * [eax] + 2
|
|||
|
00000008 R
|
|||
|
|
|||
|
00000114 0F 71 D3 02 psrlw mm3,2 ; mm3 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
|
|||
|
|
|||
|
00000118 0F 71 F7 08 psllw mm7,8 ; v3 0 v2 0 v1 0 v0 0
|
|||
|
0000011C 0F EB DF por mm3,mm7 ; v3 u3 v2 u2 v1 u1 v0 u0
|
|||
|
|
|||
|
0000011F 0F 6F 04 5E movq mm0,[esi+ebx*2] ; get the y's
|
|||
|
00000123 0F 7F C1 movq mm1,mm0 ; save upper y's
|
|||
|
|
|||
|
00000126 0F 60 C3 punpcklbw mm0,mm3 ; v1 y3 u1 y2 v0 y1 u0 y0
|
|||
|
00000129 0F 68 CB punpckhbw mm1,mm3 ; v3 y7 u3 y6 v2 y5 u2 y4
|
|||
|
|
|||
|
0000012C 0F 7F 44 24 10 movq L_tempspaceL[esp],mm0 ;write first 4 pixels
|
|||
|
;-
|
|||
|
|
|||
|
00000131 0F 7F 4C 24 18 movq L_tempspaceH[esp],mm1 ;write next 4 pixels
|
|||
|
;-
|
|||
|
;------------------------------------------------------------
|
|||
|
; uncomment the next two line of code will make the image
|
|||
|
; output have a white last vertical line
|
|||
|
;------------------------------------------------------------
|
|||
|
; mov eax, 0ff80ff80h
|
|||
|
; mov L_tempspaceH[esp], eax; ; read two bytes
|
|||
|
;------------------------------------------------------------
|
|||
|
|
|||
|
00000136 8D 1C 9F lea ebx, [edi + ebx*4];get the destination pointer
|
|||
|
00000139 cploop:
|
|||
|
00000139 66| 8B 44 4C mov ax, L_tempspaceL[esp + ecx * 2]; ; read two bytes
|
|||
|
10
|
|||
|
0000013E 66| 89 04 4B mov [ebx+ecx*2], ax
|
|||
|
|
|||
|
00000142 49 dec ecx
|
|||
|
00000143 7D F4 jge cploop
|
|||
|
|
|||
|
00000145 phloop:
|
|||
|
;------------------------------------------------------------
|
|||
|
; prepare for the next line
|
|||
|
;------------------------------------------------------------
|
|||
|
00000145 8B 4C 24 08 mov ecx,DWORD PTR L_Height[esp] ;get current line number
|
|||
|
00000149 8B 5C 24 40 mov ebx,[esp+LOCAL_SPACE].scrnPitch
|
|||
|
|
|||
|
0000014D C1 E1 1F shl ecx,31 ; save low bit
|
|||
|
00000150 03 FB add edi,ebx
|
|||
|
|
|||
|
00000152 C1 F9 1F sar ecx,31 ; even lines ecx = 00000000 odd lines it equals FFFFFFFF
|
|||
|
|
|||
|
00000155 8B 5C 24 04 mov ebx,L_YStride[esp]
|
|||
|
00000159 D1 FB sar ebx,1 ; ebx is uv stride
|
|||
|
|
|||
|
0000015B 8B C3 mov eax,ebx ; eax is uv stride
|
|||
|
0000015D 23 C1 and eax,ecx ; odd lines eax equals uvpitch even lines eax = 0
|
|||
|
|
|||
|
0000015F F7 D1 not ecx ; even lines ecx = ffffffff odd lines it equals 00000000
|
|||
|
00000161 23 D9 and ebx,ecx ; ebx = uv pitch on even lines and 0 on odd lines
|
|||
|
|
|||
|
00000163 2B EB sub ebp,ebx ; increment u pointer if we're on an odd line
|
|||
|
00000165 2B D3 sub edx,ebx ; increment v pointer if we're on an odd line
|
|||
|
|
|||
|
00000167 F7 D8 neg eax ; eax = -uvpitch on odd lines and 0 on even lines
|
|||
|
00000169 03 C3 add eax,ebx ; eax = -uvpitch on odd lines and +uv pitch on even lines
|
|||
|
|
|||
|
0000016B 33 DB xor ebx,ebx ; ebx is used as column pointer so set it to 0
|
|||
|
0000016D 8B 0C 24 mov ecx,L_blkWidth[esp]
|
|||
|
|
|||
|
00000170 2B 74 24 04 sub esi,DWORD PTR L_YStride[esp]
|
|||
|
|
|||
|
00000174 FF 4C 24 08 dec DWORD PTR L_Height[esp]
|
|||
|
00000178 0F 8F FFFFFED5 jg hloop
|
|||
|
|
|||
|
0000017E 8B C3 mov eax,ebx ; last line ebx and eax should point to the same line
|
|||
|
00000180 0F 84 FFFFFECD jz hloop
|
|||
|
;------------------------------------------------
|
|||
|
|
|||
|
00000186 theExit:
|
|||
|
00000186 83 C4 20 add esp,LOCAL_SPACE
|
|||
|
00000189 90 nop
|
|||
|
|
|||
|
0000018A 0F 77 emms
|
|||
|
|
|||
|
0000018C 5A pop edx
|
|||
|
0000018D 59 pop ecx
|
|||
|
0000018E 5B pop ebx
|
|||
|
0000018F 5D pop ebp
|
|||
|
00000190 5F pop edi
|
|||
|
00000191 5E pop esi
|
|||
|
|
|||
|
00000192 C3 ret
|
|||
|
|
|||
|
;************************************************
|
|||
|
END
|
|||
|
Microsoft (R) Macro Assembler Version 9.00.30729.01 06/23/11 13:09:02
|
|||
|
c:\Winamp\libvp6\corelibs\cdxv\vpxblit\wx86\bcy00.asm Symbols 2 - 1
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Structures and Unions:
|
|||
|
|
|||
|
N a m e Size
|
|||
|
Offset Type
|
|||
|
|
|||
|
YUV_BUFFER_CONFIG . . . . . . . 00000030
|
|||
|
YWidth . . . . . . . . . . . . 00000000 DWord
|
|||
|
YHeight . . . . . . . . . . . 00000004 DWord
|
|||
|
YStride . . . . . . . . . . . 00000008 DWord
|
|||
|
UVWidth . . . . . . . . . . . 0000000C DWord
|
|||
|
UVHeight . . . . . . . . . . . 00000010 DWord
|
|||
|
UVStride . . . . . . . . . . . 00000014 DWord
|
|||
|
YBuffer . . . . . . . . . . . 00000018 DWord
|
|||
|
UBuffer . . . . . . . . . . . 0000001C DWord
|
|||
|
VBuffer . . . . . . . . . . . 00000020 DWord
|
|||
|
uvStart . . . . . . . . . . . 00000024 DWord
|
|||
|
uvDstArea . . . . . . . . . . 00000028 DWord
|
|||
|
uvUsedArea . . . . . . . . . . 0000002C DWord
|
|||
|
x86_Params . . . . . . . . . . . 00000028
|
|||
|
dst . . . . . . . . . . . . . 0000001C DWord
|
|||
|
scrnPitch . . . . . . . . . . 00000020 DWord
|
|||
|
buffConfig . . . . . . . . . . 00000024 DWord
|
|||
|
|
|||
|
|
|||
|
Segments and Groups:
|
|||
|
|
|||
|
N a m e Size Length Align Combine Class
|
|||
|
|
|||
|
FLAT . . . . . . . . . . . . . . GROUP
|
|||
|
_DATA . . . . . . . . . . . . . 32 Bit 00000000 Para Public 'DATA'
|
|||
|
_TEXT . . . . . . . . . . . . . 32 Bit 00000193 Para Public 'CODE'
|
|||
|
|
|||
|
|
|||
|
Symbols:
|
|||
|
|
|||
|
N a m e Type Value Attr
|
|||
|
|
|||
|
@CodeSize . . . . . . . . . . . Number 00000000h
|
|||
|
@DataSize . . . . . . . . . . . Number 00000000h
|
|||
|
@Interface . . . . . . . . . . . Number 00000002h
|
|||
|
@Model . . . . . . . . . . . . . Number 00000007h
|
|||
|
@code . . . . . . . . . . . . . Text _TEXT
|
|||
|
@data . . . . . . . . . . . . . Text FLAT
|
|||
|
@fardata? . . . . . . . . . . . Text FLAT
|
|||
|
@fardata . . . . . . . . . . . . Text FLAT
|
|||
|
@stack . . . . . . . . . . . . . Text FLAT
|
|||
|
CLAMPCENTER . . . . . . . . . . Number 00000600h
|
|||
|
LOCAL_SPACE . . . . . . . . . . Number 00000020h
|
|||
|
L_2s . . . . . . . . . . . . . . QWord 00000008 _TEXT
|
|||
|
L_3s . . . . . . . . . . . . . . QWord 00000000 _TEXT
|
|||
|
L_Height . . . . . . . . . . . . Number 00000008h
|
|||
|
L_YStride . . . . . . . . . . . Number 00000004h
|
|||
|
L_blkWidth . . . . . . . . . . . Number 00000000h
|
|||
|
L_extraWidth . . . . . . . . . . Number 0000000Ch
|
|||
|
L_tempspaceH . . . . . . . . . . Number 00000018h
|
|||
|
L_tempspaceL . . . . . . . . . . Number 00000010h
|
|||
|
WK_G_MASK_555 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
|
|||
|
WK_G_MASK_565 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
|
|||
|
WK_MASK_BYTE0 . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
WK_MASK_YY_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
WK_RB_MASK_555 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
|
|||
|
WK_RB_MASK_565 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
|
|||
|
WK_RGB_MULFACTOR_555 . . . . . . QWord 00000000 FLAT External SYSCALL
|
|||
|
WK_RGB_MULFACTOR_565 . . . . . . QWord 00000000 FLAT External SYSCALL
|
|||
|
WK_johnsTable_MMX . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
WK_johnsTable . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableB555 . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableB565 . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableB . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableG555 . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableG565 . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableG . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableR555 . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableR565 . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_ClampTableR . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_UforBG_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_UforBG . . . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_VforRG_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_VforRG . . . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_YforY_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_WK_YforY . . . . . . . . . . . DWord 00000000 FLAT External SYSCALL
|
|||
|
_bcy00_MMX . . . . . . . . . . . L Near 00000010 _TEXT Public SYSCALL
|
|||
|
bcy00_MMX_ . . . . . . . . . . . L Near 00000010 _TEXT Public SYSCALL
|
|||
|
cploop . . . . . . . . . . . . . L Near 00000139 _TEXT
|
|||
|
ewloop . . . . . . . . . . . . . L Near 000000C9 _TEXT
|
|||
|
hloop . . . . . . . . . . . . . L Near 00000053 _TEXT
|
|||
|
phloop . . . . . . . . . . . . . L Near 00000145 _TEXT
|
|||
|
theExit . . . . . . . . . . . . L Near 00000186 _TEXT
|
|||
|
wloop . . . . . . . . . . . . . L Near 00000053 _TEXT
|
|||
|
|
|||
|
0 Warnings
|
|||
|
0 Errors
|