Buy My Book!
Games
Games (2)
Github
Other Posts
Recent Posts: This Could Be Better
Creating, Building, and Running a Simple Program in the Go Language
Creating a Hello World Program in .NET Core with Visual Studio Code
Creating a Template-Driven Component in Angular
Installing and Running Angular on Windows 10
Creating an ASP.NET MVC Application in Visual Studio
Running Linux in a Virtual Machine using QEMU on Windows
Creating an Ext4 Filesystem Image File
Compiling Java Packages and Subpackages from the Command Line
An Image Combiner in JavaScript
Hello World in TypeScript with Classes in a Web Browser
Archives
- March 2023 (1)
- February 2023 (4)
- November 2021 (1)
- October 2021 (2)
- September 2020 (1)
- June 2020 (1)
- November 2019 (1)
- July 2019 (1)
- April 2019 (1)
- March 2019 (1)
- February 2019 (1)
- December 2018 (1)
- October 2018 (2)
- September 2018 (2)
- August 2018 (1)
- March 2018 (1)
- February 2018 (3)
- January 2018 (4)
- December 2017 (2)
- November 2017 (3)
- October 2017 (3)
- September 2017 (2)
- August 2017 (3)
- July 2017 (6)
- June 2017 (5)
- May 2017 (1)
- March 2017 (3)
- February 2017 (7)
- January 2017 (3)
- December 2016 (2)
- November 2016 (1)
- October 2016 (6)
- August 2016 (6)
- July 2016 (1)
- May 2016 (11)
- April 2016 (1)
- March 2016 (2)
- February 2016 (3)
- November 2015 (5)
- October 2015 (3)
- September 2015 (6)
- August 2015 (4)
- June 2015 (2)
- April 2015 (5)
- March 2015 (7)
- February 2015 (3)
- January 2015 (3)
- November 2014 (1)
- October 2014 (4)
- September 2014 (2)
- August 2014 (2)
- July 2014 (2)
- June 2014 (7)
- April 2014 (9)
- February 2014 (5)
- December 2013 (3)
- November 2013 (2)
- October 2013 (5)
- September 2013 (2)
- August 2013 (9)
- July 2013 (3)
- June 2013 (5)
- May 2013 (2)
- April 2013 (11)
- March 2013 (7)
- February 2013 (8)
- January 2013 (15)
- December 2012 (7)
- May 2012 (5)
- March 2012 (1)
- February 2012 (2)
- January 2012 (1)
- September 2011 (2)
- August 2011 (5)
- July 2011 (1)
- June 2011 (4)
- March 2011 (14)
Meta
Monthly Archives: March 2011
Representing Rotations as Quaternions
Quaternions are mathematical constructs that can be used to rotate a geometrical point through a particular angle around a particular axis. They avoid many of the problems associated with performing rotations using Euler angles (yaw, pitch, roll), notably the phenomenon … Continue reading
Entering Protected Mode from x86 Assembly
Intel’s 8086 chip was in no small part responsible for launching the personal computer revolution, but its 20-bit address bus could only access one megabyte of memory, and only half of that was available to user programs. As programs got … Continue reading
Displaying Text in Assembly without Interrupts
The BIOS provides a lot of standard interrupt routines for writing text to the display, which is useful. But unfortunately, you can’t really call any of them from protected mode. Since most modern programs spend most of their time in … Continue reading
VGA Mode 13h in Assembly with Direct Memory Writes
Pushing pixels. Bit blitting. It’s way faster and way funner than using BIOS interrupt routines. If there is a finer way to spend a Sunday afternoon, I do not wish to hear about it. 1. Follow the steps in the … Continue reading
Using VGA Graphics in Assembly Language
Nowadays, most every computer’s BIOS implements a bunch of legacy VGA modes, which, if called from any modern operating system, will only cause a rude message to be displayed. Makes you think. 1. If necessary, download and install FASM and … Continue reading
Creating a Bootable Program in x86 Assembly Language
Booting the machine is the first step towards writing your own operating system. You’re the wind, baby. 1. Download and install the latest version of FASM (Flat Assembler), if you have not already done so. Details are given in a … Continue reading
HelloWorld in Assembly Language
If computers were mammals, assembly language would be the limbic system. Wait, that’s a terrible analogy. Never mind. 1. Download the latest version of FASM (“Flat Assembler”), by Tomasz Grysztar. As of this writing, FASM is available at http://flatassembler.net/. 2. … Continue reading
Creating a Class Library JAR from the Command Line
Putting class libraries in JAR files allows for code reuse, which is one of the fundamental principles of software engineering. If the code sucks, though, reusing it might be a bad thing. Hm, I just thought of that. 1. In … Continue reading
Compiling a C# Program from the Command Line
No one will ever actually do this, of course, but it’s nice to fantasize about when Visual Studio is being unreasonable about something. Which is frequently, am I right, fellas? 1. Download and install the latest version of the Microsoft … Continue reading
Using the Java3D Framework
Java3D is actually pretty easy to use, at least compared to OpenGL. Then again, it looks like Java3D hasn’t been updated in a couple of years, since the splash screen still has the Sun logo on it. Then again again, … Continue reading