├── .github └── FUNDING.yml ├── DefenderV8Drive.h ├── DefenderV8Idle.h ├── DefenderV8Start.h ├── LaFerrari.h ├── MgBGtV8.h ├── Mustang68.h ├── README.md ├── Rc_Engine_Sound.ino ├── ScaniaV8Idle.h ├── ScaniaV8Start.h ├── TrophyTruckIdle.h ├── UralV8Idle.h ├── UralV8Start.h ├── bottom.jpg ├── chevyNovaV8.h ├── curves.h ├── diesel.h ├── horn.h ├── settings.h ├── top.jpg ├── v8.h └── wiring.jpg /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: TheDIYGuy999 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: "https://paypal.me/thediyguy999" 13 | -------------------------------------------------------------------------------- /DefenderV8Drive.h: -------------------------------------------------------------------------------- 1 | // drive sound made by wav2c 2 | 3 | // const int drive_sampleRate = 16000; 4 | const int drive_length = 1528; 5 | 6 | const signed char drive_data[] PROGMEM ={129, 7 | 134, 139, 146, 159, 171, 179, 185, 191, 197, 202, 206, 209, 213, 217, 224, 232, 240, 245, 248, 252, 8 | 254, 255, 254, 251, 247, 241, 234, 227, 220, 212, 204, 199, 196, 192, 184, 175, 170, 168, 164, 157, 9 | 149, 143, 139, 134, 128, 122, 116, 110, 102, 96, 91, 86, 81, 74, 65, 59, 61, 66, 70, 69, 10 | 70, 74, 74, 69, 63, 61, 62, 60, 55, 52, 52, 53, 50, 45, 42, 42, 39, 32, 25, 20, 11 | 17, 14, 13, 11, 13, 22, 33, 43, 51, 61, 71, 78, 84, 91, 100, 109, 115, 118, 118, 120, 12 | 123, 125, 128, 132, 137, 141, 142, 146, 151, 156, 159, 162, 167, 171, 169, 165, 165, 168, 170, 170, 13 | 167, 164, 160, 158, 159, 163, 164, 158, 151, 146, 139, 129, 118, 109, 103, 101, 97, 92, 91, 91, 14 | 92, 92, 93, 97, 103, 106, 110, 115, 120, 126, 132, 136, 139, 144, 150, 154, 157, 158, 157, 153, 15 | 146, 139, 134, 130, 128, 128, 128, 128, 130, 131, 130, 128, 130, 131, 131, 133, 138, 140, 138, 135, 16 | 130, 124, 122, 125, 127, 128, 131, 132, 129, 123, 118, 112, 106, 101, 95, 90, 86, 84, 82, 81, 17 | 78, 75, 75, 77, 79, 83, 88, 93, 96, 99, 104, 111, 116, 119, 120, 124, 131, 139, 145, 149, 18 | 155, 162, 168, 172, 176, 182, 189, 193, 193, 192, 194, 197, 197, 197, 194, 188, 184, 180, 177, 175, 19 | 172, 169, 163, 157, 154, 151, 147, 143, 141, 139, 137, 138, 138, 137, 137, 136, 136, 137, 140, 141, 20 | 142, 146, 150, 153, 159, 168, 176, 179, 179, 181, 186, 186, 182, 179, 178, 176, 173, 168, 166, 165, 21 | 161, 153, 145, 144, 145, 142, 136, 133, 132, 131, 126, 120, 114, 108, 102, 97, 92, 87, 82, 78, 22 | 72, 67, 64, 62, 60, 58, 52, 44, 38, 35, 32, 29, 29, 30, 30, 31, 33, 37, 46, 58, 23 | 69, 80, 92, 107, 119, 128, 137, 148, 158, 167, 177, 185, 192, 198, 203, 209, 215, 220, 222, 224, 24 | 227, 229, 228, 226, 224, 222, 220, 217, 212, 205, 200, 196, 190, 182, 176, 172, 167, 159, 151, 143, 25 | 137, 132, 128, 125, 123, 124, 125, 124, 123, 125, 126, 123, 119, 118, 120, 122, 123, 125, 130, 134, 26 | 137, 143, 151, 160, 169, 174, 177, 181, 186, 189, 189, 186, 181, 176, 168, 157, 145, 135, 128, 119, 27 | 111, 103, 94, 85, 79, 75, 73, 72, 69, 65, 64, 63, 61, 57, 54, 52, 52, 52, 52, 54, 28 | 58, 61, 62, 64, 71, 76, 79, 83, 88, 92, 94, 97, 101, 107, 111, 118, 128, 137, 143, 145, 29 | 146, 150, 154, 149, 139, 129, 123, 116, 107, 100, 96, 91, 87, 85, 89, 97, 101, 99, 94, 90, 30 | 87, 83, 77, 75, 77, 78, 80, 88, 103, 118, 129, 137, 143, 149, 153, 153, 151, 147, 141, 131, 31 | 122, 118, 121, 127, 134, 141, 144, 145, 146, 151, 157, 161, 157, 148, 139, 129, 118, 108, 103, 102, 32 | 100, 93, 85, 79, 77, 78, 77, 76, 76, 76, 73, 72, 72, 74, 75, 73, 72, 74, 79, 81, 33 | 81, 83, 88, 94, 98, 102, 107, 110, 110, 107, 106, 108, 112, 113, 114, 118, 125, 130, 132, 133, 34 | 136, 141, 144, 145, 145, 147, 147, 146, 146, 148, 155, 162, 169, 177, 186, 192, 194, 194, 195, 197, 35 | 197, 196, 198, 203, 205, 203, 200, 200, 201, 202, 202, 203, 202, 200, 197, 197, 198, 196, 191, 187, 36 | 184, 180, 173, 167, 167, 169, 168, 165, 162, 161, 160, 158, 157, 156, 155, 150, 144, 141, 141, 139, 37 | 136, 137, 141, 146, 147, 147, 148, 150, 152, 154, 155, 155, 158, 161, 164, 164, 164, 165, 165, 163, 38 | 160, 158, 156, 151, 143, 134, 127, 120, 113, 105, 96, 89, 84, 79, 75, 72, 69, 66, 61, 56, 39 | 52, 50, 50, 50, 52, 52, 52, 55, 63, 72, 76, 77, 83, 91, 100, 108, 117, 126, 135, 142, 40 | 149, 158, 166, 170, 172, 176, 181, 181, 178, 179, 183, 186, 184, 180, 180, 182, 183, 181, 178, 179, 41 | 180, 180, 175, 170, 167, 162, 155, 146, 138, 131, 124, 120, 119, 118, 114, 110, 104, 103, 104, 103, 42 | 100, 102, 107, 112, 111, 108, 107, 110, 113, 110, 102, 98, 99, 100, 100, 100, 102, 106, 110, 112, 43 | 112, 113, 115, 117, 115, 111, 106, 100, 95, 89, 82, 77, 73, 70, 65, 58, 54, 54, 58, 61, 44 | 62, 64, 67, 72, 79, 87, 95, 104, 113, 120, 129, 141, 156, 167, 174, 181, 187, 191, 191, 191, 45 | 193, 196, 199, 198, 194, 187, 179, 170, 162, 155, 147, 139, 132, 125, 118, 111, 105, 104, 104, 104, 46 | 100, 97, 98, 101, 100, 95, 91, 89, 86, 80, 76, 73, 69, 63, 60, 60, 59, 59, 62, 70, 47 | 80, 90, 99, 107, 119, 133, 142, 148, 153, 157, 160, 161, 159, 153, 145, 138, 130, 121, 116, 113, 48 | 111, 109, 112, 119, 127, 132, 137, 146, 157, 165, 170, 173, 175, 173, 164, 153, 143, 136, 129, 121, 49 | 112, 104, 100, 98, 95, 91, 88, 87, 84, 78, 71, 68, 68, 66, 63, 60, 59, 57, 56, 56, 50 | 57, 58, 58, 58, 58, 57, 56, 59, 65, 72, 78, 88, 100, 113, 125, 135, 146, 158, 170, 181, 51 | 188, 194, 197, 201, 204, 208, 214, 220, 225, 227, 230, 236, 242, 243, 242, 242, 244, 246, 247, 245, 52 | 240, 235, 229, 223, 216, 208, 201, 198, 198, 200, 201, 201, 200, 197, 193, 190, 187, 184, 177, 168, 53 | 157, 151, 148, 146, 143, 138, 133, 129, 127, 127, 128, 129, 128, 126, 124, 121, 118, 116, 112, 106, 54 | 100, 96, 93, 90, 85, 80, 78, 78, 78, 78, 78, 78, 76, 71, 68, 69, 73, 75, 77, 81, 55 | 87, 95, 103, 113, 120, 126, 128, 128, 128, 130, 131, 129, 128, 132, 137, 137, 137, 140, 144, 144, 56 | 143, 142, 142, 142, 141, 143, 147, 154, 160, 164, 167, 171, 175, 176, 177, 178, 179, 178, 178, 178, 57 | 177, 172, 165, 158, 152, 147, 139, 131, 123, 117, 111, 106, 104, 105, 107, 109, 111, 117, 126, 137, 58 | 146, 154, 162, 174, 185, 192, 194, 193, 189, 184, 178, 173, 167, 160, 151, 141, 130, 120, 111, 105, 59 | 103, 99, 94, 89, 87, 88, 91, 92, 92, 94, 96, 98, 98, 99, 100, 98, 91, 83, 77, 70, 60 | 63, 60, 61, 64, 64, 63, 62, 63, 66, 68, 69, 73, 78, 82, 86, 90, 99, 109, 115, 121, 61 | 129, 137, 143, 146, 151, 155, 157, 157, 160, 166, 174, 180, 184, 190, 200, 212, 221, 224, 227, 233, 62 | 235, 230, 224, 220, 217, 214, 210, 206, 200, 193, 185, 178, 170, 159, 147, 138, 132, 124, 113, 106, 63 | 102, 97, 91, 86, 83, 82, 80, 76, 73, 73, 78, 82, 85, 87, 89, 90, 93, 99, 106, 110, 64 | 111, 112, 114, 119, 124, 130, 136, 144, 152, 158, 162, 167, 175, 184, 188, 187, 185, 185, 188, 190, 65 | 187, 182, 179, 177, 174, 169, 165, 162, 161, 159, 154, 147, 139, 131, 124, 118, 112, 104, 97, 89, 66 | 79, 69, 62, 55, 48, 39, 32, 30, 31, 31, 30, 33, 39, 46, 54, 65, 75, 84, 93, 100, 67 | 105, 108, 112, 116, 121, 126, 130, 134, 137, 138, 138, 139, 144, 148, 149, 147, 146, 145, 143, 141, 68 | 137, 132, 127, 124, 121, 120, 120, 120, 120, 119, 120, 120, 118, 114, 111, 108, 105, 104, 105, 104, 69 | 103, 102, 103, 105, 106, 106, 103, 99, 99, 101, 103, 103, 104, 105, 108, 110, 109, 107, 107, 109, 70 | 108, 106, 104, 103, 100, 95, 90, 88, 88, 88, 85, 81, 78, 77, 72, 65, 63, 62, 60, 57, 71 | 56, 59, 61, 60, 59, 59, 60, 59, 59, 63, 70, 77, 84, 91, 100, 112, 125, 138, 150, 162, 72 | 176, 189, 198, 204, 209, 213, 215, 215, 215, 217, 219, 219, 214, 207, 201, 195, 190, 184, 177, 171, 73 | 166, 160, 151, 141, 132, 126, 119, 111, 105, 98, 88, 77, 72, 72, 73, 68, 65, 68, 74, 79, 74 | 82, 88, 99, 111, 120, 127, 135, 143, 151, 157, 161, 167, 175, 181, 184, 186, 193, 201, 206, 207, 75 | 208, 208, 207, 205, 203, 203, 206, 207, 204, 201, 198, 195, 191, 188, 185, 180, 176, 173, 168, 159, 76 | 147, 138, 135, 132, 127, 125, 127, 129, 128, 127, 130, 135, 136, 132, 131, 134, 136, 133, 127, 125, 77 | 125, 123, 118, 117, 117, 117, 116, 114, 113, 112, 113, 111, 107, 103, 101, 99, 96, 93, 94, 98, 78 | 103, 109, 114, 119, 124, 130, 137, 140, 138, 134, 132, 130, 127, 126, 126, 123, 120, 120, 122, 126, 79 | 132, 137, 142, 149, 155, 155, 154, 154, 154, 151, 146, 142, 140, 140, 141, 141, 139, 136, 134, 134, 80 | 135, 134, 132, 129, 125, 118, 110, 107, 111, 115, 115, 116, 120, 126, 128, 127, 126, 125, 122, 116, 81 | 109, 105, 104, 103, 101, 98, 95, 92, 90, 88, 89, 90, 90, 90, 89, 88, 88, 85, 79, 72, 82 | 64, 55, 46, 42, 38, 34, 30, 31, 32, 28, 21, 17, 17, 22, 25, 27, 30, 38, 49, 59, 83 | 65, 73, 84, 93, 98, 102, 110, }; 84 | -------------------------------------------------------------------------------- /DefenderV8Idle.h: -------------------------------------------------------------------------------- 1 | // idle sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 3216; 5 | 6 | const unsigned char idle_data[] PROGMEM ={118, 7 | 116, 123, 126, 130, 133, 137, 140, 143, 145, 146, 147, 148, 148, 149, 149, 149, 150, 151, 152, 152, 8 | 152, 151, 151, 150, 149, 148, 146, 143, 142, 142, 141, 140, 140, 140, 138, 135, 133, 130, 127, 122, 9 | 120, 118, 116, 112, 109, 108, 105, 101, 98, 96, 94, 91, 88, 88, 88, 88, 86, 85, 84, 85, 10 | 86, 86, 86, 86, 86, 86, 87, 88, 92, 97, 101, 104, 109, 115, 119, 122, 126, 132, 137, 138, 11 | 138, 138, 139, 137, 133, 131, 131, 130, 125, 121, 120, 118, 114, 110, 107, 105, 103, 102, 100, 101, 12 | 104, 107, 107, 108, 112, 116, 116, 116, 118, 121, 123, 124, 126, 130, 135, 138, 139, 140, 144, 146, 13 | 147, 147, 148, 150, 150, 148, 147, 147, 146, 143, 140, 140, 140, 141, 143, 146, 149, 154, 160, 164, 14 | 167, 171, 176, 179, 178, 177, 176, 176, 176, 174, 174, 173, 173, 172, 171, 171, 170, 168, 164, 159, 15 | 156, 154, 152, 149, 147, 145, 144, 142, 140, 140, 140, 141, 142, 142, 143, 144, 147, 149, 150, 151, 16 | 152, 153, 154, 154, 155, 156, 155, 155, 155, 156, 155, 153, 151, 148, 145, 141, 135, 130, 126, 122, 17 | 118, 113, 112, 112, 112, 112, 113, 117, 120, 123, 126, 129, 132, 134, 134, 135, 136, 138, 138, 137, 18 | 136, 136, 136, 134, 133, 131, 129, 127, 126, 123, 120, 117, 115, 111, 108, 103, 99, 93, 88, 83, 19 | 80, 78, 77, 78, 78, 79, 79, 80, 82, 85, 87, 88, 89, 91, 93, 96, 99, 103, 108, 111, 20 | 115, 119, 121, 123, 123, 123, 122, 122, 121, 120, 119, 119, 120, 120, 120, 122, 124, 125, 128, 130, 21 | 132, 133, 135, 136, 137, 137, 138, 138, 138, 137, 137, 136, 136, 136, 136, 136, 136, 137, 137, 136, 22 | 135, 133, 131, 128, 124, 120, 116, 112, 108, 105, 102, 100, 99, 98, 97, 98, 100, 100, 102, 104, 23 | 106, 107, 108, 109, 111, 112, 113, 116, 120, 124, 128, 133, 139, 145, 151, 155, 158, 161, 164, 165, 24 | 164, 163, 165, 166, 164, 163, 165, 164, 161, 158, 157, 154, 148, 143, 138, 133, 127, 122, 117, 112, 25 | 108, 103, 98, 94, 92, 89, 85, 84, 85, 85, 85, 86, 86, 86, 86, 86, 87, 88, 88, 89, 26 | 90, 90, 91, 91, 92, 93, 94, 94, 95, 95, 96, 97, 97, 98, 98, 99, 99, 99, 100, 104, 27 | 112, 119, 125, 131, 139, 147, 153, 158, 164, 169, 173, 177, 182, 184, 183, 182, 181, 180, 180, 179, 28 | 179, 178, 178, 178, 178, 177, 177, 177, 176, 176, 175, 175, 174, 174, 173, 173, 172, 172, 171, 170, 29 | 169, 169, 168, 168, 167, 167, 166, 162, 158, 154, 150, 145, 139, 136, 133, 129, 125, 122, 120, 117, 30 | 112, 109, 107, 105, 104, 104, 105, 106, 107, 108, 110, 112, 113, 114, 116, 118, 119, 120, 123, 125, 31 | 126, 128, 129, 130, 131, 133, 134, 135, 136, 137, 139, 141, 141, 141, 142, 142, 141, 139, 138, 137, 32 | 137, 136, 136, 136, 135, 135, 135, 135, 134, 134, 133, 133, 132, 132, 132, 131, 131, 130, 129, 129, 33 | 129, 129, 129, 128, 129, 130, 129, 129, 130, 130, 130, 129, 130, 130, 129, 128, 127, 125, 124, 122, 34 | 120, 117, 114, 111, 109, 106, 103, 100, 98, 96, 94, 92, 89, 87, 86, 85, 85, 85, 85, 85, 35 | 86, 89, 90, 90, 89, 90, 92, 93, 93, 94, 96, 97, 98, 99, 99, 100, 101, 103, 105, 107, 36 | 108, 111, 113, 115, 115, 116, 118, 119, 120, 122, 124, 127, 129, 133, 137, 140, 143, 147, 150, 153, 37 | 156, 160, 162, 163, 165, 167, 170, 171, 168, 168, 169, 166, 162, 161, 160, 156, 150, 146, 144, 141, 38 | 135, 128, 124, 120, 113, 106, 103, 101, 96, 92, 89, 86, 84, 84, 85, 85, 86, 86, 86, 87, 39 | 87, 88, 88, 88, 89, 89, 90, 90, 91, 92, 93, 93, 94, 95, 96, 97, 97, 98, 99, 99, 40 | 100, 101, 101, 101, 102, 104, 109, 116, 123, 127, 132, 137, 143, 146, 150, 155, 159, 162, 165, 167, 41 | 169, 171, 171, 171, 171, 170, 169, 169, 171, 172, 171, 171, 172, 173, 171, 169, 170, 171, 171, 170, 42 | 171, 171, 170, 169, 168, 166, 163, 160, 158, 156, 155, 154, 154, 154, 152, 150, 149, 148, 146, 143, 43 | 142, 144, 145, 143, 142, 144, 146, 145, 145, 146, 145, 144, 144, 144, 146, 147, 148, 150, 152, 154, 44 | 155, 157, 158, 159, 159, 160, 161, 161, 161, 160, 160, 159, 159, 158, 157, 156, 155, 155, 154, 152, 45 | 150, 148, 145, 142, 138, 134, 132, 129, 126, 124, 121, 118, 115, 113, 112, 110, 107, 104, 102, 100, 46 | 99, 98, 96, 95, 95, 94, 92, 92, 92, 92, 92, 93, 94, 94, 95, 96, 98, 99, 99, 100, 47 | 101, 102, 102, 103, 105, 107, 108, 110, 113, 115, 117, 120, 122, 124, 126, 127, 129, 130, 132, 132, 48 | 132, 132, 131, 130, 128, 127, 125, 124, 123, 120, 117, 115, 112, 109, 105, 102, 98, 96, 93, 91, 49 | 92, 93, 94, 95, 98, 101, 104, 105, 105, 105, 105, 104, 103, 102, 102, 101, 100, 101, 102, 102, 50 | 102, 102, 102, 103, 104, 104, 104, 106, 108, 109, 110, 111, 113, 114, 115, 118, 121, 124, 125, 129, 51 | 136, 139, 140, 144, 149, 150, 149, 153, 154, 154, 156, 158, 158, 156, 157, 162, 162, 158, 159, 163, 52 | 159, 152, 151, 148, 143, 138, 133, 131, 128, 121, 117, 115, 110, 108, 109, 107, 105, 105, 106, 101, 53 | 94, 91, 89, 84, 83, 85, 85, 86, 86, 87, 87, 88, 89, 89, 89, 91, 92, 92, 93, 94, 54 | 95, 95, 96, 97, 98, 98, 98, 98, 99, 99, 99, 100, 100, 101, 105, 111, 116, 119, 122, 128, 55 | 133, 134, 134, 139, 145, 145, 145, 149, 153, 157, 157, 156, 158, 162, 163, 160, 161, 165, 168, 166, 56 | 165, 166, 170, 172, 171, 172, 174, 176, 175, 174, 174, 177, 178, 176, 175, 176, 176, 176, 174, 171, 57 | 171, 172, 168, 161, 160, 161, 158, 153, 151, 151, 152, 152, 149, 149, 151, 152, 152, 154, 156, 156, 58 | 158, 160, 162, 163, 164, 163, 165, 166, 167, 167, 166, 166, 165, 165, 164, 164, 163, 163, 162, 161, 59 | 161, 161, 160, 159, 156, 153, 152, 149, 145, 141, 138, 136, 131, 128, 126, 125, 124, 122, 120, 118, 60 | 117, 118, 118, 118, 118, 120, 122, 124, 124, 124, 123, 121, 118, 116, 114, 112, 110, 108, 107, 107, 61 | 107, 107, 106, 106, 107, 107, 105, 103, 103, 103, 100, 97, 96, 98, 97, 95, 93, 93, 94, 95, 62 | 94, 94, 95, 95, 95, 95, 94, 96, 98, 98, 97, 98, 99, 99, 99, 99, 99, 100, 97, 94, 63 | 92, 91, 89, 85, 83, 83, 84, 84, 84, 84, 85, 86, 86, 86, 87, 87, 87, 87, 87, 88, 64 | 89, 91, 92, 94, 98, 103, 105, 106, 108, 112, 114, 115, 117, 120, 123, 125, 125, 126, 129, 131, 65 | 131, 131, 132, 133, 134, 134, 134, 135, 136, 136, 137, 139, 142, 145, 145, 145, 147, 150, 152, 154, 66 | 156, 158, 160, 161, 160, 160, 161, 159, 156, 153, 151, 148, 144, 140, 137, 136, 134, 130, 127, 125, 67 | 122, 119, 116, 113, 111, 110, 109, 110, 111, 113, 114, 115, 116, 118, 120, 122, 125, 127, 129, 129, 68 | 130, 131, 131, 131, 132, 132, 132, 131, 131, 132, 132, 131, 132, 132, 132, 131, 132, 132, 132, 131, 69 | 130, 131, 131, 131, 131, 133, 134, 135, 136, 139, 141, 143, 145, 146, 147, 148, 149, 150, 150, 149, 70 | 149, 149, 147, 146, 144, 141, 138, 135, 132, 131, 129, 126, 124, 122, 121, 120, 119, 117, 116, 118, 71 | 118, 118, 118, 119, 122, 124, 126, 128, 131, 133, 135, 137, 140, 142, 145, 147, 149, 151, 154, 156, 72 | 157, 159, 160, 161, 161, 161, 163, 163, 163, 163, 163, 164, 163, 163, 162, 162, 162, 161, 161, 161, 73 | 162, 163, 164, 165, 167, 167, 167, 167, 166, 165, 165, 164, 164, 163, 162, 160, 156, 152, 149, 144, 74 | 139, 136, 133, 129, 125, 121, 118, 116, 113, 108, 105, 102, 100, 97, 94, 93, 93, 93, 92, 91, 75 | 92, 93, 93, 92, 93, 94, 94, 94, 95, 96, 97, 98, 98, 98, 99, 100, 100, 101, 102, 103, 76 | 104, 105, 106, 106, 106, 106, 106, 104, 103, 104, 105, 105, 105, 107, 110, 112, 113, 115, 117, 119, 77 | 121, 121, 122, 124, 126, 127, 127, 129, 131, 132, 132, 132, 133, 134, 134, 134, 132, 131, 131, 130, 78 | 128, 125, 122, 120, 117, 114, 112, 111, 107, 104, 102, 101, 99, 97, 94, 93, 93, 92, 91, 92, 79 | 94, 95, 96, 97, 99, 102, 104, 105, 107, 110, 114, 115, 116, 117, 119, 120, 119, 120, 120, 119, 80 | 118, 118, 118, 117, 116, 116, 115, 115, 115, 114, 113, 113, 114, 115, 114, 114, 115, 118, 120, 123, 81 | 126, 132, 137, 141, 145, 150, 155, 160, 166, 170, 174, 178, 177, 175, 175, 175, 172, 169, 167, 163, 82 | 159, 153, 146, 139, 133, 126, 118, 109, 105, 104, 99, 94, 91, 89, 87, 87, 88, 89, 92, 98, 83 | 102, 105, 109, 114, 118, 121, 126, 131, 130, 128, 130, 132, 132, 130, 129, 129, 128, 126, 123, 122, 84 | 121, 118, 115, 113, 113, 114, 116, 118, 120, 123, 126, 130, 135, 140, 144, 150, 158, 166, 172, 179, 85 | 180, 179, 178, 178, 178, 178, 177, 176, 176, 176, 176, 176, 175, 175, 175, 174, 173, 173, 172, 172, 86 | 172, 171, 171, 170, 170, 170, 170, 169, 167, 164, 162, 162, 164, 164, 163, 161, 159, 157, 156, 155, 87 | 153, 149, 145, 141, 138, 135, 133, 132, 131, 131, 129, 126, 124, 122, 120, 119, 117, 115, 113, 113, 88 | 114, 114, 116, 118, 120, 121, 123, 126, 131, 137, 139, 142, 147, 152, 154, 154, 154, 156, 156, 152, 89 | 149, 147, 146, 144, 141, 138, 135, 130, 124, 119, 114, 109, 104, 100, 98, 95, 91, 88, 87, 87, 90 | 85, 84, 84, 84, 84, 86, 87, 88, 88, 88, 88, 88, 87, 86, 84, 82, 79, 77, 76, 76, 91 | 76, 77, 78, 78, 79, 79, 79, 80, 81, 82, 82, 82, 83, 84, 84, 84, 85, 87, 92, 99, 92 | 105, 111, 117, 123, 127, 130, 133, 136, 139, 141, 141, 141, 142, 143, 143, 142, 142, 141, 140, 138, 93 | 136, 135, 133, 130, 128, 126, 124, 122, 120, 118, 116, 115, 114, 113, 112, 113, 114, 116, 117, 119, 94 | 120, 121, 122, 122, 122, 120, 119, 118, 118, 117, 115, 114, 113, 112, 110, 109, 110, 110, 110, 109, 95 | 108, 108, 109, 110, 113, 115, 118, 122, 126, 131, 135, 137, 140, 145, 149, 151, 153, 155, 157, 158, 96 | 158, 158, 158, 156, 154, 153, 153, 151, 149, 149, 148, 145, 142, 142, 142, 140, 137, 135, 134, 131, 97 | 129, 128, 128, 128, 125, 123, 121, 120, 119, 117, 113, 109, 109, 110, 109, 106, 104, 103, 100, 97, 98 | 96, 96, 96, 94, 94, 96, 100, 100, 98, 99, 103, 106, 104, 103, 111, 119, 123, 125, 129, 134, 99 | 137, 138, 141, 145, 148, 149, 151, 153, 156, 159, 163, 163, 163, 162, 165, 166, 166, 169, 174, 179, 100 | 179, 178, 177, 177, 177, 176, 176, 175, 175, 175, 174, 174, 174, 173, 173, 172, 172, 172, 171, 171, 101 | 171, 171, 170, 170, 170, 169, 169, 169, 168, 168, 167, 167, 167, 166, 166, 165, 164, 164, 163, 162, 102 | 160, 160, 160, 159, 158, 157, 157, 157, 156, 155, 155, 154, 154, 153, 153, 152, 151, 146, 142, 140, 103 | 139, 136, 133, 131, 129, 127, 123, 119, 116, 113, 111, 106, 102, 99, 95, 89, 85, 84, 81, 77, 104 | 74, 74, 72, 69, 69, 70, 71, 71, 72, 72, 72, 72, 73, 73, 74, 74, 75, 76, 76, 78, 105 | 82, 84, 83, 81, 81, 84, 85, 86, 87, 89, 93, 95, 96, 97, 101, 104, 105, 106, 110, 114, 106 | 119, 122, 124, 128, 132, 134, 135, 137, 142, 144, 143, 143, 146, 149, 149, 150, 151, 149, 148, 147, 107 | 145, 140, 136, 134, 132, 127, 123, 121, 118, 114, 109, 106, 105, 103, 99, 98, 98, 99, 98, 97, 108 | 100, 101, 99, 97, 99, 101, 101, 98, 97, 100, 102, 103, 102, 100, 98, 97, 95, 95, 94, 94, 109 | 94, 95, 96, 97, 100, 100, 100, 102, 104, 107, 109, 112, 117, 122, 126, 130, 135, 140, 143, 146, 110 | 148, 152, 157, 160, 163, 167, 172, 174, 174, 175, 176, 174, 171, 168, 167, 167, 165, 162, 160, 159, 111 | 157, 154, 151, 148, 146, 142, 138, 136, 136, 136, 134, 133, 133, 133, 133, 132, 131, 129, 129, 129, 112 | 127, 126, 127, 126, 122, 119, 118, 117, 112, 108, 106, 104, 101, 97, 93, 91, 89, 88, 87, 88, 113 | 89, 89, 90, 90, 90, 92, 95, 100, 103, 104, 106, 108, 109, 112, 114, 117, 120, 124, 126, 128, 114 | 132, 135, 136, 136, 138, 139, 141, 143, 145, 146, 146, 147, 148, 146, 143, 142, 142, 142, 143, 144, 115 | 146, 149, 152, 154, 156, 159, 159, 159, 161, 164, 165, 166, 168, 171, 172, 174, 175, 176, 175, 174, 116 | 173, 172, 170, 168, 166, 163, 161, 158, 156, 154, 152, 149, 148, 148, 148, 149, 149, 150, 152, 154, 117 | 155, 156, 158, 158, 159, 160, 163, 164, 165, 167, 168, 167, 166, 165, 165, 164, 163, 163, 162, 162, 118 | 161, 161, 159, 153, 147, 142, 138, 133, 129, 125, 124, 122, 119, 119, 121, 120, 119, 119, 119, 120, 119 | 120, 120, 120, 121, 121, 122, 122, 122, 123, 122, 121, 121, 120, 118, 115, 114, 112, 109, 107, 105, 120 | 104, 102, 99, 98, 97, 97, 96, 96, 96, 97, 98, 99, 100, 101, 102, 104, 105, 106, 107, 108, 121 | 111, 111, 112, 112, 114, 116, 116, 116, 118, 118, 118, 117, 116, 115, 114, 111, 109, 108, 105, 102, 122 | 99, 97, 96, 95, 94, 94, 95, 95, 95, 95, 97, 98, 99, 100, 102, 104, 106, 108, 111, 114, 123 | 116, 119, 121, 122, 122, 123, 123, 121, 120, 120, 120, 120, 120, 120, 121, 122, 123, 124, 125, 127, 124 | 128, 130, 132, 135, 137, 140, 142, 144, 146, 147, 147, 148, 148, 147, 145, 146, 147, 148, 147, 147, 125 | 147, 146, 145, 142, 139, 137, 135, 132, 127, 123, 120, 118, 112, 108, 106, 104, 100, 97, 95, 94, 126 | 94, 93, 95, 99, 101, 102, 105, 108, 109, 108, 108, 109, 108, 106, 105, 105, 104, 102, 99, 99, 127 | 99, 98, 96, 96, 96, 94, 93, 93, 94, 94, 95, 96, 96, 97, 97, 98, 99, 100, 102, 103, 128 | 105, 106, 108, 111, 114, 116, 117, 119, 122, 124, 125, 127, 131, 134, 137, 141, 146, 148, 149, 150, 129 | 151, 152, 152, 151, 152, 153, 154, 154, 155, 158, 160, 162, 165, 168, 171, 173, 176, 178, 179, 180, 130 | 180, 180, 179, 177, 176, 176, 176, 173, 171, 171, 172, 173, 174, 174, 174, 173, 172, 171, 167, 162, 131 | 160, 159, 157, 154, 152, 152, 151, 150, 149, 149, 149, 148, 147, 147, 150, 151, 150, 150, 151, 153, 132 | 153, 154, 157, 160, 162, 163, 163, 163, 162, 162, 161, 161, 160, 160, 159, 159, 158, 158, 158, 157, 133 | 157, 157, 156, 156, 156, 154, 150, 146, 142, 138, 136, 135, 133, 131, 129, 128, 128, 128, 127, 126, 134 | 126, 125, 124, 123, 121, 120, 118, 115, 113, 110, 106, 103, 100, 97, 94, 93, 92, 90, 89, 87, 135 | 85, 82, 80, 77, 76, 76, 77, 78, 78, 78, 79, 79, 79, 79, 80, 80, 80, 83, 86, 89, 136 | 92, 96, 99, 101, 102, 105, 107, 109, 110, 111, 112, 114, 116, 119, 120, 119, 118, 118, 116, 115, 137 | 115, 115, 115, 116, 117, 119, 121, 121, 122, 123, 124, 124, 123, 123, 122, 122, 122, 122, 122, 122, 138 | 122, 122, 122, 123, 123, 123, 123, 122, 120, 118, 116, 113, 110, 107, 105, 103, 102, 102, 102, 104, 139 | 105, 106, 108, 110, 113, 115, 118, 122, 125, 128, 131, 134, 138, 140, 142, 145, 148, 152, 155, 158, 140 | 162, 165, 167, 169, 172, 173, 173, 172, 172, 172, 170, 167, 164, 160, 154, 147, 141, 135, 129, 123, 141 | 117, 113, 107, 102, 99, 96, 92, 89, 86, 85, 85, 84, 82, 82, 83, 83, 84, 84, 85, 86, 142 | 87, 87, 88, 89, 89, 90, 90, 91, 92, 93, 93, 94, 94, 95, 95, 96, 96, 97, 97, 97, 143 | 98, 99, 101, 107, 112, 117, 124, 130, 136, 141, 148, 154, 159, 163, 167, 172, 177, 179, 181, 181, 144 | 181, 180, 180, 180, 179, 179, 179, 178, 176, 174, 171, 170, 168, 167, 166, 165, 165, 165, 165, 166, 145 | 167, 169, 170, 170, 170, 169, 167, 165, 162, 160, 157, 155, 153, 152, 150, 148, 146, 144, 143, 141, 146 | 139, 136, 132, 129, 128, 126, 125, 123, 123, 123, 124, 124, 124, 125, 127, 130, 133, 137, 141, 143, 147 | 146, 150, 152, 153, 154, 155, 155, 156, 156, 153, 150, 148, 146, 142, 138, 135, 132, 129, 127, 125, 148 | 123, 122, 122, 121, 120, 120, 119, 118, 118, 118, 118, 119, 119, 120, 122, 123, 124, 124, 123, 123, 149 | 123, 123, 123, 124, 123, 123, 124, 125, 125, 125, 126, 126, 126, 126, 124, 123, 123, 122, 123, 124, 150 | 125, 127, 128, 130, 132, 133, 135, 135, 136, 135, 134, 134, 132, 130, 127, 124, 120, 117, 113, 108, 151 | 104, 100, 96, 92, 87, 83, 80, 77, 74, 74, 75, 76, 76, 77, 77, 77, 77, 77, 77, 77, 152 | 77, 78, 78, 78, 78, 79, 82, 85, 87, 89, 90, 91, 92, 95, 97, 97, 99, 103, 106, 109, 153 | 112, 114, 116, 119, 123, 126, 128, 130, 134, 137, 140, 143, 146, 150, 154, 157, 159, 163, 167, 171, 154 | 172, 173, 173, 172, 171, 171, 170, 170, 168, 164, 162, 163, 158, 149, 144, 142, 133, 123, 115, 109, 155 | 100, 90, 83, 81, 82, 83, 84, 84, 84, 84, 84, 85, 84, 84, 85, 85, 85, 85, 85, 86, 156 | 86, 86, 87, 88, 89, 89, 90, 91, 92, 92, 93, 94, 95, 96, 97, 98, 98, 99, 100, 101, 157 | 101, 102, 103, 107, 114, 121, 125, 131, 138, 146, 151, 156, 162, 168, 171, 173, 177, 180, 181, 181, 158 | 182, 183, 182, 182, 181, 181, 180, 179, 178, 176, 174, 170, 167, 165, 165, 164, 162, 162, 163, 162, 159 | 160, 159, 157, 154, 151, 150, 149, 146, 144, 143, 144, 144, 144, 145, 146, 148, 149, 151, 154, 155, 160 | 155, 157, 159, 159, 158, 157, 158, 158, 155, 152, 153, 153, 151, 147, 146, 149, 150, 149, 149, 151, 161 | 153, 154, 154, 155, 156, 157, 158, 157, 157, 157, 157, 156, 156, 156, 157, 156, 154, 152, 150, 147, 162 | 144, 141, 139, 136, 133, 130, 128, 126, 123, 120, 118, 116, 113, 107, 102, 99, 97, 94, 92, 90, 163 | 90, 90, 89, 89, 91, 92, 91, 91, 93, 95, 96, 95, 95, 98, 100, 100, 99, 101, 105, 107, 164 | 107, 109, 110, 111, 111, 112, 112, 113, 115, 116, 117, 119, 121, 123, 124, 123, 124, 126, 126, 125, 165 | 125, 126, 127, 125, 123, 123, 123, 121, 117, 115, 113, 109, 105, 102, 101, 99, 96, 95, 95, 96, 166 | 97, 97, 98, 99, 99, 99, 99, 99, 97, 96, 96, 96, 95, 96, 98, 99, 100, 101, 103, 103, 167 | 103, 103, 104, 104, 105, 106, 108, 110, 111, 113, 117, 120, 122, 124, 127, }; 168 | -------------------------------------------------------------------------------- /DefenderV8Start.h: -------------------------------------------------------------------------------- 1 | // start sound made by wav2c 2 | 3 | // const int start_sampleRate = 16000; 4 | const int start_length = 6416; 5 | 6 | const unsigned char start_data[] PROGMEM ={128, 7 | 130, 123, 117, 124, 136, 136, 129, 123, 117, 113, 110, 101, 91, 99, 118, 124, 117, 109, 121, 137, 8 | 126, 106, 103, 110, 111, 124, 131, 120, 129, 151, 158, 158, 142, 122, 115, 115, 114, 119, 119, 111, 9 | 122, 131, 129, 128, 115, 113, 135, 141, 128, 121, 125, 128, 135, 141, 139, 141, 143, 141, 142, 151, 10 | 161, 158, 142, 140, 154, 159, 136, 124, 151, 160, 122, 106, 156, 180, 156, 171, 208, 221, 212, 176, 11 | 123, 81, 69, 72, 95, 146, 171, 186, 199, 143, 63, 100, 199, 182, 107, 128, 142, 41, 0, 74, 12 | 168, 193, 171, 120, 100, 134, 187, 243, 255, 187, 46, 0, 21, 31, 44, 133, 241, 255, 241, 240, 13 | 246, 192, 43, 0, 14, 112, 200, 118, 0, 100, 255, 255, 189, 18, 0, 89, 196, 78, 0, 76, 14 | 193, 250, 228, 160, 204, 163, 0, 2, 124, 147, 58, 68, 169, 252, 255, 177, 13, 0, 43, 75, 15 | 26, 43, 206, 255, 158, 103, 197, 215, 51, 0, 39, 208, 255, 176, 90, 152, 255, 223, 135, 78, 16 | 29, 0, 19, 170, 255, 231, 64, 43, 218, 248, 108, 22, 28, 68, 130, 183, 204, 168, 86, 45, 17 | 143, 229, 194, 116, 66, 88, 122, 137, 163, 213, 174, 43, 0, 31, 144, 165, 121, 145, 217, 174, 18 | 45, 16, 76, 155, 207, 201, 180, 182, 157, 91, 55, 92, 87, 16, 13, 127, 225, 196, 106, 98, 19 | 181, 217, 135, 64, 108, 179, 184, 113, 94, 171, 215, 121, 0, 0, 110, 184, 120, 73, 98, 168, 20 | 231, 210, 125, 77, 99, 157, 180, 112, 42, 71, 139, 169, 198, 194, 124, 68, 78, 118, 155, 172, 21 | 129, 58, 65, 175, 255, 210, 81, 50, 122, 161, 104, 56, 93, 150, 163, 148, 146, 138, 101, 67, 22 | 74, 123, 161, 159, 150, 152, 170, 179, 142, 91, 81, 111, 130, 138, 157, 178, 192, 172, 114, 71, 23 | 89, 138, 136, 108, 130, 159, 137, 104, 105, 117, 121, 118, 115, 137, 170, 174, 141, 108, 106, 126, 24 | 127, 107, 97, 120, 173, 201, 171, 113, 83, 98, 125, 114, 83, 108, 169, 172, 123, 109, 132, 136, 25 | 118, 124, 145, 149, 139, 127, 120, 113, 110, 114, 119, 117, 123, 147, 174, 168, 103, 68, 120, 181, 26 | 176, 116, 74, 117, 199, 202, 139, 115, 138, 146, 119, 116, 155, 163, 126, 101, 116, 150, 161, 143, 27 | 118, 105, 107, 128, 162, 171, 143, 133, 161, 173, 138, 103, 111, 121, 121, 123, 126, 138, 144, 129, 28 | 102, 88, 99, 108, 103, 112, 118, 107, 111, 132, 141, 131, 110, 107, 126, 131, 99, 78, 94, 112, 29 | 115, 123, 132, 125, 114, 115, 133, 154, 156, 125, 90, 97, 127, 135, 114, 86, 92, 141, 167, 135, 30 | 99, 120, 148, 131, 110, 122, 159, 158, 109, 81, 125, 174, 147, 85, 78, 120, 143, 136, 145, 162, 31 | 149, 132, 135, 141, 132, 106, 84, 96, 126, 142, 151, 159, 144, 131, 135, 135, 119, 101, 96, 111, 32 | 123, 116, 116, 124, 132, 148, 157, 147, 139, 130, 124, 136, 146, 132, 128, 146, 152, 129, 86, 63, 33 | 97, 139, 126, 108, 143, 179, 160, 127, 121, 136, 133, 101, 82, 96, 111, 108, 100, 101, 120, 145, 34 | 149, 131, 120, 128, 134, 130, 119, 116, 125, 142, 158, 137, 92, 84, 122, 149, 137, 117, 110, 118, 35 | 127, 143, 172, 188, 156, 117, 119, 142, 147, 138, 132, 127, 127, 139, 158, 158, 133, 105, 104, 131, 36 | 151, 140, 126, 135, 157, 175, 172, 161, 145, 121, 107, 111, 115, 119, 133, 154, 159, 132, 103, 103, 37 | 119, 119, 102, 101, 126, 152, 157, 140, 130, 142, 145, 117, 92, 106, 122, 106, 89, 101, 131, 143, 38 | 125, 112, 130, 144, 135, 136, 151, 165, 169, 160, 131, 101, 93, 97, 107, 125, 131, 128, 146, 171, 39 | 167, 141, 117, 107, 111, 111, 98, 96, 125, 144, 138, 139, 149, 144, 130, 135, 145, 143, 141, 140, 40 | 133, 135, 140, 134, 114, 105, 122, 149, 162, 153, 137, 126, 123, 134, 136, 110, 87, 99, 120, 113, 41 | 107, 116, 125, 128, 130, 132, 130, 127, 122, 111, 104, 108, 115, 114, 104, 103, 111, 124, 136, 145, 42 | 156, 160, 151, 135, 125, 125, 122, 115, 114, 118, 124, 133, 137, 136, 141, 145, 144, 141, 134, 130, 43 | 137, 139, 133, 133, 133, 127, 128, 127, 118, 117, 128, 137, 136, 130, 131, 140, 134, 103, 82, 98, 44 | 125, 129, 117, 119, 141, 157, 152, 137, 128, 126, 130, 133, 134, 135, 128, 117, 121, 139, 140, 123, 45 | 111, 110, 110, 103, 98, 107, 121, 128, 129, 132, 138, 142, 137, 124, 120, 130, 130, 116, 109, 115, 46 | 126, 130, 125, 129, 145, 152, 143, 131, 131, 135, 134, 129, 123, 124, 128, 130, 130, 133, 140, 137, 47 | 118, 104, 102, 104, 107, 112, 117, 123, 126, 125, 118, 113, 112, 109, 104, 101, 106, 115, 117, 115, 48 | 117, 119, 118, 119, 115, 107, 104, 112, 127, 136, 130, 120, 122, 133, 141, 137, 126, 120, 126, 126, 49 | 115, 112, 123, 131, 133, 137, 143, 147, 149, 145, 139, 134, 132, 135, 140, 137, 131, 130, 141, 152, 50 | 149, 139, 131, 124, 114, 107, 108, 123, 142, 143, 134, 133, 140, 141, 133, 129, 134, 133, 122, 117, 51 | 128, 140, 136, 126, 128, 141, 151, 145, 134, 131, 133, 130, 125, 125, 127, 125, 120, 121, 132, 143, 52 | 142, 135, 132, 134, 136, 134, 130, 128, 134, 142, 145, 137, 128, 130, 137, 139, 132, 121, 115, 114, 53 | 112, 112, 115, 118, 118, 118, 122, 129, 126, 119, 120, 125, 125, 121, 115, 112, 116, 113, 109, 117, 54 | 127, 123, 111, 109, 118, 125, 128, 127, 133, 144, 152, 147, 137, 132, 133, 146, 158, 156, 143, 137, 55 | 144, 152, 144, 126, 115, 113, 116, 120, 122, 127, 132, 132, 125, 120, 122, 128, 132, 131, 128, 128, 56 | 129, 125, 118, 111, 106, 104, 103, 101, 102, 111, 123, 133, 135, 135, 137, 139, 135, 130, 127, 127, 57 | 128, 131, 131, 129, 129, 127, 123, 121, 118, 111, 108, 113, 119, 120, 119, 120, 123, 130, 137, 136, 58 | 124, 114, 116, 120, 120, 119, 118, 122, 131, 140, 147, 147, 138, 128, 128, 130, 128, 124, 123, 126, 59 | 134, 143, 146, 143, 142, 141, 140, 143, 141, 133, 131, 136, 139, 138, 135, 133, 137, 142, 140, 133, 60 | 130, 130, 133, 137, 142, 148, 154, 155, 149, 141, 137, 132, 125, 121, 121, 124, 128, 130, 133, 138, 61 | 142, 133, 120, 114, 113, 112, 109, 109, 114, 124, 132, 136, 133, 131, 132, 129, 122, 114, 109, 113, 62 | 118, 115, 119, 128, 135, 136, 132, 129, 131, 134, 130, 124, 125, 133, 139, 136, 126, 121, 127, 134, 63 | 135, 131, 124, 120, 123, 126, 122, 115, 116, 123, 128, 127, 123, 122, 125, 127, 125, 125, 128, 132, 64 | 133, 131, 129, 128, 126, 127, 128, 128, 126, 121, 117, 119, 126, 131, 130, 126, 121, 118, 115, 111, 65 | 111, 115, 121, 128, 130, 126, 122, 127, 129, 121, 112, 109, 105, 102, 105, 112, 118, 123, 125, 126, 66 | 128, 126, 120, 119, 123, 123, 124, 129, 132, 129, 126, 128, 134, 139, 138, 131, 130, 142, 153, 152, 67 | 147, 146, 150, 155, 155, 148, 140, 137, 139, 144, 144, 136, 129, 135, 144, 140, 130, 124, 127, 132, 68 | 135, 139, 142, 138, 130, 124, 125, 123, 114, 107, 106, 109, 113, 114, 112, 115, 118, 115, 114, 117, 69 | 116, 109, 105, 108, 113, 116, 115, 114, 114, 117, 119, 124, 130, 134, 132, 132, 129, 120, 113, 110, 70 | 114, 122, 126, 124, 122, 126, 127, 120, 111, 110, 117, 124, 126, 128, 137, 151, 164, 170, 167, 159, 71 | 152, 148, 151, 156, 155, 147, 141, 143, 144, 138, 132, 131, 134, 137, 141, 141, 136, 127, 125, 126, 72 | 123, 119, 119, 121, 122, 125, 133, 137, 133, 126, 126, 135, 141, 134, 119, 110, 113, 122, 126, 123, 73 | 118, 115, 116, 122, 126, 127, 126, 129, 133, 133, 125, 114, 108, 109, 109, 109, 113, 121, 128, 130, 74 | 130, 133, 141, 145, 137, 126, 123, 124, 120, 113, 112, 118, 124, 129, 136, 144, 148, 148, 143, 136, 75 | 133, 132, 130, 121, 112, 115, 133, 150, 156, 155, 151, 145, 137, 127, 120, 118, 117, 115, 114, 121, 76 | 130, 132, 128, 127, 132, 137, 135, 131, 129, 128, 126, 126, 131, 132, 124, 114, 112, 117, 121, 121, 77 | 120, 125, 132, 133, 132, 131, 126, 118, 118, 121, 119, 113, 110, 117, 127, 132, 130, 132, 135, 137, 78 | 138, 139, 136, 130, 128, 131, 133, 131, 127, 117, 109, 109, 112, 114, 118, 124, 133, 140, 143, 143, 79 | 146, 144, 139, 138, 141, 144, 143, 141, 137, 135, 139, 142, 138, 130, 123, 118, 119, 124, 123, 117, 80 | 113, 114, 114, 115, 119, 119, 118, 121, 125, 124, 120, 117, 119, 118, 112, 110, 117, 127, 131, 126, 81 | 120, 119, 123, 129, 129, 120, 111, 109, 117, 125, 125, 117, 111, 120, 133, 137, 134, 130, 128, 126, 82 | 123, 122, 120, 118, 121, 125, 128, 124, 117, 115, 118, 125, 129, 125, 118, 121, 132, 133, 125, 124, 83 | 133, 142, 139, 129, 123, 122, 125, 125, 120, 119, 123, 128, 131, 134, 138, 142, 146, 148, 144, 138, 84 | 133, 131, 125, 116, 115, 122, 127, 126, 123, 124, 130, 134, 136, 136, 139, 145, 144, 142, 141, 135, 85 | 125, 118, 120, 124, 124, 121, 118, 119, 119, 123, 128, 132, 131, 126, 124, 123, 119, 114, 112, 112, 86 | 117, 124, 130, 135, 142, 147, 147, 140, 136, 137, 139, 136, 126, 114, 109, 114, 122, 127, 134, 145, 87 | 151, 151, 149, 143, 135, 125, 116, 112, 112, 117, 125, 133, 140, 147, 151, 150, 148, 145, 135, 117, 88 | 101, 90, 81, 78, 85, 98, 110, 120, 134, 150, 157, 151, 142, 137, 132, 126, 119, 114, 114, 117, 89 | 118, 122, 133, 136, 128, 122, 122, 124, 125, 124, 121, 120, 118, 120, 126, 130, 131, 130, 132, 137, 90 | 141, 139, 135, 132, 130, 135, 140, 138, 131, 126, 123, 129, 133, 131, 130, 134, 135, 130, 121, 112, 91 | 110, 114, 116, 114, 112, 116, 128, 141, 150, 153, 148, 144, 146, 146, 140, 128, 123, 122, 117, 111, 92 | 110, 117, 127, 135, 142, 145, 141, 135, 133, 135, 137, 135, 126, 115, 114, 120, 128, 134, 136, 131, 93 | 124, 121, 121, 120, 110, 100, 96, 100, 111, 122, 126, 121, 126, 142, 148, 137, 123, 118, 114, 110, 94 | 105, 95, 85, 85, 101, 123, 135, 136, 135, 141, 141, 130, 120, 120, 123, 123, 118, 115, 116, 125, 95 | 135, 143, 149, 151, 157, 163, 162, 153, 142, 135, 130, 122, 112, 111, 119, 130, 135, 140, 144, 145, 96 | 149, 153, 153, 142, 124, 106, 92, 87, 90, 98, 110, 122, 128, 129, 134, 147, 155, 139, 112, 102, 97 | 109, 114, 109, 108, 115, 122, 122, 119, 125, 135, 137, 133, 126, 123, 125, 129, 125, 116, 117, 129, 98 | 141, 143, 141, 139, 141, 144, 145, 138, 128, 124, 124, 128, 135, 138, 134, 131, 133, 127, 117, 112, 99 | 110, 111, 119, 128, 138, 147, 144, 131, 127, 129, 125, 118, 122, 131, 137, 142, 141, 137, 134, 133, 100 | 136, 142, 142, 127, 115, 118, 121, 119, 118, 123, 131, 136, 138, 139, 139, 133, 123, 114, 115, 113, 101 | 108, 113, 125, 127, 118, 116, 127, 149, 164, 162, 147, 132, 126, 124, 120, 117, 116, 114, 116, 121, 102 | 122, 119, 118, 121, 126, 132, 133, 136, 141, 138, 131, 138, 147, 149, 148, 148, 142, 132, 129, 127, 103 | 119, 106, 94, 92, 103, 118, 133, 142, 147, 151, 153, 156, 156, 153, 141, 124, 122, 136, 145, 139, 104 | 138, 144, 143, 128, 109, 102, 106, 110, 111, 114, 118, 116, 111, 114, 121, 122, 125, 134, 141, 140, 105 | 133, 127, 128, 132, 130, 127, 121, 116, 118, 129, 130, 115, 108, 122, 143, 140, 118, 106, 115, 126, 106 | 119, 110, 122, 147, 160, 147, 132, 133, 144, 154, 149, 142, 146, 147, 138, 133, 133, 130, 128, 124, 107 | 113, 108, 117, 129, 132, 127, 125, 133, 148, 160, 166, 165, 149, 129, 131, 146, 137, 110, 102, 116, 108 | 125, 119, 115, 125, 144, 155, 147, 135, 136, 135, 122, 107, 106, 118, 135, 144, 140, 130, 119, 120, 109 | 129, 130, 115, 97, 92, 106, 125, 132, 126, 126, 142, 160, 165, 160, 150, 135, 119, 104, 88, 78, 110 | 83, 101, 114, 118, 128, 143, 151, 145, 125, 111, 113, 116, 114, 115, 125, 137, 139, 131, 131, 133, 111 | 118, 98, 95, 109, 108, 99, 117, 148, 157, 146, 141, 152, 160, 152, 133, 124, 130, 139, 141, 142, 112 | 145, 139, 127, 121, 116, 111, 111, 109, 108, 113, 118, 119, 120, 126, 129, 127, 121, 121, 129, 133, 113 | 129, 132, 142, 141, 133, 132, 131, 128, 126, 111, 89, 88, 110, 126, 127, 126, 131, 149, 169, 170, 114 | 148, 128, 127, 131, 128, 128, 134, 140, 143, 146, 147, 144, 143, 133, 107, 88, 87, 93, 101, 115, 115 | 126, 134, 140, 142, 149, 145, 122, 109, 124, 138, 133, 126, 131, 145, 157, 152, 136, 131, 126, 103, 116 | 83, 87, 93, 96, 110, 125, 134, 146, 161, 159, 130, 108, 109, 119, 127, 127, 120, 115, 117, 123, 117 | 121, 110, 100, 102, 119, 130, 112, 86, 84, 104, 122, 124, 128, 143, 149, 142, 134, 133, 134, 126, 118 | 115, 116, 122, 117, 101, 99, 118, 134, 133, 130, 133, 133, 128, 131, 138, 137, 135, 132, 118, 110, 119 | 118, 126, 125, 124, 129, 134, 142, 150, 147, 137, 138, 145, 151, 160, 167, 170, 167, 148, 127, 121, 120 | 124, 116, 102, 99, 102, 107, 123, 150, 163, 152, 137, 135, 140, 129, 105, 87, 96, 121, 133, 133, 121 | 131, 129, 128, 131, 130, 121, 117, 121, 120, 112, 114, 136, 145, 133, 131, 143, 142, 126, 121, 132, 122 | 138, 134, 131, 138, 144, 132, 114, 105, 109, 118, 121, 115, 118, 132, 143, 141, 128, 110, 107, 105, 123 | 85, 69, 81, 92, 90, 99, 128, 159, 167, 159, 147, 133, 122, 120, 122, 114, 106, 107, 116, 140, 124 | 159, 157, 151, 152, 146, 133, 127, 120, 104, 97, 113, 138, 151, 147, 137, 133, 133, 128, 128, 128, 125 | 123, 117, 114, 118, 123, 119, 108, 109, 123, 131, 130, 137, 150, 156, 149, 147, 153, 155, 142, 124, 126 | 119, 126, 132, 137, 133, 122, 116, 126, 145, 151, 139, 126, 126, 136, 138, 131, 128, 126, 122, 120, 127 | 118, 117, 115, 107, 100, 114, 137, 145, 134, 122, 129, 148, 159, 150, 125, 108, 105, 102, 99, 101, 128 | 109, 120, 135, 148, 149, 143, 134, 125, 130, 147, 155, 143, 122, 120, 132, 140, 135, 124, 116, 107, 129 | 103, 109, 124, 127, 110, 98, 107, 120, 120, 113, 117, 139, 156, 149, 136, 138, 148, 151, 144, 133, 130 | 125, 129, 135, 134, 133, 133, 123, 107, 105, 118, 126, 122, 125, 143, 159, 160, 147, 137, 143, 146, 131 | 138, 128, 115, 102, 102, 119, 126, 124, 125, 119, 111, 111, 118, 121, 118, 109, 112, 135, 159, 163, 132 | 143, 125, 132, 150, 148, 126, 113, 121, 129, 130, 133, 140, 141, 135, 126, 119, 115, 105, 93, 97, 133 | 118, 138, 139, 130, 132, 140, 144, 137, 125, 123, 128, 124, 116, 120, 124, 112, 97, 97, 113, 123, 134 | 121, 116, 115, 119, 130, 138, 135, 123, 123, 146, 163, 149, 122, 105, 107, 121, 127, 125, 112, 92, 135 | 88, 107, 120, 107, 90, 100, 130, 153, 167, 168, 154, 138, 137, 141, 142, 134, 121, 119, 133, 151, 136 | 148, 125, 111, 121, 136, 135, 126, 120, 125, 134, 135, 137, 147, 154, 146, 133, 131, 140, 151, 147, 137 | 133, 132, 148, 157, 131, 94, 92, 116, 122, 107, 103, 119, 132, 130, 127, 131, 140, 149, 157, 158, 138 | 162, 165, 150, 126, 118, 130, 139, 132, 118, 116, 128, 137, 135, 129, 135, 147, 142, 124, 128, 155, 139 | 167, 157, 147, 142, 147, 148, 136, 123, 120, 117, 104, 96, 111, 135, 141, 128, 118, 123, 132, 120, 140 | 100, 105, 129, 141, 133, 126, 129, 132, 123, 113, 120, 128, 113, 93, 98, 114, 112, 94, 79, 89, 141 | 118, 134, 125, 130, 153, 158, 146, 133, 125, 118, 106, 93, 92, 105, 112, 100, 96, 122, 152, 150, 142 | 130, 131, 157, 165, 136, 103, 105, 129, 135, 124, 116, 126, 141, 141, 135, 137, 139, 124, 102, 95, 143 | 102, 105, 101, 110, 131, 152, 161, 153, 143, 135, 120, 119, 132, 131, 125, 132, 144, 150, 136, 111, 144 | 103, 99, 91, 85, 90, 108, 131, 145, 141, 133, 139, 154, 158, 149, 136, 123, 118, 121, 126, 127, 145 | 113, 104, 113, 125, 120, 103, 104, 123, 138, 138, 133, 132, 136, 144, 148, 139, 128, 131, 141, 141, 146 | 128, 107, 92, 91, 100, 107, 113, 120, 124, 129, 142, 149, 142, 130, 117, 109, 107, 114, 133, 152, 147 | 161, 167, 165, 154, 151, 149, 134, 122, 128, 140, 133, 114, 109, 118, 134, 149, 150, 146, 150, 144, 148 | 119, 102, 105, 109, 118, 136, 147, 142, 132, 127, 133, 142, 128, 111, 117, 126, 131, 126, 109, 112, 149 | 151, 180, 176, 166, 156, 140, 126, 112, 90, 83, 101, 126, 143, 151, 148, 144, 154, 150, 124, 107, 150 | 99, 105, 136, 163, 162, 142, 139, 156, 151, 117, 85, 88, 120, 132, 105, 87, 109, 122, 104, 93, 151 | 114, 139, 131, 108, 118, 153, 165, 155, 150, 140, 126, 122, 127, 118, 101, 95, 104, 126, 127, 109, 152 | 118, 148, 154, 141, 125, 114, 120, 137, 141, 138, 137, 136, 143, 146, 128, 107, 107, 125, 127, 104, 153 | 78, 79, 115, 143, 126, 92, 81, 98, 118, 130, 141, 160, 175, 168, 152, 140, 128, 117, 119, 140, 154 | 148, 131, 108, 86, 75, 93, 111, 102, 91, 95, 107, 119, 130, 131, 134, 146, 154, 144, 136, 145, 155 | 146, 127, 105, 106, 134, 140, 107, 93, 118, 132, 114, 99, 101, 108, 123, 143, 162, 169, 155, 140, 156 | 152, 176, 178, 160, 146, 141, 121, 89, 79, 98, 118, 121, 125, 132, 131, 126, 141, 161, 143, 119, 157 | 133, 156, 147, 132, 139, 151, 151, 137, 117, 101, 94, 90, 99, 119, 124, 112, 99, 106, 138, 162, 158 | 152, 136, 135, 126, 102, 82, 94, 115, 107, 91, 105, 138, 151, 131, 110, 117, 145, 151, 132, 128, 159 | 149, 166, 170, 168, 156, 144, 141, 136, 119, 100, 90, 95, 115, 135, 141, 152, 169, 163, 143, 137, 160 | 141, 129, 111, 119, 147, 169, 172, 157, 142, 150, 155, 139, 122, 112, 96, 89, 99, 105, 105, 103, 161 | 105, 128, 161, 171, 162, 154, 142, 129, 129, 120, 101, 95, 108, 120, 121, 128, 137, 137, 140, 145, 162 | 142, 125, 110, 110, 119, 132, 133, 111, 94, 109, 131, 124, 99, 88, 99, 112, 106, 96, 107, 129, 163 | 142, 143, 138, 139, 144, 134, 125, 147, 170, 150, 116, 113, 120, 112, 103, 103, 106, 109, 116, 133, 164 | 157, 177, 177, 165, 157, 144, 128, 116, 117, 131, 146, 153, 145, 134, 126, 115, 99, 88, 87, 101, 165 | 113, 107, 108, 140, 164, 141, 117, 116, 124, 126, 125, 134, 153, 156, 130, 103, 102, 111, 106, 94, 166 | 86, 95, 114, 128, 122, 120, 136, 148, 149, 154, 164, 159, 141, 125, 116, 126, 145, 135, 106, 102, 167 | 124, 137, 130, 133, 147, 146, 128, 117, 124, 138, 140, 141, 149, 147, 130, 116, 116, 117, 112, 101, 168 | 93, 97, 105, 117, 136, 159, 172, 174, 175, 164, 130, 106, 102, 108, 105, 88, 81, 99, 122, 117, 169 | 111, 131, 161, 159, 130, 124, 145, 166, 159, 137, 131, 135, 127, 102, 90, 95, 97, 88, 84, 103, 170 | 133, 141, 127, 129, 156, 155, 119, 108, 134, 159, 159, 144, 131, 120, 103, 91, 108, 132, 128, 112, 171 | 106, 121, 138, 144, 143, 145, 155, 150, 138, 128, 132, 144, 153, 160, 148, 117, 104, 114, 124, 123, 172 | 118, 119, 124, 133, 134, 133, 128, 105, 94, 116, 134, 124, 119, 128, 135, 141, 139, 124, 111, 109, 173 | 109, 111, 122, 136, 139, 135, 138, 148, 155, 144, 122, 110, 120, 138, 139, 122, 107, 117, 135, 131, 174 | 116, 117, 134, 140, 131, 139, 157, 137, 97, 87, 104, 124, 128, 122, 130, 149, 150, 127, 120, 143, 175 | 147, 119, 95, 98, 122, 135, 128, 131, 149, 158, 148, 134, 126, 116, 107, 105, 115, 128, 134, 127, 176 | 124, 135, 136, 123, 129, 154, 166, 161, 140, 121, 122, 130, 137, 147, 153, 150, 145, 144, 132, 110, 177 | 104, 108, 105, 97, 100, 111, 124, 139, 154, 166, 166, 162, 165, 166, 151, 129, 116, 114, 105, 87, 178 | 84, 95, 101, 97, 99, 125, 152, 156, 142, 138, 155, 163, 156, 149, 144, 138, 133, 134, 135, 129, 179 | 113, 98, 97, 112, 123, 109, 95, 115, 143, 139, 125, 129, 136, 126, 114, 130, 161, 169, 148, 129, 180 | 121, 102, 86, 83, 79, 75, 83, 103, 134, 150, 138, 123, 134, 154, 155, 147, 144, 140, 141, 150, 181 | 147, 146, 148, 130, 101, 93, 111, 125, 129, 134, 141, 140, 152, 167, 150, 117, 92, 87, 101, 115, 182 | 120, 124, 130, 139, 155, 162, 153, 136, 123, 115, 114, 123, 125, 107, 101, 110, 110, 106, 100, 92, 183 | 102, 131, 150, 147, 139, 142, 164, 175, 157, 145, 156, 164, 148, 137, 135, 124, 104, 78, 62, 79, 184 | 99, 82, 67, 94, 135, 137, 124, 145, 182, 188, 150, 122, 142, 164, 142, 105, 98, 118, 132, 126, 185 | 101, 91, 117, 133, 127, 131, 140, 127, 109, 115, 136, 148, 128, 99, 117, 163, 172, 144, 121, 119, 186 | 134, 152, 144, 119, 125, 137, 130, 133, 140, 121, 86, 74, 92, 116, 111, 88, 96, 128, 141, 130, 187 | 113, 112, 126, 130, 118, 107, 124, 153, 152, 143, 145, 135, 110, 91, 88, 99, 109, 112, 117, 128, 188 | 145, 164, 168, 156, 144, 142, 142, 129, 111, 118, 147, 165, 156, 144, 147, 160, 166, 149, 139, 158, 189 | 165, 130, 91, 93, 114, 115, 103, 115, 135, 128, 107, 108, 127, 133, 126, 117, 133, 167, 167, 127, 190 | 97, 101, 118, 115, 95, 89, 97, 98, 97, 112, 135, 138, 121, 116, 131, 140, 135, 127, 133, 145, 191 | 146, 147, 150, 161, 164, 140, 105, 90, 93, 102, 120, 134, 138, 144, 146, 148, 151, 153, 167, 177, 192 | 161, 129, 117, 120, 106, 93, 104, 115, 105, 93, 99, 125, 156, 150, 127, 140, 156, 153, 149, 142, 193 | 140, 161, 171, 144, 115, 110, 108, 104, 111, 123, 114, 96, 102, 118, 134, 136, 124, 125, 132, 127, 194 | 120, 126, 140, 160, 172, 157, 130, 117, 116, 109, 95, 85, 83, 97, 116, 126, 143, 164, 158, 138, 195 | 126, 119, 120, 127, 134, 145, 157, 157, 157, 157, 151, 143, 136, 131, 117, 102, 87, 73, 81, 101, 196 | 109, 111, 117, 119, 127, 147, 158, 164, 169, 167, 164, 156, 141, 131, 126, 121, 109, 100, 92, 71, 197 | 50, 56, 87, 114, 124, 115, 109, 133, 164, 164, 149, 154, 167, 168, 155, 136, 128, 124, 116, 113, 198 | 109, 95, 88, 106, 131, 134, 123, 112, 112, 138, 169, 174, 163, 160, 162, 156, 142, 134, 131, 116, 199 | 94, 97, 113, 118, 115, 123, 138, 144, 136, 120, 115, 125, 137, 130, 119, 126, 144, 148, 128, 109, 200 | 113, 130, 132, 120, 119, 134, 145, 146, 143, 141, 139, 130, 115, 97, 92, 106, 116, 114, 109, 119, 201 | 138, 152, 145, 132, 119, 106, 109, 113, 105, 96, 96, 112, 136, 150, 144, 130, 123, 129, 136, 127, 202 | 115, 122, 134, 131, 120, 111, 108, 115, 133, 149, 153, 141, 125, 119, 116, 111, 106, 96, 90, 101, 203 | 125, 145, 155, 160, 174, 181, 165, 137, 120, 118, 109, 93, 89, 93, 97, 94, 88, 101, 126, 135, 204 | 128, 131, 149, 157, 152, 142, 143, 148, 139, 114, 98, 108, 117, 108, 108, 129, 133, 121, 120, 130, 205 | 128, 113, 104, 109, 121, 127, 127, 132, 151, 174, 177, 162, 140, 125, 123, 124, 111, 94, 102, 131, 206 | 145, 145, 156, 163, 152, 142, 150, 149, 130, 113, 108, 108, 107, 106, 102, 114, 145, 166, 162, 150, 207 | 148, 146, 137, 122, 121, 133, 131, 114, 120, 143, 140, 124, 130, 144, 143, 127, 118, 120, 129, 131, 208 | 126, 131, 138, 139, 144, 159, 163, 157, 160, 163, 161, 154, 146, 151, 153, 136, 125, 134, 144, 132, 209 | 113, 110, 114, 107, 100, 111, 137, 143, 124, 114, 136, 163, 165, 160, 150, 140, 135, 122, 103, 93, 210 | 92, 96, 105, 108, 97, 90, 99, 121, 150, 160, 138, 117, 120, 122, 122, 124, 122, 122, 135, 145, 211 | 140, 134, 133, 131, 127, 120, 110, 103, 108, 115, 114, 117, 129, 135, 123, 101, 102, 120, 128, 115, 212 | 113, 132, 138, 125, 119, 125, 128, 125, 141, 164, 160, 135, 123, 131, 138, 118, 85, 66, 75, 97, 213 | 111, 116, 117, 122, 142, 151, 139, 129, 132, 137, 136, 138, 132, 111, 98, 104, 110, 110, 106, 92, 214 | 82, 97, 115, 114, 116, 131, 149, 159, 157, 161, 159, 134, 105, 107, 125, 122, 103, 95, 103, 116, 215 | 116, 98, 87, 110, 146, 160, 157, 144, 143, 152, 150, 127, 99, 88, 94, 102, 103, 104, 112, 125, 216 | 137, 150, 153, 149, 152, 168, 178, 167, 150, 145, 150, 148, 126, 100, 95, 114, 134, 136, 137, 138, 217 | 139, 136, 127, 129, 139, 137, 134, 144, 159, 169, 162, 139, 122, 127, 136, 127, 109, 108, 126, 147, 218 | 152, 137, 119, 113, 100, 89, 105, 122, 117, 107, 122, 161, 181, 154, 108, 101, 133, 143, 115, 95, 219 | 107, 123, 122, 123, 140, 151, 131, 109, 122, 149, 143, 114, 98, 107, 121, 125, 122, 126, 138, 146, 220 | 145, 143, 146, 138, 117, 99, 97, 100, 102, 98, 94, 112, 149, 166, 144, 124, 138, 160, 154, 127, 221 | 117, 127, 127, 115, 109, 110, 107, 99, 109, 138, 151, 138, 118, 123, 146, 152, 136, 124, 135, 151, 222 | 146, 136, 135, 127, 111, 95, 88, 100, 116, 119, 126, 150, 171, 181, 180, 154, 133, 145, 161, 160, 223 | 137, 105, 93, 108, 119, 111, 107, 122, 134, 137, 140, 139, 138, 141, 146, 151, 152, 142, 138, 149, 224 | 147, 121, 105, 116, 135, 146, 146, 147, 141, 132, 124, 116, 109, 110, 118, 125, 124, 120, 127, 135, 225 | 134, 124, 116, 106, 102, 108, 112, 108, 110, 127, 143, 142, 130, 130, 146, 151, 136, 126, 129, 128, 226 | 121, 110, 108, 113, 113, 111, 116, 128, 141, 157, 164, 156, 141, 124, 113, 112, 115, 114, 105, 97, 227 | 101, 105, 110, 112, 110, 111, 113, 108, 109, 132, 150, 151, 151, 152, 144, 138, 147, 142, 130, 118, 228 | 101, 94, 98, 91, 90, 115, 150, 176, 173, 140, 106, 112, 147, 151, 119, 100, 120, 148, 149, 132, 229 | 127, 135, 131, 126, 125, 113, 99, 101, 112, 130, 151, 155, 138, 127, 147, 158, 129, 100, 105, 122, 230 | 136, 137, 126, 128, 136, 135, 117, 97, 94, 110, 115, 113, 127, 139, 133, 126, 140, 159, 163, 144, 231 | 118, 117, 132, 132, 124, 123, 118, 105, 97, 99, 102, 106, 99, 94, 112, 133, 131, 113, 118, 139, 232 | 141, 131, 131, 143, 150, 151, 150, 150, 143, 127, 116, 113, 105, 93, 89, 88, 105, 130, 134, 129, 233 | 146, 169, 175, 177, 170, 153, 145, 144, 131, 106, 94, 106, 128, 139, 140, 141, 142, 134, 112, 89, 234 | 87, 111, 135, 134, 127, 151, 176, 174, 163, 150, 136, 118, 101, 102, 118, 128, 130, 143, 166, 177, 235 | 164, 143, 129, 114, 101, 98, 98, 104, 123, 137, 142, 137, 134, 138, 144, 151, 142, 134, 143, 150, 236 | 142, 142, 151, 139, 113, 101, 106, 111, 110, 115, 130, 137, 132, 130, 132, 133, 128, 128, 138, 145, 237 | 146, 141, 129, 119, 115, 112, 112, 113, 114, 113, 111, 109, 109, 117, 139, 165, 172, 165, 160, 154, 238 | 148, 136, 108, 88, 91, 99, 92, 79, 78, 95, 116, 131, 142, 151, 154, 155, 162, 154, 122, 94, 239 | 97, 120, 138, 132, 117, 116, 123, 126, 122, 100, 78, 78, 90, 113, 145, 166, 166, 158, 164, 181, 240 | 177, 139, 99, 98, 124, 135, 123, 104, 96, 105, 116, 112, 104, 98, 96, 109, 136, 160, 168, 160, 241 | 147, 145, 148, 139, 127, 123, 132, 145, 150, 153, 164, 164, 148, 133, 134, 139, 130, 114, 107, 115, 242 | 118, 105, 93, 104, 132, 156, 157, 146, 152, 161, 148, 123, 108, 107, 110, 105, 93, 103, 128, 139, 243 | 139, 136, 124, 114, 116, 120, 123, 111, 104, 130, 165, 165, 144, 141, 149, 143, 126, 105, 95, 105, 244 | 113, 109, 107, 112, 117, 118, 109, 107, 118, 127, 130, 139, 136, 116, 100, 102, 110, 106, 103, 110, 245 | 123, 138, 146, 141, 134, 126, 114, 112, 127, 143, 151, 159, 160, 147, 132, 127, 116, 102, 97, 100, 246 | 115, 140, 160, 160, 137, 117, 125, 145, 160, 156, 138, 122, 123, 135, 132, 123, 112, 97, 93, 105, 247 | 102, 78, 66, 80, 110, 134, 142, 137, 133, 140, 143, 128, 114, 118, 129, 136, 135, 135, 141, 145, 248 | 138, 129, 126, 127, 127, 130, 135, 139, 145, 140, 124, 118, 128, 141, 143, 129, 125, 138, 151, 152, 249 | 142, 124, 113, 120, 129, 122, 119, 135, 157, 157, 138, 124, 116, 122, 138, 146, 135, 127, 131, 131, 250 | 119, 112, 120, 127, 120, 119, 142, 156, 144, 134, 138, 141, 134, 124, 124, 135, 140, 129, 126, 135, 251 | 137, 127, 115, 111, 120, 139, 147, 130, 117, 133, 156, 164, 154, 126, 110, 133, 153, 136, 117, 127, 252 | 138, 121, 102, 108, 122, 121, 110, 114, 146, 166, 154, 150, 161, 151, 122, 111, 116, 109, 95, 105, 253 | 130, 127, 95, 88, 116, 135, 132, 126, 136, 151, 148, 130, 111, 107, 113, 112, 105, 114, 130, 144, 254 | 151, 146, 132, 116, 104, 95, 93, 105, 111, 111, 124, 149, 170, 166, 149, 141, 146, 153, 140, 105, 255 | 69, 59, 85, 107, 103, 103, 127, 142, 133, 123, 127, 147, 166, 161, 143, 134, 116, 91, 91, 97, 256 | 90, 99, 118, 124, 118, 113, 120, 129, 121, 121, 143, 160, 157, 154, 163, 162, 141, 130, 136, 139, 257 | 134, 117, 106, 128, 150, 130, 103, 111, 133, 142, 141, 132, 126, 133, 140, 137, 130, 130, 133, 133, 258 | 118, 97, 90, 99, 118, 143, 160, 153, 135, 130, 139, 139, 117, 95, 111, 146, 144, 114, 108, 125, 259 | 125, 111, 113, 129, 140, 136, 125, 132, 150, 140, 108, 96, 112, 128, 130, 122, 106, 104, 116, 113, 260 | 102, 104, 113, 118, 113, 110, 122, 134, 130, 133, 158, 173, 165, 155, 148, 124, 104, 108, 109, 102, 261 | 110, 128, 137, 135, 121, 106, 114, 138, 148, 158, 181, 183, 163, 155, 147, 120, 96, 89, 91, 102, 262 | 121, 129, 123, 117, 120, 138, 162, 173, 156, 127, 124, 137, 135, 117, 118, 138, 145, 140, 138, 136, 263 | 128, 118, 114, 113, 114, 121, 130, 133, 123, 114, 122, 144, 151, 139, 138, 147, 132, 102, 98, 124, 264 | 143, 122, 99, 117, 142, 123, 99, 120, 153, 154, 126, 98, 91, 104, 109, 103, 118, 147, 143, 119, 265 | 120, 146, 162, 157, 142, 135, 141, 141, 125, 106, 107, 121, 130, 127, 115, 113, 137, 157, 146, 133, 266 | 141, 137, 125, 119, 110, 109, 115, 104, 101, 126, 134, 116, 120, 142, 152, 140, 117, 114, 133, 134, 267 | 110, 104, 113, 122, 130, 122, 107, 116, 131, 123, 121, 143, 166, 167, 145, 128, 133, 126, 101, 100, 268 | 125, 134, 116, 112, 131, 141, 125, 106, 118, 153, 171, 148, 119, 134, 167, 161, 128, 114, 124, 132, 269 | 124, 102, 108, 146, 145, 106, 102, 139, 159, 143, 117, 115, 142, 156, 139, 129, 140, 147, 136, 124, 270 | 137, 144, 107, 66, 75, 114, 132, 121, 109, 122, 161, 190, 171, 125, 114, 134, 141, 130, 131, 144, 271 | 131, 95, 78, 99, 130, 139, 125, 117, 147, 169, 139, 93, 89, 119, 144, 147, 137, 129, 128, 123, 272 | 101, 77, 88, 121, 120, 104, 131, 168, 155, 122, 116, 129, 142, 130, 108, 100, 95, 83, 81, 103, 273 | 138, 167, 159, 133, 124, 134, 139, 132, 119, 115, 136, 156, 139, 118, 118, 112, 98, 98, 116, 137, 274 | 132, 109, 121, 159, 166, 133, 109, 117, 136, 134, 128, 147, 166, 131, 73, 77, 138, 168, 117, 60, 275 | 83, 142, 153, 120, 99, 122, 160, 173, 160, 147, 143, 140, 124, 101, 92, 98, 111, 134, 155, 151, 276 | 135, 130, 124, 121, 135, 141, 123, 112, 123, 134, 137, 138, 138, 146, 159, 160, 152, 149, 150, 129, 277 | 94, 87, 117, 137, 124, 105, 106, 119, 129, 134, 136, 138, 140, 136, 135, 144, 142, 129, 131, 144, 278 | 142, 132, 138, 148, 142, 129, 131, 147, 146, 115, 94, 101, 104, 110, 130, 135, 123, 110, 109, 130, 279 | 158, 155, 129, 140, 175, 160, 106, 87, 111, 124, 107, 99, 120, 159, 151, 93, 86, 148, 177, 131, 280 | 105, 135, 156, 131, 100, 107, 140, 155, 135, 122, 130, 125, 105, 113, 138, 137, 119, 122, 142, 155, 281 | 144, 114, 99, 112, 143, 156, 143, 122, 112, 121, 144, 146, 116, 108, 132, 145, 135, 122, 122, 142, 282 | 150, 132, 125, 141, 131, 99, 92, 106, 114, 114, 118, 134, 155, 157, 142, 145, 167, 164, 126, 96, 283 | 95, 95, 84, 80, 92, 112, 124, 129, 142, 154, 145, 126, 116, 109, 103, 108, 115, 105, 92, 101, 284 | 131, 150, 159, 161, 138, 110, 92, 81, 84, 105, 120, 123, 131, 138, 124, 99, 110, 138, 137, 117, 285 | 110, 124, 147, 144, 105, 78, 94, 126, 137, 118, 98, 111, 148, 173, 155, 120, 120, 129, 113, 99, 286 | 113, 131, 125, 115, 137, 154, 125, 110, 136, 155, 143, 130, 135, 135, 117, 103, 109, 139, 159, 137, 287 | 112, 124, 139, 133, 125, 110, 93, 100, 125, 149, 155, 133, 114, 128, 158, 169, 159, 140, 137, 144, 288 | 131, 107, 97, 102, 107, 103, 118, 155, 158, 129, 123, 159, 181, 162, 130, 133, 159, 138, 97, 107, 289 | 136, 128, 106, 125, 168, 176, 142, 107, 116, 155, 156, 125, 128, 153, 139, 105, 111, 131, 128, 118, 290 | 117, 128, 148, 154, 132, 115, 114, 116, 123, 135, 131, 116, 123, 129, 104, 99, 128, 138, 120, 117, 291 | 132, 143, 136, 114, 110, 125, 138, 137, 126, 115, 99, 91, 120, 145, 122, 103, 118, 130, 138, 144, 292 | 142, 137, 151, 181, 190, 170, 143, 123, 106, 95, 93, 105, 125, 127, 122, 137, 155, 155, 150, 144, 293 | 126, 111, 126, 147, 136, 119, 131, 149, 155, 153, 137, 134, 142, 123, 102, 112, 130, 125, 124, 143, 294 | 147, 141, 152, 156, 133, 112, 105, 111, 126, 120, 94, 97, 118, 131, 145, 147, 124, 116, 140, 167, 295 | 167, 136, 104, 91, 96, 111, 118, 112, 103, 105, 121, 134, 143, 134, 114, 126, 153, 154, 145, 144, 296 | 136, 122, 123, 138, 133, 114, 117, 129, 126, 109, 97, 102, 123, 140, 129, 117, 126, 132, 130, 141, 297 | 155, 150, 131, 122, 123, 127, 130, 115, 106, 113, 109, 81, 65, 82, 115, 139, 137, 128, 142, 164, 298 | 153, 111, 93, 113, 116, 103, 107, 103, 104, 136, 164, 156, 133, 120, 130, 144, 135, 110, 93, 92, 299 | 92, 96, 132, 156, 125, 100, 119, 145, 144, 137, 139, 140, 132, 125, 125, 128, 142, 137, 121, 133, 300 | 143, 119, 110, 126, 123, 112, 119, 128, 137, 140, 132, 132, 139, 138, 137, 152, 164, 149, 125, 111, 301 | 105, 105, 105, 96, 94, 118, 139, 133, 130, 147, 142, 109, 121, 159, 153, 128, 131, 145, 149, 137, 302 | 104, 99, 125, 122, 101, 117, 140, 132, 126, 149, 166, 150, 141, 142, 128, 113, 101, 95, 112, 121, 303 | 89, 77, 123, 153, 134, 119, 149, 189, 189, 154, 123, 139, 166, 144, 113, 119, 120, 106, 107, 115, 304 | 105, 95, 121, 162, 180, 176, 159, 153, 167, 162, 126, 98, 98, 102, 93, 88, 94, 91, 96, 117, 305 | 130, 140, 153, 150, 150, 166, 169, 148, 137, 143, 121, 98, 111, 121, 106, 100, 127, 163, 173, 157, 306 | 148, 152, 136, 102, 99, 121, 128, 117, 119, 146, 166, 151, 127, 133, 154, 155, 142, 138, 133, 106, 307 | 83, 92, 108, 116, 113, 120, 137, 148, 143, 143, 147, 130, 118, 125, 130, 121, 115, 120, 126, 129, 308 | 131, 135, 139, 138, 129, 124, 129, 121, 95, 89, 110, 125, 126, 120, 118, 130, 144, 134, 105, 106, 309 | 133, 129, 107, 118, 139, 140, 127, 121, 141, 160, 153, 125, 102, 92, 87, 94, 109, 107, 95, 119, 310 | 159, 168, 160, 165, 177, 164, 131, 120, 125, 117, 97, 85, 88, 104, 119, 131, 149, 164, 169, 173, 311 | 182, 169, 135, 113, 118, 118, 107, 94, 90, 106, 121, 118, 127, 163, 185, 168, 145, 151, 163, 152, 312 | 113, 69, 50, 68, 101, 103, 85, 99, 126, 124, 121, 149, 176, 172, 152, 145, 158, 157, 118, 84, 313 | 91, 113, 123, 127, 126, 109, 101, 118, 126, 122, 125, 138, 149, 143, 125, 121, 135, 140, 138, 141, 314 | 153, 156, 141, 117, 100, 93, 91, 100, 112, 119, 127, 135, 150, 164, 164, 162, 162, 151, 125, 100, 315 | 72, 57, 76, 113, 133, 129, 135, 153, 164, 167, 151, 124, 113, 127, 134, 123, 120, 128, 130, 127, 316 | 122, 126, 136, 122, 94, 96, 122, 126, 113, 102, 110, 134, 150, 155, 161, 161, 136, 112, 115, 127, 317 | 116, 87, 71, 90, 110, 99, 88, 107, 129, 129, 137, 156, 174, 170, 148, 137, 131, 110, 92, 86, 318 | 82, 81, 86, 99, 126, 145, 153, 158, 146, 140, 155, 160, 141, 129, 136, 144, 145, 132, 107, 113, 319 | 140, 140, 119, 118, 125, 107, 92, 101, 120, 142, 162, 166, 149, 126, 112, 100, 80, 83, 111, 127, 320 | 137, 149, 137, 121, 133, 142, 145, 164, 175, 160, 149, 149, 147, 134, 106, 93, 109, 135, 129, 96, 321 | 100, 147, 174, 148, 122, 136, 159, 154, 129, 124, 135, 124, 114, 120, 120, 105, 82, 86, 124, 151, 322 | 147, 140, 153, 163, 146, 120, 130, 151, 138, 118, 122, 136, 133, 110, 98, 114, 133, 128, 125, 148, 323 | 159, 134, 117, 137, 155, 149, 145, 148, 144, 120, 88, 92, 129, 155, 148, 136, 147, 145, 111, 83, 324 | 92, 106, 116, 135, 151, 151, 130, 108, 118, 147, 150, 130, 126, 139, 140, 113, 85, 90, 109, 117, 325 | 128, 139, 132, 113, 108, 121, 132, 128, 107, 91, 103, 128, 138, 118, 107, 123, 134, 146, 158, 140, 326 | 100, 93, 123, 141, 134, 133, 123, 109, 117, 133, 134, 113, 88, 86, 111, 128, 108, 79, 86, 124, 327 | 151, 156, 155, 125, 100, 122, 162, 170, 152, 127, 113, 107, 109, 107, 92, }; 328 | -------------------------------------------------------------------------------- /LaFerrari.h: -------------------------------------------------------------------------------- 1 | // idle sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 1520; 5 | 6 | const unsigned char idle_data[] PROGMEM ={129, 7 | 151, 169, 166, 171, 177, 189, 205, 218, 220, 213, 213, 213, 218, 227, 233, 236, 234, 234, 246, 250, 8 | 250, 250, 248, 248, 248, 250, 250, 248, 247, 247, 247, 249, 249, 249, 249, 247, 248, 246, 238, 228, 9 | 225, 229, 223, 224, 236, 243, 248, 248, 247, 247, 249, 247, 250, 235, 205, 192, 170, 142, 113, 90, 10 | 83, 90, 85, 63, 32, 12, 19, 42, 65, 78, 75, 66, 72, 74, 71, 60, 34, 17, 9, 6, 11 | 4, 6, 6, 6, 5, 6, 5, 6, 7, 6, 8, 7, 7, 7, 12, 14, 11, 7, 7, 7, 12 | 7, 6, 6, 5, 9, 25, 31, 31, 50, 74, 103, 136, 168, 194, 205, 212, 219, 228, 219, 201, 13 | 187, 175, 168, 160, 150, 151, 153, 159, 171, 186, 204, 231, 250, 248, 248, 249, 249, 249, 249, 247, 14 | 247, 248, 249, 248, 247, 240, 230, 224, 228, 233, 236, 239, 242, 250, 251, 250, 250, 249, 249, 250, 15 | 250, 249, 232, 204, 179, 170, 162, 154, 146, 128, 126, 141, 162, 169, 171, 175, 184, 195, 197, 182, 16 | 153, 121, 95, 78, 46, 16, 12, 17, 21, 21, 10, 3, 7, 5, 12, 13, 4, 6, 6, 6, 17 | 3, 4, 5, 5, 5, 5, 6, 7, 7, 6, 7, 7, 6, 5, 7, 7, 5, 5, 6, 25, 18 | 43, 53, 66, 65, 57, 60, 83, 88, 69, 74, 98, 108, 115, 130, 154, 170, 177, 189, 198, 213, 19 | 224, 224, 239, 249, 247, 246, 241, 240, 240, 239, 244, 250, 238, 225, 222, 230, 238, 239, 246, 250, 20 | 248, 248, 248, 250, 250, 248, 249, 249, 249, 246, 245, 242, 232, 230, 241, 250, 249, 243, 238, 234, 21 | 222, 208, 197, 189, 180, 186, 208, 216, 211, 211, 200, 192, 190, 175, 160, 136, 117, 103, 90, 85, 22 | 85, 76, 67, 68, 81, 102, 102, 83, 66, 52, 38, 33, 20, 6, 7, 5, 5, 5, 5, 4, 23 | 4, 5, 5, 6, 6, 6, 7, 6, 6, 5, 5, 5, 5, 5, 5, 5, 6, 7, 7, 7, 24 | 6, 9, 23, 34, 38, 43, 60, 92, 108, 115, 132, 150, 155, 163, 185, 196, 202, 214, 221, 221, 25 | 225, 231, 234, 244, 249, 248, 249, 249, 249, 249, 249, 250, 250, 250, 250, 249, 248, 248, 248, 249, 26 | 249, 248, 249, 248, 248, 247, 249, 249, 249, 248, 249, 248, 249, 249, 246, 237, 224, 212, 199, 181, 27 | 175, 176, 167, 163, 156, 164, 161, 159, 163, 165, 167, 164, 145, 124, 106, 84, 81, 82, 89, 81, 28 | 60, 47, 38, 11, 4, 5, 4, 4, 4, 6, 5, 7, 6, 8, 6, 7, 6, 6, 6, 6, 29 | 6, 7, 7, 7, 6, 5, 5, 6, 6, 6, 5, 6, 6, 9, 24, 39, 49, 32, 21, 17, 30 | 15, 23, 32, 46, 51, 74, 103, 116, 125, 127, 139, 154, 181, 193, 190, 194, 197, 202, 212, 239, 31 | 248, 248, 250, 250, 250, 249, 248, 248, 249, 249, 249, 248, 249, 249, 248, 248, 250, 249, 249, 249, 32 | 249, 249, 248, 249, 249, 248, 250, 249, 249, 250, 249, 250, 247, 235, 209, 196, 200, 209, 204, 194, 33 | 202, 223, 230, 208, 190, 166, 141, 140, 141, 136, 120, 101, 106, 106, 96, 99, 93, 82, 60, 41, 34 | 38, 37, 22, 16, 16, 7, 8, 18, 25, 12, 6, 6, 4, 6, 6, 6, 6, 7, 6, 7, 35 | 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 5, 8, 17, 22, 30, 36, 45, 52, 44, 32, 36 | 29, 42, 61, 82, 101, 123, 136, 147, 164, 179, 190, 189, 186, 190, 199, 217, 236, 242, 241, 240, 37 | 245, 249, 249, 250, 249, 248, 248, 248, 247, 248, 248, 248, 249, 249, 248, 248, 249, 249, 249, 249, 38 | 249, 248, 248, 250, 249, 249, 249, 249, 249, 232, 220, 222, 223, 217, 195, 174, 168, 171, 186, 192, 39 | 170, 156, 154, 169, 178, 166, 137, 111, 108, 118, 140, 140, 120, 105, 97, 82, 73, 37, 5, 7, 40 | 5, 6, 6, 6, 4, 6, 6, 7, 7, 6, 6, 7, 7, 6, 6, 6, 6, 6, 6, 5, 41 | 6, 6, 5, 6, 6, 5, 5, 6, 6, 7, 19, 31, 49, 52, 44, 49, 50, 49, 52, 54, 42 | 53, 57, 69, 90, 112, 125, 138, 155, 172, 189, 204, 212, 220, 225, 224, 236, 250, 249, 249, 249, 43 | 248, 249, 250, 249, 249, 248, 243, 247, 250, 249, 250, 250, 249, 248, 249, 249, 249, 249, 251, 250, 44 | 248, 248, 247, 247, 248, 249, 247, 251, 242, 234, 233, 218, 206, 203, 203, 199, 199, 207, 205, 203, 45 | 211, 225, 222, 193, 157, 117, 83, 73, 62, 52, 60, 67, 72, 72, 68, 65, 55, 58, 67, 75, 46 | 60, 17, 4, 6, 4, 5, 5, 6, 5, 6, 6, 7, 7, 6, 5, 7, 7, 8, 8, 6, 47 | 6, 7, 6, 5, 18, 16, 4, 5, 5, 6, 5, 9, 17, 31, 51, 70, 86, 98, 107, 114, 48 | 118, 125, 141, 164, 179, 192, 207, 213, 211, 214, 220, 220, 225, 229, 233, 236, 235, 233, 237, 247, 49 | 252, 250, 249, 249, 248, 248, 249, 248, 247, 248, 248, 249, 248, 249, 249, 250, 251, 251, 249, 248, 50 | 249, 248, 248, 249, 245, 243, 236, 226, 215, 203, 196, 198, 193, 175, 153, 131, 119, 118, 124, 132, 51 | 148, 154, 156, 157, 148, 138, 135, 138, 126, 92, 48, 13, 6, 6, 6, 11, 21, 19, 6, 13, 52 | 24, 18, 7, 4, 7, 8, 5, 5, 6, 6, 6, 6, 6, 5, 6, 6, 6, 5, 5, 6, 53 | 6, 7, 7, 7, 6, 8, 22, 33, 35, 32, 36, 45, 46, 51, 55, 57, 66, 64, 57, 61, 54 | 71, 94, 124, 154, 173, 172, 180, 206, 234, 249, 250, 250, 250, 249, 249, 249, 248, 247, 247, 247, 55 | 248, 248, 248, 248, 247, 248, 249, 250, 249, 249, 249, 249, 249, 248, 249, 249, 248, 249, 249, 248, 56 | 249, 233, 214, 212, 221, 226, 225, 216, 208, 211, 221, 229, 223, 209, 188, 165, 151, 139, 126, 110, 57 | 87, 61, 44, 29, 22, 13, 7, 6, 9, 28, 40, 37, 38, 46, 54, 53, 49, 46, 21, 6, 58 | 7, 6, 8, 8, 7, 6, 6, 6, 5, 7, 7, 6, 6, 6, 6, 6, 9, 16, 21, 21, 59 | 22, 19, 20, 29, 21, 13, 25, 32, 33, 47, 66, 83, 100, 115, 142, 170, 182, 185, 184, 180, 60 | 176, 172, 174, 179, 183, 185, 184, 186, 196, 202, 207, 227, 244, 247, 249, 250, 249, 249, 250, 249, 61 | 249, 249, 249, 248, 249, 248, 248, 248, 248, 249, 249, 249, 249, 248, 249, 249, 247, 249, 249, 249, 62 | 248, 250, 235, 208, 183, 160, 157, 156, 148, 146, 160, 169, 178, 182, 162, 130, 117, 123, 124, 109, 63 | 107, 104, 78, 62, 62, 38, 6, 6, 5, 6, 5, 6, 6, 6, 7, 8, 7, 6, 6, 7, 64 | 8, 7, 7, 8, 10, 6, 7, 6, 5, 4, 6, 7, 7, 7, 12, 27, 34, 44, 49, 48, 65 | 61, 62, 58, 74, 74, 67, 76, 86, 89, 89, 99, 113, 122, 134, 150, 160, 169, 185, 196, 204, 66 | 222, 234, 238, 247, 249, 251, 245, 236, 233, 219, 206, 192, 176, 182, 198, 213, 230, 242, 249, 250, 67 | 249, 249, 249, 248, 249, 250, 249, 249, 249, 249, 247, 235, 227, 229, 222, 206, 200, 220, 233, 239, 68 | 247, 248, 248, 247, 246, 247, 229, 209, 182, 146, 132, 123, 113, 93, 71, 81, 81, 77, 87, 87, 69 | 90, 86, 78, 84, 88, 79, 64, 45, 33, 19, 6, 6, 4, 6, 6, 6, 5, 5, 6, 5, 70 | 4, 6, 8, 8, 6, 5, 6, 6, 9, 8, 6, 4, 5, 6, 5, 5, 5, 7, 7, 20, 71 | 47, 73, 95, 115, 127, 137, 146, 153, 161, 168, 168, 167, 163, 158, 167, 172, 175, 184, 185, 189, 72 | 203, 214, 221, 224, 231, 242, 249, 248, 248, 249, 250, 249, 249, 248, 248, 249, 243, 237, 230, 225, 73 | 230, 238, 245, 250, 250, 250, 252, 252, 250, 250, 250, 251, 250, 249, 249, 246, 236, 221, 202, 185, 74 | 188, 194, 186, 187, 188, 181, 172, 160, 155, 163, 171, 181, 185, 165, 146, 121, 96, 73, 52, 35, 75 | 27, 18, 7, 8, 7, 8, 6, 6, 6, 5, 4, 4, 5, 7, 8, 7, 7, 7, 6, 6, 76 | 7, 6, 6, 5, 5, 5, 6, 5, 3, 4, 5, 7, 13, 20, 37, 48, 57, 63, 67, 65, 77 | 69, 80, 78, 79, 88, 94, 105, 116, 131, 148, 163, 175, 191, 212, 219, 234, 247, 249, 248, 249, 78 | 247, 239, 239, 234, 228, 223, 230, 242, 248, 249, 248, 248, 248, 249, 249, 250, 250, 250, 250, 250, 79 | 249, 249, 249, 248, 246, 237, 230, 230, 223, 218, 226, 233, 239, 249, 249, 250, 249, 251, 250, 251, 80 | 242, 215, 203, 201, 184, 155, 130, 112, 106, 112, 122, 107, 83, 77, 74, 78, 69, 48, 27, 14, 81 | 20, 30, 38, 25, 7, 6, 6, 5, 5, 5, 5, 5, 6, 7, 6, 5, 6, 6, 5, 6, 82 | 6, 6, 6, 5, 6, 5, 7, 6, 7, 6, 6, 5, 9, 23, 38, 47, 59, 89, 111, }; 83 | -------------------------------------------------------------------------------- /MgBGtV8.h: -------------------------------------------------------------------------------- 1 | // idle sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 3400; 5 | 6 | const unsigned char idle_data[] PROGMEM ={128, 7 | 129, 135, 136, 136, 138, 136, 134, 131, 132, 137, 139, 142, 147, 150, 152, 156, 159, 156, 158, 157, 8 | 154, 153, 152, 151, 150, 155, 160, 159, 159, 162, 166, 162, 159, 157, 154, 153, 149, 149, 151, 148, 9 | 149, 151, 153, 151, 152, 156, 149, 149, 153, 150, 149, 145, 144, 140, 141, 142, 140, 139, 139, 138, 10 | 131, 127, 123, 118, 113, 110, 107, 101, 97, 95, 91, 84, 80, 77, 71, 66, 64, 62, 57, 50, 11 | 47, 46, 41, 38, 32, 30, 28, 26, 27, 25, 23, 26, 27, 27, 27, 28, 29, 30, 36, 35, 12 | 39, 43, 46, 53, 54, 58, 61, 66, 72, 75, 81, 84, 89, 92, 98, 104, 106, 110, 113, 121, 13 | 125, 127, 135, 139, 144, 146, 149, 153, 155, 159, 160, 164, 167, 164, 167, 169, 169, 170, 169, 172, 14 | 174, 173, 175, 174, 173, 172, 175, 174, 174, 177, 179, 179, 178, 176, 178, 180, 174, 177, 177, 177, 15 | 180, 181, 184, 185, 185, 184, 186, 186, 184, 186, 187, 186, 184, 180, 179, 173, 173, 171, 167, 168, 16 | 164, 164, 161, 157, 160, 157, 158, 157, 156, 157, 152, 149, 145, 143, 138, 135, 130, 126, 122, 123, 17 | 124, 126, 128, 128, 131, 132, 132, 132, 130, 127, 127, 122, 122, 125, 124, 130, 135, 141, 146, 148, 18 | 158, 159, 160, 156, 157, 160, 153, 155, 159, 161, 161, 163, 171, 172, 171, 176, 172, 173, 174, 171, 19 | 170, 168, 167, 164, 163, 159, 157, 159, 158, 155, 151, 144, 141, 138, 136, 129, 126, 128, 118, 115, 20 | 114, 111, 107, 106, 103, 96, 99, 96, 91, 87, 78, 77, 66, 61, 59, 53, 51, 48, 45, 42, 21 | 41, 38, 39, 39, 37, 37, 31, 28, 29, 25, 20, 21, 23, 26, 27, 29, 31, 33, 30, 31, 22 | 37, 36, 40, 42, 43, 47, 48, 51, 54, 57, 59, 60, 66, 69, 72, 75, 79, 85, 87, 92, 23 | 95, 105, 110, 114, 121, 123, 127, 131, 132, 134, 137, 143, 148, 148, 153, 157, 161, 162, 162, 166, 24 | 168, 173, 174, 176, 180, 183, 189, 190, 191, 193, 195, 193, 193, 194, 193, 191, 192, 194, 194, 192, 25 | 192, 194, 192, 192, 188, 185, 185, 183, 182, 178, 177, 176, 177, 174, 176, 172, 168, 169, 160, 158, 26 | 156, 152, 150, 147, 143, 142, 142, 142, 140, 138, 139, 136, 135, 131, 128, 125, 122, 120, 117, 117, 27 | 116, 116, 116, 117, 119, 115, 117, 119, 121, 119, 119, 118, 116, 114, 113, 113, 110, 117, 120, 119, 28 | 121, 126, 132, 134, 139, 143, 144, 144, 143, 144, 146, 144, 147, 149, 156, 162, 163, 173, 177, 184, 29 | 187, 189, 195, 195, 197, 198, 202, 203, 205, 202, 203, 204, 205, 205, 204, 204, 203, 201, 197, 193, 30 | 186, 185, 180, 180, 176, 171, 168, 164, 160, 152, 151, 148, 142, 137, 130, 124, 117, 111, 104, 99, 31 | 92, 83, 82, 75, 72, 67, 63, 59, 56, 52, 48, 49, 45, 41, 39, 35, 33, 32, 29, 31, 32 | 28, 28, 29, 27, 24, 24, 25, 25, 24, 24, 28, 29, 32, 30, 32, 31, 31, 35, 32, 35, 33 | 36, 37, 39, 41, 45, 46, 50, 55, 55, 60, 62, 66, 68, 71, 79, 83, 91, 97, 103, 108, 34 | 114, 118, 119, 125, 130, 130, 133, 136, 141, 145, 150, 156, 159, 164, 169, 172, 177, 182, 187, 190, 35 | 194, 196, 195, 198, 201, 205, 204, 201, 204, 204, 203, 201, 200, 198, 193, 192, 190, 187, 186, 182, 36 | 180, 179, 174, 173, 170, 166, 164, 162, 157, 154, 153, 153, 150, 150, 152, 147, 145, 145, 145, 144, 37 | 141, 138, 134, 131, 129, 129, 128, 127, 128, 126, 127, 126, 123, 126, 124, 125, 125, 123, 126, 126, 38 | 124, 122, 120, 118, 115, 111, 110, 107, 105, 103, 105, 107, 110, 114, 114, 117, 112, 114, 116, 113, 39 | 115, 114, 119, 123, 129, 136, 138, 143, 147, 147, 146, 144, 147, 145, 143, 150, 157, 164, 173, 185, 40 | 192, 199, 201, 204, 207, 207, 207, 204, 202, 202, 198, 198, 204, 204, 205, 207, 208, 211, 212, 210, 41 | 204, 200, 192, 185, 179, 173, 173, 169, 163, 158, 150, 145, 141, 135, 130, 125, 123, 114, 107, 99, 42 | 94, 88, 80, 75, 70, 65, 62, 60, 59, 59, 53, 48, 48, 48, 44, 42, 41, 40, 37, 33, 43 | 34, 34, 34, 36, 36, 39, 42, 43, 42, 41, 44, 42, 45, 49, 52, 57, 58, 60, 62, 60, 44 | 61, 62, 62, 64, 65, 69, 70, 72, 75, 78, 80, 87, 92, 96, 99, 103, 107, 106, 109, 110, 45 | 111, 116, 121, 123, 128, 132, 133, 135, 136, 139, 141, 142, 143, 147, 150, 152, 152, 156, 158, 161, 46 | 164, 165, 167, 167, 168, 169, 171, 173, 175, 172, 171, 171, 167, 168, 165, 166, 164, 162, 162, 161, 47 | 162, 158, 156, 156, 153, 152, 151, 150, 148, 145, 141, 139, 138, 136, 136, 135, 131, 131, 128, 127, 48 | 126, 123, 125, 126, 123, 123, 122, 121, 122, 122, 125, 127, 130, 130, 132, 134, 132, 134, 134, 131, 49 | 133, 133, 134, 135, 139, 140, 143, 149, 151, 158, 158, 160, 162, 161, 160, 159, 161, 162, 162, 168, 50 | 175, 177, 183, 184, 185, 186, 188, 186, 183, 182, 179, 176, 178, 182, 180, 183, 188, 190, 191, 191, 51 | 188, 186, 184, 182, 177, 172, 171, 169, 169, 166, 164, 166, 163, 159, 156, 154, 148, 145, 143, 140, 52 | 138, 136, 134, 131, 131, 130, 129, 127, 128, 127, 124, 122, 118, 115, 110, 109, 107, 105, 102, 100, 53 | 103, 101, 101, 100, 99, 100, 97, 96, 93, 89, 85, 79, 78, 74, 70, 66, 61, 59, 55, 55, 54 | 54, 51, 45, 40, 37, 32, 29, 26, 25, 26, 25, 27, 26, 26, 27, 26, 29, 29, 31, 31, 55 | 32, 34, 35, 39, 41, 47, 53, 61, 67, 72, 78, 82, 81, 85, 90, 94, 99, 104, 110, 114, 56 | 120, 125, 128, 134, 137, 137, 140, 142, 142, 146, 146, 147, 150, 151, 154, 156, 156, 159, 161, 161, 57 | 161, 161, 161, 161, 162, 160, 159, 158, 158, 159, 157, 158, 158, 156, 154, 154, 155, 154, 155, 155, 58 | 156, 158, 160, 162, 160, 161, 164, 162, 161, 159, 158, 157, 162, 163, 168, 171, 173, 177, 176, 177, 59 | 174, 173, 172, 169, 168, 167, 167, 169, 168, 172, 172, 174, 173, 170, 170, 165, 163, 160, 160, 165, 60 | 162, 165, 174, 170, 177, 175, 180, 176, 170, 178, 171, 164, 165, 167, 167, 168, 172, 175, 179, 186, 61 | 187, 190, 188, 190, 191, 187, 187, 186, 187, 188, 190, 189, 189, 185, 181, 176, 171, 165, 155, 150, 62 | 145, 140, 139, 140, 136, 129, 125, 119, 111, 105, 97, 89, 85, 80, 76, 68, 61, 58, 52, 47, 63 | 43, 40, 38, 38, 38, 39, 40, 38, 40, 41, 39, 40, 38, 37, 36, 33, 34, 36, 34, 36, 64 | 40, 40, 43, 43, 46, 47, 47, 48, 49, 51, 50, 51, 53, 55, 57, 59, 62, 64, 66, 69, 65 | 69, 68, 66, 65, 66, 67, 68, 70, 74, 79, 85, 90, 95, 100, 105, 109, 115, 119, 121, 126, 66 | 130, 134, 141, 145, 152, 158, 161, 169, 175, 183, 189, 191, 198, 204, 209, 211, 216, 221, 220, 225, 67 | 229, 231, 229, 232, 231, 229, 230, 227, 227, 229, 228, 227, 222, 220, 219, 213, 209, 205, 199, 194, 68 | 190, 185, 178, 172, 170, 165, 158, 151, 145, 141, 135, 128, 120, 116, 114, 112, 109, 107, 104, 104, 69 | 104, 98, 95, 94, 95, 92, 91, 91, 86, 83, 83, 82, 80, 81, 82, 84, 88, 87, 89, 92, 70 | 92, 93, 92, 94, 94, 89, 89, 91, 93, 94, 95, 101, 109, 111, 116, 120, 119, 120, 123, 120, 71 | 116, 117, 116, 118, 119, 124, 131, 137, 142, 144, 151, 152, 152, 152, 150, 152, 152, 153, 158, 164, 72 | 169, 176, 181, 188, 193, 192, 194, 196, 194, 193, 191, 193, 191, 190, 189, 187, 188, 187, 189, 187, 73 | 185, 181, 179, 175, 170, 168, 160, 157, 151, 149, 149, 144, 138, 131, 127, 122, 115, 111, 108, 103, 74 | 97, 91, 87, 81, 77, 74, 71, 68, 66, 65, 61, 58, 53, 52, 52, 52, 53, 51, 53, 55, 75 | 54, 54, 56, 57, 61, 61, 63, 64, 65, 65, 67, 72, 71, 72, 73, 75, 77, 77, 78, 80, 76 | 82, 81, 84, 84, 84, 85, 83, 85, 85, 88, 93, 94, 95, 100, 104, 105, 107, 108, 111, 113, 77 | 113, 117, 120, 124, 128, 130, 133, 138, 141, 143, 146, 148, 152, 154, 155, 159, 163, 165, 166, 171, 78 | 174, 176, 179, 180, 183, 185, 185, 187, 186, 186, 185, 183, 182, 180, 179, 174, 173, 171, 169, 169, 79 | 166, 164, 162, 164, 160, 155, 154, 148, 146, 143, 138, 136, 135, 131, 129, 124, 120, 120, 120, 120, 80 | 122, 127, 130, 132, 131, 132, 131, 125, 121, 114, 114, 110, 109, 117, 122, 127, 138, 145, 153, 158, 81 | 152, 158, 153, 144, 149, 142, 143, 150, 152, 168, 175, 181, 193, 199, 200, 198, 195, 192, 179, 170, 82 | 164, 160, 168, 170, 182, 188, 193, 202, 197, 195, 194, 190, 187, 180, 172, 164, 162, 160, 148, 146, 83 | 147, 146, 149, 144, 142, 137, 134, 126, 117, 117, 110, 114, 113, 107, 107, 102, 104, 104, 97, 97, 84 | 96, 92, 91, 82, 77, 76, 67, 66, 68, 67, 62, 61, 61, 59, 60, 54, 58, 57, 51, 51, 85 | 43, 39, 34, 29, 26, 22, 23, 26, 28, 27, 29, 29, 25, 25, 23, 22, 22, 21, 22, 25, 86 | 29, 31, 38, 42, 47, 54, 57, 65, 65, 67, 71, 73, 77, 80, 87, 94, 102, 110, 116, 126, 87 | 132, 138, 147, 152, 158, 167, 171, 179, 185, 188, 195, 200, 203, 204, 205, 209, 210, 211, 215, 215, 88 | 220, 220, 221, 223, 219, 219, 220, 220, 219, 214, 213, 209, 208, 204, 201, 202, 196, 197, 193, 189, 89 | 190, 184, 182, 178, 174, 170, 167, 168, 165, 164, 162, 157, 155, 152, 152, 150, 149, 147, 146, 146, 90 | 141, 139, 139, 138, 132, 126, 125, 121, 114, 109, 107, 102, 99, 97, 95, 95, 97, 98, 99, 99, 91 | 100, 102, 98, 99, 95, 90, 92, 90, 91, 94, 91, 94, 98, 101, 105, 108, 116, 120, 123, 125, 92 | 129, 130, 130, 135, 133, 133, 133, 137, 138, 137, 140, 143, 146, 149, 153, 156, 159, 158, 159, 159, 93 | 157, 156, 156, 159, 159, 156, 155, 155, 155, 159, 159, 160, 159, 158, 157, 156, 158, 155, 153, 154, 94 | 156, 156, 154, 156, 156, 153, 153, 151, 150, 150, 149, 148, 145, 143, 141, 142, 141, 140, 137, 135, 95 | 131, 127, 121, 116, 112, 108, 104, 99, 94, 89, 84, 79, 77, 74, 71, 66, 62, 56, 50, 48, 96 | 47, 45, 40, 38, 36, 34, 32, 29, 29, 28, 31, 32, 34, 36, 35, 40, 40, 44, 49, 48, 97 | 53, 56, 59, 60, 61, 68, 73, 78, 85, 88, 93, 96, 100, 103, 107, 110, 113, 118, 121, 124, 98 | 129, 133, 137, 141, 144, 149, 150, 153, 156, 157, 160, 157, 158, 160, 160, 162, 160, 161, 162, 164, 99 | 165, 164, 164, 163, 166, 168, 166, 167, 169, 168, 167, 167, 166, 168, 169, 170, 171, 172, 175, 174, 100 | 175, 177, 176, 177, 181, 181, 183, 180, 179, 180, 178, 177, 177, 176, 173, 172, 168, 164, 163, 161, 101 | 161, 160, 160, 158, 157, 158, 155, 152, 151, 151, 151, 145, 140, 139, 132, 128, 124, 124, 127, 130, 102 | 132, 132, 133, 136, 137, 133, 132, 132, 130, 126, 126, 125, 125, 131, 136, 141, 146, 148, 155, 158, 103 | 159, 161, 158, 160, 155, 153, 157, 161, 164, 166, 171, 175, 178, 176, 174, 178, 177, 176, 177, 173, 104 | 171, 169, 167, 165, 162, 162, 162, 159, 154, 150, 144, 142, 136, 134, 131, 125, 124, 122, 120, 117, 105 | 117, 113, 106, 101, 98, 93, 91, 87, 82, 79, 72, 64, 58, 55, 53, 49, 49, 51, 47, 45, 106 | 42, 36, 33, 34, 34, 34, 33, 31, 30, 28, 26, 29, 26, 30, 34, 32, 37, 38, 38, 39, 107 | 43, 44, 46, 47, 47, 50, 53, 54, 55, 59, 65, 64, 68, 75, 76, 82, 85, 86, 92, 99, 108 | 103, 108, 112, 117, 121, 123, 124, 128, 134, 134, 140, 143, 144, 151, 157, 159, 161, 165, 168, 170, 109 | 174, 176, 179, 183, 186, 188, 189, 192, 195, 197, 196, 197, 196, 198, 195, 195, 196, 193, 194, 190, 110 | 187, 186, 186, 182, 183, 182, 179, 179, 177, 174, 174, 173, 172, 171, 169, 168, 163, 160, 157, 152, 111 | 149, 149, 146, 145, 145, 146, 147, 141, 142, 138, 136, 137, 132, 133, 128, 128, 125, 122, 122, 121, 112 | 121, 122, 123, 123, 126, 123, 124, 123, 121, 118, 115, 115, 113, 114, 112, 111, 115, 115, 117, 121, 113 | 124, 130, 132, 132, 134, 134, 135, 138, 138, 139, 144, 146, 151, 155, 158, 165, 168, 172, 174, 175, 114 | 181, 183, 187, 187, 188, 193, 195, 196, 200, 200, 200, 203, 201, 195, 191, 190, 186, 185, 184, 183, 115 | 183, 178, 174, 171, 169, 163, 159, 157, 153, 149, 145, 140, 135, 129, 124, 119, 115, 113, 108, 103, 116 | 99, 93, 88, 85, 81, 76, 74, 71, 70, 67, 65, 63, 57, 56, 53, 52, 51, 50, 52, 50, 117 | 53, 50, 46, 44, 43, 42, 40, 40, 39, 41, 40, 39, 42, 40, 39, 39, 35, 35, 34, 34, 118 | 34, 35, 39, 42, 43, 45, 47, 50, 52, 53, 57, 59, 63, 68, 70, 74, 80, 85, 91, 95, 119 | 100, 104, 109, 112, 116, 118, 120, 125, 130, 137, 140, 147, 150, 154, 159, 163, 166, 168, 173, 175, 120 | 177, 176, 178, 181, 181, 181, 182, 185, 188, 190, 190, 189, 188, 183, 182, 179, 177, 177, 174, 174, 121 | 170, 168, 167, 165, 163, 161, 161, 161, 159, 157, 154, 154, 154, 152, 152, 152, 153, 154, 154, 152, 122 | 151, 149, 147, 145, 146, 143, 142, 141, 142, 144, 141, 140, 140, 142, 142, 139, 139, 140, 139, 137, 123 | 133, 129, 129, 126, 125, 122, 121, 122, 121, 122, 123, 128, 130, 131, 130, 130, 134, 134, 130, 130, 124 | 131, 133, 134, 139, 142, 146, 149, 151, 152, 147, 152, 152, 155, 155, 159, 167, 173, 179, 183, 189, 125 | 193, 196, 197, 199, 198, 197, 193, 188, 186, 184, 181, 185, 188, 193, 195, 194, 194, 193, 187, 180, 126 | 175, 169, 167, 161, 155, 152, 146, 143, 136, 130, 126, 120, 119, 113, 111, 108, 103, 98, 93, 92, 127 | 85, 81, 75, 73, 71, 63, 62, 61, 59, 56, 50, 51, 49, 48, 43, 42, 46, 42, 42, 38, 128 | 36, 40, 42, 45, 45, 47, 50, 49, 51, 51, 52, 54, 54, 59, 58, 56, 61, 62, 60, 62, 129 | 66, 70, 72, 74, 77, 80, 85, 90, 91, 94, 101, 105, 107, 111, 114, 116, 121, 122, 123, 127, 130 | 129, 131, 132, 134, 138, 140, 140, 140, 140, 142, 142, 141, 146, 148, 151, 152, 149, 154, 157, 157, 131 | 157, 156, 159, 160, 159, 160, 159, 157, 155, 158, 155, 155, 155, 151, 152, 150, 149, 149, 151, 153, 132 | 151, 149, 150, 145, 145, 145, 141, 141, 138, 136, 135, 134, 130, 132, 133, 131, 130, 129, 126, 126, 133 | 126, 125, 126, 128, 128, 126, 123, 126, 127, 128, 131, 128, 135, 139, 139, 138, 138, 140, 138, 139, 134 | 138, 141, 144, 147, 145, 147, 150, 154, 158, 160, 161, 161, 160, 156, 153, 155, 154, 155, 160, 165, 135 | 172, 175, 175, 178, 181, 180, 180, 178, 178, 176, 175, 180, 183, 181, 182, 188, 191, 193, 192, 191, 136 | 193, 194, 190, 185, 182, 181, 178, 178, 180, 173, 178, 177, 173, 171, 164, 161, 153, 151, 145, 139, 137 | 137, 134, 130, 126, 127, 125, 126, 124, 122, 120, 117, 115, 112, 105, 101, 99, 95, 91, 91, 92, 138 | 92, 91, 89, 89, 86, 82, 82, 82, 80, 76, 73, 70, 67, 65, 63, 63, 60, 60, 57, 56, 139 | 55, 47, 44, 39, 35, 34, 28, 24, 24, 21, 20, 21, 21, 20, 18, 22, 24, 24, 25, 24, 140 | 26, 30, 32, 33, 37, 41, 47, 52, 57, 60, 68, 75, 78, 85, 91, 98, 104, 110, 116, 121, 141 | 125, 130, 134, 138, 144, 148, 151, 155, 159, 161, 161, 161, 164, 167, 171, 173, 174, 178, 181, 180, 142 | 180, 178, 181, 180, 179, 178, 177, 177, 174, 169, 165, 168, 168, 165, 165, 165, 165, 164, 162, 160, 143 | 160, 164, 165, 164, 165, 167, 169, 166, 164, 163, 163, 162, 162, 163, 165, 167, 169, 171, 170, 175, 144 | 173, 175, 172, 169, 168, 163, 165, 164, 164, 164, 165, 166, 168, 169, 166, 163, 157, 152, 153, 145, 145 | 147, 150, 155, 163, 159, 163, 164, 161, 160, 160, 155, 154, 152, 149, 148, 149, 152, 160, 168, 172, 146 | 171, 174, 177, 173, 172, 172, 176, 174, 169, 171, 177, 176, 176, 177, 176, 176, 172, 165, 162, 157, 147 | 150, 149, 148, 141, 133, 136, 130, 121, 116, 114, 110, 104, 102, 97, 90, 84, 82, 75, 69, 64, 148 | 57, 51, 49, 48, 46, 47, 50, 48, 49, 51, 51, 48, 47, 50, 48, 46, 44, 40, 39, 40, 149 | 43, 44, 47, 49, 52, 54, 53, 52, 51, 53, 52, 51, 56, 57, 61, 62, 60, 63, 67, 69, 150 | 63, 62, 64, 65, 66, 64, 67, 68, 71, 76, 79, 86, 93, 97, 98, 101, 103, 107, 108, 113, 151 | 120, 124, 131, 135, 139, 145, 149, 155, 163, 171, 175, 183, 189, 192, 198, 200, 204, 205, 209, 214, 152 | 217, 221, 222, 224, 227, 224, 226, 227, 224, 226, 224, 224, 220, 215, 214, 211, 207, 202, 201, 199, 153 | 193, 191, 185, 179, 176, 169, 162, 155, 150, 147, 141, 134, 130, 124, 121, 117, 113, 110, 108, 109, 154 | 108, 105, 102, 101, 99, 96, 94, 96, 92, 88, 88, 90, 88, 86, 90, 89, 92, 92, 94, 99, 155 | 98, 99, 98, 97, 96, 92, 89, 90, 94, 98, 98, 102, 109, 115, 116, 118, 121, 121, 122, 125, 156 | 127, 126, 121, 125, 129, 128, 134, 142, 148, 146, 148, 156, 157, 154, 151, 160, 162, 160, 166, 170, 157 | 176, 176, 180, 186, 191, 192, 193, 197, 194, 195, 192, 194, 194, 190, 189, 189, 189, 190, 189, 189, 158 | 185, 179, 174, 171, 165, 159, 155, 151, 146, 138, 134, 132, 125, 119, 115, 112, 107, 100, 98, 95, 159 | 86, 82, 77, 72, 71, 65, 63, 63, 59, 58, 55, 53, 52, 50, 47, 47, 47, 47, 48, 50, 160 | 52, 51, 53, 57, 60, 63, 65, 67, 69, 68, 66, 68, 71, 72, 72, 77, 80, 83, 85, 87, 161 | 87, 83, 84, 84, 85, 85, 86, 89, 91, 90, 93, 95, 98, 101, 101, 106, 110, 112, 112, 116, 162 | 119, 123, 127, 129, 134, 141, 145, 148, 151, 154, 156, 155, 162, 163, 167, 172, 175, 178, 178, 184, 163 | 184, 185, 187, 192, 191, 190, 191, 190, 190, 185, 186, 186, 183, 182, 179, 179, 177, 172, 170, 164, 164 | 161, 158, 156, 155, 151, 152, 149, 145, 141, 138, 135, 130, 126, 121, 117, 114, 109, 108, 106, 107, 165 | 110, 112, 117, 121, 125, 124, 122, 120, 117, 110, 109, 108, 105, 111, 116, 123, 125, 135, 138, 141, 166 | 143, 146, 146, 147, 148, 148, 147, 147, 154, 153, 160, 165, 175, 186, 195, 193, 196, 199, 193, 183, 167 | 177, 176, 172, 169, 173, 180, 179, 186, 193, 196, 197, 202, 202, 196, 193, 188, 180, 170, 167, 161, 168 | 154, 154, 156, 163, 163, 154, 148, 143, 140, 131, 130, 132, 130, 125, 124, 128, 123, 122, 119, 115, 169 | 115, 111, 108, 104, 93, 86, 80, 75, 72, 65, 70, 70, 63, 62, 60, 58, 51, 46, 41, 36, 170 | 37, 36, 30, 23, 18, 19, 17, 9, 5, 7, 9, 9, 7, 5, 4, 4, 1, 0, 3, 7, 171 | 14, 18, 22, 27, 33, 39, 44, 47, 50, 56, 59, 62, 67, 73, 76, 82, 91, 98, 105, 109, 172 | 117, 128, 137, 142, 147, 151, 157, 160, 168, 175, 180, 185, 191, 196, 196, 203, 208, 208, 210, 212, 173 | 218, 218, 217, 216, 218, 219, 217, 219, 221, 222, 219, 219, 221, 218, 216, 214, 211, 206, 202, 201, 174 | 195, 192, 192, 189, 189, 184, 185, 186, 184, 184, 185, 183, 176, 173, 171, 165, 161, 160, 160, 158, 175 | 158, 157, 152, 149, 147, 144, 139, 134, 133, 128, 123, 119, 114, 107, 98, 97, 98, 96, 94, 98, 176 | 99, 97, 98, 97, 100, 99, 95, 93, 91, 93, 93, 92, 89, 91, 96, 95, 96, 103, 110, }; 177 | -------------------------------------------------------------------------------- /Mustang68.h: -------------------------------------------------------------------------------- 1 | // idle sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 7240; 5 | 6 | const unsigned char idle_data[] PROGMEM ={128, 7 | 122, 120, 124, 121, 114, 113, 118, 116, 110, 110, 115, 115, 110, 106, 107, 107, 104, 101, 100, 99, 8 | 100, 104, 104, 103, 106, 107, 104, 100, 102, 107, 108, 101, 95, 97, 99, 95, 94, 98, 99, 94, 9 | 88, 87, 92, 96, 95, 91, 90, 90, 91, 93, 93, 91, 92, 90, 85, 88, 93, 90, 88, 90, 10 | 90, 92, 93, 88, 89, 94, 90, 89, 91, 89, 90, 90, 81, 78, 82, 82, 86, 80, 64, 67, 11 | 86, 87, 77, 65, 57, 73, 88, 72, 58, 68, 74, 67, 60, 59, 70, 76, 57, 45, 58, 65, 12 | 56, 51, 50, 50, 56, 57, 44, 38, 48, 64, 56, 35, 30, 55, 69, 40, 20, 46, 78, 52, 13 | 20, 40, 84, 76, 33, 32, 70, 90, 63, 48, 62, 70, 65, 71, 80, 75, 65, 61, 73, 90, 14 | 87, 72, 72, 86, 95, 88, 78, 88, 106, 101, 89, 100, 115, 107, 96, 103, 117, 120, 109, 101, 15 | 110, 123, 125, 122, 123, 125, 131, 139, 132, 125, 137, 152, 152, 137, 127, 146, 169, 158, 141, 149, 16 | 165, 169, 160, 147, 156, 172, 170, 165, 161, 158, 170, 173, 156, 153, 165, 173, 174, 164, 158, 168, 17 | 167, 158, 169, 174, 165, 163, 164, 170, 172, 156, 158, 180, 177, 157, 153, 162, 176, 173, 146, 142, 18 | 168, 176, 162, 151, 148, 162, 173, 161, 158, 168, 161, 152, 165, 173, 165, 153, 152, 169, 176, 156, 19 | 147, 165, 172, 161, 156, 163, 168, 165, 162, 169, 172, 169, 169, 176, 180, 174, 167, 173, 182, 182, 20 | 176, 174, 177, 183, 182, 183, 188, 186, 182, 190, 198, 194, 185, 184, 198, 207, 197, 189, 194, 196, 21 | 190, 186, 190, 197, 195, 190, 194, 195, 185, 186, 202, 210, 198, 182, 185, 198, 198, 189, 192, 193, 22 | 186, 188, 197, 196, 187, 185, 195, 205, 197, 183, 185, 193, 197, 194, 186, 184, 191, 192, 187, 181, 23 | 179, 184, 186, 180, 178, 179, 173, 169, 168, 171, 175, 173, 171, 174, 174, 170, 172, 172, 167, 164, 24 | 166, 165, 159, 151, 150, 152, 150, 146, 145, 142, 139, 137, 137, 133, 128, 128, 130, 126, 120, 117, 25 | 117, 116, 113, 113, 112, 109, 107, 107, 104, 96, 90, 96, 102, 95, 83, 79, 86, 90, 83, 76, 26 | 78, 80, 78, 74, 72, 77, 81, 77, 72, 72, 76, 77, 71, 67, 74, 79, 76, 71, 69, 73, 27 | 77, 76, 76, 77, 78, 81, 78, 71, 72, 75, 78, 80, 76, 73, 76, 75, 74, 79, 78, 71, 28 | 69, 73, 77, 76, 67, 65, 74, 81, 74, 62, 68, 81, 78, 68, 69, 75, 77, 68, 60, 72, 29 | 76, 63, 65, 73, 71, 69, 61, 60, 76, 81, 69, 69, 77, 82, 84, 75, 76, 91, 94, 85, 30 | 82, 85, 91, 95, 92, 91, 92, 93, 98, 96, 91, 98, 104, 100, 92, 89, 93, 99, 98, 96, 31 | 95, 92, 91, 87, 82, 85, 93, 91, 81, 73, 73, 74, 70, 64, 64, 70, 69, 55, 47, 58, 32 | 68, 59, 47, 48, 59, 61, 52, 52, 62, 66, 66, 65, 64, 70, 74, 71, 75, 82, 82, 84, 33 | 88, 87, 88, 93, 97, 106, 110, 105, 112, 123, 121, 119, 125, 132, 138, 134, 127, 138, 152, 147, 34 | 141, 146, 151, 153, 150, 150, 158, 162, 155, 156, 165, 163, 162, 169, 173, 172, 175, 179, 183, 182, 35 | 177, 180, 188, 187, 186, 187, 187, 191, 190, 185, 189, 195, 192, 189, 190, 191, 191, 190, 193, 193, 36 | 191, 198, 203, 192, 187, 197, 202, 195, 187, 189, 200, 200, 191, 188, 189, 189, 190, 188, 187, 189, 37 | 185, 182, 181, 177, 175, 181, 183, 179, 176, 174, 174, 174, 172, 174, 175, 170, 168, 169, 167, 165, 38 | 164, 162, 163, 165, 163, 159, 155, 154, 157, 156, 147, 145, 150, 150, 145, 141, 142, 146, 146, 143, 39 | 143, 146, 146, 147, 145, 141, 142, 147, 153, 153, 146, 144, 152, 157, 156, 155, 156, 161, 166, 165, 40 | 164, 168, 171, 174, 179, 179, 180, 184, 185, 186, 188, 188, 192, 196, 193, 191, 192, 193, 190, 186, 41 | 182, 184, 184, 178, 175, 177, 178, 175, 173, 170, 172, 175, 174, 171, 171, 173, 173, 170, 166, 165, 42 | 167, 167, 163, 159, 157, 156, 154, 151, 147, 145, 145, 142, 138, 136, 135, 133, 130, 127, 124, 123, 43 | 122, 121, 119, 117, 114, 111, 107, 102, 99, 98, 96, 91, 87, 84, 82, 79, 76, 73, 70, 67, 44 | 64, 62, 59, 57, 54, 52, 52, 50, 47, 46, 46, 43, 40, 41, 42, 41, 38, 38, 35, 28, 45 | 27, 32, 35, 31, 25, 24, 28, 28, 23, 23, 29, 30, 26, 25, 26, 26, 27, 31, 33, 30, 46 | 26, 31, 44, 46, 35, 35, 46, 50, 47, 48, 53, 63, 69, 66, 63, 65, 75, 93, 99, 88, 47 | 90, 109, 116, 109, 108, 117, 129, 132, 127, 124, 127, 129, 141, 155, 148, 134, 132, 139, 150, 157, 48 | 153, 149, 148, 142, 145, 151, 149, 152, 155, 149, 151, 155, 152, 153, 146, 136, 148, 158, 151, 145, 49 | 140, 138, 140, 132, 132, 147, 143, 123, 118, 123, 124, 118, 105, 106, 113, 103, 88, 86, 89, 94, 50 | 94, 87, 83, 78, 71, 75, 85, 86, 80, 76, 73, 70, 69, 74, 79, 71, 64, 73, 84, 75, 51 | 60, 64, 74, 76, 79, 87, 88, 77, 70, 82, 98, 94, 84, 90, 96, 96, 98, 103, 113, 118, 52 | 113, 115, 129, 136, 139, 143, 144, 145, 151, 153, 155, 159, 161, 167, 175, 173, 170, 175, 179, 182, 53 | 182, 178, 183, 194, 194, 191, 196, 201, 201, 199, 201, 211, 218, 214, 212, 217, 219, 219, 220, 220, 54 | 221, 224, 226, 228, 226, 223, 223, 226, 225, 225, 227, 226, 222, 219, 218, 218, 219, 218, 214, 211, 55 | 211, 211, 208, 202, 201, 204, 200, 189, 185, 187, 187, 180, 173, 175, 179, 172, 159, 155, 163, 168, 56 | 164, 157, 156, 155, 149, 147, 149, 149, 144, 142, 145, 144, 141, 138, 137, 132, 126, 126, 131, 132, 57 | 128, 126, 125, 122, 121, 121, 118, 116, 119, 124, 123, 115, 112, 116, 119, 117, 117, 118, 120, 121, 58 | 121, 121, 122, 124, 128, 131, 132, 135, 136, 137, 140, 142, 145, 149, 150, 149, 147, 148, 155, 162, 59 | 164, 162, 162, 165, 167, 167, 167, 169, 171, 170, 168, 167, 169, 171, 171, 172, 170, 170, 172, 170, 60 | 165, 164, 167, 172, 174, 167, 162, 163, 163, 163, 162, 158, 159, 158, 152, 148, 145, 142, 141, 137, 61 | 129, 124, 121, 118, 116, 110, 103, 101, 97, 95, 94, 89, 85, 82, 76, 74, 72, 66, 58, 50, 62 | 44, 43, 39, 34, 32, 34, 34, 32, 29, 26, 25, 24, 25, 28, 29, 25, 18, 15, 18, 23, 63 | 24, 20, 16, 20, 24, 22, 19, 18, 20, 24, 22, 20, 21, 20, 19, 23, 26, 30, 31, 27, 64 | 25, 28, 33, 39, 39, 35, 40, 47, 45, 40, 37, 42, 58, 69, 65, 58, 52, 56, 71, 81, 65 | 84, 89, 90, 92, 97, 100, 104, 109, 108, 108, 113, 118, 120, 120, 117, 120, 128, 135, 137, 133, 66 | 133, 141, 146, 145, 144, 147, 149, 150, 156, 163, 164, 163, 165, 166, 161, 159, 168, 179, 181, 175, 67 | 170, 170, 170, 170, 173, 178, 180, 174, 164, 160, 162, 164, 162, 161, 161, 159, 153, 149, 145, 140, 68 | 137, 139, 140, 138, 133, 128, 123, 120, 116, 114, 117, 122, 121, 112, 101, 97, 102, 107, 110, 112, 69 | 110, 103, 103, 104, 103, 106, 109, 107, 104, 101, 99, 102, 104, 102, 107, 112, 109, 108, 108, 108, 70 | 112, 114, 113, 117, 119, 118, 120, 120, 120, 126, 133, 137, 138, 137, 138, 143, 144, 144, 148, 149, 71 | 148, 150, 153, 156, 160, 162, 161, 160, 161, 166, 173, 175, 176, 180, 183, 184, 188, 192, 193, 193, 72 | 194, 195, 197, 199, 200, 203, 204, 203, 205, 208, 213, 217, 218, 217, 216, 216, 215, 216, 217, 217, 73 | 218, 220, 219, 216, 213, 214, 217, 217, 214, 214, 211, 206, 203, 200, 197, 197, 198, 199, 198, 192, 74 | 190, 193, 191, 187, 186, 183, 182, 183, 179, 175, 176, 175, 173, 174, 173, 171, 168, 165, 164, 161, 75 | 154, 153, 154, 148, 140, 137, 137, 139, 141, 142, 142, 139, 136, 134, 134, 134, 134, 134, 134, 134, 76 | 133, 129, 126, 125, 126, 126, 126, 124, 118, 113, 111, 109, 109, 108, 105, 101, 98, 95, 96, 99, 77 | 101, 100, 98, 99, 100, 100, 99, 99, 101, 101, 100, 100, 103, 104, 105, 106, 108, 111, 109, 101, 78 | 97, 100, 105, 110, 109, 102, 102, 105, 106, 108, 107, 106, 109, 108, 104, 107, 108, 109, 109, 103, 79 | 105, 111, 105, 102, 108, 109, 106, 101, 93, 93, 95, 94, 100, 99, 89, 92, 95, 85, 80, 79, 80 | 84, 95, 92, 77, 71, 70, 71, 73, 72, 78, 87, 77, 58, 58, 68, 69, 63, 58, 58, 62, 81 | 58, 50, 52, 58, 58, 60, 56, 47, 52, 63, 59, 52, 52, 54, 61, 60, 51, 60, 77, 76, 82 | 67, 64, 76, 87, 75, 64, 82, 97, 89, 79, 79, 91, 99, 92, 90, 95, 95, 96, 97, 97, 83 | 105, 107, 100, 104, 107, 105, 114, 118, 110, 111, 116, 116, 118, 117, 118, 120, 111, 110, 127, 132, 84 | 123, 116, 114, 123, 134, 132, 128, 132, 139, 144, 138, 129, 136, 149, 150, 144, 141, 141, 145, 146, 85 | 145, 150, 155, 151, 146, 147, 144, 142, 144, 147, 151, 153, 146, 140, 143, 147, 151, 157, 157, 154, 86 | 156, 157, 149, 143, 143, 149, 156, 149, 136, 138, 143, 135, 131, 136, 140, 137, 133, 130, 132, 132, 87 | 125, 126, 134, 134, 132, 136, 137, 130, 124, 130, 139, 137, 130, 137, 146, 140, 130, 136, 148, 151, 88 | 150, 152, 155, 158, 160, 157, 160, 169, 173, 174, 175, 177, 179, 184, 193, 198, 191, 187, 196, 198, 89 | 192, 195, 204, 206, 203, 198, 200, 207, 204, 200, 202, 203, 200, 200, 199, 201, 204, 202, 202, 203, 90 | 201, 203, 207, 204, 201, 202, 203, 205, 203, 197, 193, 195, 200, 200, 193, 187, 189, 192, 188, 180, 91 | 177, 179, 182, 183, 183, 179, 173, 172, 174, 174, 169, 167, 169, 168, 164, 162, 160, 159, 160, 158, 92 | 156, 156, 154, 152, 150, 148, 150, 151, 149, 149, 150, 144, 138, 139, 141, 142, 139, 136, 133, 131, 93 | 128, 130, 132, 128, 127, 129, 125, 122, 124, 124, 120, 116, 114, 115, 113, 109, 108, 106, 103, 105, 94 | 108, 104, 100, 103, 102, 98, 101, 105, 104, 100, 100, 103, 105, 103, 102, 104, 104, 105, 109, 105, 95 | 98, 101, 104, 101, 99, 101, 102, 100, 98, 101, 106, 106, 104, 102, 103, 104, 103, 100, 100, 104, 96 | 109, 105, 96, 96, 99, 101, 101, 99, 98, 96, 92, 94, 100, 96, 93, 92, 88, 89, 84, 74, 97 | 81, 85, 75, 70, 67, 65, 73, 70, 58, 61, 64, 59, 61, 58, 53, 58, 53, 46, 54, 56, 98 | 47, 47, 48, 50, 54, 47, 43, 55, 57, 40, 32, 38, 52, 52, 32, 24, 39, 51, 45, 37, 99 | 34, 38, 43, 42, 41, 42, 40, 38, 40, 41, 42, 40, 41, 52, 52, 40, 37, 50, 67, 67, 100 | 51, 51, 66, 69, 72, 78, 76, 78, 86, 90, 94, 93, 91, 102, 108, 99, 100, 110, 113, 112, 101 | 109, 107, 115, 124, 124, 121, 124, 134, 139, 131, 128, 138, 146, 144, 137, 140, 148, 148, 140, 141, 102 | 147, 152, 151, 143, 141, 152, 156, 151, 148, 148, 152, 158, 155, 150, 152, 152, 151, 155, 153, 150, 103 | 153, 151, 148, 151, 149, 150, 156, 152, 145, 146, 147, 151, 153, 146, 146, 149, 143, 141, 144, 141, 104 | 141, 147, 145, 137, 135, 137, 141, 145, 145, 141, 137, 137, 143, 140, 132, 136, 147, 143, 136, 138, 105 | 141, 143, 143, 139, 138, 143, 144, 142, 141, 140, 143, 151, 154, 155, 158, 158, 158, 165, 167, 165, 106 | 170, 172, 171, 173, 172, 169, 174, 180, 180, 182, 183, 184, 190, 188, 181, 188, 199, 198, 193, 190, 107 | 191, 201, 204, 199, 202, 208, 207, 205, 206, 209, 211, 210, 208, 211, 212, 210, 211, 210, 207, 208, 108 | 211, 212, 212, 206, 205, 211, 210, 206, 207, 209, 209, 207, 203, 203, 201, 196, 196, 198, 195, 190, 109 | 186, 180, 179, 178, 174, 175, 176, 169, 160, 153, 153, 159, 157, 147, 142, 142, 142, 140, 138, 137, 110 | 137, 135, 134, 132, 125, 122, 125, 127, 124, 117, 113, 114, 116, 114, 114, 116, 116, 116, 116, 112, 111 | 112, 114, 112, 109, 111, 114, 113, 107, 102, 104, 104, 98, 98, 101, 98, 94, 92, 94, 98, 98, 112 | 95, 94, 94, 94, 96, 96, 94, 93, 92, 92, 95, 96, 94, 96, 100, 101, 98, 93, 93, 97, 113 | 97, 91, 87, 85, 86, 88, 87, 86, 86, 86, 86, 88, 88, 86, 86, 88, 89, 85, 77, 75, 114 | 82, 85, 81, 76, 75, 80, 83, 83, 82, 78, 72, 73, 78, 77, 68, 64, 73, 81, 72, 56, 115 | 55, 64, 68, 64, 61, 62, 58, 47, 46, 57, 61, 53, 44, 44, 50, 50, 42, 43, 54, 57, 116 | 45, 36, 38, 51, 62, 61, 54, 47, 46, 52, 50, 43, 47, 65, 74, 66, 53, 45, 50, 61, 117 | 68, 69, 65, 66, 72, 72, 70, 75, 77, 74, 79, 88, 90, 84, 82, 89, 95, 90, 89, 98, 118 | 101, 99, 97, 97, 106, 115, 113, 107, 107, 109, 113, 117, 122, 128, 125, 116, 115, 122, 125, 124, 119 | 126, 127, 123, 119, 126, 133, 130, 129, 135, 140, 134, 128, 135, 143, 139, 134, 133, 131, 136, 139, 120 | 138, 142, 141, 135, 137, 142, 142, 139, 133, 134, 139, 133, 133, 142, 139, 131, 131, 131, 132, 134, 121 | 136, 139, 137, 128, 127, 133, 130, 126, 131, 143, 149, 139, 131, 140, 148, 145, 144, 149, 150, 150, 122 | 154, 157, 153, 145, 147, 152, 153, 157, 164, 165, 164, 165, 161, 164, 173, 174, 174, 176, 175, 174, 123 | 177, 175, 176, 180, 176, 175, 182, 185, 186, 190, 189, 185, 186, 189, 192, 195, 194, 195, 201, 202, 124 | 199, 199, 202, 206, 210, 211, 210, 212, 216, 216, 215, 215, 214, 215, 218, 217, 213, 212, 212, 212, 125 | 210, 208, 207, 204, 203, 205, 205, 201, 198, 200, 201, 196, 194, 195, 193, 190, 192, 192, 187, 183, 126 | 185, 186, 182, 180, 182, 181, 179, 181, 182, 178, 174, 174, 173, 169, 166, 166, 164, 162, 160, 158, 127 | 154, 152, 150, 150, 149, 147, 146, 145, 143, 141, 139, 138, 139, 140, 140, 140, 138, 137, 135, 133, 128 | 132, 133, 133, 134, 135, 136, 136, 136, 136, 136, 136, 135, 134, 132, 131, 131, 131, 132, 133, 134, 129 | 135, 135, 136, 136, 136, 136, 135, 134, 132, 132, 132, 133, 134, 132, 131, 132, 132, 129, 126, 124, 130 | 123, 123, 119, 114, 115, 115, 110, 106, 104, 102, 103, 104, 103, 100, 93, 92, 98, 96, 89, 90, 131 | 94, 94, 91, 84, 80, 87, 88, 77, 71, 76, 81, 76, 65, 64, 68, 57, 41, 44, 57, 59, 132 | 41, 25, 28, 47, 53, 36, 24, 34, 50, 35, 12, 18, 45, 44, 17, 8, 15, 27, 26, 17, 133 | 14, 15, 13, 15, 18, 10, 9, 20, 17, 7, 9, 19, 25, 19, 10, 19, 31, 19, 12, 31, 134 | 40, 23, 16, 27, 55, 68, 45, 31, 45, 73, 93, 90, 65, 59, 89, 107, 92, 81, 100, 117, 135 | 102, 83, 99, 126, 121, 106, 121, 137, 122, 113, 135, 157, 150, 129, 132, 157, 158, 139, 142, 152, 136 | 150, 149, 149, 155, 164, 154, 145, 153, 151, 149, 164, 169, 153, 140, 143, 163, 169, 141, 133, 164, 137 | 173, 148, 134, 147, 167, 163, 139, 138, 158, 161, 148, 139, 139, 149, 151, 142, 151, 157, 138, 132, 138 | 154, 160, 138, 127, 147, 168, 151, 124, 132, 147, 150, 156, 150, 133, 136, 150, 154, 148, 139, 142, 139 | 155, 155, 144, 137, 139, 150, 156, 146, 139, 142, 146, 148, 150, 150, 146, 151, 166, 164, 146, 148, 140 | 164, 169, 165, 161, 159, 160, 162, 166, 165, 158, 163, 176, 173, 164, 167, 170, 172, 179, 179, 175, 141 | 175, 179, 185, 188, 181, 180, 188, 191, 193, 195, 192, 193, 196, 197, 208, 213, 204, 204, 213, 213, 142 | 211, 212, 215, 221, 218, 212, 216, 221, 221, 225, 227, 225, 223, 221, 224, 229, 223, 216, 221, 224, 143 | 221, 217, 211, 212, 216, 214, 213, 213, 211, 211, 209, 200, 195, 196, 195, 196, 194, 182, 176, 178, 144 | 179, 177, 172, 167, 169, 170, 167, 164, 163, 164, 168, 165, 157, 154, 154, 157, 160, 153, 145, 149, 145 | 152, 150, 145, 139, 139, 143, 136, 129, 129, 129, 133, 131, 120, 121, 127, 124, 118, 117, 120, 124, 146 | 117, 109, 113, 115, 108, 108, 110, 110, 111, 108, 110, 114, 107, 105, 111, 109, 103, 104, 104, 107, 147 | 110, 103, 95, 98, 104, 103, 94, 88, 96, 107, 100, 91, 93, 100, 105, 105, 102, 99, 98, 100, 148 | 105, 105, 100, 101, 104, 103, 99, 96, 100, 107, 101, 95, 97, 102, 105, 101, 95, 100, 109, 105, 149 | 94, 94, 104, 111, 102, 91, 93, 98, 96, 91, 91, 97, 96, 85, 81, 83, 81, 85, 89, 83, 150 | 76, 74, 72, 70, 65, 61, 68, 69, 56, 50, 54, 49, 42, 40, 38, 41, 46, 37, 23, 20, 151 | 28, 36, 26, 10, 8, 20, 22, 12, 7, 7, 10, 16, 17, 8, 2, 9, 20, 16, 3, 0, 152 | 13, 17, 6, 4, 16, 27, 27, 24, 21, 25, 36, 48, 54, 46, 40, 55, 72, 65, 56, 63, 153 | 85, 100, 86, 72, 89, 108, 107, 100, 100, 110, 115, 107, 112, 126, 122, 119, 134, 144, 143, 142, 154 | 146, 154, 156, 155, 165, 170, 163, 159, 162, 167, 172, 171, 168, 166, 166, 168, 170, 171, 177, 173, 155 | 164, 169, 183, 183, 172, 166, 177, 191, 186, 179, 188, 189, 175, 169, 179, 188, 184, 168, 165, 173, 156 | 170, 160, 159, 159, 156, 157, 154, 150, 154, 153, 148, 146, 145, 144, 147, 142, 139, 145, 140, 128, 157 | 131, 141, 140, 129, 119, 125, 140, 135, 121, 124, 130, 124, 119, 118, 123, 128, 124, 117, 117, 116, 158 | 118, 124, 123, 120, 126, 127, 123, 127, 134, 137, 135, 131, 140, 155, 154, 144, 148, 158, 163, 165, 159 | 164, 166, 171, 173, 180, 184, 176, 175, 187, 190, 188, 189, 191, 195, 198, 197, 202, 209, 208, 212, 160 | 215, 211, 215, 223, 225, 223, 220, 218, 223, 226, 224, 225, 228, 227, 225, 225, 223, 223, 226, 225, 161 | 223, 225, 226, 225, 227, 227, 226, 227, 225, 223, 224, 220, 216, 220, 219, 210, 210, 212, 211, 207, 162 | 200, 197, 202, 202, 196, 191, 185, 182, 183, 177, 172, 176, 176, 168, 164, 163, 161, 155, 148, 148, 163 | 151, 145, 136, 135, 133, 127, 125, 124, 123, 120, 115, 111, 112, 110, 105, 102, 96, 93, 94, 92, 164 | 86, 83, 81, 79, 79, 76, 71, 70, 69, 65, 61, 63, 69, 71, 64, 60, 65, 67, 64, 64, 165 | 68, 71, 68, 65, 66, 67, 67, 69, 73, 74, 76, 75, 70, 70, 78, 82, 80, 77, 80, 89, 166 | 91, 86, 87, 96, 100, 100, 98, 96, 101, 107, 106, 103, 103, 104, 103, 102, 101, 105, 106, 101, 167 | 99, 100, 101, 105, 106, 100, 94, 95, 102, 106, 100, 93, 96, 98, 92, 87, 90, 97, 105, 101, 168 | 88, 87, 93, 93, 90, 89, 91, 97, 92, 78, 77, 84, 87, 89, 89, 82, 81, 84, 86, 87, 169 | 83, 75, 75, 80, 77, 76, 79, 76, 70, 66, 64, 68, 71, 65, 61, 61, 59, 57, 58, 57, 170 | 56, 53, 48, 45, 46, 49, 54, 54, 43, 39, 42, 45, 46, 45, 45, 47, 44, 36, 37, 45, 171 | 48, 46, 46, 49, 54, 55, 52, 56, 64, 62, 62, 67, 70, 75, 84, 86, 83, 87, 97, 108, 172 | 111, 107, 115, 131, 133, 124, 128, 142, 151, 149, 144, 146, 157, 164, 167, 172, 174, 172, 175, 184, 173 | 190, 192, 191, 191, 194, 194, 192, 196, 203, 200, 194, 194, 201, 202, 198, 199, 204, 202, 195, 194, 174 | 197, 197, 196, 196, 194, 187, 183, 185, 187, 183, 181, 185, 185, 180, 176, 177, 176, 175, 177, 177, 175 | 175, 175, 174, 173, 171, 166, 165, 170, 173, 168, 160, 157, 163, 168, 163, 159, 163, 164, 161, 162, 176 | 166, 164, 160, 160, 163, 163, 159, 159, 165, 168, 164, 163, 166, 165, 162, 162, 161, 156, 151, 151, 177 | 154, 153, 150, 148, 145, 141, 140, 141, 144, 145, 143, 140, 139, 141, 143, 144, 145, 148, 151, 150, 178 | 151, 159, 161, 155, 154, 158, 160, 164, 167, 167, 167, 170, 173, 175, 177, 180, 185, 186, 185, 189, 179 | 193, 188, 187, 194, 199, 197, 194, 194, 199, 203, 200, 199, 204, 207, 202, 197, 198, 201, 202, 200, 180 | 198, 197, 196, 196, 194, 193, 192, 191, 191, 191, 188, 186, 183, 179, 177, 177, 177, 177, 173, 165, 181 | 160, 161, 162, 161, 159, 154, 149, 147, 145, 141, 138, 136, 134, 131, 127, 126, 127, 124, 118, 115, 182 | 114, 111, 109, 107, 103, 99, 96, 93, 93, 91, 85, 76, 73, 74, 73, 70, 67, 63, 58, 55, 183 | 52, 49, 48, 49, 48, 42, 39, 39, 37, 34, 34, 35, 34, 31, 31, 33, 34, 34, 32, 30, 184 | 31, 34, 34, 31, 32, 34, 34, 32, 31, 33, 37, 40, 42, 43, 42, 43, 48, 51, 51, 52, 185 | 56, 60, 64, 67, 70, 75, 79, 81, 84, 87, 91, 95, 96, 95, 98, 103, 108, 110, 112, 115, 186 | 118, 119, 121, 130, 137, 133, 128, 129, 133, 135, 135, 133, 132, 134, 136, 137, 138, 138, 136, 133, 187 | 132, 134, 135, 132, 130, 131, 128, 124, 126, 129, 128, 123, 122, 123, 124, 124, 124, 122, 118, 114, 188 | 114, 114, 113, 110, 107, 106, 107, 105, 102, 100, 101, 100, 97, 93, 91, 90, 88, 85, 80, 76, 189 | 74, 72, 70, 69, 68, 65, 63, 64, 62, 59, 59, 54, 50, 52, 54, 53, 52, 53, 53, 52, 190 | 51, 57, 63, 62, 60, 59, 58, 59, 65, 69, 69, 70, 73, 74, 77, 80, 82, 86, 91, 95, 191 | 100, 104, 105, 106, 110, 117, 126, 133, 137, 141, 147, 150, 153, 159, 165, 171, 175, 178, 182, 187, 192 | 191, 194, 196, 199, 201, 204, 209, 210, 208, 208, 214, 217, 214, 212, 216, 219, 219, 218, 221, 223, 193 | 223, 223, 223, 224, 225, 225, 223, 222, 224, 224, 220, 217, 215, 212, 209, 207, 206, 204, 199, 195, 194 | 194, 191, 187, 187, 185, 183, 181, 179, 176, 175, 173, 169, 168, 168, 166, 164, 161, 156, 153, 152, 195 | 150, 148, 146, 143, 141, 139, 138, 137, 135, 131, 129, 128, 129, 129, 127, 124, 119, 116, 114, 114, 196 | 113, 112, 111, 110, 110, 110, 109, 106, 105, 106, 108, 110, 111, 111, 111, 111, 114, 117, 119, 120, 197 | 121, 123, 126, 128, 129, 130, 132, 135, 140, 143, 144, 144, 144, 147, 150, 152, 153, 154, 156, 160, 198 | 165, 168, 169, 171, 173, 177, 182, 187, 191, 191, 189, 187, 189, 194, 198, 199, 196, 195, 194, 192, 199 | 190, 188, 189, 191, 191, 188, 184, 183, 185, 185, 184, 182, 180, 180, 178, 175, 171, 171, 172, 169, 200 | 163, 159, 155, 149, 144, 139, 135, 135, 133, 127, 119, 114, 113, 114, 110, 104, 101, 98, 87, 76, 201 | 71, 68, 65, 66, 63, 54, 47, 43, 43, 45, 40, 32, 31, 28, 24, 25, 25, 23, 25, 25, 202 | 22, 22, 21, 21, 26, 26, 24, 28, 29, 27, 31, 31, 30, 34, 31, 31, 41, 46, 40, 32, 203 | 32, 43, 51, 45, 40, 51, 62, 49, 37, 47, 63, 63, 52, 46, 57, 74, 69, 62, 75, 83, 204 | 83, 95, 103, 105, 112, 110, 114, 133, 137, 132, 146, 150, 143, 153, 160, 160, 169, 170, 169, 182, 205 | 178, 164, 175, 183, 180, 187, 185, 181, 193, 192, 183, 188, 187, 185, 193, 183, 171, 182, 185, 177, 206 | 175, 175, 177, 176, 170, 174, 177, 171, 170, 166, 157, 160, 159, 154, 159, 157, 145, 143, 141, 135, 207 | 134, 133, 132, 132, 124, 116, 116, 114, 111, 116, 116, 111, 109, 105, 97, 94, 93, 93, 95, 92, 208 | 87, 92, 93, 89, 88, 86, 81, 83, 83, 83, 86, 83, 81, 88, 89, 87, 91, 92, 94, 102, 209 | 103, 102, 107, 109, 112, 118, 114, 111, 117, 120, 124, 130, 127, 124, 126, 129, 134, 136, 132, 136, 210 | 147, 147, 147, 158, 164, 164, 167, 168, 170, 174, 178, 181, 187, 188, 188, 192, 193, 193, 200, 208, 211 | 210, 213, 211, 206, 209, 217, 219, 220, 222, 223, 223, 224, 224, 226, 226, 226, 229, 229, 225, 222, 212 | 222, 222, 224, 226, 226, 225, 223, 220, 218, 218, 217, 217, 214, 210, 207, 200, 195, 193, 190, 187, 213 | 185, 178, 173, 170, 167, 168, 168, 162, 157, 157, 156, 155, 151, 146, 148, 149, 144, 138, 137, 138, 214 | 138, 136, 134, 134, 132, 127, 124, 120, 117, 115, 113, 113, 113, 108, 103, 105, 106, 104, 101, 100, 215 | 103, 105, 101, 96, 97, 99, 100, 101, 100, 100, 101, 101, 103, 107, 108, 107, 110, 113, 114, 114, 216 | 113, 114, 117, 117, 117, 117, 119, 122, 124, 123, 123, 125, 127, 128, 126, 126, 129, 130, 128, 130, 217 | 133, 132, 131, 130, 130, 134, 139, 141, 143, 142, 141, 143, 143, 142, 143, 145, 145, 144, 140, 139, 218 | 142, 143, 143, 141, 137, 136, 138, 136, 132, 130, 129, 126, 121, 118, 122, 126, 124, 121, 120, 118, 219 | 117, 118, 115, 111, 107, 102, 100, 96, 91, 90, 86, 84, 86, 82, 75, 78, 79, 75, 75, 69, 220 | 64, 65, 60, 57, 55, 44, 41, 45, 42, 39, 35, 30, 36, 39, 30, 26, 30, 33, 34, 27, 221 | 20, 26, 30, 24, 22, 22, 25, 28, 24, 23, 28, 32, 36, 34, 32, 37, 43, 45, 49, 47, 222 | 51, 62, 61, 57, 61, 64, 69, 74, 71, 74, 83, 82, 83, 91, 100, 108, 108, 103, 107, 114, 223 | 118, 126, 133, 134, 135, 136, 136, 140, 145, 148, 152, 155, 156, 158, 161, 160, 158, 158, 159, 161, 224 | 165, 168, 166, 165, 167, 168, 170, 170, 170, 174, 175, 171, 170, 170, 168, 167, 167, 165, 162, 160, 225 | 157, 156, 156, 153, 150, 146, 140, 139, 139, 135, 133, 133, 129, 125, 123, 121, 119, 119, 118, 116, 226 | 112, 109, 109, 108, 103, 98, 96, 95, 96, 95, 91, 87, 86, 86, 86, 86, 82, 77, 78, 81, 227 | 81, 78, 77, 79, 84, 84, 80, 84, 91, 94, 95, 94, 92, 93, 95, 94, 98, 104, 107, 111, 228 | 118, 121, 122, 126, 134, 143, 150, 151, 153, 161, 167, 170, 174, 180, 184, 188, 192, 198, 204, 206, 229 | 207, 212, 217, 218, 221, 225, 228, 230, 231, 234, 237, 238, 238, 240, 242, 241, 240, 241, 244, 244, 230 | 241, 240, 242, 243, 243, 242, 243, 242, 240, 239, 239, 238, 237, 235, 236, 235, 231, 227, 226, 227, 231 | 225, 220, 217, 216, 216, 214, 211, 207, 203, 200, 199, 197, 193, 188, 183, 179, 173, 168, 162, 156, 232 | 150, 146, 142, 136, 131, 127, 123, 121, 116, 111, 108, 108, 107, 105, 102, 99, 96, 93, 90, 88, 233 | 87, 86, 84, 82, 81, 79, 78, 78, 78, 78, 77, 76, 75, 75, 75, 74, 74, 75, 75, 76, 234 | 77, 79, 79, 80, 81, 83, 84, 85, 86, 89, 91, 92, 95, 99, 103, 105, 107, 110, 112, 113, 235 | 116, 122, 125, 125, 126, 128, 129, 130, 134, 138, 139, 140, 142, 144, 142, 140, 145, 149, 147, 143, 236 | 142, 145, 147, 144, 142, 141, 140, 142, 144, 139, 133, 131, 132, 134, 126, 115, 120, 123, 111, 104, 237 | 106, 109, 109, 98, 95, 102, 96, 88, 95, 98, 95, 82, 67, 76, 91, 73, 56, 63, 71, 71, 238 | 53, 31, 48, 71, 50, 33, 38, 45, 49, 36, 23, 34, 42, 27, 22, 27, 27, 25, 22, 18, 239 | 21, 20, 18, 24, 23, 11, 8, 18, 24, 16, 6, 10, 23, 23, 7, 6, 24, 32, 17, 9, 240 | 19, 35, 33, 18, 18, 37, 48, 36, 30, 39, 47, 47, 44, 50, 66, 70, 62, 68, 79, 81, 241 | 88, 95, 97, 107, 116, 119, 125, 124, 122, 138, 148, 141, 141, 148, 150, 151, 148, 148, 164, 174, 242 | 164, 160, 169, 178, 182, 174, 170, 187, 199, 186, 174, 180, 188, 191, 186, 177, 180, 190, 189, 182, 243 | 177, 178, 190, 194, 175, 165, 179, 186, 177, 172, 175, 176, 173, 168, 167, 167, 164, 168, 175, 164, 244 | 149, 153, 161, 155, 148, 151, 157, 152, 140, 141, 147, 142, 137, 137, 137, 138, 142, 144, 136, 124, 245 | 123, 139, 146, 134, 128, 135, 143, 141, 134, 136, 144, 141, 135, 138, 145, 145, 142, 140, 138, 141, 246 | 146, 151, 151, 144, 142, 157, 167, 161, 157, 160, 168, 180, 183, 173, 175, 189, 195, 192, 187, 189, 247 | 200, 200, 192, 200, 209, 204, 203, 208, 212, 214, 213, 211, 215, 220, 218, 217, 219, 223, 223, 220, 248 | 221, 228, 228, 224, 225, 230, 229, 224, 224, 227, 228, 226, 226, 226, 223, 223, 223, 222, 222, 224, 249 | 224, 224, 222, 220, 220, 216, 215, 221, 220, 212, 208, 209, 212, 211, 205, 200, 199, 194, 189, 186, 250 | 183, 180, 180, 177, 170, 164, 161, 162, 161, 159, 156, 153, 150, 149, 146, 139, 136, 137, 136, 130, 251 | 124, 124, 122, 116, 113, 114, 112, 107, 106, 106, 102, 96, 98, 102, 104, 101, 94, 90, 96, 99, 252 | 97, 92, 88, 91, 92, 84, 83, 87, 84, 81, 81, 77, 78, 80, 79, 79, 78, 75, 81, 85, 253 | 77, 73, 75, 78, 84, 84, 80, 80, 79, 79, 83, 83, 79, 78, 79, 80, 77, 74, 73, 71, 254 | 69, 69, 69, 70, 68, 63, 64, 68, 69, 69, 62, 60, 66, 62, 51, 52, 60, 63, 61, 55, 255 | 56, 54, 42, 41, 48, 46, 40, 40, 40, 40, 36, 33, 36, 34, 28, 28, 29, 33, 38, 32, 256 | 25, 25, 28, 30, 28, 27, 37, 50, 48, 41, 37, 40, 53, 64, 60, 53, 57, 70, 79, 70, 257 | 61, 65, 72, 74, 72, 70, 78, 89, 88, 78, 71, 78, 91, 95, 93, 93, 91, 90, 95, 102, 258 | 105, 99, 97, 104, 104, 99, 105, 116, 115, 107, 106, 117, 124, 116, 117, 131, 134, 125, 123, 130, 259 | 139, 139, 134, 141, 149, 145, 145, 152, 155, 154, 150, 151, 160, 160, 154, 154, 157, 157, 156, 155, 260 | 155, 155, 152, 153, 156, 153, 149, 150, 150, 147, 147, 150, 153, 150, 147, 149, 150, 145, 141, 147, 261 | 153, 148, 141, 142, 148, 147, 141, 141, 147, 145, 136, 134, 139, 143, 141, 134, 131, 132, 128, 125, 262 | 128, 132, 131, 128, 124, 124, 125, 125, 126, 130, 130, 129, 131, 137, 141, 139, 135, 135, 141, 146, 263 | 149, 151, 155, 158, 160, 161, 162, 167, 172, 177, 179, 177, 177, 179, 181, 182, 185, 190, 194, 195, 264 | 195, 195, 198, 201, 203, 204, 203, 200, 198, 201, 207, 213, 216, 217, 217, 217, 218, 218, 219, 219, 265 | 219, 218, 218, 219, 219, 218, 216, 216, 216, 217, 216, 215, 214, 212, 209, 206, 204, 202, 202, 203, 266 | 206, 206, 203, 199, 196, 194, 194, 195, 195, 194, 191, 186, 181, 178, 176, 176, 177, 177, 175, 171, 267 | 167, 162, 159, 157, 156, 155, 152, 150, 149, 148, 148, 146, 143, 137, 133, 130, 129, 129, 129, 127, 268 | 123, 120, 119, 120, 122, 122, 120, 117, 116, 115, 112, 109, 106, 105, 104, 104, 106, 108, 107, 104, 269 | 102, 101, 99, 100, 101, 101, 102, 105, 107, 108, 110, 113, 111, 108, 110, 113, 111, 107, 109, 110, 270 | 105, 102, 108, 115, 115, 115, 120, 122, 117, 114, 115, 116, 115, 115, 114, 110, 105, 104, 109, 115, 271 | 115, 115, 115, 115, 110, 108, 110, 110, 108, 108, 108, 107, 106, 106, 106, 105, 103, 98, 90, 90, 272 | 101, 94, 70, 57, 61, 70, 74, 61, 42, 41, 53, 54, 37, 24, 33, 53, 39, 13, 9, 21, 273 | 37, 31, 11, 8, 27, 28, 8, 0, 10, 26, 21, 6, 6, 17, 19, 10, 7, 12, 17, 20, 274 | 21, 19, 17, 14, 10, 15, 26, 29, 30, 33, 35, 35, 29, 28, 50, 68, 58, 57, 60, 52, 275 | 53, 65, 76, 79, 71, 80, 105, 97, 77, 81, 94, 111, 123, 113, 116, 129, 117, 113, 126, 131, 276 | 144, 159, 160, 162, 157, 147, 157, 167, 170, 180, 177, 166, 170, 174, 168, 166, 171, 187, 189, 168, 277 | 171, 189, 176, 159, 170, 180, 176, 169, 166, 174, 178, 163, 155, 168, 177, 168, 156, 151, 158, 166, 278 | 160, 149, 147, 150, 150, 150, 146, 142, 147, 155, 149, 135, 133, 141, 146, 142, 133, 135, 147, 147, 279 | 135, 126, 124, 134, 145, 132, 116, 123, 132, 129, 121, 112, 117, 127, 123, 121, 127, 126, 129, 131, 280 | 118, 118, 136, 141, 135, 134, 134, 135, 136, 137, 143, 143, 136, 141, 148, 145, 145, 151, 155, 161, 281 | 165, 163, 162, 165, 169, 170, 171, 175, 181, 181, 176, 169, 167, 172, 179, 181, 182, 187, 191, 190, 282 | 186, 187, 193, 198, 203, 209, 205, 198, 200, 203, 204, 211, 213, 210, 210, 211, 210, 210, 211, 211, 283 | 210, 206, 205, 208, 207, 207, 209, 207, 206, 209, 211, 209, 206, 203, 203, 204, 205, 208, 205, 199, 284 | 194, 192, 191, 195, 197, 193, 191, 192, 187, 179, 174, 179, 187, 182, 169, 162, 160, 162, 164, 158, 285 | 152, 153, 152, 147, 145, 148, 153, 152, 143, 138, 137, 133, 133, 136, 132, 128, 129, 130, 126, 117, 286 | 111, 113, 116, 115, 113, 109, 103, 101, 101, 100, 97, 98, 103, 103, 95, 89, 90, 88, 85, 86, 287 | 88, 88, 84, 81, 83, 86, 86, 83, 80, 82, 85, 82, 79, 81, 87, 90, 86, 78, 76, 77, 288 | 77, 81, 85, 83, 80, 80, 82, 81, 75, 73, 88, 99, 89, 79, 81, 84, 86, 83, 80, 85, 289 | 92, 91, 86, 83, 84, 87, 84, 81, 84, 88, 86, 82, 84, 88, 85, 80, 82, 89, 91, 80, 290 | 67, 75, 93, 91, 74, 69, 78, 88, 84, 67, 64, 83, 93, 83, 70, 66, 71, 76, 75, 70, 291 | 68, 69, 73, 71, 64, 62, 70, 73, 68, 69, 76, 74, 66, 63, 64, 68, 69, 64, 61, 64, 292 | 65, 60, 57, 63, 74, 77, 73, 70, 70, 72, 75, 72, 66, 72, 86, 89, 79, 70, 74, 86, 293 | 93, 95, 96, 95, 91, 93, 97, 101, 109, 111, 98, 94, 106, 118, 120, 109, 101, 110, 116, 108, 294 | 110, 119, 119, 119, 118, 120, 128, 132, 132, 132, 127, 123, 131, 144, 147, 135, 124, 127, 138, 143, 295 | 139, 133, 136, 140, 137, 141, 143, 138, 144, 149, 143, 143, 149, 159, 171, 163, 146, 154, 166, 175, 296 | 182, 172, 163, 172, 174, 173, 177, 173, 176, 186, 181, 175, 178, 180, 187, 190, 179, 175, 185, 190, 297 | 187, 180, 178, 183, 189, 187, 179, 175, 178, 181, 184, 185, 176, 175, 183, 182, 177, 174, 171, 181, 298 | 191, 178, 168, 175, 181, 184, 180, 170, 176, 185, 176, 169, 171, 172, 174, 174, 172, 175, 173, 166, 299 | 167, 171, 172, 173, 172, 171, 170, 166, 160, 160, 164, 165, 163, 164, 166, 165, 161, 158, 161, 166, 300 | 165, 161, 160, 160, 161, 163, 163, 163, 164, 165, 164, 161, 162, 167, 168, 162, 160, 162, 166, 167, 301 | 164, 167, 176, 176, 167, 166, 170, 174, 173, 167, 167, 176, 177, 173, 173, 170, 167, 171, 174, 173, 302 | 173, 167, 164, 171, 171, 166, 165, 166, 169, 171, 169, 167, 169, 168, 165, 165, 167, 168, 165, 159, 303 | 158, 161, 159, 154, 150, 149, 150, 147, 139, 139, 144, 144, 140, 133, 124, 125, 129, 125, 119, 118, 304 | 117, 119, 118, 109, 106, 111, 107, 99, 96, 95, 93, 89, 80, 74, 74, 73, 72, 73, 71, 66, 305 | 64, 64, 64, 62, 57, 54, 60, 63, 59, 56, 53, 53, 59, 59, 51, 52, 62, 63, 55, 47, 306 | 44, 55, 62, 53, 47, 55, 59, 54, 48, 49, 58, 63, 56, 47, 46, 52, 56, 59, 64, 66, 307 | 65, 68, 65, 61, 67, 76, 81, 91, 92, 79, 78, 89, 96, 99, 99, 103, 108, 102, 95, 101, 308 | 106, 109, 114, 111, 105, 108, 114, 122, 128, 123, 126, 132, 122, 120, 133, 134, 129, 129, 126, 133, 309 | 135, 118, 124, 140, 129, 119, 123, 124, 135, 128, 103, 114, 127, 107, 106, 112, 104, 108, 104, 91, 310 | 99, 91, 82, 100, 93, 71, 81, 86, 79, 78, 73, 77, 83, 70, 72, 84, 72, 71, 78, 72, 311 | 76, 78, 70, 79, 88, 79, 72, 76, 87, 90, 79, 84, 99, 94, 94, 103, 102, 105, 111, 113, 312 | 119, 121, 118, 123, 126, 125, 129, 133, 137, 143, 142, 140, 143, 150, 157, 157, 155, 160, 164, 161, 313 | 164, 169, 170, 172, 178, 180, 178, 178, 181, 180, 178, 180, 184, 185, 184, 182, 186, 188, 184, 187, 314 | 196, 200, 201, 200, 202, 208, 205, 197, 205, 214, 211, 207, 209, 212, 213, 207, 204, 211, 210, 201, 315 | 201, 201, 200, 203, 201, 197, 198, 195, 191, 193, 190, 191, 194, 190, 186, 183, 176, 173, 173, 170, 316 | 166, 162, 155, 153, 151, 146, 145, 146, 142, 136, 132, 130, 130, 129, 125, 123, 122, 115, 110, 111, 317 | 114, 113, 110, 109, 115, 119, 115, 115, 118, 117, 118, 124, 126, 128, 133, 138, 137, 132, 130, 140, 318 | 150, 147, 146, 152, 157, 157, 154, 156, 162, 168, 167, 166, 168, 169, 170, 171, 169, 167, 173, 180, 319 | 181, 178, 176, 180, 184, 183, 182, 185, 187, 185, 183, 180, 180, 184, 184, 178, 175, 174, 174, 171, 320 | 165, 162, 166, 163, 157, 157, 159, 159, 157, 155, 155, 153, 149, 148, 147, 141, 138, 140, 139, 134, 321 | 125, 120, 120, 118, 114, 108, 100, 98, 97, 89, 80, 77, 75, 72, 66, 63, 69, 67, 54, 51, 322 | 54, 49, 39, 30, 33, 39, 32, 20, 17, 18, 21, 21, 17, 15, 16, 18, 22, 19, 15, 16, 323 | 15, 10, 9, 12, 16, 17, 13, 11, 12, 15, 20, 25, 22, 23, 26, 29, 34, 35, 31, 37, 324 | 50, 60, 60, 53, 59, 75, 75, 69, 77, 89, 94, 93, 90, 95, 111, 123, 125, 126, 129, 137, 325 | 143, 146, 154, 168, 175, 171, 169, 172, 180, 190, 195, 195, 200, 200, 195, 200, 209, 210, 203, 194, 326 | 200, 213, 208, 195, 195, 193, 184, 182, 183, 189, 187, 167, 161, 169, 163, 160, 164, 156, 149, 146, 327 | 140, 142, 135, 120, 132, 141, 123, 111, 108, 107, 112, 105, 97, 107, 101, 83, 82, 83, 84, 87, 328 | 78, 71, 77, 77, 78, 79, 69, 68, 73, 66, 63, 71, 72, 67, 59, 53, 62, 74, 71, 65, 329 | 64, 63, 65, 69, 71, 77, 81, 75, 75, 85, 83, 79, 88, 100, 103, 103, 105, 113, 124, 126, 330 | 130, 143, 153, 158, 163, 166, 172, 179, 180, 180, 188, 195, 198, 199, 200, 199, 202, 209, 215, 218, 331 | 217, 218, 221, 222, 224, 231, 235, 233, 230, 230, 232, 233, 234, 234, 236, 235, 234, 229, 223, 223, 332 | 227, 229, 229, 226, 222, 221, 222, 222, 222, 220, 220, 220, 215, 211, 212, 213, 209, 204, 199, 195, 333 | 190, 187, 187, 185, 178, 174, 175, 173, 164, 157, 154, 151, 144, 139, 139, 136, 126, 117, 113, 110, 334 | 107, 103, 101, 102, 102, 98, 93, 88, 87, 88, 84, 84, 89, 85, 75, 72, 75, 76, 72, 68, 335 | 73, 75, 72, 74, 76, 75, 77, 78, 79, 83, 83, 81, 81, 82, 83, 87, 87, 89, 94, 94, 336 | 95, 100, 102, 100, 103, 105, 106, 109, 111, 112, 114, 114, 117, 123, 121, 122, 128, 129, 131, 135, 337 | 136, 139, 145, 145, 148, 151, 149, 151, 153, 152, 156, 157, 152, 156, 160, 158, 161, 158, 153, 155, 338 | 151, 148, 152, 143, 133, 138, 139, 131, 122, 114, 120, 128, 117, 107, 112, 111, 100, 86, 87, 103, 339 | 103, 81, 71, 76, 79, 72, 56, 52, 68, 68, 50, 41, 40, 43, 47, 36, 29, 35, 32, 24, 340 | 27, 29, 28, 29, 25, 25, 31, 28, 26, 33, 31, 28, 32, 30, 29, 32, 31, 36, 40, 33, 341 | 34, 47, 49, 41, 35, 39, 51, 55, 49, 49, 57, 66, 72, 72, 74, 80, 85, 92, 93, 90, 342 | 96, 103, 107, 115, 118, 118, 126, 131, 129, 130, 127, 127, 135, 141, 141, 145, 148, 152, 157, 156, 343 | 160, 174, 183, 185, 190, 193, 189, 188, 193, 201, 208, 210, 211, 210, 205, 200, 203, 207, 208, 206, 344 | 201, 196, 200, 204, 199, 192, 192, 196, 193, 185, 182, 187, 187, 176, 168, 171, 175, 174, 168, 166, 345 | 168, 168, 161, 155, 158, 160, 156, 152, 147, 142, 140, 139, 136, 130, 121, 116, 116, 114, 109, 109, 346 | 110, 103, 95, 92, 96, 101, 95, 87, 89, 91, 86, 83, 83, 85, 85, 80, 78, 82, 82, 84, 347 | 87, 82, 80, 83, 85, 91, 92, 86, 87, 92, 97, 105, 107, 105, 109, 113, 115, 122, 127, 132, 348 | 135, 131, 130, 139, 142, 143, 147, 151, 155, 156, 154, 158, 166, 172, 175, 176, 179, 187, 189, 190, 349 | 191, 191, 195, 202, 203, 206, 211, 212, 211, 207, 206, 214, 219, 216, 213, 212, 214, 218, 220, 219, 350 | 216, 215, 217, 221, 222, 218, 216, 220, 222, 218, 212, 211, 214, 215, 211, 206, 208, 210, 208, 201, 351 | 193, 193, 195, 192, 188, 184, 180, 178, 171, 161, 156, 152, 147, 146, 143, 135, 129, 125, 123, 124, 352 | 119, 112, 108, 105, 100, 97, 93, 89, 87, 83, 78, 72, 69, 72, 72, 69, 66, 61, 57, 58, 353 | 53, 52, 56, 49, 45, 52, 51, 47, 45, 37, 40, 48, 44, 46, 53, 46, 42, 46, 49, 52, 354 | 48, 47, 56, 58, 56, 52, 48, 57, 64, 59, 64, 69, 71, 79, 73, 70, 85, 77, 71, 98, 355 | 104, 89, 87, 81, 86, 104, 96, 95, 113, 109, 103, 110, 103, 101, 111, 113, 120, 128, 118, 112, 356 | 113, 112, 118, 123, 119, 119, 120, 113, 106, 109, 115, 112, 112, 118, 112, 99, 99, 110, 120, 120, 357 | 110, 112, 118, 110, 104, 116, 131, 131, 115, 114, 135, 136, 108, 103, 128, 138, 122, 110, 124, 133, 358 | 116, 102, 108, 123, 133, 129, 125, 125, 118, 115, 127, 131, 128, 127, 128, 126, 111, 104, 122, 122, 359 | 98, 100, 112, 112, 105, 90, 96, 114, 98, 86, 104, 102, 98, 104, 95, 100, 107, 95, 105, 113, 360 | 95, 106, 121, 107, 106, 110, 111, 124, 114, 101, 124, 130, 119, 124, 124, 130, 141, 130, 130, 143, 361 | 138, 138, 143, 138, 148, 156, 150, 153, 152, 149, 160, 159, 154, 166, 167, 162, 168, 162, 158, 167, 362 | 161, 155, 163, 163, 163, 168, 157, 148, 160, 162, 154, 160, 167, 164, 165, 161, 157, 167, 166, 156, 363 | 164, 170, 162, 166, 174, 169, 168, 168, 167, 172, 176, 170, 173, 180, 178, 177, 182, 177, 171, 179, 364 | 188, 186, 183, 185, 189, 192, 185, 177, 186, 195, 193, 193, 193, 191, 191, 188, 184, 186, 189, 191, 365 | 192, 189, 184, 182, 181, 181, 178, 175, 177, 178, 176, 175, 170, 164, 164, 161, 159, 163, 162, 161, 366 | 163, 158, 150, 151, 155, 159, 160, 153, 152, 159, 160, 157, 157, 157, 159, 162, 159, 153, 155, 159, 367 | 163, 166, 163, 158, 160, 163, 160, 158, 157, 159, 165, 166, 162, 158, 155, 155, 157, 160, 161, 157, 368 | 157, 159, 156, 154, 155, 153, 152, 153, 149, 148, 152, 148, 145, 146, 141, 138, 143, 139, 136, }; 369 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # This is an Arduino RC engine sound generator 2 | 3 | THIS PROJECT IS DEPRECATED! See new ESP32 version: https://github.com/TheDIYGuy999/Rc_Engine_Sound_ESP32 4 | 5 | It's based on the mojoEngineSim: https://github.com/BeigeMatchbox/mojoEngineSim 6 | 7 | GitHub repo: https://github.com/TheDIYGuy999/Rc_Engine_Sound 8 | 9 | Video: https://www.youtube.com/watch?v=EaOJE_GU5pk&t=58s (showing version 1.2) 10 | 11 | STL data for 3D printed housing: https://www.thingiverse.com/thing:2814025 12 | 13 | ## Features: 14 | - Many selectable engine sounds and startup sounds for cars and trucks 15 | - Sound files up to 8bit, 16kHz, mono can be used 16 | - Works best with a PAM8403 amplifier module, connected to pin 3, via a 10kOhm potentiometer 17 | - The engine RPM is calculated according to RC signal input on pin 2 18 | - Gear shifting is simulated in "curves.h" 19 | - Use an Arduino Pro Mini 5V, 16MHz 20 | 21 | ## New in V 1.0: 22 | - Runs on an ATMega328 with 8 or 16MHz clock (RC PWM throttle mode only on 16MHz) 23 | - More engine sounds added 24 | 25 | ## New in V 1.1: 26 | - Engine sound is switched off, if there is no PWM signal detected on Pin 2. Works together with my "Micro RC" receiver. 27 | 28 | ## New in V 1.2: 29 | - PWM throttle range now adjustable in settings.h 30 | 31 | ## New in V 1.3: 32 | - code cleaned up, removed unused SPI and digipot support, removed 8MHz support (was for SPI mode only) 33 | - Scania V8 and URAL-4320 V8 Diesel sounds added, including start sounds 34 | - fader for engine switch off phase added 35 | - throttle auto zero calibration added 36 | - simulated gearbox shifting points in "curves.h" 37 | - boolean variable "engineManualOnOff" ensures compatibility with older projects (Mustang 68) 38 | - engine is switching on or off depending on the throttle input or the presence of the RC signal (see above) 39 | 40 | ## New in V 1.31: 41 | - mapThrottle() cleaned up, scaling bug fixed, throttle auto zero calibration now working correctly 42 | - adjust "pulseSpan" in "settings.h" according to your ESC / receiver settings 43 | - schematic and pictures added 44 | 45 | ## New in V 1.32: 46 | - added the requested V8 trophy truck sound 47 | - optimized the generic "V8" sound to fit the memory in combination with the Ural start sound 48 | 49 | ## New in V 1.33: 50 | - added the Defender V8 sounds (I forgot to upload them) 51 | 52 | ## Ho to create new sound arrays: 53 | 54 | ### Audacity: 55 | - Import the sound file you want in Audacity 56 | - Convert it to mono, if needed 57 | - on the bottom left, select project frequency 16000kHz 58 | - cut the sound to one engine cycle. Zoom in to find the exact zero crossing 59 | - adjust the volume, so that the entire range is used 60 | - select > export audio > WAV > 8-bit-PCM 61 | - note, that the files should be as short as possible: around 0.3s for idle and 1s for start 62 | 63 | ### Loading and compiling wav2c (this is for OS X): 64 | - download it from: https://github.com/olleolleolle/wav2c 65 | - compile it in terminal with the following steps: 66 | - type "gcc" and space 67 | - drag and drop the files "main.c", wavdata.h", wavdata.c" into the terminal window. 68 | - press enter -> the executable is then compiled and stored as "youruserdirectory/a.out" 69 | 70 | ### Processing the new header file with your sound: 71 | - copy an existing "enginesound.h" file, rename it with your new engine name 72 | - drag and drop "a.out" into your terminal 73 | - drag and drop the exported WAV file into your terminal 74 | - drag and drop your copied "enginesound.h" file into your terminal 75 | - type "idle" for the idle file or "start" for the start file 76 | - press enter -> the "enginesound.h" file is now overwritten with the new sound data. 77 | - uncomment the line "sampleRate" 78 | - change "signed char" to "unsigned char" 79 | - include this file in "settings.h" 80 | 81 | ### Compiling the new sketch: 82 | - compile and upload the sketch in Arduino IDE 83 | - the new engine should now run... 84 | 85 | ## Schematic: 86 | ![](https://github.com/TheDIYGuy999/Rc_Engine_Sound/blob/master/wiring.jpg) 87 | 88 | ## Pictures (including optional additional filtering): 89 | ![](https://github.com/TheDIYGuy999/Rc_Engine_Sound/blob/master/top.jpg) 90 | 91 | ![](https://github.com/TheDIYGuy999/Rc_Engine_Sound/blob/master/bottom.jpg) 92 | 93 | 94 | 2017 - 2019, TheDIYGuy999 95 | -------------------------------------------------------------------------------- /Rc_Engine_Sound.ino: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | This code was quick and dirty, based on a PCM audio example in the 4 | arduino playground: http://playground.arduino.cc/Code/PCMAudio 5 | 6 | It's been heavely modified for use with RC to generate something that's 7 | a bit like an engine sound. I've started work on making the program 8 | readable, still some to do though. 9 | https://github.com/BeigeMatchbox/mojoEngineSim/blob/master/README.md 10 | 11 | Changes, done by TheDIYGUY999 2017 - 2019: https://github.com/TheDIYGuy999/Rc_Engine_Sound 12 | - more engine sounds added 13 | - removed SPI throttle mode, digipot support (I had no use for it in an RC vehicle) 14 | - added engine start sound 15 | - added engine switch off (fader) 16 | - added throttle zero autocalibration 17 | - added simulated engine shifting points 18 | */ 19 | 20 | // All the required vehicle specific settings are done in settings.h! 21 | #include "settings.h" // <<------- SETTINGS 22 | 23 | const float codeVersion = 1.33; // Software revision 24 | 25 | // 26 | // ======================================================================================================= 27 | // LIRBARIES & TABS 28 | // ======================================================================================================= 29 | // 30 | 31 | #include "curves.h" // load nonlinear throttle curve arrays 32 | 33 | // 34 | // ======================================================================================================= 35 | // PIN ASSIGNMENTS & GLOBAL VARIABLES (Do not play around here) 36 | // ======================================================================================================= 37 | // 38 | 39 | #define SPEAKER 3 // Amplifier PAM8403 connected to pin 3 (via 10kOhm potentiometer) 40 | #define THROTTLE_INPUT 2 // RC Signal connected to pin 2 41 | 42 | #define FREQ 16000000L // 16MHz clock frequency 43 | 44 | // Define global variables 45 | volatile uint16_t currentSmpleRate = BASE_RATE; // Current playback rate, this is adjusted depending on engine RPM 46 | volatile uint16_t fixedSmpleRate = FREQ / BASE_RATE; // Current playback rate, this is adjusted depending on engine RPM 47 | volatile uint8_t engineState = 0; // 0 = off, 1 = starting, 2 = running, 3 = stopping 48 | 49 | volatile boolean engineOn = false; // Signal for engine on / off 50 | 51 | volatile uint16_t curEngineSample; // Index of currently loaded engine sample 52 | volatile uint16_t curStartSample; // Index of currently loaded start sample 53 | volatile uint16_t curHornSample; // Index of currently loaded horn sample 54 | 55 | uint16_t currentThrottle = 0; // 0 - 1000, a top value of 1023 is acceptable 56 | volatile int16_t pulseWidth = 0; // Current RC signal pulse width 57 | volatile boolean pulseAvailable; // RC signal pulses are coming in 58 | 59 | int16_t pulseMaxNeutral; // PWM throttle configuration storage variables 60 | int16_t pulseMinNeutral; 61 | int16_t pulseMax; 62 | int16_t pulseMin; 63 | int16_t pulseMaxLimit; 64 | int16_t pulseMinLimit; 65 | 66 | // 67 | // ======================================================================================================= 68 | // MAIN ARDUINO SETUP (1x during startup) 69 | // ======================================================================================================= 70 | // 71 | 72 | void setup() { 73 | 74 | attachInterrupt(0, getPulsewidth, CHANGE); 75 | 76 | // wait for RC receiver to initialize 77 | delay(1000); 78 | 79 | // then compute the RC channel offset (only, if "engineManualOnOff" inactive) 80 | if (!engineManualOnOff) pulseZero = pulseWidth; 81 | 82 | // Calculate throttle range 83 | pulseMaxNeutral = pulseZero + pulseNeutral; 84 | pulseMinNeutral = pulseZero - pulseNeutral; 85 | pulseMax = pulseZero + pulseSpan; 86 | pulseMin = pulseZero - pulseSpan; 87 | pulseMaxLimit = pulseZero + pulseLimit; 88 | pulseMinLimit = pulseZero - pulseLimit; 89 | 90 | // setup complete, so start making sounds 91 | setupPcm(); 92 | } 93 | 94 | // 95 | // ======================================================================================================= 96 | // PCM setup 97 | // ======================================================================================================= 98 | // 99 | 100 | void setupPcm() { 101 | 102 | pinMode(SPEAKER, OUTPUT); 103 | 104 | // Set up Timer 2 to do pulse width modulation on the speaker pin. 105 | ASSR &= ~(_BV(EXCLK) | _BV(AS2)); // Use internal clock (datasheet p.160) 106 | 107 | TCCR2A |= _BV(WGM21) | _BV(WGM20); // Set fast PWM mode (p.157) 108 | TCCR2B &= ~_BV(WGM22); 109 | 110 | TCCR2A = (TCCR2A | _BV(COM2B1)) & ~_BV(COM2B0); // Do non-inverting PWM on pin OC2B (p.155) 111 | TCCR2A &= ~(_BV(COM2A1) | _BV(COM2A0)); // On the Arduino this is pin 3. 112 | TCCR2B = (TCCR2B & ~(_BV(CS12) | _BV(CS11))) | _BV(CS10); // No prescaler (p.158) 113 | 114 | OCR2B = pgm_read_byte(&idle_data[0]); // Set initial pulse width to the first sample. 115 | 116 | // Set up Timer 1 to send a sample every interrupt. 117 | cli(); 118 | 119 | TCCR1B = (TCCR1B & ~_BV(WGM13)) | _BV(WGM12); // Set CTC mode (Clear Timer on Compare Match) (p.133) 120 | TCCR1A = TCCR1A & ~(_BV(WGM11) | _BV(WGM10)); // Have to set OCR1A *after*, otherwise it gets reset to 0! 121 | 122 | TCCR1B = (TCCR1B & ~(_BV(CS12) | _BV(CS11))) | _BV(CS10); // No prescaler (p.134) 123 | 124 | OCR1A = FREQ / BASE_RATE; // Set the compare register (OCR1A). 125 | // OCR1A is a 16-bit register, so we have to do this with 126 | // interrupts disabled to be safe. 127 | 128 | TIMSK1 |= _BV(OCIE1A); // Enable interrupt when TCNT1 == OCR1A (p.136) 129 | 130 | 131 | curEngineSample = 0; 132 | curStartSample = 0; 133 | //curHornSample = 0; 134 | 135 | sei(); 136 | } 137 | 138 | // 139 | // ======================================================================================================= 140 | // MAP PULSEWIDTH TO THROTTLE 141 | // ======================================================================================================= 142 | // 143 | 144 | void mapThrottle() { 145 | 146 | // Input is around 1000 - 2000us, output 0-500 for forward and backwards 147 | 148 | // check if the pulsewidth looks like a servo pulse 149 | if (pulseWidth > pulseMinLimit && pulseWidth < pulseMaxLimit) { 150 | if (pulseWidth < pulseMin) pulseWidth = pulseMin; // Constrain the value 151 | if (pulseWidth > pulseMax) pulseWidth = pulseMax; 152 | 153 | // calculate a throttle value from the pulsewidth signal 154 | if (pulseWidth > pulseMaxNeutral) currentThrottle = map(pulseWidth, pulseMaxNeutral, pulseMax, 0, 500); 155 | else if (pulseWidth < pulseMinNeutral) currentThrottle = map(pulseWidth, pulseMinNeutral, pulseMin, 0, 500); 156 | else currentThrottle = 0; 157 | } 158 | } 159 | 160 | // 161 | // ======================================================================================================= 162 | // ENGINE MASS SIMULATION 163 | // ======================================================================================================= 164 | // 165 | 166 | void engineMassSimulation() { 167 | 168 | static int16_t mappedThrottle = 0; 169 | static int16_t currentRpm = 0; 170 | static unsigned long throtMillis; 171 | 172 | if (millis() - throtMillis > 5) { // Every 5ms 173 | throtMillis = millis(); 174 | 175 | // compute unlinear throttle curve 176 | mappedThrottle = reMap(curveShifting, currentThrottle); 177 | 178 | // Accelerate engine 179 | if (mappedThrottle + acc > currentRpm && engineState == 2) { 180 | currentRpm += acc; 181 | if (currentRpm > maxRpm) currentRpm = maxRpm; 182 | } 183 | 184 | // Decelerate engine 185 | else if (mappedThrottle - dec < currentRpm) { 186 | currentRpm -= dec; 187 | if (currentRpm < minRpm) currentRpm = minRpm; 188 | } 189 | 190 | // Speed (sample rate) output 191 | currentSmpleRate = FREQ / (BASE_RATE + long(currentRpm * TOP_SPEED_MULTIPLIER) ); 192 | } 193 | } 194 | 195 | // 196 | // ======================================================================================================= 197 | // SWITCH ENGINE ON OR OFF 198 | // ======================================================================================================= 199 | // 200 | 201 | void engineOnOff() { 202 | 203 | static unsigned long pulseDelayMillis; 204 | static unsigned long idleDelayMillis; 205 | 206 | if (engineManualOnOff) { // Engine manually switched on or off depending on presence of servo pulses 207 | if (pulseAvailable) pulseDelayMillis = millis(); // reset delay timer, if pulses are available 208 | 209 | if (millis() - pulseDelayMillis > 100) { 210 | engineOn = false; // after delay, switch engine off 211 | } 212 | else engineOn = true; 213 | } 214 | else { // Engine automatically switched on or off depending on throttle position and 15s delay timne 215 | if (currentThrottle > 80) idleDelayMillis = millis(); // reset delay timer, if throttle not in neutral 216 | 217 | if (millis() - idleDelayMillis > 15000) { 218 | engineOn = false; // after delay, switch engine off 219 | } 220 | else { 221 | if (currentThrottle > 100) engineOn = true; 222 | } 223 | } 224 | } 225 | 226 | 227 | 228 | // 229 | // ======================================================================================================= 230 | // MAIN LOOP 231 | // ======================================================================================================= 232 | // 233 | 234 | void loop() { 235 | 236 | // Map pulsewith to throttle 237 | mapThrottle(); 238 | 239 | // Simulate engine mass, generate RPM signal 240 | engineMassSimulation(); 241 | 242 | // Switch engine on or off 243 | engineOnOff(); 244 | } 245 | 246 | // 247 | // ======================================================================================================= 248 | // INTERRUPTS 249 | // ======================================================================================================= 250 | // 251 | 252 | // Uses a pin change interrupt and micros() to get the RC signal pulsewidth at pin 2 ---------------- 253 | void getPulsewidth() { 254 | 255 | unsigned long currentMicros = micros(); 256 | boolean currentState = PIND & B00000100; // Pin 2 is PIND Bit 2 ( = digitalRead(2) ) 257 | static unsigned long prevMicros = 0; 258 | static boolean lastState = LOW; 259 | 260 | if (lastState == LOW && currentState == HIGH) { // Rising edge 261 | prevMicros = currentMicros; 262 | pulseAvailable = true; 263 | lastState = currentState; 264 | } 265 | else if (lastState == HIGH && currentState == LOW) { // Falling edge 266 | pulseWidth = currentMicros - prevMicros; 267 | pulseAvailable = false; 268 | lastState = currentState; 269 | } 270 | } 271 | 272 | 273 | // This is the main sound playback interrupt, keep this nice and tight!! ------------------------------ 274 | ISR(TIMER1_COMPA_vect) { 275 | 276 | static float attenuator; // Float required for finer granularity! 277 | 278 | switch (engineState) { 279 | 280 | case 0: // off ---- 281 | OCR1A = fixedSmpleRate; // fixed sample rate (speed)! 282 | OCR2B = 0; 283 | if (engineOn) engineState = 1; 284 | break; 285 | 286 | case 1: // starting ---- 287 | if (curStartSample >= start_length) { // Loop the sample 288 | curStartSample = 0; 289 | engineState = 2; 290 | } 291 | OCR1A = fixedSmpleRate; // fixed sample rate (speed)! 292 | OCR2B = pgm_read_byte(&start_data[curStartSample]); 293 | curStartSample++; 294 | break; 295 | 296 | case 2: // running ---- 297 | if (curEngineSample >= idle_length) { // Loop the sample 298 | curEngineSample = 0; 299 | attenuator = 1; 300 | } 301 | OCR1A = currentSmpleRate; // variable sample rate (RPM)! 302 | OCR2B = pgm_read_byte(&idle_data[curEngineSample]); 303 | curEngineSample++; 304 | if (!engineOn) { 305 | engineState = 3; 306 | } 307 | break; 308 | 309 | case 3: // stopping ---- 310 | if (curEngineSample >= idle_length) { // Loop the sample 311 | curEngineSample = 0; 312 | } 313 | 314 | OCR1A = fixedSmpleRate; 315 | //OCR1A = fixedSmpleRate * attenuator; // engine slowing down 316 | OCR2B = pgm_read_byte(&idle_data[curEngineSample]) / attenuator; 317 | curEngineSample++; 318 | attenuator += 0.001; // fade engine sound out 0.002 319 | if (attenuator >= 20) { // 3 - 20 320 | engineOn = false; 321 | if (!engineOn) engineState = 0; // Important: ensure, that engine is off, before we go back to "starting"!! 322 | } 323 | break; 324 | 325 | } // end of switch case 326 | } 327 | -------------------------------------------------------------------------------- /ScaniaV8Idle.h: -------------------------------------------------------------------------------- 1 | // idle sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 4784; 5 | 6 | const unsigned char idle_data[] PROGMEM ={126, 7 | 126, 100, 71, 80, 93, 75, 93, 137, 167, 163, 148, 152, 151, 151, 135, 141, 139, 137, 132, 119, 8 | 114, 148, 166, 151, 149, 144, 150, 139, 130, 98, 87, 115, 128, 102, 82, 71, 48, 70, 88, 108, 9 | 116, 117, 100, 109, 148, 170, 197, 182, 161, 179, 160, 144, 133, 125, 138, 129, 109, 77, 94, 108, 10 | 108, 132, 133, 123, 127, 123, 115, 107, 105, 113, 119, 117, 119, 115, 85, 89, 109, 133, 138, 129, 11 | 131, 148, 166, 168, 158, 170, 175, 151, 155, 155, 158, 154, 144, 136, 105, 91, 85, 95, 89, 78, 12 | 92, 102, 137, 160, 168, 159, 141, 154, 158, 163, 167, 166, 157, 134, 137, 144, 129, 104, 96, 112, 13 | 134, 157, 151, 158, 182, 170, 184, 189, 180, 158, 133, 148, 133, 116, 100, 118, 126, 120, 121, 87, 14 | 101, 109, 128, 149, 140, 121, 102, 120, 117, 94, 66, 45, 58, 68, 79, 84, 78, 84, 89, 100, 15 | 92, 103, 110, 105, 109, 121, 132, 119, 125, 128, 124, 109, 119, 112, 116, 125, 100, 101, 105, 124, 16 | 126, 123, 129, 114, 124, 133, 142, 156, 164, 172, 152, 154, 141, 121, 116, 110, 127, 132, 131, 138, 17 | 148, 144, 146, 155, 177, 174, 169, 177, 176, 160, 149, 150, 143, 141, 117, 119, 128, 120, 96, 95, 18 | 107, 114, 135, 134, 122, 117, 123, 99, 107, 121, 141, 150, 141, 134, 102, 121, 131, 135, 109, 90, 19 | 102, 116, 136, 142, 151, 155, 145, 135, 120, 113, 118, 124, 134, 113, 127, 122, 130, 138, 121, 135, 20 | 150, 169, 157, 163, 190, 170, 137, 137, 153, 161, 147, 146, 142, 153, 151, 142, 149, 144, 124, 93, 21 | 84, 106, 101, 88, 79, 67, 54, 49, 69, 87, 112, 124, 141, 144, 151, 145, 153, 164, 183, 163, 22 | 133, 110, 97, 104, 96, 109, 115, 115, 85, 122, 172, 194, 173, 171, 159, 143, 134, 125, 140, 115, 23 | 126, 115, 84, 65, 69, 99, 111, 105, 103, 113, 124, 131, 162, 176, 165, 110, 86, 126, 133, 126, 24 | 146, 145, 119, 123, 126, 122, 102, 106, 135, 161, 165, 135, 117, 119, 126, 141, 168, 174, 133, 137, 25 | 149, 133, 122, 83, 90, 106, 99, 88, 75, 86, 96, 128, 167, 174, 169, 152, 142, 150, 159, 169, 26 | 166, 153, 149, 143, 139, 112, 97, 82, 73, 93, 85, 91, 89, 125, 157, 165, 125, 96, 102, 111, 27 | 151, 155, 166, 138, 110, 93, 116, 128, 130, 140, 146, 183, 185, 184, 178, 161, 142, 162, 153, 131, 28 | 123, 125, 132, 96, 62, 57, 59, 55, 64, 98, 110, 99, 94, 118, 128, 115, 132, 112, 119, 117, 29 | 129, 159, 160, 160, 133, 154, 143, 132, 130, 108, 115, 116, 115, 124, 130, 141, 155, 141, 143, 121, 30 | 131, 143, 172, 178, 134, 89, 62, 111, 126, 139, 165, 176, 148, 144, 155, 157, 142, 149, 168, 177, 31 | 148, 110, 129, 125, 126, 97, 72, 81, 115, 145, 164, 141, 125, 118, 120, 117, 125, 141, 133, 150, 32 | 117, 90, 100, 104, 115, 110, 95, 98, 86, 104, 129, 135, 137, 144, 131, 115, 131, 144, 151, 136, 33 | 134, 115, 87, 95, 126, 152, 130, 142, 137, 161, 191, 172, 177, 143, 174, 161, 149, 139, 103, 111, 34 | 122, 110, 85, 96, 128, 146, 132, 128, 119, 131, 114, 150, 148, 115, 117, 118, 131, 107, 107, 133, 35 | 140, 142, 153, 160, 142, 103, 108, 107, 126, 124, 130, 117, 112, 121, 126, 120, 106, 149, 168, 153, 36 | 133, 150, 133, 133, 120, 124, 101, 80, 89, 76, 90, 111, 134, 154, 159, 151, 146, 114, 112, 107, 37 | 130, 124, 120, 116, 101, 92, 89, 106, 131, 143, 141, 157, 133, 128, 106, 132, 143, 134, 114, 116, 38 | 155, 129, 126, 114, 113, 99, 102, 96, 112, 128, 127, 132, 111, 122, 127, 128, 110, 119, 125, 133, 39 | 120, 109, 122, 125, 123, 107, 112, 98, 120, 127, 130, 120, 118, 128, 119, 138, 131, 120, 126, 125, 40 | 126, 142, 128, 119, 120, 114, 125, 149, 184, 202, 203, 188, 179, 166, 142, 130, 137, 140, 116, 127, 41 | 117, 129, 141, 133, 133, 120, 82, 23, 52, 90, 118, 124, 131, 124, 133, 157, 170, 166, 159, 149, 42 | 146, 168, 133, 123, 125, 169, 176, 151, 162, 150, 118, 111, 110, 127, 109, 85, 89, 110, 155, 166, 43 | 157, 116, 128, 118, 90, 89, 104, 124, 141, 117, 109, 99, 86, 102, 93, 102, 111, 119, 144, 132, 44 | 148, 169, 134, 131, 136, 175, 172, 191, 178, 136, 131, 117, 114, 108, 88, 102, 116, 104, 111, 100, 45 | 104, 88, 115, 137, 134, 148, 148, 175, 167, 120, 138, 127, 105, 132, 153, 139, 156, 172, 174, 180, 46 | 138, 105, 87, 112, 127, 137, 109, 83, 84, 110, 114, 76, 57, 68, 99, 100, 116, 154, 151, 118, 47 | 106, 98, 95, 83, 92, 100, 128, 151, 159, 151, 153, 176, 170, 147, 121, 134, 161, 177, 142, 137, 48 | 142, 119, 109, 97, 86, 80, 106, 143, 144, 140, 133, 126, 118, 109, 103, 101, 125, 118, 122, 141, 49 | 119, 132, 139, 130, 124, 123, 138, 119, 132, 137, 146, 145, 140, 154, 172, 180, 161, 131, 122, 163, 50 | 145, 129, 140, 141, 143, 149, 170, 163, 144, 126, 110, 108, 112, 135, 135, 116, 114, 117, 125, 118, 51 | 119, 132, 123, 114, 109, 109, 111, 120, 140, 124, 121, 125, 136, 161, 164, 173, 172, 166, 152, 151, 52 | 146, 127, 109, 97, 102, 101, 107, 88, 94, 97, 85, 84, 90, 111, 125, 139, 129, 117, 116, 128, 53 | 145, 153, 127, 107, 129, 152, 132, 129, 142, 139, 146, 133, 94, 76, 86, 94, 115, 123, 125, 123, 54 | 122, 137, 158, 162, 152, 125, 116, 113, 128, 124, 115, 129, 115, 119, 133, 140, 124, 131, 136, 129, 55 | 113, 117, 133, 150, 149, 139, 145, 139, 137, 143, 143, 128, 127, 129, 153, 150, 159, 157, 154, 170, 56 | 142, 125, 113, 112, 134, 138, 140, 159, 149, 131, 119, 103, 78, 76, 105, 115, 94, 85, 84, 76, 57 | 90, 114, 131, 121, 130, 124, 125, 126, 116, 130, 119, 117, 111, 101, 98, 92, 118, 145, 136, 135, 58 | 136, 132, 149, 153, 161, 152, 133, 138, 152, 145, 124, 118, 115, 128, 112, 91, 106, 132, 137, 133, 59 | 136, 123, 130, 129, 127, 135, 132, 119, 104, 120, 118, 97, 107, 106, 115, 126, 131, 136, 127, 124, 60 | 141, 133, 117, 119, 112, 116, 143, 186, 160, 172, 202, 185, 156, 139, 125, 95, 96, 93, 69, 75, 61 | 72, 50, 71, 96, 102, 86, 122, 159, 159, 180, 189, 166, 159, 163, 160, 124, 130, 159, 153, 162, 62 | 163, 154, 145, 161, 158, 164, 148, 112, 105, 83, 67, 43, 68, 101, 97, 110, 145, 161, 146, 163, 63 | 157, 159, 172, 165, 155, 163, 191, 193, 155, 153, 157, 122, 106, 92, 101, 102, 123, 134, 128, 127, 64 | 121, 109, 91, 100, 82, 64, 85, 88, 89, 130, 172, 152, 156, 194, 175, 169, 163, 133, 125, 124, 65 | 97, 103, 128, 134, 139, 159, 175, 111, 64, 92, 99, 79, 90, 93, 102, 122, 137, 166, 152, 132, 66 | 122, 120, 149, 135, 147, 151, 127, 141, 125, 116, 93, 76, 83, 96, 106, 102, 133, 123, 114, 139, 67 | 140, 132, 108, 115, 121, 98, 107, 132, 134, 135, 122, 127, 123, 109, 135, 145, 164, 161, 151, 130, 68 | 105, 93, 85, 103, 129, 133, 131, 137, 113, 131, 124, 103, 110, 140, 166, 168, 163, 137, 157, 154, 69 | 139, 139, 151, 153, 139, 159, 169, 137, 96, 97, 89, 84, 76, 71, 95, 110, 109, 97, 130, 139, 70 | 157, 168, 163, 196, 203, 190, 166, 149, 143, 145, 147, 155, 141, 135, 101, 109, 116, 102, 121, 142, 71 | 134, 88, 70, 79, 109, 100, 112, 134, 157, 167, 161, 162, 117, 65, 78, 102, 100, 109, 136, 128, 72 | 127, 125, 119, 122, 108, 119, 122, 118, 92, 89, 98, 96, 97, 107, 107, 115, 102, 105, 136, 144, 73 | 119, 132, 162, 175, 208, 195, 188, 174, 158, 132, 113, 113, 101, 117, 151, 167, 172, 166, 139, 126, 74 | 133, 119, 106, 128, 134, 126, 133, 123, 121, 149, 140, 117, 146, 146, 127, 133, 121, 127, 126, 142, 75 | 147, 133, 116, 95, 93, 92, 82, 74, 96, 103, 107, 108, 108, 110, 121, 144, 154, 140, 118, 124, 76 | 130, 112, 93, 86, 96, 113, 107, 114, 122, 120, 116, 118, 127, 113, 124, 141, 137, 135, 157, 159, 77 | 148, 142, 116, 114, 107, 85, 81, 86, 87, 111, 154, 148, 145, 141, 128, 150, 157, 179, 186, 196, 78 | 201, 178, 161, 156, 161, 142, 129, 112, 108, 99, 92, 83, 94, 91, 86, 100, 98, 122, 133, 134, 79 | 139, 135, 128, 111, 114, 135, 136, 123, 122, 137, 119, 86, 79, 122, 150, 139, 140, 165, 139, 118, 80 | 121, 116, 133, 144, 146, 123, 131, 132, 132, 142, 170, 219, 211, 174, 133, 125, 137, 160, 167, 147, 81 | 158, 164, 150, 138, 114, 105, 120, 128, 106, 81, 100, 98, 94, 85, 93, 91, 121, 138, 141, 162, 82 | 167, 164, 147, 163, 168, 141, 100, 91, 74, 119, 122, 109, 92, 110, 108, 136, 153, 121, 132, 151, 83 | 200, 165, 188, 149, 141, 149, 118, 83, 73, 72, 106, 132, 112, 108, 107, 119, 103, 151, 128, 134, 84 | 163, 137, 151, 164, 136, 129, 68, 68, 123, 109, 112, 121, 156, 137, 111, 104, 111, 106, 67, 87, 85 | 113, 126, 135, 137, 157, 140, 150, 156, 131, 110, 99, 115, 116, 103, 102, 113, 113, 126, 134, 136, 86 | 143, 114, 110, 112, 116, 138, 151, 156, 128, 135, 116, 116, 120, 104, 103, 115, 127, 126, 147, 143, 87 | 141, 133, 117, 108, 127, 105, 102, 104, 113, 119, 101, 121, 151, 186, 187, 190, 168, 166, 167, 177, 88 | 155, 100, 100, 116, 116, 112, 118, 92, 114, 112, 102, 116, 128, 126, 104, 118, 158, 156, 120, 117, 89 | 111, 118, 87, 81, 88, 99, 105, 90, 108, 106, 116, 125, 146, 145, 137, 150, 152, 137, 121, 98, 90 | 127, 150, 139, 129, 121, 139, 148, 152, 148, 163, 152, 159, 172, 189, 209, 212, 192, 161, 165, 142, 91 | 129, 120, 115, 123, 108, 103, 97, 78, 96, 79, 63, 78, 101, 135, 129, 136, 139, 154, 171, 169, 92 | 154, 144, 149, 135, 114, 90, 91, 90, 92, 75, 81, 116, 146, 170, 150, 134, 91, 97, 107, 92, 93 | 99, 107, 98, 64, 64, 93, 113, 129, 136, 111, 102, 116, 146, 161, 164, 169, 187, 183, 160, 155, 94 | 169, 168, 126, 110, 120, 145, 133, 97, 103, 150, 180, 159, 154, 141, 131, 142, 157, 164, 148, 133, 95 | 142, 146, 141, 160, 167, 171, 145, 138, 115, 92, 82, 83, 95, 77, 71, 47, 54, 68, 92, 100, 96 | 98, 84, 93, 117, 131, 143, 163, 164, 115, 130, 123, 140, 131, 127, 127, 101, 107, 127, 143, 136, 97 | 157, 164, 154, 132, 116, 105, 111, 113, 138, 145, 142, 125, 128, 132, 131, 144, 138, 140, 107, 95, 98 | 100, 113, 91, 103, 119, 136, 138, 131, 114, 99, 105, 102, 114, 98, 117, 109, 115, 105, 89, 95, 99 | 108, 118, 125, 110, 111, 130, 150, 171, 166, 160, 136, 168, 182, 200, 178, 149, 139, 131, 140, 145, 100 | 152, 149, 141, 129, 145, 136, 125, 131, 127, 117, 155, 168, 177, 171, 152, 158, 165, 187, 184, 187, 101 | 150, 149, 142, 140, 140, 116, 115, 82, 69, 86, 103, 89, 92, 73, 86, 90, 103, 93, 77, 91, 102 | 89, 100, 94, 113, 142, 138, 126, 156, 144, 155, 158, 177, 192, 191, 180, 146, 153, 160, 155, 130, 103 | 93, 106, 131, 127, 135, 90, 105, 80, 67, 112, 123, 129, 111, 119, 135, 153, 152, 141, 110, 91, 104 | 101, 135, 145, 124, 117, 110, 118, 157, 146, 132, 122, 107, 140, 129, 88, 95, 131, 139, 122, 80, 105 | 79, 110, 127, 109, 103, 102, 92, 96, 121, 155, 156, 168, 184, 181, 151, 131, 99, 89, 102, 90, 106 | 106, 106, 77, 99, 103, 92, 76, 71, 134, 126, 123, 126, 115, 108, 94, 115, 120, 146, 149, 202, 107 | 210, 179, 161, 136, 158, 134, 112, 149, 188, 201, 196, 167, 154, 115, 110, 116, 117, 139, 125, 98, 108 | 99, 116, 128, 122, 92, 99, 113, 89, 72, 83, 108, 168, 150, 138, 135, 126, 128, 105, 134, 129, 109 | 108, 102, 88, 99, 147, 150, 132, 103, 97, 115, 141, 129, 127, 150, 134, 132, 128, 150, 130, 128, 110 | 161, 183, 158, 145, 149, 142, 155, 157, 174, 182, 176, 200, 224, 210, 178, 142, 158, 149, 137, 103, 111 | 71, 85, 98, 110, 112, 101, 102, 116, 127, 156, 137, 121, 114, 130, 103, 102, 116, 112, 131, 99, 112 | 97, 75, 78, 106, 115, 110, 96, 95, 96, 114, 122, 120, 100, 77, 91, 95, 113, 138, 150, 173, 113 | 155, 155, 170, 164, 152, 151, 136, 126, 101, 105, 111, 85, 95, 124, 123, 123, 135, 123, 132, 117, 114 | 139, 160, 160, 162, 149, 150, 137, 131, 140, 140, 158, 146, 141, 142, 127, 140, 139, 147, 129, 124, 115 | 124, 113, 95, 99, 108, 102, 96, 111, 113, 100, 111, 127, 148, 140, 139, 138, 132, 125, 131, 131, 116 | 133, 137, 138, 161, 144, 127, 130, 132, 109, 116, 131, 117, 108, 94, 101, 108, 105, 113, 133, 126, 117 | 126, 145, 175, 176, 175, 198, 196, 179, 170, 155, 148, 150, 149, 141, 106, 91, 74, 85, 106, 116, 118 | 115, 123, 136, 129, 124, 125, 115, 97, 113, 137, 137, 130, 142, 144, 148, 133, 119, 109, 106, 108, 119 | 99, 114, 117, 103, 104, 105, 91, 86, 65, 83, 87, 93, 121, 112, 117, 110, 127, 159, 169, 184, 120 | 175, 170, 206, 184, 160, 150, 149, 145, 115, 110, 86, 127, 140, 110, 130, 136, 133, 106, 115, 103, 121 | 86, 68, 35, 73, 105, 119, 123, 112, 124, 150, 164, 157, 148, 159, 154, 155, 133, 137, 133, 102, 122 | 124, 126, 99, 76, 78, 69, 67, 89, 106, 121, 127, 119, 118, 143, 184, 186, 160, 152, 171, 170, 123 | 151, 162, 156, 165, 151, 131, 159, 167, 164, 130, 141, 129, 92, 102, 110, 156, 144, 102, 86, 105, 124 | 138, 157, 149, 164, 190, 154, 118, 115, 137, 158, 174, 176, 168, 161, 152, 117, 107, 124, 122, 114, 125 | 121, 135, 152, 154, 164, 139, 108, 82, 65, 76, 91, 138, 149, 141, 114, 101, 89, 82, 94, 109, 126 | 116, 99, 69, 85, 87, 93, 94, 83, 131, 162, 141, 133, 160, 147, 134, 106, 93, 92, 109, 130, 127 | 157, 148, 132, 160, 173, 172, 167, 160, 140, 143, 173, 179, 148, 141, 126, 114, 81, 57, 81, 105, 128 | 103, 95, 125, 160, 150, 148, 149, 107, 105, 120, 123, 110, 113, 145, 136, 101, 83, 94, 102, 101, 129 | 107, 88, 105, 107, 101, 129, 145, 151, 121, 98, 85, 95, 125, 151, 137, 145, 175, 171, 150, 160, 130 | 194, 193, 179, 166, 155, 137, 122, 132, 175, 142, 90, 107, 121, 147, 154, 138, 146, 137, 124, 112, 131 | 113, 89, 100, 126, 128, 110, 86, 111, 139, 165, 144, 143, 145, 154, 160, 131, 99, 82, 106, 118, 132 | 98, 71, 72, 113, 146, 136, 136, 138, 163, 185, 176, 174, 159, 141, 156, 139, 120, 110, 109, 135, 133 | 117, 117, 126, 126, 132, 150, 157, 163, 167, 177, 202, 173, 126, 104, 102, 104, 92, 61, 83, 106, 134 | 130, 145, 143, 129, 128, 135, 114, 115, 110, 142, 135, 119, 113, 121, 121, 142, 158, 158, 138, 110, 135 | 118, 104, 114, 107, 118, 108, 93, 99, 100, 94, 87, 118, 152, 149, 149, 150, 141, 126, 101, 108, 136 | 130, 126, 122, 118, 100, 93, 105, 131, 117, 101, 109, 127, 125, 141, 150, 124, 127, 133, 151, 135, 137 | 121, 130, 127, 109, 121, 140, 140, 148, 156, 139, 125, 132, 131, 143, 129, 127, 118, 101, 103, 126, 138 | 134, 127, 124, 122, 122, 99, 108, 109, 114, 113, 126, 143, 138, 132, 130, 130, 118, 114, 110, 114, 139 | 113, 108, 108, 117, 106, 102, 108, 120, 120, 118, 114, 98, 106, 97, 109, 128, 142, 133, 143, 137, 140 | 122, 150, 161, 162, 159, 152, 127, 138, 169, 167, 161, 175, 168, 151, 124, 134, 155, 172, 151, 140, 141 | 148, 148, 166, 129, 116, 115, 117, 115, 120, 118, 124, 131, 129, 123, 149, 169, 119, 103, 122, 153, 142 | 155, 150, 149, 145, 119, 102, 92, 115, 130, 141, 131, 106, 120, 135, 194, 157, 143, 119, 97, 99, 143 | 79, 114, 95, 95, 101, 83, 119, 156, 128, 99, 96, 113, 82, 97, 123, 100, 111, 154, 196, 181, 144 | 172, 161, 182, 190, 158, 146, 152, 154, 142, 117, 103, 108, 86, 89, 93, 106, 115, 113, 148, 148, 145 | 135, 122, 141, 149, 161, 186, 147, 127, 133, 108, 102, 106, 127, 156, 128, 145, 162, 160, 157, 152, 146 | 159, 146, 160, 138, 108, 90, 91, 94, 80, 104, 104, 114, 112, 113, 113, 133, 148, 113, 86, 102, 147 | 124, 118, 135, 112, 99, 102, 126, 128, 103, 111, 121, 137, 156, 153, 155, 171, 142, 138, 108, 89, 148 | 98, 102, 129, 115, 73, 75, 97, 112, 116, 119, 131, 125, 118, 117, 139, 133, 125, 122, 139, 146, 149 | 130, 133, 125, 129, 143, 140, 138, 149, 131, 138, 138, 142, 155, 146, 138, 137, 149, 141, 135, 143, 150 | 162, 177, 161, 145, 133, 135, 127, 100, 88, 79, 89, 84, 109, 132, 135, 134, 123, 137, 143, 127, 151 | 111, 114, 94, 102, 135, 139, 122, 102, 121, 134, 135, 146, 126, 132, 129, 127, 138, 123, 127, 116, 152 | 126, 127, 116, 110, 119, 135, 127, 123, 127, 132, 161, 171, 152, 152, 174, 175, 161, 141, 102, 96, 153 | 109, 144, 159, 159, 149, 135, 134, 143, 145, 116, 97, 95, 126, 149, 146, 153, 127, 123, 109, 88, 154 | 97, 99, 133, 134, 114, 96, 94, 111, 123, 118, 125, 119, 128, 162, 164, 184, 178, 152, 123, 136, 155 | 160, 167, 173, 159, 156, 141, 125, 121, 108, 105, 99, 102, 122, 125, 113, 103, 110, 130, 128, 134, 156 | 145, 113, 110, 111, 111, 114, 117, 136, 118, 117, 105, 83, 104, 120, 130, 121, 124, 116, 109, 104, 157 | 75, 71, 58, 58, 73, 86, 82, 91, 111, 121, 141, 147, 142, 145, 127, 108, 132, 137, 115, 97, 158 | 103, 116, 132, 144, 132, 115, 115, 126, 123, 129, 160, 160, 132, 103, 109, 132, 150, 145, 141, 169, 159 | 168, 162, 148, 157, 158, 130, 125, 130, 123, 135, 149, 142, 140, 115, 102, 108, 98, 105, 113, 116, 160 | 122, 120, 125, 130, 123, 121, 144, 141, 137, 132, 133, 135, 153, 185, 173, 166, 173, 163, 132, 116, 161 | 113, 103, 95, 106, 119, 120, 107, 115, 128, 131, 103, 83, 92, 97, 123, 138, 155, 180, 194, 176, 162 | 160, 152, 154, 183, 191, 196, 184, 183, 184, 174, 143, 114, 132, 147, 157, 142, 122, 96, 85, 66, 163 | 61, 55, 67, 72, 74, 107, 135, 149, 131, 136, 96, 96, 120, 109, 108, 126, 160, 167, 157, 144, 164 | 147, 147, 135, 117, 132, 143, 147, 139, 139, 145, 135, 128, 112, 110, 110, 97, 87, 77, 83, 89, 165 | 90, 115, 143, 135, 116, 114, 126, 148, 152, 165, 152, 178, 193, 169, 141, 107, 123, 138, 138, 126, 166 | 106, 80, 68, 70, 68, 79, 92, 103, 124, 131, 122, 142, 156, 158, 171, 141, 127, 139, 153, 152, 167 | 124, 103, 96, 86, 98, 123, 92, 100, 114, 141, 170, 163, 178, 189, 181, 169, 150, 139, 123, 87, 168 | 94, 100, 90, 97, 119, 134, 123, 107, 93, 109, 125, 128, 111, 95, 129, 138, 128, 99, 84, 81, 169 | 93, 120, 119, 138, 124, 120, 126, 150, 174, 166, 178, 191, 182, 167, 176, 175, 164, 155, 152, 143, 170 | 144, 122, 125, 138, 122, 118, 122, 152, 148, 148, 148, 157, 152, 112, 103, 88, 81, 78, 55, 50, 171 | 70, 95, 126, 133, 120, 121, 147, 163, 151, 141, 126, 131, 144, 163, 157, 135, 135, 115, 115, 97, 172 | 91, 70, 60, 98, 100, 121, 125, 121, 138, 132, 122, 115, 126, 158, 154, 165, 154, 131, 121, 109, 173 | 121, 118, 131, 145, 147, 163, 170, 176, 176, 169, 170, 161, 177, 163, 132, 104, 95, 92, 76, 87, 174 | 77, 90, 136, 177, 187, 150, 161, 171, 165, 141, 121, 149, 119, 98, 87, 93, 94, 91, 93, 74, 175 | 64, 60, 92, 94, 83, 100, 126, 126, 141, 144, 138, 138, 121, 104, 92, 99, 98, 84, 77, 86, 176 | 94, 107, 115, 124, 131, 125, 117, 140, 160, 157, 156, 170, 179, 175, 157, 115, 98, 105, 94, 79, 177 | 91, 112, 138, 141, 147, 169, 179, 187, 179, 186, 185, 179, 191, 178, 158, 150, 154, 146, 139, 149, 178 | 138, 100, 74, 89, 118, 112, 103, 116, 141, 146, 144, 176, 181, 184, 163, 147, 129, 96, 94, 89, 179 | 97, 92, 93, 108, 121, 118, 111, 101, 110, 114, 119, 108, 95, 103, 111, 108, 92, 105, 112, 104, 180 | 91, 98, 106, 130, 136, 153, 180, 180, 162, 153, 152, 131, 131, 127, 151, 144, 130, 130, 150, 167, 181 | 182, 188, 140, 116, 110, 94, 80, 92, 107, 74, 35, 47, 83, 103, 109, 138, 155, 150, 144, 141, 182 | 188, 232, 201, 165, 147, 138, 123, 119, 116, 86, 92, 76, 96, 140, 164, 154, 118, 117, 139, 181, 183 | 171, 148, 133, 124, 93, 65, 76, 99, 88, 68, 85, 112, 120, 105, 140, 170, 154, 121, 114, 114, 184 | 142, 147, 150, 162, 150, 131, 113, 113, 108, 132, 128, 147, 146, 150, 153, 141, 132, 151, 183, 166, 185 | 173, 161, 168, 185, 162, 130, 154, 137, 90, 96, 98, 91, 68, 50, 56, 77, 105, 123, 123, 140, 186 | 150, 146, 155, 151, 144, 141, 131, 120, 108, 95, 88, 87, 95, 80, 83, 109, 134, 119, 89, 88, 187 | 97, 110, 121, 136, 122, 117, 101, 113, 121, 125, 128, 122, 143, 154, 189, 208, 204, 182, 178, 179, 188 | 166, 163, 172, 171, 126, 103, 109, 94, 87, 83, 95, 105, 111, 98, 93, 89, 74, 107, 106, 99, 189 | 96, 107, 140, 150, 140, 143, 158, 187, 185, 142, 123, 120, 123, 130, 135, 117, 107, 108, 123, 125, 190 | 117, 123, 114, 121, 150, 165, 137, 103, 87, 63, 74, 87, 95, 110, 119, 131, 135, 143, 163, 174, 191 | 184, 172, 157, 151, 124, 119, 89, 74, 84, 69, 97, 126, 156, 165, 131, 144, 144, 165, 178, 159, 192 | 150, 135, 144, 138, 137, 140, 129, 116, 107, 113, 123, 113, 98, 101, 118, 121, 132, 131, 147, 168, 193 | 149, 137, 129, 133, 119, 109, 124, 140, 160, 165, 171, 177, 174, 163, 153, 160, 144, 115, 94, 93, 194 | 99, 109, 103, 87, 72, 77, 92, 117, 137, 141, 145, 156, 158, 137, 137, 129, 131, 117, 101, 88, 195 | 94, 104, 114, 119, 114, 136, 162, 172, 161, 176, 157, 142, 121, 112, 132, 109, 102, 94, 104, 128, 196 | 115, 122, 118, 135, 143, 136, 131, 123, 130, 113, 114, 116, 127, 135, 139, 172, 172, 138, 152, 154, 197 | 124, 86, 92, 111, 123, 125, 105, 108, 119, 131, 131, 135, 121, 121, 136, 164, 152, 133, 120, 102, 198 | 104, 113, 112, 107, 109, 92, 85, 94, 96, 103, 163, 176, 160, 116, 107, 126, 126, 135, 130, 126, 199 | 93, 100, 96, 101, 115, 128, 161, 137, 108, 111, 118, 129, 123, 118, 119, 104, 118, 123, 126, 113, 200 | 114, 139, 122, 112, 114, 124, 117, 117, 118, 139, 172, 194, 200, 180, 170, 131, 127, 136, 141, 145, 201 | 139, 140, 120, 105, 105, 125, 143, 127, 91, 101, 81, 46, 60, 98, 118, 133, 162, 155, 180, 162, 202 | 132, 156, 183, 190, 171, 166, 167, 198, 203, 187, 157, 147, 153, 118, 102, 105, 109, 97, 104, 122, 203 | 139, 135, 146, 145, 153, 113, 104, 145, 86, 77, 81, 100, 86, 98, 108, 103, 134, 114, 119, 118, 204 | 134, 151, 133, 132, 151, 149, 136, 129, 149, 174, 189, 170, 150, 146, 138, 121, 107, 93, 111, 114, 205 | 80, 83, 48, 48, 58, 86, 112, 140, 180, 177, 188, 173, 160, 129, 113, 113, 111, 140, 157, 150, 206 | 163, 184, 180, 176, 143, 118, 116, 103, 94, 89, 77, 68, 93, 63, 53, 75, 80, 105, 97, 136, 207 | 143, 146, 154, 143, 136, 134, 132, 110, 99, 82, 120, 135, 140, 144, 176, 186, 146, 152, 163, 142, 208 | 147, 144, 146, 125, 100, 124, 127, 145, 124, 112, 100, 105, 115, 113, 105, 109, 107, 100, 122, 132, 209 | 151, 132, 122, 136, 142, 116, 95, 98, 111, 111, 89, 99, 121, 127, 134, 145, 178, 174, 167, 189, 210 | 185, 158, 127, 143, 152, 172, 177, 150, 150, 150, 140, 145, 111, 88, 92, 88, 93, 85, 94, 89, 211 | 117, 92, 98, 134, 98, 126, 141, 138, 131, 100, 114, 136, 139, 137, 134, 135, 164, 191, 209, 193, 212 | 167, 178, 193, 181, 139, 117, 92, 95, 80, 65, 100, 99, 101, 113, 107, 92, 99, 134, 156, 149, 213 | 104, 89, 115, 143, 143, 139, 131, 115, 129, 145, 164, 168, 152, 146, 146, 126, 113, 108, 113, 109, 214 | 90, 88, 100, 128, 154, 159, 130, 105, 131, 136, 125, 139, 143, 144, 144, 144, 152, 171, 157, 143, 215 | 130, 110, 96, 98, 128, 132, 126, 135, 136, 129, 147, 135, 131, 133, 125, 136, 147, 148, 132, 141, 216 | 145, 144, 135, 117, 111, 112, 116, 122, 121, 133, 148, 143, 122, 102, 103, 90, 86, 86, 92, 82, 217 | 69, 72, 73, 86, 80, 115, 118, 95, 88, 77, 126, 143, 135, 144, 132, 133, 163, 162, 144, 127, 218 | 131, 133, 131, 142, 135, 148, 134, 149, 148, 125, 120, 121, 151, 151, 144, 135, 142, 154, 149, 139, 219 | 154, 157, 163, 150, 135, 129, 133, 140, 124, 131, 126, 119, 114, 109, 99, 98, 122, 131, 110, 103, 220 | 112, 126, 138, 136, 124, 113, 110, 118, 117, 112, 136, 153, 172, 163, 167, 181, 157, 133, 108, 98, 221 | 79, 69, 84, 82, 73, 68, 68, 72, 92, 119, 135, 154, 179, 180, 174, 172, 163, 143, 149, 161, 222 | 160, 172, 169, 151, 145, 152, 147, 141, 151, 152, 128, 113, 108, 82, 61, 72, 77, 87, 111, 108, 223 | 113, 135, 135, 136, 132, 150, 155, 141, 160, 160, 165, 161, 160, 166, 153, 152, 140, 131, 130, 122, 224 | 116, 106, 108, 122, 119, 107, 88, 70, 78, 72, 65, 82, 109, 149, 186, 203, 197, 201, 206, 173, 225 | 127, 118, 119, 93, 80, 98, 139, 140, 129, 141, 148, 165, 126, 117, 102, 96, 106, 101, 113, 115, 226 | 119, 89, 89, 83, 105, 114, 130, 157, 175, 200, 173, 147, 142, 124, 102, 72, 73, 88, 82, 113, 227 | 100, 116, 122, 127, 127, 114, 119, 92, 106, 102, 84, 109, 136, 138, 117, 117, 134, 144, 142, 148, 228 | 140, 118, 118, 120, 125, 121, 119, 99, 126, 157, 161, 156, 159, 168, 142, 113, 135, 150, 136, 162, 229 | 157, 165, 147, 130, 126, 141, 149, 145, 139, 118, 130, 96, 92, 117, 128, 123, 105, 115, 133, 127, 230 | 116, 104, 124, 153, 153, 159, 170, 189, 169, 128, 125, 120, 128, 135, 137, 148, 143, 140, 136, 125, 231 | 119, 91, 89, 85, 70, 114, 109, 129, 123, 110, 129, 130, 136, 123, 135, 121, 110, 83, 89, 118, 232 | 136, 141, 130, 142, 159, 170, 164, 143, 106, 104, 129, 152, 136, 133, 112, 106, 122, 149, 157, 142, 233 | 149, 148, 157, 126, 139, 143, 164, 169, 158, 169, 142, 125, 118, 114, 89, 100, 121, 139, 179, 170, 234 | 152, 175, 164, 127, 83, 87, 109, 109, 108, 111, 127, 141, 137, 139, 129, 110, 94, 62, 79, 96, 235 | 94, 100, 125, 144, 136, 123, 137, 125, 133, 129, 103, 95, 106, 157, 134, 159, 174, 140, 136, 143, 236 | 124, 118, 88, 93, 100, 58, 73, 100, 120, 89, 85, 89, 107, 124, 176, 168, 127, 120, 152, 166, 237 | 145, 139, 128, 128, 92, 97, 68, 71, 71, 97, 114, 98, 124, 146, 176, 173, 143, 143, 149, 164, 238 | 154, 148, 166, 162, 198, 190, 197, 175, 152, 152, 124, 106, 96, 79, 74, 56, 75, 66, 62, 120, 239 | 116, 126, 112, 116, 118, 119, 103, 113, 110, 135, 174, 167, 172, 179, 202, 148, 124, 114, 126, 121, 240 | 127, 152, 141, 124, 87, 95, 123, 124, 111, 120, 96, 82, 116, 132, 157, 172, 157, 155, 119, 116, 241 | 117, 140, 158, 137, 148, 136, 154, 155, 140, 114, 106, 106, 105, 103, 78, 92, 100, 102, 126, 128, 242 | 116, 127, 177, 158, 129, 121, 137, 187, 159, 149, 185, 176, 145, 126, 106, 110, 69, 81, 118, 142, 243 | 167, 177, 152, 137, 154, 138, 132, 126, 134, 126, 127, 94, 98, 152, 148, 152, 146, 113, 119, 135, 244 | 149, 137, 117, 126, 122, 102, 87, 72, 103, 122, 124, 142, 143, 127, 115, 127, 95, 124, 143, 89, 245 | 101, 109, 93, 118, 103, 103, 123, 159, 193, 179, 168, 131, 122, 128, 132, 154, 152, 123, 110, 121, 246 | 143, 134, 127, }; 247 | -------------------------------------------------------------------------------- /UralV8Idle.h: -------------------------------------------------------------------------------- 1 | // idle sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 4736; 5 | 6 | const unsigned char idle_data[] PROGMEM ={130, 7 | 124, 106, 99, 114, 123, 98, 77, 78, 84, 91, 95, 110, 121, 106, 95, 105, 119, 114, 111, 114, 8 | 101, 84, 82, 87, 89, 88, 80, 73, 86, 107, 100, 76, 57, 60, 75, 78, 69, 65, 71, 80, 9 | 76, 78, 70, 55, 77, 94, 67, 66, 95, 83, 85, 119, 117, 86, 84, 105, 126, 129, 119, 108, 10 | 100, 102, 130, 143, 114, 102, 113, 132, 134, 127, 113, 109, 99, 85, 87, 87, 90, 86, 75, 84, 11 | 118, 129, 121, 117, 94, 76, 97, 105, 96, 96, 81, 63, 70, 82, 102, 122, 116, 117, 138, 142, 12 | 117, 97, 75, 69, 80, 79, 79, 97, 91, 80, 116, 148, 138, 112, 107, 109, 98, 86, 97, 113, 13 | 112, 99, 96, 100, 104, 106, 109, 117, 102, 79, 74, 92, 97, 83, 91, 110, 108, 101, 103, 117, 14 | 132, 124, 121, 123, 119, 108, 106, 113, 118, 130, 130, 120, 109, 102, 99, 108, 122, 125, 127, 133, 15 | 136, 123, 106, 116, 144, 140, 114, 104, 108, 118, 120, 115, 125, 142, 145, 131, 122, 113, 123, 143, 16 | 148, 162, 156, 160, 168, 174, 174, 185, 195, 186, 192, 206, 202, 190, 215, 215, 226, 230, 190, 177, 17 | 216, 230, 189, 182, 190, 163, 151, 174, 169, 142, 150, 174, 171, 159, 148, 160, 167, 152, 150, 181, 18 | 199, 189, 179, 184, 187, 184, 205, 217, 209, 182, 183, 207, 203, 190, 179, 165, 170, 174, 145, 132, 19 | 144, 140, 130, 151, 167, 152, 149, 176, 184, 183, 198, 204, 174, 137, 135, 153, 149, 123, 132, 139, 20 | 131, 122, 122, 123, 108, 104, 103, 101, 97, 95, 95, 92, 91, 90, 87, 110, 130, 122, 132, 143, 21 | 126, 114, 140, 157, 134, 121, 128, 137, 133, 122, 132, 146, 146, 147, 145, 140, 141, 128, 123, 122, 22 | 127, 139, 134, 126, 132, 138, 136, 150, 157, 142, 130, 144, 151, 143, 137, 127, 130, 144, 159, 165, 23 | 158, 152, 150, 148, 157, 167, 160, 146, 148, 157, 149, 133, 126, 131, 148, 156, 152, 146, 139, 127, 24 | 108, 101, 100, 90, 86, 86, 90, 92, 90, 91, 91, 94, 98, 94, 82, 64, 67, 93, 102, 88, 25 | 71, 76, 88, 87, 65, 59, 82, 97, 93, 93, 99, 90, 82, 103, 126, 122, 111, 103, 110, 118, 26 | 99, 78, 83, 84, 75, 68, 52, 40, 64, 98, 111, 100, 70, 70, 93, 96, 89, 85, 75, 66, 27 | 55, 40, 39, 45, 39, 39, 55, 56, 48, 45, 42, 46, 57, 72, 79, 80, 80, 79, 76, 89, 28 | 100, 104, 115, 117, 107, 108, 128, 130, 125, 121, 123, 126, 123, 109, 95, 103, 120, 119, 107, 120, 29 | 136, 132, 117, 119, 128, 114, 97, 89, 89, 109, 122, 123, 119, 108, 106, 106, 118, 118, 105, 115, 30 | 136, 131, 129, 132, 113, 93, 92, 108, 127, 147, 146, 138, 137, 131, 129, 132, 140, 142, 140, 132, 31 | 120, 125, 137, 147, 165, 173, 155, 132, 133, 150, 148, 146, 144, 142, 144, 145, 148, 146, 138, 133, 32 | 141, 135, 124, 115, 115, 115, 115, 112, 119, 133, 129, 122, 113, 118, 145, 169, 162, 137, 126, 140, 33 | 141, 137, 154, 170, 171, 161, 166, 175, 166, 155, 144, 139, 140, 136, 143, 150, 148, 147, 152, 159, 34 | 149, 135, 134, 147, 157, 158, 164, 174, 188, 207, 220, 219, 213, 214, 219, 209, 183, 168, 162, 162, 35 | 184, 205, 200, 190, 201, 202, 187, 178, 181, 195, 196, 186, 170, 159, 150, 150, 161, 158, 155, 161, 36 | 165, 151, 144, 147, 154, 157, 154, 156, 148, 142, 160, 181, 181, 170, 168, 175, 160, 142, 157, 168, 37 | 152, 127, 109, 105, 101, 109, 125, 130, 132, 135, 140, 136, 141, 150, 151, 158, 164, 159, 158, 173, 38 | 190, 192, 186, 182, 172, 164, 163, 151, 141, 138, 146, 140, 122, 118, 116, 125, 138, 144, 142, 140, 39 | 135, 144, 148, 150, 163, 166, 159, 153, 158, 163, 187, 199, 187, 168, 170, 179, 167, 141, 126, 131, 40 | 135, 134, 145, 142, 116, 119, 145, 146, 120, 111, 122, 139, 130, 96, 77, 92, 118, 123, 110, 110, 41 | 99, 89, 102, 96, 77, 64, 67, 75, 79, 81, 77, 81, 93, 94, 112, 134, 127, 112, 115, 111, 42 | 88, 77, 94, 112, 98, 72, 57, 66, 86, 87, 69, 40, 30, 57, 77, 72, 63, 66, 68, 68, 43 | 84, 104, 110, 102, 96, 101, 103, 93, 93, 107, 106, 94, 95, 119, 142, 132, 114, 105, 98, 100, 44 | 112, 122, 104, 68, 56, 78, 101, 114, 123, 116, 112, 113, 114, 110, 100, 104, 110, 99, 95, 103, 45 | 101, 104, 119, 144, 152, 148, 152, 164, 163, 137, 110, 111, 123, 118, 108, 98, 104, 133, 159, 150, 46 | 127, 110, 100, 100, 109, 108, 98, 99, 102, 89, 75, 80, 93, 107, 115, 112, 114, 120, 123, 131, 47 | 127, 120, 112, 112, 118, 122, 119, 98, 78, 87, 109, 114, 101, 88, 94, 103, 121, 149, 140, 105, 48 | 88, 85, 96, 117, 119, 103, 106, 120, 121, 113, 106, 103, 101, 103, 93, 79, 81, 101, 115, 105, 49 | 105, 115, 118, 119, 125, 116, 101, 108, 127, 134, 127, 122, 118, 126, 139, 136, 118, 113, 124, 138, 50 | 152, 153, 144, 145, 168, 182, 157, 130, 130, 137, 151, 164, 165, 158, 162, 171, 174, 170, 173, 179, 51 | 170, 190, 190, 162, 181, 207, 195, 207, 238, 227, 218, 235, 236, 237, 235, 212, 192, 183, 184, 196, 52 | 200, 164, 153, 185, 201, 203, 200, 183, 166, 168, 179, 173, 129, 119, 152, 179, 188, 186, 176, 165, 53 | 194, 208, 172, 156, 166, 158, 139, 130, 122, 110, 114, 127, 134, 122, 118, 121, 118, 112, 99, 86, 54 | 77, 81, 81, 85, 110, 128, 120, 120, 133, 142, 154, 147, 125, 108, 113, 119, 118, 122, 120, 107, 55 | 101, 108, 106, 104, 103, 107, 109, 96, 95, 112, 123, 128, 125, 120, 123, 132, 123, 110, 111, 116, 56 | 138, 156, 152, 152, 153, 143, 142, 146, 131, 118, 130, 141, 135, 111, 88, 99, 126, 124, 105, 101, 57 | 111, 127, 144, 152, 138, 117, 106, 112, 116, 113, 113, 117, 132, 149, 157, 155, 163, 169, 160, 151, 58 | 147, 136, 125, 125, 130, 139, 152, 167, 172, 165, 160, 150, 143, 141, 131, 118, 108, 100, 102, 106, 59 | 110, 117, 118, 125, 129, 121, 100, 86, 85, 91, 106, 97, 74, 63, 66, 85, 116, 133, 138, 136, 60 | 129, 116, 113, 127, 131, 128, 116, 111, 117, 117, 105, 105, 96, 89, 95, 84, 66, 50, 39, 40, 61 | 47, 52, 53, 49, 45, 60, 95, 110, 96, 76, 74, 81, 96, 104, 95, 80, 73, 81, 98, 108, 62 | 101, 93, 81, 71, 54, 38, 44, 57, 51, 32, 29, 43, 51, 52, 60, 64, 54, 68, 101, 100, 63 | 82, 84, 93, 113, 132, 129, 118, 107, 109, 129, 148, 151, 143, 136, 139, 137, 123, 111, 108, 96, 64 | 85, 91, 102, 105, 112, 115, 104, 98, 108, 120, 115, 107, 113, 132, 148, 147, 135, 119, 115, 147, 65 | 181, 176, 153, 131, 124, 137, 151, 147, 149, 151, 155, 165, 177, 181, 164, 155, 156, 151, 147, 159, 66 | 164, 146, 132, 145, 161, 159, 142, 136, 141, 157, 172, 168, 152, 149, 156, 184, 224, 213, 187, 201, 67 | 210, 190, 171, 164, 153, 142, 174, 204, 197, 189, 196, 192, 172, 172, 189, 179, 160, 170, 181, 175, 68 | 178, 195, 202, 196, 195, 209, 199, 174, 172, 189, 199, 188, 174, 171, 173, 174, 175, 178, 183, 173, 69 | 157, 157, 151, 131, 132, 151, 159, 139, 122, 122, 133, 157, 175, 164, 132, 113, 123, 132, 125, 123, 70 | 130, 128, 119, 121, 139, 142, 136, 144, 171, 188, 181, 183, 195, 185, 165, 174, 191, 178, 155, 149, 71 | 149, 142, 134, 130, 129, 136, 148, 150, 127, 99, 93, 105, 115, 99, 82, 80, 90, 100, 112, 128, 72 | 138, 127, 119, 139, 152, 141, 135, 142, 138, 122, 118, 127, 142, 141, 113, 93, 89, 96, 98, 85, 73 | 75, 61, 75, 107, 111, 108, 111, 128, 136, 136, 130, 131, 151, 159, 149, 134, 136, 161, 179, 183, 74 | 171, 155, 159, 170, 169, 148, 145, 141, 131, 131, 134, 137, 134, 130, 129, 130, 124, 108, 90, 95, 75 | 119, 117, 95, 89, 100, 108, 96, 99, 116, 121, 117, 120, 138, 141, 140, 142, 140, 128, 128, 143, 76 | 141, 130, 117, 123, 135, 113, 71, 66, 99, 108, 71, 45, 66, 106, 114, 89, 79, 79, 87, 102, 77 | 108, 91, 72, 69, 81, 90, 98, 106, 113, 105, 88, 91, 106, 105, 77, 44, 18, 27, 64, 93, 78 | 83, 57, 38, 25, 37, 67, 71, 35, 6, 0, 16, 39, 56, 77, 86, 85, 104, 120, 120, 125, 79 | 138, 131, 93, 66, 73, 90, 82, 74, 83, 104, 127, 133, 126, 115, 116, 131, 121, 88, 82, 85, 80 | 82, 95, 110, 117, 129, 146, 145, 125, 121, 134, 147, 133, 92, 73, 80, 111, 131, 130, 133, 142, 81 | 136, 128, 138, 139, 125, 108, 104, 106, 112, 126, 132, 129, 126, 127, 136, 148, 155, 151, 129, 128, 82 | 148, 160, 135, 86, 71, 94, 126, 139, 139, 133, 120, 104, 98, 104, 108, 111, 120, 136, 132, 121, 83 | 137, 156, 162, 160, 148, 142, 139, 140, 131, 112, 108, 109, 113, 132, 153, 160, 150, 136, 129, 146, 84 | 165, 164, 161, 149, 158, 176, 190, 196, 184, 182, 197, 206, 193, 174, 169, 177, 179, 169, 161, 170, 85 | 182, 178, 175, 170, 160, 164, 171, 162, 141, 137, 153, 172, 165, 154, 164, 176, 181, 177, 170, 153, 86 | 145, 151, 145, 135, 127, 118, 134, 151, 147, 128, 125, 131, 122, 108, 112, 128, 132, 136, 137, 131, 87 | 137, 155, 162, 158, 147, 152, 164, 161, 146, 136, 147, 156, 149, 130, 118, 117, 126, 147, 154, 137, 88 | 108, 91, 114, 137, 131, 129, 136, 129, 111, 124, 166, 173, 161, 166, 169, 159, 156, 164, 155, 149, 89 | 153, 164, 177, 171, 152, 140, 153, 168, 167, 164, 149, 127, 121, 140, 165, 165, 147, 136, 141, 149, 90 | 142, 137, 146, 159, 173, 170, 159, 151, 161, 179, 181, 168, 164, 176, 184, 178, 165, 157, 167, 183, 91 | 188, 182, 158, 155, 178, 194, 180, 146, 145, 166, 179, 177, 170, 168, 152, 143, 147, 138, 123, 128, 92 | 147, 149, 136, 129, 130, 116, 104, 103, 94, 77, 66, 62, 62, 74, 77, 63, 61, 78, 87, 91, 93 | 94, 86, 75, 82, 103, 103, 98, 111, 116, 109, 113, 123, 129, 121, 110, 111, 110, 95, 71, 55, 94 | 58, 80, 86, 81, 76, 64, 53, 56, 68, 74, 76, 81, 70, 39, 38, 62, 88, 87, 65, 57, 95 | 69, 81, 91, 101, 101, 82, 62, 67, 63, 54, 51, 50, 59, 84, 100, 84, 82, 87, 79, 75, 96 | 65, 67, 93, 122, 123, 107, 93, 88, 106, 135, 132, 111, 109, 122, 129, 118, 117, 111, 109, 111, 97 | 121, 129, 121, 121, 129, 133, 150, 189, 189, 163, 150, 160, 158, 143, 149, 158, 155, 144, 141, 158, 98 | 178, 178, 169, 145, 134, 145, 155, 144, 122, 117, 111, 121, 144, 156, 145, 123, 112, 99, 89, 100, 99 | 110, 115, 121, 132, 144, 139, 118, 95, 92, 103, 107, 105, 110, 105, 102, 108, 111, 104, 105, 106, 100 | 101, 92, 88, 88, 90, 109, 130, 125, 105, 99, 107, 125, 126, 134, 134, 129, 126, 124, 140, 146, 101 | 134, 142, 149, 147, 161, 166, 151, 136, 132, 129, 134, 136, 138, 146, 158, 142, 134, 144, 151, 154, 102 | 153, 141, 135, 146, 155, 159, 145, 148, 174, 183, 169, 166, 157, 157, 177, 201, 195, 168, 149, 141, 103 | 141, 156, 191, 195, 182, 179, 189, 197, 200, 187, 174, 173, 176, 182, 190, 189, 177, 179, 194, 195, 104 | 182, 170, 164, 159, 149, 148, 153, 160, 169, 174, 156, 121, 113, 149, 176, 175, 160, 143, 137, 149, 105 | 166, 161, 150, 149, 146, 157, 171, 165, 147, 133, 135, 132, 120, 114, 129, 135, 124, 119, 124, 121, 106 | 114, 113, 118, 126, 126, 127, 130, 123, 109, 111, 126, 141, 134, 120, 119, 119, 115, 113, 116, 115, 107 | 115, 118, 114, 110, 120, 137, 146, 153, 153, 140, 139, 141, 141, 146, 146, 132, 120, 122, 119, 113, 108 | 126, 144, 138, 124, 111, 106, 112, 112, 102, 86, 81, 91, 103, 102, 87, 78, 85, 85, 73, 77, 109 | 84, 85, 96, 104, 106, 99, 89, 94, 101, 107, 111, 110, 90, 72, 84, 109, 115, 109, 114, 111, 110 | 106, 118, 121, 114, 111, 117, 112, 93, 93, 116, 119, 98, 90, 97, 108, 102, 90, 87, 80, 95, 111 | 108, 94, 95, 103, 97, 90, 105, 114, 129, 157, 154, 135, 117, 107, 110, 113, 93, 73, 77, 85, 112 | 92, 100, 104, 99, 88, 74, 75, 87, 83, 90, 100, 93, 95, 111, 118, 124, 127, 126, 125, 120, 113 | 116, 101, 73, 51, 58, 96, 122, 113, 107, 113, 129, 155, 176, 163, 141, 139, 138, 133, 133, 147, 114 | 159, 164, 174, 186, 184, 171, 145, 122, 112, 117, 123, 130, 139, 133, 120, 111, 116, 127, 134, 130, 115 | 117, 95, 74, 75, 100, 105, 97, 94, 87, 84, 78, 70, 82, 104, 95, 77, 73, 72, 72, 83, 116 | 82, 61, 55, 78, 103, 110, 101, 94, 81, 62, 74, 97, 89, 61, 61, 86, 95, 101, 117, 129, 117 | 123, 114, 117, 125, 134, 147, 160, 166, 162, 156, 163, 186, 198, 197, 197, 197, 190, 157, 129, 129, 118 | 135, 140, 135, 130, 122, 116, 135, 150, 150, 152, 164, 185, 198, 208, 209, 202, 209, 224, 232, 227, 119 | 219, 211, 211, 217, 217, 202, 198, 199, 178, 171, 180, 182, 184, 180, 183, 181, 171, 180, 198, 202, 120 | 204, 215, 209, 187, 183, 206, 219, 211, 213, 214, 202, 201, 210, 193, 165, 152, 147, 142, 149, 165, 121 | 176, 176, 169, 157, 148, 146, 141, 145, 152, 145, 124, 119, 137, 141, 131, 127, 125, 126, 136, 138, 122 | 117, 90, 77, 79, 70, 67, 77, 94, 94, 93, 95, 84, 94, 108, 107, 98, 91, 92, 105, 117, 123 | 122, 109, 104, 103, 105, 116, 127, 124, 106, 87, 88, 106, 110, 108, 101, 99, 105, 114, 122, 129, 124 | 132, 120, 114, 130, 142, 142, 128, 121, 130, 134, 139, 165, 183, 156, 120, 122, 145, 142, 141, 159, 125 | 158, 138, 153, 173, 160, 145, 146, 154, 138, 132, 137, 142, 148, 157, 155, 128, 116, 131, 151, 161, 126 | 159, 133, 107, 103, 102, 104, 127, 128, 100, 102, 139, 172, 174, 167, 173, 178, 164, 150, 150, 140, 127 | 120, 126, 127, 113, 102, 92, 110, 132, 134, 107, 81, 87, 92, 77, 68, 74, 79, 59, 54, 70, 128 | 65, 49, 53, 56, 45, 61, 78, 73, 67, 82, 95, 96, 103, 101, 76, 54, 53, 53, 41, 47, 129 | 75, 81, 67, 66, 76, 80, 84, 78, 58, 49, 66, 72, 67, 74, 65, 61, 74, 80, 75, 74, 130 | 79, 83, 95, 99, 101, 114, 123, 122, 108, 100, 103, 104, 99, 88, 75, 66, 83, 106, 103, 90, 131 | 107, 126, 115, 107, 104, 90, 82, 89, 93, 100, 107, 108, 113, 120, 113, 103, 108, 119, 114, 95, 132 | 102, 113, 107, 106, 113, 111, 108, 113, 115, 110, 115, 132, 125, 118, 133, 154, 160, 157, 152, 146, 133 | 149, 155, 160, 158, 150, 137, 132, 136, 133, 120, 120, 135, 145, 142, 147, 161, 161, 161, 158, 151, 134 | 158, 178, 177, 160, 157, 158, 168, 182, 189, 182, 162, 152, 153, 146, 135, 128, 125, 137, 157, 160, 135 | 162, 175, 185, 179, 163, 157, 159, 161, 171, 178, 192, 214, 220, 206, 193, 186, 177, 171, 169, 179, 136 | 186, 178, 162, 160, 162, 159, 155, 144, 143, 150, 154, 151, 146, 149, 160, 174, 176, 156, 146, 159, 137 | 172, 185, 178, 163, 162, 167, 162, 159, 162, 153, 141, 128, 120, 117, 127, 137, 133, 130, 135, 133, 138 | 123, 126, 130, 118, 97, 93, 112, 129, 135, 145, 151, 148, 134, 120, 127, 129, 126, 133, 140, 141, 139 | 149, 153, 140, 127, 128, 125, 113, 113, 118, 111, 109, 128, 135, 121, 120, 137, 149, 151, 150, 144, 140 | 146, 139, 132, 143, 157, 157, 142, 144, 165, 180, 181, 170, 158, 159, 176, 178, 166, 165, 180, 195, 141 | 191, 176, 169, 171, 179, 191, 200, 190, 172, 168, 173, 184, 176, 159, 154, 152, 152, 164, 175, 157, 142 | 129, 116, 133, 139, 131, 131, 135, 141, 135, 129, 144, 150, 146, 162, 171, 164, 151, 140, 143, 152, 143 | 151, 144, 142, 140, 147, 165, 162, 136, 120, 121, 116, 99, 78, 59, 53, 65, 77, 81, 79, 77, 144 | 82, 92, 99, 87, 57, 42, 59, 67, 63, 60, 53, 62, 87, 112, 125, 119, 96, 102, 109, 94, 145 | 107, 131, 121, 99, 88, 87, 89, 89, 100, 96, 83, 78, 75, 68, 56, 57, 65, 71, 66, 81, 146 | 100, 96, 90, 92, 101, 95, 86, 86, 101, 119, 116, 96, 96, 109, 121, 140, 146, 112, 84, 101, 147 | 114, 109, 93, 88, 102, 111, 112, 111, 111, 97, 93, 93, 80, 65, 56, 55, 59, 67, 63, 68, 148 | 84, 89, 102, 123, 126, 106, 95, 98, 96, 102, 121, 135, 131, 113, 110, 127, 122, 99, 98, 109, 149 | 108, 109, 117, 121, 115, 103, 92, 97, 103, 97, 95, 96, 97, 94, 86, 91, 107, 106, 105, 117, 150 | 119, 103, 101, 118, 134, 141, 150, 164, 170, 156, 135, 145, 159, 163, 162, 161, 152, 144, 148, 153, 151 | 147, 136, 131, 117, 104, 108, 118, 113, 119, 120, 135, 159, 156, 162, 172, 180, 175, 181, 194, 194, 152 | 184, 192, 187, 196, 199, 160, 176, 182, 150, 149, 197, 178, 147, 192, 199, 136, 113, 130, 117, 133, 153 | 178, 193, 166, 146, 157, 174, 165, 140, 126, 135, 142, 146, 156, 163, 156, 132, 141, 165, 159, 135, 154 | 140, 142, 124, 123, 134, 133, 135, 153, 148, 131, 122, 121, 136, 152, 143, 111, 103, 120, 140, 151, 155 | 157, 159, 150, 152, 169, 176, 163, 149, 126, 125, 148, 157, 152, 144, 144, 142, 150, 165, 153, 129, 156 | 123, 135, 147, 139, 131, 129, 120, 116, 107, 122, 133, 126, 132, 129, 108, 99, 110, 112, 111, 117, 157 | 132, 136, 156, 171, 164, 164, 163, 156, 155, 160, 153, 142, 142, 158, 156, 137, 137, 146, 146, 135, 158 | 142, 153, 147, 143, 136, 123, 122, 145, 163, 159, 156, 167, 174, 158, 147, 153, 152, 146, 140, 135, 159 | 128, 122, 128, 134, 133, 125, 130, 130, 107, 97, 103, 93, 71, 67, 78, 84, 89, 92, 88, 102, 160 | 122, 119, 113, 117, 110, 93, 84, 79, 80, 91, 101, 99, 96, 99, 95, 79, 74, 86, 97, 99, 161 | 95, 89, 83, 87, 99, 105, 104, 101, 93, 79, 60, 51, 47, 49, 73, 79, 65, 49, 45, 56, 162 | 81, 103, 105, 105, 93, 89, 104, 120, 126, 122, 115, 110, 91, 75, 82, 86, 78, 77, 87, 79, 163 | 62, 47, 34, 43, 66, 91, 109, 118, 119, 116, 111, 108, 123, 133, 137, 142, 138, 123, 117, 134, 164 | 150, 148, 136, 126, 112, 112, 126, 137, 133, 139, 148, 141, 127, 113, 100, 90, 92, 102, 115, 118, 165 | 112, 104, 103, 103, 101, 106, 117, 115, 108, 92, 94, 120, 139, 142, 128, 120, 121, 123, 130, 148, 166 | 150, 144, 145, 138, 113, 101, 108, 111, 115, 137, 147, 126, 110, 114, 122, 124, 128, 115, 96, 99, 167 | 115, 125, 136, 140, 133, 142, 154, 160, 149, 131, 123, 121, 122, 123, 121, 126, 134, 139, 137, 133, 168 | 134, 136, 136, 135, 128, 122, 134, 148, 150, 145, 140, 140, 138, 127, 129, 139, 145, 144, 133, 120, 169 | 128, 145, 152, 154, 151, 140, 130, 128, 132, 143, 137, 130, 125, 115, 121, 143, 155, 142, 129, 141, 170 | 166, 186, 197, 198, 193, 183, 194, 218, 212, 189, 178, 197, 219, 226, 219, 196, 176, 172, 179, 177, 171 | 170, 164, 162, 156, 152, 154, 145, 136, 138, 145, 142, 138, 143, 139, 130, 153, 186, 197, 186, 173, 172 | 171, 174, 198, 204, 184, 173, 174, 182, 189, 192, 187, 179, 175, 173, 167, 162, 155, 155, 163, 165, 173 | 160, 167, 180, 164, 150, 156, 175, 188, 183, 178, 174, 177, 182, 185, 173, 156, 149, 152, 153, 146, 174 | 128, 129, 147, 158, 146, 134, 133, 127, 141, 153, 154, 154, 148, 147, 155, 157, 167, 172, 163, 162, 175 | 157, 156, 168, 174, 159, 143, 138, 141, 131, 120, 114, 118, 133, 130, 121, 129, 139, 136, 141, 134, 176 | 118, 113, 126, 145, 140, 136, 135, 118, 118, 122, 110, 99, 87, 90, 94, 92, 81, 72, 76, 82, 177 | 78, 73, 73, 70, 85, 94, 86, 81, 83, 89, 87, 79, 96, 107, 101, 91, 81, 78, 66, 60, 178 | 64, 53, 62, 85, 86, 81, 88, 108, 106, 89, 90, 98, 97, 99, 106, 121, 127, 133, 151, 147, 179 | 125, 97, 90, 109, 125, 113, 104, 102, 103, 99, 86, 87, 100, 106, 89, 76, 72, 77, 82, 85, 180 | 82, 83, 97, 100, 97, 101, 115, 129, 132, 134, 142, 140, 131, 128, 129, 123, 132, 176, 197, 174, 181 | 147, 151, 164, 158, 151, 128, 92, 86, 100, 102, 102, 117, 126, 125, 130, 131, 117, 107, 112, 109, 182 | 93, 76, 84, 97, 85, 74, 93, 115, 124, 126, 123, 123, 123, 122, 122, 114, 97, 91, 110, 117, 183 | 102, 99, 111, 113, 109, 108, 100, 84, 77, 79, 83, 78, 65, 64, 72, 78, 72, 67, 66, 61, 184 | 60, 64, 60, 52, 54, 56, 63, 76, 85, 84, 99, 113, 103, 97, 108, 117, 110, 112, 118, 115, 185 | 110, 123, 155, 154, 130, 129, 129, 123, 108, 93, 86, 94, 116, 114, 107, 114, 119, 137, 168, 174, 186 | 167, 161, 158, 168, 177, 185, 209, 232, 226, 211, 207, 206, 205, 204, 198, 205, 211, 195, 201, 224, 187 | 205, 195, 224, 221, 193, 187, 191, 174, 168, 179, 175, 169, 168, 180, 187, 181, 180, 183, 182, 179, 188 | 184, 192, 181, 169, 180, 192, 199, 199, 195, 186, 191, 219, 213, 174, 155, 159, 164, 170, 175, 170, 189 | 146, 134, 137, 138, 121, 112, 126, 126, 106, 90, 100, 109, 111, 99, 93, 105, 114, 122, 126, 124, 190 | 128, 129, 141, 152, 141, 136, 131, 122, 116, 123, 128, 125, 123, 111, 84, 71, 81, 99, 100, 99, 191 | 95, 83, 83, 105, 127, 114, 107, 110, 116, 120, 128, 145, 150, 152, 163, 169, 170, 161, 140, 140, 192 | 149, 154, 153, 150, 141, 126, 119, 125, 139, 137, 128, 138, 143, 122, 119, 128, 129, 132, 144, 137, 193 | 120, 130, 149, 152, 142, 142, 147, 147, 149, 145, 132, 130, 130, 145, 149, 133, 122, 132, 143, 140, 194 | 138, 139, 147, 153, 154, 155, 154, 144, 138, 142, 139, 122, 115, 119, 112, 97, 96, 99, 108, 117, 195 | 106, 90, 69, 65, 78, 83, 81, 76, 78, 83, 76, 81, 81, 93, 111, 114, 111, 95, 89, 101, 196 | 101, 89, 96, 103, 94, 89, 92, 58, 44, 72, 87, 85, 78, 73, 72, 72, 84, 88, 73, 57, 197 | 57, 70, 79, 74, 62, 65, 85, 93, 82, 66, 52, 50, 58, 67, 60, 46, 38, 40, 57, 70, 198 | 66, 64, 74, 77, 65, 59, 74, 89, 91, 85, 88, 90, 96, 104, 112, 138, 158, 154, 145, 145, 199 | 152, 148, 141, 134, 122, 122, 135, 143, 140, 141, 148, 143, 123, 103, 87, 84, 86, 96, 104, 99, 200 | 84, 81, 101, 122, 136, 137, 128, 117, 121, 148, 161, 152, 140, 131, 136, 140, 144, 148, 143, 135, 201 | 129, 127, 123, 125, 129, 121, 118, 126, 135, 143, 146, 145, 141, 135, 130, 127, 127, 138, 133, 115, 202 | 112, 118, 116, 107, 107, 134, 166, 183, 184, 166, 150, 163, 172, 177, 182, 175, 163, 169, 192, 196, 203 | 190, 177, 168, 155, 157, 169, 163, 147, 149, 159, 170, 194, 203, 190, 172, 171, 168, 178, 189, 178, 204 | 162, 156, 166, 172, 170, 171, 179, 192, 199, 179, 168, 168, 168, 178, 192, 194, 176, 159, 160, 163, 205 | 162, 161, 165, 166, 170, 159, 148, 150, 140, 132, 135, 161, 164, 142, 133, 140, 157, 169, 177, 169, 206 | 146, 137, 145, 153, 163, 176, 186, 185, 173, 166, 173, 165, 158, 151, 138, 126, 114, 119, 119, 118, 207 | 115, 113, 119, 122, 113, 92, 79, 77, 84, 89, 87, 84, 81, 88, 104, 121, 128, 126, 116, 102, 208 | 97, 102, 110, 108, 114, 118, 113, 115, 113, 112, 126, 137, 142, 141, 116, 95, 110, 141, 144, 129, 209 | 118, 110, 107, 137, 167, 166, 161, 149, 150, 144, 126, 137, 146, 139, 130, 133, 135, 129, 136, 151, 210 | 146, 137, 141, 136, 134, 119, 107, 125, 127, 109, 105, 118, 105, 93, 106, 112, 114, 102, 83, 92, 211 | 104, 105, 108, 105, 93, 92, 116, 129, 136, 132, 114, 123, 147, 147, 137, 129, 120, 117, 123, 130, 212 | 133, 128, 100, 84, 99, 103, 86, 70, 55, 50, 60, 77, 93, 97, 93, 93, 95, 105, 112, 110, 213 | 100, 99, 103, 98, 100, 105, 95, 76, 79, 101, 107, 83, 48, 30, 34, 51, 67, 75, 78, 76, 214 | 82, 90, 95, 91, 92, 91, 72, 64, 73, 82, 89, 88, 80, 82, 100, 116, 127, 134, 119, 99, 215 | 69, 58, 59, 55, 71, 100, 107, 106, 129, 159, 181, 166, 138, 112, 110, 117, 111, 106, 109, 129, 216 | 150, 155, 166, 159, 131, 136, 153, 140, 114, 106, 96, 84, 91, 111, 118, 124, 142, 150, 134, 128, 217 | 149, 158, 146, 129, 118, 112, 102, 101, 115, 126, 128, 136, 137, 131, 126, 132, 143, 130, 109, 91, 218 | 85, 99, 99, 96, 108, 124, 138, 146, 149, 137, 132, 144, 139, 124, 128, 145, 155, 147, 133, 130, 219 | 129, 133, 144, 148, 141, 126, 124, 129, 125, 126, 131, 125, 121, 126, 127, 130, 135, 152, 173, 161, 220 | 139, 141, 146, 148, 158, 167, 159, 146, 159, 185, 191, 180, 168, 159, 156, 157, 155, 151, 156, 161, 221 | 163, 176, 175, 155, 153, 175, 175, 163, 158, 141, 136, 149, 142, 131, 140, 153, 151, 147, 151, 151, 222 | 147, 150, 149, 146, 152, 156, 144, 128, 130, 141, 149, 147, 153, 156, 149, 143, 141, 149, 151, 142, 223 | 139, 143, 135, 129, 137, 156, 162, 148, 129, 124, 121, 114, 118, 115, 97, 90, 119, 148, 154, 133, 224 | 115, 120, 148, 178, 172, 146, 121, 115, 124, 143, 166, 189, 201, 194, 182, 182, 187, 174, 159, 161, 225 | 169, 163, 151, 152, 150, 131, 126, 142, 152, 145, 134, 126, 120, 122, 133, 134, 135, 142, 148, 143, 226 | 141, 159, 177, 184, 176, 167, 157, 145, 141, 152, 165, 171, 175, 175, 175, 188, 205, 207, 194, 173, 227 | 153, 161, 186, 171, 131, 119, 131, 146, 153, 146, 140, 135, 126, 135, 159, 152, 126, 109, 106, 114, 228 | 123, 134, 145, 151, 145, 147, 143, 122, 108, 107, 108, 117, 121, 112, 99, 94, 98, 110, 119, 123, 229 | 116, 110, 114, 110, 107, 101, 107, 121, 124, 123, 125, 134, 146, 145, 129, 113, 109, 118, 122, 110, 230 | 72, 51, 69, 100, 95, 66, 54, 52, 46, 49, 72, 78, 74, 68, 60, 56, 61, 81, 94, 91, 231 | 78, 73, 73, 75, 73, 50, 42, 61, 76, 75, 75, 75, 72, 83, 104, 112, 104, 99, 101, 98, 232 | 103, 110, 106, 110, 125, 130, 102, 79, 91, 110, 109, 114, 125, 116, 105, 99, 99, 93, 97, 119, 233 | 130, 120, 108, 117, 133, 130, 128, 138, 144, 135, 127, 126, 126, 125, 132, 138, 131, 126, 131, 142, 234 | 147, 147, 146, 154, 157, 148, 133, 129, 138, 154, 152, 143, 150, 147, 138, 134, 128, 113, 101, 97, 235 | 101, 112, 121, 117, 120, 131, 130, 122, 119, 121, 119, 126, 132, 140, 143, 124, 109, 105, 109, 114, 236 | 125, 145, 139, 108, 94, 93, 95, 100, 111, 124, 127, 123, 122, 127, 130, 149, 153, 145, 124, 104, 237 | 109, 124, 131, 155, 163, 133, 131, 134, 128, 133, 145, 140, 133, 116, 115, 128, 141, 150, 158, 170, 238 | 170, 161, 165, 173, 145, 142, 169, 175, 146, 131, 130, 123, 123, 141, 154, 158, 156, 143, 145, 145, 239 | 144, 139, 145, 147, 145, 145, 144, 153, 166, 170, 163, 161, 156, 148, 152, 160, 149, 136, 138, 145, 240 | 146, 149, 169, 181, 171, 162, 167, 166, 156, 152, 151, 166, 179, 169, 155, 153, 158, 171, 177, 174, 241 | 161, 144, 151, 166, 156, 136, 135, 133, 128, 140, 143, 130, 138, 165, 164, 144, 148, 146, 130, 135, 242 | 139, 142, 153, 154, 144, 146, 158, 158, 160, 170, 162, 156, 159, 158, 148, 131, 127, 137, 149, 156, 243 | 152, 138, 143, 169, 178, 169, 152, 129, 113, 115, 128, 127, 123, 120, 117, }; 244 | -------------------------------------------------------------------------------- /bottom.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheDIYGuy999/Rc_Engine_Sound/6dd351458083ca4d0e368c6387bd564463510e75/bottom.jpg -------------------------------------------------------------------------------- /curves.h: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================================================= 3 | // NONLINEAR ARRAY FOR THROTTLE 4 | // ======================================================================================================= 5 | // 6 | 7 | // In order to optimize the motor RPM behaviour for your vehicle, just change the array below 8 | 9 | float curveShifting[][2] = { 10 | {0, 0} // {input value, output value} 11 | , {83, 200} 12 | , {166, 500} 13 | , {250, 200} // Simulated shifting point 14 | , {333, 500} 15 | , {416, 200} // Simulated shifting point 16 | , {500, 500} 17 | }; 18 | 19 | // 20 | // ======================================================================================================= 21 | // ARRAY INTERPOLATION 22 | // ======================================================================================================= 23 | // 24 | 25 | // Credit: http://interface.khm.de/index.php/lab/interfaces-advanced/nonlinear-mapping/ 26 | 27 | int reMap(float pts[][2], int input) { 28 | int rr; 29 | float bb, mm; 30 | 31 | for (int nn = 0; nn < 7; nn++) { 32 | if (input >= pts[nn][0] && input <= pts[nn + 1][0]) { 33 | mm = ( pts[nn][1] - pts[nn + 1][1] ) / ( pts[nn][0] - pts[nn + 1][0] ); 34 | mm = mm * (input - pts[nn][0]); 35 | mm = mm + pts[nn][1]; 36 | rr = mm; 37 | } 38 | } 39 | return (rr); 40 | } 41 | -------------------------------------------------------------------------------- /diesel.h: -------------------------------------------------------------------------------- 1 | // test sound made by wav2c 2 | 3 | const int BASE_RATE = 16000; 4 | const int idle_length = 4784; 5 | 6 | PROGMEM const unsigned char idle_data[] = { 7 | 122,129,137,135,130,133,140,140,138,141,140,135,131,126,113,102,98,94,89,94,100,102,107,112,106,92,86,85,83,83,84,83,80,75,68,65,67,77,90,99,108,126,144,144,130,123,126,131,135,139,139,140,143,144,137,129,122,116,118,129,145,164,181,187,180,173,169,165,160,154,149,154,163,169,178,191,202,208,210,206,199,193,185,170,159,155,151,152,158,161,162,166,171,177,183,179,162,143,129,129, 8 | 143,158,159,153,152,147,130,113,110,114,111,100,90,81,67,56,55,59,62,70,85,91,83,79,87,90,79,66,59,52,44,38,32,26,29,32,26,23,36,49,54,67,85,89,84,82,82,76,66,63,67,74,74,72,78,85,87,94,104,100,87,84,88,88,92,106,120,127,128,124,116,109,107,112,118,124,134,145,151,158,169,177,177,169,159,148,132,116,110,122,141,150,146,135,125,127,146,166,170,171, 9 | 180,188,183,173,173,179,175,160,146,140,137,134,136,140,142,148,159,173,180,177,166,157,152,150,146,139,135,139,148,152,146,138,136,132,121,112,112,111,109,116,130,140,141,132,116,106,105,109,116,125,130,134,134,132,133,133,130,129,130,121,108,101,98,99,108,123,132,130,123,122,134,152,165,168,152,120,96,81,70,77,105,134,158,185,206,208,197,179,148,105,74,70,85,103,125,153,180,200,211,206, 10 | 182,156,143,134,122,123,137,151,159,163,155,146,157,180,187,175,160,136,99,72,74,90,107,128,149,163,183,202,199,177,164,158,145,135,141,143,129,114,104,86,72,80,94,100,117,144,143,115,105,117,121,129,157,168,140,110,105,106,101,107,119,116,103,112,135,140,126,123,121,96,76,89,110,114,128,161,173,148,130,132,109,60,41,53,51,49,78,101,89,83,100,100,88,102,119,106,90,94,91,77, 11 | 87,115,124,119,124,124,100,81,88,98,98,103,111,101,82,74,73,70,74,87,103,119,136,143,133,128,139,149,150,161,170,149,124,128,127,98,81,95,104,102,115,128,118,111,130,148,150,162,188,195,181,173,158,120,97,113,128,126,139,162,160,147,159,176,172,170,186,187,168,166,187,193,181,177,172,150,137,149,150,131,127,139,136,126,131,131,116,117,140,154,157,169,175,162,156,170,179,179,191,211, 12 | 216,208,195,172,145,124,107,88,74,69,75,96,125,147,162,167,159,147,145,145,140,138,139,126,96,73,73,81,86,92,103,114,124,126,120,117,121,121,122,128,127,121,123,136,154,168,164,145,132,127,115,109,124,141,146,152,161,162,154,143,135,130,119,106,108,122,134,140,150,168,182,182,173,163,151,135,123,112,98,89,89,89,87,95,108,113,119,134,135,115,103,107,99,81,80,87,85,86,93,87, 13 | 73,69,66,62,78,106,120,120,122,120,107,92,76,52,27,13,12,25,49,71,90,112,128,128,125,125,118,100,89,89,83,67,61,71,84,99,123,141,138,127,129,133,125,114,108,95,74,64,74,81,77,78,93,107,123,147,163,164,168,180,176,152,130,121,116,112,113,113,109,113,134,158,172,181,190,192,188,184,184,183,180,178,178,175,164,149,137,125,115,118,130,142,154,164,166,167,173,174,174,179, 14 | 184,181,172,155,128,105,93,86,86,96,105,114,129,140,143,150,161,161,151,146,142,130,116,108,100,97,106,115,104,85,85,90,86,92,112,125,128,134,137,133,134,142,143,136,135,139,137,133,138,141,131,126,135,137,129,136,152,167,188,213,217,200,179,150,114,91,83,78,97,146,184,190,194,201,192,180,181,170,133,99,79,57,38,53,114,188,234,250,253,240,210,190,186,180,169,155,127,95,85,96, 15 | 111,140,181,196,179,159,131,82,51,69,94,100,119,149,148,130,137,142,117,102,115,121,118,130,138,112,77,70,75,76,89,116,130,116,90,74,74,91,118,140,148,142,129,110,84,58,44,36,29,37,61,66,56,68,91,81,57,49,33,9,17,58,90,112,146,165,144,121,120,95,43,22,34,45,66,109,137,138,138,136,120,121,142,139,104,77,71,67,73,123,183,190,169,170,157,117,107,134,146,153, 16 | 190,217,208,201,202,188,187,205,198,167,159,163,141,128,153,162,147,168,202,189,175,197,194,165,173,185,154,144,164,127,57,58,92,83,85,140,167,132,106,98,61,35,68,104,110,134,166,154,129,140,140,104,95,125,123,92,99,128,135,144,160,133,81,69,71,38,24,56,74,81,116,133,107,110,145,138,112,138,167,141,120,138,132,95,95,125,126,118,136,144,126,127,147,147,150,182,201,190,193,209, 17 | 195,166,160,149,113,102,127,144,162,203,223,204,210,239,225,193,201,206,162,126,128,123,107,122,164,195,214,237,253,244,236,249,244,205,174,171,152,113,103,132,153,153,153,154,142,130,132,128,112,115,132,124,105,111,118,107,104,117,115,98,89,88,83,84,99,125,146,155,158,152,135,122,113,93,75,63,42,22,29,44,40,50,94,131,148,171,184,154,114,98,80,56,54,61,46,32,42,49,33,20, 18 | 25,41,66,101,129,137,136,136,125,104,98,92,68,54,58,45,31,51,85,101,121,151,166,170,182,187,166,131,105,89,64,36,37,62,77,94,130,159,157,149,148,134,111,107,116,112,113,126,122,103,109,126,111,92,109,122,107,102,112,113,115,129,128,108,92,90,96,115,135,136,128,137,165,184,181,171,165,144,106,81,74,64,59,77,100,116,135,155,159,165,194,221,229,229,220,188,155,139,128,115, 19 | 104,88,69,67,80,87,93,110,125,136,149,162,169,172,174,171,167,161,147,130,126,134,135,128,131,139,135,123,128,145,156,158,160,161,156,150,147,143,138,141,146,143,144,144,136,137,157,167,160,170,200,216,216,219,221,207,191,181,163,136,130,155,171,159,150,151,142,138,157,179,188,198,216,223,204,174,154,137,110,91,92,98,101,113,126,124,122,138,153,150,141,140,138,128,121,115,93,61,44,46, 20 | 55,67,80,81,71,65,68,78,96,116,125,128,130,128,118,108,95,76,56,45,39,33,32,38,52,72,98,119,126,130,142,154,161,163,157,146,132,119,116,125,125,106,86,80,85,96,113,126,133,144,160,170,166,158,159,171,187,197,200,192,175,155,138,127,126,131,125,113,114,127,134,138,147,158,162,166,175,182,184,182,178,168,156,147,129,97,78,83,91,92,102,109,95,76,69,70,82,100,103,89, 21 | 82,79,69,57,54,51,49,61,80,94,99,97,91,90,96,98,97,101,98,84,74,74,78,78,74,75,83,96,110,129,144,150,161,172,160,143,140,123,86,72,82,81,84,111,132,135,154,185,192,180,173,170,157,141,135,133,125,120,133,146,143,138,138,129,123,144,173,186,188,193,193,193,198,194,179,174,180,177,175,188,204,212,217,216,208,204,208,202,179,156,145,148,160,176,183,188,196,201,198,196, 22 | 194,182,167,157,143,116,95,98,108,106,104,115,119,101,86,93,97,84,79,86,83,73,72,79,86,94,99,98,99,105,101,90,84,89,98,106,113,116,117,118,119,111,98,89,84,77,76,78,81,92,109,115,109,108,113,118,133,154,165,164,160,155,149,146,145,141,138,135,127,119,119,130,142,142,136,135,135,131,129,131,131,129,125,118,111,109,117,129,135,135,135,143,149,149,155,169,177,175,163,145, 23 | 125,114,111,106,105,111,115,113,118,130,128,110,94,89,85,81,83,89,94,102,109,110,109,110,101,78,64,65,65,63,76,97,104,107,120,123,105,88,86,80,63,50,40,26,25,43,62,76,94,109,108,102,103,108,113,122,128,130,131,135,143,145,131,112,95,80,70,72,79,87,105,127,143,156,163,158,155,163,164,147,132,129,130,128,123,121,124,130,135,144,160,176,191,204,210,208,205,200,186,169, 24 | 156,158,170,176,171,171,177,174,171,186,199,186,165,161,167,172,172,167,156,146,142,146,157,171,186,193,188,182,184,186,178,170,172,178,171,158,149,133,109,98,106,118,128,139,145,144,139,131,125,120,108,98,97,90,78,85,104,115,128,146,148,135,131,138,147,158,164,151,129,111,95,82,78,96,128,159,190,217,217,186,157,140,113,92,97,100,83,79,96,104,101,115,136,130,113,119,136,132,127,148, 25 | 165,141,110,101,85,60,62,92,111,116,133,154,154,138,127,120,107,96,92,80,61,60,76,82,82,98,116,116,106,102,106,107,100,94,97,109,123,146,173,189,195,195,183,158,129,104,85,83,91,93,101,127,148,144,132,122,100,60,21,3,2,1,0,13,34,44,49,59,68,74,88,100,94,80,77,69,47,36,48,67,89,117,142,159,180,207,223,218,201,183,168,155,139,121,107,100,102,114,128,142, 26 | 158,170,175,176,171,156,144,146,147,136,131,142,159,174,190,197,190,176,158,139,129,126,123,117,125,147,160,154,150,164,179,183,193,205,188,143,108,95,85,76,83,107,134,152,175,205,224,220,217,226,223,205,193,181,152,121,113,118,117,115,126,144,161,182,198,196,179,164,150,130,114,113,117,120,130,148,164,173,179,177,158,130,108,92,82,87,99,103,104,109,107,97,94,96,94,92,97,97,84,80, 27 | 87,92,102,130,164,188,205,214,203,182,164,144,112,85,82,92,94,95,111,132,141,139,141,144,143,142,143,141,137,143,155,153,135,123,124,125,118,117,124,127,126,129,134,130,122,122,128,134,142,151,150,135,115,106,104,96,87,86,90,101,122,137,129,108,93,91,95,98,98,106,119,118,112,117,122,119,118,119,116,114,119,130,137,138,135,128,117,105,96,88,84,92,98,91,85,90,91,88,90,96, 28 | 104,103,92,83,79,66,50,50,60,63,68,83,93,96,95,92,89,81,70,61,58,62,70,73,67,62,65,68,74,89,103,105,112,133,150,152,148,146,144,139,129,114,98,90,93,105,121,139,155,166,171,169,160,146,136,140,155,167,169,165,168,184,202,211,213,208,192,175,170,172,168,165,169,175,176,177,179,178,178,190,203,196,182,179,176,156,138,132,130,132,135,134,137,149,159,164,170,165,145,128, 29 | 118,103,91,90,97,104,108,111,113,112,110,114,115,103,90,92,95,97,109,119,113,107,118,130,128,122,121,114,104,105,113,107,99,107,117,119,128,153,173,179,178,172,161,155,150,141,123,108,106,114,118,121,136,155,163,164,169,173,168,165,169,169,154,128,108,102,100,96,102,129,164,185,190,190,192,195,197,187,164,140,123,114,118,132,148,161,172,184,195,199,199,196,186,171,166,172,172,162,154,155, 30 | 151,135,116,110,121,140,159,167,157,138,127,121,113,109,110,103,85,74,80,91,99,103,102,94,84,75,71,67,62,62,68,64,52,55,68,71,69,75,76,66,66,75,80,85,94,95,85,71,60,64,80,83,72,63,54,47,54,72,88,93,93,100,112,111,96,82,78,76,72,65,54,49,55,67,86,105,109,105,105,102,93,85,85,98,119,138,148,155,161,165,166,167,173,184,189,180,161,139,122,117, 31 | 124,131,134,142,154,169,186,200,204,206,208,207,199,184,168,161,166,170,163,155,149,142,141,151,160,160,157,157,156,154,157,167,174,171,163,156,148,139,138,142,143,139,135,137,144,145,139,137,142,144,141,137,132,132,148,176,196,198,190,183,178,173,160,139,127,126,118,98,83,82,90,96,94,87,82,83,90,104,113,111,113,130,145,153,160,161,154,146,142,141,140,132,120,117,121,118,113,116,124,137, 32 | 155,170,172,168,169,169,164,165,178,187,181,165,152,145,144,139,129,123,123,129,138,145,147,149,156,158,151,145,145,144,142,150,164,167,158,152,150,141,126,114,110,115,124,129,126,124,122,119,117,114,104,89,77,68,65,69,80,91,97,98,98,97,94,88,84,85,92,97,93,87,89,91,88,86,80,61,39,32,43,55,63,67,70,73,80,89,90,85,79,76,72,76,88,92,90,96,105,103,98,102, 33 | 107,106,103,107,112,107,91,76,69,68,69,75,86,98,110,124,133,133,135,146,156,154,144,135,126,115,107,107,113,115,114,114,118,126,143,162,165,161,167,174,170,168,175,175,164,153,153,157,161,165,176,188,196,199,196,187,178,169,161,155,147,133,123,120,121,124,128,129,130,137,140,133,127,131,143,154,157,151,139,128,125,128,129,124,118,112,102,88,80,83,92,100,103,106,112,116,118,121,127,131, 34 | 128,121,126,142,153,151,149,148,141,138,140,133,116,104,102,108,122,141,153,151,139,127,123,124,126,129,131,134,142,152,150,140,135,137,144,153,160,164,165,163,160,163,168,168,165,161,155,149,148,150,151,150,155,166,172,169,167,167,167,169,167,160,155,158,166,171,168,164,166,162,147,130,115,103,98,100,103,111,127,138,141,140,138,136,136,137,135,134,132,126,118,115,117,114,100,88,85,83,77,73, 35 | 74,72,71,74,79,83,84,84,88,98,107,114,122,127,127,121,116,115,113,105,96,88,83,86,94,100,101,102,103,96,86,86,92,95,92,90,91,89,88,97,105,104,101,109,119,124,127,128,121,114,114,118,113,106,109,118,127,140,155,162,160,165,174,175,166,163,163,157,150,150,147,141,140,140,132,125,126,129,125,117,113,113,111,109,115,126,132,135,144,153,153,148,142,135,129,124,121,125,127,118, 36 | 107,112,127,134,133,131,124,109,99,101,108,119,131,134,132,139,150,149,142,143,140,126,114,113,118,127,137,143,142,138,135,131,128,127,127,126,131,144,156,155,149,155,165,167,162,159,159,159,159,156,151,148,149,154,155,148,144,148,151,152,157,159,153,148,153,161,162,158,150,141,134,130,128,131,136,135,137,152,174,185,182,177,171,160,154,149,142,142,152,155,148,141,136,129,122,120,123,132,131,117, 37 | 109,115,117,111,112,115,106,94,93,102,114,126,132,124,112,109,113,107,97,99,106,100,92,95,98,93,91,93,92,89,85,83,90,98,94,85,87,91,90,92,99,99,97,92,82,75,78,79,70,66,68,67,70,78,80,84,99,111,114,118,123,121,117,114,109,105,100,84,72,78,92,100,109,125,139,146,150,151,145,137,140,152,154,141,130,128,130,135,143,146,145,154,169,175,171,166,158,144,129,121, 38 | 123,128,132,133,128,120,114,114,115,113,111,121,140,149,144,143,150,148,136,127,116,100,93,98,103,97,86,78,72,66,65,74,88,106,133,154,152,141,140,142,132,122,118,112,101,94,93,96,106,124,137,139,134,130,132,143,151,147,136,123,112,117,138,156,163,167,170,168,163,153,145,148,153,149,148,155,158,162,168,171,169,166,158,147,143,148,151,149,147,156,175,187,178,164,162,167,166,162,157,153, 39 | 157,170,180,181,179,176,171,171,172,163,146,126,109,102,110,131,152,173,192,200,184,153,131,123,111,91,77,78,91,109,126,145,168,178,170,161,155,132,100,89,97,101,107,121,123,103,83,79,84,94,106,108,98,85,73,68,74,88,100,114,132,139,136,136,141,139,124,104,100,108,108,101,96,79,56,48,58,71,90,111,116,111,113,115,108,114,148,180,186,174,156,129,107,107,120,124,119,117,122,134, 40 | 148,162,169,164,155,158,162,151,141,151,163,164,172,177,158,135,129,117,91,80,93,105,109,114,120,123,129,135,129,108,94,103,118,126,138,151,145,133,135,136,115,93,90,87,71,60,57,47,36,38,42,39,51,78,96,103,113,118,109,97,94,94,93,95,103,115,119,109,92,76,60,51,52,56,65,85,98,98,101,108,104,103,116,123,114,113,120,114,90,70,63,65,78,102,126,140,140,139,149,167, 41 | 181,180,175,182,198,205,206,215,229,231,224,218,212,206,202,199,187,169,160,163,169,173,181,195,213,236,250,250,249,251,245,236,236,241,243,245,252,250,233,210,189,167,139,117,110,111,120,142,169,188,198,199,192,179,166,157,152,145,130,103,72,50,50,65,80,92,100,102,105,106,96,80,69,68,71,76,78,78,86,102,114,113,100,80,65,58,56,59,71,90,101,94,83,82,80,69,61,64,62,53, 42 | 46,49,71,101,120,127,137,141,130,115,100,82,74,80,92,103,115,125,129,131,135,138,136,133,132,127,122,125,125,115,100,94,103,116,118,113,118,130,134,138,148,151,149,163,179,181,169,152,136,122,103,83,76,87,108,133,152,160,165,177,184,176,161,153,150,141,131,134,142,141,137,136,134,128,122,117,115,119,119,106,88,75,67,59,49,44,51,61,65,70,81,89,94,99,99,91,81,74,65,55, 43 | 45,33,24,26,36,47,59,74,94,114,129,140,146,147,141,131,120,109,100,97,102,106,104,95,90,95,109,124,133,143,154,161,168,179,185,180,172,169,169,166,158,147,145,153,156,154,158,164,164,166,177,185,187,189,191,187,177,167,155,145,145,149,143,130,122,119,116,120,133,141,144,156,174,183,187,198,203,191,180,180,177,166,164,169,163,147,144,154,161,161,162,162,160,163,173,183,187,180,156,129, 44 | 115,108,94,87,102,123,138,156,169,165,157,159,149,119,92,69,33,4,3,19,43,91,161,211,218,212,207,187,163,165,170,142,92,54,34,32,63,114,151,173,187,166,113,80,79,74,76,114,146,137,132,157,164,143,135,147,145,136,153,172,155,127,118,104,79,85,128,160,166,171,173,156,137,143,160,171,183,201,204,180,153,142,128,104,94,97,92,88,107,126,120,118,129,109,70,72,103,110,121,167, 45 | 191,165,149,156,131,85,65,54,27,27,63,87,90,105,112,85,66,83,90,63,39,32,12,0,18,57,71,77,93,86,55,54,75,69,62,86,104,102,114,123,102,92,116,128,118,120,110,70,53,69,65,53,86,119,104,98,120,108,90,131,159,135,157,222,201,122,105,111,68,54,118,171,175,182,181,142,116,130,138,139,180,221,207,192,213,212,180,176,189,175,169,198,216,215,236,255,241,222,225,202, 46 | 158,152,165,153,159,204,207,171,187,222,188,158,200,220,176,166,197,181,138,140,155,141,139,165,168,142,129,126,101,83,102,120,122,146,178,173,155,153,125,64,38,41,20,16,66,103,106,130,157,132,106,124,123,76,56,67,43,2,8,36,42,64,120,148,134,140,174,173,147,148,144,91,46,48,55,60,95,130,124,114,131,134,113,113,137,136,105,95,110,112,109,137,166,159,149,156,141,105,94,105, 47 | 110,130,180,216,221,222,220,197,174,174,167,134,116,127,129,113,126,170,194,202,228,255,246,224,208,175,132,120,134,133,122,119,112,93,79,74,70,74,96,130,161,172,161,146,133,117,100,86,73,56,36,22,28,49,72,90,103,111,118,134,150,145,121,102,92,67,26,1,1,2,11,49,88,93,89,104,117,115,110,92,60,48,62,60,43,50,64,55,60,95,108,93,93,103,96,99,115,105,85,88, 48 | 82,58,61,90,104,111,138,158,156,162,182,187,173,161,146,110,73,68,80,88,107,135,150,163,197,238,254,248,248,254,243,217,197,185,173,168,163,143,128,132,135,133,151,182,204,219,229,233,233,220,201,194,194,178,155,149,153,148,144,155,160,146,132,135,139,135,141,157,164,162,160,146,121,112,113,100,81,85,93,76,60,73,89,90,97,114,119,122,136,145,138,137,145,131,92,70,73,72,72,93, 49 | 107,94,87,103,113,110,117,137,154,160,152,142,133,114,102,114,120,110,108,117,114,113,134,154,157,162,170,173,175,179,170,151,132,121,121,127,122,104,94,102,115,119,127,145,163,179,197,212,216,209,196,178,156,137,126,121,114,98,79,74,92,122,143,150,156,170,177,174,173,167,147,132,132,127,111,101,94,76,68,75,76,73,87,107,118,124,125,112,90,81,91,99,97,101,113,115,100,86,76,63, 50 | 52,49,48,44,43,50,67,89,108,111,102,91,82,76,78,83,84,89,100,98,77,62,62,61,62,78,98,107,111,111,110,114,118,108,91,83,79,77,86,103,110,107,108,120,132,138,145,149,142,146,166,170,152,146,160,169,176,181,168,150,148,151,150,156,168,179,198,220,229,226,228,235,229,207,187,177,168,167,180,191,187,194,218,233,227,217,208,192,174,159,149,144,136,129,128,128,126,123,120,112, 51 | 107,115,128,130,133,143,142,133,137,145,129,105,101,105,100,99,115,138,154,157,155,161,172,173,161,136,108,92,91,88,89,108,133,144,152,164,165,153,145,141,128,109,102,103,99,98,109,122,122,114,117,126,122,111,113,119,110,102,110,115,112,120,141,155,160,172,178,156,128,129,146,147,141,148,150,141,141,145,136,122,118,117,113,116,129,142,149,147,146,150,151,152,166,182,181,173,166,153,136,128, 52 | 129,123,114,109,103,95,92,94,88,78,83,96,97,94,110,130,121,97,84,69,43,29,33,38,42,59,76,83,98,116,124,128,136,134,118,97,82,73,67,60,58,64,63,56,59,65,55,42,39,38,35,41,54,67,89,115,132,138,141,135,119,110,109,101,91,92,96,92,94,105,109,105,106,113,115,113,108,94,76,79,104,118,106,102,118,127,127,138,147,143,148,171,188,192,202,215,214,200,183,167, 53 | 151,139,127,108,96,106,128,146,169,200,220,222,220,218,204,182,167,161,157,152,146,137,130,135,145,151,159,172,182,187,188,184,176,171,162,147,134,127,122,122,123,116,110,124,145,153,146,136,129,122,118,119,121,116,108,103,98,91,93,111,133,142,142,139,130,118,119,134,145,145,145,151,155,152,146,146,152,155,151,147,150,153,153,151,152,147,133,116,107,107,112,123,139,149,159,181,193,176,157,161, 54 | 174,183,192,195,180,157,137,120,112,122,144,172,202,223,228,223,207,178,151,144,143,127,114,124,134,116,103,117,125,112,111,127,133,143,172,178,141,109,105,93,64,55,66,70,81,116,143,137,132,143,137,103,78,67,49,24,16,19,23,26,33,47,67,86,98,105,104,104,107,102,85,72,72,83,109,148,172,168,157,149,124,90,75,79,75,65,79,110,123,118,129,145,130,98,76,52,17,0,6,8, 55 | 7,33,71,77,61,72,100,104,98,112,123,97,64,59,63,60,81,130,163,168,183,220,241,237,237,235,210,182,173,165,145,131,131,132,134,146,162,172,176,182,194,198,184,165,157,155,152,151,153,160,169,168,151,132,120,109,104,106,109,116,134,148,133,104,91,97,115,135,150,150,134,112,96,87,69,47,48,73,88,92,112,147,167,169,173,175,160,141,134,127,112,101,96,89,88,99,115,126,137,151, 56 | 157,150,141,136,130,117,105,101,105,120,145,170,186,203,220,221,204,186,167,137,113,106,111,128,163,197,210,207,193,166,145,142,143,141,143,150,155,161,177,202,224,237,245,249,243,228,213,187,144,107,99,108,112,122,149,174,178,176,185,186,168,154,154,145,134,145,152,125,104,124,139,124,123,148,153,131,119,120,111,94,89,94,89,81,96,121,123,108,109,116,101,75,63,58,50,50,69,89,89,77, 57 | 71,71,67,63,72,93,103,96,87,82,74,61,52,57,70,75,71,75,91,103,106,100,88,86,97,97,84,81,86,81,78,85,90,95,109,121,121,111,107,118,136,144,133,118,114,124,135,139,139,143,145,139,134,129,119,109,105,104,107,115,116,104,91,95,109,119,125,131,137,140,144,149,151,152,152,145,133,120,107,100,105,115,123,131,143,151,152,146,139,130,123,119,114,108,109,118,128,131,134,138, 58 | 138,132,129,134,134,118,107,118,129,124,124,131,128,118,122,135,135,126,127,132,120,97,86,87,84,73,68,71,79,90,104,122,137,136,131,134,132,125,124,118,100,96,115,133,143,158,172,168,150,137,129,116,108,121,143,155,162,176,189,194,198,205,201,183,170,165,155,141,146,163,164,154,160,181,198,204,200,192,190,198,203,196,178,158,145,141,138,133,137,154,172,185,199,213,210,192,174,160,136,102, 59 | 76,69,72,84,114,149,171,181,185,182,171,159,149,143,134,116,97,91,92,90,94,109,124,134,145,156,160,154,138,117,99,89,86,90,96,98,93,85,78,79,88,101,114,115,107,107,113,113,113,129,146,137,105,82,82,88,89,93,103,105,101,105,110,105,101,98,90,85,92,96,96,110,132,139,132,127,129,130,130,136,142,134,125,129,132,123,121,129,128,119,113,112,116,131,146,153,157,157,149,137, 60 | 127,120,119,119,116,107,97,88,82,76,72,73,80,85,86,87,86,80,81,95,107,112,121,127,118,107,109,115,114,112,114,112,100,80,60,52,55,62,71,83,98,114,134,153,165,164,152,143,143,137,121,113,117,120,116,109,101,93,94,107,129,151,163,173,182,185,185,186,181,169,163,166,169,168,166,163,158,155,160,167,165,155,154,170,185,189,190,188,180,179,197,218,222,214,216,222,216,212,216,208, 61 | 178,150,138,129,117,109,113,127,134,124,117,124,126,124,130,139,135,131,143,155,159,163,167,159,151,154,157,148,134,128,126,119,107,97,93,96,103,109,111,111,114,116,117,123,138,149,147,140,135,126,112,101,94,86,77,76,82,87,87,90,96,97,89,90,101,102,90,82,84,86,89,99,110,112,110,114,125,134,139,144,147,146,137,127,123,122,115,104,94,88,89,91,91,97,115,127,121,114,117,114, 62 | 103,100,104,107,111,123,138,139,131,125,114,93,81,85,89,89,95,106,110,111,115,119,121,121,123,126,123,114,105,96,93,99,107,109,108,115,126,127,114,104,107,104,90,80,80,81,82,85,96,110,115,110,109,113,115,116,117,108,96,87,77,69,68,63,58,69,93,111,121,133,146,150,147,144,145,147,147,145,148,156,156,145,135,132,132,135,145,153,157,159,162,172,182,182,178,183,183,173,169,167, 63 | 159,154,160,164,162,157,147,138,142,150,154,162,173,182,190,197,195,185,180,182,180,168,154,140,129,126,133,143,146,146,148,154,163,172,174,170,166,163,165,171,177,176,171,169,169,166,154,137,126,117,107,104,113,122,125,124,120,119,119,118,115,112,112,108,101,98,97,89,80,84,100,109,108,111,114,111,110,119,121,108,99,107,110,94,87,102,106,92,90,101,102,91,90,101,109,105,101,103,104,106, 64 | 119,134,135,128,120,119,132,147,145,142,144,130,108,101,108,119,133,155,179,191,187,178,175,170,158,152,155,156,160,173,178,166,151,144,140,134,131,135,138,138,139,143,147,143,136,137,143,143,144,157,170,170,161,151,144,132,113,99,100,107,108,104,98,93,86,73,56,46,45,45,44,48,52,52,56,67,70,59,53,60,65,63,65,68,62,56,50,49,55,62,63,73,92,102,101,106,118,127,130,126, 65 | 116,109,103,97,97,100,97,88,82,88,100,102,99,100,106,118,132,136,129,124,134,151,164,171,184,202,201,177,162,163,156,147,152,163,169,170,169,166,161,156,161,172,169,160,170,185,181,176,193,214,217,211,205,199,195,187,175,167,166,165,162,168,182,185,176,171,176,183,184,177,169,165,164,165,169,173,178,182,179,165,155,156,158,153,141,128,119,112,105,106,119,131,139,146,145,131,115,103,97,94, 66 | 91,90,90,84,70,62,65,66,61,64,81,100,108,114,123,127,125,124,118,105,100,105,107,107,113,119,112,94,83,87,99,111,121,129,129,124,125,132,143,151,157,159,159,158,164,177,185,183,179,175,172,165,152,140,136,136,138,153,173,179,171,161,149,139,142,150,144,130,124,131,140,145,151,157,161,160,154,143,135,134,139,139,128,107,91,86,82,75,76,86,92,99,115,125,118,104,94,87,79,71, 67 | 64,56,46,38,39,43,45,48,53,58,60,64,70,74,76,82,85,80,66,51,41,43,51,55,63,82,97,97,98,106,104,90,78,67,55,56,71,82,83,89,97,96,85,77,76,86,107,124,128,126,133,144,148,140,132,129,124,118,119,128,133,129,124,123,122,119,121,127,137,145,151,157,166,174,178,174,167,160,154,152,154,154,152,157,168,176,182,187,187,182,177,176,178,177,171,165,165,169,173,179, 68 | 183,185,187,186,176,168,169,168,161,155,154,154,156,158,156,153,149,141,129,120,122,133,147,162,177,185,180,167,152,137,121,107,103,112,126,137,149,156,147,131,128,133,134,129,123,110,96,92,91,91,98,115,134,151,168,178,175,158,131,104,82,68,71,89,108,127,153,179,192,192,182,162,142,126,112,107,121,144,156,155,147,138,128,124,127,128,117,99,91,96,108,120,133,150,168,178,180,180,171,157, 69 | 153,151,145,144,150,147,129,111,102,93,82,85,103,118,121,126,137,143,141,146,158,167,168,159,134,96,72,76,90,96,104,114,109,98,111,133,135,123,122,118,94,77,89,103,104,113,135,145,142,142,129,92,65,70,79,74,74,84,84,77,84,100,103,98,96,89,76,74,86,98,104,112,111,96,82,80,76,67,73,93,98,89,83,83,79,74,76,84,85,84,94,110,116,116,120,126,129,132,129,125, 70 | 130,130,121,121,128,119,103,96,91,86,97,124,141,139,138,151,159,152,150,154,145,136,139,131,110,108,124,135,146,167,177,171,172,185,194,194,195,206,216,212,204,205,201,189,178,167,155,155,165,167,157,150,147,143,140,135,128,126,138,159,175,184,190,190,183,179,177,171,170,180,190,190,179,163,144,122,95,68,56,60,74,97,122,135,143,156,162,154,145,141,133,119,96,69,52,49,54,71,92,107, 71 | 114,118,121,121,117,110,111,116,112,104,106,113,115,116,119,122,126,126,123,130,143,146,145,149,148,141,144,153,152,144,137,130,122,118,121,134,156,181,199,203,199,196,190,176,161,152,148,146,144,147,153,152,142,143,159,166,155,144,141,134,121,108,95,80,74,85,99,100,95,96,104,106,91,80,93,112,118,121,129,122,104,95,90,73,56,48,43,49,71,96,108,103,92,92,103,112,108,98,90,84, 72 | 76,64,58,69,86,93,88,82,82,81,82,92,104,104,98,96,86,71,69,74,71,65,71,85,93,96,110,137,157,158,150,141,124,100,87,88,92,90,85,86,95,112,139,167,187,198,207,213,207,191,175,163,156,153,155,158,158,155,149,147,155,173,192,208,219,221,216,210,201,193,188,179,169,167,166,158,148,137,127,124,125,126,132,146,156,162,168,170,164,156,143,127,118,114,110,105,102,97,84,69, 73 | 62,64,66,68,78,92,98,98,102,111,123,130,122,105,89,73,63,66,80,95,107,115,118,120,122,121,120,126,137,150,151,136,120,103,85,81,93,102,115,145,167,174,189,201,179,147,134,121,97,76,61,53,68,110,158,198,231,250,251,246,238,222,212,216,213,181,147,134,124,118,146,193,215,210,198,176,135,92,74,84,114,151,177,184,190,206,214,203,180,155,140,139,142,141,144,141,122,110,114,111, 74 | 110,135,154,137,112,104,98,95,119,147,148,139,141,129,99,76,63,38,21,34,45,37,47,80,88,75,66,45,9,1,17,22,34,79,120,123,108,104,96,62,28,22,18,5,23,66,82,90,127,132,82,68,98,74,17,19,43,33,50,121,161,142,131,136,115,96,115,129,120,137,169,169,167,197,205,184,203,237,211,171,177,166,106,84,122,141,143,187,227,207,195,230,230,193,208,250,234,209,228,211, 75 | 136,109,146,158,155,197,233,203,161,150,127,94,103,134,144,157,186,186,163,160,164,137,111,117,129,131,144,163,171,174,176,156,116,91,82,71,71,91,100,101,120,139,126,114,125,129,113,109,111,95,79,87,91,77,76,96,112,119,130,131,110,94,96,91,88,114,147,158,164,176,169,143,127,115,92,77,82,87,95,119,146,158,171,192,198,182,168,157,132,101,87,86,89,104,134,165,187,207,222,226, 76 | 225,231,227,202,171,143,114,95,99,116,142,179,205,202,195,200,194,176,165,159,141,125,126,127,118,117,129,133,119,108,108,97,79,79,93,108,129,149,149,140,144,146,128,112,110,103,80,62,57,52,44,56,88,114,131,145,145,132,117,99,75,57,51,42,33,30,20,4,0,3,1,8,38,81,109,116,118,123,119,105,95,83,58,34,19,5,1,22,56,89,115,132,141,153,168,175,173,158,129,98, 77 | 73,47,31,38,62,95,126,149,165,168,157,144,135,126,116,112,117,129,132,127,125,125,119,120,136,149,155,164,172,184,205,203,168,149,159,157,145,150,165,169,167,171,181,186,183,180,181,176,161,143,119,97,89,96,108,115,121,133,151,171,196,222,231,223,218,212,197,180,161,135,112,101,88,80,94,110,114,121,136,141,134,138,153,155,144,145,157,159,151,145,140,136,135,129,121,121,122,117,120,139, 78 | 152,154,159,167,166,157,145,132,126,124,113,99,95,92,85,89,106,121,132,143,145,147,156,166,172,169,157,146,143,131,110,109,131,151,157,155,146,140,144,154,166,175,183,200,215,206,182,166,151,134,136,149,144,131,133,137,135,143,157,164,161,159,160,155,140,123,111,101,85,68,58,56,60,72,86,97,105,111,116,117,120,131,143,145,137,121,103,85,65,49,44,38,25,25,46,66,87,122,154,158, 79 | 148,141,123,99,89,89,91,99,109,112,109,96,71,58,70,82,82,86,100,112,121,129,131,126,123,127,135,147,162,165,147,127,120,113,97,85,87,93,103,126,153,159,153,163,178,173,161,162,163,157,154,148,134,124,116,96,84,96,115,130,151,168,167,147,123,108,104,106,105,97,87,80,73,66,69,76,71,61,72,89,85,75,78,79,76,87,104,101,92,97,97,84,85,98,85,61,70,97,107,122, 80 | }; 81 | -------------------------------------------------------------------------------- /settings.h: -------------------------------------------------------------------------------- 1 | /* Certain combinations are not possible, because there is not enough flash memory available on the ATmega328. Example: The Scania V8 start file 2 | is rather long and can not be used in combination with all motor sounds. 3 | 4 | ******* RECOMMENDED Audacity Settings: 16'000 KHz, 8 bit PCM ********** 5 | 6 | */ 7 | 8 | // Choose the start sound (uncomment the one you want) 9 | //#include "ScaniaV8Start.h" // Scania V8 Start 10 | #include "UralV8Start.h" // Ural 4320 V8 Start 11 | //#include "DefenderV8Start.h" // Land Rover Defender V8 Start 12 | 13 | // Choose the motor sound (uncomment the one you want) 14 | //#include "diesel.h" // Generic old diesel truck 15 | //#include "ScaniaV8Idle.h" // Scania V8 16 | //#include "UralV8Idle.h" // Ural 4320 V8 17 | //#include "DefenderV8Idle.h" // Land Rover Defender V8 18 | //#include "v8.h" // Generic V8 19 | //#include "chevyNovaV8.h" // Chevy Nova Coupe 1975 <------- The best sounding! 20 | //#include "Mustang68.h" // Ford Mustang 1968 21 | //#include "MgBGtV8.h" // MG B GT V8 22 | //#include "LaFerrari.h" // Ferrari "LaFerrari" 23 | #include "TrophyTruckIdle.h" // V8 Trophy Truck (select TOP_SPEED_MULTIPLIER 50 for best effect!!) 24 | 25 | // Choose the horn sound 26 | //#include "horn.h" // The horn (not yet implemented) 27 | 28 | // PWM Throttle range calibration ----------------------------------------------------------------------------------- 29 | int16_t pulseZero = 1500; // Usually 1500 (range 1000 - 2000us) Autocalibration active, if "engineManualOnOff" = "false" 30 | int16_t pulseNeutral = 20; // pulseZero +/- this value 31 | int16_t pulseSpan = 450; // pulseZero +/- this value (150 for JMT 10A ESC, otherwise around 450) 32 | int16_t pulseLimit = 700; // pulseZero +/- this value (700) 33 | 34 | // Engine parameters ------------------------------------------------------------------------------------------------ 35 | //Activate for "engine on off" functionality in combination with "Micro RC" Receiver from TheDIYGuy999. No Pulse Zero auto calibration in this case!! 36 | boolean engineManualOnOff = false; 37 | 38 | // Engine RPM range 39 | #define TOP_SPEED_MULTIPLIER 50 // RPM multiplier: the bigger the number the larger the rev range, 20 - 50 is a good place to start (for most sounds = 30) 40 | const int16_t maxRpm = 1023; // max. 1023 41 | const int16_t minRpm = 0; // always 0 42 | 43 | // Engine mass simulation 44 | const int8_t acc = 9; // Acceleration step per 5ms (9) 45 | const int8_t dec = 6; // Deceleration step per 5ms (6) 46 | -------------------------------------------------------------------------------- /top.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheDIYGuy999/Rc_Engine_Sound/6dd351458083ca4d0e368c6387bd564463510e75/top.jpg -------------------------------------------------------------------------------- /v8.h: -------------------------------------------------------------------------------- 1 | // test sound made by wav2c 2 | 3 | const int BASE_RATE = 8000; 4 | const int idle_length = 2380; 5 | 6 | const unsigned char idle_data[] PROGMEM ={ 7 | 56, 75, 68, 67, 63, 73, 83, 94, 92, 97, 98, 109, 125, 124, 123, 120, 115, 120, 121, 115, 8 | 123, 133, 138, 149, 159, 169, 181, 192, 200, 205, 215, 224, 229, 231, 231, 235, 243, 242, 239, 231, 9 | 228, 225, 216, 202, 183, 162, 138, 124, 98, 68, 55, 44, 39, 34, 34, 35, 37, 41, 47, 57, 10 | 64, 74, 85, 95, 103, 105, 113, 134, 148, 150, 149, 141, 127, 103, 89, 115, 114, 88, 69, 58, 11 | 62, 60, 59, 60, 68, 73, 76, 83, 92, 104, 114, 127, 139, 141, 140, 138, 135, 128, 131, 142, 12 | 145, 145, 146, 149, 151, 164, 172, 183, 190, 193, 200, 207, 212, 217, 226, 232, 238, 229, 229, 234, 13 | 228, 222, 214, 193, 191, 175, 147, 135, 97, 79, 72, 48, 36, 34, 29, 27, 27, 29, 39, 56, 14 | 68, 75, 77, 69, 69, 73, 77, 77, 79, 83, 83, 85, 87, 89, 91, 101, 119, 130, 125, 121, 15 | 118, 122, 130, 136, 143, 151, 153, 167, 180, 192, 207, 213, 213, 214, 201, 178, 185, 177, 167, 154, 16 | 128, 109, 90, 80, 72, 70, 77, 88, 108, 125, 132, 145, 169, 184, 190, 200, 197, 203, 211, 216, 17 | 212, 209, 209, 197, 179, 165, 165, 162, 150, 136, 93, 52, 49, 51, 43, 36, 40, 43, 46, 54, 18 | 58, 57, 58, 59, 62, 69, 71, 68, 75, 80, 84, 82, 76, 78, 78, 78, 78, 90, 106, 123, 19 | 139, 144, 149, 163, 179, 197, 212, 218, 224, 226, 226, 227, 238, 243, 241, 240, 235, 231, 222, 217, 20 | 202, 188, 161, 144, 129, 93, 66, 49, 40, 33, 31, 29, 30, 32, 38, 44, 55, 71, 94, 111, 21 | 117, 115, 116, 126, 143, 166, 174, 166, 164, 155, 125, 97, 92, 109, 98, 73, 61, 52, 50, 54, 22 | 56, 57, 64, 71, 81, 97, 110, 116, 126, 137, 144, 143, 143, 137, 131, 132, 133, 139, 145, 149, 23 | 148, 150, 150, 160, 174, 189, 204, 207, 214, 217, 223, 226, 234, 239, 236, 233, 231, 223, 218, 202, 24 | 179, 173, 150, 129, 120, 99, 84, 85, 76, 57, 45, 36, 37, 43, 47, 59, 78, 89, 95, 105, 25 | 95, 86, 82, 74, 73, 75, 76, 66, 62, 63, 61, 56, 71, 94, 117, 124, 119, 113, 117, 132, 26 | 141, 152, 154, 159, 172, 186, 196, 206, 216, 213, 212, 211, 190, 167, 171, 171, 155, 123, 88, 69, 27 | 63, 63, 61, 66, 71, 84, 100, 114, 126, 151, 182, 192, 196, 196, 189, 186, 195, 200, 194, 187, 28 | 184, 175, 164, 145, 139, 148, 141, 137, 108, 62, 60, 68, 67, 65, 63, 63, 64, 66, 65, 70, 29 | 69, 68, 73, 84, 83, 76, 64, 56, 68, 70, 59, 57, 62, 66, 74, 89, 107, 134, 153, 163, 30 | 174, 182, 198, 213, 230, 237, 236, 237, 229, 228, 237, 239, 237, 231, 225, 215, 195, 183, 167, 162, 31 | 145, 133, 133, 101, 76, 66, 49, 49, 45, 46, 55, 66, 73, 77, 83, 85, 103, 107, 110, 108, 32 | 105, 111, 128, 146, 156, 155, 144, 139, 139, 114, 91, 117, 125, 114, 86, 69, 65, 64, 67, 74, 33 | 79, 80, 82, 83, 93, 100, 102, 103, 104, 102, 106, 100, 92, 99, 108, 113, 127, 131, 135, 143, 34 | 151, 169, 187, 203, 214, 228, 232, 240, 237, 231, 232, 239, 240, 235, 234, 223, 208, 188, 171, 167, 35 | 159, 148, 147, 137, 124, 116, 107, 98, 84, 72, 71, 73, 82, 98, 109, 105, 95, 94, 84, 74, 36 | 67, 51, 45, 45, 43, 35, 31, 32, 37, 39, 46, 67, 106, 141, 144, 143, 141, 146, 162, 169, 37 | 178, 183, 186, 194, 197, 196, 203, 208, 201, 197, 184, 148, 128, 133, 121, 111, 92, 67, 60, 60, 38 | 60, 66, 77, 85, 96, 114, 134, 143, 173, 196, 199, 198, 174, 161, 172, 179, 179, 165, 170, 169, 39 | 153, 153, 151, 159, 162, 162, 166, 141, 111, 118, 109, 103, 91, 74, 73, 64, 56, 46, 48, 48, 40 | 45, 36, 31, 28, 24, 21, 25, 33, 37, 41, 45, 58, 71, 88, 106, 127, 146, 162, 169, 172, 41 | 179, 194, 216, 225, 230, 235, 233, 231, 231, 226, 219, 207, 197, 186, 180, 176, 171, 166, 160, 146, 42 | 140, 130, 101, 94, 85, 84, 91, 85, 87, 86, 85, 84, 81, 78, 77, 84, 83, 78, 76, 74, 43 | 85, 95, 122, 149, 152, 160, 158, 158, 150, 130, 147, 150, 131, 107, 91, 90, 84, 84, 85, 87, 44 | 85, 84, 79, 73, 74, 76, 78, 81, 81, 86, 86, 89, 102, 108, 119, 125, 131, 139, 149, 163, 45 | 180, 207, 224, 233, 241, 239, 242, 240, 236, 229, 222, 210, 194, 188, 183, 182, 177, 171, 167, 160, 46 | 156, 146, 139, 138, 140, 136, 120, 103, 92, 91, 92, 92, 90, 96, 87, 68, 57, 51, 48, 32, 47 | 26, 25, 27, 32, 32, 39, 52, 65, 66, 78, 96, 133, 156, 158, 161, 159, 173, 185, 187, 191, 48 | 187, 184, 190, 188, 182, 174, 172, 166, 159, 156, 139, 132, 131, 114, 104, 87, 77, 84, 90, 98, 49 | 103, 112, 118, 123, 138, 156, 168, 191, 195, 189, 187, 168, 153, 164, 174, 172, 166, 172, 179, 181, 50 | 191, 190, 194, 204, 197, 195, 176, 142, 144, 133, 117, 82, 56, 53, 43, 29, 17, 17, 11, 12, 51 | 12, 12, 15, 19, 24, 37, 48, 58, 65, 74, 80, 85, 91, 101, 118, 134, 152, 160, 167, 180, 52 | 194, 213, 219, 218, 212, 201, 192, 192, 192, 194, 194, 193, 191, 195, 208, 211, 214, 210, 205, 196, 53 | 188, 154, 125, 107, 87, 88, 78, 64, 57, 49, 57, 57, 50, 66, 60, 57, 60, 58, 61, 71, 54 | 86, 115, 140, 140, 143, 143, 144, 131, 129, 148, 137, 110, 94, 85, 80, 73, 62, 56, 52, 41, 55 | 36, 36, 40, 43, 50, 59, 68, 74, 84, 94, 116, 139, 149, 161, 164, 172, 175, 179, 188, 206, 56 | 221, 214, 205, 198, 195, 192, 190, 183, 180, 186, 187, 186, 188, 187, 187, 188, 189, 201, 188, 183, 57 | 176, 161, 150, 130, 112, 92, 83, 76, 68, 57, 48, 47, 50, 47, 42, 36, 35, 33, 32, 42, 58 | 46, 60, 70, 80, 83, 86, 91, 95, 105, 123, 159, 177, 176, 169, 163, 172, 178, 180, 171, 158, 59 | 158, 159, 159, 164, 176, 176, 174, 176, 173, 179, 184, 172, 159, 141, 124, 119, 114, 111, 113, 118, 60 | 116, 118, 128, 137, 139, 147, 158, 156, 157, 153, 140, 144, 157, 157, 152, 155, 161, 152, 154, 157, 61 | 159, 173, 177, 183, 156, 122, 125, 116, 105, 80, 57, 47, 41, 34, 24, 19, 19, 18, 18, 25, 62 | 32, 39, 48, 68, 78, 82, 87, 99, 110, 118, 130, 142, 154, 172, 182, 184, 190, 199, 216, 217, 63 | 207, 197, 197, 190, 184, 186, 186, 186, 182, 178, 172, 172, 171, 172, 171, 162, 145, 137, 123, 101, 64 | 82, 77, 75, 69, 69, 65, 62, 62, 65, 70, 70, 77, 84, 85, 83, 88, 103, 112, 137, 157, 65 | 161, 158, 160, 140, 134, 152, 147, 112, 90, 94, 85, 82, 80, 79, 72, 67, 62, 60, 58, 62, 66 | 71, 87, 96, 113, 133, 136, 142, 154, 173, 181, 188, 185, 184, 181, 178, 183, 192, 197, 192, 189, 67 | 190, 189, 185, 178, 178, 183, 176, 169, 176, 187, 185, 186, 180, 180, 180, 178, 164, 139, 121, 113, 68 | 99, 87, 85, 77, 66, 64, 72, 69, 77, 73, 60, 55, 52, 44, 35, 37, 39, 45, 49, 62, 69 | 69, 76, 81, 87, 96, 111, 142, 165, 169, 167, 174, 176, 174, 168, 172, 180, 177, 169, 169, 170, 70 | 167, 161, 162, 152, 145, 144, 131, 123, 109, 102, 91, 88, 97, 103, 106, 112, 126, 142, 160, 171, 71 | 186, 199, 204, 209, 212, 211, 212, 216, 217, 212, 207, 204, 193, 175, 167, 167, 160, 152, 145, 95, 72 | 66, 67, 61, 66, 63, 57, 48, 45, 38, 31, 24, 19, 17, 18, 25, 25, 29, 36, 48, 59, 73 | 71, 79, 90, 100, 111, 124, 137, 150, 161, 171, 175, 181, 193, 203, 207, 208, 209, 215, 213, 208, 74 | 199, 200, 197, 191, 188, 182, 177, 168, 163, 154, 151, 138, 115, 88, 71, 72, 76, 81, 78, 76, 75 | 75, 77, 77, 82, 80, 69, 69, 70, 73, 72, 77, 92, 113, 146, 154, 156, 166, 145, 146, 151, 76 | 136, 110, 91, 91, 85, 88, 88, 87, 77, 70, 76, 73, 71, 69, 76, 88, 99, 100, 101, 107, 77 | 117, 127, 147, 170, 179, 174, 166, 167, 170, 181, 198, 206, 206, 208, 207, 207, 208, 209, 209, 207, 78 | 206, 202, 207, 215, 216, 214, 212, 211, 207, 201, 191, 170, 147, 127, 111, 94, 90, 86, 79, 69, 79 | 60, 67, 81, 91, 74, 66, 61, 46, 31, 27, 29, 29, 34, 39, 51, 59, 68, 74, 84, 105, 80 | 133, 154, 159, 155, 160, 160, 159, 157, 160, 164, 165, 172, 175, 182, 177, 174, 168, 170, 168, 157, 81 | 143, 126, 115, 102, 92, 91, 95, 100, 112, 126, 148, 157, 168, 181, 197, 205, 204, 209, 207, 204, 82 | 200, 197, 196, 201, 201, 193, 178, 168, 162, 156, 149, 140, 103, 69, 74, 60, 39, 34, 36, 33, 83 | 27, 22, 30, 36, 27, 22, 22, 30, 38, 44, 44, 48, 55, 59, 60, 60, 69, 82, 94, 114, 84 | 138, 154, 167, 173, 185, 194, 206, 215, 215, 207, 200, 203, 196, 195, 190, 191, 191, 203, 210, 203, 85 | 199, 190, 188, 177, 164, 135, 100, 71, 56, 54, 49, 50, 45, 46, 48, 53, 65, 77, 83, 82, 86 | 93, 104, 112, 112, 125, 147, 151, 155, 153, 155, 133, 128, 143, 120, 88, 76, 80, 81, 82, 80, 87 | 73, 67, 65, 58, 56, 52, 56, 62, 73, 94, 100, 100, 102, 117, 131, 143, 157, 167, 177, 183, 88 | 191, 203, 211, 223, 233, 232, 231, 227, 217, 209, 204, 194, 184, 185, 179, 177, 184, 177, 177, 175, 89 | 177, 186, 177, 161, 141, 132, 121, 110, 93, 80, 73, 69, 72, 70, 65, 70, 81, 80, 76, 65, 90 | 58, 46, 44, 48, 52, 57, 60, 67, 67, 70, 77, 90, 118, 150, 162, 169, 167, 167, 167, 169, 91 | 168, 160, 155, 153, 159, 161, 161, 156, 153, 152, 150, 142, 137, 129, 117, 108, 99, 104, 106, 106, 92 | 107, 110, 118, 137, 157, 162, 164, 177, 186, 192, 198, 197, 202, 206, 210, 213, 215, 215, 214, 209, 93 | 203, 200, 194, 184, 179, 170, 152, 151, 137, 119, 112, 107, 105, 99, 93, 85, 74, 67, 64, 60, 94 | 58, 56, 61, 67, 70, 65, 55, 58, 64, 56, 54, 55, 57, 63, 69, 79, 86, 90, 96, 101, 95 | 117, 137, 152, 165, 165, 163, 164, 169, 169, 166, 163, 165, 172, 170, 174, 173, 165, 161, 156, 154, 96 | 146, 135, 119, 103, 97, 90, 89, 91, 97, 103, 111, 123, 145, 164, 170, 184, 200, 205, 195, 193, 97 | 187, 185, 185, 186, 185, 184, 185, 183, 179, 179, 191, 195, 194, 189, 168, 149, 141, 107, 83, 70, 98 | 56, 45, 34, 31, 28, 22, 13, 13, 12, 17, 20, 22, 29, 35, 46, 56, 67, 78, 87, 101, 99 | 115, 130, 140, 152, 163, 169, 179, 191, 203, 209, 213, 218, 224, 220, 211, 201, 193, 187, 182, 174, 100 | 170, 169, 164, 158, 156, 152, 132, 117, 103, 96, 95, 90, 87, 84, 82, 79, 75, 70, 69, 73, 101 | 81, 85, 88, 88, 88, 93, 114, 145, 154, 157, 164, 166, 156, 162, 163, 130, 97, 88, 80, 72, 102 | 73, 68, 64, 57, 61, 65, 65, 60, 64, 73, 76, 81, 80, 84, 92, 99, 108, 123, 136, 154, 103 | 163, 166, 179, 197, 216, 228, 237, 239, 242, 243, 238, 237, 239, 230, 218, 210, 196, 189, 180, 174, 104 | 170, 165, 159, 149, 139, 124, 116, 101, 92, 85, 77, 77, 78, 79, 76, 72, 73, 87, 89, 82, 105 | 62, 46, 35, 29, 26, 23, 26, 31, 39, 45, 58, 68, 83, 103, 137, 159, 162, 161, 158, 160, 106 | 161, 163, 168, 173, 178, 187, 190, 200, 198, 191, 182, 169, 158, 146, 134, 116, 101, 83, 73, 72, 107 | 80, 90, 99, 109, 122, 151, 178, 187, 195, 204, 207, 208, 204, 201, 201, 198, 190, 182, 181, 183, 108 | 180, 168, 165, 172, 178, 179, 178, 162, 141, 137, 111, 87, 79, 71, 66, 56, 48, 40, 42, 36, 109 | 29, 20, 19, 19, 21, 28, 33, 36, 43, 50, 59, 74, 87, 110, 130, 141, 156, 177, 188, 198, 110 | 207, 214, 224, 228, 227, 230, 234, 233, 233, 229, 213, 204, 195, 180, 172, 168, 162, 153, 143, 111, 111 | 87, 69, 59, 66, 69, 76, 76, 76, 77, 77, 79, 84, 87, 90, 91, 88, 82, 81, 87, 97, 112 | 125, 144, 148, 149, 150, 145, 145, 155, 137, 102, 87, 88, 85, 83, 77, 74, 74, 72, 74, 76, 113 | 81, 91, 96, 99, 99, 98, 98, 100, 106, 103, 113, 124, 132, 140, 145, 159, 175, 193, 205, 218, 114 | 229, 234, 239, 242, 243, 242, 240, 231, 224, 218, 218, 211, 194, 178, 164, 160, 148, 138, 112, 95, 115 | 86, 76, 78, 71, 66, 68, 71, 81, 82, 86, 97, 90, 81, 81, 78, 57, 46, 41, 40, 37, 116 | 34, 37, 40, 44, 48, 61, 78, 118, 160, 166, 158, 160, 168, 169, 172, 173, 172, 178, 186, 194, 117 | 200, 210, 211, 203, 193, 187, 166, 146, 132, 109, 86, 71, 67, 67, 69, 72, 82, 101, 130, 155, 118 | 165, 172, 194, 211, 214, 211, 211, 212, 208, 199, 192, 180, 174, 175, 161, 151, 149, 151, 147, 148, 119 | 138, 119, 115, 101, 78, 74, 73, 69, 67, 64, 59, 53, 44, 41, 45, 45, 40, 32, 34, 36, 120 | 44, 43, 42, 45, 52, 63, 75, 95, 107, 121, 143, 161, 173, 193, 212, 218, 217, 221, 225, 224, 121 | 228, 229, 234, 234, 230, 225, 210, 199, 185, 172, 159, 152, 135, 110, 86, 58, 49, 47, 50, 53, 122 | 60, 70, 74, 78, 81, 85, 88, 93, 98, 97, 90, 87, 89, 104, 127, 139, 139, 141, 141, 143, 123 | 141, 142, 133, 101, 82, 77, 79, 83, 83, 85, 83, 78, 78, 76, 78, 82, 93, 108, 116, 116, 124 | 113, 122, 124, 124, 127, 131, 134, 135, 138, 142, 152, 170, 198, 208, 213, 220, 227, 232, 238, 240, 125 | 243, 248, 238, 229, 228, 230, 221, 211, 192, 171, 155, 147, 133, 121, 105, 87, 76, 53, 44, 50, }; 126 | -------------------------------------------------------------------------------- /wiring.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheDIYGuy999/Rc_Engine_Sound/6dd351458083ca4d0e368c6387bd564463510e75/wiring.jpg --------------------------------------------------------------------------------