Danny's Lab

Engineering the World

Getting Started with UI ('90s style)

Published on: Aug 16, 2018
Reading time: 1 minute

If you're interested in getting your feet wet in some old-school programming and really having a solid foundational understanding of how a lot of modern day UI software are built up, here's a few good resources...

First get started with DOS. You'll want either FreeDOS under an emulator like VirtualBox. Or if you're on a Mac, Boxer is a fantastically easy to use emulator.

Next you'll want a compiler. There are plenty available from the FreeDOS collection. However Borland Turbo C 2.01 is one of the simpler and easier to use ones. It was released as freeware many years ago.

David Brackeen has a great online resource for programming in C with 256-color VGA. PC graphics technology has changed quite a bit. There's been many technologies that have been worse and many that have been better than VGA. But VGA is probably one of the simplest to work with while providing more interesting color options.

Get familiar with drawing dots and lines. If you'd like a challenge, try to draw a circle. Once you've gotten the hang of that, Michael Abrash's Graphics Programming Black Book is a phenomenal reference for lots of real fundamental tips and tricks in graphics programming that are now lost behind frameworks.

Next, all you need is to support keyboard and mouse input and you'll have everything you need to develop your own GUI. It'd be a good idea to review event loops if you're not already familiar with them.

Have fun and good luck!