This was an especially interesting read, having lived through using these versions of OS/2 on varying hardware.
I think the unfortunate answer is that two if not three drivers are going to have to be written to support the differing generations. GRADD to satisfy Warp 4 (and 3 w/ FixPack) is probably the easiest and most useful.
The way I see it, if I want to have some Workplace Shell nostalgia, but with modern amenities, I'm ok being limited to at least Warp 3 + FixPack. OS/2 2.1 and 3 are hardly different. A few colors changed for the better, and you gain the application's icon instead of the circle. Warp 3 still has the floating launcher thing introduced in 2.
Having to track down all the FixPacks to make the system work on hardware even slightly newer than what was available when that OS/2 version first shipped is part of the nostalgia. Put a 28.8k modem simulator in there, and we can really party like it's 1994.
Along those lines, if I really want OS/2 version 2 nostalgia, how badly do I want modern amenities like high-res, high-depth graphics? Whereas for OS/2 version 3 or 4 nostalgia, I would like to experience what those might have been like on newer hardware.
Device drivers are the sanitary sewage systems of modern computing. They're a stinky mess to design, build, and maintain, but modern civilization/computing would be near collapse without them. They're also something the average person doesn't want to ever have to think about directly. Those who ensure it all works correctly aren't given enough credit for their essential role.
>"GRADD [display] drivers worked the other way around and
a basic driver did almost nothing except provide a dumb framebuffer and indirectly let SOFTDRAW do all the work.
An accelerated driver could hook out certain operations that hardware could do much faster than software, such as screen-to-screen copies, hardware cursors, or bit blits with color conversion. Anything the driver didn’t explicitly ask to handle was done by SOFTDRAW."
[...]
"To give a sense of the complexity of the drivers, the 16-bit VGA driver was over 5 MB of assembler code, heavily macro-ized. The 32-bit VGA driver was over 6 MB of assembler, again using lots of macros. The 32-bit accelerated driver was about 1.5 MB of assembler and 3.6 MB of C code.
In contrast, the accelerated S3 GRADD driver was a little over 200 KB of C code, and the generic unaccelerated GRADD driver was only 30 KB of C code!"
I've also lived through that era and used OS/2 extensively. Display drivers were always the weak point of the system.
At one point, after a very prolonged struggle, I managed to get 800x600 resolution working (standard was 640x480). The gigantic sense of achievement I felt at that moment hasn't been repeated in 30 years hence.
5 comments
[ 4.4 ms ] story [ 28.3 ms ] threadI think the unfortunate answer is that two if not three drivers are going to have to be written to support the differing generations. GRADD to satisfy Warp 4 (and 3 w/ FixPack) is probably the easiest and most useful.
The way I see it, if I want to have some Workplace Shell nostalgia, but with modern amenities, I'm ok being limited to at least Warp 3 + FixPack. OS/2 2.1 and 3 are hardly different. A few colors changed for the better, and you gain the application's icon instead of the circle. Warp 3 still has the floating launcher thing introduced in 2.
Having to track down all the FixPacks to make the system work on hardware even slightly newer than what was available when that OS/2 version first shipped is part of the nostalgia. Put a 28.8k modem simulator in there, and we can really party like it's 1994.
Along those lines, if I really want OS/2 version 2 nostalgia, how badly do I want modern amenities like high-res, high-depth graphics? Whereas for OS/2 version 3 or 4 nostalgia, I would like to experience what those might have been like on newer hardware.
a basic driver did almost nothing except provide a dumb framebuffer and indirectly let SOFTDRAW do all the work.
An accelerated driver could hook out certain operations that hardware could do much faster than software, such as screen-to-screen copies, hardware cursors, or bit blits with color conversion. Anything the driver didn’t explicitly ask to handle was done by SOFTDRAW."
[...]
"To give a sense of the complexity of the drivers, the 16-bit VGA driver was over 5 MB of assembler code, heavily macro-ized. The 32-bit VGA driver was over 6 MB of assembler, again using lots of macros. The 32-bit accelerated driver was about 1.5 MB of assembler and 3.6 MB of C code.
In contrast, the accelerated S3 GRADD driver was a little over 200 KB of C code, and the generic unaccelerated GRADD driver was only 30 KB of C code!"
At one point, after a very prolonged struggle, I managed to get 800x600 resolution working (standard was 640x480). The gigantic sense of achievement I felt at that moment hasn't been repeated in 30 years hence.
Newer software needs more than this.