]> git.nihav.org Git - nihav.git/blame_incremental - nihav-duck/src/codecs/truemotion1data.rs
avimux: do not record palette change chunks in OpenDML index
[nihav.git] / nihav-duck / src / codecs / truemotion1data.rs
... / ...
CommitLineData
1use nihav_core::formats::*;
2
3pub const RGB555_FORMAT: NAPixelFormaton = NAPixelFormaton { model: ColorModel::RGB(RGBSubmodel::RGB), components: 3,
4 comp_info: [
5 Some(NAPixelChromaton{ h_ss: 0, v_ss: 0, packed: true, depth: 5, shift: 10, comp_offs: 0, next_elem: 2 }),
6 Some(NAPixelChromaton{ h_ss: 0, v_ss: 0, packed: true, depth: 5, shift: 5, comp_offs: 0, next_elem: 2 }),
7 Some(NAPixelChromaton{ h_ss: 0, v_ss: 0, packed: true, depth: 5, shift: 0, comp_offs: 0, next_elem: 2 }),
8 None, None],
9 elem_size: 2, be: false, alpha: false, palette: false };
10pub const BGR0_FORMAT: NAPixelFormaton = NAPixelFormaton { model: ColorModel::RGB(RGBSubmodel::RGB), components: 3,
11 comp_info: [
12 Some(NAPixelChromaton{ h_ss: 0, v_ss: 0, packed: true, depth: 8, shift: 0, comp_offs: 2, next_elem: 4 }),
13 Some(NAPixelChromaton{ h_ss: 0, v_ss: 0, packed: true, depth: 8, shift: 0, comp_offs: 1, next_elem: 4 }),
14 Some(NAPixelChromaton{ h_ss: 0, v_ss: 0, packed: true, depth: 8, shift: 0, comp_offs: 0, next_elem: 4 }),
15 None, None],
16 elem_size: 4, be: false, alpha: false, palette: false };
17
18#[derive(Clone,Copy)]
19pub struct TM1ComprInfo {
20 pub is_24bit: bool,
21 pub block_w: usize,
22 pub block_h: usize,
23}
24
25pub const TM1_COMPR_TYPES: [Option<TM1ComprInfo>; 17] = [
26 None,
27 Some(TM1ComprInfo { is_24bit: false, block_w: 4, block_h: 4 }),
28 Some(TM1ComprInfo { is_24bit: false, block_w: 4, block_h: 4 }),
29 Some(TM1ComprInfo { is_24bit: false, block_w: 4, block_h: 2 }),
30 Some(TM1ComprInfo { is_24bit: false, block_w: 4, block_h: 2 }),
31 Some(TM1ComprInfo { is_24bit: false, block_w: 2, block_h: 4 }),
32 Some(TM1ComprInfo { is_24bit: false, block_w: 2, block_h: 4 }),
33 Some(TM1ComprInfo { is_24bit: false, block_w: 2, block_h: 2 }),
34 Some(TM1ComprInfo { is_24bit: false, block_w: 2, block_h: 2 }),
35 None,
36 Some(TM1ComprInfo { is_24bit: true, block_w: 4, block_h: 4 }),
37 None,
38 Some(TM1ComprInfo { is_24bit: true, block_w: 4, block_h: 2 }),
39 None,
40 Some(TM1ComprInfo { is_24bit: true, block_w: 2, block_h: 4 }),
41 None,
42 Some(TM1ComprInfo { is_24bit: true, block_w: 2, block_h: 2 }),
43];
44
45pub const DUCK_Y_DELTAS: [[i32; 8]; 4] = [
46 [ 0, -1, 1, -3, 3, -6, 6, -6 ],
47 [ 0, -1, 2, -3, 4, -6, 6, -6 ],
48 [ 2, -3, 10, -10, 23, -23, 47, -47 ],
49 [ 0, -2, 2, -8, 8, -18, 18, -40 ]
50];
51const DUCK_Y_FAT_DELTA3: [i32; 8] = [ 0, -15, 50, -50, 115, -115, 235, -235 ];
52const DUCK_Y_FAT_DELTA4: [i32; 8] = [ 0, 40, 80, -76, 160, -154, 236, -236 ];
53pub const DUCK_Y_FAT_DELTAS: [&[i32; 8]; 4] = [
54 &DUCK_Y_FAT_DELTA3, &DUCK_Y_FAT_DELTA3, &DUCK_Y_FAT_DELTA3, &DUCK_Y_FAT_DELTA4
55];
56
57pub const DUCK_C_DELTAS: [[i32; 8]; 4] = [
58 [ 0, -1, 1, -2, 3, -4, 5, -4 ],
59 [ 0, -1, 1, -2, 3, -4, 5, -4 ],
60 [ 0, -4, 3, -16, 20, -32, 36, -32 ],
61 [ 0, -2, 2, -8, 8, -18, 18, -40 ]
62];
63const DUCK_C_FAT_DELTA3: [i32; 8] = [ 0, -20, 15, -80, 100, -160, 180, -160 ];
64pub const DUCK_C_FAT_DELTAS: [&[i32; 8]; 4] = [
65 &DUCK_C_FAT_DELTA3, &DUCK_C_FAT_DELTA3, &DUCK_C_FAT_DELTA3, &DUCK_Y_FAT_DELTA4
66];
67
68const DUCK_VECTBL1: &[u8] = &[
690x8,0x00,0x00,0x00,0x00,
700x8,0x10,0x00,0x00,0x00,
710x8,0x01,0x00,0x00,0x00,
720x8,0x00,0x10,0x00,0x00,
730x8,0x00,0x01,0x00,0x00,
740x8,0x00,0x00,0x10,0x00,
750x8,0x00,0x00,0x01,0x00,
760x8,0x00,0x00,0x00,0x10,
770x8,0x00,0x00,0x00,0x01,
780x6,0x00,0x00,0x00,
790x6,0x10,0x00,0x00,
800x6,0x01,0x00,0x00,
810x6,0x00,0x10,0x00,
820x6,0x00,0x01,0x00,
830x6,0x00,0x00,0x01,
840x6,0x00,0x00,0x10,
850x6,0x00,0x00,0x02,
860x6,0x00,0x00,0x20,
870x6,0x20,0x10,0x00,
880x6,0x00,0x02,0x01,
890x6,0x00,0x20,0x10,
900x6,0x02,0x01,0x00,
910x6,0x11,0x00,0x00,
920x6,0x00,0x20,0x00,
930x6,0x00,0x02,0x00,
940x6,0x20,0x00,0x00,
950x6,0x01,0x10,0x00,
960x6,0x02,0x00,0x00,
970x6,0x01,0x00,0x02,
980x6,0x10,0x00,0x20,
990x6,0x00,0x01,0x02,
1000x6,0x10,0x01,0x00,
1010x6,0x00,0x10,0x20,
1020x6,0x10,0x10,0x00,
1030x6,0x10,0x00,0x01,
1040x6,0x20,0x00,0x10,
1050x6,0x02,0x00,0x01,
1060x6,0x01,0x01,0x00,
1070x6,0x01,0x00,0x10,
1080x6,0x00,0x11,0x00,
1090x6,0x10,0x00,0x02,
1100x6,0x00,0x01,0x10,
1110x6,0x00,0x00,0x11,
1120x6,0x10,0x00,0x10,
1130x6,0x01,0x00,0x01,
1140x6,0x00,0x00,0x22,
1150x6,0x02,0x01,0x01,
1160x6,0x10,0x20,0x10,
1170x6,0x01,0x02,0x01,
1180x6,0x20,0x10,0x10,
1190x6,0x01,0x00,0x20,
1200x6,0x00,0x10,0x01,
1210x6,0x21,0x10,0x00,
1220x6,0x10,0x02,0x01,
1230x6,0x12,0x01,0x00,
1240x6,0x01,0x20,0x10,
1250x6,0x01,0x02,0x00,
1260x6,0x10,0x20,0x00,
1270x6,0x00,0x10,0x02,
1280x6,0x00,0x01,0x20,
1290x6,0x00,0x02,0x21,
1300x6,0x00,0x02,0x20,
1310x6,0x00,0x00,0x12,
1320x6,0x00,0x00,0x21,
1330x6,0x20,0x11,0x00,
1340x6,0x00,0x01,0x01,
1350x6,0x11,0x10,0x00,
1360x6,0x00,0x20,0x12,
1370x6,0x00,0x20,0x11,
1380x6,0x20,0x10,0x02,
1390x6,0x02,0x01,0x20,
1400x6,0x00,0x22,0x11,
1410x6,0x00,0x10,0x10,
1420x6,0x02,0x11,0x00,
1430x6,0x00,0x21,0x10,
1440x6,0x00,0x02,0x03,
1450x6,0x20,0x10,0x01,
1460x6,0x00,0x12,0x01,
1470x4,0x11,0x00,
1480x4,0x00,0x22,
1490x4,0x20,0x00,
1500x4,0x01,0x10,
1510x4,0x02,0x20,
1520x4,0x00,0x20,
1530x4,0x02,0x00,
1540x4,0x10,0x01,
1550x4,0x00,0x11,
1560x4,0x02,0x01,
1570x4,0x02,0x21,
1580x4,0x00,0x02,
1590x4,0x20,0x02,
1600x4,0x01,0x01,
1610x4,0x10,0x10,
1620x4,0x10,0x02,
1630x4,0x22,0x00,
1640x4,0x10,0x00,
1650x4,0x01,0x00,
1660x4,0x21,0x00,
1670x4,0x12,0x00,
1680x4,0x00,0x10,
1690x4,0x20,0x12,
1700x4,0x01,0x11,
1710x4,0x00,0x01,
1720x4,0x01,0x02,
1730x4,0x11,0x02,
1740x4,0x11,0x01,
1750x4,0x10,0x20,
1760x4,0x20,0x01,
1770x4,0x22,0x11,
1780x4,0x00,0x12,
1790x4,0x20,0x10,
1800x4,0x22,0x01,
1810x4,0x01,0x20,
1820x4,0x00,0x21,
1830x4,0x10,0x11,
1840x4,0x21,0x10,
1850x4,0x10,0x22,
1860x4,0x02,0x03,
1870x4,0x12,0x01,
1880x4,0x20,0x11,
1890x4,0x11,0x10,
1900x4,0x20,0x30,
1910x4,0x11,0x20,
1920x4,0x02,0x10,
1930x4,0x22,0x10,
1940x4,0x11,0x11,
1950x4,0x30,0x20,
1960x4,0x30,0x00,
1970x4,0x01,0x22,
1980x4,0x01,0x12,
1990x4,0x02,0x11,
2000x4,0x03,0x02,
2010x4,0x03,0x00,
2020x4,0x10,0x21,
2030x4,0x12,0x20,
2040x4,0x00,0x00,
2050x4,0x12,0x21,
2060x4,0x21,0x11,
2070x4,0x02,0x22,
2080x4,0x10,0x12,
2090x4,0x31,0x00,
2100x4,0x20,0x20,
2110x4,0x00,0x03,
2120x4,0x02,0x02,
2130x4,0x22,0x20,
2140x4,0x01,0x21,
2150x4,0x21,0x02,
2160x4,0x21,0x12,
2170x4,0x11,0x22,
2180x4,0x00,0x30,
2190x4,0x12,0x11,
2200x4,0x20,0x22,
2210x4,0x31,0x20,
2220x4,0x21,0x30,
2230x4,0x22,0x02,
2240x4,0x22,0x22,
2250x4,0x20,0x31,
2260x4,0x13,0x02,
2270x4,0x03,0x10,
2280x4,0x11,0x12,
2290x4,0x00,0x13,
2300x4,0x21,0x01,
2310x4,0x12,0x03,
2320x4,0x13,0x00,
2330x4,0x13,0x10,
2340x4,0x02,0x13,
2350x4,0x30,0x01,
2360x4,0x12,0x10,
2370x4,0x22,0x13,
2380x4,0x03,0x12,
2390x4,0x31,0x01,
2400x4,0x30,0x22,
2410x4,0x00,0x31,
2420x4,0x01,0x31,
2430x4,0x02,0x23,
2440x4,0x01,0x30,
2450x4,0x11,0x21,
2460x4,0x22,0x21,
2470x4,0x01,0x13,
2480x4,0x10,0x03,
2490x4,0x22,0x03,
2500x4,0x30,0x21,
2510x4,0x21,0x31,
2520x4,0x33,0x00,
2530x4,0x13,0x12,
2540x4,0x11,0x31,
2550x4,0x30,0x02,
2560x4,0x12,0x02,
2570x4,0x11,0x13,
2580x4,0x12,0x22,
2590x4,0x20,0x32,
2600x4,0x10,0x13,
2610x4,0x22,0x31,
2620x4,0x21,0x20,
2630x4,0x01,0x33,
2640x4,0x33,0x10,
2650x4,0x20,0x13,
2660x4,0x31,0x22,
2670x4,0x13,0x30,
2680x4,0x01,0x03,
2690x4,0x11,0x33,
2700x4,0x20,0x21,
2710x4,0x13,0x31,
2720x4,0x03,0x22,
2730x4,0x31,0x02,
2740x4,0x00,0x24,
2750x4,0x02,0x12,
2760x2,0x00,
2770x2,0x10,
2780x2,0x20,
2790x2,0x30,
2800x2,0x40,
2810x2,0x50,
2820x2,0x60,
2830x2,0x01,
2840x2,0x11,
2850x2,0x21,
2860x2,0x31,
2870x2,0x41,
2880x2,0x51,
2890x2,0x61,
2900x2,0x02,
2910x2,0x12,
2920x2,0x22,
2930x2,0x32,
2940x2,0x42,
2950x2,0x52,
2960x2,0x62,
2970x2,0x03,
2980x2,0x13,
2990x2,0x23,
3000x2,0x33,
3010x2,0x43,
3020x2,0x53,
3030x2,0x63,
3040x2,0x04,
3050x2,0x14,
3060x2,0x24,
3070x2,0x34,
3080x2,0x44,
3090x2,0x54,
3100x2,0x64,
3110x2,0x05,
3120x2,0x15,
3130x2,0x25,
3140x2,0x35,
3150x2,0x45,
3160x2,0x55,
3170x2,0x65,
3180x2,0x06,
3190x2,0x16,
3200x2,0x26,
3210x2,0x36,
3220x2,0x46,
3230x2,0x56,
3240x2,0x66
325];
326
327const DUCK_VECTBL2: &[u8] = &[
3280x8,0x00,0x00,0x00,0x00,
3290x8,0x00,0x00,0x00,0x00,
3300x8,0x10,0x00,0x00,0x00,
3310x8,0x01,0x00,0x00,0x00,
3320x8,0x00,0x10,0x00,0x00,
3330x8,0x00,0x01,0x00,0x00,
3340x8,0x00,0x00,0x10,0x00,
3350x8,0x00,0x00,0x01,0x00,
3360x8,0x00,0x00,0x00,0x10,
3370x8,0x00,0x00,0x00,0x01,
3380x6,0x00,0x00,0x00,
3390x6,0x10,0x00,0x00,
3400x6,0x01,0x00,0x00,
3410x6,0x00,0x10,0x00,
3420x6,0x00,0x01,0x00,
3430x6,0x00,0x00,0x01,
3440x6,0x00,0x00,0x10,
3450x6,0x00,0x00,0x02,
3460x6,0x00,0x00,0x20,
3470x6,0x20,0x10,0x00,
3480x6,0x00,0x02,0x01,
3490x6,0x00,0x20,0x10,
3500x6,0x02,0x01,0x00,
3510x6,0x11,0x00,0x00,
3520x6,0x00,0x20,0x00,
3530x6,0x00,0x02,0x00,
3540x6,0x20,0x00,0x00,
3550x6,0x01,0x10,0x00,
3560x6,0x02,0x00,0x00,
3570x6,0x01,0x00,0x02,
3580x6,0x10,0x00,0x20,
3590x6,0x00,0x01,0x02,
3600x6,0x10,0x01,0x00,
3610x6,0x00,0x10,0x20,
3620x6,0x10,0x10,0x00,
3630x6,0x10,0x00,0x01,
3640x6,0x20,0x00,0x10,
3650x6,0x02,0x00,0x01,
3660x6,0x01,0x01,0x00,
3670x6,0x01,0x00,0x10,
3680x6,0x00,0x11,0x00,
3690x6,0x10,0x00,0x02,
3700x6,0x00,0x01,0x10,
3710x6,0x00,0x00,0x11,
3720x6,0x10,0x00,0x10,
3730x6,0x01,0x00,0x01,
3740x6,0x00,0x00,0x22,
3750x6,0x02,0x01,0x01,
3760x6,0x10,0x20,0x10,
3770x6,0x01,0x02,0x01,
3780x6,0x20,0x10,0x10,
3790x6,0x01,0x00,0x20,
3800x6,0x00,0x10,0x01,
3810x6,0x21,0x10,0x00,
3820x6,0x10,0x02,0x01,
3830x6,0x12,0x01,0x00,
3840x6,0x01,0x20,0x10,
3850x6,0x01,0x02,0x00,
3860x6,0x10,0x20,0x00,
3870x6,0x00,0x10,0x02,
3880x6,0x00,0x01,0x20,
3890x6,0x00,0x02,0x21,
3900x6,0x00,0x02,0x20,
3910x6,0x00,0x00,0x12,
3920x6,0x00,0x00,0x21,
3930x6,0x20,0x11,0x00,
3940x6,0x00,0x01,0x01,
3950x6,0x11,0x10,0x00,
3960x6,0x00,0x20,0x12,
3970x6,0x00,0x20,0x11,
3980x6,0x20,0x10,0x02,
3990x6,0x02,0x01,0x20,
4000x6,0x00,0x22,0x11,
4010x6,0x00,0x10,0x10,
4020x6,0x02,0x11,0x00,
4030x6,0x00,0x21,0x10,
4040x6,0x00,0x02,0x03,
4050x6,0x20,0x10,0x01,
4060x6,0x00,0x12,0x01,
4070x4,0x11,0x00,
4080x4,0x00,0x22,
4090x4,0x20,0x00,
4100x4,0x01,0x10,
4110x4,0x02,0x20,
4120x4,0x00,0x20,
4130x4,0x02,0x00,
4140x4,0x10,0x01,
4150x4,0x00,0x11,
4160x4,0x02,0x01,
4170x4,0x02,0x21,
4180x4,0x00,0x02,
4190x4,0x20,0x02,
4200x4,0x01,0x01,
4210x4,0x10,0x10,
4220x4,0x10,0x02,
4230x4,0x22,0x00,
4240x4,0x10,0x00,
4250x4,0x01,0x00,
4260x4,0x21,0x00,
4270x4,0x12,0x00,
4280x4,0x00,0x10,
4290x4,0x20,0x12,
4300x4,0x01,0x11,
4310x4,0x00,0x01,
4320x4,0x01,0x02,
4330x4,0x11,0x02,
4340x4,0x11,0x01,
4350x4,0x10,0x20,
4360x4,0x20,0x01,
4370x4,0x22,0x11,
4380x4,0x00,0x12,
4390x4,0x20,0x10,
4400x4,0x22,0x01,
4410x4,0x01,0x20,
4420x4,0x00,0x21,
4430x4,0x10,0x11,
4440x4,0x21,0x10,
4450x4,0x10,0x22,
4460x4,0x02,0x03,
4470x4,0x12,0x01,
4480x4,0x20,0x11,
4490x4,0x11,0x10,
4500x4,0x20,0x30,
4510x4,0x11,0x20,
4520x4,0x02,0x10,
4530x4,0x22,0x10,
4540x4,0x11,0x11,
4550x4,0x30,0x20,
4560x4,0x30,0x00,
4570x4,0x01,0x22,
4580x4,0x01,0x12,
4590x4,0x02,0x11,
4600x4,0x03,0x02,
4610x4,0x03,0x00,
4620x4,0x10,0x21,
4630x4,0x12,0x20,
4640x4,0x00,0x00,
4650x4,0x12,0x21,
4660x4,0x21,0x11,
4670x4,0x02,0x22,
4680x4,0x10,0x12,
4690x4,0x31,0x00,
4700x4,0x20,0x20,
4710x4,0x00,0x03,
4720x4,0x02,0x02,
4730x4,0x22,0x20,
4740x4,0x01,0x21,
4750x4,0x21,0x02,
4760x4,0x21,0x12,
4770x4,0x11,0x22,
4780x4,0x00,0x30,
4790x4,0x12,0x11,
4800x4,0x20,0x22,
4810x4,0x31,0x20,
4820x4,0x21,0x30,
4830x4,0x22,0x02,
4840x4,0x22,0x22,
4850x4,0x20,0x31,
4860x4,0x13,0x02,
4870x4,0x03,0x10,
4880x4,0x11,0x12,
4890x4,0x00,0x13,
4900x4,0x21,0x01,
4910x4,0x12,0x03,
4920x4,0x13,0x00,
4930x4,0x13,0x10,
4940x4,0x02,0x13,
4950x4,0x30,0x01,
4960x4,0x12,0x10,
4970x4,0x22,0x13,
4980x4,0x03,0x12,
4990x4,0x31,0x01,
5000x4,0x30,0x22,
5010x4,0x00,0x31,
5020x4,0x01,0x31,
5030x4,0x02,0x23,
5040x4,0x01,0x30,
5050x4,0x11,0x21,
5060x4,0x22,0x21,
5070x4,0x01,0x13,
5080x4,0x10,0x03,
5090x4,0x22,0x03,
5100x4,0x30,0x21,
5110x4,0x21,0x31,
5120x4,0x33,0x00,
5130x4,0x13,0x12,
5140x4,0x11,0x31,
5150x4,0x30,0x02,
5160x4,0x12,0x02,
5170x4,0x11,0x13,
5180x4,0x12,0x22,
5190x4,0x20,0x32,
5200x4,0x10,0x13,
5210x4,0x22,0x31,
5220x4,0x21,0x20,
5230x4,0x01,0x33,
5240x4,0x33,0x10,
5250x4,0x20,0x13,
5260x4,0x31,0x22,
5270x4,0x13,0x30,
5280x4,0x01,0x03,
5290x4,0x11,0x33,
5300x4,0x20,0x21,
5310x4,0x13,0x31,
5320x4,0x03,0x22,
5330x4,0x31,0x02,
5340x4,0x00,0x24,
5350x2,0x00,
5360x2,0x10,
5370x2,0x20,
5380x2,0x30,
5390x2,0x40,
5400x2,0x50,
5410x2,0x60,
5420x2,0x01,
5430x2,0x11,
5440x2,0x21,
5450x2,0x31,
5460x2,0x41,
5470x2,0x51,
5480x2,0x61,
5490x2,0x02,
5500x2,0x12,
5510x2,0x22,
5520x2,0x32,
5530x2,0x42,
5540x2,0x52,
5550x2,0x62,
5560x2,0x03,
5570x2,0x13,
5580x2,0x23,
5590x2,0x33,
5600x2,0x43,
5610x2,0x53,
5620x2,0x63,
5630x2,0x04,
5640x2,0x14,
5650x2,0x24,
5660x2,0x34,
5670x2,0x44,
5680x2,0x54,
5690x2,0x64,
5700x2,0x05,
5710x2,0x15,
5720x2,0x25,
5730x2,0x35,
5740x2,0x45,
5750x2,0x55,
5760x2,0x65,
5770x2,0x06,
5780x2,0x16,
5790x2,0x26,
5800x2,0x36,
5810x2,0x46,
5820x2,0x56,
5830x2,0x66
584];
585
586const DUCK_VECTBL3: &[u8] = &[
5870x6,0x00,0x00,0x00,
5880x6,0x00,0x00,0x00,
5890x6,0x00,0x00,0x01,
5900x6,0x00,0x00,0x10,
5910x6,0x00,0x00,0x11,
5920x6,0x00,0x01,0x00,
5930x6,0x00,0x01,0x01,
5940x6,0x00,0x01,0x10,
5950x6,0x00,0x01,0x11,
5960x6,0x00,0x10,0x00,
5970x6,0x00,0x10,0x01,
5980x6,0x00,0x10,0x10,
5990x6,0x00,0x10,0x11,
6000x6,0x00,0x11,0x00,
6010x6,0x00,0x11,0x01,
6020x6,0x00,0x11,0x10,
6030x6,0x00,0x11,0x11,
6040x6,0x01,0x00,0x00,
6050x6,0x01,0x00,0x01,
6060x6,0x01,0x00,0x10,
6070x6,0x01,0x00,0x11,
6080x6,0x01,0x01,0x00,
6090x6,0x01,0x01,0x01,
6100x6,0x01,0x01,0x10,
6110x6,0x01,0x01,0x11,
6120x6,0x01,0x10,0x00,
6130x6,0x01,0x10,0x01,
6140x6,0x01,0x10,0x10,
6150x6,0x01,0x10,0x11,
6160x6,0x01,0x11,0x00,
6170x6,0x01,0x11,0x01,
6180x6,0x01,0x11,0x10,
6190x6,0x01,0x11,0x11,
6200x6,0x10,0x00,0x00,
6210x6,0x10,0x00,0x01,
6220x6,0x10,0x00,0x10,
6230x6,0x10,0x00,0x11,
6240x6,0x10,0x01,0x00,
6250x6,0x10,0x01,0x01,
6260x6,0x10,0x01,0x10,
6270x6,0x10,0x01,0x11,
6280x6,0x10,0x10,0x00,
6290x6,0x10,0x10,0x01,
6300x6,0x10,0x10,0x10,
6310x6,0x10,0x10,0x11,
6320x6,0x10,0x11,0x00,
6330x6,0x10,0x11,0x01,
6340x6,0x10,0x11,0x10,
6350x6,0x10,0x11,0x11,
6360x6,0x11,0x00,0x00,
6370x6,0x11,0x00,0x01,
6380x6,0x11,0x00,0x10,
6390x6,0x11,0x00,0x11,
6400x6,0x11,0x01,0x00,
6410x6,0x11,0x01,0x01,
6420x6,0x11,0x01,0x10,
6430x6,0x11,0x01,0x11,
6440x6,0x11,0x10,0x00,
6450x6,0x11,0x10,0x01,
6460x6,0x11,0x10,0x10,
6470x6,0x11,0x10,0x11,
6480x6,0x11,0x11,0x00,
6490x6,0x11,0x11,0x01,
6500x6,0x11,0x11,0x10,
6510x4,0x00,0x00,
6520x4,0x00,0x01,
6530x4,0x00,0x02,
6540x4,0x00,0x03,
6550x4,0x00,0x10,
6560x4,0x00,0x11,
6570x4,0x00,0x12,
6580x4,0x00,0x13,
6590x4,0x00,0x20,
6600x4,0x00,0x21,
6610x4,0x00,0x22,
6620x4,0x00,0x23,
6630x4,0x00,0x30,
6640x4,0x00,0x31,
6650x4,0x00,0x32,
6660x4,0x00,0x33,
6670x4,0x01,0x00,
6680x4,0x01,0x01,
6690x4,0x01,0x02,
6700x4,0x01,0x03,
6710x4,0x01,0x10,
6720x4,0x01,0x11,
6730x4,0x01,0x12,
6740x4,0x01,0x13,
6750x4,0x01,0x20,
6760x4,0x01,0x21,
6770x4,0x01,0x22,
6780x4,0x01,0x23,
6790x4,0x01,0x30,
6800x4,0x01,0x31,
6810x4,0x01,0x32,
6820x4,0x01,0x33,
6830x4,0x02,0x00,
6840x4,0x02,0x01,
6850x4,0x02,0x02,
6860x4,0x02,0x03,
6870x4,0x02,0x10,
6880x4,0x02,0x11,
6890x4,0x02,0x12,
6900x4,0x02,0x13,
6910x4,0x02,0x20,
6920x4,0x02,0x21,
6930x4,0x02,0x22,
6940x4,0x02,0x23,
6950x4,0x02,0x30,
6960x4,0x02,0x31,
6970x4,0x02,0x32,
6980x4,0x02,0x33,
6990x4,0x03,0x00,
7000x4,0x03,0x01,
7010x4,0x03,0x02,
7020x4,0x03,0x03,
7030x4,0x03,0x10,
7040x4,0x03,0x11,
7050x4,0x03,0x12,
7060x4,0x03,0x13,
7070x4,0x03,0x20,
7080x4,0x03,0x21,
7090x4,0x03,0x22,
7100x4,0x03,0x23,
7110x4,0x03,0x30,
7120x4,0x03,0x31,
7130x4,0x03,0x32,
7140x4,0x03,0x33,
7150x4,0x10,0x00,
7160x4,0x10,0x01,
7170x4,0x10,0x02,
7180x4,0x10,0x03,
7190x4,0x10,0x10,
7200x4,0x10,0x11,
7210x4,0x10,0x12,
7220x4,0x10,0x13,
7230x4,0x10,0x20,
7240x4,0x10,0x21,
7250x4,0x10,0x22,
7260x4,0x10,0x23,
7270x4,0x10,0x30,
7280x4,0x10,0x31,
7290x4,0x10,0x32,
7300x4,0x10,0x33,
7310x4,0x11,0x00,
7320x4,0x11,0x01,
7330x4,0x11,0x02,
7340x4,0x11,0x03,
7350x4,0x11,0x10,
7360x4,0x11,0x11,
7370x4,0x11,0x12,
7380x4,0x11,0x13,
7390x4,0x11,0x20,
7400x4,0x11,0x21,
7410x4,0x11,0x22,
7420x4,0x11,0x23,
7430x4,0x11,0x30,
7440x4,0x11,0x31,
7450x4,0x11,0x32,
7460x4,0x11,0x33,
7470x4,0x12,0x00,
7480x4,0x12,0x01,
7490x4,0x12,0x02,
7500x4,0x12,0x03,
7510x4,0x12,0x10,
7520x4,0x12,0x11,
7530x4,0x12,0x12,
7540x4,0x12,0x13,
7550x4,0x12,0x20,
7560x4,0x12,0x21,
7570x4,0x12,0x22,
7580x4,0x12,0x23,
7590x4,0x12,0x30,
7600x4,0x12,0x31,
7610x4,0x12,0x32,
7620x4,0x12,0x33,
7630x4,0x13,0x00,
7640x4,0x13,0x01,
7650x4,0x13,0x02,
7660x4,0x13,0x03,
7670x4,0x13,0x10,
7680x4,0x13,0x11,
7690x4,0x13,0x12,
7700x4,0x13,0x13,
7710x4,0x13,0x20,
7720x4,0x13,0x21,
7730x4,0x13,0x22,
7740x4,0x13,0x23,
7750x4,0x13,0x30,
7760x4,0x13,0x31,
7770x4,0x13,0x32,
7780x4,0x13,0x33,
7790x2,0x00,
7800x2,0x10,
7810x2,0x20,
7820x2,0x30,
7830x2,0x40,
7840x2,0x50,
7850x2,0x60,
7860x2,0x70,
7870x2,0x01,
7880x2,0x11,
7890x2,0x21,
7900x2,0x31,
7910x2,0x41,
7920x2,0x51,
7930x2,0x61,
7940x2,0x71,
7950x2,0x02,
7960x2,0x12,
7970x2,0x22,
7980x2,0x32,
7990x2,0x42,
8000x2,0x52,
8010x2,0x62,
8020x2,0x72,
8030x2,0x03,
8040x2,0x13,
8050x2,0x23,
8060x2,0x33,
8070x2,0x43,
8080x2,0x53,
8090x2,0x63,
8100x2,0x73,
8110x2,0x04,
8120x2,0x14,
8130x2,0x24,
8140x2,0x34,
8150x2,0x44,
8160x2,0x54,
8170x2,0x64,
8180x2,0x74,
8190x2,0x05,
8200x2,0x15,
8210x2,0x25,
8220x2,0x35,
8230x2,0x45,
8240x2,0x55,
8250x2,0x65,
8260x2,0x75,
8270x2,0x06,
8280x2,0x16,
8290x2,0x26,
8300x2,0x36,
8310x2,0x46,
8320x2,0x56,
8330x2,0x66,
8340x2,0x76,
8350x2,0x07,
8360x2,0x17,
8370x2,0x27,
8380x2,0x37,
8390x2,0x47,
8400x2,0x57,
8410x2,0x67,
8420x2,0x77
843];
844
845const DUCK_VECTBL4: &[u8] = &[
8460x8,0x00,0x00,0x00,0x00,
8470x8,0x00,0x00,0x00,0x00,
8480x8,0x20,0x00,0x00,0x00,
8490x8,0x00,0x00,0x00,0x01,
8500x8,0x10,0x00,0x00,0x00,
8510x8,0x00,0x00,0x00,0x02,
8520x8,0x01,0x00,0x00,0x00,
8530x8,0x00,0x00,0x00,0x10,
8540x8,0x02,0x00,0x00,0x00,
8550x6,0x00,0x00,0x00,
8560x6,0x20,0x00,0x00,
8570x6,0x00,0x00,0x01,
8580x6,0x10,0x00,0x00,
8590x6,0x00,0x00,0x02,
8600x6,0x00,0x10,0x00,
8610x6,0x00,0x20,0x00,
8620x6,0x00,0x02,0x00,
8630x6,0x00,0x01,0x00,
8640x6,0x01,0x00,0x00,
8650x6,0x00,0x00,0x20,
8660x6,0x02,0x00,0x00,
8670x6,0x00,0x00,0x10,
8680x6,0x10,0x00,0x20,
8690x6,0x01,0x00,0x02,
8700x6,0x20,0x00,0x10,
8710x6,0x02,0x00,0x01,
8720x6,0x20,0x10,0x00,
8730x6,0x00,0x12,0x00,
8740x6,0x00,0x02,0x01,
8750x6,0x02,0x01,0x00,
8760x6,0x00,0x21,0x00,
8770x6,0x00,0x01,0x02,
8780x6,0x00,0x20,0x10,
8790x6,0x00,0x00,0x21,
8800x6,0x00,0x00,0x12,
8810x6,0x00,0x01,0x20,
8820x6,0x12,0x00,0x00,
8830x6,0x00,0x10,0x20,
8840x6,0x01,0x20,0x00,
8850x6,0x02,0x10,0x00,
8860x6,0x10,0x20,0x00,
8870x6,0x01,0x02,0x00,
8880x6,0x21,0x00,0x00,
8890x6,0x00,0x02,0x10,
8900x6,0x20,0x01,0x00,
8910x6,0x00,0x22,0x00,
8920x6,0x10,0x02,0x00,
8930x6,0x00,0x10,0x02,
8940x6,0x11,0x00,0x00,
8950x6,0x00,0x11,0x00,
8960x6,0x22,0x00,0x00,
8970x6,0x20,0x00,0x02,
8980x6,0x10,0x00,0x01,
8990x6,0x00,0x20,0x01,
9000x6,0x02,0x20,0x00,
9010x6,0x01,0x10,0x00,
9020x6,0x01,0x00,0x20,
9030x6,0x00,0x20,0x02,
9040x6,0x01,0x20,0x02,
9050x6,0x10,0x01,0x00,
9060x6,0x02,0x00,0x10,
9070x6,0x00,0x10,0x01,
9080x6,0x10,0x01,0x20,
9090x6,0x20,0x02,0x10,
9100x6,0x00,0x00,0x22,
9110x6,0x10,0x00,0x02,
9120x6,0x00,0x02,0x20,
9130x6,0x20,0x02,0x00,
9140x6,0x00,0x00,0x11,
9150x6,0x02,0x10,0x01,
9160x6,0x00,0x01,0x10,
9170x6,0x00,0x02,0x11,
9180x4,0x01,0x02,
9190x4,0x02,0x01,
9200x4,0x01,0x00,
9210x4,0x10,0x20,
9220x4,0x20,0x10,
9230x4,0x20,0x00,
9240x4,0x11,0x00,
9250x4,0x02,0x00,
9260x4,0x12,0x00,
9270x4,0x00,0x21,
9280x4,0x22,0x00,
9290x4,0x00,0x12,
9300x4,0x21,0x00,
9310x4,0x02,0x11,
9320x4,0x00,0x01,
9330x4,0x10,0x02,
9340x4,0x02,0x20,
9350x4,0x20,0x11,
9360x4,0x01,0x10,
9370x4,0x21,0x10,
9380x4,0x10,0x00,
9390x4,0x10,0x22,
9400x4,0x20,0x20,
9410x4,0x00,0x22,
9420x4,0x01,0x22,
9430x4,0x20,0x01,
9440x4,0x02,0x02,
9450x4,0x00,0x20,
9460x4,0x00,0x10,
9470x4,0x00,0x11,
9480x4,0x22,0x01,
9490x4,0x11,0x20,
9500x4,0x12,0x01,
9510x4,0x12,0x20,
9520x4,0x11,0x02,
9530x4,0x10,0x10,
9540x4,0x01,0x01,
9550x4,0x02,0x21,
9560x4,0x20,0x12,
9570x4,0x01,0x12,
9580x4,0x22,0x11,
9590x4,0x21,0x12,
9600x4,0x22,0x10,
9610x4,0x21,0x02,
9620x4,0x20,0x02,
9630x4,0x10,0x01,
9640x4,0x00,0x02,
9650x4,0x10,0x21,
9660x4,0x01,0x20,
9670x4,0x11,0x22,
9680x4,0x12,0x21,
9690x4,0x22,0x20,
9700x4,0x02,0x10,
9710x4,0x02,0x22,
9720x4,0x11,0x10,
9730x4,0x22,0x02,
9740x4,0x20,0x21,
9750x4,0x01,0x11,
9760x4,0x11,0x01,
9770x4,0x10,0x12,
9780x4,0x02,0x12,
9790x4,0x20,0x22,
9800x4,0x21,0x20,
9810x4,0x01,0x21,
9820x4,0x12,0x02,
9830x4,0x21,0x11,
9840x4,0x12,0x22,
9850x4,0x12,0x10,
9860x4,0x22,0x21,
9870x4,0x10,0x11,
9880x4,0x21,0x01,
9890x4,0x11,0x12,
9900x4,0x12,0x11,
9910x4,0x66,0x66,
9920x4,0x22,0x22,
9930x4,0x11,0x21,
9940x4,0x11,0x11,
9950x4,0x21,0x22,
9960x4,0x00,0x00,
9970x4,0x22,0x12,
9980x4,0x12,0x12,
9990x4,0x21,0x21,
10000x4,0x42,0x00,
10010x4,0x00,0x04,
10020x4,0x40,0x00,
10030x4,0x30,0x00,
10040x4,0x31,0x00,
10050x4,0x00,0x03,
10060x4,0x00,0x14,
10070x4,0x00,0x13,
10080x4,0x01,0x24,
10090x4,0x20,0x13,
10100x4,0x01,0x42,
10110x4,0x14,0x20,
10120x4,0x42,0x02,
10130x4,0x13,0x00,
10140x4,0x00,0x24,
10150x4,0x31,0x20,
10160x4,0x22,0x13,
10170x4,0x11,0x24,
10180x4,0x12,0x66,
10190x4,0x30,0x01,
10200x4,0x02,0x13,
10210x4,0x12,0x42,
10220x4,0x40,0x10,
10230x4,0x40,0x02,
10240x4,0x01,0x04,
10250x4,0x24,0x00,
10260x4,0x42,0x10,
10270x4,0x21,0x13,
10280x4,0x13,0x12,
10290x4,0x31,0x21,
10300x4,0x21,0x24,
10310x4,0x00,0x40,
10320x4,0x10,0x24,
10330x4,0x10,0x42,
10340x4,0x32,0x01,
10350x4,0x11,0x42,
10360x4,0x20,0x31,
10370x4,0x12,0x40,
10380x2,0x00,
10390x2,0x10,
10400x2,0x20,
10410x2,0x30,
10420x2,0x40,
10430x2,0x50,
10440x2,0x60,
10450x2,0x70,
10460x2,0x01,
10470x2,0x11,
10480x2,0x21,
10490x2,0x31,
10500x2,0x41,
10510x2,0x51,
10520x2,0x61,
10530x2,0x71,
10540x2,0x02,
10550x2,0x12,
10560x2,0x22,
10570x2,0x32,
10580x2,0x42,
10590x2,0x52,
10600x2,0x62,
10610x2,0x72,
10620x2,0x03,
10630x2,0x13,
10640x2,0x23,
10650x2,0x33,
10660x2,0x43,
10670x2,0x53,
10680x2,0x63,
10690x2,0x73,
10700x2,0x04,
10710x2,0x14,
10720x2,0x24,
10730x2,0x34,
10740x2,0x44,
10750x2,0x54,
10760x2,0x64,
10770x2,0x74,
10780x2,0x05,
10790x2,0x15,
10800x2,0x25,
10810x2,0x35,
10820x2,0x45,
10830x2,0x55,
10840x2,0x65,
10850x2,0x75,
10860x2,0x06,
10870x2,0x16,
10880x2,0x26,
10890x2,0x36,
10900x2,0x46,
10910x2,0x56,
10920x2,0x66,
10930x2,0x76,
10940x2,0x07,
10950x2,0x17,
10960x2,0x27,
10970x2,0x37,
10980x2,0x47,
10990x2,0x57,
11000x2,0x67,
11010x2,0x77
1102];
1103
1104pub const DUCK_VECTABLES: [&[u8]; 4] = [ DUCK_VECTBL1, DUCK_VECTBL2, DUCK_VECTBL3, DUCK_VECTBL4 ];