mirror of
https://github.com/eried/portapack-mayhem.git
synced 2025-06-23 06:14:13 -04:00
Formatted code (#1007)
* Updated style * Updated files * fixed new line * Updated spacing * File fix WIP * Updated to clang 13 * updated comment style * Removed old comment code
This commit is contained in:
parent
7aca7ce74d
commit
033c4e9a5b
599 changed files with 70746 additions and 66896 deletions
|
@ -29,200 +29,253 @@
|
|||
|
||||
namespace encoders {
|
||||
|
||||
#define ENC_TYPES_COUNT 14
|
||||
#define OOK_SAMPLERATE 2280000U
|
||||
#define ENC_TYPES_COUNT 14
|
||||
#define OOK_SAMPLERATE 2280000U
|
||||
|
||||
#define ENCODER_UM3750 8
|
||||
#define ENCODER_UM3750 8
|
||||
|
||||
size_t make_bitstream(std::string& fragments);
|
||||
void bitstream_append(size_t& bitstream_length, uint32_t bit_count, uint32_t bits);
|
||||
size_t make_bitstream(std::string& fragments);
|
||||
void bitstream_append(size_t& bitstream_length, uint32_t bit_count, uint32_t bits);
|
||||
|
||||
struct encoder_def_t {
|
||||
char name[16]; // Encoder chip ref/name
|
||||
char address_symbols[8]; // List of possible symbols like "01", "01F"...
|
||||
char data_symbols[8]; // Same
|
||||
uint16_t clk_per_symbol; // Oscillator periods per symbol
|
||||
uint16_t clk_per_fragment; // Oscillator periods per symbol fragment (state)
|
||||
char bit_format[4][20]; // List of fragments for each symbol in previous *_symbols list order
|
||||
uint8_t word_length; // Total # of symbols (not counting sync)
|
||||
char word_format[32]; // A for Address, D for Data, S for sync
|
||||
char sync[64]; // Like bit_format
|
||||
uint32_t default_speed; // Default encoder clk frequency (often set by shitty resistor)
|
||||
uint8_t repeat_min; // Minimum repeat count
|
||||
uint16_t pause_symbols; // Length of pause between repeats in symbols
|
||||
};
|
||||
struct encoder_def_t {
|
||||
char name[16]; // Encoder chip ref/name
|
||||
char address_symbols[8]; // List of possible symbols like "01", "01F"...
|
||||
char data_symbols[8]; // Same
|
||||
uint16_t clk_per_symbol; // Oscillator periods per symbol
|
||||
uint16_t clk_per_fragment; // Oscillator periods per symbol fragment (state)
|
||||
char bit_format[4][20]; // List of fragments for each symbol in previous *_symbols list order
|
||||
uint8_t word_length; // Total # of symbols (not counting sync)
|
||||
char word_format[32]; // A for Address, D for Data, S for sync
|
||||
char sync[64]; // Like bit_format
|
||||
uint32_t default_speed; // Default encoder clk frequency (often set by shitty resistor)
|
||||
uint8_t repeat_min; // Minimum repeat count
|
||||
uint16_t pause_symbols; // Length of pause between repeats in symbols
|
||||
};
|
||||
|
||||
// Warning ! If this is changed, make sure that ENCODER_UM3750 is still valid !
|
||||
constexpr encoder_def_t encoder_defs[ENC_TYPES_COUNT] = {
|
||||
// PT2260-R2
|
||||
{
|
||||
"2260-R2",
|
||||
"01F", "01",
|
||||
1024, 128,
|
||||
{ "10001000", "11101110", "10001110" },
|
||||
12, "AAAAAAAAAADDS",
|
||||
"10000000000000000000000000000000",
|
||||
150000, 2,
|
||||
0
|
||||
},
|
||||
// Warning ! If this is changed, make sure that ENCODER_UM3750 is still valid !
|
||||
constexpr encoder_def_t encoder_defs[ENC_TYPES_COUNT] = {
|
||||
// PT2260-R2
|
||||
{
|
||||
"2260-R2",
|
||||
"01F",
|
||||
"01",
|
||||
1024,
|
||||
128,
|
||||
{"10001000", "11101110", "10001110"},
|
||||
12,
|
||||
"AAAAAAAAAADDS",
|
||||
"10000000000000000000000000000000",
|
||||
150000,
|
||||
2,
|
||||
0},
|
||||
|
||||
// PT2260-R4
|
||||
{
|
||||
"2260-R4",
|
||||
"01F", "01",
|
||||
1024, 128,
|
||||
{ "10001000", "11101110", "10001110" },
|
||||
12, "AAAAAAAADDDDS",
|
||||
"10000000000000000000000000000000",
|
||||
150000, 2,
|
||||
0
|
||||
},
|
||||
// PT2260-R4
|
||||
{
|
||||
"2260-R4",
|
||||
"01F",
|
||||
"01",
|
||||
1024,
|
||||
128,
|
||||
{"10001000", "11101110", "10001110"},
|
||||
12,
|
||||
"AAAAAAAADDDDS",
|
||||
"10000000000000000000000000000000",
|
||||
150000,
|
||||
2,
|
||||
0},
|
||||
|
||||
// PT2262
|
||||
{
|
||||
"2262 ",
|
||||
"01F", "01F",
|
||||
32, 4,
|
||||
{ "10001000", "11101110", "10001110" },
|
||||
12, "AAAAAAAAAAAAS",
|
||||
"10000000000000000000000000000000",
|
||||
20000, 4,
|
||||
0
|
||||
},
|
||||
// PT2262
|
||||
{
|
||||
"2262 ",
|
||||
"01F",
|
||||
"01F",
|
||||
32,
|
||||
4,
|
||||
{"10001000", "11101110", "10001110"},
|
||||
12,
|
||||
"AAAAAAAAAAAAS",
|
||||
"10000000000000000000000000000000",
|
||||
20000,
|
||||
4,
|
||||
0},
|
||||
|
||||
// 16-bit ?
|
||||
{
|
||||
"16-bit ",
|
||||
"01", "01",
|
||||
32, 8,
|
||||
{ "1110", "1000" }, // Opposite ?
|
||||
16, "AAAAAAAAAAAAAAAAS",
|
||||
"100000000000000000000",
|
||||
25000, 50,
|
||||
0 // ?
|
||||
},
|
||||
// 16-bit ?
|
||||
{
|
||||
"16-bit ",
|
||||
"01",
|
||||
"01",
|
||||
32,
|
||||
8,
|
||||
{"1110", "1000"}, // Opposite ?
|
||||
16,
|
||||
"AAAAAAAAAAAAAAAAS",
|
||||
"100000000000000000000",
|
||||
25000,
|
||||
50,
|
||||
0 // ?
|
||||
},
|
||||
|
||||
// RT1527
|
||||
{
|
||||
"1527 ",
|
||||
"01", "01",
|
||||
128, 32,
|
||||
{ "1000", "1110" },
|
||||
24, "SAAAAAAAAAAAAAAAAAAAADDDD",
|
||||
"10000000000000000000000000000000",
|
||||
100000, 4,
|
||||
0
|
||||
},
|
||||
// RT1527
|
||||
{
|
||||
"1527 ",
|
||||
"01",
|
||||
"01",
|
||||
128,
|
||||
32,
|
||||
{"1000", "1110"},
|
||||
24,
|
||||
"SAAAAAAAAAAAAAAAAAAAADDDD",
|
||||
"10000000000000000000000000000000",
|
||||
100000,
|
||||
4,
|
||||
0},
|
||||
|
||||
// HK526E
|
||||
{
|
||||
"526E ",
|
||||
"01", "01",
|
||||
24, 8,
|
||||
{ "110", "100" },
|
||||
12, "AAAAAAAAAAAA",
|
||||
"",
|
||||
20000, 4,
|
||||
10 // ?
|
||||
},
|
||||
// HK526E
|
||||
{
|
||||
"526E ",
|
||||
"01",
|
||||
"01",
|
||||
24,
|
||||
8,
|
||||
{"110", "100"},
|
||||
12,
|
||||
"AAAAAAAAAAAA",
|
||||
"",
|
||||
20000,
|
||||
4,
|
||||
10 // ?
|
||||
},
|
||||
|
||||
// HT12E
|
||||
{
|
||||
"12E ",
|
||||
"01", "01",
|
||||
3, 1,
|
||||
{ "011", "001" },
|
||||
12, "SAAAAAAAADDDD",
|
||||
"0000000000000000000000000000000000001",
|
||||
3000, 4,
|
||||
10 // ?
|
||||
},
|
||||
// HT12E
|
||||
{
|
||||
"12E ",
|
||||
"01",
|
||||
"01",
|
||||
3,
|
||||
1,
|
||||
{"011", "001"},
|
||||
12,
|
||||
"SAAAAAAAADDDD",
|
||||
"0000000000000000000000000000000000001",
|
||||
3000,
|
||||
4,
|
||||
10 // ?
|
||||
},
|
||||
|
||||
// VD5026 13 bits ?
|
||||
{
|
||||
"5026 ",
|
||||
"0123", "0123",
|
||||
128, 8,
|
||||
{ "1000000010000000", "1111111011111110", "1111111010000000", "1000000011111110" },
|
||||
12, "SAAAAAAAAAAAA",
|
||||
"000000000000000000000000000000000000000000000001", // ?
|
||||
100000, 4,
|
||||
10 // ?
|
||||
},
|
||||
// VD5026 13 bits ?
|
||||
{
|
||||
"5026 ",
|
||||
"0123",
|
||||
"0123",
|
||||
128,
|
||||
8,
|
||||
{"1000000010000000", "1111111011111110", "1111111010000000", "1000000011111110"},
|
||||
12,
|
||||
"SAAAAAAAAAAAA",
|
||||
"000000000000000000000000000000000000000000000001", // ?
|
||||
100000,
|
||||
4,
|
||||
10 // ?
|
||||
},
|
||||
|
||||
// UM3750
|
||||
{
|
||||
"UM3750 ",
|
||||
"01", "01",
|
||||
96, 32,
|
||||
{ "011", "001" },
|
||||
12, "SAAAAAAAAAAAA",
|
||||
"001",
|
||||
100000, 4,
|
||||
(3 * 12) - 6 // Compensates for pause delay bug in proc_ook
|
||||
},
|
||||
// UM3750
|
||||
{
|
||||
"UM3750 ",
|
||||
"01",
|
||||
"01",
|
||||
96,
|
||||
32,
|
||||
{"011", "001"},
|
||||
12,
|
||||
"SAAAAAAAAAAAA",
|
||||
"001",
|
||||
100000,
|
||||
4,
|
||||
(3 * 12) - 6 // Compensates for pause delay bug in proc_ook
|
||||
},
|
||||
|
||||
// UM3758
|
||||
{
|
||||
"UM3758 ",
|
||||
"01F", "01",
|
||||
96, 16,
|
||||
{ "011011", "001001", "011001" },
|
||||
18, "SAAAAAAAAAADDDDDDDD",
|
||||
"1",
|
||||
160000, 4,
|
||||
10 // ?
|
||||
},
|
||||
// UM3758
|
||||
{
|
||||
"UM3758 ",
|
||||
"01F",
|
||||
"01",
|
||||
96,
|
||||
16,
|
||||
{"011011", "001001", "011001"},
|
||||
18,
|
||||
"SAAAAAAAAAADDDDDDDD",
|
||||
"1",
|
||||
160000,
|
||||
4,
|
||||
10 // ?
|
||||
},
|
||||
|
||||
// BA5104
|
||||
{
|
||||
"BA5104 ",
|
||||
"01", "01",
|
||||
3072, 768,
|
||||
{ "1000", "1110" },
|
||||
9, "SDDAAAAAAA",
|
||||
"",
|
||||
455000, 4,
|
||||
10 // ?
|
||||
},
|
||||
// BA5104
|
||||
{
|
||||
"BA5104 ",
|
||||
"01",
|
||||
"01",
|
||||
3072,
|
||||
768,
|
||||
{"1000", "1110"},
|
||||
9,
|
||||
"SDDAAAAAAA",
|
||||
"",
|
||||
455000,
|
||||
4,
|
||||
10 // ?
|
||||
},
|
||||
|
||||
// MC145026
|
||||
{
|
||||
"145026 ",
|
||||
"01F", "01",
|
||||
16, 1,
|
||||
{ "0111111101111111", "0100000001000000", "0111111101000000" },
|
||||
9, "SAAAAADDDD",
|
||||
"000000000000000000",
|
||||
455000, 2,
|
||||
2
|
||||
},
|
||||
// MC145026
|
||||
{
|
||||
"145026 ",
|
||||
"01F",
|
||||
"01",
|
||||
16,
|
||||
1,
|
||||
{"0111111101111111", "0100000001000000", "0111111101000000"},
|
||||
9,
|
||||
"SAAAAADDDD",
|
||||
"000000000000000000",
|
||||
455000,
|
||||
2,
|
||||
2},
|
||||
|
||||
// HT6*** TODO: Add individual variations
|
||||
{
|
||||
"HT6*** ",
|
||||
"01F", "01",
|
||||
198, 33,
|
||||
{ "011011", "001001", "001011" },
|
||||
18, "SAAAAAAAAAAAADDDDDD",
|
||||
"0000000000000000000000000000000000001011001011001",
|
||||
80000, 3,
|
||||
10 // ?
|
||||
},
|
||||
// HT6*** TODO: Add individual variations
|
||||
{
|
||||
"HT6*** ",
|
||||
"01F",
|
||||
"01",
|
||||
198,
|
||||
33,
|
||||
{"011011", "001001", "001011"},
|
||||
18,
|
||||
"SAAAAAAAAAAAADDDDDD",
|
||||
"0000000000000000000000000000000000001011001011001",
|
||||
80000,
|
||||
3,
|
||||
10 // ?
|
||||
},
|
||||
|
||||
// TC9148
|
||||
{
|
||||
"TC9148 ",
|
||||
"01", "01",
|
||||
48, 12,
|
||||
{ "1000", "1110", },
|
||||
12, "AAAAAAAAAAAA",
|
||||
"",
|
||||
455000, 3,
|
||||
10 // ?
|
||||
}
|
||||
};
|
||||
// TC9148
|
||||
{
|
||||
"TC9148 ",
|
||||
"01",
|
||||
"01",
|
||||
48,
|
||||
12,
|
||||
{
|
||||
"1000",
|
||||
"1110",
|
||||
},
|
||||
12,
|
||||
"AAAAAAAAAAAA",
|
||||
"",
|
||||
455000,
|
||||
3,
|
||||
10 // ?
|
||||
}};
|
||||
|
||||
} /* namespace encoders */
|
||||
|
||||
#endif/*__ENCODERS_H__*/
|
||||
#endif /*__ENCODERS_H__*/
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue