• Deployment with IExpress: How to turn your MSI file into an EXE

    I have no problem with MSI file downloads. They are as simple as running an EXE. However, for reasons unknown, a lot of people don’t seem to like or understand downloading and running an MSI file; they feel more comfortable with EXEs. Visual Studio Setup projects turn your application into an MSI and a setup.exe…

  • How to determine programmatically whether your application and OS are 32 or 64-bit

    First of all, we must clear up a misconception. Some people want to programmatically determine whether the underlying processor in use is 32 or 64 bit. This is a misnomer, as modern Intel and AMD processors can and do run in both 32 and 64 bit modes, in addition there are considerations of cache width,…

  • How to determine programmatically if your processor has hyperthreading, SIMD and other processing capabilities with __cpuid

    One of the machine intrinsics in Visual Studio is the __cpuid function, which returns a 4-byte array containing various bit-wise information about the processor hardware capabilities. While all the gruesome details can be found on MSDN’s __cpuid, __cpuindex page, here is the basic principle:

  • Tutorial: A Modern Approach To Implementing High Score Tables in C++ using STL and Boost

    In this article I shall demonstrate a modern, object-oriented, re-usable technique to adding a local high score table to your C++ Windows games using STL and Boost. I shall use our SimpleTetris game of which this article is a follow-on. Please note that this is by no means an efficient implementation, it is designed to just…

  • Coding Challenge Postmortem And Analysis: Asteroids in 10 Hours

    If you missed the live blog then check out Coding Challenge: Write Asteroids in 10 hours or less for the background. Let us now take a retrospective look at the results. The latest version of the game and source code can be found here.

  • Coding Challenge: Write Asteroids in 10 hours or less

    Update 17-Jun-2012: Fixed some typos, the broken formatting in some of the code and the missing types after static_cast and dynamic_cast operators, and updated the code snippets to reflect two bug fixes. Update 18-Jun-2012: Wrote the final section regarding the implementation of shields and waves. The sun is shining brightly, it’s nice and warm outside…

  • Tetris Revisited: Bells & Whistles 1

    This is a follow-up from the 8-hour Tetris prototype article. Now we have a working game prototype, I shall walk you through how to make a series of basic improvements. The full source code is available below (see the original article for other dependencies you need to install to compile the code; the game is…

  • Coding Challenge Postmortem And Analysis: Tetris in 8 Hours

    You may have seen that yesterday I coded Tetris from scratch in 8 hours in C++ (source code and EXE links on that page). Today I shall reflect on the whys, the good and bad points and lessons learned.

  • Coding Challenge: Write Tetris In 8 Hours or Less

    UPDATE (next day): You can read the postmortem report here! Can I write the entire game of Tetris in 8 hours or less using my Simple2D wrapper library? Let’s find out. I’ll update this blog as I go!

  • Learn To Program 2: Ground Rules

    So you’ve decided you want to learn computer programming. That’s great! Now what? I’m not going to start teaching you to write programs in this article; instead I’m going to give pointers and topics for thought that apply equally to all beginning coders.

Design a site like this with WordPress.com
Get started