_Bootscreen.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. /**
  2. * Marlin 3D Printer Firmware
  3. * Copyright (c) 2019 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
  4. *
  5. * Based on Sprinter and grbl.
  6. * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
  7. *
  8. * This program is free software: you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License as published by
  10. * the Free Software Foundation, either version 3 of the License, or
  11. * (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU General Public License
  19. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. *
  21. */
  22. #pragma once
  23. /**
  24. * Animated boot screen example
  25. */
  26. #define CUSTOM_BOOTSCREEN_ANIMATED
  27. #define CUSTOM_BOOTSCREEN_FRAME_TIME 100 // (ms)
  28. #define CUSTOM_BOOTSCREEN_BMPWIDTH 120
  29. const unsigned char custom_start_bmp[] PROGMEM = {
  30. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  31. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  32. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  33. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  34. B10000011,B11001111,B00000000,B00000000,B00001100,B00110000,B00111111,
  35. B10000111,B11111111,B10000000,B00000000,B00001100,B00110000,B00011111,
  36. B10000110,B01111001,B10000000,B00000000,B00001100,B00000000,B00001111,
  37. B10001100,B00110000,B11000111,B10000011,B10001100,B00110000,B11100111,
  38. B10001100,B00110000,B11001111,B11000111,B11001100,B00110001,B11110011,
  39. B10001100,B00110000,B11011100,B11101100,B11101100,B00110011,B10111001,
  40. B10001100,B00110000,B11011000,B01101100,B01101100,B00110011,B00011001,
  41. B10001100,B00110000,B11010000,B01101100,B00001100,B00110011,B00011001,
  42. B10001100,B00110000,B11011000,B01101100,B00001100,B00110011,B00011001,
  43. B10001100,B00110000,B11011100,B01101100,B00001110,B00111011,B00011001,
  44. B10001100,B00110000,B11001111,B01111100,B00000111,B10011111,B00011001,
  45. B10001100,B00110000,B11000111,B01111100,B00000011,B10001111,B00011001,
  46. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  47. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  48. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  49. };
  50. #if ENABLED(CUSTOM_BOOTSCREEN_ANIMATED)
  51. const unsigned char custom_start_bmp1[] PROGMEM = {
  52. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  53. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  54. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  55. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  56. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,
  57. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00011111,
  58. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,
  59. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,
  60. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,
  61. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  62. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  63. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  64. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  65. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  66. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  67. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,
  68. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  69. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  70. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  71. };
  72. const unsigned char custom_start_bmp2[] PROGMEM = {
  73. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  74. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  75. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  76. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  77. B10000011,B11001111,B00000000,B00000000,B00000000,B00000000,B00111111,
  78. B10000111,B11111111,B10000000,B00000000,B00000000,B00000000,B00011111,
  79. B10000110,B01111001,B10000000,B00000000,B00000000,B00000000,B00001111,
  80. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000111,
  81. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000011,
  82. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  83. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  84. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  85. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  86. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  87. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  88. B10001100,B00110000,B11000000,B00000000,B00000000,B00000000,B00000001,
  89. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  90. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  91. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  92. };
  93. const unsigned char custom_start_bmp3[] PROGMEM = {
  94. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  95. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  96. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  97. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  98. B10000011,B11001111,B00000000,B00000000,B00000000,B00000000,B00111111,
  99. B10000111,B11111111,B10000000,B00000000,B00000000,B00000000,B00011111,
  100. B10000110,B01111001,B10000000,B00000000,B00000000,B00000000,B00001111,
  101. B10001100,B00110000,B11000111,B10000000,B00000000,B00000000,B00000111,
  102. B10001100,B00110000,B11001111,B11000000,B00000000,B00000000,B00000011,
  103. B10001100,B00110000,B11011100,B11100000,B00000000,B00000000,B00000001,
  104. B10001100,B00110000,B11011000,B01100000,B00000000,B00000000,B00000001,
  105. B10001100,B00110000,B11010000,B01100000,B00000000,B00000000,B00000001,
  106. B10001100,B00110000,B11011000,B01100000,B00000000,B00000000,B00000001,
  107. B10001100,B00110000,B11011100,B01100000,B00000000,B00000000,B00000001,
  108. B10001100,B00110000,B11001111,B01110000,B00000000,B00000000,B00000001,
  109. B10001100,B00110000,B11000111,B01110000,B00000000,B00000000,B00000001,
  110. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  111. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  112. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  113. };
  114. const unsigned char custom_start_bmp4[] PROGMEM = {
  115. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  116. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  117. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  118. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  119. B10000011,B11001111,B00000000,B00000000,B00000000,B00000000,B00111111,
  120. B10000111,B11111111,B10000000,B00000000,B00000000,B00000000,B00011111,
  121. B10000110,B01111001,B10000000,B00000000,B00000000,B00000000,B00001111,
  122. B10001100,B00110000,B11000111,B10000011,B10000000,B00000000,B00000111,
  123. B10001100,B00110000,B11001111,B11000111,B11000000,B00000000,B00000011,
  124. B10001100,B00110000,B11011100,B11101100,B11100000,B00000000,B00000001,
  125. B10001100,B00110000,B11011000,B01101100,B01100000,B00000000,B00000001,
  126. B10001100,B00110000,B11010000,B01101100,B00000000,B00000000,B00000001,
  127. B10001100,B00110000,B11011000,B01101100,B00000000,B00000000,B00000001,
  128. B10001100,B00110000,B11011100,B01101100,B00000000,B00000000,B00000001,
  129. B10001100,B00110000,B11001111,B01111100,B00000000,B00000000,B00000001,
  130. B10001100,B00110000,B11000111,B01111100,B00000000,B00000000,B00000001,
  131. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  132. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  133. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  134. };
  135. const unsigned char custom_start_bmp5[] PROGMEM = {
  136. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  137. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  138. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  139. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  140. B10000011,B11001111,B00000000,B00000000,B00001100,B00000000,B00111111,
  141. B10000111,B11111111,B10000000,B00000000,B00001100,B00000000,B00011111,
  142. B10000110,B01111001,B10000000,B00000000,B00001100,B00000000,B00001111,
  143. B10001100,B00110000,B11000111,B10000011,B10001100,B00000000,B00000111,
  144. B10001100,B00110000,B11001111,B11000111,B11001100,B00000000,B00000011,
  145. B10001100,B00110000,B11011100,B11101100,B11101100,B00000000,B00000001,
  146. B10001100,B00110000,B11011000,B01101100,B01101100,B00000000,B00000001,
  147. B10001100,B00110000,B11010000,B01101100,B00001100,B00000000,B00000001,
  148. B10001100,B00110000,B11011000,B01101100,B00001100,B00000000,B00000001,
  149. B10001100,B00110000,B11011100,B01101100,B00001110,B00000000,B00000001,
  150. B10001100,B00110000,B11001111,B01111100,B00000111,B10000000,B00000001,
  151. B10001100,B00110000,B11000111,B01111100,B00000011,B10000000,B00000001,
  152. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  153. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  154. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  155. };
  156. const unsigned char custom_start_bmp6[] PROGMEM = {
  157. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
  158. B01100000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111111,
  159. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,
  160. B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,
  161. B10000011,B11001111,B00000000,B00000000,B00001100,B00110000,B00111111,
  162. B10000111,B11111111,B10000000,B00000000,B00001100,B00110000,B00011111,
  163. B10000110,B01111001,B10000000,B00000000,B00001100,B00000000,B00001111,
  164. B10001100,B00110000,B11000111,B10000011,B10001100,B00110000,B00000111,
  165. B10001100,B00110000,B11001111,B11000111,B11001100,B00110000,B00000011,
  166. B10001100,B00110000,B11011100,B11101100,B11101100,B00110000,B00000001,
  167. B10001100,B00110000,B11011000,B01101100,B01101100,B00110000,B00000001,
  168. B10001100,B00110000,B11010000,B01101100,B00001100,B00110000,B00000001,
  169. B10001100,B00110000,B11011000,B01101100,B00001100,B00110000,B00000001,
  170. B10001100,B00110000,B11011100,B01101100,B00001110,B00111000,B00000001,
  171. B10001100,B00110000,B11001111,B01111100,B00000111,B10011100,B00000001,
  172. B10001100,B00110000,B11000111,B01111100,B00000011,B10001100,B00000001,
  173. B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000010,
  174. B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,
  175. B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000
  176. };
  177. const unsigned char * const custom_bootscreen_animation[] PROGMEM = {
  178. custom_start_bmp1, custom_start_bmp2, custom_start_bmp3, custom_start_bmp4, custom_start_bmp5, custom_start_bmp6, custom_start_bmp
  179. };
  180. #endif