Simple rename of hex_print
This commit is contained in:
		@@ -40,7 +40,7 @@
 | 
				
			|||||||
#include "../../../module/stepper/indirection.h"
 | 
					#include "../../../module/stepper/indirection.h"
 | 
				
			||||||
#include "../../../module/printcounter.h"
 | 
					#include "../../../module/printcounter.h"
 | 
				
			||||||
#include "../../../libs/duration_t.h"
 | 
					#include "../../../libs/duration_t.h"
 | 
				
			||||||
#include "../../../libs/hex_print_routines.h"
 | 
					#include "../../../libs/hex_print.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
//some default values used in initialization
 | 
					//some default values used in initialization
 | 
				
			||||||
#define DEFAULT_MICROSTEPPING_VALUE 32
 | 
					#define DEFAULT_MICROSTEPPING_VALUE 32
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -28,7 +28,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  #include "../../../MarlinCore.h"
 | 
					  #include "../../../MarlinCore.h"
 | 
				
			||||||
  #include "../../../HAL/shared/eeprom_api.h"
 | 
					  #include "../../../HAL/shared/eeprom_api.h"
 | 
				
			||||||
  #include "../../../libs/hex_print_routines.h"
 | 
					  #include "../../../libs/hex_print.h"
 | 
				
			||||||
  #include "../../../module/configuration_store.h"
 | 
					  #include "../../../module/configuration_store.h"
 | 
				
			||||||
  #include "../../../lcd/ultralcd.h"
 | 
					  #include "../../../lcd/ultralcd.h"
 | 
				
			||||||
  #include "../../../module/stepper.h"
 | 
					  #include "../../../module/stepper.h"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -34,7 +34,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#if ENABLED(TMC_DEBUG)
 | 
					#if ENABLED(TMC_DEBUG)
 | 
				
			||||||
  #include "../module/planner.h"
 | 
					  #include "../module/planner.h"
 | 
				
			||||||
  #include "../libs/hex_print_routines.h"
 | 
					  #include "../libs/hex_print.h"
 | 
				
			||||||
  #if ENABLED(MONITOR_DRIVER_STATUS)
 | 
					  #if ENABLED(MONITOR_DRIVER_STATUS)
 | 
				
			||||||
    static uint16_t report_tmc_status_interval; // = 0
 | 
					    static uint16_t report_tmc_status_interval; // = 0
 | 
				
			||||||
  #endif
 | 
					  #endif
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -26,7 +26,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include "../gcode.h"
 | 
					#include "../gcode.h"
 | 
				
			||||||
#include "../queue.h"
 | 
					#include "../queue.h"
 | 
				
			||||||
#include "../../libs/hex_print_routines.h"
 | 
					#include "../../libs/hex_print.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "../../MarlinCore.h" // for idle()
 | 
					#include "../../MarlinCore.h" // for idle()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -60,7 +60,7 @@ void GcodeSuite::M502() {
 | 
				
			|||||||
#if ENABLED(EEPROM_SETTINGS)
 | 
					#if ENABLED(EEPROM_SETTINGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  #if ENABLED(MARLIN_DEV_MODE)
 | 
					  #if ENABLED(MARLIN_DEV_MODE)
 | 
				
			||||||
    #include "../../libs/hex_print_routines.h"
 | 
					    #include "../../libs/hex_print.h"
 | 
				
			||||||
  #endif
 | 
					  #endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -31,7 +31,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
//#define DEBUG_GCODE_PARSER
 | 
					//#define DEBUG_GCODE_PARSER
 | 
				
			||||||
#if ENABLED(DEBUG_GCODE_PARSER)
 | 
					#if ENABLED(DEBUG_GCODE_PARSER)
 | 
				
			||||||
  #include "../libs/hex_print_routines.h"
 | 
					  #include "../libs/hex_print.h"
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if ENABLED(TEMPERATURE_UNITS_SUPPORT)
 | 
					#if ENABLED(TEMPERATURE_UNITS_SUPPORT)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -378,3 +378,8 @@
 | 
				
			|||||||
#if ENABLED(EEPROM_SETTINGS) && NONE(I2C_EEPROM, SPI_EEPROM, QSPI_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
 | 
					#if ENABLED(EEPROM_SETTINGS) && NONE(I2C_EEPROM, SPI_EEPROM, QSPI_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
 | 
				
			||||||
  #define NO_EEPROM_SELECTED 1
 | 
					  #define NO_EEPROM_SELECTED 1
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Flag whether hex_print.cpp is used
 | 
				
			||||||
 | 
					#if ANY(AUTO_BED_LEVELING_UBL, M100_FREE_MEMORY_WATCHER, DEBUG_GCODE_PARSER, TMC_DEBUG, MARLIN_DEV_MODE)
 | 
				
			||||||
 | 
					  #define NEED_HEX_PRINT 1
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										90
									
								
								Marlin/src/libs/hex_print.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								Marlin/src/libs/hex_print.cpp
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,90 @@
 | 
				
			|||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Marlin 3D Printer Firmware
 | 
				
			||||||
 | 
					 * Copyright (c) 2020 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 <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "../inc/MarlinConfig.h"
 | 
				
			||||||
 | 
					#include "../gcode/parser.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if NEED_HEX_PRINT
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "hex_print.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef CPU_32_BIT
 | 
				
			||||||
 | 
					  constexpr int byte_start = 4;
 | 
				
			||||||
 | 
					  static char _hex[] = "0x00000000";
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					  constexpr int byte_start = 0;
 | 
				
			||||||
 | 
					  static char _hex[] = "0x0000";
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char* hex_byte(const uint8_t b) {
 | 
				
			||||||
 | 
					  _hex[byte_start + 4] = hex_nybble(b >> 4);
 | 
				
			||||||
 | 
					  _hex[byte_start + 5] = hex_nybble(b);
 | 
				
			||||||
 | 
					  return &_hex[byte_start + 4];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					inline void _hex_word(const uint16_t w) {
 | 
				
			||||||
 | 
					  _hex[byte_start + 2] = hex_nybble(w >> 12);
 | 
				
			||||||
 | 
					  _hex[byte_start + 3] = hex_nybble(w >> 8);
 | 
				
			||||||
 | 
					  _hex[byte_start + 4] = hex_nybble(w >> 4);
 | 
				
			||||||
 | 
					  _hex[byte_start + 5] = hex_nybble(w);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char* hex_word(const uint16_t w) {
 | 
				
			||||||
 | 
					  _hex_word(w);
 | 
				
			||||||
 | 
					  return &_hex[byte_start + 2];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef CPU_32_BIT
 | 
				
			||||||
 | 
					  char* hex_long(const uint32_t l) {
 | 
				
			||||||
 | 
					    _hex[2] = hex_nybble(l >> 28);
 | 
				
			||||||
 | 
					    _hex[3] = hex_nybble(l >> 24);
 | 
				
			||||||
 | 
					    _hex[4] = hex_nybble(l >> 20);
 | 
				
			||||||
 | 
					    _hex[5] = hex_nybble(l >> 16);
 | 
				
			||||||
 | 
					    _hex_word((uint16_t)(l & 0xFFFF));
 | 
				
			||||||
 | 
					    return &_hex[2];
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					char* hex_address(const void * const w) {
 | 
				
			||||||
 | 
					  #ifdef CPU_32_BIT
 | 
				
			||||||
 | 
					    (void)hex_long((ptr_int_t)w);
 | 
				
			||||||
 | 
					  #else
 | 
				
			||||||
 | 
					    (void)hex_word((ptr_int_t)w);
 | 
				
			||||||
 | 
					  #endif
 | 
				
			||||||
 | 
					  return _hex;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void print_hex_nybble(const uint8_t n)       { SERIAL_CHAR(hex_nybble(n));  }
 | 
				
			||||||
 | 
					void print_hex_byte(const uint8_t b)         { SERIAL_ECHO(hex_byte(b));    }
 | 
				
			||||||
 | 
					void print_hex_word(const uint16_t w)        { SERIAL_ECHO(hex_word(w));    }
 | 
				
			||||||
 | 
					void print_hex_address(const void * const w) { SERIAL_ECHO(hex_address(w)); }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void print_hex_long(const uint32_t w, const char delimiter) {
 | 
				
			||||||
 | 
					  SERIAL_ECHOPGM("0x");
 | 
				
			||||||
 | 
					  for (int B = 24; B >= 8; B -= 8){
 | 
				
			||||||
 | 
					    print_hex_byte(w >> B);
 | 
				
			||||||
 | 
					    SERIAL_CHAR(delimiter);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  print_hex_byte(w);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif // NEED_HEX_PRINT
 | 
				
			||||||
@@ -1,90 +0,0 @@
 | 
				
			|||||||
/**
 | 
					 | 
				
			||||||
 * Marlin 3D Printer Firmware
 | 
					 | 
				
			||||||
 * Copyright (c) 2020 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "../inc/MarlinConfig.h"
 | 
					 | 
				
			||||||
#include "../gcode/parser.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#if ANY(AUTO_BED_LEVELING_UBL, M100_FREE_MEMORY_WATCHER, DEBUG_GCODE_PARSER, TMC_DEBUG, MARLIN_DEV_MODE)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  #include "hex_print_routines.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  #ifdef CPU_32_BIT
 | 
					 | 
				
			||||||
    constexpr int byte_start = 4;
 | 
					 | 
				
			||||||
    static char _hex[] = "0x00000000";
 | 
					 | 
				
			||||||
  #else
 | 
					 | 
				
			||||||
    constexpr int byte_start = 0;
 | 
					 | 
				
			||||||
    static char _hex[] = "0x0000";
 | 
					 | 
				
			||||||
  #endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  char* hex_byte(const uint8_t b) {
 | 
					 | 
				
			||||||
    _hex[byte_start + 4] = hex_nybble(b >> 4);
 | 
					 | 
				
			||||||
    _hex[byte_start + 5] = hex_nybble(b);
 | 
					 | 
				
			||||||
    return &_hex[byte_start + 4];
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  inline void _hex_word(const uint16_t w) {
 | 
					 | 
				
			||||||
    _hex[byte_start + 2] = hex_nybble(w >> 12);
 | 
					 | 
				
			||||||
    _hex[byte_start + 3] = hex_nybble(w >> 8);
 | 
					 | 
				
			||||||
    _hex[byte_start + 4] = hex_nybble(w >> 4);
 | 
					 | 
				
			||||||
    _hex[byte_start + 5] = hex_nybble(w);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  char* hex_word(const uint16_t w) {
 | 
					 | 
				
			||||||
    _hex_word(w);
 | 
					 | 
				
			||||||
    return &_hex[byte_start + 2];
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  #ifdef CPU_32_BIT
 | 
					 | 
				
			||||||
    char* hex_long(const uint32_t l) {
 | 
					 | 
				
			||||||
      _hex[2] = hex_nybble(l >> 28);
 | 
					 | 
				
			||||||
      _hex[3] = hex_nybble(l >> 24);
 | 
					 | 
				
			||||||
      _hex[4] = hex_nybble(l >> 20);
 | 
					 | 
				
			||||||
      _hex[5] = hex_nybble(l >> 16);
 | 
					 | 
				
			||||||
      _hex_word((uint16_t)(l & 0xFFFF));
 | 
					 | 
				
			||||||
      return &_hex[2];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  #endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  char* hex_address(const void * const w) {
 | 
					 | 
				
			||||||
    #ifdef CPU_32_BIT
 | 
					 | 
				
			||||||
      (void)hex_long((ptr_int_t)w);
 | 
					 | 
				
			||||||
    #else
 | 
					 | 
				
			||||||
      (void)hex_word((ptr_int_t)w);
 | 
					 | 
				
			||||||
    #endif
 | 
					 | 
				
			||||||
    return _hex;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  void print_hex_nybble(const uint8_t n)       { SERIAL_CHAR(hex_nybble(n));  }
 | 
					 | 
				
			||||||
  void print_hex_byte(const uint8_t b)         { SERIAL_ECHO(hex_byte(b));    }
 | 
					 | 
				
			||||||
  void print_hex_word(const uint16_t w)        { SERIAL_ECHO(hex_word(w));    }
 | 
					 | 
				
			||||||
  void print_hex_address(const void * const w) { SERIAL_ECHO(hex_address(w)); }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  void print_hex_long(const uint32_t w, const char delimiter) {
 | 
					 | 
				
			||||||
    SERIAL_ECHOPGM("0x");
 | 
					 | 
				
			||||||
    for (int B = 24; B >= 8; B -= 8){
 | 
					 | 
				
			||||||
      print_hex_byte(w >> B);
 | 
					 | 
				
			||||||
      SERIAL_CHAR(delimiter);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    print_hex_byte(w);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#endif // AUTO_BED_LEVELING_UBL || M100_FREE_MEMORY_WATCHER || DEBUG_GCODE_PARSER
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user