-
-
Notifications
You must be signed in to change notification settings - Fork 19.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate some code out of MarlinCore #20832
Migrate some code out of MarlinCore #20832
Conversation
3d4afb2
to
5a5aacf
Compare
396a105
to
74e1662
Compare
74e1662
to
0664d23
Compare
There's already a very good documentation about using Marlin (for users) but I think a documentation about developing for Marlin is a bit lagging behind. I don't know how you think about this, but I think that adding some documentation in the I'll try to add such documentation for the PR I've opened, so bit-by-bit, it'll be good. |
Marlin's architecture is in flux, but one might write some general notes about the set of patterns we've ended with up at this point in time as a result of its evolution by selection. The website (MarlinDocumentation repo) would be the better place to post documentation which is intended to be seen. The 'docs' folder is probably going to go away, with the "Bresenham" document being moved to the website as a topical article. |
I agree that Bresemham description should be in the external documentation since it's not related to this code directly. Yet a documentation about what is the current state of the code should be in the current repository IMHO so it can easily be kept in sync. From experience with large code base at work, external documentation is never in sync so it's more or less useless. That's my current feeling while trying to understand the huge code base, some help would have been really appreciated and a good documentation helps. |
This PR broke compilation of
It can be fixed with simple patch below, but probably there is a better way: diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp
index 985041ede5..22e620098c 100644
--- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp
+++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp
@@ -687,6 +687,8 @@ void MarlinUI::draw_status_screen() {
#if ALL(DOGM_SD_PERCENT, SHOW_REMAINING_TIME, ROTATE_PROGRESS_DISPLAY)
+ extern const char E_LBL[];
+
if (prev_blink != blink) {
prev_blink = blink;
if (++progress_state >= 3) progress_state = 0; |
|
Can't compile too with those modifications
|
Steps to reproduce:
Result:
diff -u "../Configurations/config/examples/Creality/Ender-3/BigTreeTech SKR Mini E3 2.0/Configuration_adv.h" Marlin/Configuration_adv.h
--- "../Configurations/config/examples/Creality/Ender-3/BigTreeTech SKR Mini E3 2.0/Configuration_adv.h" 2021-01-21 19:35:01.132357657 +0200
+++ Marlin/Configuration_adv.h 2021-01-21 20:05:24.474831188 +0200
@@ -1164,10 +1164,10 @@
#endif
#if EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY) && ANY(HAS_MARLINUI_U8GLIB, HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL, EXTENSIBLE_UI)
- //#define SHOW_REMAINING_TIME // Display estimated time to completion
+ #define SHOW_REMAINING_TIME // Display estimated time to completion
#if ENABLED(SHOW_REMAINING_TIME)
- //#define USE_M73_REMAINING_TIME // Use remaining time from M73 command instead of estimation
- //#define ROTATE_PROGRESS_DISPLAY // Display (P)rogress, (E)lapsed, and (R)emaining time
+ #define USE_M73_REMAINING_TIME // Use remaining time from M73 command instead of estimation
+ #define ROTATE_PROGRESS_DISPLAY // Display (P)rogress, (E)lapsed, and (R)emaining time
#endif
#if EITHER(HAS_MARLINUI_U8GLIB, EXTENSIBLE_UI)
@@ -1420,7 +1420,7 @@
*/
#if HAS_MARLINUI_U8GLIB
// Show SD percentage next to the progress bar
- //#define DOGM_SD_PERCENT
+ #define DOGM_SD_PERCENT
// Save many cycles by drawing a hollow frame or no frame on the Info Screen
//#define XYZ_NO_FRAME |
This reverts commit c0870d4.
Fix regression from #20832
Fix regression from #20832
Fix regression from #20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from MarlinFirmware#20832
Fix regression from #20832
Fix regression from #20832
Fix regression from #20832
Fix regression from #20832
MarlinCore should be as light as possible and just encapsulate its own global state flags, setup, and loop. This PR migrates items to other files according to the best fit.