Search
lxdream.org :: lxdream/src/gdrom/edc_encoder.h :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/gdrom/edc_encoder.h
changeset 644:ccae4bfa5f82
author nkeynes
date Sun Mar 02 11:38:08 2008 +0000 (12 years ago)
permissions -rw-r--r--
last change Bug #59: Add provisional support for all CD read modes (not validated)
file annotate diff log raw
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/src/gdrom/edc_encoder.h Sun Mar 02 11:38:08 2008 +0000
1.3 @@ -0,0 +1,47 @@
1.4 +/* @(#)encoder_tables 1.4 02/10/19 */
1.5 +
1.6 +/*
1.7 + * This program is free software; you can redistribute it and/or modify
1.8 + * it under the terms of the GNU General Public License version 2
1.9 + * as published by the Free Software Foundation.
1.10 + *
1.11 + * This program is distributed in the hope that it will be useful,
1.12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
1.13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1.14 + * GNU General Public License for more details.
1.15 + *
1.16 + * You should have received a copy of the GNU General Public License along with
1.17 + * this program; see the file COPYING. If not, write to the Free Software
1.18 + * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1.19 + */
1.20 +
1.21 +static const unsigned char rs_l12_alog[255] = {
1.22 + 1, 2, 4, 8,16,32,64,128,29,58,116,232,205,135,19,38,76,152,45,90,180,117,234,201,143, 3, 6,12,24,48,96,192,157,39,78,156,37,74,148,53,106,212,181,119,238,193,159,35,70,140, 5,10,20,40,80,160,93,186,105,210,185,111,222,161,95,190,97,194,153,47,94,188,101,202,137,15,30,60,120,240,253,231,211,187,107,214,177,127,254,225,223,163,91,182,113,226,217,175,67,134,17,34,68,136,13,26,52,104,208,189,103,206,129,31,62,124,248,237,199,147,59,118,236,197,151,51,102,204,133,23,46,92,184,109,218,169,79,158,33,66,132,21,42,84,168,77,154,41,82,164,85,170,73,146,57,114,228,213,183,115,230,209,191,99,198,145,63,126,252,229,215,179,123,246,241,255,227,219,171,75,150,49,98,196,149,55,110,220,165,87,174,65,130,25,50,100,200,141, 7,14,28,56,112,224,221,167,83,166,81,162,89,178,121,242,249,239,195,155,43,86,172,69,138, 9,18,36,72,144,61,122,244,245,247,243,251,235,203,139,11,22,44,88,176,125,250,233,207,131,27,54,108,216,173,71,142,};
1.23 +static const unsigned char rs_l12_log[256] = {
1.24 + 0, 0, 1,25, 2,50,26,198, 3,223,51,238,27,104,199,75, 4,100,224,14,52,141,239,129,28,193,105,248,200, 8,76,113, 5,138,101,47,225,36,15,33,53,147,142,218,240,18,130,69,29,181,194,125,106,39,249,185,201,154, 9,120,77,228,114,166, 6,191,139,98,102,221,48,253,226,152,37,179,16,145,34,136,54,208,148,206,143,150,219,189,241,210,19,92,131,56,70,64,30,66,182,163,195,72,126,110,107,58,40,84,250,133,186,61,202,94,155,159,10,21,121,43,78,212,229,172,115,243,167,87, 7,112,192,247,140,128,99,13,103,74,222,237,49,197,254,24,227,165,153,119,38,184,180,124,17,68,146,217,35,32,137,46,55,63,209,91,149,188,207,205,144,135,151,178,220,252,190,97,242,86,211,171,20,42,93,158,132,60,57,83,71,109,65,162,31,45,67,216,183,123,164,118,196,23,73,236,127,12,111,246,108,161,59,82,41,157,85,170,251,96,134,177,187,204,62,90,203,89,95,176,156,169,160,81,11,245,22,235,122,117,44,215,79,174,213,233,230,231,173,232,116,214,244,234,168,80,88,175,};
1.25 +static const unsigned char rs_sub_rw_alog[63] = {
1.26 + 1, 2, 4, 8,16,32, 3, 6,12,24,48,35, 5,10,20,40,19,38,15,30,60,59,53,41,17,34, 7,14,28,56,51,37, 9,18,36,11,22,44,27,54,47,29,58,55,45,25,50,39,13,26,52,43,21,42,23,46,31,62,63,61,57,49,33,};
1.27 +static const unsigned char rs_sub_rw_log[63] = {
1.28 + 0, 0, 1, 6, 2,12, 7,26, 3,32,13,35, 8,48,27,18, 4,24,33,16,14,52,36,54, 9,45,49,38,28,41,19,56, 5,62,25,11,34,31,17,47,15,23,53,51,37,44,55,40,10,61,46,30,50,22,39,43,29,60,42,21,20,59,57,};
1.29 +static const unsigned char SQ[2][2] = {
1.30 +{26,6,},
1.31 +{7,1,},
1.32 +};
1.33 +static const unsigned char SP[4][20] = {
1.34 +{57,38,44,29,17,57,53,58,60,39,12,38,18,41,6,25,39,37,5,18,},
1.35 +{38,62,42,13,30,11,46,5,54,26,12,49,48,46,8,50,28,9,12,39,},
1.36 +{32,18,41,49,52,62,38,36,39,58,37,24,34,51,51,27,28,36,22,21,},
1.37 +{44,50,35,23,0,59,1,3,45,18,44,24,47,12,31,45,43,11,24,6,},
1.38 +};
1.39 +static const unsigned char AQ[4][24] = {
1.40 +{58,152,173,95,88,43,134,205,143,131,163,75,37,109,194,159,168,227,153,59,101,},
1.41 +{30,214,148,138,112,154,157,96,49,198,189,249,83,23,70,237,70,41,47,52,125,247,},
1.42 +{162,244,13,171,213,236,71,177,253,162,59,78,46,68,238,112,147,197,115,200,117,15,236,},
1.43 +{158,179,101,94,49,140,211,149,137,169,81,6,33,30,27,24,21,18,15,12,9,6,3,0,},
1.44 +};
1.45 +static const unsigned char AP[4][32] = {
1.46 +{140,143,52,103,249,142,180,197,5,155,153,132,143,244,101,76,102,155,203,104,58,152,173,95,88,43,134,205,143,131,163,75,},
1.47 +{104,97,17,162,205,252,218,199,202,41,136,106,119,238,193,103,123,242,83,178,30,214,148,138,112,154,157,96,49,198,189,249,},
1.48 +{240,119,29,185,67,11,131,40,7,41,80,147,151,17,245,253,208,66,228,116,162,244,13,171,213,236,71,177,253,162,59,78,},
1.49 +{149,58,109,0,148,186,203,11,161,159,138,149,250,107,82,108,161,209,110,64,158,179,101,94,49,140,211,149,137,169,81,6,},
1.50 +};
.