📄 tables.asm
字号:
real4 0.1469844502, -0.3448742240e-1, -0.1733799806, -0.9821186975e-1
real4 0.1759254671, 0.1691647501, 0.1559031266, 0.1366502334
real4 0.1691647501, 0.1121459482, 0.1732714604e-1, -0.8333195722e-1
real4 0.1559031266, 0.1732714604e-1, -0.1366502334, -0.1691647501
real4 0.1366502334, -0.8333195722e-1, -0.1691647501, 0.1732714604e-1
real4 0.1250000000, 0.1250000000, 0.1250000000, 0.1250000000
real4 -0.3448742240e-1, -0.9821186975e-1, -0.1469844502, -0.1733799806
real4 -0.1633203706, -0.6764951252e-1, 0.6764951252e-1, 0.1633203706
real4 0.9821186975e-1, 0.1733799806, 0.3448742240e-1, -0.1469844502
real4 0.1121459482, 0.8333195722e-1, 0.5131556585e-1, 0.1732714604e-1
real4 -0.1559031266, -0.1759254671, -0.1366502334, -0.5131556585e-1
real4 -0.5131556585e-1, 0.1121459482, 0.1759254671, 0.8333195722e-1
real4 0.1759254671, 0.5131556585e-1, -0.1559031266, -0.1121459482
;// rows 1,15
;// w = (cos(Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_1F real4 0.1759254671, 0.1759254671, 0.1759254671, 0.1759254671
real4 0.2440156328, 0.2068664647, 0.1382237526, 0.4853772720e-1
real4 0.2298577000, 0.9521017680e-1, -0.9521017680e-1, -0.2298577000
real4 0.2068664647, -0.4853772720e-1, -0.2440156328, -0.1382237526
real4 0.2475981601, 0.2380831016, 0.2194186431, 0.1923220492
real4 0.2380831016, 0.1578346268, 0.2438629010e-1, -0.1172817081
real4 0.2194186431, 0.2438629010e-1, -0.1923220492, -0.2380831016
real4 0.1923220492, -0.1172817081, -0.2380831016, 0.2438629010e-1
real4 0.1759254671, 0.1759254671, 0.1759254671, 0.1759254671
real4 -0.4853772720e-1, -0.1382237526, -0.2068664647, -0.2440156328
real4 -0.2298577000, -0.9521017680e-1, 0.9521017680e-1, 0.2298577000
real4 0.1382237526, 0.2440156328, 0.4853772720e-1, -0.2068664647
real4 0.1578346268, 0.1172817081, 0.7222171918e-1, 0.2438629010e-1
real4 -0.2194186431, -0.2475981601, -0.1923220492, -0.7222171918e-1
real4 -0.7222171918e-1, 0.1578346268, 0.2475981601, 0.1172817081
real4 0.2475981601, 0.7222171918e-1, -0.2194186431, -0.1578346268
;// rows 2,14
;// w = (cos(2Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_2E real4 0.1733799806, 0.1733799806, 0.1733799806, 0.1733799806
real4 0.2404849416, 0.2038732892, 0.1362237767, 0.4783542905e-1
real4 0.2265318616, 0.9383256940e-1, -0.9383256940e-1, -0.2265318616
real4 0.2038732892, -0.4783542905e-1, -0.2404849416, -0.1362237767
real4 0.2440156328, 0.2346382489, 0.2162438486, 0.1895393186
real4 0.2346382489, 0.1555508988, 0.2403344196e-1, -0.1155847451
real4 0.2162438486, 0.2403344196e-1, -0.1895393186, -0.2346382489
real4 0.1895393186, -0.1155847451, -0.2346382489, 0.2403344196e-1
real4 0.1733799806, 0.1733799806, 0.1733799806, 0.1733799806
real4 -0.4783542905e-1, -0.1362237767, -0.2038732892, -0.2404849416
real4 -0.2265318616, -0.9383256940e-1, 0.9383256940e-1, 0.2265318616
real4 0.1362237767, 0.2404849416, 0.4783542905e-1, -0.2038732892
real4 0.1555508988, 0.1155847451, 0.7117673452e-1, 0.2403344196e-1
real4 -0.2162438486, -0.2440156328, -0.1895393186, -0.7117673452e-1
real4 -0.7117673452e-1, 0.1555508988, 0.2440156328, 0.1155847451
real4 0.2440156328, 0.7117673452e-1, -0.2162438486, -0.1555508988
;// rows 3,13
;// w = (cos(3Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_3D real4 0.1691647501, 0.1691647501, 0.1691647501, 0.1691647501
real4 0.2346382489, 0.1989167025, 0.1329118913, 0.4667244955e-1
real4 0.2210243975, 0.9155130310e-1, -0.9155130310e-1, -0.2210243975
real4 0.1989167025, -0.4667244955e-1, -0.2346382489, -0.1329118913
real4 0.2380831016, 0.2289337015, 0.2109865077, 0.1849312207
real4 0.2289337015, 0.1517691306, 0.2344913864e-1, -0.1127746378
real4 0.2109865077, 0.2344913864e-1, -0.1849312207, -0.2289337015
real4 0.1849312207, -0.1127746378, -0.2289337015, 0.2344913864e-1
real4 0.1691647501, 0.1691647501, 0.1691647501, 0.1691647501
real4 -0.4667244955e-1, -0.1329118913, -0.1989167025, -0.2346382489
real4 -0.2210243975, -0.9155130310e-1, 0.9155130310e-1, 0.2210243975
real4 0.1329118913, 0.2346382489, 0.4667244955e-1, -0.1989167025
real4 0.1517691306, 0.1127746378, 0.6944627902e-1, 0.2344913864e-1
real4 -0.2109865077, -0.2380831016, -0.1849312207, -0.6944627902e-1
real4 -0.6944627902e-1, 0.1517691306, 0.2380831016, 0.1127746378
real4 0.2380831016, 0.6944627902e-1, -0.2109865077, -0.1517691306
;// rows 4,12
;// w = (cos(4Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_4C real4 0.1633203706, 0.1633203706, 0.1633203706, 0.1633203706
real4 0.2265318616, 0.1920444392, 0.1283199918, 0.4505998888e-1
real4 0.2133883476, 0.8838834768e-1, -0.8838834768e-1, -0.2133883476
real4 0.1920444392, -0.4505998888e-1, -0.2265318616, -0.1283199918
real4 0.2298577000, 0.2210243975, 0.2036972514, 0.1785421340
real4 0.2210243975, 0.1465257427, 0.2263900730e-1, -0.1088784491
real4 0.2036972514, 0.2263900730e-1, -0.1785421340, -0.2210243975
real4 0.1785421340, -0.1088784491, -0.2210243975, 0.2263900730e-1
real4 0.1633203706, 0.1633203706, 0.1633203706, 0.1633203706
real4 -0.4505998888e-1, -0.1283199918, -0.1920444392, -0.2265318616
real4 -0.2133883476, -0.8838834768e-1, 0.8838834768e-1, 0.2133883476
real4 0.1283199918, 0.2265318616, 0.4505998888e-1, -0.1920444392
real4 0.1465257427, 0.1088784491, 0.6704701788e-1, 0.2263900730e-1
real4 -0.2036972514, -0.2298577000, -0.1785421340, -0.6704701788e-1
real4 -0.6704701788e-1, 0.1465257427, 0.2298577000, 0.1088784491
real4 0.2298577000, 0.6704701788e-1, -0.2036972514, -0.1465257427
;// rows 5,11
;// w = (cos(5Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_5B real4 0.1559031266, 0.1559031266, 0.1559031266, 0.1559031266
real4 0.2162438486, 0.1833226829, 0.1224923006, 0.4301357585e-1
real4 0.2036972514, 0.8437416415e-1, -0.8437416415e-1, -0.2036972514
real4 0.1833226829, -0.4301357585e-1, -0.2162438486, -0.1224923006
real4 0.2194186431, 0.2109865077, 0.1944462791, 0.1704335891
real4 0.2109865077, 0.1398712318, 0.2161084994e-1, -0.1039337014
real4 0.1944462791, 0.2161084994e-1, -0.1704335891, -0.2109865077
real4 0.1704335891, -0.1039337014, -0.2109865077, 0.2161084994e-1
real4 0.1559031266, 0.1559031266, 0.1559031266, 0.1559031266
real4 -0.4301357585e-1, -0.1224923006, -0.1833226829, -0.2162438486
real4 -0.2036972514, -0.8437416415e-1, 0.8437416415e-1, 0.2036972514
real4 0.1224923006, 0.2162438486, 0.4301357585e-1, -0.1833226829
real4 0.1398712318, 0.1039337014, 0.6400205730e-1, 0.2161084994e-1
real4 -0.1944462791, -0.2194186431, -0.1704335891, -0.6400205730e-1
real4 -0.6400205730e-1, 0.1398712318, 0.2194186431, 0.1039337014
real4 0.2194186431, 0.6400205730e-1, -0.1944462791, -0.1398712318
;// rows 6,10
;// w = (cos(6Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_6A real4 0.1469844502, 0.1469844502, 0.1469844502, 0.1469844502
real4 0.2038732892, 0.1728354290, 0.1154849416, 0.4055291860e-1
real4 0.1920444392, 0.7954741132e-1, -0.7954741132e-1, -0.1920444392
real4 0.1728354290, -0.4055291860e-1, -0.2038732892, -0.1154849416
real4 0.2068664647, 0.1989167025, 0.1833226829, 0.1606836755
real4 0.1989167025, 0.1318696845, 0.2037456829e-1, -0.9798801542e-1
real4 0.1833226829, 0.2037456829e-1, -0.1606836755, -0.1989167025
real4 0.1606836755, -0.9798801542e-1, -0.1989167025, 0.2037456829e-1
real4 0.1469844502, 0.1469844502, 0.1469844502, 0.1469844502
real4 -0.4055291860e-1, -0.1154849416, -0.1728354290, -0.2038732892
real4 -0.1920444392, -0.7954741132e-1, 0.7954741132e-1, 0.1920444392
real4 0.1154849416, 0.2038732892, 0.4055291860e-1, -0.1728354290
real4 0.1318696845, 0.9798801542e-1, 0.6034072192e-1, 0.2037456829e-1
real4 -0.1833226829, -0.2068664647, -0.1606836755, -0.6034072192e-1
real4 -0.6034072192e-1, 0.1318696845, 0.2068664647, 0.9798801542e-1
real4 0.2068664647, 0.6034072192e-1, -0.1833226829, -0.1318696845
;// rows 7,9
;// w = (cos(7Pi/32)/8)*transpose(M16)*transpose(P16)
TBL_16x16_79 real4 0.1366502334, 0.1366502334, 0.1366502334, 0.1366502334
real4 0.1895393186, 0.1606836755, 0.1073653994, 0.3770171455e-1
real4 0.1785421340, 0.7395457340e-1, -0.7395457340e-1, -0.1785421340
real4 0.1606836755, -0.3770171455e-1, -0.1895393186, -0.1073653994
real4 0.1923220492, 0.1849312207, 0.1704335891, 0.1493862902
real4 0.1849312207, 0.1225981600, 0.1894206840e-1, -0.9109865125e-1
real4 0.1704335891, 0.1894206840e-1, -0.1493862902, -0.1849312207
real4 0.1493862902, -0.9109865125e-1, -0.1849312207, 0.1894206840e-1
real4 0.1366502334, 0.1366502334, 0.1366502334, 0.1366502334
real4 -0.3770171455e-1, -0.1073653994, -0.1606836755, -0.1895393186
real4 -0.1785421340, -0.7395457340e-1, 0.7395457340e-1, 0.1785421340
real4 0.1073653994, 0.1895393186, 0.3770171455e-1, -0.1606836755
real4 0.1225981600, 0.9109865125e-1, 0.5609827240e-1, 0.1894206840e-1
real4 -0.1704335891, -0.1923220492, -0.1493862902, -0.5609827240e-1
real4 -0.5609827240e-1, 0.1225981600, 0.1923220492, 0.9109865125e-1
real4 0.1923220492, 0.5609827240e-1, -0.1704335891, -0.1225981600
;// RGB conversion
;// conversion table indexed by number of components in the frame (Nf > 0)
TBL_RGBConv_SSE2 dword RGB_GrayConv_SSE2, 0, RGB_YCbCrConv_SSE2
TBL_RGBConv_SSE dword RGB_GrayConv_SSE, 0, RGB_YCbCrConv_SSE
;// array of conversion table indexed by cpu type
TBL_RGBConv dword TBL_RGBConv_SSE, TBL_RGBConv_SSE2, TBL_RGBConv_SSE2
;// tbl[i] = 8*(Vmax/V) for idct type i
TBL_C0 byte 8*2, 8*1, 8*2, 8*1
;// tbl[i] = ROWSIZE*(Hmax/H) for idct type i
TBL_C1 byte ROWSIZE*1, ROWSIZE*2, ROWSIZE*2, ROWSIZE*1
ALIGN 16
TBL_MultCB real4 1.772, -0.34414, 0.0, 0.0
TBL_MultCR real4 0.0, -0.71414, 1.402, 0.0
;// donkey's trick to display constants at compile time
ECHO --------------------------------------------------
siz textequ %($ - data_start)
ssiz textequ %(sizeof(DECODER))
tsiz textequ %siz + ssiz
pag textequ %siz/4096 + 1
lef textequ %4096*pag - siz
spag textequ %ssiz/4096 + 1
slef textequ %4096*spag - ssiz
tpag textequ %pag+spag
unus textequ %lef + slef
% ECHO DataSize = siz (pag page(s), lef left)
% ECHO StructSize = ssiz (spag page(s), slef left)
% ECHO TotalSize = tsiz (tpag page(s), unus unused)
ECHO --------------------------------------------------
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -