<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://planet-soc.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Planet SoC - </title>
 <link>http://planet-soc.com/organization/ScummVM/planet</link>
 <description>Planet view per organization</description>
 <language>en</language>
<item>
 <title>Summer’s end</title>
 <link>http://planet-soc.com/node/3538</link>
 <description>&lt;p&gt;Hi! &lt;a href=&quot;http://code.google.com/opensource/gsoc/2008/faqs.html#0.1_timeline&quot;&gt;Google Summer of Code 2008 just ended&lt;/a&gt; and I thought that it&amp;#8217;d be good to make a new blog entry about where I got during the last days of &lt;a href=&quot;http://en.wikipedia.org/wiki/Google_Summer_of_Code&quot;&gt;GSoC&lt;/a&gt; and talk a bit about the overall experience.&lt;br /&gt;
Status update&lt;br /&gt;
The problem I was having with player movement last time really was just that, the player movement routine (executePlayerInput) was incomplete. Once I reverse engineered Operation Stealth&amp;#8217;s version of it and modified ScummVM&amp;#8217;s current implementation (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33872&amp;amp;view=rev&quot;&gt;r33872&lt;/a&gt;) of that function a bit I got the swimming working and I could get to the girl and free her:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-freeing_girl.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-251&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-freeing_girl.png?w=300&amp;amp;h=225&quot; alt=&quot;Freeing the girl in ScummVM&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Freeing the girl in ScummVM&lt;br /&gt;
I might as well tell a bit about what happens in the game after that:&lt;br /&gt;
The player character and the girl swim to the surface and are rescued by a boat:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-being_rescued_by_boat.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-252&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-being_rescued_by_boat.png?w=300&amp;amp;h=225&quot; alt=&quot;Being rescued by boat&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Being rescued by boat&lt;br /&gt;
The story goes on and they meet The Movement for The Liberation of Santa Paragua for the first time:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-meeting_the_movement.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-253&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-meeting_the_movement.png?w=300&amp;amp;h=225&quot; alt=&quot;Meeting the movement&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Meeting the movement&lt;br /&gt;
Then they leave to infiltrate a palace:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-leaving_for_the_palace.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-254&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-leaving_for_the_palace.png?w=300&amp;amp;h=225&quot; alt=&quot;Leaving for the palace&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Leaving for the palace&lt;br /&gt;
And enroute to the palace some masking bugs &lt;img src=&quot;http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; /&gt;&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-enroute_to_palace-masking_bugs.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-255&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-enroute_to_palace-masking_bugs.png?w=300&amp;amp;h=225&quot; alt=&quot;Masking bugging while enroute to the palace&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Masking bugging while enroute to the palace&lt;br /&gt;
And then after a cutscene at the palace there&amp;#8217;s another arcade sequence: A labyrinth.&lt;br /&gt;
The labyrinth&lt;br /&gt;
Okay, so far I&amp;#8217;ve gotten to the second arcade sequence which is a labyrinth:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-first_labyrinth.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-258&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-first_labyrinth.png?w=300&amp;amp;h=225&quot; alt=&quot;First labyrinth&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;First labyrinth&lt;br /&gt;
But there are some showstopping problems here. The player can be controlled but the doors that should revolve when walked against don&amp;#8217;t revolve and so the arcade sequence is not yet completable.&lt;br /&gt;
I played Operation Stealth using &lt;a href=&quot;http://www.dosbox.com/&quot;&gt;DOSBox&lt;/a&gt; to the labyrinth and used &lt;a href=&quot;http://vogons.zetafleet.com/viewtopic.php?t=3944&quot;&gt;DOSBox&amp;#8217;s debugger&lt;/a&gt; to look for the collision data page (And I found it! Yay!) and dumped it to a binary file. What I wanted to do was to compare the original&amp;#8217;s collision data page to the ScummVM&amp;#8217;s version in the labyrinth to see if there were any differences that could be breaking the gameplay. And voila, there were! Here are some pictures:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-first_labyrinth_collision_page_data_from_dosbox.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-256&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-first_labyrinth_collision_page_data_from_dosbox.png?w=300&amp;amp;h=187&quot; alt=&quot;First labyrinth&amp;#039;s collision data page dumped from DOSBox&quot; width=&quot;300&quot; height=&quot;187&quot; /&gt;&lt;/a&gt;First labyrinth&amp;#39;s collision data from DOSBox&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-first_labyrinth_collision_page_data.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-257&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-first_labyrinth_collision_page_data.png?w=300&amp;amp;h=187&quot; alt=&quot;First labyrinth&amp;#039;s collision data from ScummVM&quot; width=&quot;300&quot; height=&quot;187&quot; /&gt;&lt;/a&gt;First labyrinth&amp;#39;s collision data from ScummVM&lt;br /&gt;
By the way the collision data page can currently be viewed in the Cine engine by pressing F11 (I added that in &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33877&amp;amp;view=rev&quot;&gt;r33877&lt;/a&gt;).&lt;br /&gt;
I tried loading the collision data I dumped from DOSBox to Cine&amp;#8217;s collision data page and yes, I got the doors to revolve! But alas, they didn&amp;#8217;t yet work totally correctly, sometimes you could just simply walk through a door like it was thin air and sometimes a door would shake between two frames of animation a bit weirdly.&lt;br /&gt;
So it&amp;#8217;s looking like at least there&amp;#8217;s something wrong with how Cine currently manages the collision data or how it&amp;#8217;s loaded. I checked the collision data loading routine &lt;a href=&quot;http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/engines/cine/bg.cpp?revision=33669&amp;amp;view=markup#l_65&quot;&gt;loadCtOS&lt;/a&gt; and the data conversion routine &lt;a href=&quot;http://scummvm.svn.sourceforge.net/viewvc/scummvm/scummvm/trunk/engines/cine/gfx.cpp?revision=33976&amp;amp;view=markup#l_1669&quot;&gt;gfxConvertSpriteToRaw&lt;/a&gt; that it uses. It looks like the gfxConvertSpriteToRaw is indeed correct, I reverse engineered a version of it myself from Operation Stealth&amp;#8217;s disassembly, tried using my own version of it but it didn&amp;#8217;t seem to make a difference at all. So that particular routine doesn&amp;#8217;t look to be the culprit here.&lt;br /&gt;
Release testing related bugfixes&lt;br /&gt;
With the next stable version of ScummVM being prepared and release testing in progress I got some Future Wars related bug reports and did some bugfixing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adlib sound related bugfix to fix a crash when teleporting to the swamp (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33935&amp;amp;view=rev&quot;&gt;r33935&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33937&amp;amp;view=rev&quot;&gt;r33937&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;li&gt;Fix for overparanoid monks beating player unconscious (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33950&amp;amp;view=rev&quot;&gt;r33950&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33951&amp;amp;view=rev&quot;&gt;r33951&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;li&gt;Fix for crashing when examing rubble above a manhole (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33967&amp;amp;view=rev&quot;&gt;r33967&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33966&amp;amp;view=rev&quot;&gt;r33966&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And with those fixes in place Future Wars&amp;#8217;s English DOS floppy version should now be completable using the 0.12.0 branch.&lt;br /&gt;
Reported Future Wars bugs still unfixed&lt;br /&gt;
There are some regressions and bugs still left in the Cine engine though:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://sourceforge.net/tracker/index.php?func=detail&amp;amp;aid=2057656&amp;amp;group_id=37116&amp;amp;atid=418820&quot;&gt;Bug #2057656&lt;/a&gt;: FW: Assert during demo (regression)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sourceforge.net/tracker/index.php?func=detail&amp;amp;aid=2057637&amp;amp;group_id=37116&amp;amp;atid=418820&quot;&gt;Bug #2057637&lt;/a&gt;: FW: Spaceship glitches in demo (regression)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sourceforge.net/tracker/index.php?func=detail&amp;amp;aid=2057619&amp;amp;group_id=37116&amp;amp;atid=418820&quot;&gt;Bug #2057619&lt;/a&gt;: FW: Glitches in title display of demo (regression)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sourceforge.net/tracker/index.php?func=detail&amp;amp;aid=2055912&amp;amp;group_id=37116&amp;amp;atid=418820&quot;&gt;Bug #2055912&lt;/a&gt;: FW: incrustSprite fails on savegame loading&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sourceforge.net/tracker/index.php?func=detail&amp;amp;aid=2055836&amp;amp;group_id=37116&amp;amp;atid=418820&quot;&gt;Bug #2055836&lt;/a&gt;: FW: Music is not restarted when loading a saved game&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sourceforge.net/tracker/index.php?func=detail&amp;amp;aid=2019344&amp;amp;group_id=37116&amp;amp;atid=418820&quot;&gt;Bug #2019344&lt;/a&gt;: FW: crash with Amiga Italian version (photocopy room)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What I learned during this summer&lt;br /&gt;
Ok, enough about the status update, here are some points I&amp;#8217;d like to make about what I learned during this &lt;em&gt;summer of code&lt;/em&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A lot about reverse engineering - I feel a lot more competent in it now than I did before this summer - and in particular that &lt;a href=&quot;http://www.hex-rays.com/idapro/freefiles/ida5preview.htm&quot;&gt;IDA&amp;#8217;s graph view&lt;/a&gt; is simply essential, I wouldn&amp;#8217;t dream about going back to not using it when reverse engineering something. It&amp;#8217;s just absolutely essential, no doubt about that.&lt;/li&gt;
&lt;li&gt;Tried &lt;a href=&quot;http://valgrind.org/&quot;&gt;Valgrind&lt;/a&gt; for the first time and it looks like a good tool to have around when fixing memory corruption problems. I recommend giving it a go if you have memory corruption problems in a software you&amp;#8217;re developing!&lt;/li&gt;
&lt;li&gt;Tried &lt;a href=&quot;http://vogons.zetafleet.com/viewtopic.php?t=3944&quot;&gt;DOSBox&amp;#8217;s debugger&lt;/a&gt; for the first time and it looks also to be a useful piece of software, although I probably don&amp;#8217;t know half of what can be done with it yet.&lt;/li&gt;
&lt;li&gt;That I&amp;#8217;m not always as productive as I might like to, my effort changes with the tasks I&amp;#8217;m doing. So knowing how to focus and get things done even though the task might not be to my current liking is something I haven&amp;#8217;t yet truly mastered. I&amp;#8217;ve heard that if you are completely present in a situation and totally focused on something then that something *becomes* interesting, whatever it may be. Now that&amp;#8217;d be a lifesaving thing to know how to do - maybe some meditation (e.g. &lt;a href=&quot;http://en.wikipedia.org/wiki/Zazen&quot;&gt;Zazen&lt;/a&gt;) would be in order?&lt;/li&gt;
&lt;li&gt;That I probably take my work too seriously at times: Getting something working felt great at times and not getting something working felt awful at other times. Or maybe it&amp;#8217;s simply human nature to feel like that? Dunno. Anyway, I should probably know when to relax and let go, simply do and not measure my worth by what I get done but by the effort I put in regardless of the outcome (Yeah, quite the Gandhi talking :-)).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What&amp;#8217;s so good about this reverse engineering thing anyway?&lt;br /&gt;
All in all this summer was a learning experience for me. What I found particularly interesting was the reverse engineering bit, taking a function in disassembly, looking at how big and intractable it looks and then starting on it, bit by bit, part by part making it more and more understandable until what you have in front of you is something you actually are able to understand. An example:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-executeplayerinput-ida-graph_view-lowest_abstraction_level.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-291&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-executeplayerinput-ida-graph_view-lowest_abstraction_level.png?w=231&amp;amp;h=300&quot; alt=&quot;This is the graph of executePlayerInput without any work done on it yet.&quot; width=&quot;231&quot; height=&quot;300&quot; /&gt;&lt;/a&gt;This is the graph of executePlayerInput function without any work done on it yet.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-executeplayerinput-ida-graph_view-quite_high_abstraction_level.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-292&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-executeplayerinput-ida-graph_view-quite_high_abstraction_level.png?w=300&amp;amp;h=127&quot; alt=&quot;Here&amp;#039;s how the function looks after quite a bit of abstracting done on it.&quot; width=&quot;300&quot; height=&quot;127&quot; /&gt;&lt;/a&gt;Here&amp;#39;s how the function looks after quite a bit of abstracting done on it.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-executeplayerinput-ida-graph_view-highest_abstraction_level.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-293&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-executeplayerinput-ida-graph_view-highest_abstraction_level.png?w=300&amp;amp;h=130&quot; alt=&quot;And here&amp;#039;s the highest abstraction level graph that I made of the function.&quot; width=&quot;300&quot; height=&quot;130&quot; /&gt;&lt;/a&gt;And here&amp;#39;s the highest abstraction level graph that I made of the function.&lt;br /&gt;
It&amp;#8217;s quite a bit of work, I tell you, but it&amp;#8217;s quite riveting (There&amp;#8217;s that focus thing again. I mean, just take a look at what Merriam-Webster says about the word &lt;a href=&quot;http://www.merriam-webster.com/dictionary/riveting&quot;&gt;riveting&lt;/a&gt;: &amp;#8220;having the power to fix the attention&amp;#8221;). Yeah!&lt;br /&gt;
What about the future?&lt;br /&gt;
I&amp;#8217;m still committed to making &lt;a href=&quot;http://en.wikipedia.org/wiki/Operation_Stealth&quot;&gt;Operation Stealth&lt;/a&gt; completable although it&amp;#8217;ll be outside this &lt;a href=&quot;http://en.wikipedia.org/wiki/Google_Summer_of_Code&quot;&gt;GSoC&lt;/a&gt;. I&amp;#8217;ll be fixing some of the &lt;a href=&quot;http://wiki.scummvm.org/index.php/Cine&quot;&gt;Cine&lt;/a&gt; engine related bugs for the upcoming 0.12.0 release of &lt;a href=&quot;http://www.scummvm.org/&quot;&gt;ScummVM&lt;/a&gt; too.&lt;br /&gt;
Closing words&lt;br /&gt;
I&amp;#8217;d like to congratulate everyone who made it to the end of Google Summer of Code 2008! It was an interesting ride, glad so many people with such diverse projects could get along for it. Thanks Google!&lt;br /&gt;
And last but not least thanks to my mentor &lt;a href=&quot;http://wiki.scummvm.org/index.php/User:Sev&quot;&gt;Eugene&lt;/a&gt; for guiding me to a more productive direction in my work at times during this summer. His sane voice was the voice of practicality and, I imagine, experience.&lt;br /&gt;
&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/categories/buddhahacks.wordpress.com/250/&quot; /&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/tags/buddhahacks.wordpress.com/250/&quot; /&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/buddhahacks.wordpress.com/250/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/buddhahacks.wordpress.com/250/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/buddhahacks.wordpress.com/250/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/buddhahacks.wordpress.com/250/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/buddhahacks.wordpress.com/250/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/buddhahacks.wordpress.com/250/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/buddhahacks.wordpress.com/250/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/buddhahacks.wordpress.com/250/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/buddhahacks.wordpress.com/250/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/buddhahacks.wordpress.com/250/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=buddhahacks.wordpress.com&amp;amp;blog=3550044&amp;amp;post=250&amp;amp;subd=buddhahacks&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3538#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Tue, 19 Aug 2008 01:21:28 +0200</pubDate>
 <dc:creator>Buddha</dc:creator>
 <guid isPermaLink="false">3538 at http://planet-soc.com</guid>
</item>
<item>
 <title>PICTARZ!1</title>
 <link>http://planet-soc.com/node/3536</link>
 <description>&lt;p&gt;I&amp;#8217;m throwing a pretty crazy end-of-GSoC party over here, so I thought I&amp;#8217;d post some &lt;strong&gt;PICTARZ&lt;/strong&gt; (TM) of the GUI as it&amp;#8217;s on the branch right now, because I&amp;#8217;ve been promising them for quite a while. That&amp;#8217;s pretty much it folks.&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_01.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_01.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_02.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_02.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_03.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_03.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_04.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_04.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_05.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_05.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_06.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_06.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_07.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_07.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_08.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_08.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_09.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_09.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_10.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_10.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_11.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_11.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_12.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_12.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_13.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_13.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_14.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_14.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_15.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_15.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_16.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_16.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_17.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_17.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_18.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_18.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_19.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_19.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_20.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.smartlikearoboc.com/pics/gsoc/screenshot_20.png&quot; alt=&quot;Screenshot&quot; width=&quot;150&quot; height=&quot;122&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Also, while I&amp;#8217;m at it I might as well share a video which is a must watch in order to be considered a worthy human being:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UPDATE&lt;/strong&gt;: Apparently, it looks like my artistic retardedness made me paint half of the GUI pink instead of yellow. The usual folks at IRC pointed that out - as always. ;D&lt;br /&gt;
I commited a fix&amp;#8230; It was just a one-line change thanks to my awesome idea of using color palettes instead of repeating color values. &amp;lt;/egotrip&amp;gt; It&amp;#8217;s actually *yellow* now - I checked against the trunk version. Go me.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3536#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Tue, 19 Aug 2008 00:09:51 +0200</pubDate>
 <dc:creator>Tanoku</dc:creator>
 <guid isPermaLink="false">3536 at http://planet-soc.com</guid>
</item>
<item>
 <title>Official end of summer post (warning: wall of text)</title>
 <link>http://planet-soc.com/node/3535</link>
 <description>&lt;p&gt;That&amp;#8217;s it, folks.&lt;br /&gt;
Google&amp;#8217;s Summer of Code is officially over (it&amp;#8217;s been over for about 20 minutes now). I thought I&amp;#8217;d write the mandatory long post where I talk about my experiences during the summer and all that. So here it goes.&lt;br /&gt;
The ghost of The Old GUI&lt;br /&gt;
I obviously had lots of fun during the project, and I knew since the beginning I was going to enjoy the experience. I applied with 3 projects for GSoC and the three of them involved hefty amounts of graphics programming because basically that&amp;#8217;s the only thing I can spend a whole summer working on.&lt;br /&gt;
On the other hand, I wasn&amp;#8217;t really expecting the experience to be &lt;em&gt;that&lt;/em&gt; harsh (enlightening, yes, but harsh). First off, when writing my application I went so overboard with features, plans and schedules that after a quick review I almost wanted to cry. I obviously didn&amp;#8217;t, because I&amp;#8217;m such a manly man. But still, you get the point&amp;#8230; A vector renderer from scratch, a new format for theme description, a new parser for that format&amp;#8230; the list goes on and on. After all, it hasn&amp;#8217;t been a sweatshop-like task, that&amp;#8217;s for sure, but let&amp;#8217;s just say I would have liked to spend this summer a little more time closer to boobies and a little more more time away from GDB.&lt;br /&gt;
And then there&amp;#8217;s also the issue with feedback. Massive, scary feedback. When you write that many lines of code, you always have lots of bugs. And the more code you write, the more bugs that pop out. And you fix them.&lt;br /&gt;
But the thing is that I&amp;#8217;m not writing code here. I&amp;#8217;m rewriting on top of a massive code base that has been written over the course of many months, and has been mature for many more months. And there&amp;#8217;s always that ghost roaming your project: Your GUI not only has bugs&amp;#8230; It has glitches. It doesn&amp;#8217;t do &lt;em&gt;this&lt;/em&gt; or &lt;em&gt;that&lt;/em&gt; the old GUI did. It does &lt;em&gt;that&lt;/em&gt; but it doesn&amp;#8217;t do it in exactly the same way. THAT TEXT IS OFF PLACE!!&lt;br /&gt;
And it can be a tad nightmarish. Facing the ghost of the Old GUI can be a pain in the ass. But I&amp;#8217;d say I&amp;#8217;ve defeated him; with the help of many people, of course, and based of tons and tons of negative yet necessary feedback. That&amp;#8217;s why I&amp;#8217;d like to apologize (again) if I ever reacted in a moronic-witty manner towards the so required and welcome feedback I&amp;#8217;ve received during the summer. Either way, I&amp;#8217;d say that it turned out quite good.&lt;br /&gt;
Oh how I love thee, Mr. Schickel&lt;br /&gt;
I&amp;#8217;ve just read this morning on LordHoto&amp;#8217;s blog (yes, I know, I&amp;#8217;m kind of late&amp;#8230; I like that) that he feels he hasn&amp;#8217;t been a good mentor at all. I guess that wasn&amp;#8217;t really serious (maybe it was just a temporary &lt;em&gt;dramamoment&lt;/em&gt;!), since it usually goes the other way around: Students think that they haven&amp;#8217;t been up to the task. But whatever, the fact is that &lt;em&gt;I&lt;/em&gt; think I have been a great student (HA), and I also think he has been a more-than-great mentor in many many ways &amp;#8212; so I just wanted to point that fact out. And to thank him again for all the work he&amp;#8217;s done during the summer.&lt;br /&gt;
And while I&amp;#8217;m throwing props around, I&amp;#8217;d like to send some to my favorite overlords from hell, Max and Eugene, just for being there, for all the work they do, for being supportive and for being downright cool.&lt;br /&gt;
Lastly, I&amp;#8217;d like to bow down before DrMcCoy. He has really been the living incarnation of the Ghost of The Old GUI this summer. I actually had a couple dreams about him. BAD dreams. But I&amp;#8217;d like to point out how much I appreciate all the time he has invested on me and my project when he obviously wasn&amp;#8217;t required to do so. Really. Thanks tons. &lt;em&gt;bows down&lt;/em&gt;&lt;br /&gt;
A status report&lt;br /&gt;
LordHoto asked me for a status report -and what a better place to do it than in this final blog post.&lt;br /&gt;
The new Graphical User Interface has traveled a long way this summer - from being a simple pixel-renderer to being a&amp;#8230; huh&amp;#8230; an actual Graphical User Interface. It still has bugs -all programs do- and it still doesn&amp;#8217;t replicate the old GUI pixel-per-pixel (read the book I wrote on &lt;em&gt;the ghost of the Old GUI&lt;/em&gt;). But it&amp;#8217;s there, standing still after just 2 months of work. Ok, make that three months. But you get the point.&lt;br /&gt;
As I stated above, I went completely nuts with my goals. And I&amp;#8217;ve ran out of time. Somehow, I did actually divide goals on my Application into &amp;#8220;Main Goals&amp;#8221; and &amp;#8220;Optional Goals&amp;#8221;, and that&amp;#8217;s a good thing, because whilst I&amp;#8217;ve managed to take on all the main goals -and accomplished them in a pretty good manner, I must add-, I haven&amp;#8217;t really had time to even think about optional goals (those were TTF fonts and localization support, basically). I guess that kind of fits into the meaning of the word &lt;em&gt;optional&lt;/em&gt;.&lt;br /&gt;
But anyways, enough talking about what hasn&amp;#8217;t been done; let&amp;#8217;s talk about what has been done.&lt;br /&gt;
I&amp;#8217;m really happy about the outcome of the project. In fact, I&amp;#8217;m actually &lt;em&gt;hyped&lt;/em&gt; about the outcome - in the middle of the summer, I wasn&amp;#8217;t really expecting it&amp;#8217;d end up like it. I may probably be ego-tripping here, but I&amp;#8217;m really proud of much of the code I&amp;#8217;ve written this summer. The vector renderer design is smart, and it&amp;#8217;s really extendable (although that was basically LordHoto&amp;#8217;s idea, but whatever), and the new STX format is&amp;#8230; Straight and simple. I think it&amp;#8217;s a good idea. The way that drawsteps work, and specially, very very specially the way that Flowing Layouts work make me all tingly on the inside.&lt;br /&gt;
Either way, I do acknowledge that the GUI has its issues and its shortcomings - many of these because of the fact that I&amp;#8217;ve run so out of time. Besides a few graphical glitches (i.e. when replicating the old GUI), there&amp;#8217;s one big issue in the GUI in my opinion: the shadow renderer. It does &lt;em&gt;not&lt;/em&gt; look good and I know it - the shadows aren&amp;#8217;t even soft, although I must admit it is quite fast. That&amp;#8217;s really calling for a rewrite, and I&amp;#8217;m sure that there are lots of other places that could use some work (performance, anyone?), and lots of places that could use some testing; the kind of stuff that you do without pressure or schedules. But that&amp;#8217;s gonna have to wait a while&amp;#8230;&lt;br /&gt;
So what happens now?&lt;br /&gt;
Right now, and to celebrate that the GSoC is officially over, I&amp;#8217;m going to fade out for two weeks to work on some personal stuff while &lt;strong&gt;LordHoto&lt;/strong&gt; takes up the daunting task of evaluating my summer work.&lt;br /&gt;
I really need to forget -at least temporarily- about graphical user interfaces, XML, vectorial drawing and all the kind of stuff that has been haunting my mind during this summer.&lt;br /&gt;
After the evaluation period is over, I&amp;#8217;ll be back (&lt;em&gt;read that in a menacing voice&lt;/em&gt;), and I&amp;#8217;ll resume my work on my project until it&amp;#8217;s solid enough to be merged into the trunk. We&amp;#8217;ll see how it goes - and after that no one knows what will happen. I&amp;#8217;ll probably start contributing to Residual if next years university schedules allow me to do so. That project really needs some love!&lt;br /&gt;
So, this is it for this summer folks. Thanks for reading, I&amp;#8217;ll see you in two weeks from my new blog (I kind of need a new one, I don&amp;#8217;t think I can take this &lt;em&gt;Scummer&lt;/em&gt; of Code pun any longer).&lt;br /&gt;
And no, this time there are no jokes regarding plane tickets to Germany and kicking some witty german ass. Why should I?&lt;br /&gt;
Out, -Tanoku.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3535#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Mon, 18 Aug 2008 21:26:46 +0200</pubDate>
 <dc:creator>Tanoku</dc:creator>
 <guid isPermaLink="false">3535 at http://planet-soc.com</guid>
</item>
<item>
 <title>What’s up, doc?</title>
 <link>http://planet-soc.com/node/3486</link>
 <description>&lt;p&gt;So&amp;#8230; yes, right. Doc is up. And by doc I mean documentation. And by up I mean that a first draft of the Theme Format documentation has been uploaded and can be seen &lt;a title=&quot;STX documentation&quot; href=&quot;http://www.smartlikearoboc.com/scummvm_doc/stx_doc.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;. It even has &lt;strong&gt;PICTARZ&lt;/strong&gt;, so feel free to take a peek and tell me what do you think I could improve (apart from the obvious missing sentences and the hundreds of typos). And don&amp;#8217;t tell me I can improve &lt;strong&gt;PICTARZ&lt;/strong&gt; because they are the most awesome shit you&amp;#8217;ll ever see in a XML format documentation. EVAR.&lt;br /&gt;
Also, in case you don&amp;#8217;t know, I have been working my ass off this last week. Yesterday I dropped all traces of the legacy GUI code from my SVN branch (if that&amp;#8217;s not a project milestone, then I don&amp;#8217;t know what is it).&lt;br /&gt;
This afternoon I&amp;#8217;ve written a whole theme from scratch (a reproduction of the old &amp;#8220;classic&amp;#8221; theme) in less than 1h. I guess that proves that the new STX format is powerful or something.&lt;br /&gt;
&amp;#8230;And that&amp;#8217;s it. I&amp;#8217;m basically done. There are just a few graphical glitches here and there (the new GUI doesn&amp;#8217;t look exactly like the old one) which I&amp;#8217;ll be fixing over the weekend.&lt;br /&gt;
I wanna be Jackie Onassis. I wanna wear a pair of dark sunglasses. I wanna be Jackie O, oh, oh, oh please don&amp;#8217;t die.&lt;em&gt;&lt;/em&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3486#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Fri, 15 Aug 2008 01:40:58 +0200</pubDate>
 <dc:creator>Tanoku</dc:creator>
 <guid isPermaLink="false">3486 at http://planet-soc.com</guid>
</item>
<item>
 <title>What’s up, doc?</title>
 <link>http://planet-soc.com/node/3502</link>
 <description>&lt;p&gt;So&amp;#8230; yes, right. Doc is up. And by doc I mean documentation. And by up I mean that a first draft of the Theme Format documentation has been uploaded and can be seen &lt;a title=&quot;STX documentation&quot; href=&quot;http://www.smartlikearoboc.com/scummvm_doc/stx_doc.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;. It even has &lt;strong&gt;PICTARZ&lt;/strong&gt;, so feel free to take a peek and tell me what do you think I could improve (apart from the obvious missing sentences and the hundreds of typos). And don&amp;#8217;t tell me I can improve &lt;strong&gt;PICTARZ&lt;/strong&gt; because they are the most awesome shit you&amp;#8217;ll ever see in a XML format documentation. EVAR.&lt;br /&gt;
Also, in case you don&amp;#8217;t know, I have been working my ass off this last week. Yesterday I dropped all traces of the legacy GUI code from my SVN branch (if that&amp;#8217;s not a project milestone, then I don&amp;#8217;t know what is it).&lt;br /&gt;
This afternoon I&amp;#8217;ve written a whole theme from scratch (a reproduction of the old &amp;#8220;classic&amp;#8221; theme) in less than 1h. I guess that proves that the new STX format is powerful or something.&lt;br /&gt;
&amp;#8230;And that&amp;#8217;s it. I&amp;#8217;m basically done. There are just a few graphical glitches here and there (the new GUI doesn&amp;#8217;t look exactly like the old one) which I&amp;#8217;ll be fixing over the weekend.&lt;br /&gt;
I wanna be Jackie Onassis. I wanna wear a pair of dark sunglasses. I wanna be Jackie O, oh, oh, oh please don&amp;#8217;t die.&lt;br /&gt;
&lt;strong&gt;UPDATE:&lt;/strong&gt; I have given another pass to the STX format documentation, and also uploaded the &lt;a href=&quot;http://www.smartlikearoboc.com/scummvm_doc/xmlparser_doc.html&quot; target=&quot;_blank&quot;&gt;documentation for the XML Parser&lt;/a&gt;.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3502#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Fri, 15 Aug 2008 01:40:58 +0200</pubDate>
 <dc:creator>Tanoku</dc:creator>
 <guid isPermaLink="false">3502 at http://planet-soc.com</guid>
</item>
<item>
 <title>Memory corruption hunting</title>
 <link>http://planet-soc.com/node/3474</link>
 <description>&lt;p&gt;Hi! I&amp;#8217;ve been fixing lots of things in Operation Stealth. I started using &lt;a href=&quot;http://valgrind.org/&quot;&gt;Valgrind&lt;/a&gt; because the &lt;a href=&quot;http://wiki.scummvm.org/index.php/Cine&quot;&gt;Cine&lt;/a&gt; engine corrupted memory and I didn&amp;#8217;t know where to start fixing it. I&amp;#8217;ve now got Valgrind running ScummVM under &lt;a href=&quot;http://www.ubuntu.com/&quot;&gt;Ubuntu&lt;/a&gt; 8.04 which I&amp;#8217;m running in &lt;a href=&quot;http://www.virtualbox.org/&quot;&gt;VirtualBox&lt;/a&gt;. A virtual machine (VirtualBox) running a virtual machine (Valgrind), yay! One could think that it&amp;#8217;d be dead slow, but actually it runs ok.&lt;br /&gt;
So I recommend trying out &lt;a href=&quot;http://valgrind.org/&quot;&gt;Valgrind&lt;/a&gt; if you&amp;#8217;ve got memory corruption problems with a program you&amp;#8217;re developing even if you don&amp;#8217;t run Linux natively, it can be used through a virtual machine like &lt;a href=&quot;http://www.virtualbox.org/&quot;&gt;VirtualBox&lt;/a&gt;, &lt;a href=&quot;http://bellard.org/qemu/&quot;&gt;QEMU&lt;/a&gt; or &lt;a href=&quot;http://www.vmware.com/products/player/&quot;&gt;VMWare&lt;/a&gt;. I already got some memory corruption problems fixed with Valgrind&amp;#8217;s help.&lt;br /&gt;
Stuff done since last update:&lt;br /&gt;
Bugfixes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fixed popup boxes blocking animation (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33686&amp;amp;view=rev&quot;&gt;r33686&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Partially fixed Adlib volume setting (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33700&amp;amp;view=rev&quot;&gt;r33700&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33701&amp;amp;view=rev&quot;&gt;r33701&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;li&gt;Fixed &amp;#8216;text hard to read&amp;#8217; problems (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33792&amp;amp;view=rev&quot;&gt;r33792&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Fixed inventory showing (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33795&amp;amp;view=rev&quot;&gt;r33795&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Fixed verb handling bug (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33805&amp;amp;view=rev&quot;&gt;r33805&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;New functionality:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Implemented game speed changing by pressing - or + (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33689&amp;amp;view=rev&quot;&gt;r33689&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Added moving using keyboard (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33698&amp;amp;view=rev&quot;&gt;r33698&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33710&amp;amp;view=rev&quot;&gt;r33710&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Basic support for CD Future Wars (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33703&amp;amp;view=rev&quot;&gt;r33703&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33705&amp;amp;view=rev&quot;&gt;r33705&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;li&gt;Added drawing of type 22 overlays as filled rectangles (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33713&amp;amp;view=rev&quot;&gt;r33713&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Preliminary drawing of type 21 overlays (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33721&amp;amp;view=rev&quot;&gt;r33721&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33722&amp;amp;view=rev&quot;&gt;r33722&lt;/a&gt;). WIP!&lt;/li&gt;
&lt;li&gt;Implemented transparent cutscene textboxes (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33790&amp;amp;view=rev&quot;&gt;r33790&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-transparent_cutscene_textboxes_working.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-236&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/scummvm-operation_stealth-transparent_cutscene_textboxes_working.png?w=300&amp;amp;h=225&quot; alt=&quot;Cutscene textboxes working in ScummVM&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Cutscene textboxes working in ScummVM&lt;br /&gt;
Memory corruption and out of bounds access related changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fixed rectangle drawing (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33687&amp;amp;view=rev&quot;&gt;r33687&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33811&amp;amp;view=rev&quot;&gt;r&lt;/a&gt;&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33811&amp;amp;view=rev&quot;&gt;33811&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33814&amp;amp;view=rev&quot;&gt;r33814&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;li&gt;Added sanity tests to background scrolling (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33688&amp;amp;view=rev&quot;&gt;r33688&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Converted objectTable to Common::Array (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33725&amp;amp;view=rev&quot;&gt;r33725&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Converted animDataTable to Common::Array (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33726&amp;amp;view=rev&quot;&gt;r33726&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Converted zoneData &amp;amp; zoneQuery to Common::Array (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33727&amp;amp;view=rev&quot;&gt;r33727&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Converted partBuffer to Common::Array (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33783&amp;amp;view=rev&quot;&gt;r33783&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Converted palPtr to Common::Array (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33785&amp;amp;view=rev&quot;&gt;r33785&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Fixed fontParamTable freeing (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33786&amp;amp;view=rev&quot;&gt;r33786&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Converted commandBuffer to Common::String (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33793&amp;amp;view=rev&quot;&gt;r33793&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Fixed handling of incorrect input data in loadMsg (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33810&amp;amp;view=rev&quot;&gt;r33810&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Fixed initialization of instrument data (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33812&amp;amp;view=rev&quot;&gt;r33812&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33813&amp;amp;view=rev&quot;&gt;r33813&lt;/a&gt; 0.12.0)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cleanup:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Removed unnecessary textDataPtr (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33784&amp;amp;view=rev&quot;&gt;r33784&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And as Valgrind noticed some memory problems in the &lt;a href=&quot;http://wiki.scummvm.org/index.php/AGI&quot;&gt;AGI&lt;/a&gt; engine&amp;#8217;s sound engine I committed some fixes related to them (&lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33816&amp;amp;view=rev&quot;&gt;r33816&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33822&amp;amp;view=rev&quot;&gt;r33822&lt;/a&gt; trunk, &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33820&amp;amp;view=rev&quot;&gt;r33820&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33823&amp;amp;view=rev&quot;&gt;r33823&lt;/a&gt; 0.12.0). I had previously noticed that the AGI engine&amp;#8217;s sound engine sometimes crashed when starting the first sound in an AGI game, so hopefully that&amp;#8217;s fixed now.&lt;br /&gt;
What next?&lt;br /&gt;
Well, I got to the part where the player character is dropped into the sea with a woman, but I&amp;#8217;m currently stuck there. After sorting out the memory corruption problems and testing the original game&amp;#8217;s behaviour in this particular part it seems the problem is somehow related to incorrect character moving. The character should first swim near the girl and then try &amp;#8220;Operate Girl&amp;#8221; to untie her ropes (It works that way in the original). Here&amp;#8217;s a picture of the thing working in DOSBox:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/dosbox-operation_stealth-untying_girls_ropes.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-234&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/dosbox-operation_stealth-untying_girls_ropes.png?w=300&amp;amp;h=187&quot; alt=&quot;Untying the girl&amp;#039;s ropes under DOSBox&quot; width=&quot;300&quot; height=&quot;187&quot; /&gt;&lt;/a&gt;Freeing the girl in DOSBox&lt;br /&gt;
But alas in ScummVM currently the player character can only be moved to the left and he automatically moves upwards almost all the time. So I can&amp;#8217;t get to the girl to untie her and they both drown. With the memory corruption problems out of the way I&amp;#8217;m looking into fixing this character moving problem next.&lt;br /&gt;
&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/categories/buddhahacks.wordpress.com/178/&quot; /&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/tags/buddhahacks.wordpress.com/178/&quot; /&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/buddhahacks.wordpress.com/178/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/buddhahacks.wordpress.com/178/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/buddhahacks.wordpress.com/178/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/buddhahacks.wordpress.com/178/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/buddhahacks.wordpress.com/178/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/buddhahacks.wordpress.com/178/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/buddhahacks.wordpress.com/178/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/buddhahacks.wordpress.com/178/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/buddhahacks.wordpress.com/178/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/buddhahacks.wordpress.com/178/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=buddhahacks.wordpress.com&amp;amp;blog=3550044&amp;amp;post=178&amp;amp;subd=buddhahacks&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3474#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Wed, 13 Aug 2008 18:57:56 +0200</pubDate>
 <dc:creator>Buddha</dc:creator>
 <guid isPermaLink="false">3474 at http://planet-soc.com</guid>
</item>
<item>
 <title>Saturated</title>
 <link>http://planet-soc.com/node/3453</link>
 <description>&lt;p&gt;I&amp;#8217;m exhausted. Really burned out. I&amp;#8217;ve had to take a day out from coding -and I spent it writing documentation, which is sad enough.&lt;br /&gt;
The theme format documentation is coming along nicely. After that, there&amp;#8217;s this TODO list:&lt;br /&gt;
- Finish builtin theme.&lt;br /&gt;
- g1x dialog boxes/options&lt;br /&gt;
- Theme loading: Theme names, theme headers.&lt;br /&gt;
- Button corners too big, widgets gigantic&lt;br /&gt;
- No shadows on top of the widgets (rework shadows engine)&lt;br /&gt;
- Popup widgets could use 2 triangles&lt;br /&gt;
It&amp;#8217;s a bit of work but I have the whole week. Unless I decide to throw my computer down the balcony. I promise there&amp;#8217;ll be a proper update in the middle of the week, and a big &amp;#8220;end of gsoc&amp;#8221; post on the weekend.&lt;br /&gt;
I &lt;em&gt;really&lt;/em&gt; have a hard time expressing myself in english; this documentation writing thing is giving me a serious headache.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3453#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Tue, 12 Aug 2008 01:00:39 +0200</pubDate>
 <dc:creator>Tanoku</dc:creator>
 <guid isPermaLink="false">3453 at http://planet-soc.com</guid>
</item>
<item>
 <title>Got through the first arcade sequence</title>
 <link>http://planet-soc.com/node/3379</link>
 <description>&lt;p&gt;Hi! Got through the first arcade sequence in Operation Stealth and back onto dry land :-). But it wasn&amp;#8217;t very easy, as there were problems to overcome:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First arcade sequence was practically impossible to complete (Oxygen forced to maximum by a hack in &lt;a href=&quot;http://scummvm.svn.sourceforge.net/viewvc/scummvm?view=rev&amp;amp;revision=33667&quot;&gt;r33667&lt;/a&gt; for now so it&amp;#8217;s possible to complete it)&lt;/li&gt;
&lt;li&gt;Player teleported to a wrong location when getting out of the water after the first arcade sequence (Fixed by fixing checkCollision function&amp;#8217;s boundary checking in &lt;a href=&quot;http://scummvm.svn.sourceforge.net/viewvc/scummvm?view=rev&amp;amp;revision=33668&quot;&gt;r33668&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Player got completely stuck after getting out of the water after the first arcade sequence (Introduced a hack in &lt;a href=&quot;http://scummvm.svn.sourceforge.net/viewvc/scummvm?view=rev&amp;amp;revision=33673&quot;&gt;r33673&lt;/a&gt; to nudge the player off his position by one pixel to get him free)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-after_first_arcade_sequence.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-161&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-after_first_arcade_sequence.png?w=300&amp;amp;h=225&quot; alt=&quot;The position where one could get stuck after the first arcade sequence&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Here&amp;#39;s where one could get stuck after the first arcade sequence&lt;br /&gt;
So now the first arcade sequence is completable (Although by a hack) and one can get out of the water after it and continue playing.&lt;br /&gt;
BTW while playing I&amp;#8217;ve noticed that although savegames work good enough to allow continuing playing the graphics aren&amp;#8217;t always correct, see for yourself:&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-beach_scene_bugging_after_loading.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-162&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-beach_scene_bugging_after_loading.png?w=300&amp;amp;h=225&quot; alt=&quot;Beach scene bugging after loading&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Beach scene bugging after loading a savegame&lt;br /&gt;
What next?&lt;br /&gt;
Carrying onwards with the game! Let&amp;#8217;s see how far I&amp;#8217;ll get this time without encountering any showstopping bugs&amp;#8230;&lt;br /&gt;
&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/categories/buddhahacks.wordpress.com/159/&quot; /&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/tags/buddhahacks.wordpress.com/159/&quot; /&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/buddhahacks.wordpress.com/159/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/buddhahacks.wordpress.com/159/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/buddhahacks.wordpress.com/159/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/buddhahacks.wordpress.com/159/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/buddhahacks.wordpress.com/159/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/buddhahacks.wordpress.com/159/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/buddhahacks.wordpress.com/159/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/buddhahacks.wordpress.com/159/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/buddhahacks.wordpress.com/159/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/buddhahacks.wordpress.com/159/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=buddhahacks.wordpress.com&amp;amp;blog=3550044&amp;amp;post=159&amp;amp;subd=buddhahacks&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3379#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <category domain="http://planet-soc.com/taxonomy/term/182">Universe SoC</category>
 <pubDate>Thu, 07 Aug 2008 14:28:28 +0200</pubDate>
 <dc:creator>Buddha</dc:creator>
 <guid isPermaLink="false">3379 at http://planet-soc.com</guid>
</item>
<item>
 <title>Got to the first arcade sequence</title>
 <link>http://planet-soc.com/node/3361</link>
 <description>&lt;p&gt;Hi! Played the 256 color PC version of Operation Stealth under ScummVM to the first arcade sequence. Found lots of bugs but only one that was a showstopper (Crash when leaving the airport) and another one that may be a showstopper (Moving in the first arcade sequence is so hard that it may be practically impossible to complete it). Fixed the former bug already but not the latter one. Here&amp;#8217;s a list of the bugs I found:&lt;br /&gt;
Bugs found on first completion run try so far&lt;br /&gt;
#1: Verb-handling bug:&lt;br /&gt;
If you open the briefcase with &amp;#8220;Operate briefcase&amp;#8221; the operate-verb will stay chosen and then you can choose &amp;#8220;Operate calculator&amp;#8221; again and again etc and it becomes &amp;#8220;Operate calculator calculator calculator&amp;#8230;&amp;#8221; and finally crashes.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-verb_handling_bugs.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-126&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-verb_handling_bugs.png?w=300&amp;amp;h=225&quot; alt=&quot;Verb handling bugs&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Verb handling bugs&lt;br /&gt;
#2: Background handling bug:&lt;br /&gt;
If you load a savegame that has the briefcase open the palette and the background will be wrong (If you opened the briefcase in the bathroom stall the background will be the bathroom stall but with wrong colors. Pen, passport and calculator in the briefcase are shown on top with correct colors though.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-briefcase_background_bugs.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-127&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-briefcase_background_bugs.png?w=300&amp;amp;h=225&quot; alt=&quot;Briefcase&amp;#039;s background bugs&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Briefcase&amp;#39;s background bugs after loading&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-briefcase_background_works.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-128&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-briefcase_background_works.png?w=300&amp;amp;h=225&quot; alt=&quot;Briefcase&amp;#039;s background working after not loading&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Briefcase&amp;#39;s background works after not loading&lt;br /&gt;
#3: Airport bag conveyor belt masking bug:&lt;br /&gt;
If you go to the airport&amp;#8217;s bag picking up scene where bags run in a circle on a conveyor belt then you&amp;#8217;ll see that the scene looks pretty weird. Some masks are probably off&amp;#8230; (Things go in front of stuff that they shouldn&amp;#8217;t or something similar).&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-conveyor_belt_masking_bugs.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-120&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-conveyor_belt_masking_bugs.png?w=300&amp;amp;h=225&quot; alt=&quot;Conveyor belt masking bugs&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Conveyor belt masking bugs&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-dosbox-conveyor_belt_masking_works.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-124&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-dosbox-conveyor_belt_masking_works.png?w=300&amp;amp;h=187&quot; alt=&quot;Conveyor belt masking working in DOSBox&quot; width=&quot;300&quot; height=&quot;187&quot; /&gt;&lt;/a&gt;Conveyor belt masking working in DOSBox&lt;br /&gt;
#4: Fading bug:&lt;br /&gt;
If for an example you go to the airport&amp;#8217;s bathroom stall and open and close the briefcase you&amp;#8217;ll get a double fading effect.&lt;br /&gt;
#5: Inventory showing doesn&amp;#8217;t work unless using the USE verb:&lt;br /&gt;
If you right click to get the menu and choose INVENTORY nothing happens. It should show the inventory. If you choose the USE verb you&amp;#8217;ll get to choose an item to use from the inventory though.&lt;br /&gt;
#6: Game crashes or player is invisible when exiting the airport:&lt;br /&gt;
First the game crashed when trying to leave the airport when it didn&amp;#8217;t find some files JOHN01.ANI and JOHN02.ANI. Fixed the resource loading to handle missing files gracefully in &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33643&amp;amp;view=rev&quot;&gt;r33643&lt;/a&gt;. After that the player character was completely invisible when walking behind the glass in the next scene. Looked into that and made a workaround by loading the corresponding SET files instead (It worked and looked fine) in &lt;a href=&quot;http://scummvm.svn.sourceforge.net/scummvm/?rev=33644&amp;amp;view=rev&quot;&gt;r33644&lt;/a&gt;.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-silhuette_working_when_leaving_airport.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-137&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-silhuette_working_when_leaving_airport.png?w=300&amp;amp;h=225&quot; alt=&quot;Silhuette animation working after fix&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Player visible behind glass after workaround&lt;br /&gt;
#7: Music may hang on a note when scene changes:&lt;br /&gt;
If for an example you leave the airport by a taxi and go downtown the music playing outside the airport may hang on a note and continue playing that single sound. The sound is quite annoying.&lt;br /&gt;
#8: Text hard to read:&lt;br /&gt;
For an example in the Santa Paragua&amp;#8217;s bank when examining the stained glass door on the back the background of the popup box is light yellow and the text is white so it&amp;#8217;s very hard to read what it says.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_bank-text_hard_to_read.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-129&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_bank-text_hard_to_read.png?w=300&amp;amp;h=225&quot; alt=&quot;Text hard to read&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Text hard to read&lt;br /&gt;
#9: Text box wraps around the screen:&lt;br /&gt;
A &amp;#8220;WATCH OOOOOUT!!!&amp;#8221; text box wraps around the screen from the right to the left side in the Las Mimosas park during the drive-by shooting.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_park-text_wraps_around_screen.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-130&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_park-text_wraps_around_screen.png?w=300&amp;amp;h=225&quot; alt=&quot;Text box wraps around screen&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Text box wraps around screen&lt;br /&gt;
#10: Masking bugs at the hotel&amp;#8217;s beach stairs:&lt;br /&gt;
This might very well be just like the next bug but when walking to the stairs that go down to the hotel&amp;#8217;s beach in Santa Paragua the masking bugs and the player character can seemingly walk through the railing.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-masking_bugs_at_hotel_beach.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-150&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-masking_bugs_at_hotel_beach.png?w=300&amp;amp;h=225&quot; alt=&quot;Masking bugs at the hotel&amp;#039;s beach stairs&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Masking bugs at the hotel&amp;#39;s beach stairs&lt;br /&gt;
#11: Masking bugs in the bank vault in Santa Paragua&amp;#8217;s bank:&lt;br /&gt;
When going to open the safe case in the bank&amp;#8217;s vault in Santa Paragua the player character is seen in front of the bars although he&amp;#8217;s walking behind them. The masking works later though&amp;#8230; weird.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_bank_vault-bar_masking_bugs.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-131&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_bank_vault-bar_masking_bugs.png?w=300&amp;amp;h=225&quot; alt=&quot;Vault bar masking bugs&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Vault bar masking bugs&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_bank_vault-bar_masking_works.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-132&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-at_bank_vault-bar_masking_works.png?w=300&amp;amp;h=225&quot; alt=&quot;Vault bar masking working in another scene&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Vault bar masking works&lt;br /&gt;
#12: Popup box blocks animation when it shouldn&amp;#8217;t:&lt;br /&gt;
After getting caught by the enemy agents in Santa Paragua&amp;#8217;s bank there&amp;#8217;s a scene where it reads &amp;#8220;Later, after a hard trip&amp;#8230;&amp;#8221; and the enemy agents and the protagonist walk from left to right on-screen. They don&amp;#8217;t walk at all if one doesn&amp;#8217;t click with the mouse (They should be animated even though there&amp;#8217;s a popup box on-screen). So you can only get through the scene by clicking with the mouse many, many times but still, it&amp;#8217;s possible.&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-popup_box_blocks_animation.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-133&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-popup_box_blocks_animation.png?w=300&amp;amp;h=225&quot; alt=&quot;Popup box blocking animation&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;Popup box blocking animation&lt;br /&gt;
#13: Game jams after failing first arcade sequence:&lt;br /&gt;
If you die by being underwater for too long in the first arcade sequence the game jams. Nothing happens, music just keeps playing and the &amp;#8220;It isn&amp;#8217;t recommended to hang around underwater. This is the end of your exploits&amp;#8221; box is shown and the loading menu can&amp;#8217;t be accessed.&lt;br /&gt;
#14: Red bar that shows the oxygen left isn&amp;#8217;t updated:&lt;br /&gt;
In the first arcade sequence the bar should show the amount of oxygen left but it doesn&amp;#8217;t, it simply stays the same long red bar all the time (Still you can get killed by being underwater for too long).&lt;br /&gt;
&lt;a href=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-first_arcade_sequence.png&quot;&gt;&lt;img class=&quot;size-medium wp-image-134&quot; src=&quot;http://buddhahacks.files.wordpress.com/2008/08/operation_stealth-scummvm-first_arcade_sequence.png?w=300&amp;amp;h=225&quot; alt=&quot;First arcade sequence&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;First arcade sequence&lt;br /&gt;
#15: It&amp;#8217;s very hard to move in the first arcade sequence:&lt;br /&gt;
The player character doesn&amp;#8217;t move much if you just click once somewhere on-screen and keep the mouse button down. Neither does using the keyboard do any good (Movement using keyboard isn&amp;#8217;t implemented yet, I think). So you just have to click furiously with the mouse to where you want to swim in order to get there. This may make the first arcade sequence practically impossible to complete.&lt;br /&gt;
What next?&lt;br /&gt;
Alright, I got to the first arcade sequence but it&amp;#8217;s hard to play it. I&amp;#8217;ll fix that so it can be played through and then carry on!&lt;br /&gt;
&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/categories/buddhahacks.wordpress.com/108/&quot; /&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/tags/buddhahacks.wordpress.com/108/&quot; /&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/buddhahacks.wordpress.com/108/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/buddhahacks.wordpress.com/108/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/buddhahacks.wordpress.com/108/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/buddhahacks.wordpress.com/108/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/buddhahacks.wordpress.com/108/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/buddhahacks.wordpress.com/108/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/buddhahacks.wordpress.com/108/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/buddhahacks.wordpress.com/108/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/buddhahacks.wordpress.com/108/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/buddhahacks.wordpress.com/108/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=buddhahacks.wordpress.com&amp;amp;blog=3550044&amp;amp;post=108&amp;amp;subd=buddhahacks&amp;amp;ref=&amp;amp;feed=1&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3361#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Wed, 06 Aug 2008 15:04:19 +0200</pubDate>
 <dc:creator>Buddha</dc:creator>
 <guid isPermaLink="false">3361 at http://planet-soc.com</guid>
</item>
<item>
 <title>No Cigar</title>
 <link>http://planet-soc.com/node/3359</link>
 <description>&lt;p&gt;As time to the deadline winds down, the pressure is building up. Since my focus has been on programming and dealing with the outstanding issues, I have neglected updating this blog as frequently as I would like.&lt;br /&gt;
As it stands, with the latest update, I believe the issues with the update cycle and timing system should be resolved. The previous revision had several problems due to the patterns or macros terminating prematurely or not stepping properly. With the revised system, song playback is handled as follows:&lt;/p&gt;

&lt;p&gt;&lt;li&gt;The TFMX files are loaded with a separate functions to load the data and samples. Once loaded, you call playSong() to start playback of a particular track. This loads the track data, starts PAULA and the interrupt cycle.&lt;/li&gt;
&lt;li&gt;On the first interrupt, the trackstep data is read. If the trackstep line specifies a command, it is processed and the trackstep proceeds to the next line on the next interrupt. If the trackstep specifies patterns in one of the eight tracks, a flag specifying that a pattern is on is set to the specific track. The trackstep then cannot advance until all of the patterns have finished playing.&lt;/li&gt;
&lt;li&gt;For the patterns that are on, one pattern command is processed per interrupt. In the case that the pattern specifies a note/macro, the pattern controller goes into a loop to process the macro until the macro specifies a wait which will cause it to hold until the next interrupt.&lt;/li&gt;&lt;/p&gt;

&lt;p&gt;With the new system, pattern loading and macro loading is handled by separate functions. With this it is possible to independently load patterns or macros for testing purposes. I&amp;#8217;m using this to my advantage and have designed a function to individually test macros for playback as is done in the original TFMX editor itself. Since I have been focusing on resolving the issues with the update cycles and timing system which have resulted in a total overhaul, I have not been able to successfully implement all the effects since they are inseparably tied to the timing system. With the test macro functionality in place, I will be able to finish implementing the effects and easily test them by playing back each of the Monkey Island macros.&lt;br /&gt;
As for the external interface to interact with; as stated, you simply make calls to individual load the data and sample files (these functions will be changed to accept parameters). You then simply call playSong to play one of the individual tracks. The track will automatically stop when complete or you can call a stop function at anytime to terminate the song prematurely. With these simple functions in place, it will be easy to add code to Monkey Island engine to playback TFMX audio. Hopefully, once the remaining effects are in place, TFMX audio will be ready for prime time. I hope to have them all in place over the next week and then proceed with the final step to linking to the Monkey Island engine.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3359#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/128">ScummVM</category>
 <pubDate>Wed, 06 Aug 2008 08:05:58 +0200</pubDate>
 <dc:creator>Marwan Hilmi</dc:creator>
 <guid isPermaLink="false">3359 at http://planet-soc.com</guid>
</item>
</channel>
</rss>
