Files

110 lines
6.9 KiB
SQL

// ██▀▀█▀▀██▀▀▀▀▀▀▀█▀▀█ ▄▄ ▄▄
// ██ █▄ ▀██▄ ▄█ ▄█▄█ ▄▀██ ██▀ ██▄
// ▀▀ ▄█ ██ ▀▄██ ▀█▄▄ ██
// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
// ─────────────────────────────────────────────────────────────────────────────
// MSXmath 1.8.2 by Guillaume "Aoineko" Blanchard
// under CC-BY-SA free license
//
// Parameters: Entries=360, Bytes=2 (16-bits), Shift=12 (Q4.12)
// ─────────────────────────────────────────────────────────────────────────────
// Sinus table. Range [0:Pi*2[
const unsigned short g_Sinus360[] = {
0x0000, 0x0047, 0x008F, 0x00D6, 0x011E, 0x0165, 0x01AC, 0x01F3,
0x023A, 0x0281, 0x02C7, 0x030E, 0x0354, 0x0399, 0x03DF, 0x0424,
0x0469, 0x04AE, 0x04F2, 0x0536, 0x0579, 0x05BC, 0x05FE, 0x0640,
0x0682, 0x06C3, 0x0704, 0x0744, 0x0783, 0x07C2, 0x0800, 0x083E,
0x087B, 0x08B7, 0x08F2, 0x092D, 0x0968, 0x09A1, 0x09DA, 0x0A12,
0x0A49, 0x0A7F, 0x0AB5, 0x0AE9, 0x0B1D, 0x0B50, 0x0B82, 0x0BB4,
0x0BE4, 0x0C13, 0x0C42, 0x0C6F, 0x0C9C, 0x0CC7, 0x0CF2, 0x0D1B,
0x0D44, 0x0D6B, 0x0D92, 0x0DB7, 0x0DDB, 0x0DFE, 0x0E21, 0x0E42,
0x0E61, 0x0E80, 0x0E9E, 0x0EBA, 0x0ED6, 0x0EF0, 0x0F09, 0x0F21,
0x0F38, 0x0F4D, 0x0F61, 0x0F74, 0x0F86, 0x0F97, 0x0FA6, 0x0FB5,
0x0FC2, 0x0FCE, 0x0FD8, 0x0FE1, 0x0FEA, 0x0FF0, 0x0FF6, 0x0FFA,
0x0FFE, 0x0FFF, 0x1000, 0x0FFF, 0x0FFE, 0x0FFA, 0x0FF6, 0x0FF0,
0x0FEA, 0x0FE1, 0x0FD8, 0x0FCE, 0x0FC2, 0x0FB5, 0x0FA6, 0x0F97,
0x0F86, 0x0F74, 0x0F61, 0x0F4D, 0x0F38, 0x0F21, 0x0F09, 0x0EF0,
0x0ED6, 0x0EBA, 0x0E9E, 0x0E80, 0x0E61, 0x0E42, 0x0E21, 0x0DFE,
0x0DDB, 0x0DB7, 0x0D92, 0x0D6B, 0x0D44, 0x0D1B, 0x0CF2, 0x0CC7,
0x0C9C, 0x0C6F, 0x0C42, 0x0C13, 0x0BE4, 0x0BB4, 0x0B82, 0x0B50,
0x0B1D, 0x0AE9, 0x0AB5, 0x0A7F, 0x0A49, 0x0A12, 0x09DA, 0x09A1,
0x0968, 0x092D, 0x08F2, 0x08B7, 0x087B, 0x083E, 0x0800, 0x07C2,
0x0783, 0x0744, 0x0704, 0x06C3, 0x0682, 0x0640, 0x05FE, 0x05BC,
0x0579, 0x0536, 0x04F2, 0x04AE, 0x0469, 0x0424, 0x03DF, 0x0399,
0x0354, 0x030E, 0x02C7, 0x0281, 0x023A, 0x01F3, 0x01AC, 0x0165,
0x011E, 0x00D6, 0x008F, 0x0047, 0x0000, 0xFFB9, 0xFF71, 0xFF2A,
0xFEE2, 0xFE9B, 0xFE54, 0xFE0D, 0xFDC6, 0xFD7F, 0xFD39, 0xFCF2,
0xFCAC, 0xFC67, 0xFC21, 0xFBDC, 0xFB97, 0xFB52, 0xFB0E, 0xFACA,
0xFA87, 0xFA44, 0xFA02, 0xF9C0, 0xF97E, 0xF93D, 0xF8FC, 0xF8BC,
0xF87D, 0xF83E, 0xF800, 0xF7C2, 0xF785, 0xF749, 0xF70E, 0xF6D3,
0xF698, 0xF65F, 0xF626, 0xF5EE, 0xF5B7, 0xF581, 0xF54B, 0xF517,
0xF4E3, 0xF4B0, 0xF47E, 0xF44C, 0xF41C, 0xF3ED, 0xF3BE, 0xF391,
0xF364, 0xF339, 0xF30E, 0xF2E5, 0xF2BC, 0xF295, 0xF26E, 0xF249,
0xF225, 0xF202, 0xF1DF, 0xF1BE, 0xF19F, 0xF180, 0xF162, 0xF146,
0xF12A, 0xF110, 0xF0F7, 0xF0DF, 0xF0C8, 0xF0B3, 0xF09F, 0xF08C,
0xF07A, 0xF069, 0xF05A, 0xF04B, 0xF03E, 0xF032, 0xF028, 0xF01F,
0xF016, 0xF010, 0xF00A, 0xF006, 0xF002, 0xF001, 0xF000, 0xF001,
0xF002, 0xF006, 0xF00A, 0xF010, 0xF016, 0xF01F, 0xF028, 0xF032,
0xF03E, 0xF04B, 0xF05A, 0xF069, 0xF07A, 0xF08C, 0xF09F, 0xF0B3,
0xF0C8, 0xF0DF, 0xF0F7, 0xF110, 0xF12A, 0xF146, 0xF162, 0xF180,
0xF19F, 0xF1BE, 0xF1DF, 0xF202, 0xF225, 0xF249, 0xF26E, 0xF295,
0xF2BC, 0xF2E5, 0xF30E, 0xF339, 0xF364, 0xF391, 0xF3BE, 0xF3ED,
0xF41C, 0xF44C, 0xF47E, 0xF4B0, 0xF4E3, 0xF517, 0xF54B, 0xF581,
0xF5B7, 0xF5EE, 0xF626, 0xF65F, 0xF698, 0xF6D3, 0xF70E, 0xF749,
0xF785, 0xF7C2, 0xF800, 0xF83E, 0xF87D, 0xF8BC, 0xF8FC, 0xF93D,
0xF97E, 0xF9C0, 0xFA02, 0xFA44, 0xFA87, 0xFACA, 0xFB0E, 0xFB52,
0xFB97, 0xFBDC, 0xFC21, 0xFC67, 0xFCAC, 0xFCF2, 0xFD39, 0xFD7F,
0xFDC6, 0xFE0D, 0xFE54, 0xFE9B, 0xFEE2, 0xFF2A, 0xFF71, 0xFFB9,
};
// Cosinus table. Range [0:Pi*2[
const unsigned short g_Cosinus360[] = {
0x1000, 0x0FFF, 0x0FFE, 0x0FFA, 0x0FF6, 0x0FF0, 0x0FEA, 0x0FE1,
0x0FD8, 0x0FCE, 0x0FC2, 0x0FB5, 0x0FA6, 0x0F97, 0x0F86, 0x0F74,
0x0F61, 0x0F4D, 0x0F38, 0x0F21, 0x0F09, 0x0EF0, 0x0ED6, 0x0EBA,
0x0E9E, 0x0E80, 0x0E61, 0x0E42, 0x0E21, 0x0DFE, 0x0DDB, 0x0DB7,
0x0D92, 0x0D6B, 0x0D44, 0x0D1B, 0x0CF2, 0x0CC7, 0x0C9C, 0x0C6F,
0x0C42, 0x0C13, 0x0BE4, 0x0BB4, 0x0B82, 0x0B50, 0x0B1D, 0x0AE9,
0x0AB5, 0x0A7F, 0x0A49, 0x0A12, 0x09DA, 0x09A1, 0x0968, 0x092D,
0x08F2, 0x08B7, 0x087B, 0x083E, 0x0800, 0x07C2, 0x0783, 0x0744,
0x0704, 0x06C3, 0x0682, 0x0640, 0x05FE, 0x05BC, 0x0579, 0x0536,
0x04F2, 0x04AE, 0x0469, 0x0424, 0x03DF, 0x0399, 0x0354, 0x030E,
0x02C7, 0x0281, 0x023A, 0x01F3, 0x01AC, 0x0165, 0x011E, 0x00D6,
0x008F, 0x0047, 0x0000, 0xFFB9, 0xFF71, 0xFF2A, 0xFEE2, 0xFE9B,
0xFE54, 0xFE0D, 0xFDC6, 0xFD7F, 0xFD39, 0xFCF2, 0xFCAC, 0xFC67,
0xFC21, 0xFBDC, 0xFB97, 0xFB52, 0xFB0E, 0xFACA, 0xFA87, 0xFA44,
0xFA02, 0xF9C0, 0xF97E, 0xF93D, 0xF8FC, 0xF8BC, 0xF87D, 0xF83E,
0xF800, 0xF7C2, 0xF785, 0xF749, 0xF70E, 0xF6D3, 0xF698, 0xF65F,
0xF626, 0xF5EE, 0xF5B7, 0xF581, 0xF54B, 0xF517, 0xF4E3, 0xF4B0,
0xF47E, 0xF44C, 0xF41C, 0xF3ED, 0xF3BE, 0xF391, 0xF364, 0xF339,
0xF30E, 0xF2E5, 0xF2BC, 0xF295, 0xF26E, 0xF249, 0xF225, 0xF202,
0xF1DF, 0xF1BE, 0xF19F, 0xF180, 0xF162, 0xF146, 0xF12A, 0xF110,
0xF0F7, 0xF0DF, 0xF0C8, 0xF0B3, 0xF09F, 0xF08C, 0xF07A, 0xF069,
0xF05A, 0xF04B, 0xF03E, 0xF032, 0xF028, 0xF01F, 0xF016, 0xF010,
0xF00A, 0xF006, 0xF002, 0xF001, 0xF000, 0xF001, 0xF002, 0xF006,
0xF00A, 0xF010, 0xF016, 0xF01F, 0xF028, 0xF032, 0xF03E, 0xF04B,
0xF05A, 0xF069, 0xF07A, 0xF08C, 0xF09F, 0xF0B3, 0xF0C8, 0xF0DF,
0xF0F7, 0xF110, 0xF12A, 0xF146, 0xF162, 0xF180, 0xF19F, 0xF1BE,
0xF1DF, 0xF202, 0xF225, 0xF249, 0xF26E, 0xF295, 0xF2BC, 0xF2E5,
0xF30E, 0xF339, 0xF364, 0xF391, 0xF3BE, 0xF3ED, 0xF41C, 0xF44C,
0xF47E, 0xF4B0, 0xF4E3, 0xF517, 0xF54B, 0xF581, 0xF5B7, 0xF5EE,
0xF626, 0xF65F, 0xF698, 0xF6D3, 0xF70E, 0xF749, 0xF785, 0xF7C2,
0xF800, 0xF83E, 0xF87D, 0xF8BC, 0xF8FC, 0xF93D, 0xF97E, 0xF9C0,
0xFA02, 0xFA44, 0xFA87, 0xFACA, 0xFB0E, 0xFB52, 0xFB97, 0xFBDC,
0xFC21, 0xFC67, 0xFCAC, 0xFCF2, 0xFD39, 0xFD7F, 0xFDC6, 0xFE0D,
0xFE54, 0xFE9B, 0xFEE2, 0xFF2A, 0xFF71, 0xFFB9, 0x0000, 0x0047,
0x008F, 0x00D6, 0x011E, 0x0165, 0x01AC, 0x01F3, 0x023A, 0x0281,
0x02C7, 0x030E, 0x0354, 0x0399, 0x03DF, 0x0424, 0x0469, 0x04AE,
0x04F2, 0x0536, 0x0579, 0x05BC, 0x05FE, 0x0640, 0x0682, 0x06C3,
0x0704, 0x0744, 0x0783, 0x07C2, 0x0800, 0x083E, 0x087B, 0x08B7,
0x08F2, 0x092D, 0x0968, 0x09A1, 0x09DA, 0x0A12, 0x0A49, 0x0A7F,
0x0AB5, 0x0AE9, 0x0B1D, 0x0B50, 0x0B82, 0x0BB4, 0x0BE4, 0x0C13,
0x0C42, 0x0C6F, 0x0C9C, 0x0CC7, 0x0CF2, 0x0D1B, 0x0D44, 0x0D6B,
0x0D92, 0x0DB7, 0x0DDB, 0x0DFE, 0x0E21, 0x0E42, 0x0E61, 0x0E80,
0x0E9E, 0x0EBA, 0x0ED6, 0x0EF0, 0x0F09, 0x0F21, 0x0F38, 0x0F4D,
0x0F61, 0x0F74, 0x0F86, 0x0F97, 0x0FA6, 0x0FB5, 0x0FC2, 0x0FCE,
0x0FD8, 0x0FE1, 0x0FEA, 0x0FF0, 0x0FF6, 0x0FFA, 0x0FFE, 0x0FFF,
};
// Size: 1440 bytes