RSSAmplifier

Blog

OS/2 Museum

OS/2, vintage PC computing, and random musings

os2museum.comRSS feed ↗20 posts

Latest posts

The End of an Athlon

When I was researching the mess related to strange and poorly documented CPUID bits in the Athlon MP and XP processors, I had to swap a lot of CPUs. This was uneventful in most cases but only most. When I Continue reading

Maximum Overkill

A reader pointed at the 1992 game Comanche: Maximum Overkill by NovaLogic as a possible unreal mode user since the original game release was known to be problematic. I examined the game and found no unreal mode usage, just a rather Continue reading

Win16 Memory Management

This is a kind of knowledge base article which resulted from attempts to understand exactly how memory management works in 16-bit Windows. It is not exactly undocumented, but it is also not well documented; even before Windows 3.0 appeared, the Continue reading

Learn Something Old Every Day, Part XXI: VGA Memory Access Is Complicated

Last week I had another run-in with VGA emulation, and like last time, the cause was very likely the generally woefully inadequate VGA documentation. The VGA is not, all things considered, a particularly complicated piece of hardware. It has no Continue reading

ICAT and Watcom

Some time ago I embarked on a minor retro development project related to this post. For convenience, I decided to do the development on a Windows host machine and (obviously) test in a VM. For C code compiling, and linking, Continue reading

When Networking Doesn’t Work

Last week I spent far too much time trying to get my Windows 11 machine to talk to an antique Tyan SMDC (Server Management Daughter Card) IPMI module over the network. At first, I tried Tyan s own old TSO (Tyan Continue reading

Learn Something Old Every Day, Part XX: 8087 Emulation on 8086 Systems

Not too long ago I had a need and an opportunity to re-acquaint myself with the mechanism used for software emulation of the 8087 FPU on 8086/8088 machines. As mentioned elsewhere, the 8086 CPU (1978) had a generic co-processor interface Continue reading

Learn Something Old Every Day, Part XIX: Athlon XP May Be Athlon MP

Quite a while ago, I acquired a dual-socket (Socket 462 aka Socket A) board for the Athlon MP, AMD s first entry into the multi-processor/multi-socket market. Over the course of several years, I spent quite some time searching for the board Continue reading

Mystery CPUID Bit

Yesterday I had the opportunity to test a recently acquired Athlon 1200 CPU (Thunderbird core, ceramic PGA package). I dreaded the first boot-up attempt because I have had rather bad experience with slightly newer Palomino and Thoroughbred OPGA processors a surprisingly Continue reading

Learn Something Old Every Day, Part XVIII: How Does FPU Detection Work?

This post ended up being much longer than originally intended because halfway into writing it, I found that 286 and later CPUs don t behave the way I had assumed they would While investigating a bug related to a program using Continue reading

Bitfield Pitfalls

Some time ago I ran into a bug that had been dormant for some time. The problem involved expressions where one of the operands is a bit-field. To demonstrate the problem, I will present a reduced example: #include stdio.h #include Continue reading

DOS Memory Management

The memory management in DOS is simple, but that simplicity may be deceptive. There are several rather interesting pitfalls that programming documentation often does not mention. DOS 1.x (1981) had no explicit memory management support. It was designed to run Continue reading

Cracking DXP and SXD

There are situations where software is available only in the form of a floppy image. This goes especially for historic hardware drivers and patches, which were often distributed only in the form of floppy images. This method was quite popular Continue reading

A 100 Year Old Consul Typewriter?

Spurred by a discussion about Polish keyboard layouts, I tried to find more about the history of Czech keyboard layouts. Unfortunately, finding actual documents turned out to be very difficult. What I did find is that prior to the current Continue reading

NetWare Pure IP on DOS

It is fair to say that Novell struggled with moving from the IPX protocol to TCP/IP. Of course a big part of the problem was that IPX worked extremely well on LANs and IP brought absolutely no advantages for basic Continue reading

Wait here. No, wait here!

While working on a hobby project, I set up an OS/2 MCP2 (Convenience Package 2 for OS/2 Warp 4) virtual machine with a debug kernel and an expectation that I d reboot the VM a lot. I was disturbed to find Continue reading

The OS/2 Display Driver Zoo

I have recently explored (again) the possibility of writing a high-res display driver for virtualized OS/2. But I ran (again) into a dizzying array of possible solutions, each with its own advantages and a good deal of drawbacks. OS/2 display Continue reading

Messy Mastering

Large companies like IBM, Microsoft, or Novell typically had a well defined process for releasing software on floppies. More often than not, files were not directly copied onto a physical floppy; instead, a tool was used to create an image Continue reading

8×19 Text Mode Font Origins

I was recently made aware of something that I had noticed before, but never paid much attention to. Consider this screenshot of a BIOS POST screen: VGA text modes usually use 720 400 resolution and 8 16 fonts (expanded to 9 16). The Continue reading

More than Two Hard Disks in DOS

Investigating the rather odd behavior of the Microsoft OS/2 1.21 disk driver led me to Compaq and their EXTDISK.SYS driver. While experimenting with various setups, I realized that DOS versions older than 5.0 do not support more than two hard Continue reading