| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 | 
							- #pragma once
 
- #include <stdint.h>
 
- extern const char* FW_VERSION_STR_P();
 
- // Definition of a firmware flavor numerical values.
 
- enum FirmwareRevisionFlavorType : uint16_t {
 
-     FIRMWARE_REVISION_RELEASED = 0,
 
-     FIRMWARE_REVISION_DEV = 0x0100,
 
-     FIRMWARE_REVISION_ALPHA = 0x0200,
 
-     FIRMWARE_REVISION_BETA = 0x0300,
 
-     FIRMWARE_REVISION_RC = 0x0400
 
- };
 
- extern bool show_upgrade_dialog_if_version_newer(const char *version_string);
 
- extern bool force_selftest_if_fw_version();
 
- extern void update_current_firmware_version_to_eeprom();
 
- //-//
 
- #define EEPROM_NOZZLE_DIAMETER_uM_DEFAULT 400
 
- enum class ClPrintChecking:uint_least8_t
 
- {
 
-     _Nozzle=1,
 
-     _Model=2,
 
-     _Smodel=3,
 
-     _Version=4,
 
-     _Gcode=5
 
- };
 
- enum class ClNozzleDiameter:uint_least8_t
 
- {
 
-     _Diameter_250=25,
 
-     _Diameter_400=40,
 
-     _Diameter_600=60,
 
-     _Diameter_800=80,
 
-     _Diameter_Undef=EEPROM_EMPTY_VALUE
 
- };
 
- enum class ClCheckMode:uint_least8_t
 
- {
 
-     _None,
 
-     _Warn,
 
-     _Strict,
 
-     _Undef=EEPROM_EMPTY_VALUE
 
- };
 
- enum class ClCheckModel:uint_least8_t
 
- {
 
-     _None,
 
-     _Warn,
 
-     _Strict,
 
-     _Undef=EEPROM_EMPTY_VALUE
 
- };
 
- enum class ClCheckVersion:uint_least8_t
 
- {
 
-     _None,
 
-     _Warn,
 
-     _Strict,
 
-     _Undef=EEPROM_EMPTY_VALUE
 
- };
 
- enum class ClCheckGcode:uint_least8_t
 
- {
 
-     _None,
 
-     _Warn,
 
-     _Strict,
 
-     _Undef=EEPROM_EMPTY_VALUE
 
- };
 
- #define COMPARE_VALUE_EQUAL (((uint8_t)ClCompareValue::_Equal<<6)+((uint8_t)ClCompareValue::_Equal<<4)+((uint8_t)ClCompareValue::_Equal<<2)+((uint8_t)ClCompareValue::_Equal))
 
- enum class ClCompareValue:uint_least8_t
 
- {
 
-     _Less=0,
 
-     _Equal=1,
 
-     _Greater=2
 
- };
 
- extern ClNozzleDiameter oNozzleDiameter;
 
- extern ClCheckMode oCheckMode;
 
- extern ClCheckModel oCheckModel;
 
- extern ClCheckVersion oCheckVersion;
 
- extern ClCheckGcode oCheckGcode;
 
- void fCheckModeInit();
 
- void nozzle_diameter_check(uint16_t nDiameter);
 
- void printer_model_check(uint16_t nPrinterModel);
 
- void printer_smodel_check(const char* pStrPos);
 
- void fw_version_check(const char *pVersion);
 
- void gcode_level_check(uint16_t nGcodeLevel);
 
- void fSetMmuMode(bool bMMu);
 
- #define IP4_STR_SIZE 16
 
- extern void ip4_to_str(char* dest, uint8_t* IP);
 
 
  |