Research Stream: OS/2 1.0 Explorations

From DisNCord Community Wiki
Revision as of 21:14, 13 January 2023 by NCommander (talk | contribs)
Jump to navigation Jump to search


This needs to become an infobox:

Questions To Answer

These were questions I wrote down and asked before doing the stream to try and answer them, and my collected feelings over them.

What was OS/2 1.0 like to use?

Assuming you could get it to work, OS/2 1.0 was not a bad experience in and of itself. Even on an emulated 6Mhz 286 you could switch and load multiple applications at once, and it was quite easy to run Word and Multiplan side by side, while having WordPerect 4.2 present and accounted for. In short, period correct DOS applications (and even Windows 3.0) worked just fine.

The system requirements were extremely steep; at a minimum, Microsoft OS/2 seems need at least 512kb of conventional memory, and an additional 512kb of XM to run. It may actually require 640kb convention memory, but this wasn't tested, but that would be commonplace by the 90s, when Windows 3.0 came around, however, had the family mode API been more used, it could have provided a solid upgrade path over DOS 3.3 and MDOS 4, especially given it could use both the 80286's segmented protected mode, and the 80386's 32-bit segment size limits.

Furthermore, Program Switch/TSHELL is essentially just a more refined version of MDOS 4. Had MDOS4 and OS/2 been more successful, we may have seen a much more text UI based take on multitasking, than the one that was built around Presentation Manager/Program Manager. That said, DOS based multitasking programs like DESQview were pretty successful.

  • Was OS/2 a decent development platform?
  • What were the absolute minimum requirements to use OS/2 without Presentation Manager?
  • Is this an upgrade from DOS (especially Multiuser DOS 4)?
  • How does this compare to Xenix, or other PC Unix and Unix-likes of the time?
  • What problems were visible here that were only obvious with hindsight?

Interesting Timestamps

This is an incomplete list, please add as more are found:

Description

Findings

Exploring OS/2 1.0

As Microsoft (and likely IBM) strongly believed in dog-fooding, the goal is to create example environments representing what is known about how they used. Microsoft originally made OS/2's software development kit available to

Microsoft Developer on OS/2

Microsoft used OS/2 fairly extensively in-house as it was an early adopter of the 80286, and OS/2 was used to develop itself, and Windows NT, as well as several well known applications such as Word for Windows. In effect, OS/2 is a fairly solid development platform, and provides a lot more flexibility and customization than DOS of the era.

The goal is to create an example VM with the following components

  • Microsoft OS/2 1.0 running on a 80286
  • Microsoft Word
  • Microsoft Multiplan
  • Microsoft C Programmers Workbench
  • OS/2 SDK 1.0

I would have included a mail client, but there doesn't appear to be any good preserved period correct ones.

Internally, among other things, Microsoft used the M editor, originally for DOS, with an OS/2 port being made as SDKED, which is important since OS/2 1.0 doesn't ship with an editor. SDKED should be on the SDK, but even a DOS copy of MEP should be used if needed.

For good measure of the following third-party applications. These should be 8088 based, and period correct from 1985-1988ish.

  • WordStar for DOS
  • Rogue

IBM Powered Business

While Microsoft saw OS/2 as the future, IBM wanted it as a more advanced operating system for the 286. While IBM intended it for use on their own line of PCs, they did sell Extended Edition to partners that included two, and then three major apps.

  • IBM SQL Server (which is used as the basis for non-mainframe DB2 today)
  • Communication Manager, for interfacing with other IBM machines
  • LAN Server, which was a NetBIOS server, and domain master - It wasn't in 1.0, but check when it was added.

By and large, OS/2 was a very threadbare environment, with the most advanced built in app being the E editor, and very few third party applications. OS/2 had very high system requirements for that time period, and while it needs to be backed with research, it stands to reason that IBM was mostly catering to very high end power users, as well the small and middle business groups who were on the IBM PC already.

Things To Test

Here's some various bits to test:

  • Absolute minimum hardware configurations
  • DOS/Backwards Compatibility
  • Windows 1, 2, and/or 3.x Compatibility

Stream Questions and Answers Notes

To be cleaned up a bit (and probably need to add wiki box)


-- Things Discovered:
Windows 1.0 didn't work doesn't work under OS/2 1.0 DOS Box, but WIndows 3.x does

MS C 5.1 talked about creating a patch for IBMBIO (DOS specific file), using patch, with following notes
 - Hex Offset 1432
 - 1A -> 1C

End result broke the system entirely, might have not done it correct.

(Original comments)
 - OS/2 Patch in MSC4 talks about booting from floppy
 - OS/2 patch patches IBMDOS.COM?!

Microsoft Link/2 - 1987 Copyright

Microsoft included branded linker for OS/2; might work with DOS compiler than understands segments.

IOPL is set the YES natively on OS/2 1.0 on MSFT/IBM

CONFIG.SYS is drastically different between IBM/MSFT

Installer is drastically different from IBM/MSFT

Dates:
Microsoft OS/2 Unbranded - 12-15-1987
Tandy OEM - 4-11-88

Windows 3.0 SETUP.EXE has a family mode binary?

86Box seems to have problems with IBM 286 - worked with NEC BIOS - but unclear as to why

IBM/Microsoft Differences
 - Installer Drastically Different
 - IBM version starts to Progream Selector/MS version starts to command line

12 OS/2 Program Limit - Base Memory

Alt-Esc on OS/2 1.0 was the equivelent of Alt-Tab

DOS program is suspended when out of focus

IBM C/2 programming language (probably related to CSet/2)

Database Manager is exceptionally slow ...

DM requires exceptional amount of memory

Was the multitasking in IBM OS/2 exceptionally slow?

512 kb of XMS is the actual limit of how low it can go ...

---

Follow up stream topics:
DESQView
TOPView
- IBM PS/2 Memory SIMMS