Commit | Line | Data |
---|---|---|
1 | #ifndef __MM_LOOKUP_H | |
2 | #define __MM_LOOKUP_H | |
3 | ||
4 | /* | |
5 | * Lookup decoder number. | |
6 | * | |
7 | */ | |
8 | static uint8_t lookup_decoder(uint8_t mm_byte) | |
9 | { | |
10 | switch(mm_byte) { | |
11 | /* 0x00 is invalid */ | |
12 | case 0xc0: return 1; | |
13 | case 0x80: return 2; | |
14 | case 0x30: return 3; | |
15 | case 0xf0: return 4; | |
16 | case 0xb0: return 5; | |
17 | case 0x20: return 6; | |
18 | case 0xe0: return 7; | |
19 | case 0xa0: return 8; | |
20 | ||
21 | case 0x0c: return 9; | |
22 | case 0xcc: return 10; | |
23 | case 0x8c: return 11; | |
24 | case 0x3c: return 12; | |
25 | case 0xfc: return 13; | |
26 | case 0xbc: return 14; | |
27 | case 0x2c: return 15; | |
28 | case 0xec: return 16; | |
29 | case 0xac: return 17; | |
30 | ||
31 | case 0x08: return 18; | |
32 | case 0xc8: return 19; | |
33 | case 0x88: return 20; | |
34 | case 0x38: return 21; | |
35 | case 0xf8: return 22; | |
36 | case 0xb8: return 23; | |
37 | case 0x28: return 24; | |
38 | case 0xe8: return 25; | |
39 | ||
40 | default: | |
41 | return 0; | |
42 | } | |
43 | } | |
44 | ||
45 | static uint8_t lookup_command(uint8_t mm_byte) | |
46 | { | |
47 | switch(mm_byte) { | |
48 | case 0xc3: return 1; | |
49 | case 0x03: return 2; | |
50 | case 0xf3: return 3; | |
51 | case 0x33: return 4; | |
52 | case 0xcf: return 5; | |
53 | case 0x0f: return 6; | |
54 | case 0xff: return 7; | |
55 | case 0x3f: return 8; | |
56 | default: | |
57 | return 0; | |
58 | } | |
59 | } | |
60 | ||
61 | ||
62 | #endif |