{"id":47,"date":"2020-08-03T16:29:58","date_gmt":"2020-08-03T16:29:58","guid":{"rendered":"https:\/\/blogs.scummvm.org\/npjg\/?p=47"},"modified":"2022-05-23T16:30:34","modified_gmt":"2022-05-23T16:30:34","slug":"fresh-air","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/npjg\/2020\/08\/03\/fresh-air\/","title":{"rendered":"Fresh air"},"content":{"rendered":"<p>Hello!<\/p>\n<p>This will be short, as last week was rather slow. I mostly finished shoring up all the areas where Director palettes can be tested and set \u2013 in the frame palette channel, with the puppetPalette command, with the movie-wide default palette, and also with the\u00a0<code>palette of cast<\/code>\u00a0Lingo. As I look back at my commit log, I realize that this took me many more commits than I expected. There are still some issues that some of our new test targets, including the 1991 title\u00a0<em>The Riddle of the Maze<\/em>, recently revealed. As of this morning, though, this game\u2019s elegant artwork has been restored:<\/p>\n<figure><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/blogs.scummvm.org\/npjg\/wp-content\/uploads\/sites\/30\/2022\/05\/fresh-air-1.png\" \/><\/figure>\n<p>Apparently, before Director 4, palette castmembers were forced into the same order that they are stored. If you reorganize them in the cast window, they will actually revert to a default position on save \u2013 and this position seems to be in the order of palette creation. Also, Director 3 Macintosh format has a slightly different way of storing palette channel information in the frame. (I have still to push the patches for titles that have this variation.)<\/p>\n<p>I also finally got some of the titles that @trembyle had mentioned on the\u00a0<a href=\"https:\/\/wiki.scummvm.org\/index.php\/Director\/Games\">Director wiki<\/a>, including the aforementioned\u00a0<em>Maze<\/em>. @trembyle has done some immense work testing many new titles for us, and today I enjoyed investigatinCEg some new bugs in new titles. Playing with these new games was a nice breath of fresh air from the targets that we had been testing since the beginning \u2013 like\u00a0<em>Spaceship Warlock<\/em>\u00a0and\u00a0<em>Chop Suey<\/em>\u00a0and\u00a0<em>The Apartment<\/em>.<\/p>\n<p>My other big task last week was working on the text selection interface. When I think back, I believe my first experience with Director happened when I was pretty young; it was a typing game that also depended heavily on text selection. I remember this game as Director because it crashed once and I distinctly recall the Director projector icon. @sev had done most of the algo work in the MacGUI side, but I needed to write a bit more interface and do lots of testing to discover what was behind a selection offset offset bug.<\/p>\n<p>Once I finish up the palettes and add a few new targets that I found, I will be working on supporting movies that have &gt;8-bit colour. If you look in the graphics code, there are tons of\u00a0<code>const byte *<\/code>\u00a0declarations everywhere, so those will be changed out for a more general implementation. There are also bitmap decoding issues with greater colour depths that I need to look into. This task, a fairly big one, will be a nice way to round out my GSoC work on our Director engine.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hello! This will be short, as last week was rather slow. I mostly finished shoring up all the areas where Director palettes can be tested and set \u2013 in the frame palette channel, with the puppetPalette command, with the movie-wide default palette, and also with the\u00a0palette of cast\u00a0Lingo. As I look back at my commit [&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-47","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/posts\/47","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/comments?post=47"}],"version-history":[{"count":1,"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/posts\/47\/revisions"}],"predecessor-version":[{"id":48,"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/posts\/47\/revisions\/48"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/media?parent=47"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/categories?post=47"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/npjg\/wp-json\/wp\/v2\/tags?post=47"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}