{"id":98,"date":"2009-12-17T11:50:00","date_gmt":"2009-12-17T09:50:00","guid":{"rendered":"https:\/\/blogs.scummvm.org\/buddha\/?p=98"},"modified":"2022-04-15T11:53:55","modified_gmt":"2022-04-15T09:53:55","slug":"its-moving-again-almost","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/buddha\/2009\/12\/17\/its-moving-again-almost\/","title":{"rendered":"It\u2019s moving\u2026 again\u2026 almost!"},"content":{"rendered":"<p class=\"mceTemp\">It\u2019s been some time but now the executePlayerInput from Operation Stealth is completely reverse engineered. Here\u2019s proof:<\/p>\n<figure id=\"attachment_99\" aria-describedby=\"caption-attachment-99\" style=\"width: 580px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-99\" src=\"https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-997x1024.png\" alt=\"\" width=\"580\" height=\"596\" srcset=\"https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-997x1024.png 997w, https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-292x300.png 292w, https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-768x789.png 768w, https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-1496x1536.png 1496w, https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-1995x2048.png 1995w, https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-1200x1232.png 1200w, https:\/\/blogs.scummvm.org\/buddha\/wp-content\/uploads\/sites\/16\/2022\/04\/ida-operation_stealth-executeplayerinput-full_graph-1980x2033.png 1980w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><figcaption id=\"caption-attachment-99\" class=\"wp-caption-text\">Full graph of Operation Stealth\u2019s executePlayerInput-function in IDA (2916\u00d72994 image i.e. LARGE!)<\/figcaption><\/figure>\n<p>I tried a semi-quick hack to put it into ScummVM and it did seem to help with my previous problem of borking the player input handling with my incomplete fix in <a href=\"https:\/\/github.com\/scummvm\/scummvm\/commit\/c2c2e940d0fc3960529e757195190568adb34580\" target=\"_blank\" rel=\"noopener\">r33872 <\/a>(See a <a href=\"http:\/\/forums.scummvm.org\/viewtopic.php?p=53948#53948\" target=\"_blank\" rel=\"noopener\">forum post about the problem<\/a> or <a href=\"https:\/\/blogs.scummvm.org\/buddha\/2008\/08\/19\/summers-end\/\" target=\"_blank\" rel=\"noopener\">my previous blog post<\/a> for more info). Feels good getting things done ? Now just to clean it up a bit and see that I didn\u2019t break anything else with it\u2026 and yes, also committing it ?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It\u2019s been some time but now the executePlayerInput from Operation Stealth is completely reverse engineered. Here\u2019s proof: I tried a semi-quick hack to put it into ScummVM and it did seem to help with my previous problem of borking the player input handling with my incomplete fix in r33872 (See a forum post about the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-98","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/98","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/comments?post=98"}],"version-history":[{"count":4,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/98\/revisions"}],"predecessor-version":[{"id":103,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/98\/revisions\/103"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/media?parent=98"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/categories?post=98"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/tags?post=98"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}