{"action":"created","issue":{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/2610","labels_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/2610/labels{/name}","comments_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/2610/comments","events_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/2610/events","html_url":"https://github.com/MarlinFirmware/Marlin/issues/2610","id":104170749,"number":2610,"title":"Custom G-Code for LCD-based Cancel Print","user":{"login":"mc71","id":9065930,"avatar_url":"https://avatars.githubusercontent.com/u/9065930?v=3","gravatar_id":"","url":"https://api.github.com/users/mc71","html_url":"https://github.com/mc71","followers_url":"https://api.github.com/users/mc71/followers","following_url":"https://api.github.com/users/mc71/following{/other_user}","gists_url":"https://api.github.com/users/mc71/gists{/gist_id}","starred_url":"https://api.github.com/users/mc71/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mc71/subscriptions","organizations_url":"https://api.github.com/users/mc71/orgs","repos_url":"https://api.github.com/users/mc71/repos","events_url":"https://api.github.com/users/mc71/events{/privacy}","received_events_url":"https://api.github.com/users/mc71/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Feature%20Request","name":"Feature Request","color":"006b75"},{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Hosts%20&%20Protocols","name":"Hosts & Protocols","color":"eb6420"},{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Needs%20feedback","name":"Needs feedback","color":"fbca04"},{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Support%20Question","name":"Support Question","color":"cc317c"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-09-01T02:20:23Z","updated_at":"2015-09-08T15:16:31Z","closed_at":null,"body":"I'm trying to implement a custom \"cancel\" code when using an LCD/SD card combo to make sure the printer shuts down correctly.  I just can't find where the firmware actions related to \"MSG_STOP_PRINT\" are linked."},"comment":{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/comments/138597303","html_url":"https://github.com/MarlinFirmware/Marlin/issues/2610#issuecomment-138597303","issue_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/2610","id":138597303,"user":{"login":"Wackerbarth","id":505323,"avatar_url":"https://avatars.githubusercontent.com/u/505323?v=3","gravatar_id":"","url":"https://api.github.com/users/Wackerbarth","html_url":"https://github.com/Wackerbarth","followers_url":"https://api.github.com/users/Wackerbarth/followers","following_url":"https://api.github.com/users/Wackerbarth/following{/other_user}","gists_url":"https://api.github.com/users/Wackerbarth/gists{/gist_id}","starred_url":"https://api.github.com/users/Wackerbarth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Wackerbarth/subscriptions","organizations_url":"https://api.github.com/users/Wackerbarth/orgs","repos_url":"https://api.github.com/users/Wackerbarth/repos","events_url":"https://api.github.com/users/Wackerbarth/events{/privacy}","received_events_url":"https://api.github.com/users/Wackerbarth/received_events","type":"User","site_admin":false},"created_at":"2015-09-08T15:16:31Z","updated_at":"2015-09-08T15:16:31Z","body":"> On Sep 8, 2015, at 4:46 AM, ntoff <notifications@github.com> wrote:\n> Shouldn't you try to keep marlin as small as possible?\n> \nThat is unclear. We need to decide the minimal HW requirements for newer releases. At some point, we need to quit chasing the idea of adding additional functionality to older hardware. At the present time, my builds are using only 77% of the ROM space. Absolute minimization of code size may not be a good use of our human resources.\n\nIt is also unclear how much “extra” code would actually be produced. One “engine” that interprets this micro-coding of operations would handle many different functions. \n> Wouldn't adding the ability to have 20 lines of gcode in the events add to its compiled size?\n> \nActually, even 20 lines of “G-code” can be encoded in a manner that may take less space than the corresponding “C” implementation.\nWe need to remember that the operations involved are not time-critical. A bit of overhead in the interpretation is unimportant for these operations.\n> Or would you do it that say, if exists cancel.g0, run it, else just heaters off & motors off.\n> \nYou don’t have the additional code for \"heaters off & motors off”, per se, instead it is just a micro-sequence that is available for that event.\n\n"}}