DEV Community

Discussion on: Do you have fond memories of old codebases you no longer work on?

Collapse
 
phlash profile image
Phil Ashby • Edited

I do! One: a personal learning project that frankly I'm amazed ever ran. I wrote my own (completely useless) 16-bit kernel and bootloader for x86 PC. I might even upload to my github once I remember how to check it out of PVCS (anyone remember that?)

Two: A personal project to back up my MS-DOS machine, I wrote a device driver (for MS-DOS of course) for QIC-02 0.25" tape drive cards, and an implementation of GNU tar. This made it to the Simtel archive as my first open source release. My proudest moment was when I restored a backup from 1995 onto a Sun Solaris machine 12 years later :)

Three: Last one I promise: My paid work writing network drivers for Doom, Duke Nukem 3D, other IPX and DirectPlay games, partly MS-DOS TSRs, partly a Win95 VXD. This was while creating BT Wireplay (on line gaming service '95-'01), that had to support a multitude of network technologies used by games.

Collapse
 
antjanus profile image
Antonin J. (they/them)

Wow! What is it like to write drivers? I literally have no idea what driver code looks like or how it functions.

Also, kudos on DN3D and Doom drivers! I still play those games!

Collapse
 
phlash profile image
Phil Ashby • Edited

Writing device drivers mostly requires patience! When I was doing these, a separate machine to debug on, usually over a serial port as you are going to be crashing the target a lot. Nowadays a VM usually does the job with much less fuss.

If you are curious about my old MS-DOS driver code, here's the tape device written in C and ASM (isn't the Internet wonderful :)
cd.textfiles.com/simtel/stmsdos970...

For something more relevant and useful, take a look at a couple of Linux driver tutorials, this is a gentle one:
mulix.org/lectures/intro_to_linux_...

Have fun!