Research Stream: Examining Presentation Manager: Difference between revisions

From DisNCord Community Wiki
Jump to navigation Jump to search
Line 52: Line 52:
=== Is Presentation Manager an upgrade over the TSHELL interface? ===
=== Is Presentation Manager an upgrade over the TSHELL interface? ===
[[File:OS2 Performing Switching and Multitasking.png|thumb|OS/2 1.0 with TSHELL]]
[[File:OS2 Performing Switching and Multitasking.png|thumb|OS/2 1.0 with TSHELL]]
At least with OS/2 1.1 and 1.2, Presentation Manager is a quesitonable at best upgrade. By and large, its slow and bloated, especially compared to Windows of the era, and other graphical interfaces. This, in and of itself, might not have been a big issue, but due to the problems with console applications mandating the use of full screen UIs, general slowdowns, and more, by and large, Presentation Manager appears to be a strict downgrade over both OS/2 1.0, and Windows of this era. While Presentation Manager got better, it was too little, too late.


=== What are the minimum requirements for running Presentation Manager ===
=== What are the minimum requirements for running Presentation Manager ===

Revision as of 17:08, 14 February 2023


Research Stream
Presentation Manager
VoD LinkRESEARCH STREAM: Examining The Early OS/2 GUI - Presentation Manager
Streamed OnJanuary 29th, 2023
Streamed byNCommander
Stream typeEmulated on 86Box

Description

The goal in this stream is to understand the impact of Presentation Manager on OS/2. Up until Windows 3.1, it was still pretty common to load Exit back into DOS, but there's no way to exit Presentation Manager; it was the intended way to use the system. So what did you get out of the box, how it did evolve, and more?

Rationale

This section describes why certain choices were made for a given stream and more.

Use of Extended Edition

Extended Edition was IBM's special version of OS/2 and was not directly sold to customers. Instead, Extended Edition was available to existing IBM corporate customers, and included additional line of business applications that weren't included out of the box. During the 16-bit era, these applications were

  • Database Manager and Query Manager
  • Communication Manager
  • LAN Server and LAN Requester

While this project mostly deals with OS/2 as a whole, very little software has survived into 2023 for the early 16-bit versions of OS/2. As such, using Extended Edition at least provides additional applications and functionality, so we may get a better idea of how OS/2 was marketed and used, something we'll explore more with Hello World applications and system development.

Sidekick

Borland Sidekick was a very popular TSR for handling data, and it was also one of the first available Presentation Manager applications.[1] The direct comparison allows to show how the GUI did or didn't improve things ...

Console Multitasker

This would have probably been the main use for early Presentation Manager, since there were very few native graphical applications at the time period, although I won't be surprised if some developers used TSHELL or the like to make do with less capable hardware.

Questions Asked and Answered

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

How is Presentation Manager at handling running multiple console sessions at once?

OS/2 showing multiple instances of CMD.EXE in use

This question was asked originally during the drafting stages. Throughout OS/2's lifespan, there was very little in terms of native applications, nor were many applets included out of the box. Realistically, the most you got was the E Text Editor in OS/2 1.2 and later as a graphical application, and some settings applications.

That mean, by and large, the biggest "value" of Presentation Manager was to be able to do multiple overlapping windows. This in and of itself already has some value. For example, X Windows, both then and now, is commonly used to simply manage multiple terminal emulators. The default configuration for many X environments when running xinit/startx is to load up 2-3 xterms, which in and of itself is a major upgrade over simply working on the console on UNIX/Linux.

On a high resolution display, Presentation Manager would not be dissimilar from Windows 2.x's DOS Executive, Windows 3.x Program Manager, or even graphical UNIX systems of this era. However, by and large, you would have been exceptionally lucky to run OS/2 beyond 640x350 display resolution with the then new VGA standard. EGA, with a max resolution of 640x350 and, based off the written accounts I've found, it appears using OS/2 with at least CGA and EGA adapters was at least semi-common practice. OS/2 1.0 also supported MDA adapters, which were still semi-common in this time period.

One problem that was encountered is that certain OS/2 applications, including E.EXE, require the use of full screen mode, and can not run in a console window. It's not certain as to why it is, although this limitation can be patched out as described on the OS/2 Museum[2], and likely deals with the specifics of the Vdu API.

Is Presentation Manager an upgrade over the TSHELL interface?

OS/2 1.0 with TSHELL

At least with OS/2 1.1 and 1.2, Presentation Manager is a quesitonable at best upgrade. By and large, its slow and bloated, especially compared to Windows of the era, and other graphical interfaces. This, in and of itself, might not have been a big issue, but due to the problems with console applications mandating the use of full screen UIs, general slowdowns, and more, by and large, Presentation Manager appears to be a strict downgrade over both OS/2 1.0, and Windows of this era. While Presentation Manager got better, it was too little, too late.

What are the minimum requirements for running Presentation Manager

How does Windows 2.x compare Presentation Manager in OS/2 1.1?

How does the Windows 2.x development environment differ from Presentation Manager?

How does Borland Sidekick compare between DOS and Windows?

Interesting Timestamps

Findings

Presentation Manager on OS/2 1.1

OS/2 1.1 with a few applications installed

During the original livestream, I used OS/2 1.1 and 1.2 pretty extensive on air. OS/2 1.1 is in many ways closer to a public beta than it is to an actual retail product. While it is theatrically possible to run Presentation Manager within 2.5 MiB of memory, which is the actual documented minimums, it cases so much thrashing (due to disk paging) that the system is practical unusable. This is a long departure from the relative simplicity and performance of the TSHELL interface on OS/2 1.0.

The problem is that Presentation Manager (and the underlying Graphics Precision Interface or GPI), was both bloated, and extremely unoptimized in this initial release of OS/2, which was further compounded by the fact that the ability to quit to a command line was either removed, or never implemented. That meant, even if you didn't need graphical applications such as running a text editor and/or C compiler, you still had to deal with the performance overhead imposed by Presentation Manager. Considering that OS/2 1.0 was usable in 512kb of extended memory, the value to cost ratio is, at best, misplaced.

Console Applications under Presentation Manager

The E editor editing CONFIG.SYS on OS/2 1.1. Note that out of box, it must run in full screen mode

By and large, support for console applications on OS/2 was/is fairly terrible. The E editor, which is the only OS/2 native editor included in the box only runs "full screen", it can't run in a console window. This is also true of MEP, or the M editor, which is what Microsoft provided on the SDK, and was also available for some versions of Windows NT.[3] This isn't a limitations of OS/2 in and of itself; it is possible for 'graphical' console applications, like the Word for OS/2 setup manager to run without a problem. This is likely similar to how binaries for Windows 1.x/2.x must be marked for 3.x and later.

That meant that you couldn't even take full advantage of overlapping windows, you would have to press Ctrl-Esc to bring up the task manager, and switch back and forth, which could also change screen resolution. It's difficult to experience this accurately in emulation, but on the whole, this feels considerably slower, and clunker than the original TSHELL that was in OS/2 1.0. In addition, as a note going forward, IBM never fully cleaned up the console API. Even until the final version, it was essentially unchanged from OS/2 1.0, and never got a 32-bit interface except in the ill fated PowerPC port.

OS/2 1.2 - The Feature Complete Release

OS/2 1.3 - The Bugfixed and Actually Usable Release

Gallery

Presentation Manager

Stream Plan

This is likely going to be divided into parts to determine the full context of what's going on

Part 1

  • Install OS/2 1.1 Extended Edition
  • Try Word as OS/2 console application
  • Try out Sidekick for OS/2
  • Multitask between Word and Presentation Manager
  • Upgrade to OS/2 1.2 Extended Edition
  • Look at GUIified EE applications

Part 2

  • Install Sidekick for DOS
  • Install WordPerfect for DOS
  • Install Microsoft C for DOS and OS/2
  • Install Windows/286 2.x
  • Install Word for Windows/Excel for Windows
  • Compare Windows 2.x and PM 1.1
  • Compare Windows 3.x and PM 1.2
  • Do some Windows app development or the like (like compile example programs)

Stream Notes

E.EXE can only run as a full screen application

IBM OS/2 teachs you how to A

Tutorial program operates like IBM 3270 with function keys being defined on screen

Menu is called Action Bar?!

So Presentation Manager is improvement (in usability) over command line, but its very slow

Way to running multiple command line applications "nicer"

IBM's manuals have printing dates in date

Most of chat feels like this is an upgrade

IBM OS/2 1.2 - Has dual booting. Microsoft OS/2 1.0 has it. IBM 1.1 (and MSFT 1.1) does nto appear to ...

Tom Rune Berg noted OS/2 1.1 had tech demo feels

2 MiB of memory + 640kb was not enough

Trying with 4 MiB of memory ...

With 4 MiB of memory, pretty laggy/slowly

Entry Level systems with Model 30, 50, 60 was between 2-4k, Model 50 with MCA and non EDSI HDD was $4000

IBM OS/2 1.1 Extended Edition - Server components have some minor changes, namely color scheme; first version of LAN Requester, but needs Token Ring or PC Network Card

For the PS/2 I need:
- EEPROM Programmer
- Blank EEPROMs + Eraser
- Network Card (16-bit)

Disk copying much faster under Windows 286/2.1

Were the Microsoft OS/2 versions notably different in performance?

Emulating 10 Mhz 286, 287 and 2560 kb

What was the actual sales numbers for various OS/2 versions?

86Box Performacne seems unusually slow - confirm on real hardware

Was 286 Segmeneted Protected Mode responsible for slow UI performance of OS/2

Potentially benchmark PM?

Look at surviving DDKs

OS/2 1.2 Minimium Requirements 3 MiB/30 MiB disk space standard edition

Guess we're going to need to look at Microsoft OS/2 versions

Locked up on low disk space ...

Locked up again ...

Install on MS OS/2 1.3 done at 25Mhz for patience reasons ...