Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

tables.cpp

Go to the documentation of this file.
00001 /*
00002  * This program is  free software; you can redistribute it  and modify it
00003  * under the terms of the GNU  General Public License as published by the
00004  * Free Software Foundation; either version 2  of the license or (at your
00005  * option) any later version.
00006  *
00007  * Authors: Olivier Lapicque <olivierl@jps.net>
00008 */
00009 
00010 #include "stdafx.h"
00011 
00012 #ifndef FASTSOUNDLIB
00013 //#pragma data_seg(".tables")
00014 #endif
00015 
00016 extern const BYTE ImpulseTrackerPortaVolCmd[16];
00017 const BYTE ImpulseTrackerPortaVolCmd[16] =
00018 {
00019         0x00, 0x01, 0x04, 0x08, 0x10, 0x20, 0x40, 0x60,
00020         0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
00021 };
00022 
00023 // Period table for Protracker octaves 0-5:
00024 extern const WORD ProTrackerPeriodTable[6*12];
00025 const WORD ProTrackerPeriodTable[6*12] =
00026 {
00027         1712,1616,1524,1440,1356,1280,1208,1140,1076,1016,960,907,
00028         856,808,762,720,678,640,604,570,538,508,480,453,
00029         428,404,381,360,339,320,302,285,269,254,240,226,
00030         214,202,190,180,170,160,151,143,135,127,120,113,
00031         107,101,95,90,85,80,75,71,67,63,60,56,
00032         53,50,47,45,42,40,37,35,33,31,30,28
00033 };
00034 
00035 
00036 extern const WORD ProTrackerTunedPeriods[16*12];
00037 const WORD ProTrackerTunedPeriods[16*12] = 
00038 {
00039         1712,1616,1524,1440,1356,1280,1208,1140,1076,1016,960,907,
00040         1700,1604,1514,1430,1348,1274,1202,1134,1070,1010,954,900,
00041         1688,1592,1504,1418,1340,1264,1194,1126,1064,1004,948,894,
00042         1676,1582,1492,1408,1330,1256,1184,1118,1056,996,940,888,
00043         1664,1570,1482,1398,1320,1246,1176,1110,1048,990,934,882,
00044         1652,1558,1472,1388,1310,1238,1168,1102,1040,982,926,874,
00045         1640,1548,1460,1378,1302,1228,1160,1094,1032,974,920,868,
00046         1628,1536,1450,1368,1292,1220,1150,1086,1026,968,914,862,
00047         1814,1712,1616,1524,1440,1356,1280,1208,1140,1076,1016,960,
00048         1800,1700,1604,1514,1430,1350,1272,1202,1134,1070,1010,954,
00049         1788,1688,1592,1504,1418,1340,1264,1194,1126,1064,1004,948,
00050         1774,1676,1582,1492,1408,1330,1256,1184,1118,1056,996,940,
00051         1762,1664,1570,1482,1398,1320,1246,1176,1110,1048,988,934,
00052         1750,1652,1558,1472,1388,1310,1238,1168,1102,1040,982,926,
00053         1736,1640,1548,1460,1378,1302,1228,1160,1094,1032,974,920,
00054         1724,1628,1536,1450,1368,1292,1220,1150,1086,1026,968,914 
00055 };
00056 
00057 
00058 // S3M C-4 periods
00059 extern const WORD FreqS3MTable[16];
00060 const WORD FreqS3MTable[16] = 
00061 {
00062         1712,1616,1524,1440,1356,1280,
00063         1208,1140,1076,1016,960,907,
00064         0,0,0,0
00065 };
00066 
00067 
00068 // S3M FineTune frequencies
00069 extern const WORD S3MFineTuneTable[16];
00070 const WORD S3MFineTuneTable[16] = 
00071 {
00072         7895,7941,7985,8046,8107,8169,8232,8280,
00073         8363,8413,8463,8529,8581,8651,8723,8757,        // 8363*2^((i-8)/(12*8))
00074 };
00075 
00076 
00077 // Sinus table
00078 extern const short int ModSinusTable[64];
00079 const short int ModSinusTable[64] =
00080 {
00081         0,12,25,37,49,60,71,81,90,98,106,112,117,122,125,126,
00082         127,126,125,122,117,112,106,98,90,81,71,60,49,37,25,12,
00083         0,-12,-25,-37,-49,-60,-71,-81,-90,-98,-106,-112,-117,-122,-125,-126,
00084         -127,-126,-125,-122,-117,-112,-106,-98,-90,-81,-71,-60,-49,-37,-25,-12
00085 };
00086 
00087 // Triangle wave table (ramp down)
00088 extern const short int ModRampDownTable[64];
00089 const short int ModRampDownTable[64] =
00090 {
00091         0,-4,-8,-12,-16,-20,-24,-28,-32,-36,-40,-44,-48,-52,-56,-60,
00092         -64,-68,-72,-76,-80,-84,-88,-92,-96,-100,-104,-108,-112,-116,-120,-124,
00093         127,123,119,115,111,107,103,99,95,91,87,83,79,75,71,67,
00094         63,59,55,51,47,43,39,35,31,27,23,19,15,11,7,3
00095 };
00096 
00097 // Square wave table
00098 extern const short int ModSquareTable[64];
00099 const short int ModSquareTable[64] =
00100 {
00101         127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,
00102         127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,
00103         -127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,
00104         -127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127,-127
00105 };
00106 
00107 // Random wave table
00108 extern const short int ModRandomTable[64];
00109 const short int ModRandomTable[64] =
00110 {
00111         98,-127,-43,88,102,41,-65,-94,125,20,-71,-86,-70,-32,-16,-96,
00112         17,72,107,-5,116,-69,-62,-40,10,-61,65,109,-18,-38,-13,-76,
00113         -23,88,21,-94,8,106,21,-112,6,109,20,-88,-30,9,-127,118,
00114         42,-34,89,-4,-51,-72,21,-29,112,123,84,-101,-92,98,-54,-95
00115 };
00116 
00117 
00118 // volume fade tables for Retrig Note:
00119 extern const signed char retrigTable1[16];
00120 const signed char retrigTable1[16] =
00121 { 0, 0, 0, 0, 0, 0, 10, 8, 0, 0, 0, 0, 0, 0, 24, 32 };
00122 
00123 extern const signed char retrigTable2[16];
00124 const signed char retrigTable2[16] =
00125 { 0, -1, -2, -4, -8, -16, 0, 0, 0, 1, 2, 4, 8, 16, 0, 0 };
00126 
00127 
00128 
00129 
00130 extern const WORD XMPeriodTable[104];
00131 const WORD XMPeriodTable[104] = 
00132 {
00133         907,900,894,887,881,875,868,862,856,850,844,838,832,826,820,814,
00134         808,802,796,791,785,779,774,768,762,757,752,746,741,736,730,725,
00135         720,715,709,704,699,694,689,684,678,675,670,665,660,655,651,646,
00136         640,636,632,628,623,619,614,610,604,601,597,592,588,584,580,575,
00137         570,567,563,559,555,551,547,543,538,535,532,528,524,520,516,513,
00138         508,505,502,498,494,491,487,484,480,477,474,470,467,463,460,457,
00139         453,450,447,443,440,437,434,431
00140 };
00141 
00142 
00143 extern const UINT XMLinearTable[768];
00144 const UINT XMLinearTable[768] = 
00145 {
00146         535232,534749,534266,533784,533303,532822,532341,531861,
00147         531381,530902,530423,529944,529466,528988,528511,528034,
00148         527558,527082,526607,526131,525657,525183,524709,524236,
00149         523763,523290,522818,522346,521875,521404,520934,520464,
00150         519994,519525,519057,518588,518121,517653,517186,516720,
00151         516253,515788,515322,514858,514393,513929,513465,513002,
00152         512539,512077,511615,511154,510692,510232,509771,509312,
00153         508852,508393,507934,507476,507018,506561,506104,505647,
00154         505191,504735,504280,503825,503371,502917,502463,502010,
00155         501557,501104,500652,500201,499749,499298,498848,498398,
00156         497948,497499,497050,496602,496154,495706,495259,494812,
00157         494366,493920,493474,493029,492585,492140,491696,491253,
00158         490809,490367,489924,489482,489041,488600,488159,487718,
00159         487278,486839,486400,485961,485522,485084,484647,484210,
00160         483773,483336,482900,482465,482029,481595,481160,480726,
00161         480292,479859,479426,478994,478562,478130,477699,477268,
00162         476837,476407,475977,475548,475119,474690,474262,473834,
00163         473407,472979,472553,472126,471701,471275,470850,470425,
00164         470001,469577,469153,468730,468307,467884,467462,467041,
00165         466619,466198,465778,465358,464938,464518,464099,463681,
00166         463262,462844,462427,462010,461593,461177,460760,460345,
00167         459930,459515,459100,458686,458272,457859,457446,457033,
00168         456621,456209,455797,455386,454975,454565,454155,453745,
00169         453336,452927,452518,452110,451702,451294,450887,450481,
00170         450074,449668,449262,448857,448452,448048,447644,447240,
00171         446836,446433,446030,445628,445226,444824,444423,444022,
00172         443622,443221,442821,442422,442023,441624,441226,440828,
00173         440430,440033,439636,439239,438843,438447,438051,437656,
00174         437261,436867,436473,436079,435686,435293,434900,434508,
00175         434116,433724,433333,432942,432551,432161,431771,431382,
00176         430992,430604,430215,429827,429439,429052,428665,428278,
00177         427892,427506,427120,426735,426350,425965,425581,425197,
00178         424813,424430,424047,423665,423283,422901,422519,422138,
00179         421757,421377,420997,420617,420237,419858,419479,419101,
00180         418723,418345,417968,417591,417214,416838,416462,416086,
00181         415711,415336,414961,414586,414212,413839,413465,413092,
00182         412720,412347,411975,411604,411232,410862,410491,410121,
00183         409751,409381,409012,408643,408274,407906,407538,407170,
00184         406803,406436,406069,405703,405337,404971,404606,404241,
00185         403876,403512,403148,402784,402421,402058,401695,401333,
00186         400970,400609,400247,399886,399525,399165,398805,398445,
00187         398086,397727,397368,397009,396651,396293,395936,395579,
00188         395222,394865,394509,394153,393798,393442,393087,392733,
00189         392378,392024,391671,391317,390964,390612,390259,389907,
00190         389556,389204,388853,388502,388152,387802,387452,387102,
00191         386753,386404,386056,385707,385359,385012,384664,384317,
00192         383971,383624,383278,382932,382587,382242,381897,381552,
00193         381208,380864,380521,380177,379834,379492,379149,378807,
00194 
00195         378466,378124,377783,377442,377102,376762,376422,376082,
00196         375743,375404,375065,374727,374389,374051,373714,373377,
00197         373040,372703,372367,372031,371695,371360,371025,370690,
00198         370356,370022,369688,369355,369021,368688,368356,368023,
00199         367691,367360,367028,366697,366366,366036,365706,365376,
00200         365046,364717,364388,364059,363731,363403,363075,362747,
00201         362420,362093,361766,361440,361114,360788,360463,360137,
00202         359813,359488,359164,358840,358516,358193,357869,357547,
00203         357224,356902,356580,356258,355937,355616,355295,354974,
00204         354654,354334,354014,353695,353376,353057,352739,352420,
00205         352103,351785,351468,351150,350834,350517,350201,349885,
00206         349569,349254,348939,348624,348310,347995,347682,347368,
00207         347055,346741,346429,346116,345804,345492,345180,344869,
00208         344558,344247,343936,343626,343316,343006,342697,342388,
00209         342079,341770,341462,341154,340846,340539,340231,339924,
00210         339618,339311,339005,338700,338394,338089,337784,337479,
00211         337175,336870,336566,336263,335959,335656,335354,335051,
00212         334749,334447,334145,333844,333542,333242,332941,332641,
00213         332341,332041,331741,331442,331143,330844,330546,330247,
00214         329950,329652,329355,329057,328761,328464,328168,327872,
00215         327576,327280,326985,326690,326395,326101,325807,325513,
00216         325219,324926,324633,324340,324047,323755,323463,323171,
00217         322879,322588,322297,322006,321716,321426,321136,320846,
00218         320557,320267,319978,319690,319401,319113,318825,318538,
00219         318250,317963,317676,317390,317103,316817,316532,316246,
00220         315961,315676,315391,315106,314822,314538,314254,313971,
00221         313688,313405,313122,312839,312557,312275,311994,311712,
00222         311431,311150,310869,310589,310309,310029,309749,309470,
00223         309190,308911,308633,308354,308076,307798,307521,307243,
00224         306966,306689,306412,306136,305860,305584,305308,305033,
00225         304758,304483,304208,303934,303659,303385,303112,302838,
00226         302565,302292,302019,301747,301475,301203,300931,300660,
00227         300388,300117,299847,299576,299306,299036,298766,298497,
00228         298227,297958,297689,297421,297153,296884,296617,296349,
00229         296082,295815,295548,295281,295015,294749,294483,294217,
00230         293952,293686,293421,293157,292892,292628,292364,292100,
00231         291837,291574,291311,291048,290785,290523,290261,289999,
00232         289737,289476,289215,288954,288693,288433,288173,287913,
00233         287653,287393,287134,286875,286616,286358,286099,285841,
00234         285583,285326,285068,284811,284554,284298,284041,283785,
00235         283529,283273,283017,282762,282507,282252,281998,281743,
00236         281489,281235,280981,280728,280475,280222,279969,279716,
00237         279464,279212,278960,278708,278457,278206,277955,277704,
00238         277453,277203,276953,276703,276453,276204,275955,275706,
00239         275457,275209,274960,274712,274465,274217,273970,273722,
00240         273476,273229,272982,272736,272490,272244,271999,271753,
00241         271508,271263,271018,270774,270530,270286,270042,269798,
00242         269555,269312,269069,268826,268583,268341,268099,267857 
00243 };
00244 
00245 
00246 extern const signed char ft2VibratoTable[256];
00247 const signed char ft2VibratoTable[256] = 
00248 {
00249         0,-2,-3,-5,-6,-8,-9,-11,-12,-14,-16,-17,-19,-20,-22,-23,
00250         -24,-26,-27,-29,-30,-32,-33,-34,-36,-37,-38,-39,-41,-42,
00251         -43,-44,-45,-46,-47,-48,-49,-50,-51,-52,-53,-54,-55,-56,
00252         -56,-57,-58,-59,-59,-60,-60,-61,-61,-62,-62,-62,-63,-63,
00253         -63,-64,-64,-64,-64,-64,-64,-64,-64,-64,-64,-64,-63,-63,
00254         -63,-62,-62,-62,-61,-61,-60,-60,-59,-59,-58,-57,-56,-56,
00255         -55,-54,-53,-52,-51,-50,-49,-48,-47,-46,-45,-44,-43,-42,
00256         -41,-39,-38,-37,-36,-34,-33,-32,-30,-29,-27,-26,-24,-23,
00257         -22,-20,-19,-17,-16,-14,-12,-11,-9,-8,-6,-5,-3,-2,0,
00258         2,3,5,6,8,9,11,12,14,16,17,19,20,22,23,24,26,27,29,30,
00259         32,33,34,36,37,38,39,41,42,43,44,45,46,47,48,49,50,51,
00260         52,53,54,55,56,56,57,58,59,59,60,60,61,61,62,62,62,63,
00261         63,63,64,64,64,64,64,64,64,64,64,64,64,63,63,63,62,62,
00262         62,61,61,60,60,59,59,58,57,56,56,55,54,53,52,51,50,49,
00263         48,47,46,45,44,43,42,41,39,38,37,36,34,33,32,30,29,27,
00264         26,24,23,22,20,19,17,16,14,12,11,9,8,6,5,3,2 
00265 };
00266 
00267 
00268 
00269 extern const DWORD FineLinearSlideUpTable[16];
00270 const DWORD FineLinearSlideUpTable[16] =
00271 {
00272         65536, 65595, 65654, 65714,     65773, 65832, 65892, 65951,
00273         66011, 66071, 66130, 66190, 66250, 66309, 66369, 66429
00274 };
00275 
00276 
00277 extern const DWORD FineLinearSlideDownTable[16];
00278 const DWORD FineLinearSlideDownTable[16] =
00279 {
00280         65535, 65477, 65418, 65359, 65300, 65241, 65182, 65123,
00281         65065, 65006, 64947, 64888, 64830, 64772, 64713, 64645
00282 };
00283 
00284 
00285 extern const DWORD LinearSlideUpTable[256];
00286 const DWORD LinearSlideUpTable[256] = 
00287 {
00288         65536, 65773, 66010, 66249, 66489, 66729, 66971, 67213, 
00289         67456, 67700, 67945, 68190, 68437, 68685, 68933, 69182, 
00290         69432, 69684, 69936, 70189, 70442, 70697, 70953, 71209, 
00291         71467, 71725, 71985, 72245, 72507, 72769, 73032, 73296, 
00292         73561, 73827, 74094, 74362, 74631, 74901, 75172, 75444, 
00293         75717, 75991, 76265, 76541, 76818, 77096, 77375, 77655, 
00294         77935, 78217, 78500, 78784, 79069, 79355, 79642, 79930, 
00295         80219, 80509, 80800, 81093, 81386, 81680, 81976, 82272, 
00296         82570, 82868, 83168, 83469, 83771, 84074, 84378, 84683, 
00297         84989, 85297, 85605, 85915, 86225, 86537, 86850, 87164, 
00298         87480, 87796, 88113, 88432, 88752, 89073, 89395, 89718, 
00299         90043, 90369, 90695, 91023, 91353, 91683, 92015, 92347, 
00300         92681, 93017, 93353, 93691, 94029, 94370, 94711, 95053, 
00301         95397, 95742, 96088, 96436, 96785, 97135, 97486, 97839, 
00302         98193, 98548, 98904, 99262, 99621, 99981, 100343, 100706, 
00303         101070, 101435, 101802, 102170, 102540, 102911, 103283, 103657, 
00304         104031, 104408, 104785, 105164, 105545, 105926, 106309, 106694, 
00305         107080, 107467, 107856, 108246, 108637, 109030, 109425, 109820, 
00306         110217, 110616, 111016, 111418, 111821, 112225, 112631, 113038, 
00307         113447, 113857, 114269, 114682, 115097, 115514, 115931, 116351, 
00308         116771, 117194, 117618, 118043, 118470, 118898, 119328, 119760, 
00309         120193, 120628, 121064, 121502, 121941, 122382, 122825, 123269, 
00310         123715, 124162, 124611, 125062, 125514, 125968, 126424, 126881, 
00311         127340, 127801, 128263, 128727, 129192, 129660, 130129, 130599, 
00312         131072, 131546, 132021, 132499, 132978, 133459, 133942, 134426, 
00313         134912, 135400, 135890, 136381, 136875, 137370, 137866, 138365, 
00314         138865, 139368, 139872, 140378, 140885, 141395, 141906, 142419, 
00315         142935, 143451, 143970, 144491, 145014, 145538, 146064, 146593, 
00316         147123, 147655, 148189, 148725, 149263, 149803, 150344, 150888, 
00317         151434, 151982, 152531, 153083, 153637, 154192, 154750, 155310, 
00318         155871, 156435, 157001, 157569, 158138, 158710, 159284, 159860, 
00319         160439, 161019, 161601, 162186, 162772, 163361, 163952, 164545, 
00320 };
00321 
00322 
00323 extern const DWORD LinearSlideDownTable[256];
00324 const DWORD LinearSlideDownTable[256] = 
00325 {
00326         65536, 65299, 65064, 64830, 64596, 64363, 64131, 63900, 
00327         63670, 63440, 63212, 62984, 62757, 62531, 62305, 62081, 
00328         61857, 61634, 61412, 61191, 60970, 60751, 60532, 60314, 
00329         60096, 59880, 59664, 59449, 59235, 59021, 58809, 58597, 
00330         58385, 58175, 57965, 57757, 57548, 57341, 57134, 56928, 
00331         56723, 56519, 56315, 56112, 55910, 55709, 55508, 55308, 
00332         55108, 54910, 54712, 54515, 54318, 54123, 53928, 53733, 
00333 
00334         53540, 53347, 53154, 52963, 52772, 52582, 52392, 52204, 
00335         52015, 51828, 51641, 51455, 51270, 51085, 50901, 50717, 
00336         50535, 50353, 50171, 49990, 49810, 49631, 49452, 49274, 
00337         49096, 48919, 48743, 48567, 48392, 48218, 48044, 47871, 
00338         47698, 47526, 47355, 47185, 47014, 46845, 46676, 46508, 
00339         46340, 46173, 46007, 45841, 45676, 45511, 45347, 45184, 
00340         45021, 44859, 44697, 44536, 44376, 44216, 44056, 43898, 
00341         43740, 43582, 43425, 43268, 43112, 42957, 42802, 42648, 
00342         42494, 42341, 42189, 42037, 41885, 41734, 41584, 41434, 
00343         41285, 41136, 40988, 40840, 40693, 40546, 40400, 40254, 
00344         40109, 39965, 39821, 39677, 39534, 39392, 39250, 39108, 
00345         38967, 38827, 38687, 38548, 38409, 38270, 38132, 37995, 
00346         37858, 37722, 37586, 37450, 37315, 37181, 37047, 36913, 
00347         36780, 36648, 36516, 36384, 36253, 36122, 35992, 35862, 
00348         35733, 35604, 35476, 35348, 35221, 35094, 34968, 34842, 
00349         34716, 34591, 34466, 34342, 34218, 34095, 33972, 33850, 
00350         33728, 33606, 33485, 33364, 33244, 33124, 33005, 32886, 
00351         32768, 32649, 32532, 32415, 32298, 32181, 32065, 31950, 
00352         31835, 31720, 31606, 31492, 31378, 31265, 31152, 31040, 
00353         30928, 30817, 30706, 30595, 30485, 30375, 30266, 30157, 
00354         30048, 29940, 29832, 29724, 29617, 29510, 29404, 29298, 
00355         29192, 29087, 28982, 28878, 28774, 28670, 28567, 28464, 
00356         28361, 28259, 28157, 28056, 27955, 27854, 27754, 27654, 
00357         27554, 27455, 27356, 27257, 27159, 27061, 26964, 26866, 
00358         26770, 26673, 26577, 26481, 26386, 26291, 26196, 26102, 
00359 };
00360 
00361 
00362 extern const int SpectrumSinusTable[256*2];
00363 const int SpectrumSinusTable[256*2] = 
00364 {
00365         0, 1, 1, 2, 3, 3, 4, 5, 6, 7, 7, 8, 9, 10, 10, 11, 
00366         12, 13, 14, 14, 15, 16, 17, 17, 18, 19, 20, 20, 21, 22, 22, 23, 
00367         24, 25, 25, 26, 27, 28, 28, 29, 30, 30, 31, 32, 32, 33, 34, 34, 
00368         35, 36, 36, 37, 38, 38, 39, 39, 40, 41, 41, 42, 42, 43, 44, 44, 
00369         45, 45, 46, 46, 47, 47, 48, 48, 49, 49, 50, 50, 51, 51, 52, 52, 
00370         53, 53, 53, 54, 54, 55, 55, 55, 56, 56, 57, 57, 57, 58, 58, 58, 
00371         59, 59, 59, 59, 60, 60, 60, 60, 61, 61, 61, 61, 61, 62, 62, 62, 
00372         62, 62, 62, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 
00373         63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 62, 62, 
00374         62, 62, 62, 62, 61, 61, 61, 61, 61, 60, 60, 60, 60, 59, 59, 59, 
00375         59, 58, 58, 58, 57, 57, 57, 56, 56, 55, 55, 55, 54, 54, 53, 53, 
00376         53, 52, 52, 51, 51, 50, 50, 49, 49, 48, 48, 47, 47, 46, 46, 45, 
00377         45, 44, 44, 43, 42, 42, 41, 41, 40, 39, 39, 38, 38, 37, 36, 36, 
00378         35, 34, 34, 33, 32, 32, 31, 30, 30, 29, 28, 28, 27, 26, 25, 25, 
00379         24, 23, 22, 22, 21, 20, 20, 19, 18, 17, 17, 16, 15, 14, 14, 13, 
00380         12, 11, 10, 10, 9, 8, 7, 7, 6, 5, 4, 3, 3, 2, 1, 0, 
00381         0, -1, -1, -2, -3, -3, -4, -5, -6, -7, -7, -8, -9, -10, -10, -11, 
00382         -12, -13, -14, -14, -15, -16, -17, -17, -18, -19, -20, -20, -21, -22, -22, -23, 
00383         -24, -25, -25, -26, -27, -28, -28, -29, -30, -30, -31, -32, -32, -33, -34, -34, 
00384         -35, -36, -36, -37, -38, -38, -39, -39, -40, -41, -41, -42, -42, -43, -44, -44, 
00385         -45, -45, -46, -46, -47, -47, -48, -48, -49, -49, -50, -50, -51, -51, -52, -52, 
00386         -53, -53, -53, -54, -54, -55, -55, -55, -56, -56, -57, -57, -57, -58, -58, -58, 
00387         -59, -59, -59, -59, -60, -60, -60, -60, -61, -61, -61, -61, -61, -62, -62, -62, 
00388         -62, -62, -62, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 
00389         -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, -62, -62, 
00390         -62, -62, -62, -62, -61, -61, -61, -61, -61, -60, -60, -60, -60, -59, -59, -59, 
00391         -59, -58, -58, -58, -57, -57, -57, -56, -56, -55, -55, -55, -54, -54, -53, -53, 
00392         -53, -52, -52, -51, -51, -50, -50, -49, -49, -48, -48, -47, -47, -46, -46, -45, 
00393         -45, -44, -44, -43, -42, -42, -41, -41, -40, -39, -39, -38, -38, -37, -36, -36, 
00394         -35, -34, -34, -33, -32, -32, -31, -30, -30, -29, -28, -28, -27, -26, -25, -25, 
00395         -24, -23, -22, -22, -21, -20, -20, -19, -18, -17, -17, -16, -15, -14, -14, -13, 
00396         -12, -11, -10, -10, -9, -8, -7, -7, -6, -5, -4, -3, -3, -2, -1, 0, 
00397 };
00398 

Generated on Sat Nov 5 16:15:42 2005 for OPIE by  doxygen 1.4.2