Scott T: The Blog

Un-Decoding VDXs

Posted Mon, Dec 21, 2009 at 4:50pm by Scott
Tagged: programming, scummvm
No comments - Add one!

The usual direction when adding support for T7G and 11H to ScummVM is to take the data files, decode them, and get the video and/or audio out of them. Last week in a moment of boredom, curiosity, and 'how hard can it be?', I decided to work on working on going the opposite direction and have a look at encoding instead.

As it turns out, still frames were fairly straight-forward to implement due to the simple structure.

Animation frames were a little harder. Most of the issues resolved to be related to how I was attempting to keep track of palette changes between frames (and the rewriting of the new frame to line up colours common between both palettes but at differing indices), but I also got caught up in some minor logic errors in the encoder (in particular, encoding the same tile using two different methods, and requiring a "new line" opcode at the end of *every* line - not just those that end early). The final result can be found at this YouTube video (sorry - no embedding, since my blog doesn't support it).

Encode speeds currently aren't the greatest yet, the output VDX files are not compressed, and the encoder requires 8bpp Indexed BMPs for use as input, but it's certainly a start for proof-of-concept purposes :)


11H Cursors - Part 2

Posted Mon, Aug 31, 2009 at 12:27pm by Scott
Tagged: programming, scummvm
2 comments

After some questioning of my original logic, another look at the disassembly revealed I'd misinterpreted a few bits and pieces wrongly. A short time later, and we get cursors without missing pixels =)

Still no alpha-blending, so the black edges are still visible and the hand isn't see-through, but it makes it a lot easier to navigate through the mansion.


Pointing the Way

Posted Sun, Aug 30, 2009 at 10:50am by Scott
Tagged: games, programming, scummvm
2 comments

In a combination of getting my mind off of study, and giving clone2727 no reason for not posting Riven videos - see the IRC logs (at around [15:00]) for explanation - you can now see where the mouse is located in 11H (and the other GroovieV2 games).

There still needs to be a little bit of work done though. For some reason that I'm yet to determine, some pixels of the cursors are still missing (more obvious in the full-sized images).

Blending is still not supported, although how to apply the blending has been worked out. Currently I'm assuming the cursor will always be over the top of a black background, which works well when it is (like the above) but not so well for when it isn't.

And as much as the above image doesn't show it, they are animated although the transition between hand direction isn't implemented yet.


Beating JPEG

Posted Wed, Jul 01, 2009 at 10:33pm by Scott
Tagged: games, programming, scummvm
2 comments

One of the main sticking points for working on The 11th Hour recently (ignoring lack of time) has been the still frames within ROQ files. Although seemingly trivial within T7G, 11H uses more complex/advanced image compression for both video and stills. The video frames have been working for a while with some very minor glitches however the still frames use JPEG, and it's hard to find a decent documentation source. Never-the-less, some work had been done prior to now by clone2727 (for Mohawk) and jvprat which I obtained last week and then became rather obsessed with fixing =P

From rather simple beginnings, there were some rather critical issues to be fixed first (ie, missing functionality) which rapidly pushed towards a greyscale image.

Fiddling here and there resulted in a vast number of -ish improvements until a breakthrough resulted in the following:

All the AC components of the image seemed fine so after fixing an issue with the DC values, success was reached. Five minutes of tinkering to add JPEG to the 16bpp branch and we have the final image, rendered in RGB.

For those interested in the progress shots, the (semi-permanent) gallery has many ways of not to decode a JPEG.


Summer Sun

Posted Fri, Nov 07, 2008 at 3:16pm by Scott
Tagged: everyday, games, programming
2 comments

Turns out summer is getting nearer for us Aussies. Myself and a few friends went down to Glenelg after Uni yesterday afternoon, and I still managed to gain a minor pink tinge on my arms, despite maybe only getting one to two hours of sun during that time (albeit between 1:30 and 4). Fortunately nothing serious though :)

In other news, t7gre progress has been flying - almost all the puzzles now work! Except the AI for the Microscope puzzle. Which is rather complicated looking. There are also some other bugs relating to Stauf and Ego's dialogue, midi repeating and so on, but the bulk is almost done.


Spam Count 
  • 1772 spam comments
Twitter Feed 





Boring Stuff 

The images shown on this site are ones myself or family members have taken (unless otherwise noted). Don't use them unless you let us know - leave a comment somewhere as I'll usually find it.

Things I write can be used as quotes elsewhere however as long as they are attributed to me (preferably with a link and a comment somewhere that you've used it).