Category: Uncategorized

  • Datasheets that were lost to time

    Datasheets that were lost to time

    These are (old, outdated) technical documents that never made it to the internet. Presumably they’re still covered by patents or other intellectual property, and they’ll hopefully be released someday. Or maybe they’re lost forever, who knows. AMD datasheets AMD-751™ System Controller Data Sheet (order #21910) AMD Athlon™ System Bus Specification (order #21902) AMD Athlon™ Processor […]

  • Homebrew Pentium Motherboard

    Homebrew Pentium Motherboard

    I’ve been designing my own Pentium 1 motherboard. I originally wanted to connect a 386 or 486 to a modern FPGA and see if I could get DOS or Windows 3.1 to boot. However, CPUs from that era use “TTL” signaling (5v logic high). Modern FPGAs will literally break if you send 5v at them […]

  • Decoding the Extended Addressing Modes of the 68000

    Decoding the Extended Addressing Modes of the 68000

    I’ve been working on a disassembler for the Motorola 68000 family of microprocessors, which were popular in home computers in the 80s. A disassembler takes a binary blob of machine code and transliterates it into a more human readable text format. These are the actual steps your CPU is taking, however they’re just in human-readable […]

  • Porting a Linux driver to Arduino

    Porting a Linux driver to Arduino

    I’ve been porting a Linux driver to Arduino. Many old computers (late 80s, early 90s), especially Apple Macintosh computers, used a peripheral bus called SCSI to communicate between the motherboard and hard drive. The protocol is pretty simple, but there can be some high-speed activity, which was too fast for early CPUs to handle. So […]

  • OS Dev with QEMU, OVMF, and GDB on Windows

    OS Dev with QEMU, OVMF, and GDB on Windows

    According to The OSDev Wiki “Any recent version of QEMU with a recent version of OVMF will be sufficient to run a UEFI application“. Nice. How do we set this up on a Windows host? Download a QEMU Windows build from https://qemu.weilnetz.de/w64/ (direct link to the latest version as of the writing of this: https://qemu.weilnetz.de/w64/2020/qemu-w64-setup-20200814.exe […]

  • Difference between “dynamic-link library with exports” and “dynamic-link library” in Visual Studio

    Difference between “dynamic-link library with exports” and “dynamic-link library” in Visual Studio

    TL;DR: “with exports” means the project starts with some example exports added. You’ll need exports, so why not let it insert some boilerplate code for you? Less chance of typos. Use “dynamic-link library” instead of “dynamic-link library with exports” if you want to add ‘__declspec’ to things yourself. So you want to create a DLL […]

  • What will your MFC application look like?

    What will your MFC application look like?

    I just started hacking on an application using the Microsoft Foundation Class library. There are a lot of options in the “new project” wizard, but they don’t show you what any of the options mean. So here are some screenshots of the settings, and the result (this is mostly for my own future reference):

  • An Ancient Game Engine Time Capsule

    An Ancient Game Engine Time Capsule

    I stumbled across a 3-episode podcast (really 2 and a quarter because the second audio file is cut short) relating to an ancient 3D game graphics engine from 2008: http://egtpm.blogspot.com/2009/06/20080605egtpodcst-e3.html It’s interesting to hear these folks talking about the future features of their game engine. Little did they know dark times were waiting in the […]

  • A Quick Graph of Domain Names During the Great Coronavirus Panic of 2020

    A Quick Graph of Domain Names During the Great Coronavirus Panic of 2020

    This graph shows all .com domains registered since Feb 1st that start with the word “virus”: Interestingly enough it fairly closely matches Google Trends data:

  • To use our product, just create a config file in an obscure directory

    To use our product, just create a config file in an obscure directory

    I love Sublime Text, but I can feel the death by a thousand paper cuts beginning. After a product has been on the market for long enough, the people developing it tend to stop caring about the user experience. Today I wanted to stop Sublime Text from zooming in any time I accidentally held down […]