Browsed by
Category: Programming

Bare Metal Gaming!

Bare Metal Gaming!

Inkbox decides everything in computing since sending man to the moon was a bad idea. Even operating systems and programming languages!

He sets out to write a complete clone of Zaxxon in assembly language with no operating system. He handles display, keyboard, mouse input, booting the system himself – and walks us through it all.

This kind of coding is exactly what got me into computer science as a kid. Watching demo scene videos and learning to program right to the display buffer with assembly was an era we don’t see much anymore. Still, I did get to make a graphics app that directly booted the display controller on recent hardware for an embedded platform (but that’s a story for another time).

How does it go? Awesome! Open Source Project on GitHub: https://github.com/InkboxSoftware/spacegamex64/

Programming without an OS

Programming without an OS

Inkbox decides to program without an OS. Back in the day, we used to do this by programming directly to the system or to BIOS with interrupts for things like disk, device, and display access.

Fast forward, and if you want to do this today, one doesn’t talk to BIOS – they need to program via UEFI services. Inkbox walks us through doing multi-core bare metal programming of the old game Zaxxon. It’s excellent work and fun walkthrough.

Compute! Type-in programs

Compute! Type-in programs

I got my start in programming with type-in BASIC programs. Back in the 80’s, almost every computer had BASIC built-in, but almost no kid could afford games. Or even get them – the nearest store that sold software from me was over 30 miles away. Mail order took 2-3 weeks. On top of that – kids are notoriously broke. What I did have was a library, and plenty of time.

Enter Compute! magazine. After ravenously devouring all the programming books our small Carnegie library had, I branched into magazines. BYTE was too news oriented and didn’t have type-in programs; though reading about the technology was fun. When I found Compute! – I was hooked. I eventually checked out just about every single magazine they had a dozen times over. I remember digging in the downstairs old issue stacks in search of any I might not have seen. I spent whole weekend afternoons typing the programs in – and then even more hours debugging each line to figure out where I’d gone wrong.

Nate Anderson recently wrote an article about those early days of type-in programs. Even more fun is the comments section full of people sharing their similar experiences.

With the internet and instantly available content and content development tools – it makes me wonder how the next generation’s engineers will develop. How will the instantly available world of free software and tools shape them compared to our generation of type-in programmers?

Thankfully, all these wonderful magazine scans have been saved in the Compute! Magazine Archive on the Internet Archive. I even sat down and typed one in (well – heavily utilized OCR as well!). What a blast.

Links:

Database Normalization

Database Normalization

I had forgotten the rules for the levels of database normalization. Not surprising since I last had the class over 20 years ago. Those problem sets immediately came back to me.

Imphobia demoscene magazine

Imphobia demoscene magazine

The 90’s were an amazing time to learn to code. Especially in Europe, hundreds and even thousands of people would gather for weekend-long, round-the-clock caffeine fueled coding sessions to flex their latest graphics programming tricks on Amigas, Commodores, PC’s, and other hardware.

Imphobia was the leading PC demoscene diskmag of the first half of the 1990s. Founded in 1992, it issued until 1996. In that period, 12 issues were released. 

Early issues of Imphobia run in DOSBox except issues 6 and beyond where the graphics are not displayed correctly, probably because of the use of an obscure video mode. Nevertheless it’s possible to read the articles. All Imphobia issues are available at scene.org and can be seen at Demozoo.