Archives
- April 2026
- March 2026
- February 2026
- January 2026
- December 2025
- November 2025
- October 2025
- September 2025
- August 2025
- July 2025
- June 2025
- May 2025
- April 2025
- March 2025
- February 2025
- January 2025
- December 2024
- November 2024
- October 2024
- September 2024
- August 2024
- July 2024
- June 2024
- May 2024
- April 2024
- March 2024
- February 2024
- January 2024
- October 2023
- September 2023
- August 2023
- July 2023
- June 2023
- May 2023
- April 2023
- March 2023
- January 2023
- December 2022
- November 2022
- October 2022
- September 2022
- July 2022
- June 2022
- May 2022
- April 2022
- March 2022
- February 2022
- January 2022
- December 2021
- November 2021
- October 2021
- September 2021
- August 2021
- July 2021
- June 2021
- May 2021
- April 2021
- March 2021
- February 2021
- January 2021
- December 2020
- November 2020
- October 2020
- September 2020
- August 2020
- July 2020
- June 2020
- May 2020
- April 2020
- March 2020
- February 2020
- January 2020
- December 2019
- November 2019
- October 2019
- September 2019
- August 2019
- July 2019
- June 2019
- May 2019
- April 2019
- March 2019
- February 2019
- January 2019
- December 2018
- November 2018
- October 2018
- August 2018
- July 2018
- June 2018
- May 2018
- April 2018
- March 2018
- February 2018
- January 2018
- December 2017
- November 2017
- October 2017
- August 2017
- July 2017
- June 2017
- May 2017
- April 2017
- March 2017
- February 2017
- January 2017
- December 2016
- November 2016
- October 2016
- September 2016
- August 2016
- July 2016
- June 2016
- May 2016
- April 2016
- March 2016
- February 2016
- January 2016
- December 2015
- November 2015
- October 2015
- September 2015
- August 2015
- July 2015
- June 2015
- May 2015
- April 2015
- March 2015
- February 2015
- January 2015
- December 2014
- November 2014
- October 2014
- September 2014
- August 2014
- July 2014
- June 2014
- May 2014
- April 2014
- March 2014
- February 2014
- January 2014
- December 2013
- November 2013
- October 2013
- September 2013
- August 2013
- July 2013
- June 2013
- May 2013
- April 2013
- March 2013
- February 2013
- January 2013
- December 2012
- November 2012
- October 2012
- September 2012
- August 2012
- July 2012
- June 2012
- May 2012
- April 2012
- March 2012
- February 2012
- January 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
- July 2011
- June 2011
- May 2011
- April 2011
- March 2011
- January 2011
- November 2010
- October 2010
- August 2010
- July 2010
Category Archives: LSOED
Learn Something Old Every Day, Part X: The VGA Attribute Controller Is Weird
A few days ago I finally swatted a VGA emulation bug that I had known about for several years, but couldn’t identify until recently. The problem affected only Windows 3.1 running in Standard mode. It did not occur in Windows … Continue reading
Posted in Bugs, LSOED, PC hardware, VGA
9 Comments
Learn Something Old Every Day, Part IX: AHA-154xB and ASPI4DOS.SYS
The other day I had a pressing “need” to examine the behavior of Adaptec 154x and compatible SCSI HBAs and their DOS drivers. I found the hard way that the AHA-154xB does not work with Adaptec’s last DOS drivers from … Continue reading
Learn Something Old Every Day, Part VIII: RTFM
In my quest to understand the intricacies of x87 behavior and especially floating-point exceptions, I pulled out my trusty old Alaris Cougar board. The system board had a 100 MHz Intel OverDrive 486 DX4 plugged in and worked quite well. … Continue reading
Posted in 486, Documentation, Intel, LSOED, PC hardware, x87
9 Comments
Learn Something Old Every Day, Part VII: 8087 Intricacies
The other day I investigated a report that a C runtime library modification causes programs to hang on a classic IBM 5150 PC with no math coprocessor. The runtime originally contained two separate routines, one to detect the presence of … Continue reading
Posted in 8086/8088, Development, IBM, Intel, LSOED, PC history, x87
11 Comments
Learn Something Old Every Day, Part VI: Backward Buffer Overwrite
A few days ago I spent far too much time debugging a largish piece of 16-bit Windows code written in assembler. I found a scenario where (fortunately fairly reproducibly) Windows crashed because the internal state of a DLL got corrupted. … Continue reading
Posted in Bugs, Development, LSOED, Windows
24 Comments
Learn Something Old Every Day, Part V: Early IBM PS/2 Hard Disks
So I have been (again) trying to properly archive old MS OS/2 SDKs. The version 1.02 SDK from December 1987 (corresponding to OS/2 1.0) turned out to be a bit of a poser. The SDK came on both 3.5″ and … Continue reading
Posted in ESDI, IBM, LSOED, PC history, PS/2
18 Comments
Learn Something Old Every Day, Part IV: Ctrl+Scroll Lock is Ctrl+Break
The other day I tried running NSNIPES, a multiplayer networked game that came with old versions of NetWare. The game worked fine, but I couldn’t get out of it. Esc did nothing, any “usual” combinations like Alt+X, Alt+Q or similar … Continue reading
Posted in LSOED, NetWare, PC architecture, PC history
3 Comments
Learn Something Old Every Day, Part III: Why MASM Behaves Oddly
As part of a hobby project, I set out to reconstruct assembly source code that should be built with an old version of MASM and exactly match an existing old binary. In the process I learned how old MASM versions … Continue reading
Posted in Assembler, Development, LSOED, Microsoft, PC history
11 Comments
Learn Something Old Every Day, Part II: ST-506 Drives Need Correct Jumpers
The ultimate reason why I pulled out the old Seagate ST-225 drive was because I wanted to try connecting it to the Western Digital WD1003-IWH board that I recently acquired. The WD1003-IWH is a curious evolutionary half-step between ST506 interface … Continue reading
Posted in IDE, LSOED, PC hardware, PC history, Storage
11 Comments
Learn Something Old Every Day, Part I: ST-506 Drives Have Programmable Step Rate
More or less by accident I found myself writing a very basic DOS utility to read data off of an IDE drive. It started out by just issuing the IDENTIFY DRIVE command and capturing the data, but adding the ability … Continue reading
Posted in Documentation, LSOED, PC hardware, PC history, Seagate, Storage
4 Comments