The Making of the MS-DOS Command Reference Bot

  • I launched my Daily MS-DOS command bot a few months ago.

    The initial idea was straightforward: Pick a random command or program that ships with MS-DOS 6.22 and post a brief description.

    With a bit of help from some websites that archived the MS-DOS reference manual, I finished the initial revision of the JSON-based data file including all the comments with a short description in a matter of hours. I wrote a simple Bash script to pick a random command, fetch the description from the JSON file, and publish a post through the Mastodon API.

    Easy. But shortly after that, a question arose: “What about screenshots?”

    At first, I thought about going through every command in my data file, spinning up a VM, executing the command, taking a screenshot, and linking to it in the data file itself. While this approach is possible, it is tedious. There’s no real challenge in repeatedly typing in commands and trying to keep track of the screenshots I already took. Moreover, any change in the command list would require spinning up a VM, executing the command, taking a screenshot, and modifying the data file to include the modified screenshot.

    But what if I could do all of this dynamically by taking screenshots at the moment my MS-DOS VM is executing the command I requested?

    Read more...

  • Newly created posts will remain inaccessible for others until approved by a moderator.

    • :)
    • :(
    • ;)
    • :P
    • ^^
    • :D
    • ;(
    • X(
    • :*
    • :|
    • 8o
    • =O
    • <X
    • ||
    • :/
    • :S
    • X/
    • 8)
    • ?(
    • :huh:
    • :rolleyes:
    • :love:
    • 8|
    • :cursing:
    • :thumbdown:
    • :thumbup:
    • :sleeping:
    • :whistling:
    • :evil:
    • :saint:
    • <3
    • :!:
    • :?:
    The maximum number of attachments: 10
    Maximum file size: 2 MB
    Allowed extensions: bmp, gif, jpeg, jpg, pdf, png, txt, webp, zip

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!