Anycubic Mega Zero (e.g., Anycubic v0.0.4) (#120)

This commit is contained in:
Alexander D. Kanevskiy 2020-06-03 06:05:51 +03:00 committed by GitHub
parent 3eff6ad375
commit 4ca458d229
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 3797 additions and 0 deletions

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,7 @@
# Anycubic Mega Zero Support
This branch is a reverse-engineered version based on the published firmware v0.0.4 from Anycubic. It is **not** the authoritative source, but has been carefully re-built by looking at their firmware and inferring the base version and configuration they used.
## Bitmaps
The bootscreen and custom status screens come from Anycubic's firmware.

View file

@ -0,0 +1,62 @@
/**
* Marlin 3D Printer Firmware
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
/**
* Made with Marlin Bitmap Converter
* https://marlinfw.org/tools/u8glib/converter.html
*
* This bitmap from 128x64 C/C++ data
*/
#pragma once
#define CUSTOM_BOOTSCREEN_TIMEOUT 2000
#define CUSTOM_BOOTSCREEN_INVERTED
#define CUSTOM_BOOTSCREEN_BMPWIDTH 128
const unsigned char custom_start_bmp[] PROGMEM = {
B00000000,B00100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B11011100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B11101111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000001,B11110111,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000011,B11111011,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000011,B11111100,B11111100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000111,B11111111,B01111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000111,B11111111,B10111111,B00000000,B00000000,B10000000,B10000000,B11101110,B00001110,B00011011,B00000111,B00001110,B00110011,B10000011,B00000011,B10110000,
B00001111,B11111111,B11011111,B10000000,B00000000,B11000000,B11000000,B11100111,B00011100,B01111011,B11000111,B00001110,B00110011,B11000011,B00000111,B10111000,
B00001111,B11111111,B11101111,B11000000,B00000001,B11000000,B11100000,B11100111,B00111100,B11111011,B11000111,B00001110,B00110011,B11100011,B00001111,B00111100,
B00011111,B11111111,B11110111,B11100000,B00000000,B11100000,B01111000,B11100011,B00111000,B11100000,B10000111,B00001110,B00110000,B11100011,B00001100,B00000000,
B00011111,B11111111,B11111011,B11110000,B00000010,B11100000,B00111100,B11100000,B01110001,B11000000,B00000111,B00001110,B00110000,B11100011,B00011100,B00000000,
B00111111,B11111111,B11110100,B00110000,B00000010,B01110000,B10011110,B11100000,B11100001,B11000000,B00000111,B00001110,B00110011,B11000011,B00011100,B00000000,
B01111111,B11111111,B11101111,B11000000,B00000111,B01110000,B11001111,B11100000,B11100001,B11000000,B00000111,B00001110,B00110011,B11000011,B00011100,B00000000,
B00111111,B11111111,B11101111,B11110000,B00000110,B00111000,B11100111,B11100000,B11000001,B11000000,B00000111,B00001110,B00110000,B00100011,B00011100,B00000000,
B00011111,B11111111,B11011111,B11100000,B00001110,B11111000,B11100011,B11100000,B11000000,B11100000,B00000111,B00001110,B00110000,B11100011,B00011100,B00000000,
B00011111,B11111111,B10111111,B11000000,B00001100,B11111100,B11100000,B11100000,B11000000,B11110001,B11000111,B10011100,B00110011,B11100011,B00001111,B00011100,
B00001111,B11111111,B01111111,B10000000,B00011100,B00001100,B11100000,B01100000,B11000000,B01111011,B11000011,B10011100,B00110011,B11000011,B00000111,B10111100,
B00000111,B11111111,B01111111,B00000000,B00011000,B00001110,B11100000,B00100000,B11000000,B00111011,B10000001,B10010000,B00110011,B10000011,B00000011,B10110000,
B00000111,B11111110,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000011,B11111101,B11111100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000001,B11111011,B11111000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000001,B11110111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B11110111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B01101110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B01010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000
};

View file

@ -0,0 +1,84 @@
/**
* Marlin 3D Printer Firmware
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
/**
* Made with Marlin Bitmap Converter
* https://marlinfw.org/tools/u8glib/converter.html
*
* This bitmap from 128x19 C/C++ data
*/
#pragma once
#define STATUS_SCREEN_HOTEND_TEXT_X(E) (76 + (E) * 20)
#define STATUS_SCREEN_BED_TEXT_X (HOTENDS > 1 ? 81 : 73)
#define STATUS_SCREEN_FAN_TEXT_X 103
#define STATUS_SCREENWIDTH 128
#if HOTENDS < 2
const unsigned char status_screen0_bmp[] PROGMEM = {
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
B00011101,B11000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
B00001101,B10000000,B00000000,B00000000,B00000000,B00001000,B10000000,B00000000,B00000000,B00000000,B01111111,B10000000,B00000000,B00101100,B00000000,B11010000,
B00001101,B10000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000000,B00000000,B00000000,B11111111,B11000000,B00000000,B00101110,B00110001,B11010000,
B00001101,B10000111,B10000111,B11000111,B00000000,B00000001,B00000111,B10011101,B11000011,B00000000,B11111111,B11000000,B00000000,B00101111,B01111011,B11010000,
B00001101,B10001000,B01001000,B10001000,B10000000,B00000001,B00001000,B01000110,B01000100,B10000000,B11111111,B11000000,B00000000,B00101111,B01111011,B11010000,
B00001010,B10001000,B01001000,B10000001,B10000000,B00000010,B00001000,B01000100,B00001000,B01000000,B01111111,B10000000,B00000000,B00101110,B00110001,B11010000,
B00001010,B10001111,B11000111,B00000110,B10000000,B00000010,B00001111,B11000100,B00001000,B01000000,B01111111,B10000000,B00000000,B00101100,B00000000,B11010000,
B00001010,B10001000,B00001000,B00001000,B10000000,B00000100,B00001000,B00000100,B00001000,B01000000,B11111111,B11000000,B00000000,B00100000,B00110000,B00010000,
B00001010,B10001000,B01000111,B10001001,B10000000,B00000100,B01001000,B01000100,B00000100,B10000000,B11111111,B11000000,B00000000,B00100000,B01111000,B00010000,
B00011010,B11000111,B10001000,B01000110,B11000000,B00001111,B11000111,B10011111,B00000011,B00000000,B11111111,B11000000,B00000000,B00100000,B11111100,B00010000,
B00000000,B00000000,B00001000,B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B00000000,B00000000,B00110000,B11111100,B00110000,
B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00011110,B00000000,B00000000,B00111000,B00000000,B01110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00001100,B00000000,B00000000,B00111111,B11111111,B11110000
};
const unsigned char status_screen1_bmp[] PROGMEM = {
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
B00011101,B11000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
B00001101,B10000000,B00000000,B00000000,B00000000,B00001000,B10000000,B00000000,B00000000,B00000000,B01111111,B10000000,B00000000,B00101111,B00000011,B11010000,
B00001101,B10000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000000,B00000000,B00000000,B11111111,B11000000,B00000000,B00100000,B00110000,B00010000,
B00001101,B10000111,B10000111,B11000111,B00000000,B00000001,B00000111,B10011101,B11000011,B00000000,B11111111,B11000000,B00000000,B00100000,B01111000,B00010000,
B00001101,B10001000,B01001000,B10001000,B10000000,B00000001,B00001000,B01000110,B01000100,B10000000,B11111111,B11000000,B00000000,B00100000,B01111000,B00010000,
B00001010,B10001000,B01001000,B10000001,B10000000,B00000010,B00001000,B01000100,B00001000,B01000000,B01111111,B10000000,B00000000,B00100000,B00110000,B00010000,
B00001010,B10001111,B11000111,B00000110,B10000000,B00000010,B00001111,B11000100,B00001000,B01000000,B01111111,B10000000,B00000000,B00101111,B00000011,B11010000,
B00001010,B10001000,B00001000,B00001000,B10000000,B00000100,B00001000,B00000100,B00001000,B01000000,B11111111,B11000000,B00000000,B00101111,B10000111,B11010000,
B00001010,B10001000,B01000111,B10001001,B10000000,B00000100,B01001000,B01000100,B00000100,B10000000,B11111111,B11000000,B00000000,B00101111,B10000111,B11010000,
B00011010,B11000111,B10001000,B01000110,B11000000,B00001111,B11000111,B10011111,B00000011,B00000000,B11111111,B11000000,B00000000,B00100111,B10000111,B10010000,
B00000000,B00000000,B00001000,B01000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B00000000,B00000000,B00110011,B10000111,B00110000,
B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00011110,B00000000,B00000000,B00111000,B00000000,B01110000,
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00001100,B00000000,B00000000,B00111111,B11111111,B11110000
};
#else // HOTENDS >= 2
#error "Anycubic Mega Zero does not support more than one hotend"
#endif // HOTENDS >= 2