Browsed by
Category: Programming

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.

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.

Reducing tree rendering bandwidth

Reducing tree rendering bandwidth

AMD researchers have published a VRAM-saving technique that leverages procedural generation techniques to eliminate the need for sending the GPU 3D geometry altogether. The GPU utilizes work graphs and mesh nodes to produce 3D-rendered trees on the fly at the LOD (Level of Detail) required for the current frame.

Instead of requiring massive amounts of geometry, the only thing transferred is the code needed to generate the trees in the scene – code that is only a few kilobytes instead of megabytes or even gigabytes.

Read the paper here.

Another article here.