I have run x11 in 16-color and 256-color mode, but it was not fun. The palette would get swapped when changing windows, which was quite disorienting. Hardware that could do 16-bit color was common by the late 90s.
Fun thing - SGI specifically used 256 color mode a lot, to reduce memory usage even if you used 24bit outputs. So long as you used defaults of their Motif fork, everything you didn't specifically request to use more colors would use 256 color visuals which then were composited in hardware.
I remember noticing that a teacher in high school had used white-out to hide the marks for the correct multiple choice answer on final exam practice questions before copying them. Then she literally cut-and-pasted questions from the practice questions for the final. I did mediocre on the essay, but got the highest score in the class on the multiple choice questions, because I could see little black dots where the white out was used.
Camping is a viable strategy in many Quake levels, and it is problematic to the point that many servers will kill you if you stay in one place for too long.
If I were to write an OS for a system of that era, I think I would target a game console. Compatibility is a rabbit hole (as I discovered when writing a JIT for Ruby). If you don't have to worry about whether other software runs, there is a lot of room for creativity.
Risk was minimized with the use of segmented memory. A bad pointer would generally only clobber something in the same (data) segment of memory. But there were no segfaults; a program crash means a reboot, which is why so many people optimized config.sys abs autoexec.bat for fast boot.
Come to think of it, maybe things aren't so different today -- if something goes wrong in your container/vm, many teams just wipe it and start from a clean snapshot
I remember that book! I wanted to get a copy but made do with the DOS Programmer's Reference, 3rd ed., which was also very good since beej's interrupt list wasn't available yet or I didn't know about it.
I found a copy of the PC Game Programmer's Encyclopedia (PCGPE) back then but couldn't really wrap my head around most of the articles (especially the 3D stuff and Mode X).
KDE got better some ways, but I would really like to be able to write an applet without learning QML and everything that goes with it. The learning curve feels higher than when I wrote my first Android app.
I bind Alt+Shift+H to run "windowfocus left", which figures out which window is "to the left" based on some heuristics such as the direction between the center of the active window and the other windows on the screen. Since it works uses the center of the window, it works with overlapping windows (but intentionally excludes windows that are occluded).
I've used it in both xfce and kde (though not recently).
reply