Releasebcy00.lst 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495
  1. Microsoft (R) Macro Assembler Version 9.00.30729.01 06/23/11 13:09:02
  2. c:\Winamp\libvp6\corelibs\cdxv\vpxblit\wx86\bcy00.asm Page 1 - 1
  3. ;//==========================================================================
  4. ;//
  5. ;// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  6. ;// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  7. ;// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
  8. ;// PURPOSE.
  9. ;//
  10. ;// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.
  11. ;//
  12. ;//--------------------------------------------------------------------------
  13. ;/***********************************************\
  14. ;??? bcy00.asm
  15. ; yv12 to yuy2 same blitter
  16. ;\***********************************************/
  17. .586
  18. .387
  19. .MODEL flat, SYSCALL, os_dos
  20. .MMX
  21. 00000000 .CODE
  22. NAME x86bcy00
  23. PUBLIC bcy00_MMX_
  24. PUBLIC _bcy00_MMX
  25. INCLUDE wilk.ash
  26. C ;//==========================================================================
  27. C ;//
  28. C ;// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  29. C ;// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  30. C ;// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
  31. C ;// PURPOSE.
  32. C ;//
  33. C ;// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.
  34. C ;//
  35. C ;//--------------------------------------------------------------------------
  36. C
  37. C
  38. C ;/***********************************************\
  39. C ;
  40. C ;\***********************************************/
  41. C
  42. C ;;
  43. C ;; YUV buffer configuration structure
  44. C ;;
  45. C ;------------------------------------------------
  46. 00000030 C YUV_BUFFER_CONFIG STRUC
  47. 00000000 00000000 C YWidth dd ?
  48. 00000004 00000000 C YHeight dd ?
  49. 00000008 00000000 C YStride dd ?
  50. C
  51. 0000000C 00000000 C UVWidth dd ?
  52. 00000010 00000000 C UVHeight dd ?
  53. 00000014 00000000 C UVStride dd ?
  54. C
  55. 00000018 00000000 C YBuffer dd ?
  56. 0000001C 00000000 C UBuffer dd ?
  57. 00000020 00000000 C VBuffer dd ?
  58. C
  59. 00000024 00000000 C uvStart dd ?
  60. 00000028 00000000 C uvDstArea dd ?
  61. 0000002C 00000000 C uvUsedArea dd ?
  62. C YUV_BUFFER_CONFIG ENDS
  63. C ;------------------------------------------------
  64. C
  65. INCLUDE wblit.ash
  66. C ;//==========================================================================
  67. C ;//
  68. C ;// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  69. C ;// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  70. C ;// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
  71. C ;// PURPOSE.
  72. C ;//
  73. C ;// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.
  74. C ;//
  75. C ;//--------------------------------------------------------------------------
  76. C
  77. C
  78. C ;/***********************************************\
  79. C ;??? wblit.ash
  80. C ;
  81. C ;\***********************************************/
  82. C
  83. C ;------------------------------------------------
  84. 00000028 C x86_Params STRUC
  85. 00000000 00000006 [ C dd 6 dup (?) ;6 pushed regs
  86. 00000000
  87. ]
  88. 0DD0000C 00000000 C dd ? ;return address
  89. 0DD00010 00000000 C dst dd ?
  90. 0DD00014 00000000 C scrnPitch dd ?
  91. 0DD00018 00000000 C buffConfig dd ?
  92. C x86_Params ENDS
  93. C ;------------------------------------------------
  94. C
  95. C EXTERNDEF _WK_YforY:DWORD
  96. C EXTERNDEF _WK_UforBG:DWORD
  97. C EXTERNDEF _WK_VforRG:DWORD
  98. C
  99. C EXTERNDEF _WK_YforY_MMX:DWORD
  100. C EXTERNDEF _WK_UforBG_MMX:DWORD
  101. C EXTERNDEF _WK_VforRG_MMX:DWORD
  102. C
  103. C EXTERNDEF _WK_ClampTableR:DWORD
  104. C EXTERNDEF _WK_ClampTableG:DWORD
  105. C EXTERNDEF _WK_ClampTableB:DWORD
  106. C
  107. C EXTERNDEF _WK_ClampTableR555:DWORD
  108. C EXTERNDEF _WK_ClampTableG555:DWORD
  109. C EXTERNDEF _WK_ClampTableB555:DWORD
  110. C
  111. C EXTERNDEF _WK_ClampTableR565:DWORD
  112. C EXTERNDEF _WK_ClampTableG565:DWORD
  113. C EXTERNDEF _WK_ClampTableB565:DWORD
  114. C
  115. = 00000600 C CLAMPCENTER EQU 256*4+128*4
  116. C
  117. C
  118. C EXTERNDEF WK_johnsTable_MMX:DWORD
  119. C EXTERNDEF WK_johnsTable:DWORD
  120. C
  121. C EXTERNDEF WK_RGB_MULFACTOR_555:QWORD
  122. C EXTERNDEF WK_RB_MASK_555:QWORD
  123. C EXTERNDEF WK_G_MASK_555:QWORD
  124. C
  125. C EXTERNDEF WK_RGB_MULFACTOR_565:QWORD
  126. C EXTERNDEF WK_RB_MASK_565:QWORD
  127. C EXTERNDEF WK_G_MASK_565:QWORD
  128. C
  129. C EXTERNDEF WK_MASK_YY_MMX:DWORD
  130. C EXTERNDEF WK_MASK_BYTE0:DWORD
  131. C
  132. C
  133. ;------------------------------------------------
  134. ; local vars
  135. 00000000 L_3s QWORD 0003000300030003h ; 4 3's
  136. 0003000300030003
  137. 00000008 L_2s QWORD 0002000200020002h ; 4 3's
  138. 0002000200020002
  139. = 00000000 L_blkWidth EQU 0
  140. = 00000004 L_YStride EQU L_blkWidth+4
  141. = 00000008 L_Height EQU L_YStride+4
  142. = 0000000C L_extraWidth EQU L_Height+4
  143. = 00000010 L_tempspaceL EQU L_extraWidth+4
  144. = 00000018 L_tempspaceH EQU L_tempspaceL+8
  145. = 00000020 LOCAL_SPACE EQU L_tempspaceL+16
  146. ;------------------------------------------------
  147. ;void bcy00_MMX(unsigned long *dst, int scrnPitch, YUV_BUFFER_CONFIG *buffConfig);
  148. ;
  149. 00000010 bcy00_MMX_:
  150. 00000010 _bcy00_MMX:
  151. 00000010 56 push esi
  152. 00000011 57 push edi
  153. 00000012 55 push ebp
  154. 00000013 53 push ebx
  155. 00000014 51 push ecx
  156. 00000015 52 push edx
  157. 00000016 8B 7C 24 1C mov edi,[esp].dst ; edi = dst
  158. 0000001A 8B 6C 24 24 mov ebp,[esp].buffConfig ; ebp = buffConfig
  159. 0000001E 90 nop
  160. 0000001F 83 EC 20 sub esp,LOCAL_SPACE
  161. 00000022 8B 45 08 mov eax,[ebp].YStride ; eax = YStride
  162. 00000025 89 44 24 04 mov L_YStride[esp],eax ; save to local
  163. 00000029 8B 45 04 mov eax,[ebp].YHeight ; eax = Height
  164. 0000002C 48 dec eax ; 1 less than full height
  165. 0000002D 89 44 24 08 mov L_Height[esp], eax ; save to local
  166. 00000031 8B 4D 00 mov ecx,[ebp].YWidth ; ecx = YWidth
  167. ; mov eax, [esp+LOCAL_SPACE].scrnPitch
  168. 00000034 8B C1 mov eax, ecx ; eax = YWidth
  169. 00000036 C1 E9 03 shr ecx,3 ;blocks of 8 pixels
  170. 00000039 8B 75 18 mov esi,[ebp].YBuffer ; esi = YBuffer
  171. 0000003C 33 DB xor ebx,ebx ; ebx = 0
  172. 0000003E 89 0C 24 mov L_blkWidth[esp],ecx ; Save YWidth/8 to local
  173. 00000041 83 E0 07 and eax, 7 ; extraWidth
  174. 00000044 89 44 24 0C mov L_extraWidth[esp], eax ; save extraWidth;
  175. 00000048 8B C3 mov eax,ebx ; eax = 0;
  176. 0000004A 8B 55 20 mov edx,[ebp].VBuffer ; edx = YBuffer
  177. 0000004D 8B 6D 1C mov ebp,[ebp].UBuffer ; ebp = UBuffer
  178. 00000050 0F EF E4 pxor mm4,mm4
  179. ;
  180. ; eax = 0
  181. ; ebx = 0;
  182. ; ecx = YWidth/8
  183. ; edx = VBuffer
  184. ; ebp = UBuffer
  185. ; esi = YBuffer
  186. ; edi = dst
  187. ;
  188. 00000053 hloop:
  189. 00000053 wloop:
  190. 00000053 0F 6F 3C 13 movq mm7,[edx+ebx] ; get 8 v's
  191. 00000057 0F 60 FC punpcklbw mm7,mm4 ; unpack v's with 0's
  192. 0000005A 0F D5 3D pmullw mm7,L_3s ; v's * 3
  193. 00000000 R
  194. 00000061 0F 6F 2C 10 movq mm5,[edx+eax] ; get 8 v's pointed to by eax
  195. 00000065 0F 7F EE movq mm6,mm5 ; copy to mm7
  196. 00000068 0F 60 F4 punpcklbw mm6,mm4 ; unpack v's with 0's
  197. 0000006B 0F FD FE paddw mm7,mm6 ; mm7 = 3 * [ebx] + 1 * [eax]
  198. 0000006E 0F FD 3D paddw mm7,L_2s ; mm7 = 3 * [ebx] + 1 * [eax] + 2
  199. 00000008 R
  200. 00000075 0F 71 D7 02 psrlw mm7,2 ; mm7 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
  201. 00000079 0F 6F 1C 2B movq mm3,[ebp+ebx] ; get 8 u's into mm1
  202. 0000007D 0F 60 DC punpcklbw mm3,mm4 ; unpack u's with 0's
  203. 00000080 0F D5 1D pmullw mm3,L_3s ; u's * 3
  204. 00000000 R
  205. 00000087 0F 6F 2C 28 movq mm5,[ebp+eax] ; get 8 u's pointed to by eax
  206. 0000008B 0F 7F EE movq mm6,mm5 ; copy to mm3
  207. 0000008E 0F 60 F4 punpcklbw mm6,mm4 ; unpack u's with 0's
  208. 00000091 0F FD DE paddw mm3,mm6 ; mm3 = 3 * [ebx] + 1 * [eax]
  209. 00000094 0F FD 1D paddw mm3,L_2s ; mm3 = 3 * [ebx] + 1 * [eax] + 2
  210. 00000008 R
  211. 0000009B 0F 71 D3 02 psrlw mm3,2 ; mm3 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
  212. 0000009F 0F 71 F7 08 psllw mm7,8 ; v3 0 v2 0 v1 0 v0 0
  213. 000000A3 0F EB DF por mm3,mm7 ; v3 u3 v2 u2 v1 u1 v0 u0
  214. 000000A6 0F 6F 04 5E movq mm0,[esi+ebx*2] ; get the y's
  215. 000000AA 0F 7F C1 movq mm1,mm0 ; save upper y's
  216. 000000AD 0F 60 C3 punpcklbw mm0,mm3 ; v1 y3 u1 y2 v0 y1 u0 y0
  217. 000000B0 0F 68 CB punpckhbw mm1,mm3 ; v3 y7 u3 y6 v2 y5 u2 y4
  218. 000000B3 49 dec ecx
  219. 000000B4 0F 7F 04 9F movq [edi+ebx*4],mm0 ;write first 4 pixels
  220. ;-
  221. 000000B8 0F 7F 4C 9F 08 movq 8[edi+ebx*4],mm1 ;write next 4 pixels
  222. ;-
  223. 000000BD 8D 40 04 lea eax,[eax+4] ;increment *1 pointer to next pixel
  224. 000000C0 8D 5B 04 lea ebx,[ebx+4] ;increment *3 pointer to next pixel
  225. 000000C3 7F 8E jg wloop
  226. ;------------------------------------------------------------
  227. ; need to handle the line end condition when YWidth%8 !=0
  228. ;------------------------------------------------------------
  229. 000000C5 8B 4C 24 0C mov ecx, L_extraWidth[esp] ; extraWidth
  230. 000000C9 ewloop:
  231. 000000C9 49 dec ecx
  232. 000000CA 78 79 js phloop
  233. 000000CC 0F 6F 3C 13 movq mm7,[edx+ebx] ; get 8 v's
  234. 000000D0 0F 60 FC punpcklbw mm7,mm4 ; unpack v's with 0's
  235. 000000D3 0F D5 3D pmullw mm7,L_3s ; v's * 3
  236. 00000000 R
  237. 000000DA 0F 6F 2C 10 movq mm5,[edx+eax] ; get 8 v's pointed to by eax
  238. 000000DE 0F 7F EE movq mm6,mm5 ; copy to mm7
  239. 000000E1 0F 60 F4 punpcklbw mm6,mm4 ; unpack v's with 0's
  240. 000000E4 0F FD FE paddw mm7,mm6 ; mm7 = 3 * [ebx] + 1 * [eax]
  241. 000000E7 0F FD 3D paddw mm7,L_2s ; mm7 = 3 * [ebx] + 1 * [eax] + 2
  242. 00000008 R
  243. 000000EE 0F 71 D7 02 psrlw mm7,2 ; mm7 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
  244. 000000F2 0F 6F 1C 2B movq mm3,[ebp+ebx] ; get 8 u's into mm1
  245. 000000F6 0F 60 DC punpcklbw mm3,mm4 ; unpack u's with 0's
  246. 000000F9 0F D5 1D pmullw mm3,L_3s ; u's * 3
  247. 00000000 R
  248. 00000100 0F 6F 2C 28 movq mm5,[ebp+eax] ; get 8 u's pointed to by eax
  249. 00000104 0F 7F EE movq mm6,mm5 ; copy to mm3
  250. 00000107 0F 60 F4 punpcklbw mm6,mm4 ; unpack u's with 0's
  251. 0000010A 0F FD DE paddw mm3,mm6 ; mm3 = 3 * [ebx] + 1 * [eax]
  252. 0000010D 0F FD 1D paddw mm3,L_2s ; mm3 = 3 * [ebx] + 1 * [eax] + 2
  253. 00000008 R
  254. 00000114 0F 71 D3 02 psrlw mm3,2 ; mm3 = ( 3 * [ebx] + 1 * [eax] + 2 ) / 4
  255. 00000118 0F 71 F7 08 psllw mm7,8 ; v3 0 v2 0 v1 0 v0 0
  256. 0000011C 0F EB DF por mm3,mm7 ; v3 u3 v2 u2 v1 u1 v0 u0
  257. 0000011F 0F 6F 04 5E movq mm0,[esi+ebx*2] ; get the y's
  258. 00000123 0F 7F C1 movq mm1,mm0 ; save upper y's
  259. 00000126 0F 60 C3 punpcklbw mm0,mm3 ; v1 y3 u1 y2 v0 y1 u0 y0
  260. 00000129 0F 68 CB punpckhbw mm1,mm3 ; v3 y7 u3 y6 v2 y5 u2 y4
  261. 0000012C 0F 7F 44 24 10 movq L_tempspaceL[esp],mm0 ;write first 4 pixels
  262. ;-
  263. 00000131 0F 7F 4C 24 18 movq L_tempspaceH[esp],mm1 ;write next 4 pixels
  264. ;-
  265. ;------------------------------------------------------------
  266. ; uncomment the next two line of code will make the image
  267. ; output have a white last vertical line
  268. ;------------------------------------------------------------
  269. ; mov eax, 0ff80ff80h
  270. ; mov L_tempspaceH[esp], eax; ; read two bytes
  271. ;------------------------------------------------------------
  272. 00000136 8D 1C 9F lea ebx, [edi + ebx*4];get the destination pointer
  273. 00000139 cploop:
  274. 00000139 66| 8B 44 4C mov ax, L_tempspaceL[esp + ecx * 2]; ; read two bytes
  275. 10
  276. 0000013E 66| 89 04 4B mov [ebx+ecx*2], ax
  277. 00000142 49 dec ecx
  278. 00000143 7D F4 jge cploop
  279. 00000145 phloop:
  280. ;------------------------------------------------------------
  281. ; prepare for the next line
  282. ;------------------------------------------------------------
  283. 00000145 8B 4C 24 08 mov ecx,DWORD PTR L_Height[esp] ;get current line number
  284. 00000149 8B 5C 24 40 mov ebx,[esp+LOCAL_SPACE].scrnPitch
  285. 0000014D C1 E1 1F shl ecx,31 ; save low bit
  286. 00000150 03 FB add edi,ebx
  287. 00000152 C1 F9 1F sar ecx,31 ; even lines ecx = 00000000 odd lines it equals FFFFFFFF
  288. 00000155 8B 5C 24 04 mov ebx,L_YStride[esp]
  289. 00000159 D1 FB sar ebx,1 ; ebx is uv stride
  290. 0000015B 8B C3 mov eax,ebx ; eax is uv stride
  291. 0000015D 23 C1 and eax,ecx ; odd lines eax equals uvpitch even lines eax = 0
  292. 0000015F F7 D1 not ecx ; even lines ecx = ffffffff odd lines it equals 00000000
  293. 00000161 23 D9 and ebx,ecx ; ebx = uv pitch on even lines and 0 on odd lines
  294. 00000163 2B EB sub ebp,ebx ; increment u pointer if we're on an odd line
  295. 00000165 2B D3 sub edx,ebx ; increment v pointer if we're on an odd line
  296. 00000167 F7 D8 neg eax ; eax = -uvpitch on odd lines and 0 on even lines
  297. 00000169 03 C3 add eax,ebx ; eax = -uvpitch on odd lines and +uv pitch on even lines
  298. 0000016B 33 DB xor ebx,ebx ; ebx is used as column pointer so set it to 0
  299. 0000016D 8B 0C 24 mov ecx,L_blkWidth[esp]
  300. 00000170 2B 74 24 04 sub esi,DWORD PTR L_YStride[esp]
  301. 00000174 FF 4C 24 08 dec DWORD PTR L_Height[esp]
  302. 00000178 0F 8F FFFFFED5 jg hloop
  303. 0000017E 8B C3 mov eax,ebx ; last line ebx and eax should point to the same line
  304. 00000180 0F 84 FFFFFECD jz hloop
  305. ;------------------------------------------------
  306. 00000186 theExit:
  307. 00000186 83 C4 20 add esp,LOCAL_SPACE
  308. 00000189 90 nop
  309. 0000018A 0F 77 emms
  310. 0000018C 5A pop edx
  311. 0000018D 59 pop ecx
  312. 0000018E 5B pop ebx
  313. 0000018F 5D pop ebp
  314. 00000190 5F pop edi
  315. 00000191 5E pop esi
  316. 00000192 C3 ret
  317. ;************************************************
  318. END
  319. Microsoft (R) Macro Assembler Version 9.00.30729.01 06/23/11 13:09:02
  320. c:\Winamp\libvp6\corelibs\cdxv\vpxblit\wx86\bcy00.asm Symbols 2 - 1
  321. Structures and Unions:
  322. N a m e Size
  323. Offset Type
  324. YUV_BUFFER_CONFIG . . . . . . . 00000030
  325. YWidth . . . . . . . . . . . . 00000000 DWord
  326. YHeight . . . . . . . . . . . 00000004 DWord
  327. YStride . . . . . . . . . . . 00000008 DWord
  328. UVWidth . . . . . . . . . . . 0000000C DWord
  329. UVHeight . . . . . . . . . . . 00000010 DWord
  330. UVStride . . . . . . . . . . . 00000014 DWord
  331. YBuffer . . . . . . . . . . . 00000018 DWord
  332. UBuffer . . . . . . . . . . . 0000001C DWord
  333. VBuffer . . . . . . . . . . . 00000020 DWord
  334. uvStart . . . . . . . . . . . 00000024 DWord
  335. uvDstArea . . . . . . . . . . 00000028 DWord
  336. uvUsedArea . . . . . . . . . . 0000002C DWord
  337. x86_Params . . . . . . . . . . . 00000028
  338. dst . . . . . . . . . . . . . 0000001C DWord
  339. scrnPitch . . . . . . . . . . 00000020 DWord
  340. buffConfig . . . . . . . . . . 00000024 DWord
  341. Segments and Groups:
  342. N a m e Size Length Align Combine Class
  343. FLAT . . . . . . . . . . . . . . GROUP
  344. _DATA . . . . . . . . . . . . . 32 Bit 00000000 Para Public 'DATA'
  345. _TEXT . . . . . . . . . . . . . 32 Bit 00000193 Para Public 'CODE'
  346. Symbols:
  347. N a m e Type Value Attr
  348. @CodeSize . . . . . . . . . . . Number 00000000h
  349. @DataSize . . . . . . . . . . . Number 00000000h
  350. @Interface . . . . . . . . . . . Number 00000002h
  351. @Model . . . . . . . . . . . . . Number 00000007h
  352. @code . . . . . . . . . . . . . Text _TEXT
  353. @data . . . . . . . . . . . . . Text FLAT
  354. @fardata? . . . . . . . . . . . Text FLAT
  355. @fardata . . . . . . . . . . . . Text FLAT
  356. @stack . . . . . . . . . . . . . Text FLAT
  357. CLAMPCENTER . . . . . . . . . . Number 00000600h
  358. LOCAL_SPACE . . . . . . . . . . Number 00000020h
  359. L_2s . . . . . . . . . . . . . . QWord 00000008 _TEXT
  360. L_3s . . . . . . . . . . . . . . QWord 00000000 _TEXT
  361. L_Height . . . . . . . . . . . . Number 00000008h
  362. L_YStride . . . . . . . . . . . Number 00000004h
  363. L_blkWidth . . . . . . . . . . . Number 00000000h
  364. L_extraWidth . . . . . . . . . . Number 0000000Ch
  365. L_tempspaceH . . . . . . . . . . Number 00000018h
  366. L_tempspaceL . . . . . . . . . . Number 00000010h
  367. WK_G_MASK_555 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
  368. WK_G_MASK_565 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
  369. WK_MASK_BYTE0 . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  370. WK_MASK_YY_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  371. WK_RB_MASK_555 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
  372. WK_RB_MASK_565 . . . . . . . . . QWord 00000000 FLAT External SYSCALL
  373. WK_RGB_MULFACTOR_555 . . . . . . QWord 00000000 FLAT External SYSCALL
  374. WK_RGB_MULFACTOR_565 . . . . . . QWord 00000000 FLAT External SYSCALL
  375. WK_johnsTable_MMX . . . . . . . DWord 00000000 FLAT External SYSCALL
  376. WK_johnsTable . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  377. _WK_ClampTableB555 . . . . . . . DWord 00000000 FLAT External SYSCALL
  378. _WK_ClampTableB565 . . . . . . . DWord 00000000 FLAT External SYSCALL
  379. _WK_ClampTableB . . . . . . . . DWord 00000000 FLAT External SYSCALL
  380. _WK_ClampTableG555 . . . . . . . DWord 00000000 FLAT External SYSCALL
  381. _WK_ClampTableG565 . . . . . . . DWord 00000000 FLAT External SYSCALL
  382. _WK_ClampTableG . . . . . . . . DWord 00000000 FLAT External SYSCALL
  383. _WK_ClampTableR555 . . . . . . . DWord 00000000 FLAT External SYSCALL
  384. _WK_ClampTableR565 . . . . . . . DWord 00000000 FLAT External SYSCALL
  385. _WK_ClampTableR . . . . . . . . DWord 00000000 FLAT External SYSCALL
  386. _WK_UforBG_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  387. _WK_UforBG . . . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  388. _WK_VforRG_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  389. _WK_VforRG . . . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  390. _WK_YforY_MMX . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  391. _WK_YforY . . . . . . . . . . . DWord 00000000 FLAT External SYSCALL
  392. _bcy00_MMX . . . . . . . . . . . L Near 00000010 _TEXT Public SYSCALL
  393. bcy00_MMX_ . . . . . . . . . . . L Near 00000010 _TEXT Public SYSCALL
  394. cploop . . . . . . . . . . . . . L Near 00000139 _TEXT
  395. ewloop . . . . . . . . . . . . . L Near 000000C9 _TEXT
  396. hloop . . . . . . . . . . . . . L Near 00000053 _TEXT
  397. phloop . . . . . . . . . . . . . L Near 00000145 _TEXT
  398. theExit . . . . . . . . . . . . L Near 00000186 _TEXT
  399. wloop . . . . . . . . . . . . . L Near 00000053 _TEXT
  400. 0 Warnings
  401. 0 Errors