Files
mazegame/engine/content/mathtable/mt_trigo_ext_128.inc
T

92 lines
5.4 KiB
SQL

// ██▀▀█▀▀██▀▀▀▀▀▀▀█▀▀█ ▄▄ ▄▄
// ██ █▄ ▀██▄ ▄█ ▄█▄█ ▄▀██ ██▀ ██▄
// ▀▀ ▄█ ██ ▀▄██ ▀█▄▄ ██
// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
// ─────────────────────────────────────────────────────────────────────────────
// MSXmath 1.8.2 by Guillaume "Aoineko" Blanchard
// under CC-BY-SA free license
//
// Parameters: Entries=128, Bytes=2 (16-bits), Shift=8 (Q8.8)
// ─────────────────────────────────────────────────────────────────────────────
// Tangent table. Range [-Pi/2:Pi/2[
const unsigned short g_Tangent128[] = {
0x7FFF, 0xD744, 0xEBA5, 0xF271, 0xF5D9, 0xF7E4, 0xF942, 0xFA3D,
0xFAF9, 0xFB8C, 0xFC02, 0xFC63, 0xFCB4, 0xFCF9, 0xFD35, 0xFD68,
0xFD96, 0xFDBE, 0xFDE3, 0xFE03, 0xFE21, 0xFE3C, 0xFE55, 0xFE6C,
0xFE81, 0xFE95, 0xFEA7, 0xFEB8, 0xFEC8, 0xFED7, 0xFEE6, 0xFEF3,
0xFF00, 0xFF0C, 0xFF18, 0xFF23, 0xFF2E, 0xFF38, 0xFF42, 0xFF4C,
0xFF55, 0xFF5E, 0xFF67, 0xFF6F, 0xFF77, 0xFF7F, 0xFF87, 0xFF8F,
0xFF96, 0xFF9D, 0xFFA4, 0xFFAB, 0xFFB2, 0xFFB9, 0xFFC0, 0xFFC7,
0xFFCD, 0xFFD4, 0xFFDA, 0xFFE0, 0xFFE7, 0xFFED, 0xFFF3, 0xFFFA,
0x0000, 0x0006, 0x000D, 0x0013, 0x0019, 0x0020, 0x0026, 0x002C,
0x0033, 0x0039, 0x0040, 0x0047, 0x004E, 0x0055, 0x005C, 0x0063,
0x006A, 0x0071, 0x0079, 0x0081, 0x0089, 0x0091, 0x0099, 0x00A2,
0x00AB, 0x00B4, 0x00BE, 0x00C8, 0x00D2, 0x00DD, 0x00E8, 0x00F4,
0x0100, 0x010D, 0x011A, 0x0129, 0x0138, 0x0148, 0x0159, 0x016B,
0x017F, 0x0194, 0x01AB, 0x01C4, 0x01DF, 0x01FD, 0x021D, 0x0242,
0x026A, 0x0298, 0x02CB, 0x0307, 0x034C, 0x039D, 0x03FE, 0x0474,
0x0507, 0x05C3, 0x06BE, 0x081C, 0x0A27, 0x0D8F, 0x145B, 0x28BC,
};
// ArcSinus table. Range [-1:1]
const unsigned short g_ArcSinus128[] = {
0xFE6E, 0xFE9B, 0xFEAE, 0xFEBC, 0xFEC9, 0xFED3, 0xFEDD, 0xFEE6,
0xFEEF, 0xFEF7, 0xFEFE, 0xFF06, 0xFF0D, 0xFF13, 0xFF1A, 0xFF20,
0xFF26, 0xFF2C, 0xFF32, 0xFF38, 0xFF3D, 0xFF43, 0xFF48, 0xFF4D,
0xFF52, 0xFF57, 0xFF5C, 0xFF61, 0xFF66, 0xFF6B, 0xFF70, 0xFF74,
0xFF79, 0xFF7D, 0xFF82, 0xFF86, 0xFF8B, 0xFF8F, 0xFF94, 0xFF98,
0xFF9C, 0xFFA1, 0xFFA5, 0xFFA9, 0xFFAD, 0xFFB1, 0xFFB6, 0xFFBA,
0xFFBE, 0xFFC2, 0xFFC6, 0xFFCA, 0xFFCE, 0xFFD2, 0xFFD6, 0xFFDA,
0xFFDE, 0xFFE2, 0xFFE6, 0xFFEA, 0xFFEE, 0xFFF2, 0xFFF6, 0xFFFA,
0xFFFE, 0x0002, 0x0006, 0x000A, 0x000E, 0x0012, 0x0016, 0x001A,
0x001E, 0x0022, 0x0026, 0x002A, 0x002E, 0x0032, 0x0036, 0x003A,
0x003E, 0x0042, 0x0046, 0x004A, 0x004F, 0x0053, 0x0057, 0x005B,
0x005F, 0x0064, 0x0068, 0x006C, 0x0071, 0x0075, 0x007A, 0x007E,
0x0083, 0x0087, 0x008C, 0x0090, 0x0095, 0x009A, 0x009F, 0x00A4,
0x00A9, 0x00AE, 0x00B3, 0x00B8, 0x00BD, 0x00C3, 0x00C8, 0x00CE,
0x00D4, 0x00DA, 0x00E0, 0x00E6, 0x00ED, 0x00F3, 0x00FA, 0x0102,
0x0109, 0x0111, 0x011A, 0x0123, 0x012D, 0x0137, 0x0144, 0x0152,
};
// ArcCosinus table. Range [-1:1]
const unsigned short g_ArcCosinus128[] = {
0x0324, 0x02F7, 0x02E4, 0x02D6, 0x02CA, 0x02BF, 0x02B5, 0x02AC,
0x02A3, 0x029B, 0x0294, 0x028D, 0x0286, 0x027F, 0x0278, 0x0272,
0x026C, 0x0266, 0x0260, 0x025B, 0x0255, 0x0250, 0x024A, 0x0245,
0x0240, 0x023B, 0x0236, 0x0231, 0x022C, 0x0227, 0x0223, 0x021E,
0x0219, 0x0215, 0x0210, 0x020C, 0x0207, 0x0203, 0x01FF, 0x01FA,
0x01F6, 0x01F2, 0x01ED, 0x01E9, 0x01E5, 0x01E1, 0x01DD, 0x01D8,
0x01D4, 0x01D0, 0x01CC, 0x01C8, 0x01C4, 0x01C0, 0x01BC, 0x01B8,
0x01B4, 0x01B0, 0x01AC, 0x01A8, 0x01A4, 0x01A0, 0x019C, 0x0198,
0x0194, 0x0190, 0x018C, 0x0188, 0x0184, 0x0180, 0x017C, 0x0178,
0x0174, 0x0170, 0x016C, 0x0168, 0x0164, 0x0160, 0x015C, 0x0158,
0x0154, 0x0150, 0x014C, 0x0148, 0x0143, 0x013F, 0x013B, 0x0137,
0x0133, 0x012E, 0x012A, 0x0126, 0x0121, 0x011D, 0x0119, 0x0114,
0x0110, 0x010B, 0x0106, 0x0102, 0x00FD, 0x00F8, 0x00F3, 0x00EE,
0x00E9, 0x00E4, 0x00DF, 0x00DA, 0x00D5, 0x00CF, 0x00CA, 0x00C4,
0x00BE, 0x00B8, 0x00B2, 0x00AC, 0x00A5, 0x009F, 0x0098, 0x0090,
0x0089, 0x0081, 0x0078, 0x006F, 0x0065, 0x005B, 0x004E, 0x0040,
};
// ArcTangent table. Range [0:N]
const unsigned short g_ArcTangent128[] = {
0x0000, 0x00C8, 0x011B, 0x013F, 0x0153, 0x015F, 0x0168, 0x016E,
0x0172, 0x0176, 0x0178, 0x017B, 0x017D, 0x017E, 0x0180, 0x0181,
0x0182, 0x0183, 0x0184, 0x0185, 0x0185, 0x0186, 0x0186, 0x0187,
0x0187, 0x0188, 0x0188, 0x0189, 0x0189, 0x0189, 0x018A, 0x018A,
0x018A, 0x018A, 0x018B, 0x018B, 0x018B, 0x018B, 0x018B, 0x018C,
0x018C, 0x018C, 0x018C, 0x018C, 0x018C, 0x018C, 0x018D, 0x018D,
0x018D, 0x018D, 0x018D, 0x018D, 0x018D, 0x018D, 0x018D, 0x018D,
0x018E, 0x018E, 0x018E, 0x018E, 0x018E, 0x018E, 0x018E, 0x018E,
0x018E, 0x018E, 0x018E, 0x018E, 0x018E, 0x018E, 0x018E, 0x018E,
0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F,
0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F,
0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F, 0x018F,
0x018F, 0x018F, 0x018F, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190,
0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190,
0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190,
0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190, 0x0190,
};
// Size: 1024 bytes