{"id":18,"date":"2009-06-11T16:59:38","date_gmt":"2009-06-11T14:59:38","guid":{"rendered":"https:\/\/blogs.scummvm.org\/dkasak\/?p=18"},"modified":"2022-04-15T17:13:18","modified_gmt":"2022-04-15T15:13:18","slug":"on-dragons-and-bytes","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/dkasak\/2009\/06\/11\/on-dragons-and-bytes\/","title":{"rendered":"On dragons and bytes"},"content":{"rendered":"<p>In my last post, I mentioned that my next task was to implement a bytecode disassembler for the game\u2019s scripting language (which is, humorously enough, called GPL). The disassembler is now finished, leaving \u2018only\u2019 the actual callbacks to be implemented to become a full-fledged GPL interpreter. Comparing a few disassembled scripts with the originals yielded favourable results and since I had the x86 reference implementation, I\u2019m fairly certain I\u2019ve got things right. ?<\/p>\n<p><!--more--><\/p>\n<p>Completing the disasm also earned me my own branch in the ScummVM repository so I can finally stop juggling patch files around. There are talks on the mailing list about switching over to a DVCS so hopefully these kind of issues can be avoided altogether in the future.<\/p>\n<p>Robert also did some great work in cleaning up the old source code. He translated almost all of the original identifiers from Czech to English so the code is much more readable now. My girlfriend is especially going to appreciate this as I can finally stop pestering her to translate for me (thank you, Nika :D).<\/p>\n<p>Finally, I should probably live up to the \u201cdragons\u201d part of the title: I\u2019ve begun dealing with the graphical subsystem of the game and, as a test, I\u2019ve set up a short animation of the main character (who is a dragon, obviously) that plays itself on engine start. Below is a screenshot of the little guy in action. Well\u2026 Not that much action just yet. ?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In my last post, I mentioned that my next task was to implement a bytecode disassembler for the game\u2019s scripting language (which is, humorously enough, called GPL). The disassembler is now finished, leaving \u2018only\u2019 the actual callbacks to be implemented to become a full-fledged GPL interpreter. Comparing a few disassembled scripts with the originals yielded [&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-18","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/posts\/18","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/comments?post=18"}],"version-history":[{"count":2,"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/posts\/18\/revisions"}],"predecessor-version":[{"id":20,"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/posts\/18\/revisions\/20"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/media?parent=18"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/categories?post=18"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/dkasak\/wp-json\/wp\/v2\/tags?post=18"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}