What Now?

I have had some readers ask what is to become of this blog. Well, it started out discussing Office Development, then it covered Threat Modelling, and most recently it has been about HDi. There have been several posts about the Pet Shop Boys and then there was this little post, too. That’s the cool thing…


Fun Friends for Functions, Part 2: Handling Exceptions

Previously we looked at how you can bind a function to a set of arguments and then call the resultant function at some time in the future. This technique is very powerful, but as-is it is a ticking bomb. As Amy points out in her blog post on exception handling, you always need to be…


Fun Friends For Functions

And now for a more techy post. In ECMAScript, functions are considered first-class objects. “What,” you might ask, “differentiates a ‘first-class’ object from a merely ‘economy-class’ object?” Well, the main thing is that functions in ECMAScript are treated just like any other type of data (strings, numbers, arrays, etc.) in that they can be assigned…


HD DVD Emulator for Xbox 360!

It’s finally here! The Xbox 360 HD DVD Emulator went live today, enabling content authors to test their HD DVD content in a real-world consumer player before committing it to a shiny disc. This can save a lot of time and a lot of money for those folks building advanced HD DVD titles. It might…


Simple ACA dumper

Quick one today – if you have an ACA with some files in it, you can use the createaca tool (provided as part of the Jumpstart Kit) to list the files inside it. Trouble is that the output is not very helpful; it contains too much information. So here is a simple JScript file you…


Helpful Tracing Routines

Last time we looked at conditional compilation, and how using it with HDiSim could aid with interactive debugging of runtime exceptions. But as useful as interactive debugging is, there are three major cases where it is impractical or impossible: When the bug is timing related, and using a debugger masks the bug; or Reproducing the…


Using Conditional Compilation in HDi

One of the cardinal rules for developing HD DVD applications is, “let no exception go unhandled.” The reason for this is simple – if you fail to handle an exception, the player will kill your application and stop the disc. This leads many developers to wrap entire functions in try / catch blocks, which solves…



No, not the application.link API. A web link. Or two. Some of you may have noticed a new name on the HD DVD Forums of late: Amy Dullard. She also has a great blog that focuses on getting people up-and-running with HDi. Check it out at http://blogs.msdn.com/amyd. Another person you might recognise from the Forums,…


A Game of Chance that Pirates like to Play

Ahoy there me laddies! Yarrrr you better be readin’ this blog then matey, or you’ll be feelin’ the lick o’ the cat come nightfall! No, it’s not Talk Like a Pirate Day; it’s Let’s Post Another HDi Game Day. The other week I posted an HDi sample based of the old arcade game Space Invaders….


Coloured Blocks Advancing on a Moving Block

This blog would be titled Space Invaders, but I don’t own that trademark so I had to choose something a bit more generic. This is a preliminary post to show a very hacked up version of the popular game in HDi. Note that I hope to follow up with a more complete version at some…