This is an extension/optimization of PR #2956.
It uses the cached 512B block buffer to avoid heavy-weight read() in SdBaseFile.
Even though this principle allowed the AVR to skip ~600KB of data within ~5 seconds,
the impact on code base is huge, especially into well proven and long-term stable
parts like reading a file from the SD card.
The sole purpose of this PR is to show/verify the possibility of the AVR CPU
in relation to adding thumbnails into MK3 G-codes.
Moreover, this PR shall not be merged unless the missing/commented features
are restored - especially file seeking and M84 search.
PFW-1175
* Combine repeated calls into functions with much less parameters -> 2KB
down.
* Save some bytes by removing unnecessary 1-character strings: "x" -> 'x'
used in SERIAL_xxx printing macros.
This is also saves some CPU cycles
* Fix compilation for MK25S and MK3
* Copy surrounding indentation
* Fix compilation for a rare HW setup
* rename mesh_planXX_buffer_line back to mesh_plan_buffer_line
* Remove active_extruder from remaining plan_buffer_line_destinationXYZE
calls and one more fix of indentation
* Add and update missing translations
- updated in Firmware/ files the missing `c=xx` column and `r=yy` rows.
- added missing translations to lang/lang_en*.txt
Everyone is developing and adding messages to serial and especially to LCD PLEASE add `//// c=xx` or `//// c=xx r=yy` comments.
Preparing translations files without that information is a pain in the ... and takes way more time for somebody else
to review to code as it would take you.
* No need to have `MSG_abcde` again in comments `////` in `messages.c`
* German translation
* Missed a space
* Use the same format as somewhere else
* French translation.
I am not a native French speaking person, so please excuse my mistakes I may have done.
* Spanish translation.
I am not a native Spanish speaking person, so please excuse my mistakes I may have done.
* CZ translation
* Fix typos
* Another fix
It is
Dimmwert and not Dim Wert
* Fix issues reported by `lang-check.py`
* Add "difficult" messages containing `%`
* Updated MSG and German translation
* removed a translation as it breaks the language selection
* No need to wait until any-key is pressed
* No need to wait any-key is pressed
* Fixed two LF issues
* Updated PO files
ready to be send to translators
* Add missing italian translations
* Improve some existing italian translations
* More italian fixes
* More italian fixes
* Add exceptions in editorconfig for po files to avoid recoding
* Fix typo
Thanks @DRracer for pointing out
* Italian translation by @wavexx
* Update po/new/*.po files
* Update after merging MK3 branch
* Update French translation and some c=xx comments
Big thanks to @awenelo @carlin57 for helping with the french translations and their comments.
* Update po files after French translation
* Fixed most `lang-check.py` reported translation errors for Czech and German.
Two Czech have to be reviewed as these are too long.
One German is correct as it is shown in c=20 r=2 but is 1 char longer than this to split the message.
One German translation seams to be to long but have to review the actual max length
* Fix `lang-check.py` Spanish translation errors
There have been quite lot TOO long messages,
Can't imagine that nobody every complained about that.
* Fix `lang-check.py` Italian translations errors
* Update not_tran and not_used files after fixing several translations
* Some more error fixes and update of `po` files
* Polish translation
* Czech updated
* Fix typo
* no need to translate `\x00` if it is the same
* Polish: Runouts->Koniec
* Polish: Runouts->Konce f ... hopefully the last change
* Added MK2.5/s auto power mode to eeprom doxygen
* Final updates.
- Compiled all versions with multi-languages
- Compiled all versions with EN_ONLY
- updated all /lang/po/Firmware*.* files
* Add crlf attributes for po files
As done for editorconfig, this similarly forces git to handle
po files consistently in DOS format.
* Further improvent of IT translations
* Updated translation
Added cleanup to PF-build.sh
* remove lang/not_tran* and lang/not_used mistakenly added into the PR
Co-authored-by: DRracer <drracer@seznam.cz>
Co-authored-by: Yuri D'Elia <wavexx@thregr.org>
Co-authored-by: D.R.racer <drracer@drracer.eu>