Low-Res EGA Graphics Demo for DOS

I put together a little demo of DOS EGA graphics in the low-resolution 640x200 mode. It's a "playable" game of bouncing balls, where the player controls one ball that can kind of move. Check out the video:

If you want to try it yourself, or check out the source code, here's a ZIP with everything as it was in the video: Note that you'll have to run the executable in DOSBox or actual DOS, and that the EGAVGA.BGI file included in the ZIP needs to be in the same directory. This file is some kind of Turbo-C++ specific graphics driver... BGI perhaps standing for "Borland Graphics Interface" or similar.

A Return to Form

New for 2018... it's 2013!! I'm taking a page out of my own old playbook, and setting the clock back half a decade. This is a return to that fresh out of university and ready to take on the world feeling!

I'm bringing back the nasty old green/black/blue/gray/white colorscheme that I've always desperately loved. It's loud and amateurish looking, but also bold. The colors are inspired by the bright tones of a beautiful late summer's day on the road.

This year I'm committing to being my truest self. I'm bringing back the reckless courage I used to be so proud of, and breaking the shackles of shyness that have in the last few years held me back.

So begins the s u m m e r o f k r a k. AWOOOOOOOO!

Fell in Love With a Girl

It's always a struggle trying to produce music by yourself. My latest project was a cover of "Fell in Love With a Girl" by The White Stripes. You can check it out on YouTube.

Most White Stripes songs are essentially three tracks: vocals, guitar, and drums. That simplicity made it the perfect song to get back into recording with. This was the first time I would be using my new old Gibson SG. In fact, the entire setup was completely different than last time with The Middle.

To get a better drum track than last time, I sequenced every hit myself in Reaper. The sequence is extremely plain, though, featuring only one interesting fill in the entire short song. Next time I'm hoping to have real percussion.

I wanted to get a more old-school sounding crunch with the distortion on this song, so I used both the SD-1 and DS-1 at the same time.

The actual recording was done via direct XLR connection from the preamp output of the Ampeg head. Given the chance to do it again, I think I would record a blend of the live speaker sound on mic and the direct connection to get some of the natural reverb of my small studio room. Altogether, though, the guitar sound is on point.

Finally Fixing that One Little Thing

Way back in 2015 I low-sided my Honda. The damage was minor enough that I fixed everything myself, except for a tiny gap between the cowl and dash surround that wouldn't close up. I could press on the cowl, and it would kind of snap together...but a few miles down the road it would pop apart.

Fixing that little gap means removing the dash surround... no big deal, you just need to remove the windshield and mirrors, and the fairings around the headlight. Of course, those fairings don't come off without removing the ones bridging the tank and dashboard... and those don't come off without removing the entire side fairings and turn signals.

With the whole machine apart, it was just a matter of bending the tube structure the cowl sits on with a screwdriver about a quarter of an inch. It took an hour to get to the point where I could do the actual one minute job I set out to do.

The End of Krakchat

After an amazing five year run, it's finally time to close Krakchat.

It's kind of unbelievable that it lasted as long as it did. The mythical "krakchat2," which seemed to be in development and Coming Soon™ for ages has now been out a year longer than the original chat lasted. KC2 introduced MySQL as a database, to replace the completely unreliable and broken sqlite3 implementation. It also introduced a chat API with crude JSON interfaces, replacing even more crude query parameters. Some may even remember the earliest KC, in which everybody was just an IP address and couldn't set their username at all.

At its heart, Krakchat was always just a science project. I wrote it in college in an attempt to learn about AJAX/XHR and web development best practices. Along with Kraknet, it helped me to get my first real job in software development.