======================
== fabulous.systems ==
======================
Welcome to the world of fabulous.systems

The Making of the MS-DOS Command Reference Bot

#retrocomputing #msdos #mastodon #fediverse

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...

Connecting MS-DOS 6.22 to the internet — and the fediverse

#retrocomputing #msdos #mastodon #fediverse

Microsoft released the last standalone version of MS-DOS as MS-DOS 6.22 in 1994.

Even though this operating system is decades old and a true relic of the past, people still develop new software for it. Thanks to a couple of modern tools, we can connect MS-DOS to the internet. Since just having a connection to the outside world itself is pretty boring, we connect MS-DOS 6.22 to something fairly modern and amazing: the fediverse.

Let’s have a look.

Read more...

Smashing the limits: Installing Windows XP in DOSBox-X

#retrocomputing #windows #preservation #emulation #operatingsystems

In my previous article, I described how I managed to install Windows 2000 in DOSBox-X.

Even though this experiment was successful, I was not really with the results. While I got Windows 2000 working, I didn’t want to stop there. The final goal for the project was to get Windows XP running instead. However, after multiple attempts I gave up, thinking that Windows XP was impossible to use.

Well - I was wrong. But let’s start at the beginning.

Read more...

Breaking the limits: Installing Windows 2000 in DOSBox-X

#retrocomputing #windows #preservation #emulation #operatingsystems

DOSBox was one of the first emulators I used when I learned about emulation back in the early 2000s. Originally developed with its own DOS implementation for running games and legacy applications in mind, newer forks like DOSBox-X and DOSBox Staging started to support “real” system emulation as well, providing similar functionality as PCem or 86Box.

While originally only targeting MS-DOS emulation, DOSBox-X provides official support for Windows 95 and Windows 98.

“Well,” I said to myself, “if they already support Windows 9x, I could try running Windows 2000 on it! It shouldn’t be that hard, right?!”

Read more...

Encounter wild Pokémon in your terminal!

#modern-stuff #sysops #linux #pokemon

A few days ago, I posted an image that showcased an ASCII art representation of a Raichu from the Alola region. This image appeared after logging into my server using SSH. Surprisingly, it sparked curiosity, and I received several inquiries about the magic behind it.

Let’s delve into the details.

Read more...

Meta is a danger to the fediverse and we have to be prepared

#modern-stuff #fediverse

Back in March 2023, we heard about Meta’s plans to join the fediverse for the first time after they confirmed that they are working on a Twitter-like alternative using the ActivityPub protocol. Codename: Project 92.

Great! Now we can connect with even more people using our familiar apps! But there’s a catch.

Read more...

Export your own followers from Mastodon using the API

#modern-stuff #mastodon #fediverse

With decentralization and federation in mind, Mastodon allows exporting a list of all the accounts you follow directly from within the GUI.

This function generates a CSV file you can later import to another server. This function is especially helpful if you want to create a backup of your data or if you don’t want to do a full migration (and lose your first account), but open up a second account instead.

Unfortunately, Mastodon doesn’t provide an option to export a list of your own followers. Well, at least not from within the GUI. But hey, we have an API to play with!

Read more...

Virtual archaeology: Recreating the very first PC I ever used

#retrocomputing #packardbell #preservation #hardware #emulation

There are some things in life you will remember forever. In case you are just like me, then the very first PC you ever used is most likely one of these things.

I still remember the specifications of the family computer 6-year-old me used in 1999, even though its mainboard died around 15 years ago.

It was a Packard Bell PC, powered by an Intel Pentium II @ 233MHz, 32 MB of RAM, a 20x CD-ROM-Drive (no DVD!), and a Matrox Mystique GPU.

I knew that the system was running Windows 95 with a custom OEM software bundle. For years, I thought that rebuilding the system with the original software was impossible. The recovery CD was long gone and there was no copy to be found on any archival site.

By pure luck, I recently found a copy of the original recovery CD for sale online - I simply had to get it. It turned out that trying to recreate the system on a virtual machine was quite an adventure involving a deep dive into the inner workings of the Packard Bell recovery process.

Read more...

Using qemu-guest-agent as interface between VMs and Proxmox host systems

#modern-stuff #sysops #linux #proxmox

Since virtual machines created with KVM/QEMU are not simple containers but quite isolated from the host’s environment, exchanging data and information between the host and the VMs can be a bit tricky. Therefore, QEMU offers a companion service called qemu-guest-agent for Linux guests. qemu-guest-agent acts as an interface between the VMs and the host system.

Some features like passing ACPI information for a clean guest shutdown are pretty well-known. However, did you know that you can even send commands to your VMs directly from your Proxmox host system?

Read more...

Restoring support for 16-bit applications in modern Windows versions

#retrocomputing #windows #preservation #operatingsystems

Windows has some pretty amazing backward compatibility. In many cases, you can run ancient 32-bit Win32 applications just fine on your current system.

However, there’s one issue: If you ever tried to run a 16-bit application from the Windows 3.x days, any 64-bit Windows version (starting from Windows XP) will refuse to run the application with an error message indicating that you should ask the vendor for a compatible version.

On the other hand, the modern 32-bit versions of Windows run these applications just fine.

Thanks to two amazing open-source projects, you can bring back 16-bit compatibility to the 64-bit Windows era.

Read more...
1 of 2 Next Page