OS/2 Wish List 1994: Difference between revisions

From OS2World.Com Wiki
Jump to navigation Jump to search
No edit summary
Jugbogdan (talk | contribs)
 
(44 intermediate revisions by 3 users not shown)
Line 1: Line 1:
OS/2 Wish List -- Last Updated: 94-01-22
OS/2 Wish List - Last Updated: 94-01-22


This is the OS/2 Wish List, compiled from OS/2 users worldwide from networks such as the Internet and Fidonet. This document hopefully represents the direction in which OS/2 users would like OS/2 to go and the tasks that must be accomplished to get OS/2 there.
This is the OS/2 Wish List, compiled from OS/2 users worldwide from networks such as the Internet and Fidonet. This document hopefully represents the direction in which OS/2 users would like OS/2 to go and the tasks that must be accomplished to get OS/2 there.


This list does not necessarily represent what OS/2 users want IBM to do, but what OS/2 users want done for OS/2 in general. Therefore, it could be a valuable source of information for commercial vendors and sharewares authors. I will maintain a list of any shareware authors working on a particular area so that people working on similar areas can get in touch with one another.
This list does not necessarily represent what OS/2 users want IBM to do, but what OS/2 users want done for OS/2 in general. Therefore, it could be a valuable source of information for commercial vendors and shareware authors. I will maintain a list of any shareware authors working on a particular area so that people working on similar areas can get in touch with one another.


PLEASE send this list everywhere you can!
PLEASE send this list everywhere you can!


To simplify the process of updating the wish list, each user who sends in an addition to the list will get their name added to the contributors section rather than to the wish they contributed to. This will also help keep the file size down as the list grows by only including each contributor once in the list. Also to simplify the process of updating the list, do not mail a message listing the items that you support. Although I really do enjoy it when people mail me saying that they really support certain parts of the list, it takes a lot of time to process each message. I would, however, like anyone who has questions or comments on a wish to mail me.
To simplify the process of updating the wish list, each user who sends in an addition to the list will get their name added to the contributors section rather than to the wish they contributed to. This will also help keep the file size down as the list grows by only including each contributor once in the list. Also to simplify the process of updating the list, do not mail a message listing the items that you support. Although I really do enjoy it when people mail me saying that they really support certain parts of the list, it takes a lot of time to process each message. I would, however, like anyone who has questions or comments on a wish to mail me.


To add your wish to the list, please mail to 'evanc@spatial.synapse.org' (Internet) or 'Evan Champion @ 1:163/590' (Fidonet). Please make sure that your full name and mailing address are in the message to make it easier for me to add your name to the contributors list. I try my best to pick up wishes from UseNet or FidoNet Echos, but I do not always read every message and as such might miss your wish - so to make sure it gets in, please send it in mail!
To add your wish to the list, please mail to 'evanc@spatial.synapse.org' (Internet) or 'Evan Champion @ 1:163/590' (Fidonet). Please make sure that your full name and mailing address are in the message to make it easier for me to add your name to the contributors list. I try my best to pick up wishes from UseNet or FidoNet Echos, but I do not always read every message and as such might miss your wish - so to make sure it gets in, please send it in mail!


Often one idea does not make sense without another, or would bring the most benefit with the introduction of another, and whenever this is the case I have indicated a wish to reference.
Often one idea does not make sense without another, or would bring the most benefit with the introduction of another, and whenever this is the case I have indicated a wish to reference.


It is understood that some of these options would increase the size of OS/2 astronomically, thus causing problems for OS/2's distribution. Whenever this is the case, the item should always be included on the CD-ROM distribution, and should be made available for media charges only for the floppy distribution.
It is understood that some of these options would increase the size of OS/2 astronomically, thus causing problems for OS/2's distribution. Whenever this is the case, the item should always be included on the CD-ROM distribution, and should be made available for media charges only for the floppy distribution.


Some of the items in this list represent major changes to OS/2 and specifically dictate the removal of old methods of doing things.  It is recommended that such changes be implemented as a two version process whenever possible - the first release would implement the addition and the next release would remove support for the old method.  This will allow the user the time between major releases (usually a year) to update their software and become familliar with the additions.
Some of the items in this list represent major changes to OS/2 and specifically dictate the removal of old methods of doing things.  It is recommended that such changes be implemented as a two version process whenever possible - the first release would implement the addition and the next release would remove support for the old method.  This will allow the user the time between major releases (usually a year) to update their software and become familiar with the additions.


I do not necessarily understand everything I add to the list, so if I misunderstood a request, please let me know!
I do not necessarily understand everything I add to the list, so if I misunderstood a request, please let me know!
----------------------------------------------------------------------------
The latest version of the list is always available from ftp.synapse.org in
/pub/wishlist and from 1:163/590 with the magic filename WISHLIST.
----------------------------------------------------------------------------
==TABLE OF CONTENTS==


0. ADDITIONS/CHANGES/DELETIONS
The latest version of the list is always available from ftp.synapse.org in /pub/wishlist and from 1:163/590 with the magic filename WISHLIST.
1.  THE KERNEL
 
2.  FILE SYSTEMS
3.  HANDLING DISKS
4.  DEVICE DRIVERS
5.  OS/2 AS AN INTERNATIONAL OPERATING SYSTEM
6.  PRESENTATION MANAGER
7.  TEXT APPLICATIONS
8.  WORKPLACE SHELL
9.  SHELLS
10.  MULTIMEDIA
11.  UTILITIES
12.  DOS
13.  WIN-OS/2
14.  REXX
15.  API SET CHANGES
16.  PRODUCTIVITY FOLDER
17.  INSTALLATION AND CONFIGURATION
18.  DOCUMENTATION
19.  PACKAGES
20.  CONFIG.SYS
21.  HELP SYSTEM
98.  OS/2 IN GENERAL
99. CONTRIBUTORS
----------------------------------------------------------------------------
==0.0  ADDITIONS/DELETIONS/CHANGES SINCE 94-01-15==
==0.0  ADDITIONS/DELETIONS/CHANGES SINCE 94-01-15==
This section contains references to all new sections and changed sections of the Wish List since it was last released. When a section is deleted, an explanation as to why is given. I am currently running the OS/2 2.1 ServicePak Beta, which may give different results than the OS/2 2.1 GA.


This section contains references to all new sections and changed sections of the Wish List since it was last released.  When a section is deleted, an explanation as to why is given. I am currently running the OS/2 2.1 ServicePak Beta, which may give different results than the OS/2 2.1 GA.
  CHANGED  2.4    FILE SYSTEM REQUIREMENTS (see 3.4)
 
CHANGED  3.1    DEVICE ALIASES
CHANGED  2.4    FILE SYSTEM REQUIREMENTS (see 3.4)
ADDITION 4.5    IMPROVED SUPPORT FOR PCMCIA
CHANGED  3.1    DEVICE ALIASES
CHANGED  5.1    UNICODE
ADDITION 4.5    IMPROVED SUPPORT FOR PCMCIA
ADDITION 5.7    SEPARATE TEXT FROM CODE
CHANGED  5.1    UNICODE
MOVED    6.2    MOVEMENT OF INFORMATION FROM THE OS2.INI TO THE FILESYSTEM
ADDITION 5.7    SEPARATE TEXT FROM CODE
                now 8.36
MOVED    6.2    MOVEMENT OF INFORMATION FROM THE OS2.INI TO THE FILESYSTEM
MOVED    6.5    COLOURFUL ICONS now 8.37
                now 8.36
ADDITION 6.27  32-BIT CONTAINERS
MOVED    6.5    COLOURFUL ICONS now 8.37
MOVED    6.9    BACKGROUND COLOUR ON ICON TEXT now 8.38
ADDITION 6.27  32-BIT CONTAINERS
MOVED    6.10  AUTOMATIC CONVERSION OF WINDOWS ICO FILES TO OS/2 ICONS now
MOVED    6.9    BACKGROUND COLOUR ON ICON TEXT now 8.38
                8.39
MOVED    6.10  AUTOMATIC CONVERSION OF WINDOWS ICO FILES TO OS/2 ICONS now
MOVED    6.11  ALLOW DIRECT MODIFICATION OF THE INI FILES WITHOUT COPYING
                8.39
                THEM now 8.40
MOVED    6.11  ALLOW DIRECT MODIFICATION OF THE INI FILES WITHOUT COPYING
ADDITION 6.23  ALT-TAB SHOULD WORK LIKE WINDOWS
                THEM now 8.40
ADDITION 6.24  HAVE PM NOT LOAD ON BOOT UP
ADDITION 6.23  ALT-TAB SHOULD WORK LIKE WINDOWS
ADDITION 6.25  EDIT CONTROL NOT CUA COMPLIANT
ADDITION 6.24  HAVE PM NOT LOAD ON BOOT UP
ADDITION 6.26  INCLUDE NEW ATM AND MORE FONTS
ADDITION 6.25  EDIT CONTROL NOT CUA COMPLIANT
CHANGED  8.3    SHADOWS SHOULD STAND OUT BETTER
ADDITION 6.26  INCLUDE NEW ATM AND MORE FONTS
CHANGED  8.10  DEFAULT VIEW OPTION IN OBJECT SETTINGS
CHANGED  8.3    SHADOWS SHOULD STAND OUT BETTER
MOVED    8.18  ASSOCIATE VIEW.EXE WITH INF FILES now 21.1
CHANGED  8.10  DEFAULT VIEW OPTION IN OBJECT SETTINGS
CHANGED  8.19  REDEFINE SCALING OF MOUSE SPEED, KEY REPEAT SETTINGS ETC.
MOVED    8.18  ASSOCIATE VIEW.EXE WITH INF FILES now 21.1
ADDITION 8.31  HOTKEYS
CHANGED  8.19  REDEFINE SCALING OF MOUSE SPEED, KEY REPEAT SETTINGS ETC.
ADDITION 8.32  A WAY TO USE THE PTR FILES CREATED WITH THE ICON EDITOR
ADDITION 8.31  HOTKEYS
ADDITION 8.33  MODIFY TREE VIEW TO ALLOW THE USER TO MORE SUB-LEVELS
ADDITION 8.32  A WAY TO USE THE PTR FILES CREATED WITH THE ICON EDITOR
ADDITION 8.34  SET THE DEFAULT START SIZE, POSISTION OF AN OBJECT
ADDITION 8.33  MODIFY TREE VIEW TO ALLOW THE USER TO MORE SUB-LEVELS
ADDITION 8.35  ABILITY TO TURN OFF ANY OF THE OPTIONS IN THE RIGHT MOUSE
ADDITION 8.34  SET THE DEFAULT START SIZE, POSISTION OF AN OBJECT
                BUTTON MENU
ADDITION 8.35  ABILITY TO TURN OFF ANY OF THE OPTIONS IN THE RIGHT MOUSE
ADDITION 8.36  CONFIG.SYS SETTINGS SUPPORTED BY WPS OBJECTS
                BUTTON MENU
ADDITION 8.41  EXPAND THE SYSTEM SOUNDS
ADDITION 8.36  CONFIG.SYS SETTINGS SUPPORTED BY WPS OBJECTS
DELETION 9.25  DELETE TO END OF LINE
ADDITION 8.41  EXPAND THE SYSTEM SOUNDS
  The shell should support a key combination to clear the current command
DELETION 9.25  DELETE TO END OF LINE
  The shell should support a key combination to clear the current command
   line to the end of the line.
   line to the end of the line.
 
   REASON:  CTRL-END does this right now
   REASON:  CTRL-END does this right now
ADDITION 9.26  MOVE SHOULD WORK ACROSS DEVICES
ADDITION 9.26  MOVE SHOULD WORK ACROSS DEVICES
ADDITION 11.15  FDISK SHOULD NOT REQUIRE A REBOOT
ADDITION 11.15  FDISK SHOULD NOT REQUIRE A REBOOT
ADDITION 11.16  ATTRIB FOR DIRECTORIES
ADDITION 11.16  ATTRIB FOR DIRECTORIES
ADDITION 11.17  MIGRATE UTILITY SHOULD REMEMBER WHAT IT HAS MIGRATED
ADDITION 11.17  MIGRATE UTILITY SHOULD REMEMBER WHAT IT HAS MIGRATED
CHANGE  13.1  WIN32S SUPPORT FOR WINOS/2
CHANGE  13.1  WIN32S SUPPORT FOR WINOS/2
ADDITION 13.3  ALLOW OS/2 FOR WINDOWS SUPPORT IN STANDARD OS/2
ADDITION 13.3  ALLOW OS/2 FOR WINDOWS SUPPORT IN STANDARD OS/2
ADDITION 13.4  SUPPORT WINDOWS FOR WORKGROUPS 3.11
ADDITION 13.4  SUPPORT WINDOWS FOR WORKGROUPS 3.11
ADDITION 16.3  UPDATE/REPLACE SOFTERM
ADDITION 16.3  UPDATE/REPLACE SOFTERM
CHANGED  17.1  A SIMPLE, ROCK SOLID INSTALL PROCESS
CHANGED  17.1  A SIMPLE, ROCK SOLID INSTALL PROCESS
CHANGED  17.3  COMMON INSTALL/UNINSTALL PROGRAM
CHANGED  17.3  COMMON INSTALL/UNINSTALL PROGRAM
CHANGED  17.5  PROGRESS INDICATORS
CHANGED  17.5  PROGRESS INDICATORS
ADDITION 17.7  NEAT TIPS, TRICKS AND OTHER INTERESTING INFORMATION
ADDITION 17.7  NEAT TIPS, TRICKS AND OTHER INTERESTING INFORMATION
ADDITION 18.4  DOCUMENT PRODUCTIVITY FOLDER
ADDITION 18.4  DOCUMENT PRODUCTIVITY FOLDER
CHANGE  19.4  USE THE CD-ROM VERSION OF OS/2 TO PROMOTE OS/2 SHAREWARE
CHANGE  19.4  USE THE CD-ROM VERSION OF OS/2 TO PROMOTE OS/2 SHAREWARE
CHANGE  20.4  GET RID OF THE CONFIG.SYS
CHANGE  20.4  GET RID OF THE CONFIG.SYS
ADDITION 20.8  SUPPORT FOR MULTIPLE CONFIGURATIONS
ADDITION 20.8  SUPPORT FOR MULTIPLE CONFIGURATIONS
ADDITION 21.0  NEW SECTION - HELP SYSTEM
ADDITION 21.0  NEW SECTION - HELP SYSTEM
ADDITION 21.2  SEARCH FEATURE SHOULD FIND PARTIAL MATCHES
ADDITION 21.2  SEARCH FEATURE SHOULD FIND PARTIAL MATCHES
ADDITION 21.3  ALLOW PM-STYLE COPY FROM VIEW.EXE
ADDITION 21.3  ALLOW PM-STYLE COPY FROM VIEW.EXE
ADDITION 21.4  ABILITY TO TURN INF FILES IN TO TEXT
ADDITION 21.4  ABILITY TO TURN INF FILES IN TO TEXT  
ADDITION 21.5  PRINTER-SELECT OPTION IN VIEW.EXE
ADDITION 21.5  PRINTER-SELECT OPTION IN VIEW.EXE
MOVED    98.13  KEYBOARD DEFINITION UTILITY now 5.6
MOVED    98.13  KEYBOARD DEFINITION UTILITY now 5.6
ADDITION 98.15  ENCOURAGE GROUP DESIGN
ADDITION 98.15  ENCOURAGE GROUP DESIGN
ADDITION 98.16  LOWER MEMORY REQUIREMENTS
ADDITION 98.16  LOWER MEMORY REQUIREMENTS
ADDITION 98.17  PUT THE WHOLE OPERATING SYSTEM IN \OS2
ADDITION 98.17  PUT THE WHOLE OPERATING SYSTEM IN \OS2
 
 
==1.0  THE KERNEL==
 
The OS/2 kernel is showing signs of age in relation to the new breed of
microkernels; listed below are proposed ways to improve it.
 
1.1  INCLUDE SMP SUPPORT
 
  Included with the base system should be the kernel support for handling
  SMP (symmetric multiprocessing).  It is understood that most users can not
  take advantage of SMP, however its inclusion would be a powerful weapon
  against those vendors who claim their operating system is superior because
  they support SMP.
 
1.2  MOVE THE INTEL VERSION TO THE IBM MICROKERNAL
 
  Of course, if you can't beat them, join them.  The portable OS/2 versions
  (ie: OS/2 for PowerPC) is already moving to the IBM Microkernel and by
  moving the Intel version to the Microkernel as well as keeping uniformity
  between versions of OS/2 for different architectures.  This would allow:
 
  - dynamic loading/unloading of device drivers
  - greater stability as device drivers run in user space and not kernel
    space
  - would provide architecture-independent device support as drivers
    interact with the kernel and not directly with the hardware.
  - would require less memory
  - faster boot off floppy as less has to be loaded at boot time (device
    drivers could be loaded as needed by an installation program that would
    search for supported devices)
 
==2.0  FILE SYSTEMS==
 
This section deals with all wishes directly related to changes and additions
to the OS/2 file systems.
 
2.1  UTILITY TO CONVERT BETWEEN FILE SYSTEMS
 
  It is very difficult to convince a user to format their FAT drive to install
  HPFS.  Therefore, a utility to convert between file system formats
  non-destructively should be provided.
 
2.2  INSTALLABLE FILE SYSTEMS FOR REMOVABLE DEVICES
 
  Installable file systems must be made available for removable devices,
  including floppies.  It is unacceptable for a user with optical disks to
  be forced to use FAT instead of a better file system (ie: HFPS)
 
2.3  LONG FILE NAME SUPPORT IN FAT
 
  Long file name support already exists in FAT, in the form of the .LONGNAME
  extended attribute.  All file system calls should rely on the .LONGNAME
  extended attribute instead of the 8.3 file name to provide transparent
  long filename support to the user.
 
2.4  FILE SYSTEM REQUIREMENTS (see 3.4)
 
  The needs of OS/2 users are constantly changing and the file systems need
  to move with them.  The following is a list of the new file system
  requirements.
 
  - access control lists (ACL) for file security
  - journalling
  - support extended attributes greater than 64K
  - support caches greater than 2 MB
  - support a maximum file system size in the terabyte range
  - 255 character disk labels
  - new file type (in addition to 'File' and 'Directory' called 'Abstract'
    to handle symbolic links (shadows) and imbedding objects in to the file
    system
  - file association in the file system
 
  Note: symbolic links must work across file filesystems and even across
  file systems of different types.
 
  Most of these requirements would probably require a new file system to
  support them.  Those that can be implemented in HPFS should be, and those
  that can not should be implemented in a new file system.
 
2.5  MAKE '/' AND '\' ACT THE SAME FOR CHANGING DIRECTORIES
 
  OS/2's API set should be changed to allow changing directories using
  either '/' or '\'.  This requires changing the command line switch
  delimiter to '-' from '/'.  It should be noted that except for IBM's
  software, most programs already use '-' instead as a command line switch
  delimiter.
 
  In addition, the OS/2 IFS definition specifically states that '/' and '\'
  should both be usable for changing directories.
 
2.6  STANDARD TAPE FILESYSTEM
 
  A standard tape-backup filesystem should be provided to allow sharing of
  information on tape between OS/2 configurations.  The filesystem should be
  designed to allow multiple backups on one tape and should allow the backup
  of any information stored on a disk filesystem, meaning support for long
  filenames, extended attributes, security, etc.
 
2.7  FILE SYSTEM-INDEPENDENT DISK COMPRESSION
 
  A file system-independent disk compression scheme should be provided with
  OS/2 to help offset the increased disk space requirements over DOS/Windows
  systems.
 
2.8  ADDITIONAL FILE SYSTEM SUPPORT
 
  OS/2 should ship with support for the following file systems:
  - NTFS
  - common UNIX disk formats
  - Macintosh
 
2.9  MAKE ALL FILES EXECUTABLE
 
  Any file should be executable, no matter what its extension.  The shell
  should first determine whether whatever the user asked it to open is
  actually an executable.  If it is, the program starts normally. If not,
  the file is assumed to be some sort of data file, and the operating system
  tries to find the creator (using the extended attributes) of the file and
  starts it, instructing the creator to open the file.  If it can't find the
  creator, it should return back an error message saying that the file was
  not executable and the file's creator could not be found.  The current
  rules for special file extensions should be removed as they are not
  appropriate for a free-form filename system.  Something like a REXX script
  or batch file that generally has no file type could be started as 'cmd
  rexxscript'. Typing just the name of a directory would change in to the
  directory.
 
2.10  UTILITY TO VIEW/SET EXTENDED ATTRIBUTES
 
  A utility should ship with OS/2 to allow the user to view and edit a
  file's extended attributes.  This would be particularly necessary if all
  files are considered executable, as the user may want to specially assign
  creators for files so they can be automatically opened, or to allow a REXX
  script or batch file to run without having to run 'cmd rexxscript'.
 
2.11  SECURE SYSTEM FILES
 
  Display a warning every time a system file (typically one in the \OS2
  directory) is going to be replaced by an application.  To implement this,
  a file holding the names of files that should not be changed without
  giving notice to the user could be used.
 
2.12  ALLOW OPTIONAL CACHING ON A DRIVE BASIS
 
  The user should be able to specify drives to cache (or not to cache).  For
  example, the user could ask for drives 'C:', 'D:' 'F:' to be cached, but
  not 'E:'.
 
==3.0  HANDLING DISKS==
 
Pretty well every OS/2 user agrees that calling disks 'A:', 'B:', 'C:' just
doesn't cut it.  Unfortunately, not everyone is agreed on how this problem
should be solved.  There are 2 opposing arguments, one for mounting drives
off of a root directory and the other for using the already present disk
labels as disk names.
 
3.1  DEVICE ALIASES (see 3.2, 3.3, 3.4)
 
  The user should be able to alias a directory to a disk name or a disk to
  another disk name, or a disk name to a directory.  This is to support
  wishes 3.2, 3.3 and 3.4.  This would be used in the case of wish 3.3 to
  alias '/' to 'C:', '/floppy' to 'A:'.  It would be used in the case of
  with 3.4 to alias device 'MYDISK:' to 'C:'.
 
3.2  DISK DEVICE NAMES (see 3.1)
 
  Instead of calling disks 'A:', 'B:', 'C:', etc, disk devices could be
  referenced internally as 'FDx:' for floppies and 'HDx:' for hard drives.
  This would allow an unlimited number of available partitions.  Device
  aliases could be created to alias back 'FDx' and 'HDx' to the DOS
  equivalents to allow older software to work while allowing those who have
  surpassed the 26 available drives to use their full capacity.
 
3.3  MOUNTING DRIVES INSTEAD OF HAVING DRIVE LETTERS (see 3.1)
 
  Drives would be mounted as directories off of the boot drive (for example,
  'D:' could be mounted as '\applications').  For programs that are not
  designed to handle such a system, the root drive would be aliased to 'C:'
  and the floppy drives would be aliased to 'A:' and 'B:'.
 
3.4  USING DISK LABELS INSTEAD OF DRIVE LETTERS (see 3.1)
 
  Disk labels, currently an unused feature of the file systems, could be
  used  as device aliases as well.  For example, if a disk label is
  'MYDISK', the drive could be accessed as 'MYDISK:'  This would make
  accessing disks much more intuitive.
 
  When used on a FAT or HPFS drive, the disk label could only be 11
  characters (as that is the current disk label size).  Any new file systems
  should support 255 characters and the APIs to support the new drive
  schemes should support 255 character labels.
 
  Disk labels should be allowed to contain any character usable in the file
  systems.
 
3.5  NEW BOOT SECTOR
 
  The current OS/2 boot sector (created by FORMAT/PMFORMAT) is next to
  useless. It displays a cryptic message that few people bother to even look
  up.  A new boot sector that just skips over the disk and continues the
  boot process if it can't boot OS/2 should be implemented.
 
3.6  BOOTING TAKES TOO LONG (see 1.2)
 
  Booting OS/2 off hard disk is a long process for many users, but loading
  off of floppy (for example, during the install process) is almost
  unbearable.  An unexperienced user could think that the computer has
  crashed while booting.  As a first step, a progress indicator should
  appear telling the user that something is happening.  To really solve the
  problem would require less to be loaded during the boot process (which
  would mean moving to the IBM Microkernel).  In addition, reducing the
  number of install disks from 2 to 1 would be a big improvement.
 
==4.0  DEVICE DRIVERS==
 
  Device drivers are at the heart of the operating system and yet they are
  often the one of the greatest sources of heartache for users.  The
  following is a list of wishes designed to fix that.
 
4.1  SUPPORT
 
  Without device driver support for devices the user can't use their
  investments and would likely rather stay in DOS than have to give up
  access to their hardware.  IBM must do everything possible to get third
  party vendors to write device drivers.  This includes a service for
  vendors to pay IBM to write the device drivers at a reasonable cost.
 
4.2  QUALITY
 
  Not all third party vendors give the same driver quality that we are used
  to IBM providing.  To solve this, IBM should have an independent lab to
  do device driver testing at low or no charge.  IBM should also set up a
  volunteer device driver testing corps based on Team OS/2 (maybe even using
  Team OS/2 members).  IBM could manage a database with each member's
  configuration and would make the database available to any manufacturer on
  request.  This solution would satisfy everyone: it is low cost for IBM to
  support and for vendors to use, provides the vendor with diverse system
  configurations and would help to provide the user the best quality
  drivers.
 
4.3  ALLOW DYNAMIC LOADING AND UNLOADING OF DEVICE DRIVERS (see 1.2)
 
  OS/2 should allow device drivers to load and unload as desired by the
  user.  This would be handled easiest by moving to the IBM Microkernel, but
  should be made available even if the current kernel is maintained.
 
4.4  SUPPORT FOR ALL SCSI STANDARD DEVICES
 
  OS/2 should provide drivers for all devices that are part of the SCSI
  standard devices, such as tapes, scanners, etc.  Each type of device would
  get one driver, much like the way SCSI-2 CD-ROMs are handled using the
  OS2CDROM.DMD.
 
4.5  IMPROVED SUPPORT FOR PCMCIA
 
  OS/2 currently only provides the "socket services" for PCMCIA devices and
  requires the PCMCIA card manufacturer to provide the other side of the
  socket, which few other than IBM provide.  OS/2 needs to provide
  full support for PCMCIA devices out-of-the-box.
 
==5.0  OS/2 AS AN INTERNATIONAL OPERATING SYSTEM==
 
  OS/2 is designed as an international operating system, to be used anywhere
  in the world along with other platforms.  Unfortunately, OS/2 in it's
  current state is far from being an international operating system; the
  following are wishes designed to solve this.
 
5.1  UNICODE
 
  Unicode support should be included in the base operating system.  This
  would also remove the need for a different double byte character set
  version of the operating system.
 
  Codepage emulation would be provided to support applications that are not
  Unicode-aware.
 
5.2  STANDARD DATE TIME AND NUMBER FORMATS (see 14.4, 15.1)
 
  The system date time and number formats (as defined in the Country object
  in the System Setup folder' should be used everywhere in the operating
  system.  Reading huge numbers like those returned by CHKDSK and DIR
  which are currently not broken up by the 1000s separator and ambiguous
  date formats are almost enough to drive the user insane.
 
  These formats should also be a lot less restricted.  The user should be
  able to build the formats any way they like.  This means the user should
  be allowed to do things like 'yyyy-mm-dd' (ISO date format), dd/mm-yy (old
  Swedish style) and even things like dd-mmm-yy to get a 3 character short
  form for the month.
 
5.3  SUPPORT FOR 8-BIT CODE PAGES FOR CYRILLIC AND GREEK
 
  OS/2 should have the same 8-bit code pagers for Cyrillic and Greek that is
  provided for IBM DOS.
 
5.4  SUPPORT OF ISO 8859.1 (ISO LATIN-1) CHARACTER SET
 
  OS/2 should support the ISO 8859.1 (also known as ISO Latin-1) character
  set, used in other operating systems such as UNIX.
 
5.5  SUPPORT FOR MORE THAN 2 CODEPAGES
 
  There must be support for more than 2 codepages.  As OS/2 becomes more
  widely used internationally people need to be able to exchange documents
  using different codepages simply.
 
5.6  KEYBOARD DEFINITION UTILITY
 
  The user should be able to define their keyboard as they desire instead of
  being restricted to the keyboard layouts defined by the Country setting.
 
5.7  SEPARATE TEXT FROM CODE
 
  As an example for other vendors, there should be no text imbedded in
  executable code.  All text used in the operating system should be placed
  in language files (*.msg).  This would, among other things, speed up the
  release times for the international OS/2's.
 
==6.0  PRESENTATION MANAGER==
 
This section contains wishes for anything related to the Presentation
Manager, including wishes for INI and icon files.
 
6.1  INI EDITOR
 
  An INI editor should be included as part of the base system.
 
6.2  MOVEMENT OF INFORMATION FROM THE OS2.INI TO THE FILE SYSTEM
 
  Icon information etc. should be moved from the INI files in to the file
  system in the form of extended attributes.  This will allow users to
  retain system settings even when replacing the operating system as all the
  necessary settings are kept along in the application's extended attributes
  which can be backed up, and would ensure that deleted application settings
  do not live on forever in the INI files as all settings would disappear
  along with the application.
 
6.3  MULTIPLE INPUT QUEUES
 
  Having PM grind to a halt because of a process holding the message queue
  for too long just isn't acceptable.  Every thread that uses the PM should
  be assigned its own, independent message queue to ensure that the user
  can always interact with the system, even if one application goes down.
 
6.4  CHANGING THE GRAPHICS DRIVER ON-THE-FLY
 
  Being able to change the graphics driver on the fly would be a big plus.
  This means that the system should not have to be rebooted to handle the
  new driver, and all video changes should take effect immediately.
 
6.6  RIGHT MOUSE BUTTON ACTION FOR PROGRAMS THAT DON'T USE IT
 
  The commands in the toolbar menu (at the top left corner of each window)
  as well as the menubar (in the case of PM application) should form a
  right mouse button pop-up menu for applications that do not explicitly
  support the right mouse button.
 
6.7  MOVEMENT OF OS/2 LOGO TO AFTER PM GETS STARTED
 
  Moving the OS/2 Logo to just after PM gets started (as the first thing
  that is shown on the screen) just makes more sense - the graphical
  environment is up and running and all the routines are there for showing
  bitmaps.  In addition, it would allow more colourful OS/2 bitmaps to be
  shown on start-up without pain.
 
6.8  OPTIONAL DISABLING OF MENU DROP DOWN ON RIGHT ALT KEY
 
  On many international keyboards, the right ALT key is used to type special
  characters such as brackets.  An accidental slip on the keyboard while
  doing an ALT key combination can cause a menu to drop down, and thus is a
  real annoyance.  For people using international keyboards, an option
  either the Country object or Keyboard object should determine whether only
  the left ALT key or both ALT keys should bring down menus.
 
6.11  USE FONTS LIKE DLLS
 
  A font should only be kept in memory as long as there is a program using
  the font; keeping fonts loaded forever is a waste of valuable system
  resources. After the last process to use a font is terminated, the font
  should be unloaded.
 
6.13  VECTOR ICONS
 
  Allow vector graphic files in addition to bitmaps and allow the icon to
  be scaled to a fixed size no matter what the resolution is.
 
6.15  ENHANCED TASK LIST
 
  There should be a 'Details' view of the task list, showing more
  information about a program - ie: priority, memory usage, idle time, CPU
  usage, process ID, parent ID, command line parameters, etc.  From here the
  user should also be able to change task priorities.
 
6.16  OPTIONAL 'KEYBOARD FOCUS FOLLOWS THE MOUSE SUPPORT'
 
  Optionally, the user should be able to enable X11-style 'keyboard follows
  the mouse pointer' support.  The active window and keyboard focus are
  changed as the mouse pointer moves from one window to another.  Note that
  the new active window is not brought to the surface, only the keyboard
  focus changes.
 
6.17  DISPLAY POSTSCRIPT
 
  PC's have become powerful enough to handle Display Postscript, and
  definitely the next generation of PC's - the PowerPC's - could handle
  display Postscript with no problems at all.  With fonts playing an
  increasingly important role, it is important for what is on the screen
  to look as much as possible as printed output.
 
6.18  ANIMATED CURSORS
 
  OS/2 should support animated cursors.  This means for the alarm clock
  cursor, the dial could spin, etc.
 
6.19  MINIMIZE BUTTON GOES FIRST TO TITLEBAR ONLY, THEN HIDDEN
 
  The minimize button could be (optionally) changed to first minimize down
  to the titlebar only and then another click on the minimize button would
  hide the window.  Pressing the maximize button when at the titlebar-only
  stage would bring the window back to its original size.  This would be a
  great screen saver while not inconvieniencing people with having to keep
  running to the Window list to bring up a minimized window.
 
6.20  ENHANCE FILE DIALOG BOX
 
  Enhance the file dialog box so that it is possible to see the size and
  date stamp on a file, in addition to just the file name.  An example of
  how this would look is the folder Details view in the WPS.  Also, be very
  desirable to be able to sort the list of files by name, size or date from
  within the standard file dialog box.
 
6.21  STATE-REVEALING ICONS
 
  Icons should reveal the state of the program they belong to.  For example,
  the printer icon could change to indicate that there are jobs in the
  spooler, a minimized interactive program's icon could bink to indicate
  waiting on user input, and the minimized folder could 'glow' when
  occupied.
 
6.22  CHANGE BEHAVIOUR OF DROP-DOWN LISTS
 
  Currently, the user must click on the button to the right of a drop-down
  list to make it drop down.  This should be changed so that the user could
  click anywhere in the entry field in addition to clicking on the button to
  bring down the list.
 
6.23  ALT-TAB SHOULD WORK LIKE WINDOWS
 
  The ALT-TAB key combination, which cycles through the running programs,
  should work like in Windows.  This means that rather than flipping through
  the programs, a little box showing the name of a running program should
  appear.  Each time the user hits ALT-TAB, the name of the next running
  program would appear, until there are no more programs and it restarts at
  the beginning again.  When the user finds the program they want, they let
  go of the ALT key to switch to that program.
 
6.24  HAVE PM NOT LOAD ON BOOT UP
 
  PM should be more separated from the rest of OS/2, allowing a user to
  function without it when the overhead of a graphic interface is
  undesirable.  This might be a good use for the STARTUP.CMD - OS/2 would
  first start in a text mode and then try to execute STARTUP.CMD -
  STARTUP.CMD would then contain the commands to start PM.
 
  It should also be possible to quit PM without shutting down the machine.
  Doing so would return the user to the command line.  This would allow
  to do such things as replace locked DLLs, change display drivers etc. that
  would normally require the system to be reset.
 
6.25  EDIT CONTROL NOT CUA COMPLIANT
 
  The base edit control (not MLE: WC_ENTRYFIELD) does not support some CUA
  defined behaviour.  For example, the control does not support CTRL-LEFT or
  CTRL-RIGHT accelerators to move to the next word.  It also does not
  support double clicking on a word to mark the word.  The MLE control
  supports both of these and it is inconsistent not to provide this support
  in dialogs.
 
6.26  INCLUDE NEW ATM AND MORE FONTS


  Adobe Type Manager 3.0 (with multiple master fonts) should be included in
==1.0 The Kernel==
  the next version of OS/2, along with a greater number of fonts.
The OS/2 kernel is showing signs of age in relation to the new breed of micro kernels; listed below are proposed ways to improve it.


6.27  32-BIT CONTAINERS
;1.1 Include SMP Support
Included with the base system should be the kernel support for handling SMP (symmetric multiprocessing). It is understood that most users can not take advantage of SMP, however its inclusion would be a powerful weapon against those vendors who claim their operating system is superior because they support SMP.


  When opening a WPS window with 1000+ icons, you only see the real icon for
;1.2 Move the Intel Version to the IBM Microkernel
  a limited number of them. This is probably due to PM's 16-bit internal
Of course, if you can't beat them, join them. The portable OS/2 versions (i.e.: OS/2 for PowerPC) is already moving to the IBM Microkernel and by moving the Intel version to the Microkernel as well as keeping uniformity between versions of OS/2 for different architectures. This would allow:
  structure, and should be changed.
*dynamic loading/unloading of device drivers
*greater stability as device drivers run in user space and not kernel space
*would provide architecture-independent device support as drivers interact with the kernel and not directly with the hardware.
*would require less memory
*faster boot off floppy as less has to be loaded at boot time (device drivers could be loaded as needed by an installation program that would search for supported devices)


==7.0 TEXT APPLICATIONS==
==2.0 File Systems==
This section deals with all wishes directly related to changes and additions to the OS/2 file systems.


This section is for wishes related to text applications. While it is
;2.1 Utility to Convert Between File Systems
desirable to have most applications as PM programs, reality states that some
It is very difficult to convince a user to format their FAT drive to install HPFS. Therefore, a utility to convert between file system formats non-destructively should be provided.
programs work best in text mode and can not have the overhead associated
with a graphic interface and these wishes are designed to specifically
address those applications.


7.1  TEXT-MODE MULTI-TASKING
;2.2 Installable File Systems for Removable Devices
Installable file systems must be made available for removable devices, including floppies. It is unacceptable for a user with optical disks to be forced to use FAT instead of a better file system (i.e.: HFPS)


  From full screen DOS or OS/2 sessions, CTRL-ESC should bring up the
;2.3 Long File Name Support in FAT
  a text version of the task list rather than switching to the desktop.
Long file name support already exists in FAT, in the form of the .LONGNAME extended attribute. All file system calls should rely on the .LONGNAME extended attribute instead of the 8.3 file name to provide transparent long filename support to the user.
  Pressing ALT in a full screen session should bring down a text the
  equivalent of the toolbar menu for a windowed session, with functions to
  mark, copy, paste, change settings, etc.  Switching between full screen
  sessions should not require switching to the desktop as an intermediate
  step.


7.2 TEXTUAL USER INTERFACE
;2.4 File System Requirements (see 3.4)
The needs of OS/2 users are constantly changing and the file systems need to move with them. The following is a list of the new file system requirements.
*access control lists (ACL) for file security
*journaling
*support extended attributes greater than 64K
*support caches greater than 2 MB
*support a maximum file system size in the terabyte range
*255 character disk labels
*new file type (in addition to 'File' and 'Directory' called 'Abstract' to handle symbolic links (shadows) and imbedding objects in to the file system
*file association in the file system
Note: symbolic links must work across file filesystems and even across file systems of different types.


  Provide a text user interface API, a type of textual Presentation Manager.
Most of these requirements would probably require a new file system to support them. Those that can be implemented in HPFS should be, and those that can not should be implemented in a new file system.


7.3  SWITCHING FROM FULL SCREEN TO WINDOW MODE FOR OS/2 SHELLS
;2.5 Make '/' and '\' Act the Same for Changing Directories
OS/2's API set should be changed to allow changing directories using either '/' or '\'. This requires changing the command line switch delimiter to '-' from '/'. It should be noted that except for IBM's software, most programs already use '-' instead as a command line switch delimiter.


  The same ALT-HOME functionality available to DOS shells should be made
In addition, the OS/2 IFS definition specifically states that '/' and '\' should both be usable for changing directories.
  available for OS/2 shells.  There are features that a full screen shell
  can do that a windowed one can't - then again, with DOS shells, there are
  resolutions that can be handled in full screen mode that can't in windowed
  mode; OS/2 just says 'I can't do that' and pauses the window until it goes
  full screen again. Why not do the same thing for OS/2 shells?


7.4  SWITCHING FROM FULL SCREEN TO WINDOW MODE
;2.6 Standard Tape Filesystem
A standard tape-backup filesystem should be provided to allow sharing of information on tape between OS/2 configurations. The filesystem should be designed to allow multiple backups on one tape and should allow the backup of any information stored on a disk filesystem, meaning support for long filenames, extended attributes, security, etc.


  The same ALT-HOME functionality available to DOS software should be made
;2.7 File System-Independent Disk Compression
  available for OS/2 text applications. There are features that a
A file system-independent disk compression scheme should be provided with OS/2 to help offset the increased disk space requirements over DOS/Windows systems.
  full screen shell can do that a windowed one can't - then again, with DOS
  shells, there are resolutions that can be handled in full screen mode
  that can't in windowed mode; OS/2 just says 'I can't do that' and pauses
  the window until it goes full screen again.  The same type of message
  could be given for text applications that try to do unsupportable actions
  while windowed.


7.5  USE THE PM METHOD FOR COPY AND PASTE IN TEXT MODE
;2.8 Additional File System Support
OS/2 should ship with support for the following file systems:
*NTFS
*common UNIX disk formats
*Macintosh


  OS/2's current method for doing copy and paste's from a text session is
;2.9 Make All Files Executable
  very awkward.  A much simpler and more natural method should be used,
Any file should be executable, no matter what its extension. The shell should first determine whether whatever the user asked it to open is actually an executable. If it is, the program starts normally. If not, the file is assumed to be some sort of data file, and the operating system tries to find the creator (using the extended attributes) of the file and starts it, instructing the creator to open the file. If it can't find the creator, it should return back an error message saying that the file was not executable and the file's creator could not be found. The current rules for special file extensions should be removed as they are not appropriate for a free-form filename system. Something like a REXX script or batch file that generally has no file type could be started as 'cmd rexxscript'. Typing just the name of a directory would change in to the directory.
  namely the one implemented for PM applications. The user simply selects
  the text they want to copy and then press the standard PM CTRL-INS to
  copy and SHIFT-INS to paste.


7.6  MAKE COPY AND PASTE FEATURES AVAILABLE TO FULL SCREEN SESSIONS
;2.10 Utility to View/Set Extended Attributes
A utility should ship with OS/2 to allow the user to view and edit a file's extended attributes. This would be particularly necessary if all files are considered executable, as the user may want to specially assign creators for files so they can be automatically opened, or to allow a REXX script or batch file to run without having to run 'cmd rexxscript'.


  There is no reason why full screen sessions should not be able to use the
;2.11 Secure System Files
  same copy and paste features of windowed sessions.
Display a warning every time a system file (typically one in the \OS2 directory) is going to be replaced by an application. To implement this, a file holding the names of files that should not be changed without giving notice to the user could be used.


7.7  FULL ANSI X3.64 SUPPORT
;2.12 Allow Optional Caching on a Drive Basis
The user should be able to specify drives to cache (or not to cache). For example, the user could ask for drives 'C:', 'D:' 'F:' to be cached, but not 'E:'.


  The complete ANSI X3.64 terminal specification should be enabled for text
==3.0 Handling Disks==
  sessions.
Pretty well every OS/2 user agrees that calling disks 'A:', 'B:', 'C:' just doesn't cut it. Unfortunately, not everyone is agreed on how this problem should be solved. There are 2 opposing arguments, one for mounting drives off of a root directory and the other for using the already present disk labels as disk names.


7.8  VT-100 SUPPORT
;3.1 Device Aliases (see 3.2, 3.3, 3.4)
  Text sessions should have complete VT-100 support.
The user should be able to alias a directory to a disk name or a disk to another disk name, or a disk name to a directory. This is to support wishes 3.2, 3.3 and 3.4. This would be used in the case of wish 3.3 to alias '/' to 'C:', '/floppy' to 'A:'. It would be used in the case of with 3.4 to alias device 'MYDISK:' to 'C:'.


7.9  ALLOW MARK AND COPY AS 1 FUNCTION (see 7.5)
;3.2 Disk Device Names (see 3.1)
Instead of calling disks 'A:', 'B:', 'C:', etc, disk devices could be referenced internally as 'FDx:' for floppies and 'HDx:' for hard drives. This would allow an unlimited number of available partitions. Device aliases could be created to alias back 'FDx' and 'HDx' to the DOS equivalents to allow older software to work while allowing those who have surpassed the 26 available drives to use their full capacity.


  The Mark and Copy features should be integrated in to 1 action.
;3.3 Mounting Drives Instead of Having Drive Letters (see 3.1)
Drives would be mounted as directories off of the boot drive (for example, 'D:' could be mounted as '\applications'). For programs that are not designed to handle such a system, the root drive would be aliased to 'C:' and the floppy drives would be aliased to 'A:' and 'B:'.


==8.0  WORKPLACE SHELL==
;3.4 Using Disk Labels Instead of Drive Letters (see 3.1)
Disk labels, currently an unused feature of the file systems, could be used as device aliases as well. For example, if a disk label is 'MYDISK', the drive could be accessed as 'MYDISK:' This would make accessing disks much more intuitive.


The WorkPlace Shell is something a user must interact with every day and so
When used on a FAT or HPFS drive, the disk label could only be 11 characters (as that is the current disk label size). Any new file systems should support 255 characters and the APIs to support the new drive schemes should support 255 character labels.
it is important for the shell to meet the user's needs.  The following is a
list of wishes directly related to the WorkPlace shell.


8.1  ADDITION OF MASTER TEMPLATES
Disk labels should be allowed to contain any character usable in the file systems.


  'Master Templates' are default settings for any object, like a folder or a
;3.5 New Boot Sector
  program. By changing the settings in the Master Template, the settings in
The current OS/2 boot sector (created by FORMAT/PMFORMAT) is next to useless. It displays a cryptic message that few people bother to even look up. A new boot sector that just skips over the disk and continues the boot process if it can't boot OS/2 should be implemented.
  every object of that type would also be changed.  This will allow the user
  to accomplish something like 'make all folders look like this one'. By
  default, an object would always inherit any changes to the master;
  however, by turning off a setting in the object's settings (named, for
  example, 'Inherit from Master') the user could disable such a feature to
  allow for customization for specific objects.


  Master templates could also be used as a replacement for the command
;3.6 Booting Takes Too Long (see 1.2)
  association features of the WPS. A Master Template for '*.ZIP' could
Booting OS/2 off hard disk is a long process for many users, but loading off of floppy (for example, during the install process) is almost unbearable. An inexperienced user could think that the computer has crashed while booting. As a first step, a progress indicator should appear telling the user that something is happening. To really solve the problem would require less to be loaded during the boot process (which would mean moving to the IBM Microkernel). In addition, reducing the number of install disks from 2 to 1 would be a big improvement.
  execute UNZIP when a ZIP file is run.


8.2  MOVEMENT OF SHADOWS IN TO THE FILE SYSTEM (see 2.4)
==4.0 Device Drivers==
Device drivers are at the heart of the operating system and yet they are often the one of the greatest sources of heartache for users. The following is a list of wishes designed to fix that.


  The Shadows are one of the most complex parts of the WPS because often
;4.1 Support
  users don't understand that a shadow only exists in the desktop.
Without device driver support for devices the user can't use their investments and would likely rather stay in DOS than have to give up access to their hardware. IBM must do everything possible to get third party vendors to write device drivers. This includes a service for vendors to pay IBM to write the device drivers at a reasonable cost.
  Therefore, shadows (or 'symbolic links') should become part of the file
  system.


8.3  SHADOWS SHOULD STAND OUT BETTER
;4.2 Quality
Not all third party vendors give the same driver quality that we are used to IBM providing. To solve this, IBM should have an independent lab to do device driver testing at low or no charge. IBM should also set up a volunteer device driver testing corps based on Team OS/2 (maybe even using Team OS/2 members). IBM could manage a database with each member's configuration and would make the database available to any manufacturer on request. This solution would satisfy everyone: it is low cost for IBM to support and for vendors to use, provides the vendor with diverse system configurations and would help to provide the user the best quality drivers.


  It is often difficult to tell whether an object is a shadow or not as the
;4.3 Allow Dynamic Loading and Unloading of Device Drivers (see 1.2)
  only distinguishing characteristic is a different icon text colour.
OS/2 should allow device drivers to load and unload as desired by the user. This would be handled easiest by moving to the IBM Microkernel, but should be made available even if the current kernel is maintained.
  Shadows could have a slightly different icon (as templates do).  In
  addition, it should be possible to set the font for shadows independant
  from the font used for other icons.


8.4 RELIABLE WORKPLACE SHELL BACKUP/RESTORE (OS2.INI AND DESKTOP DIRECTORY)
;4.4 Support for All SCSI Standard Devices
    (see 2.4)
OS/2 should provide drivers for all devices that are part of the SCSI standard devices, such as tapes, scanners, etc. Each type of device would get one driver, much like the way SCSI-2 CD-ROMs are handled using the OS2CDROM.DMD.


  There needs to be a way to backup and restore the Workplace Shell setup,
;4.5 Improved Support for PCMCIA
  including things like the desktop and object settings.  Possibly this
OS/2 currently only provides the "socket services" for PCMCIA devices and requires the PCMCIA card manufacturer to provide the other side of the socket, which few other than IBM provide. OS/2 needs to provide full support for PCMCIA devices out-of-the-box.
  could be achieved most easily through the movement of desktop information
  from the INI files to the filesystem where they can be easily backed up
  using any backup software.


8.5  RANDOM BACKGROUND SELECTION FOR THE WPS
==5.0 OS/2 As an International Operating System==
OS/2 is designed as an international operating system, to be used anywhere in the world along with other platforms. Unfortunately, OS/2 in it's current state is far from being an international operating system; the following are wishes designed to solve this.


  A list of desirable backgrounds could be selected for the WPS and upon
;5.1 Unicode
  startup, the WPS could randomly choose a background to display.
Unicode support should be included in the base operating system. This would also remove the need for a different double byte character set version of the operating system.


8.6  TURNING THE SHREDDER IN TO A TRASH CAN
Codepage emulation would be provided to support applications that are not Unicode-aware.


  The Shredder needs to be turned in to a trash can, meaning that files put
;5.2 Standard Date Time and Number Formats (see 14.4, 15.1)
  in it need to be recoverable.  This means tighter integration of the WPS
The system date time and number formats (as defined in the Country object in the System Setup folder' should be used everywhere in the operating system. Reading huge numbers like those returned by CHKDSK and DIR which are currently not broken up by the 1000s separator and ambiguous date formats are almost enough to drive the user insane.
  object with the SET DELDIR= option.  Files should remain in the trash can
  until they are explicitly cleaned out (as an option in the object and a
  command line utility).  When there is not enough space to perform a
  function, the operating system should first see if there are files that
  could be cleaned up to make room.  If so, the user is asked if it is
  alright to remove files, and then proceeds to make space.  If the user
  says 'no', or there are no files to remove, the write fails normally.
  Files would be removed in chronological order, starting with the oldest
  files and proceeding until enough room is made or there are no more files
  to remove.


8.7  LIST VIEW FOR OBJECT SETTINGS
These formats should also be a lot less restricted. The user should be able to build the formats any way they like. This means the user should be allowed to do things like 'yyyy-mm-dd' (ISO date format), dd/mm-yy (old Swedish style) and even things like dd-mmm-yy to get a 3 character short form for the month.


  There could be a list view for object settings - it would basically be a
;5.3 Support for 8-Bit Code Pages for Cyrillic and Greek
  dump of all the possible settings there are for the given object, sorted
OS/2 should have the same 8-bit code pages for Cyrillic and Greek that is provided for IBM DOS.
  alphabetically and not grouped together in notebook sections.  This would
  make it very easy to find a particular setting when you don't exactly know
  where to look (but you know what to look for).  As many as could fit on
  one notebook page would be shown at a time, and arrows at the bottom of
  the notebook would allow flipping between pages.


8.9  STARTING PM APPLICATIONS 'MINIMIZED'
;5.4 Support of ISO 8859.1 (ISO Latin-1) Character Set
OS/2 should support the ISO 8859.1 (also known as ISO Latin-1) character set, used in other operating systems such as UNIX.


  The feature for starting a program minimized should be enabled for PM
;5.5 Support for More Than 2 Codepages
  applications.
There must be support for more than 2 codepages. As OS/2 becomes more widely used internationally people need to be able to exchange documents using different codepages simply.


8.10  DEFAULT VIEW OPTION IN OBJECT SETTINGS
;5.6 Keyboard Definition Utility
The user should be able to define their keyboard as they desire instead of being restricted to the keyboard layouts defined by the Country setting.


  Any object for which the type of view can be variable (for example, a
;5.7 Separate Text From Code
  folder can be viewed in the 'Icon' view, 'Tree' view and 'Details View')
As an example for other vendors, there should be no text imbedded in executable code. All text used in the operating system should be placed in language files (*.msg). This would, among other things, speed up the release times for the international OS/2's.
  should have a default view option. This option would be very accessible,
  for example through a drop down list in the 'Window' page.


8.11 ADD GRID/CHANGE THE MEANING OF ARRANGE
==6.0 Presentation Manager
This section contains wishes for anything related to the Presentation Manager, including wishes for INI and icon files.


  The Icon view named 'Non-grid' should be renamed to 'Gridded'. An option
;6.1 INI Editor
  for defining the grid of user-defined size (or to turn off the grid, for
An INI editor should be included as part of the base system.
  functionality similar to the 'Non-Grid' mode)  Arrange would move the icons
  to nearest point on a the grid.  In addition, there should be an option in
  the window settings for to always snap icons to the grid.


8.12  EXPAND ALL BRANCHES/EXPAND TREE FEATURE FOR TREE VIEWS
;6.2 Movement of Information From the OS2.INI to the File System
Icon information etc. should be moved from the INI files in to the file system in the form of extended attributes. This will allow users to retain system settings even when replacing the operating system as all the necessary settings are kept along in the application's extended attributes which can be backed up, and would ensure that deleted application settings do not live on forever in the INI files as all settings would disappear along with the application.


  The user should be able to expand all branches of a tree or to expand
;6.3 MULTIPLE INPUT QUEUES
  the entire tree while in a Tree view. * and CTRL-* are used in the help
Having PM grind to a halt because of a process holding the message queue for too long just isn't acceptable. Every thread that uses the PM should be assigned its own, independent message queue to ensure that the user can always interact with the system, even if one application goes down.
  system to provide similar functionality, and their use is recommended
  here as well.


8.13  MORE INFORMATION FOR DRIVE OBJECTS/DISK TREE VIEWS
;6.4 Changing the Graphics Driver On-the-Fly
Being able to change the graphics driver on the fly would be a big plus.
This means that the system should not have to be rebooted to handle the new driver, and all video changes should take effect immediately.


  Below the name of the drive in a drive object (ie: 'Drive C') the
;6.6 Right Mouse Button Action for Programs That DON'T USE IT
  amount of free disk space should be shown (note: this should only be
The commands in the toolbar menu (at the top left corner of each window) as well as the menubar (in the case of PM application) should form a right mouse button pop-up menu for applications that do not explicitly support the right mouse button.
  shown for disks that are writable; no matter how long you look at a
  CD-ROM, it will always say 0 bytes free).  In a Tree view, below each
  folder name, the  number of files in the directory and the size of the
  contents should be displayed.


8.14  SAVE CHANGES MADE BY THE PALETTES IN THE SYSTEM SETUP FOLDER
;6.7 Movement of OS/2 Logo to After PM Gets Started
Moving the OS/2 Logo to just after PM gets started (as the first thing that is shown on the screen) just makes more sense - the graphical environment is up and running and all the routines are there for showing bitmaps. In addition, it would allow more colourful OS/2 bitmaps to be shown on start-up without pain.


  ALL IBM software, including the help system and INF files, must support
;6.8 Optional Disabling of Menu Drop Down on Right Alt Key
  saving changes to fonts definitions, colour schemes etc. made by
On many international keyboards, the right ALT key is used to type special characters such as brackets. An accidental slip on the keyboard while doing an ALT key combination can cause a menu to drop down, and thus is a real annoyance. For people using international keyboards, an option either the Country object or Keyboard object should determine whether only the left ALT key or both ALT keys should bring down menus.
  performing a drag-and-drop from any of the various 'Palette' objects in
  the System Setup folder.  This includes the 'Font Palette', 'Colour
  Palette' and 'Colour Scheme' objects. Third party vendors should be
  encouraged to follow IBM's example.


8.15  OPEN PARENT FOLDER
;6.11 Use Fonts Like DLLs
A font should only be kept in memory as long as there is a program using the font; keeping fonts loaded forever is a waste of valuable system resources. After the last process to use a font is terminated, the font should be unloaded.


  The ability to open a folder's parent should be available in the 'Open'
;6.13 Vector Icons
  section of the right mouse button menu.
Allow vector graphic files in addition to bitmaps and allow the icon to be scaled to a fixed size no matter what the resolution is.


8.16  CLOSE OF THE CURRENT FOLDER WHEN OPENING A CHILD FOLDER
;6.15 Enhanced Task List
There should be a 'Details' view of the task list, showing more information about a program - i.e.: priority, memory usage, idle time, CPU usage, process ID, parent ID, command line parameters, etc. From here the user should also be able to change task priorities.


  Both accessible through the 'Open' section in the right mouse button menu
;6.16 Optional 'Keyboard Focus Follows the Mouse Support'
  and by an accelerator key should be the ability to close the current
Optionally, the user should be able to enable X11-style 'keyboard follows the mouse pointer' support. The active window and keyboard focus are changed as the mouse pointer moves from one window to another. Note that the new active window is not brought to the surface, only the keyboard focus changes.
  folder when opening a child folder.


8.17 CASCADABLE MENUS
;6.17 Display PostScript
PC's have become powerful enough to handle Display Postscript, and definitely the next generation of PC's - the PowerPC's - could handle display Postscript with no problems at all. With fonts playing an increasingly important role, it is important for what is on the screen to look as much as possible as printed output.


  The user can add items to the right mouse button menus, even sub-menus,
;6.18 Animated Cursors
  but the user can not add sub-sub menus.
OS/2 should support animated cursors. This means for the alarm clock cursor, the dial could spin, etc.


8.19 REDEFINE SCALING OF MOUSE SPEED, KEY REPEAT SETTINGS ETC.
;6.19 Minimize Button Goes First to Titlebar Only, Then Hidden
The minimize button could be (optionally) changed to first minimize down to the titlebar only and then another click on the minimize button would hide the window. Pressing the maximize button when at the titlebar-only stage would bring the window back to its original size. This would be a great screen saver while not inconveniencing people with having to keep running to the Window list to bring up a minimized window.


  The current scale used for mouse speed, key repeat delay, etc. is much to
;6.20 Enhance File Dialog Box
  slow for most users.  As most users use the settings at their fastest
Enhance the file dialog box so that it is possible to see the size and date stamp on a file, in addition to just the file name. An example of how this would look is the folder Details view in the WPS. Also, be very desirable to be able to sort the list of files by name, size or date from within the standard file dialog box.
  rate, there is not much point in having the settings there in the first
  place. To make them useful, the fastest speeds need to be many times
  faster than those available now.


  To solve this problem, flexible ballistics should be supported via a
;6.21 State-Revealing Icons
  customizable acceleration curve. The user would more or less 'pull' on
Icons should reveal the state of the program they belong to. For example, the printer icon could change to indicate that there are jobs in the spooler, a minimized interactive program's icon could bink to indicate waiting on user input, and the minimized folder could 'glow' when occupied.
  the curve to create the acceleration they desire. A few standard
  configurations would be given for users that do not want to play with the
  curve.


  In additon, the user should be able to disable ballistic tracking for the
;6.22 Change Behaviour of Drop-Down Lists
  mouse for those who prefer linear mouse tracking.
Currently, the user must click on the button to the right of a drop-down list to make it drop down. This should be changed so that the user could click anywhere in the entry field in addition to clicking on the button to bring down the list.


8.20  SHELL WINDOW CLOSING
;6.23 Alt-Tab Should Work Like Windows
The ALT-TAB key combination, which cycles through the running programs, should work like in Windows. This means that rather than flipping through the programs, a little box showing the name of a running program should appear. Each time the user hits ALT-TAB, the name of the next running program would appear, until there are no more programs and it restarts at the beginning again. When the user finds the program they want, they let go of the ALT key to switch to that program.


  The WPS should not ask for confirmation to close a shell that is not
;6.24 Have PM Not Load on Boot Up
  running any software programs.
PM should be more separated from the rest of OS/2, allowing a user to function without it when the overhead of a graphic interface is undesirable. This might be a good use for the STARTUP.CMD - OS/2 would first start in a text mode and then try to execute STARTUP.CMD - STARTUP.CMD would then contain the commands to start PM.


8.21  COLOUR PALETTE CHANGES ICON TEXT COLOUR
It should also be possible to quit PM without shutting down the machine.
Doing so would return the user to the command line. This would allow to do such things as replace locked DLLs, change display drivers etc. that would normally require the system to be reset.


  Dragging a colour from the Colour Palette should change the icon text
;6.25 Edit Control Not CUA Compliant
  colour for that particular icon (or group of icons if more than 1 is
The base edit control (not MLE: WC_ENTRYFIELD) does not support some CUA defined behaviour. For example, the control does not support CTRL-LEFT or CTRL-RIGHT accelerators to move to the next word. It also does not support double-clicking on a word to mark the word. The MLE control supports both of these and it is inconsistent not to provide this support in dialogs.
  selected).


8.22  PUT FULL PATH IN IN DIRECTORY TITLEBAR
;6.26 Include New ATM and More Fonts
Adobe Type Manager 3.0 (with multiple master fonts) should be included in the next version of OS/2, along with a greater number of fonts.


  When the user chooses a directory from the Drives object, the title bar of
;6.27 32-Bit Containers
  the directory window should contain the full path to the directory, and
When opening a WPS window with 1000+ icons, you only see the real icon for a limited number of them. This is probably due to PM's 16-bit internal structure, and should be changed.
  not just the directory's name.  For example, it should say 'D:\MYDIR'
  instead of 'MYDIR'.


8.23  ABILITY TO SET DISK LABELS FROM THE DRIVE OBJECT
==7.0 Text Applications==
This section is for wishes related to text applications. While it is desirable to have most applications as PM programs, reality states that some programs work best in text mode and can not have the overhead associated with a graphic interface and these wishes are designed to specifically address those applications.


  The user should be able to change a disk label from the Drive object.
;7.1 Text-Mode Multi-Tasking
From full screen DOS or OS/2 sessions, CTRL-ESC should bring up a text version of the task list rather than switching to the desktop.
Pressing ALT in a full screen session should bring down a text the equivalent of the toolbar menu for a windowed session, with functions to mark, copy, paste, change settings, etc. Switching between full screen sessions should not require switching to the desktop as an intermediate step.


8.24  ADD 'CHANGE' OPTION TO RIGHT MOUSE BUTTON MENU
;7.2 Textual User Interface
Provide a text user interface API, a type of textual Presentation Manager.


  An option to 'Change' a view from one type to another (for example, from
;7.3 Switching From Full Screen to Window Mode for OS/2 Shells
  Tree to Icon view) should be added to the right mouse button menu. This
The same ALT-HOME functionality available to DOS shells should be made available for OS/2 shells. There are features that a full screen shell can do that a windowed one can't - then again, with DOS shells, there are resolutions that can be handled in full screen mode that can't in windowed mode; OS/2 just says 'I can't do that' and pauses the window until it goes full screen again. Why not do the same thing for OS/2 shells?
  would allow the user to see a different view of a window without the old
  view staying on the desktop.


8.25  TEAR-OFF MENUS
;7.4 Switching From Full Screen to Window Mode
The same ALT-HOME functionality available to DOS software should be made available for OS/2 text applications. There are features that a full screen shell can do that a windowed one can't - then again, with DOS shells, there are resolutions that can be handled in full screen mode that can't in windowed mode; OS/2 just says 'I can't do that' and pauses the window until it goes full screen again. The same type of message could be given for text applications that try to do unsupportable actions while windowed.


  Tear-off menus were a rather interesting part of the OS/2 2.0 betas, and
;7.5 Use the PM Method for Copy and Paste in Text Mode
  unfortunately were left out of the final product to ensure compatibility
OS/2's current method for doing copy and paste's from a text session is very awkward. A much simpler and more natural method should be used, namely the one implemented for PM applications. The user simply selects the text they want to copy and then press the standard PM CTRL-INS to copy and SHIFT-INS to paste.
  with all existing applications. It would be nice if IBM could resolve the
  compatibility problems and return the tear-off menus to OS/2.


8.26  SIMPLIFY 'FIND' PAGE
;7.6 Make Copy and Paste Features Available to Full Screen Sessions
There is no reason why full screen sessions should not be able to use the same copy and paste features of windowed sessions.


  The notebook 'FIND' page is much too complicated. It should be replaced
;7.7 Full ANSI X3.64 Support
  with a simple file dialog (slightly modified to handle the WPS).
The complete ANSI X3.64 terminal specification should be enabled for text sessions.


8.27  NO PASSWORD FOR SCREEN SAVER
;7.8 VT-100 Support
Text sessions should have complete VT-100 support.


  The screen saver should not require a password in order to operate.
;7.9 Allow Mark and Copy as 1 Function (see 7.5)
The Mark and Copy features should be integrated in to 1 action.


8.28  ADDITIONS TO THE WPS SHUTDOWN FUNCTION
==8.0 Workplace Shell==
The WorkPlace Shell is something a user must interact with every day and so it is important for the shell to meet the user's needs. The following is a list of wishes directly related to the WorkPlace shell.


  Two additions are preposed to the WPS shutdown function.  First, there
;8.1 Addition of Master Templates
  should be an option (in the dialog asking to shut down) to automatically
'Master Templates' are default settings for any object, like a folder or a program. By changing the settings in the Master Template, the settings in every object of that type would also be changed. This will allow the user to accomplish something like 'make all folders look like this one'. By default, an object would always inherit any changes to the master; however, by turning off a setting in the object's settings (named, for example, 'Inherit from Master') the user could disable such a feature to allow for customization for specific objects.
  reboot the machine after shutdown. Second, there should be an option to
  unconditionally close all running programs, without asking for the user's
  consent.


8.29  'CLEAN DESKTOP' FUNCTION IN THE DESKTOP MENU
Master templates could also be used as a replacement for the command association features of the WPS. A Master Template for '*.ZIP' could execute UNZIP when a ZIP file is run.


  A 'Clean Desktop' function should be added to the desktop menu (the one
;8.2 Movement of Shadows in to the File System (see 2.4)
  that appears with the right mouse button).  This function would minimize
The Shadows are one of the most complex parts of the WPS because often users don't understand that a shadow only exists in the desktop. Therefore, shadows (or 'symbolic links') should become part of the file system.
  all open windows.


8.30  'ACCESSING DISK' NOTICE
;8.3 Shadows Should Stand Out Better
It is often difficult to tell whether an object is a shadow or not as the only distinguishing characteristic is a different icon text colour. Shadows could have a slightly different icon (as templates do). In addition, it should be possible to set the font for shadows independent from the font used for other icons.


  The initial disk access in the WPS (especially for floppies) can take some
;8.4 Reliable Workplace Shell Backup/Restore (OS2.INI and Desktop Directory)
  time.  A message indicating that the system is, in fact, doing something
(see 2.4)
  should appear so the user is not left wondering what is happening.


8.31  HOTKEYS
There needs to be a way to backup and restore the Workplace Shell setup, including things like the desktop and object settings. Possibly this could be achieved most easily through the movement of desktop information from the INI files to the filesystem where they can be easily backed up using any backup software.


  It should be possible to create hotkeys to start applications from the
;8.5 Random Background Selection for the WPS
  WPS.  For example, the user could design the system such that ALT-1 starts
A list of desirable backgrounds could be selected for the WPS and upon startup, the WPS could randomly choose a background to display.
  a communications package, ALT-2 starts a word processor, etc.


8.32  A WAY TO USE THE PTR FILES CREATED WITH THE ICON EDITOR
;8.6 Turning the Shredder in to a Trash Can
The Shredder needs to be turned in to a trash can, meaning that files put in it need to be recoverable. This means tighter integration of the WPS object with the SET DELDIR= option. Files should remain in the trash can until they are explicitly cleaned out (as an option in the object and a command line utility). When there is not enough space to perform a function, the operating system should first see if there are files that could be cleaned up to make room. If so, the user is asked if it is alright to remove files, and then proceeds to make space. If the user says 'no', or there are no files to remove, the write fails normally.


  While the user can create pointers using the icon editor, there is no way
Files would be removed in chronological order, starting with the oldest files and proceeding until enough room is made or there are no more files to remove.
  for the user to make any use of them.  The user should be able to use
  these new pointers, if no where else but the WPS.  All pointers used in
  the WPS should be configurable, from the standard pointer to the 'lock' in
  the screen saver.  In addition, it should be possible to return to the
  default pointers.


8.33  MODIFY TREE VIEW TO ALLOW THE USER TO MORE SUB-LEVELS
;8.7 List View for Object Settings
There could be a list view for object settings - it would basically be a dump of all the possible settings there are for the given object, sorted alphabetically and not grouped together in notebook sections. This would make it very easy to find a particular setting when you don't exactly know where to look (but you know what to look for). As many as could fit on one notebook page would be shown at a time, and arrows at the bottom of the notebook would allow flipping between pages.


  When opening a sub-level in a window's Tree View, the parent of this
;8.9 Starting PM Applications 'Minimized'
  branch should be moved to the top of the window to allow the user to see
The feature for starting a program minimized should be enabled for PM applications.
  more of the sub-levels.  It is obvious that the user wants to see what is
  in the sub-levels and the WPS should reflect this.


8.34  SET THE DEFAULT START SIZE, POSISTION OF AN OBJECT
;8.10 Default View Option in Object Settings
Any object for which the type of view can be variable (for example, a folder can be viewed in the 'Icon' view, 'Tree' view and 'Details View') should have a default view option. This option would be very accessible, for example through a drop down list in the 'Window' page.


  It should be possible to set a default start size and position at the
;8.11 Add Grid/Change the Meaning of Arrange
  object level rather than at a program level. This would allow the user to
The Icon view named 'Non-grid' should be renamed to 'Gridded'. An option for defining the grid of user-defined size (or to turn off the grid, for functionality similar to the 'Non-Grid' mode) Arrange would move the icons to nearest point on a the grid. In addition, there should be an option in the window settings for to always snap icons to the grid.
  individually set the start size and position of one shell window object
  without affecting any other shell window object.


8.35  ABILITY TO TURN OFF ANY OF THE OPTIONS IN THE RIGHT MOUSE BUTTON MENU
;8.12 Expand All Branches/Expand Tree Feature for Tree Views
The user should be able to expand all branches of a tree or to expand the entire tree while in a Tree view. * and CTRL-* are used in the help system to provide similar functionality, and their use is recommended here as well.


  The user should be able to turn off any of the options in the right mouse
;8.13 More Information for Drive Objects/Disk Tree Views
  button menu in the WPS.  This would allow the user to turn off such
Below the name of the drive in a drive object (ie: 'Drive C') the amount of free disk space should be shown (note: this should only be shown for disks that are writable; no matter how long you look at a CD-ROM, it will always say 0 bytes free). In a Tree view, below each folder name, the number of files in the directory and the size of the contents should be displayed.
  functions as 'Arrange', which can be hazardous to a carefully designed
  desktop.


8.36  COLOURFUL ICONS
;8.14 Save Changes Made by the Palettes in the System Setup Folder
ALL IBM software, including the help system and INF files, must support saving changes to fonts definitions, colour schemes etc. made by performing a drag-and-drop from any of the various 'Palette' objects in the System Setup folder. This includes the 'Font Palette', 'Colour Palette' and 'Colour Scheme' objects. Third party vendors should be encouraged to follow IBM's example.


  The default icon set in OS/2 is a bit bland and unappealing.  A splash of
;8.15 Open Parent Folder
  colour would really improve the looks of the WPS.
The ability to open a folder's parent should be available in the 'Open' section of the right mouse button menu.


8.37  BACKGROUND COLOUR ON ICON TEXT
;8.16 Close of the Current Folder When Opening a Child Folder
Both accessible through the 'Open' section in the right mouse button menu and by an accelerator key should be the ability to close the current folder when opening a child folder.


  Icon text should have the background colour underneath in order to be able
;8.17 Cascadable Menus
  to see the text with some bitmaps.
The user can add items to the right mouse button menus, even sub-menus, but the user can not add sub-sub menus.


8.38  AUTOMATIC CONVERSION OF WINDOWS ICO FILES TO OS/2 ICONS
;8.19 Redefine Scaling of Mouse Speed, Key Repeat Settings etc.
The current scale used for mouse speed, key repeat delay, etc. is much to slow for most users. As most users use the settings at their fastest rate, there is not much point in having the settings there in the first place. To make them useful, the fastest speeds need to be many times faster than those available now.


  Windows ICO files should be automatically converted to OS/2 icons, or
To solve this problem, flexible ballistics should be supported via a customizable acceleration curve. The user would more or less 'pull' on the curve to create the acceleration they desire. A few standard configurations would be given for users that do not want to play with the curve.
  there should atleast be a utility included in OS/2 to allow turn the icons
  in to OS/2 ones. This is required for DOS software that comes with
  Windows icon files.


8.39  ALLOW DIRECT MODIFICATION OF INI FILES WITHOUT COPYING THEM
In additon, the user should be able to disable ballistic tracking for the mouse for those who prefer linear mouse tracking.


  Having to re-copy INI files to change them is terribly wasteful and
;8.20 Shell Window Closing
  should be corrected.
The WPS should not ask for confirmation to close a shell that is not running any software programs.


8.40  CONFIG.SYS SETTINGS SUPPORTED BY WPS OBJECTS
;8.21 Colour Palette Changes Icon Text Colour
Dragging a colour from the Colour Palette should change the icon text colour for that particular icon (or group of icons if more than 1 is selected).


  Program objects and folders should have a new settings page where the user
;8.22 Put Full Path in Directory Titlebar
  could specify settings such as environment variables (like the PATH).
When the user chooses a directory from the Drives object, the title bar of the directory window should contain the full path to the directory, and not just the directory's name. For example, it should say 'D:\MYDIR' instead of 'MYDIR'.
  This function would work hierarchically - opening a program in a folder on
  the Desktop would set the program's default environment to that of the
  Desktop, then any settings defined in the program's folder would be added
  and then any settings defined in the program's object would be added.


8.41  EXPAND THE SYSTEM SOUNDS
;8.23 Ability to Set Disk Labels From the Drive Object
The user should be able to change a disk label from the Drive object.


  The System Sounds should be an object attribute for every object,
;8.24 Add 'Change' Option to Right Mouse Button Menu
  available through a 'Sound' page in it's notebook.  It should have at
An option to 'Change' a view from one type to another (for example, from Tree to Icon view) should be added to the right mouse button menu. This would allow the user to see a different view of a window without the old view staying on the desktop.
  least two fields - open and close - in addition to any
  application-specific sounds. For example, the Shredder has a sound that
  is played when something is dropped on to it.  If a datafile associated
  with the program has different sound attributes, they will be used instead
  of the application defaults.  Only sounds that are specific to the WPS
  should be defined in the System Sounds object, such as warning messages.


;8.25 Tear-Off Menus
Tear-off menus were a rather interesting part of the OS/2 2.0 betas, and unfortunately were left out of the final product to ensure compatibility with all existing applications. It would be nice if IBM could resolve the compatibility problems and return the tear-off menus to OS/2.


==9.0  SHELLS==
;8.26 Simplify 'Find' Page
The notebook 'FIND' page is much too complicated. It should be replaced with a simple file dialog (slightly modified to handle the WPS).


A huge number of users prefer using the command line over any other method
;8.27 No Password for Screen Saver
of controlling the system, and yet it has not significantly evolved over the
The screen saver should not require a password in order to operate.
COMMAND.COM from DOS.  The following are wishes related to OS/2's shell
(CMD.EXE) designed to remedy this oversight.


9.1  SCROLL-BACK BUFFER FOR ALL SHELLS
;8.28 Additions to the WPS Shutdown Function
Two additions are preposed to the WPS shutdown function. First, there should be an option (in the dialog asking to shut down) to automatically reboot the machine after shutdown. Second, there should be an option to unconditionally close all running programs, without asking for the user's consent.


  A scroll-back buffer of user-definable size should be available for all
;8.29 'Clean Desktop' Function in the Desktop Menu
  shells, be it full screen or windowed, DOS or OS/2.
A 'Clean Desktop' function should be added to the desktop menu (the one that appears with the right mouse button). This function would minimize all open windows.


9.2  SUPPORT WILDCARD EXPANSION IN THE SHELL
;8.30 'Accessing Disk' Notice
The initial disk access in the WPS (especially for floppies) can take some time. A message indicating that the system is, in fact, doing something should appear so the user is not left wondering what is happening.


  The OS/2 command shell (CMD.EXE) should provide wildcard expansion. For
;8.31 Hotkeys
  example, a user should be able to 'cd \desk*' to change in to '\desktop'.
It should be possible to create hotkeys to start applications from the WPS. For example, the user could design the system such that ALT-1 starts a communications package, ALT-2 starts a word processor, etc.
  As another example, 'copy' would copy all the files in the wildcard
  expansion in to the last file given on the command line.  Therefore, 'copy
  \mydir\* .' would copy all files in '\mydir' in to the current directory.


  To ensure that such a change would be safe for the user, commands such as
;8.32 A Way to Use the PTR Files Created With the Icon Editor
  'copy' would be modified to complain if a file will be overwritten.  A
While the user can create pointers using the icon editor, there is no way for the user to make any use of them. The user should be able to use these new pointers, if no where else but the WPS. All pointers used in the WPS should be configurable, from the standard pointer to the 'lock' in the screen saver. In addition, it should be possible to return to the default pointers.
  command line switch would override this.


  The addition of shell wildcard expansion will also simplify application
;8.33 Modify Tree View to Allow the User to More Sub-Levels
  development as well, as each piece of software does not need to have its
When opening a sub-level in a window's Tree View, the parent of this branch should be moved to the top of the window to allow the user to see more of the sub-levels. It is obvious that the user wants to see what is in the sub-levels and the WPS should reflect this.
  own wildcard expansion routines.


9.3  COMMAND ALIASES IN CMD.EXE
;8.34 Set the Default Start Size, Position of an Object
It should be possible to set a default start size and position at the object level rather than at a program level. This would allow the user to individually set the start size and position of one shell window object without affecting any other shell window object.


  The OS/2 command shell (CMD.EXE) should support command aliases. This
;8.35 Ability to Turn Off Any of the Options in the Right Mouse Button Menu
  allows users to alias a complex or cumbersome command with a short, simple
The user should be able to turn off any of the options in the right mouse button menu in the WPS. This would allow the user to turn off such functions as 'Arrange', which can be hazardous to a carefully designed desktop.
  name.  Aliases should be executed before any internal commands.


9.4  JUMP-SCROLLING FOR SHELL WINDOWS
;8.36 Colourful Icons
The default icon set in OS/2 is a bit bland and unappealing. A splash of colour would really improve the looks of the WPS.


  Windows currently scroll too slowly - jump-scrolling, whereby only what
;8.37 Background Colour on Icon Text
  can be put to the screen in a reasonable amount of time is shown, would
Icon text should have the background colour underneath in order to be able to see the text with some bitmaps.
  improve performance dramatically.


9.5  RESIZABLE SHELL WINDOWS
;8.38 Automatic Conversion of Windows ICO Files to OS/2 Icons
Windows ICO files should be automatically converted to OS/2 icons, or there should at least be a utility included in OS/2 to allow turn the icons in to OS/2 ones. This is required for DOS software that comes with Windows icon files.


  Being limited to fixed resolutions (80x??) is an unnecessary limitation
;8.39 Allow Direct Modification of INI Files Without Copying Them
  for shell windows.  They should be changed to be dynamically resizable -
Having to re-copy INI files to change them is terribly wasteful and should be corrected.
  simply pull on the resizing borders to resize the screen.  During the
  process, the title bar could change to show the current resolution.


9.6  RESIZABLE FONT FOR SHELL WINDOWS
;8.40 CONFIG.SYS Settings Supported by WPS Objects
Program objects and folders should have a new settings page where the user could specify settings such as environment variables (like the PATH). This function would work hierarchically - opening a program in a folder on the Desktop would set the program's default environment to that of the Desktop, then any settings defined in the program's folder would be added and then any settings defined in the program's object would be added.


  Similar to having dynamically resizable shell window resolutions, there
;8.41 Expand the System Sounds
  should be dynamically resizable font sizes. The amount of text that could
The System Sounds should be an object attribute for every object, available through a 'Sound' page in it's notebook. It should have at least two fields - open and close - in addition to any application-specific sounds. For example, the Shredder has a sound that is played when something is dropped on to it. If a datafile associated with the program has different sound attributes, they will be used instead of the application defaults. Only sounds that are specific to the WPS should be defined in the System Sounds object, such as warning messages.
  be shown a one time in the window remains constant, but the font size is
  changed (using the resize borders).  This should be an option in the
  titlebar menu and not default behaviour.


9.9  RESIZABLE FONT FOR SHELL WINDOWS
==9.0 Shells==
A huge number of users prefer using the command line over any other method of controlling the system, and yet it has not significantly evolved over the COMMAND.COM from DOS. The following are wishes related to OS/2's shell (CMD.EXE) designed to remedy this oversight.


  Similar to having dynamically resizable shell window resolutions, there
;9.1 Scroll-Back Buffer for All Shells
  should be dynamically resizable font sizes.  The amount of text that could
A scroll-back buffer of user-definable size should be available for all shells, be it full screen or windowed, DOS or OS/2.
  be shown a one time in the window remains constant, but the font size is
  changed (using the resize borders).  This should be an option in the
  titlebar menu and not default behaviour.


9.10  ANY FONT IN SHELL WINDOWS
;9.2 Support Wildcard Expansion in the Shell
The OS/2 command shell (CMD.EXE) should provide wildcard expansion. For example, a user should be able to 'cd \desk*' to change in to '\desktop'. As another example, 'copy' would copy all the files in the wildcard expansion in to the last file given on the command line. Therefore, 'copy \mydir\* .' would copy all files in '\mydir' in to the current directory.


  Any font, be it bitmapped or an Adobe Type 1, should be available in shell
To ensure that such a change would be safe for the user, commands such as 'copy' would be modified to complain if a file will be overwritten. A command line switch would override this.
  windows.


9.11  EXTENSIONS TO THE DIR COMMAND
The addition of shell wildcard expansion will also simplify application development as well, as each piece of software does not need to have its own wildcard expansion routines.
  The DIR command should optionally:
    - show the .COMMENT extended attribute
    - show the number of HPFS extents used by a file


9.12  VERBOSE COPY/MOVE/DEL FOR SHELLS
;9.3 Command Aliases in CMD.EXE
The OS/2 command shell (CMD.EXE) should support command aliases. This allows users to alias a complex or cumbersome command with a short, simple name. Aliases should be executed before any internal commands.


  The copy/move/del etc. commands should, by default, show each file being
;9.4 Jump-Scrolling for Shell Windows
  processed.  An option to process quietly ('/Q' perhaps) should be
Windows currently scroll too slowly - jump-scrolling, whereby only what can be put to the screen in a reasonable amount of time is shown, would improve performance dramatically.
  available for those not interested in seeing each file being processed.


9.13  CD WITH A DRIVE CHANGES CURRENT DRIVE (see 9.3)
;9.5 Resizeable Shell Windows
Being limited to fixed resolutions (80x??) is an unnecessary limitation for shell windows. They should be changed to be dynamically resizeable - simply pull on the resizing borders to resize the screen. During the process, the title bar could change to show the current resolution.


  In a shell, using 'CD' with a drive (ie: 'CD D:\MYDIR') changes the
;9.6 Resizeable Font for Shell Windows
  the current directory of the 'D:' drive to '\MYDIR', but does not move
Similar to having dynamically resizeable shell window resolutions, there should be dynamically resizeable font sizes. The amount of text that could be shown a one time in the window remains constant, but the font size is changed (using the resize borders). This should be an option in the titlebar menu and not default behaviour.
  the user to 'D:'.  A new command to move the user to the new drive (for
  example, 'chddir' or 'cdd' for a short form) should be created to allow
  users to use the old method while allowing them to take advantage of the
  new one.  If aliases are added to CMD.EXE, the user could opt to alias
  'cdd' to 'cd' to always change the drive when changing directories.


9.14  ADDITIONS TO SHELL COMMAND HISTORY FUNCTIONS
;9.9 Resizeable Font for Shell Windows
Similar to having dynamically resizeable shell window resolutions, there should be dynamically resizeable font sizes. The amount of text that could be shown a one time in the window remains constant, but the font size is changed (using the resize borders). This should be an option in the titlebar menu and not default behaviour.


  Pressing 'PAGE UP' in a shell should print out the complete
;9.10 Any Font in Shell Windows
  available command history.
Any font, be it bitmapped or an Adobe Type 1, should be available in shell windows.


  If the user uses the new 'PAGE UP' function or the 'UP' and 'DOWN'
;9.11 Extensions to the DIR Command
  arrows when there is already a command partially entered on the command
The DIR command should optionally:
  line, the shell should try to match the first part of the command with
* show the .COMMENT extended attribute
  something in the history.  'PAGE UP' would show all items in the  history
* show the number of HPFS extents used by a file
  that start with the partial command, and 'UP' and 'DOWN' would move to
  the next match. Partially completed commands should be matched up to the
  current cursor position only.  If there are no matches, the system moves
  forward or backward as usual and 'PAGE UP' returns 'No Matches'.  In order
  to implement this feature, OS/2's shell will have to stop moving the
  cursor position to the end of the line after searching in the command
  history.


9.15  ALLOW OPTIONAL ANSI KEY REMAPPING WITH COMMAND HISTORY ENABLED
;9.12 Verbose Copy/Move/Del for Shells
The copy/move/del etc. commands should, by default, show each file being processed. An option to process quietly ('/Q' perhaps) should be available for those not interested in seeing each file being processed.


  It is undesirable to have OS/2 only allow either ANSI key remapping or
;9.13 CD With a Drive Changes Current Drive (see 9.3)
  command history for shells.  This is an unnecessary limitation and should
In a shell, using 'CD' with a drive (ie: 'CD D:\MYDIR') changes the current directory of the 'D:' drive to '\MYDIR', but does not move the user to 'D:'. A new command to move the user to the new drive (for example, 'chddir' or 'cdd' for a short form) should be created to allow users to use the old method while allowing them to take advantage of the new one. If aliases are added to CMD.EXE, the user could opt to alias 'cdd' to 'cd' to always change the drive when changing directories.
  be removed.


9.16  FILENAME COMPLETION IN SHELLS
;9.14 Additions to Shell Command History Functions
Pressing 'PAGE UP' in a shell should print out the complete available command history.


  Pressing 'TAB' while entering a path in a shell would try to perform
If the user uses the new 'PAGE UP' function or the 'UP' and 'DOWN' arrows when there is already a command partially entered on the command line, the shell should try to match the first part of the command with something in the history. 'PAGE UP' would show all items in the history that start with the partial command, and 'UP' and 'DOWN' would move to the next match. Partially completed commands should be matched up to the current cursor position only. If there are no matches, the system moves forward or backward as usual and 'PAGE UP' returns 'No Matches'. In order to implement this feature, OS/2's shell will have to stop moving the cursor position to the end of the line after searching in the command history.
  'filename completion', that is, fully resolve the path. The first 'TAB'
  would find the first match for the partial command; subsequent 'TAB's
  would cycle through the items that match, until it runs out of matches at
  which point it restarts at the beginning.


9.17  LICENSE 4OS2 FROM JPL SOFTWARE AS OS/2'S DEFAULT SHELL
;9.15 Allow Optional ANSI Key Remapping With Command History Enabled
It is undesirable to have OS/2 only allow either ANSI key remapping or command history for shells. This is an unnecessary limitation and should be removed.


  Most of the shell wishes could be easily solved by replacing OS/2's
;9.16 Filename Completion in Shells
  command shell 4OS/2 by JPL Software.
Pressing 'TAB' while entering a path in a shell would try to perform 'filename completion', that is, fully resolve the path. The first 'TAB' would find the first match for the partial command; subsequent 'TAB's would cycle through the items that match, until it runs out of matches at which point it restarts at the beginning.


9.18  FIX THE HANDLING OF '*' AND '.' IN A SHELL
;9.17 License 4OS2 From JPL Software as OS/2's Default Shell
Most of the shell wishes could be easily solved by replacing OS/2's command shell 4OS/2 by JPL Software.


  The current handling of '*' and '.' in a shell are terribly outdated,
;9.18 Fix the Handling of '*' and '.' in a Shell
  being remnants of the old FAT filesystem. The following is how they
The current handling of '*' and '.' in a shell are terribly outdated, being remnants of the old FAT filesystem. The following is how they should be interpreted.
  should be interpreted.
'*' = select all files
'*.' = select files ending in a '.'
'.*' = select files starting with a '.'
'myprog' = execute a program named 'myprog'
'myprog.' = execute a program named 'myprog.'
Not that it is not acceptable for '*' to equal '*.' and for a program named 'myprog' (no extension, as they are not required with free-form filenames) to only run when it is started as 'myprog.'


  '*' = select all files
;9.19 Change When Internal Shell Commands Are Executed
  '*.' = select files ending in a '.'
Internal shell commands (like copy, del) should only be executed after searching the path for the program. This would allow people to replace the default commands with their own versions.
  '.*' = select files starting with a '.'
  'myprog' = execute a program named 'myprog'
  'myprog.' = execute a program named 'myprog.'


  Not that it is not acceptable for '*' to equal '*.' and for a program
;9.20 PROFILE.CMD to Store Commands to Run for OS/2 Shells
  named 'myprog' (no extension, as they are not required with free-form
A program, PROFILE.CMD, should be run every time a shell is opened. It would contain all environment variables (rather than having them in the config.sys) so that they can be easily changed without rebooting the machine.
  filenames) to only run when it is started as 'myprog.'


9.19  CHANGE WHEN INTERNAL SHELL COMMANDS ARE EXECUTED
;9.21 Fix Return to Parent Process for Spawned Tasks
When returning from a spawned process (for example, the 'HELP' program, which starts up the system help in another task), control should return to the shell and not to the WPS.


  Internal shell commands (like copy, del) should only be executed after
;9.22 Allow the User to Drop Fonts on to Shell Windows
  searching the path for the program.  This would allow people to replace
Instead of having to go in to the titlebar menu to change the font, the user should be able to drop any font from the Font Palette on to a shell window (be it DOS or OS/2).
  the default commands with their own versions.


9.20  PROFILE.CMD TO STORE COMMANDS TO RUN FOR OS/2 SHELLS
;9.23 Plug-and-Play Shell
Implementing some of the proposed changes to the shell will no doubt cause third party vendors to worry (as they must provide the same level of functionality to make sales) and possibly users, who may be uncomfortable with the changes. Thus, it is proposed that IBM turn CMD.EXE in to a bunch of DLLs, linked together through a single interface, CMD.EXE. In effect, CMD.EXE would be just a dispatch system - sending out the work to DLLs. This would allow users to make custom shells to suit their needs by plugging in different DLLs, and would allow shareware authors and commercial vendors to use IBM's technology as a stepping stone for their own products.


  A program, PROFILE.CMD, should be run every time a shell is opened. It
;9.24 Single Command Line
  would contain all environment variables (rather than having them in the
A single command line should be created to allow users to execute OS/2 and DOS software from the same command line. A similar scheme as available right now for specifying DOS configuration could be used (as part of the shell options), and the extended attributes could hold specific configuration options for DOS applications. This would also allow IBM to remove the entire set of DOS utilities as a DOS program could not tell whether an application was DOS or OS/2, allowing seamless integration of the two operating systems.
  config.sys) so that they can be easily changed without rebooting the
  machine.


9.21  FIX RETURN TO PARENT PROCESS FOR SPAWNED TASKS
;9.26 Move Should Work Across Devices
The MOVE command should work across devices - this means it would have to do something like copy and then delete the files. When MOVE is used on a directory, it should move the entire contents of the directory across to the destination drive.


  When returning from a spawned process (for example, the 'HELP' program,
==10.0 Multimedia==
  which starts up the system help in another task), control should return to
One of OS/2's best features is the MMPM/2; the following are suggestions for making it even better.
  the shell and not to the WPS.


9.22  ALLOW THE USER TO DROP FONTS ON TO SHELL WINDOWS
;10.1 Support More Video Formats
Support for the following additional formats should be provided by the Software Motion Video extension:
* MPEG-I
* MPEG-II (when finalized)
* FLI
* FLC
* Video for Windows 1.0 AVI
* Video for Windows 2
* Indeo 3
* QuickTime


  Instead of having to go in to the titlebar menu to change the font, the
;10.2 'Loop Feature'
  user should be able to drop any font from the Font Palette on to a shell
A feature to continuously loop a video clip or sound file (MIDI or Digital Audio) should be provided.
  window (be it DOS or OS/2).


9.23  PLUG-AND-PLAY SHELL
;10.3 Update the OS/2 CD-ROM Videos
Each full release of OS/2 should come with a totally new set of videos. They should emphasize human interaction, wild technology and something that could be used as an in-store demo (an introduction to OS/2, perhaps) or something that uses the word 'OS/2' in a way that makes the user think about it.


  Implementing some of the proposed changes to the shell will no doubt cause
;10.4 Support for Mode Audio Formats
  third party vendors to worry (as they must provide the same level of
Support for the following additional formats should be provided by Digital Audio player:
  functionality to make sales) and possibly users, who may be uncomfortable
* AU
  with the changes.  Thus, it is proposed that IBM turn CMD.EXE in to a
* SND
  bunch of DLLs, linked together through a single interface, CMD.EXE.  In
* VOC
  effect, CMD.EXE would be just a dispatch system - sending out the work to
* Compressed WAV
  DLLs.  This would allow users to make custom shells to suit their needs
  by plugging in different DLLs, and would allow shareware authors and
  commercial vendors to use IBM's technology as a stepping stone for their
  own products.


9.24  SINGLE COMMAND LINE
;10.5 Add DSP Support
Support for DSP boards, such as the IBM MWave, should be added to the MMPM/2 to offload the CPU from such tasks as graphics manipulation, voice recognition, text-to-speech, audio compression and video playback.


  A single command line should be created to allow users to execute OS/2 and
;10.6 MPU-401 Support
  DOS software from the same command line.  A similar scheme as available
The MPU-401 is the standard for MIDI interfaces, yet it is not supported by the MMPM/2. MPU-401 support is essential for those who with to use OS/2 as a music creation platform and support must be provided for these users.
  right now for specifying DOS configuration could be used (as part of the
  shell options), and the extended attributes could hold specific
  configuration options for DOS applications.  This would also allow IBM to
  remove the entire set of DOS utilities as a DOS program could not tell
  whether an application was DOS or OS/2, allowing seamless integration of
  the two operating systems.


9.26  MOVE SHOULD WORK ACROSS DEVICES
==11.0 Utilities==
The following are suggestions for changes to existing OS/2 utilities and suggestions for additional utilities.


  The MOVE command should work across devices - this means it would have to
;11.1 Controlling Process Priority
  do something like copy and then delete the files. When MOVE is used on a
Command line utilities for setting process priority should be available.
  directory, it should move the entire contents of the directory across to
  the destination drive.


==10.0  MULTIMEDIA==
;11.2 List/Kill Process Commands
As part of the base operating system, a command to kill processes must be provided. There must be some means to kill off a program that has gone awry quickly and simply. In addition, to become useful to the average user, 'pstat' must be simplified. It is recommended that, by default, 'pstat' should show only the base amount of information (i.e.: PID of the main thread and the program command line).


One of OS/2's best features is the MMPM/2; the following are suggestions for
;11.3 Shutdown Utility
making it even better.
There must be a utility to shutdown from the command line. By default, it should ask to confirm whether to shutdown the machine or not, but there should be a command line option to unconditionally shutdown. In addition, it should have the ability to reboot the machine automatically at the end of a shutdown. This could then be called by remote users (say, on a
network) who could reboot a troubled machine without having to go down to the system.


10.1  SUPPORT MORE VIDEO FORMATS
;11.4 Defragmentation Utility
It is unacceptable to have to boot DOS in order to defragment a FAT partition - especially when many DOS defrag utilities mutilate extended attributes. A defrag utility for HPFS would be good as well.


  Support for the following additional formats should be provided by the
;11.5 Syncing Up DOS and OS/2 Utility Functions
  Software Motion Video extension:
All command-line utilities, such as DIR and FORMAT, should have the same functionality as those included with IBM DOS 6.1. This means the same command line options and the same behaviour (for example, COPY should ask before overwriting an existing file, FORMAT should be able to QuickFormat, etc.) Whether OS/2's way of doing things or DOS's way of doing this is chosen, they should both be the same for compatibility and consistency across platforms.


  - MPEG-I
;11.6 Utility for Finding the Owner of a Resource
  - MPEG-II (when finalized)
There should be a utility to show the program and process ID of the owner of a particular system resource, be it a pipe, queue, device, file, drive or any other system resource. For example, assuming the program was called 'OWNER.EXE', the user could type 'OWNER \PIPE\MYPIPE' and find out that it is owned by 'MYPROGRAM' running at PID 135, along with any other useful information.
  - FLI
  - FLC
  - Video for Windows 1.0 AVI
  - Video for Windows 2
  - Indeo 3
  - QuickTime


10.2  'LOOP FEATURE'
;11.7 Migration Database Maintenance
Included in the Migrate program should be a method for updating the database to change settings as well as adding and deleting programs.


  A feature to continuously loop a video clip or sound file (MIDI or Digital
;11.8 New 'MORE' Utility
  Audio) should be provided.
The OS/2 'more' utility is showing its age and should be replaced with a faster and more feature-packed version. It should be able to get a filename to read from the command line (ie: you should be able to type 'more myfile'), it should NEVER scroll when showing a full page (should clear the screen and show the full page), should have forward and backward movement using 'UP' and 'DOWN' arrows for moving single lines and 'PAGE UP' and 'PAGE DOWN' for moving entire pages. 'SPACE' would move forward 1 page, 'RETURN' would move forward 1 line. It must have some kind of search capabilities.


10.3  UPDATE THE OS/2 CD-ROM VIDEOS
;11.10 Text-Mode Editor
A text editor that can be used when booting from floppies must be included for emergency measures. I recommend using the same editor that comes with IBM DOS 6.1 which is based on TinyEd, an IBM EWS product.


  Each full release of OS/2 should come with a totally new set of videos.
;11.11 Subdirectory Recursion for File Commands
  They should emphasize human interaction, wild technology and something
All file commands modification, such as 'ATTRIB', 'DEL' and 'COPY' should have an option to recurse subdirectories. The switch '-r' is recommended for enabling the recursion option.
  that could be used as an in-store demo (an introduction to OS/2, perhaps)
  or something that uses the word 'OS/2' in a way that makes the user think
  about it.


10.4  SUPPORT FOR MODE AUDIO FORMATS
;11.12 Program Scheduler
Include a program to schedule programs to start at different times during the day, allowing support for starting programs at any minute, hour, day of the week, day of the month and month. While it is understood that the ALARM applet can do it, ALARM is not really designed as a task scheduler, and furthermore is probably overlooked by many users because it is quirky to use.


  Support for the following additional formats should be provided by Digital
;11.14 Distribution of Migrate Database
  Audio player:
Assuming IBM periodically updates the migration database (which it should if it does not right now), it should be posted to the IBM BBS as well as to the Internet regularly.


  - AU
;11.15 FDISK Should Not Require a Reboot
  - SND
Changing drive tables should not require a reboot. Any drive that is no longer available should simply disappear, leaving other drives available for use.
  - VOC
  - Compressed WAV


10.5  ADD DSP SUPPORT
;11.16 ATTRIB for Directories
ATTRIB should work on directories in addition to files.


  Support for DSP boards, such as the IBM MWave, should be added to the
;11.17 Migrate Utility Should Remember What It Has Migrated
  MMPM/2 to offload the CPU from such tasks as graphics manipulation,
The Migrate utility should remember what it has migrated and by default not show any applications that have already been migrated in the lists of found applications. An option to 'Show All' would allow the user to select programs that have been installed before.
  voice recognition, text-to-speech, audio compression and video playback.


10.6  MPU-401 SUPPORT
==12.0 DOS==
One of the benefits of OS/2 over any other operating system is its ability to run both existing applications as well as the newer, faster and more functional OS/2 ones. The following are suggestions to keep OS/2's DOS support on the cutting edge.


  The MPU-401 is the standard for MIDI interfaces, yet it is not supported
;12.1 Update DOS Code
  by the MMPM/2. MPU-401 support is essential for those who with to use
OS/2's DOS code should updated to IBM DOS 6.1 or higher and should include full DPMI 1.0 support.
  OS/2 as a music creation platform and support must be provided for these
  users.


==11.0  UTILITIES==
;12.2 Automatic Truncation to 8.3 Filenames in DOS/Windows Applications
Currently, OS/2 will only show filenames that are 8.3-compatible in a DOS/Windows session, which is an extreme problem for those of us with HPFS drives and like to use the long filename feature to its full potential.


The following are suggestions for changes to existing OS/2 utilities and
;12.4 Better SVGA in DOS Windows Support
suggestions for additional utilities.
OS/2 needs better SVGA support for DOS window sessions. All resolutions supported by a card should be available for windows. As long as a window would not cover more area than available on the desktop it should be shown (or perhaps a method for 'squishing' the windows to make them fit on the desktop could be developed).


11.1 CONTROLLING PROCESS PRIORITY
;12.5 DOS Wildcard Expansion
DOS wildcard expansion should be changed to act exactly as in IBM DOS 6.1.


  Command line utilities for setting process priority should be available.
;12.6 HPFS Device Driver
Create a device driver to seamlessly handle HPFS disks when booting from real DOS and offer to include it in a user's DOS CONFIG.SYS, if present.


11.2 LIST/KILL PROCESS COMMANDS
;12.7 Allow SETBOOT /IBD:X to be Run From DOS
Having this command would allow the user to boot OS/2 from DOS without having to go through the Boot Manager.


  As part of the base operating system, a command to kill processes must be
;12.8 Use Extended Attributes to Store DOS Config Info (see 9.24)
  provided.  There must be some means to kill off a program that has gone
The extended attributes would store a list of device drivers and environment settings (like EMS, XMS, priorities, etc) for a DOS program, so that any time the program is run its specific configuration is enabled. This moves the dependence on configuration information from the shell to the application, where it belongs in the first place.
  awry quickly and simply.  In addition, to become useful to the average
  user, 'pstat' must be simplified.  It is recommended that, by default,
  'pstat' should show only the base amount of information (ie: PID of the
  main thread and the program command line).


11.3  SHUTDOWN UTILITY
;12.9 Drag-and-Drop DOS Settings
It should be possible to drag the DOS settings from one program to another. This would greatly simplify the configuration of DOS programs.


  There must be a utility to shutdown from the command line. By default,
;12.10 Make DOS-Related Files Less Intrusive
  it should ask to confirm whether to shutdown the machine or not, but there
Move all DOS-related files to the \OS2\MDOS directory, like AUTOEXEC.BAT, etc. so that they do not clutter up the root directory.
  should be a command line option to unconditionally shutdown. In addition,
  it should have the ability to reboot the machine automatically at the end
  of a shutdown. This could then be called by remote users (say, on a
  network) who could reboot a troubled machine without having to go down to
  the system.


11.4  DEFRAGMENTATION UTILITY
==13.0 WIN-OS/2==
Everyone said IBM could never get Windows to run under OS/2, and yet they did and it runs amazingly under most configurations. To enhance IBM's support for Windows, the following wishes were made.


  It is unacceptable to have to boot DOS in order to defragment a FAT
;13.1 Win32S Support for WINOS/2
  partition - especially when many DOS defrag utilities mutilate extended
Win32s support should be included as part of the base system to allow users to run such applications as MathCad 4.0. This also means full VXD support should be available.
  attributes. A defrag utility for HPFS would be good as well.


11.5  SYNCING UP DOS AND OS/2 UTILITY FUNCTIONS
;13.2 Simple Way to Install WIN-OS/2 Fullscreen Drivers
Provide an easy way to change the Win-OS/2 FS device drivers to the manufacturers accelerated ones. One of the biggest problems with Win-OS/2 is the slow FS performance. This turns off many people moving from Windows. Including the video card manufacturers accelerated drivers with an option to install them as the FS ones would help improve this perception.


  All command-line utilities, such as DIR and FORMAT, should have the same
;13.3 Allow OS/2 for Windows Support in Standard OS/2
  functionality as those included with IBM DOS 6.1. This means the same
The standard OS/2 distribution should be able to perform the same magic that OS/2 for Windows can when it comes to starting Windows. This means that a user should be able to use the Windows already on their drive instead of having to install WinOS/2 - even if the user bought the standard OS/2.
  command line options and the same behaviour (for example, COPY should ask
  before overwriting an existing file, FORMAT should be able to QuickFormat,
  etc.)  Whether OS/2's way of doing things or DOS's way of doing this is
  chosen, they should both be the same for compatibility and consistency
  across platforms.


11.6  UTILITY FOR FINDING THE OWNER OF A RESOURCE
;13.4 Support Windows for Workgroups 3.11
IBM should support the enhancements brought by Windows for Workgroups 3.11, such as the enhanced file system routines. While it is debatable as to the need for full Windows for Workgroups support (meaning the networking functionality), the user should be able to run Windows for Workgroups using OS/2 for Windows' Windows technology.


  There should be a utility to show the program and process ID of the owner
==14.0 REXX==
  of a particular system resource, be it a pipe, queue, device, file, drive
REXX is one of the greatest features of OS/2 because of its simple way of allowing any user to write very powerful programs. The following are suggestions to make a good thing even better.
  or any other system resource. For example, assuming the program was
  called 'OWNER.EXE', the user could type 'OWNER \PIPE\MYPIPE' and find out
  that it is owned by 'MYPROGRAM' running at PID 135, along with any other
  useful information.


11.7  MIGRATION DATABASE MAINTENANCE
;14.1 Integration of REXX Queues with API Queues
Why must there be two separate queues in OS/2 - the system queues invoked using the API calls and the REXX queues? Would it not make more sense to have both use the same queues? The transmission between the API calls and REXX could be done using shared memory which is freed after the element is taken off the queue. All that would be passed through the queue would be the address to the shared memory segment. This would not only remove the confusion as to why there are two separate queues, but would allow the user to create very powerful yet simple software with REXX-based clients talking to a C-based server using queues.


  Included in the Migrate program should be a method for updating the
;14.2 More Integration of the WPS and REXX
  database to change settings as well as adding and deleting programs.
The ability to query and control objects is greatly needed in REXX. This means passing data to and from an object, as well as doing things like instantiating objects (for example, opening a WPS folder). Being able to query objects would make it much easier to document and compare object settings.


11.8  NEW 'MORE' UTILITY
;14.3 Process Control and Shutdown Commands for REXX
  The OS/2 'more' utility is showing its age and should be replaced with a
REXX should have commands to allow process control (starting new tasks, killing tasks, setting process priority) as well as a command to shutdown the system.
  faster and more feature-packed version.  It should be able to get a
  filename to read from the command line (ie: you should be able to type
  'more myfile'), it should NEVER scroll when showing a full page (should
  clear the screen and show the full page), should have forward and backward
  movement using 'UP' and 'DOWN' arrows for moving single lines and 'PAGE
  UP' and 'PAGE DOWN' for moving entire pages.  'SPACE' would move forward 1
  page, 'RETURN' would move forward 1 line.  It must have some kind of
  search capabilities.


11.10  TEXT-MODE EDITOR
;14.4 International Functions (see 5.3)
 
To implement the standard formats asked for in section 5.3, the REXX API must be expanded to handle the conversion of date, time, floating point and integer numbers, currency, etc. to and from string formats.
  A text editor that can be used when booting from floppies must be included
  for emergency measures. I recommend using the same editor that comes with
  IBM DOS 6.1 which is based on TinyEd, an IBM EWS product.
 
11.11  SUBDIRECTORY RECUSION FOR FILE COMMANDS
 
  All file commands modification, such as 'ATTRIB', 'DEL' and 'COPY' should
  have an option to recurse subdirectories.  The switch '-r' is recommended
  for enabling the recursion option.
 
11.12  PROGRAM SCHEDULER
 
  Include a program to schedule programs to start at different times during
  the day, allowing support for starting programs at any minute, hour, day
  of the week, day of the month and month.  While it is understood that the
  ALARM applet can do it, ALARM is not really designed as a task scheduler,
  and furthermore is probably overlooked by many users because it is quirky
  to use.
 
11.14  DISTRIBUTION OF MIGRATE DATABASE
 
  Assuming IBM periodically updates the migration database (which it should
  if it does not right now), it should be posted to the IBM BBS as well as
  to the Internet regularly.
 
11.15  FDISK SHOULD NOT REQUIRE A REBOOT
 
  Changing drive tables should not require a reboot.  Any drive that is no
  longer available should simply disappear, leaving other drives available
  for use.
 
11.16  ATTRIB FOR DIRECTORIES
 
  ATTRIB should work on directories in addition to files.
 
11.17  MIGRATE UTILITY SHOULD REMEMBER WHAT IT HAS MIGRATED
 
  The Migrate utility should remember what it has migrated and by default
  not show any applications that have already been migrated in the lists of
  found applications.  An option to 'Show All' would allow the user to
  select programs that have been installed before.
 
 
==12.0  DOS==
 
One of the benefits of OS/2 over any other operating system is its ability
to run both existing applications as well as the newer, faster and more
functional OS/2 ones.  The following are suggestions to keep OS/2's DOS
support on the cutting edge.
 
12.1  UPDATE DOS CODE
 
  OS/2's DOS code should updated to IBM DOS 6.1 or higher and should include
  full DPMI 1.0 support.
 
12.2  AUTOMATIC TRUNCATION TO 8.3 FILENAMES IN DOS/WINDOWS APPLICATIONS
 
  Currently, OS/2 will only show filenames that are 8.3-compatible in a
  DOS/Windows session, which is an extreme problem for those of us with HPFS
  drives and like to use the long filename feature to its full potential.
 
12.4  BETTER SVGA IN DOS WINDOWS SUPPORT
 
  OS/2 needs better SVGA support for DOS window sessions.  All resolutions
  supported by a card should be available for windows.  As long as a window
  would not cover more area than available on the desktop it should be shown
  (or perhaps a method for 'squishing' the windows to make them fit on the
  desktop could be developed).
 
12.5  DOS WILDCARD EXPANSION
 
  DOS wildcard expansion should be changed to act exactly as in IBM DOS 6.1.
 
12.6  HPFS DEVICE DRIVER
 
  Create a device driver to seemlessly handle HPFS disks when booting from
  real DOS and offer to include it in a user's DOS CONFIG.SYS, if present.
 
12.7  ALLOW SETBOOT /IBD:X TO BE RUN FROM DOS
 
  Having this command would allow the user to boot OS/2 from DOS without
  having to go through the Boot Manager.
 
12.8  USE EXTENDED ATTRIBUTES TO STORE DOS CONFIG INFO (see 9.24)
 
  The extended attributes would store a list of device drivers and
  environment settings (like EMS, XMS, priorities, etc) for a DOS program,
  so that any time the program is run it's specific configuration is
  enabled.  This moves the dependance on configuration information from the
  shell to the application, where it belongs in the first place.
 
12.9  DRAG-AND-DROP DOS SETTINGS
 
  It should be possible to drag the DOS settings from one program to another.
  This would greatly simplify the configuration of DOS programs.
 
12.10  MAKE DOS-RELATED FILES LESS INTRUSIVE
 
  Move all DOS-related files to the \OS2\MDOS directory, like AUTOEXEC.BAT,
  etc. so that they do not clutter up the root directory.
 
==13.0  WIN-OS/2==
 
Everyone said IBM could never get Windows to run under OS/2, and yet they
did and it runs amazingly under most configurations.  To enhance IBM's
support for Windows, the following wishes were made.
 
13.1  WIN32S SUPPORT FOR WINOS/2
 
  Win32s support should be included as part of the base system to allow
  users to run such applications as MathCad 4.0.  This also means full VXD
  support should be available.
 
13.2  SIMPLE WAY TO INSTALL WIN-OS/2 FULLSCREEN DRIVERS
 
  Provide an easy way to change the Win-OS/2 FS device drivers to
  the manufacturers accelerated ones. One of the biggest problems
  with Win-OS/2 is the slow FS performance. This turns off many
  people moving from Windows. Including the video card manufacturers
  accelerated drivers with an option to install them as the FS ones
  would help improve this perception.
 
13.3  ALLOW OS/2 FOR WINDOWS SUPPORT IN STANDARD OS/2
 
  The standard OS/2 distribution should be able to perform the same magic
  that OS/2 for Windows can when it comes to starting Windows.  This means
  that a user should be able to use the Windows already on their drive
  instead of having to install WinOS/2 - even if the user bought the
  standard OS/2.
 
13.4  SUPPORT WINDOWS FOR WORKGROUPS 3.11
 
  IBM should support the enhancements brought by Windows for Workgroups
  3.11, such as the enhanced file system routines.  While it is debatable as
  to the need for full Windows for Workgroups support (meaning the
  networking functionality), the user should be able to run Windows for
  Workgroups using OS/2 for Windows' Windows technology.
 
 
==14.0  REXX==
 
REXX is one of the greatest features of OS/2 because of its simple way of
allowing any user to write very powerful programs.  The following are
suggestions to make a good thing even better.
 
14.1  INTEGRATION OF REXX QUEUES WITH API QUEUES
 
  Why must there be two separate queues in OS/2 - the system queues invoked
  using the API calls and the REXX queues?  Would it not make more sense to
  have both use the same queues?  The transmission between the API calls and
  REXX could be done using shared memory which is freed after the element is
  taken off the queue.  All that would be passed through the queue would be
  the address to the shared memory segment.  This would not only remove the
  confusion as to why there are two separate queues, but would allow the
  user to create very powerful yet simple software with REXX-based clients
  talking to a C-based server using queues.
 
14.2  MORE INTEGRATION OF THE WPS AND REXX
 
  The ability to query and control objects is greatly needed in REXX.  This
  means passing data to and from an object, as well as doing things like
  instantiating objects (for example, opening a WPS folder).  Being able to
  query objects would make it much easier to document and compare object
  settings.
 
14.3  PROCESS CONTROL AND SHUTDOWN COMMANDS FOR REXX
 
  REXX should have commands to allow process control (starting new tasks,
  killing tasks, setting process priority) as well as a command to shutdown
  the system.
 
14.4 INTERNATIONAL FUNCTIONS (see 5.3)
 
  To implement the standard formats asked for in section 5.3, the REXX API
  must be expanded to handle the conversion of date, time, floating point
  and integer numbers, currency, etc. to and from string formats.
 
 
==15.0  API SET CHANGES==


==15.0 API Set Changes==
The following are requests for changes or additions to the OS/2 API set.
The following are requests for changes or additions to the OS/2 API set.


15.1 INTERNATIONAL FUNCTIONS (see 5.3)
;15.1 International Functions (see 5.3)
 
To implement the standard formats asked for in section 5.3, the OS/2 API must be expanded to handle the conversion of date, time, floating point and integer numbers, currency, etc. to and from string and number formats.
  To implement the standard formats asked for in section 5.3, the OS/2 API
  must be expanded to handle the conversion of date, time, floating point
  and integer numbers, currency, etc. to and from string and number
  formats.
 
15.2  APIS FOR ALL STANDARD SCSI FUNCTIONS
 
  OS/2's API function set should be expanded to include any standard SCSI
  device, such as CD-ROMs, scanners, tape drives, etc.
 
15.3  MAKE ALL APIS PUBLIC
 
  It is unacceptable for part of OS/2's API set to still be hidden away,
  forcing programmers to hack the libraries to find out how to use these
  functions.
 
15.4  ENHANCEMENTS TO DOSALLOCMEM
 
  Two new memory allocation types should be added for DosAllocMem.  The
  first is PAG_RESIDENT which would make the memory object from being paged
  out or discarded.  This would be helpful for those programs that need to
  have deterministic behaviour in order to maintain real-time I/O
  responsiveness in heavy workload situations.


  The second memory allocation type is PAG_DISCARDABLE which would allow
;15.2 APIs for ALL Standard SCSI Functions
  OS/2 to throw away the contents of pages of the object rather than paging
OS/2's API function set should be expanded to include any standard SCSI device, such as CD-ROMs, scanners, tape drives, etc.
  them out.  This would be useful for application-managed caches.  For
  example, DB2/2 could cache database information in a higher-level form
  than depending on file system caches.  Multimedia applications could cache
  recently used images or read-ahead data to improve responsiveness to the
  user.


  Two new exception type should be added to help applications using
;15.3 Make All APIs Public
  discardable memory to handle accessing pages that have been discarded. The
It is unacceptable for part of OS/2's API set to still be hidden away, forcing programmers to hack the libraries to find out how to use these functions.
  first exception could be named XCPT_PAGE_NOT_PRESENT and would be issued
  when an attempt to access a discarded page is made.  The default behaviour
  would be to terminate the application.


  The second exception type could be named XCPT_DISCARDING_PAGE and would be
;15.4 Enhancements to DosAllocMem
  issued whenever a range of discardable pages are being thrown out. This
Two new memory allocation types should be added for DosAllocMem. The first is PAG_RESIDENT which would make the memory object from being paged out or discarded. This would be helpful for those programs that need to have deterministic behaviour in order to maintain real-time I/O responsiveness in heavy workload situations.
  would help applications update status tables to reflect that pages have
  been discarded.  The default behaviour would be to ignore the exception
  and continue.


15.5  ENHANCEMENTS TO DOSQUERYMEM (see 15.4)
The second memory allocation type is PAG_DISCARDABLE which would allow OS/2 to throw away the contents of pages of the object rather than paging them out. This would be useful for application-managed caches. For example, DB2/2 could cache database information in a higher-level form than depending on file system caches. Multimedia applications could cache recently used images or read-ahead data to improve responsiveness to the user.


  DosQueryMem should be modified to be able to report resident and
Two new exception type should be added to help applications using discardable memory to handle accessing pages that have been discarded. The first exception could be named XCPT_PAGE_NOT_PRESENT and would be issued when an attempt to access a discarded page is made. The default behaviour would be to terminate the application.
  discardable page types and also to be able to report whether a discardable
  page is present (in RAM) or not present (it was discarded).


15.6  NEW API - DOSQUERYRESOURCESTATUS (see 15.4)
The second exception type could be named XCPT_DISCARDING_PAGE and would be issued whenever a range of discardable pages are being thrown out. This would help applications update status tables to reflect that pages have been discarded. The default behaviour would be to ignore the exception and continue.


  A new API call named DosQueryResourceStatus should return the amont of
;15.5 Enhancements to DosQueryMem (see 15.4)
  used and unused physical resources such as physical memory, virtual memory
DosQueryMem should be modified to be able to report resident and discardable page types and also to be able to report whether a discardable page is present (in RAM) or not present (it was discarded).
  and CPU time.  This would aid programs that maintain caches allocated with
  PAG_DISCARDABLE by giving them more informatino to decide how big to make
  discardable caches.


  The following is a proposed definition for DosQueryResourceStatus.
;15.6 New API - DosQueryResourceStatus (see 15.4)
A new API call named DosQueryResourceStatus should return the amount of used and unused physical resources such as physical memory, virtual memory and CPU time. This would aid programs that maintain caches allocated with PAG_DISCARDABLE by giving them more informatino to decide how big to make discardable caches.


The following is a proposed definition for DosQueryResourceStatus.
   APIRET  DosQueryResourceStatus( PID processID, RES_TYPE sourceType,
   APIRET  DosQueryResourceStatus( PID processID, RES_TYPE sourceType,
   RES_MEASURE  resourceMeasure, RES_UNIT resourceUnit, PULONG pResult );
   RES_MEASURE  resourceMeasure, RES_UNIT resourceUnit, PULONG pResult );
Line 1,550: Line 731:
   pResult - pointer to 32-bit unsigned integer to receive the result
   pResult - pointer to 32-bit unsigned integer to receive the result


==16.0 Productivity Folder==
OS/2's productivity folder should be one of the highlights of the operating system, and yet if the applications contained in it are rarely used. To remedy this problem, the following wishes should be taken in to consideration.


==16.0  PRODUCTIVITY FOLDER==
;16.1 Revamping the Productivity Folder
 
The productivity folder should not only be made up of useful applications, but should also be a reflection of what OS/2 is capable of. They should be technology statements. This means that the applications should be usable, should be SOM-based, support standards like OpenDoc when applicable, etc. They are often the first exposure a user has to OS/2 applications, and IBM should do everything possible to make sure it is a positive first step.
OS/2's productivity folder should be one of the highlights of the operating
system, and yet it the applications contained in it are rarely used.  To
remedy this problem, the following wishes should be taken in to
consideration.


16.1  REVAMPING THE PRODUCTIVITY FOLDER
;16.2 Provide Base Word Processing Abilities
  The productivity folder should not only be made up of useful applications,
A small word processor should be included with the operating system. It would have to support things like multiple fonts, bold, underline, etc. This might be a good way to show off OpenDoc.
  but should also be a reflection of what OS/2 is capable of. They should
  be technology statements.  This means that the applications should be
  usable, should be SOM-based, support standards like OpenDoc when
  applicable, etc. They are often the first exposure a user has to OS/2
  applications, and IBM should do everything possible to make sure it is a
  positive first step.


16.2  PROVIDE BASE WORD PROCESSING ABILITIES
;16.3 Update/Replace Softerm
  A small word processor should be included with the operating system. It
Softerm has been updated since the version that was included with OS/2 2.0, and yet OS/2 continues to ship with the same version. If it can't be updated, it should be replaced. The current Softerm is too difficult to use for most users.
  would have to support things like multiple fonts, bold, underline, etc.
  This might be a good way to show off OpenDoc.


16.3  UPDATE/REPLACE SOFTERM
==17.0 Installation and Configuration==
Installing OS/2 has been a horrible experience for many users; the following suggestions are designed to simplify the install procedures and make sure they work for everyone.


  Softerm has been updated since the version that was included with OS/2
;17.1 A Simple, Rock Solid Install Process
  2.0, and yet OS/2 continues to ship with the same version.  If it can't be
OS/2 has in the past had a reputation for a terrible install process. Whether many of the problems have been solved or not, the fact remains that many people still have problems, and even more people fear installing OS/2 in the first place because they have heard about the 'OS/2 Install Monster'.
  updated, it should be replaced.  The current Softerm is too difficult to
  use for most users.


In addition to just installing the operating system, the install program should do some initial hardware testing and provide useful feedback to the user about what to do to correct any problems. Things to be checked include:
* cache memory (works or not)
* change line in diskette drives
* proper operating of parallel port
and anything else that could cause problems for OS/2 down the line.


==17.0  INSTALLATION AND CONFIGURATION==
The text mode install program should contain stripped down versions of FDISK and FORMAT (perhaps in the form of DLLS) which would load and execute in the background while the user is reading installation notes.


Installing OS/2 has been a horrible experience for many users; the following
The PM part of the install should install the MMPM/2 and video drivers rather than forcing the user to install the MMPM/2 and extra video drivers after everything is installed.
suggestions are designed to simplify the install procedures and make sure
they work for everyone.


17.1  A SIMPLE, ROCK SOLID INSTALL PROCESS
;17.2 Recovery Floppy/Partition
OS/2 should allow the user to create a 'Recovery Disk', with only the code needed to get the particular installation of OS/2 up and running for correcting problems, replacing system files, etc. The user should be able to specify whether they want to make a recovery floppy or a recovery partition - the partition, in conjunction with Boot Manager, would allow a user to boot off hard drive to fix problems. Either way, these options would allow the system to boot much quicker than using the 2 install disks.


  OS/2 has in the past had a reputation for a terrible install process.
;17.3 Common Install/Uninstall Program
  Whether many of the problems have been solved or not, the fact remains
A single, common install and uninstall program should come with OS/2 and IBM should insist that all 3rd party vendors make use of it. This install program should even be used for the OS/2 installation. This install program would use CID scripts to perform the installation and would allow administrators to create their own scripts. The process for creating CID scripts would have to be documented to allow anyone to make their own scripts. Installation scripts would be processed hierarchically and the granularity of packages should go down to individual programs, for example:
  that many people still have problems, and even more people fear installing
* OS/2 Base System
  OS/2 in the first place because they have heard about the 'OS/2 Install
* Tools and Games
  Monster'.
* EPM
* Chess
* Multimedia
* Software Motion Video
* Video Drivers
If, for example, the user chose to install the Software Motion Video drivers, the MMPM/2 would be installed if it was not already installed, while uninstalling Tools and Games would remove EPM, Chess and everything else in the package.


  In addition to just installing the operating system, the install program
The installation process should support SOM object registration and CONFIG.SYS updating. Uninstalls should remove all traces of the program's existence, including entries in any system INI files (i.e.: OS2.INI).
  should do some initial hardware testing and provide useful feedback to
  the user about what to do to correct any problems. Things to be checked
  include:
    - cache memory (works or not)
    - change line in diskette drives
    - proper operating of parallel port
  and anything else that could cause problems for OS/2 down the line.


  The text mode install program should contain stripped down versions
;17.4 Support for Plug and Play ISA
  of FDISK and FORMAT (perhaps in the form of DLLS) which would load and
OS/2 should support the Plug and Play ISA specification by Microsoft and Intel to ensure simple installation and configuration of ISA bus cards.
  execute in the background while the user is reading installation notes.


  The PM part of the install should install the MMPM/2 and video drivers
;17.5 Progress Indicators
  rather than forcing the user to install the MMPM/2 and extra video
Any task that will take longer than 5 seconds to accomplish should have a progress indicator to assure the user that the system is, in fact, still functioning. These progress indicators should also be used during the boot process, showing loading device drivers etc.
  drivers after everything is installed.


17.2 RECOVERY FLOPPY/PARTITION
;17.6 Test If User Is Visually Impaired
The OS/2 install program should ask the user if they are visually impaired, perhaps along with a simple colour test. This would allow IBM to include one set of icons and schemes for the visually impaired and another set, a much more colourful one, for those who are not.


  OS/2 should allow the user to create a 'Recovery Disk', with only the code
;17.7 Neat Tips, Tricks and Other Interesting Information
  needed to get the particular installation of OS/2 up and running for
During the installation process, little banners showing nifty tips, tricks and other interesting information should appear, giving the user not only something to watch during a lengthy installation, but practical knowledge about an often unfamiliar system.
  correcting problems, replacing system files, etc.  The user should
  be able to specify whether they want to make a recovery floppy or a
  recovery partition - the partition, in conjunction with Boot Manager,
  would allow a user to boot off hard drive to fix problems.  Either way,
  these options would allow the system to boot much quicker than using the
  2 install disks.


17.3  COMMON INSTALL/UNINSTALL PROGRAM
==18.0 Documentation==
Some parts of OS/2 have not been documented very well or not at all. The following are suggestions of which parts should be included as on-line documentation or enhancements to existing documentation.


  A single, common install and uninstall program should come with OS/2 and
;18.1 On-line User Guide and Installation Guide
  IBM should insist that all 3rd party vendors make use of it.  This install
The provision of the 'User Guide' and 'Installation Guide' as INF files would be much appreciated.
  program should even be used for the OS/2 installation.  This install
  program would use CID scripts to perform the installation and would allow
  administrators to create their own scripts.  The process for creating CID
  scripts would have to be documented to allow anyone to make their own
  scripts. Installation scripts would be processed hierarchally and the
  granularity of packages should go down to individual programs, for
  example:


  - OS/2 Base System
;18.2 Make the OS/2 Technical Library Freely Available
    - Tools and Games
Releasing the complete IBM OS/2 Technical Library would be greatly appreciated by all OS/2 users. If this is not possible, at least the OS/2-specific parts should be released. This includes such items as the Redbooks. They are chocked full of useful information for any OS/2 user and would be put to good use by many people.
        - EPM
        - Chess
    - Multimedia
        - Software Motion Video
    - Video Drivers


  If, for example, the user chose to install the Software Motion Video
;18.3 An On-line, In-Depth Description of the CONFIG.SYS
  drivers, the MMPM/2 would be installed if it was not already installed,
There should be an on-line, in-depth description of the CONFIG.SYS consolidated in one INF file. This file should have descriptions of each and every valid command in the CONFIG.SYS, along with useful tips and recommendations.
  while uninstalling Tools and Games would remove EPM, Chess and everything
  else in the package.


  The installation process should support SOM object registration and
;18.4 Document Productivity Folder
  CONFIG.SYS updating.  Uninstalls should remove all traces of the program's
There is no documentation for the software included in the Productivity folder beyond the on-line help for each package. IBM should include some kind of user's guide for each program.
  existance, including entries in any system INI files (ie: OS2.INI).


17.4  SUPPORT FOR PLUG AND PLAY ISA
==19.0 Packages==
The following are packages that are not included in the base system and should be for future releases.


  OS/2 should support the Plug and Play ISA specification by Microsoft and
;19.1 Peer-to-Peer in Base System
  Intel to ensure simple installation and configuration of ISA bus cards.
The base OS/2 kit should include some sort of peer to peer networking as an option. Basic TCP/IP networking would be good for cross-platform networking.


17.5  PROGRESS INDICATORS
;19.2 Inclusion of EPM Sources (*.E) and ETPM Compiler
The EPM sources (*.E) and ETPM compiler should be included in the base operating system.


  Any task that will take longer than 5 seconds to accomplish should have a
;19.3 C2 Security in Base System
  progress indicator to assure the user that the system is, in fact, still
Optional C2 security should be available in the base system, complete with a file system to handle file permissions. Support for even higher levels of security would be great, as a separate product.
  functioning. These progress indicators should also be used during the
  boot process, showing loading device drivers etc.


17.6  TEST IF USER IS VISUALLY IMPAIRED
;19.4 Use the CD-ROM Version of OS/2 to Promote OS/2 Shareware
Only a small portion of the OS/2 CD-ROM is used. The remainder could be filled with the best OS/2 shareware, bitmaps, fonts, etc. Software should be initially tested for quality, but after that no restrictions should apply to who's software can appear, except that it must not be commercial. This will give a real boost to the OS/2 shareware industry while not treading on the toes of the commercial vendors.


  The OS/2 install program should ask the user if they are visually
;19.5 Provide a Separate OS/2 Software CD With OS/2 on CD-ROM
  impaired, perhaps along with a simple colour test. This would allow IBM
Ship each version of OS/2 on CD-ROM with an extra CD of vendor software. Each disk would contain fully featured OS/2 applications that work for a limited number of uses (say, 10 uses). After that, the application must be paid for (by using an 800 number). When ordering the application, the user receives a key to unlock that application so it can be used unlimited times, and the user would have the opportunity to order manuals etc. on the phone.
  to include one set of icons and schemes for the visually impaired and
  another set, a much more colourful one, for those who are not.


17.7  NEAT TIPS, TRICKS AND OTHER INTERESTING INFORMATION
;19.6 Include More EWS Programs in the Base Product
The IBM Employee Written Software collection is chocked full of really useful software. The entire EWS collection should be provided in the CD-ROM version. The floppy version should contain the most useful of the EWS programs - namely TinyEd, ExDesk, MSHELL/TSHELL, etc.


  During the installation process, little banners showing nifty tips, tricks
==20.0 CONFIG.SYS==
  and other interesting information should appear, giving the user not only
The CONFIG.SYS can be a mortal enemy for some users. It is difficult to update and often a little frightening to the novice user. The following are recommendations designed to solve that.
  something to watch during a lengthy installation, but practical knowledge
  about an often unfamiliar system.


;20.1 Multiple-Line CONFIG.SYS Entries
CONFIG.SYS entries should be allowed to span multiple lines to enhance readability and ease of editing the CONFIG.SYS with editors that can not handle the long lines. Entries that span multiple lines could, for example, be enclosed in double quotes ("") or the end of a line could be delimited with two pipes (||).


==18.0  DOCUMENTATION==
;20.2 Ability to Change LIBPATH Without Rebooting
Not being able to change the LIBPATH without rebooting is a real problem. The user should be able to change the LIBPATH that all new processes will inherit; existing processes will retain their existing LIBPATH.


Some parts of OS/2 have not been documented very well or not at all.  The
;20.3 SEPARATE CONFIGURATION INFO FROM DEVICE DRIVERS (see 9.20)
following are suggestions of which parts should be included as on-line
The only thing the CONFIG.SYS should hold is device drivers, and even then, only OS/2 device drivers. Putting configuration information (like the LIBPATH, environment variables) in to the CONFIG.SYS makes OS/2 a problem to reconfigure as the system needs to be rebooted for changes to take effect. Such configuration information should be kept in the PROFILE.CMD and executed for every OS/2 process that is started.
documentation or enhancements to existing documentation.
 
18.1  ON-LINE USER GUIDE AND INSTALLATION GUIDE
 
  The provision of the 'User Guide' and 'Installation Guide' as INF files
  would be much appreciated.
 
18.2  MAKE THE OS/2 TECHNICAL LIBRARY FREELY AVAILABLE
 
  Releasing the complete IBM OS/2 Technical Library would be greatly
  appreciated by all OS/2 users.  If this is not possible, at least the
  OS/2-specific parts should be released.  This includes such items as the
  Redbooks.  They are chocked full of useful information for any OS/2 user
  and would be put to good use by many people.
 
18.3  AN ON-LINE, IN-DEPTH DESCRIPTION OF THE CONFIG.SYS
 
  There should be an on-line, in-depth description of the CONFIG.SYS
  consolidated in one INF file.  This file should have descriptions of each
  and every valid command in the CONFIG.SYS, along with useful tips and
  recommendations.
 
18.4  DOCUMENT PRODUCTIVITY FOLDER
 
  There is no documentation for the software included in the Productivity
  folder beyond the on-line help for each package.  IBM should include some
  kind of user's guide for each program.
 
 
==19.0  PACKAGES==
 
The following are packages that are not included in the base system and
should be for future releases.
 
19.1  PEER-TO-PEER IN BASE SYSTEM
 
  The base OS/2 kit should include some sort of peer to peer networking as
  an option.  Basic TCP/IP networking would be good for cross-platform
  networking.
 
19.2  INCLUSION OF EPM SOURCES (*.E) AND ETPM COMPILER
 
  The EPM sources (*.E) and ETPM compiler should be included in the base
  operating system.
 
19.3  C2 SECURITY IN BASE SYSTEM
 
  Optional C2 security should be available in the base system, complete with
  a file system to handle file permissions.  Support for even higher levels
  of security would be great, as a separate product.
 
19.4  USE THE CD-ROM VERSION OF OS/2 TO PROMOTE OS/2 SHAREWARE
 
  Only a small portion of the OS/2 CD-ROM is used.  The remainder could be
  filled with the best OS/2 shareware, bitmaps, fonts, etc.  Software should
  be initially tested for quality, but after that no restrictions should
  apply to who's software can appear, except that it must not be commercial.
  This will give a real boost to the OS/2 shareware industry while not
  treading on the toes of the commercial vendors.
 
19.5  PROVIDE A SEPARATE OS/2 SOFTWARE CD WITH OS/2 ON CD-ROM
 
  Ship each version of OS/2 on CD-ROM with an extra CD of vendor software.
  Each disk would contain fully featured OS/2 applications that work for a
  limited number of uses (say, 10 uses).  After that, the application must
  be paid for (by using an 800 number).  When ordering the application, the
  user receives a key to unlock that application so it can be used unlimited
  times, and the user would have the opportunity to order manuals etc. on
  the phone.
 
19.6  INCLUDE MORE EWS PROGRAMS IN THE BASE PRODUCT
 
  The IBM Employee Written Software collection is chocked full of really
  useful software.  The entire EWS collection should be provided in the
  CD-ROM version.  The floppy version should contain the most useful of the
  EWS programs - namely TinyEd, ExDesk, MSHELL/TSHELL, etc.
 
 
==20.0  CONFIG.SYS==
 
The CONFIG.SYS can be a mortal enemy for some users.  It is difficult to
update and often a little frightening to the novice user.  The following are
recommendations designed to solve that.
 
20.1  MULTIPLE-LINE CONFIG.SYS ENTRIES
 
  CONFIG.SYS entries should be allowed to span multiple lines to enhance
  readability and ease of editing the CONFIG.SYS with editors that can not
  handle the long lines.  Entries that span multiple lines could, for
  example, be enclosed in double quotes ("") or the end of a line could be
  delimited with two pipes (||).
 
20.2  ABILITY TO CHANGE LIBPATH WITHOUT REBOOTING
 
  Not being able to change the LIBPATH without rebooting is a real problem.
  The user should be able to change the LIBPATH that all new processes will
  inherit; existing processes will retain their existing LIBPATH.
 
20.3 SEPARATE CONFIGURATION INFO FROM DEVICE DRIVERS (see 9.20)
 
  The only thing the CONFIG.SYS should hold is device drivers, and even
  then, only OS/2 device drivers. Putting configuration information (like
  the LIBPATH, environment variables) in to the CONFIG.SYS makes OS/2 a
  problem to reconfigure as the system needs to be rebooted for changes to
  take effect. Such configuration information should be kept in the
  PROFILE.CMD and executed for every OS/2 process that is started.
 
20.4  GET RID OF THE CONFIG.SYS


;20.4 Get Rid of the CONFIG.SYS
Of course, the real solution is to replace the CONFIG.SYS all together.
Of course, the real solution is to replace the CONFIG.SYS all together.


A folder called \STARTUP would be used to store the device drivers, installable file systems and programs that would normally be started from the CONFIG.SYS.There would be various possible times the driver
A folder called \STARTUP would be used to store the device drivers, installable file systems and programs that would normally be started from the CONFIG.SYS.There would be various possible times the driver could be loaded - for example, base-level support for hard drive controllers etc. would be loaded very early in the boot process while things like extra file systems would be started later on. The extended attributes for each file would contain the setting for when the driver would be started. The extended attributes would also contain any necessary command line options.
  could be loaded - for example, base-level support for hard drive
  controllers etc. would be loaded very early in the boot process while
  things like extra file systems would be started later on. The extended
  attributes for each file would contain the setting for when the driver
  would be started. The extended attributes would also contain any
  necessary command line options.
 
This directory would be managed by a WPS configuration object that would
allow users to do drag-and-drop configuration and set the boot order and
command line options for each program to be started.
 
20.5  PM CONFIG.SYS MANAGER (see 20.4)
 
  A PM CONFIG.SYS manager is required to help the user get their machine
  configured as they need it hassle-free until such time as it can be
  replaced by the WPS Configuration Manager.
 
20.6  SEPARATE DOS DEVICE DRIVERS FROM THE OS/2 CONFIG.SYS
 
  It is unnecessarily complex to have OS/2 device drivers included in the
  same file as DOS device drivers.  Another file should be used to hold DOS
  device drivers instead.  It would replace the DOS_DEVICE setting in the
  program settings for a DOS program; instead, only an option to specify a
  path to the file should be provided.  Any option that is allowable in a
  DOS CONFIG.SYS should be allowed in here; OS/2 can choose to ignore those
  that do not apply.
 
20.7  DRIVER CONFIGURATION DATABASE (see 20.4, 20.5)
 
  A database-based tool for configuring device drivers could be created to
  simplify their management.  The database would contain infomration on what
  swithes exist, what they do, which drivers must be loaded before this
  driver can be loaded, examples of use, etc.  A GUI utility would use this
  database to help the user edit the CONFIG.SYS.
 
20.8  SUPPORT FOR MULTIPLE CONFIGURATIONS
 
  Like DOS, OS/2 should support multiple configurations.  However, OS/2's
  multiple configuration support must be much simpler than DOS's.  One
  method of ensuring simplicity would be to look for files named CONFIG*.*
  in the root directory of the boot drive.  OS/2 would show a menu of all
  the CONFIG*.* files during boot up, with the default being CONFIG.SYS.
  The user can then select which configuration to start.
 
==21.0  HELP SYSTEM==
 
  When in trouble, the on-line help system is usually the only place to
  turn, so it should be easy to use and intuitive to use and reasonably well
  featured.  Unfortunately this isn't necessarily the case.  The following
  are suggestions on how to correct this.
 
21.1  ASSOCIATE VIEW.EXE WITH INF FILES


  Associating VIEW.EXE with INF files will make starting INF files from the
This directory would be managed by a WPS configuration object that would allow users to do drag-and-drop configuration and set the boot order and command line options for each program to be started.
  WPS much easier for the user.


21.2  SEARCH FEATURE SHOULD FIND PARTIAL MATCHES
;20.5 PM CONFIG.SYS Manager (see 20.4)
A PM CONFIG.SYS manager is required to help the user get their machine configured as they need it hassle-free until such time as it can be replaced by the WPS Configuration Manager.


  Searching for complete words can be a trial-and-error game if you don't
;20.6 Separate DOS Device Drivers from the OS/2 CONFIG.SYS
  know exactly what you are looking for.
It is unnecessarily complex to have OS/2 device drivers included in the same file as DOS device drivers. Another file should be used to hold DOS device drivers instead. It would replace the DOS_DEVICE setting in the program settings for a DOS program; instead, only an option to specify a path to the file should be provided. Any option that is allowable in a DOS CONFIG.SYS should be allowed in here; OS/2 can choose to ignore those that do not apply.


21.3  ALLOW PM-STYLE COPY FROM VIEW.EXE
;20.7 Driver Configuration Database (see 20.4, 20.5)
A database-based tool for configuring device drivers could be created to simplify their management. The database would contain infomration on what swithes exist, what they do, which drivers must be loaded before this driver can be loaded, examples of use, etc. A GUI utility would use this database to help the user edit the CONFIG.SYS.


  It should be possible to just mark and copy from a INF file using the same
;20.8 Support for Multiple Configurations
  PM-style methods as everywhere else, meaning the user should be able to
Like DOS, OS/2 should support multiple configurations. However, OS/2's multiple configuration support must be much simpler than DOS's. One method of ensuring simplicity would be to look for files named CONFIG*.* in the root directory of the boot drive. OS/2 would show a menu of all the CONFIG*.* files during boot up, with the default being CONFIG.SYS. The user can then select which configuration to start.
  drag to highlight an area and then use CTRL-INS to copy.


21.4  ABILITY TO TURN INF FILES IN TO TEXT
==21.0 HELP SYSTEM==
When in trouble, the on-line help system is usually the only place to turn, so it should be easy to use and intuitive to use and reasonably well featured. Unfortunately this isn't necessarily the case. The following are suggestions on how to correct this.


  It should be possible to turn a partial or entire INF in to a text file.
;21.1 Associate VIEW.EXE with INF Files
Associating VIEW.EXE with INF files will make starting INF files from the WPS much easier for the user.


21.5  PRINTER-SELECT OPTION IN VIEW.EXE
;21.2 Search Feature Should Find Partial Matches
Searching for complete words can be a trial-and-error game if you don't know exactly what you are looking for.


  It should be possible to select alternate printers from within VIEW.EXE.
;21.3 Allow PM-Style Copy From VIEW.EXE
It should be possible to just mark and copy from an INF file using the same PM-style methods as everywhere else, meaning the user should be able to drag to highlight an area and then use CTRL-INS to copy.


;21.4 Ability to Turn INF Files in to Text
It should be possible to turn a partial or entire INF in to a text file.


==98.0  OS/2 IN GENERAL==
;21.5 Printer-Select Option in VIEW.EXE
It should be possible to select alternate printers from within VIEW.EXE.


==98.0 OS/2 in General==
The following are items that do not fit in to any other category.
The following are items that do not fit in to any other category.


98.1 MAINTAINING THE NUMLOCK STATE (AS DEFINED BY THE BIOS)
;98.1 Maintaining the NumLock State (AS DEFINED BY THE BIOS)
 
On bootup, OS/2 should leave the NUMLOCK state alone, as it is defined in the BIOS. To support machines without a BIOS option for NUMLOCK, the NUMLOCK state could be defined by an environment variable (for example, 'SET NUMLOCKSTATE=[ON|OFF|DEFAULT]')
  On bootup, OS/2 should leave the NUMLOCK state alone, as it is defined in
  the BIOS. To support machines without a BIOS option for NUMLOCK, the
  NUMLOCK state could be defined by an environment variable (for example,
  'SET NUMLOCKSTATE=[ON|OFF|DEFAULT]')
 
98.2  BETTER INTERNET SUPPORT
 
  IBM needs to provide better support to people on the Internet.  This means
  assigning people to monitor the Usenet newsgroups (comp.os.os2.*), making
  available Internet-addressable mailboxes for IBM support, making IBM
  support board message areas Internet accessible and especially keeping
  the IBM Internet site complete and up to date (software.watson.ibm.com).
  This means that EVERYTHING available on IBM's Support BBS in Boca Raton
  should be on this system at the most 1 day after it appears in Boca
  Raton.  Of course, making the IBM's Support BBS Internet-accessible would
  be the optimum solution.
 
98.3  CHANGE CTRL-ALT-DEL MEANING
 
  The first CTRL-ALT-DEL should bring up a window asking the user whether
  they would like to kill the application that had the keyboard focus at the
  time of the CTRL-ALT-DEL, reboot the machine or cancel.  The second
  CTRL-ALT-DEL will unconditionally reboot the machine.
 
98.5  BOOT DRIVE SELECTION
 
  There should be a variable in the CONFIG.SYS to denote the boot drive,
  which could be used for anything (such as LIBPATH entries or entries in
  the OS2.INI) that knows it will always be running from the boot disk.
  This would give a sort of disk independence for boot disks and make the
  task of transferring configurations much simpler.
 
98.6  SLIM OS/2
 
  There should be an OS/2 that will run in less than 4 MB (ie: start up in 2
  MB, but for performance run in 4, much like OS/2 starts in 4 now but for
  performance people use 8).  It should also use less disk space.
 
98.8  OPTIONAL SAVING OF MEMORY STATE
 
  The user should be able to save the memory state of the machine to the
  swapfile as an option during shutdown.  This would allow the machine to
  start up with all programs and documents opened to the exact place they
  were before shutting down.  It would be desirable to be able to save the
  memory state for individual applications instead of the memory state of
  the entire system.  This would allow the user to do such things as:
 
  - interrupt a long debugging session and reload it the next day
  - save the state of a program before attempting a critical manipulation
  - save the state of a program when a bug has occured or is about to occure
  to give to the author for debugging purposes.
 
98.10  UPGRADE SOM TO SOM-II, ADD DSOM W/PEER-TO-PEER (see 19.1)
 
  Upgrade OS/2's SOM and the WPS to SOM-II.  When Peer-to-Peer services are
  installed, install DSOM.
 
98.11  ADD SUPPORT FOR OPENDOC (see 16.1)
 
  Support for OpenDoc should be included with the operating system.
 
98.12  SUPPORT SWAP PARTITIONS
 
  OS/2 should support swap partitions in addition to swap files.  Swap
  partitions eliminate costly file I/O overhead by allowing the operating
  system to do block writes right to the device.  OS/2 should also support
  multiple swap partitions, allowing the user to spread the swap activity
  over many disks.


98.13  KEYBOARD DEFINITION UTILITY
;98.2 Better Internet Support
IBM needs to provide better support to people on the Internet. This means assigning people to monitor the Usenet newsgroups (comp.os.os2.*), making available Internet-addressable mailboxes for IBM support, making IBM support board message areas Internet accessible and especially keeping the IBM Internet site complete and up to date (software.watson.ibm.com). This means that EVERYTHING available on IBM's Support BBS in Boca Raton should be on this system at the most 1 day after it appears in Boca Raton. Of course, making the IBM's Support BBS Internet-accessible would be the optimum solution.


  The user should be able to define their keyboard as they desire instead of
;98.3 Change CTRL-ALT-DEL Meaning
  being restricted to the keyboard layouts defined by the Country setting.
The first CTRL-ALT-DEL should bring up a window asking the user whether they would like to kill the application that had the keyboard focus at the time of the CTRL-ALT-DEL, reboot the machine or cancel. The second CTRL-ALT-DEL will unconditionally reboot the machine.


98.14  ALT-TAB SHOULD WORK LIKE WINDOWS
;98.5 Boot Drive Selection
There should be a variable in the CONFIG.SYS to denote the boot drive, which could be used for anything (such as LIBPATH entries or entries in the OS2.INI) that knows it will always be running from the boot disk. This would give a sort of disk independence for boot disks and make the task of transferring configurations much simpler.


  The ALT-TAB key combination, which cycles through the running programs,
;98.6 Slim OS/2
  should work like in Windows. This means that rather than flipping through
There should be an OS/2 that will run in less than 4 MB (i.e.: start up in 2 MB, but for performance run in 4, much like OS/2 starts in 4 now but for performance people use 8). It should also use less disk space.
  the programs, a little box showing the name of a running program should
  appear. Each time the user hits ALT-TAB, the name of the next running
  program would appear, until there are no more programs and it restarts at
  the beginning again. When the user finds the program they want, they let
  go of the ALT key to switch to that program.


98.15  ENCOURAGE GROUP DESIGN
;98.8 Optional Saving of Memory State
The user should be able to save the memory state of the machine to the swapfile as an option during shutdown. This would allow the machine to start up with all programs and documents opened to the exact place they were before shutting down. It would be desirable to be able to save the memory state for individual applications instead of the memory state of the entire system. This would allow the user to do such things as:
* interrupt a long debugging session and reload it the next day
* save the state of a program before attempting a critical manipulation
* save the state of a program when a bug has occurred or is about to occur to give to the author for debugging purposes.


  IBM should encourage vendors to get together as groups to design software
;98.10 Upgrade SOM to SOM-II, Add DSOM w/Peer-to-Peer (see 19.1)
  for OS/2. This means things like device drivers, file systems, common
Upgrade OS/2's SOM and the WPS to SOM-II. When Peer-to-Peer services are installed, install DSOM.
  functionality for applications, etc.  This will help the user enormously
  by creating some form of standards for third party support.


98.16 LOWER MEMORY REQUIREMENTS
;98.11 Add Support for OpenDoc (see 16.1)
Support for OpenDoc should be included with the operating system.


  The standard PC ships with 4 MB memory - not nearly enough to run OS/2
;98.12 SUPPORT SWAP PARTITIONS
  properly. To support these standard configurations, OS/2 should be
OS/2 should support swap partitions in addition to swap files. Swap partitions eliminate costly file I/O overhead by allowing the operating system to do block writes right to the device. OS/2 should also support multiple swap partitions, allowing the user to spread the swap activity over many disks.
  modified to run with acceptable speed (comparable to a 6 or 8 MB
  configuration) on 4 MB systems.


98.17  PUT THE WHOLE OPERATING SYSTEM IN \OS2
;98.13 Keyboard Definition Utility
The user should be able to define their keyboard as they desire instead of being restricted to the keyboard layouts defined by the Country setting.


  The entire operating system should be held within \OS2 - this includes the
;98.14 Alt-Tab Should Work Like Windows
  PSFONTS, SPOOL and DESKTOP directories, and possibly even the multimedia
The ALT-TAB key combination, which cycles through the running programs, should work like in Windows. This means that rather than flipping through the programs, a little box showing the name of a running program should appear. Each time the user hits ALT-TAB, the name of the next running program would appear, until there are no more programs and it restarts at the beginning again. When the user finds the program they want, they let go of the ALT key to switch to that program.
  support.


98.18  LOG THE BOOT PROCESS
;98.15 Encourage Group Design
IBM should encourage vendors to get together as groups to design software for OS/2. This means things like device drivers, file systems, common functionality for applications, etc. This will help the user enormously by creating some form of standards for third party support.


  Often error messages fly off the screen during boot up. To allow the user
;98.16 Lower Memory Requirements
  to diagnose problems, a log of the boot process showing everything sent to
The standard PC ships with 4 MB memory - not nearly enough to run OS/2 properly. To support these standard configurations, OS/2 should be modified to run with acceptable speed (comparable to a 6 or 8 MB configuration) on 4 MB systems.
  the screen should be created.


;98.17 Put the Whole Operating System in \OS2
The entire operating system should be held within \OS2 - this includes the PSFONTS, SPOOL and DESKTOP directories, and possibly even the multimedia support.


==99.0  CONTRIBUTORS==
;98.18 Log the Boot Process
Often error messages fly off the screen during boot up. To allow the user to diagnose problems, a log of the boot process showing everything sent to the screen should be created.


==99.0 CONTRIBUTORS==
Without the many contributors from networks all over the world, this list
Without the many contributors from networks all over the world, this list
would not be possible. I would like to thank each and every person who
would not be possible. I would like to thank each and every person who
helped me make this list what it is today.
helped me make this list what it is today.


Line 2,064: Line 999:
   Wilcox, Duncan (mc2199@mclink.it)
   Wilcox, Duncan (mc2199@mclink.it)
   Wiley, George (magrw@levels.unisa.edu.au)
   Wiley, George (magrw@levels.unisa.edu.au)
[[Category:Community]]

Latest revision as of 15:58, 3 November 2024

OS/2 Wish List - Last Updated: 94-01-22

This is the OS/2 Wish List, compiled from OS/2 users worldwide from networks such as the Internet and Fidonet. This document hopefully represents the direction in which OS/2 users would like OS/2 to go and the tasks that must be accomplished to get OS/2 there.

This list does not necessarily represent what OS/2 users want IBM to do, but what OS/2 users want done for OS/2 in general. Therefore, it could be a valuable source of information for commercial vendors and shareware authors. I will maintain a list of any shareware authors working on a particular area so that people working on similar areas can get in touch with one another.

PLEASE send this list everywhere you can!

To simplify the process of updating the wish list, each user who sends in an addition to the list will get their name added to the contributors section rather than to the wish they contributed to. This will also help keep the file size down as the list grows by only including each contributor once in the list. Also to simplify the process of updating the list, do not mail a message listing the items that you support. Although I really do enjoy it when people mail me saying that they really support certain parts of the list, it takes a lot of time to process each message. I would, however, like anyone who has questions or comments on a wish to mail me.

To add your wish to the list, please mail to 'evanc@spatial.synapse.org' (Internet) or 'Evan Champion @ 1:163/590' (Fidonet). Please make sure that your full name and mailing address are in the message to make it easier for me to add your name to the contributors list. I try my best to pick up wishes from UseNet or FidoNet Echos, but I do not always read every message and as such might miss your wish - so to make sure it gets in, please send it in mail!

Often one idea does not make sense without another, or would bring the most benefit with the introduction of another, and whenever this is the case I have indicated a wish to reference.

It is understood that some of these options would increase the size of OS/2 astronomically, thus causing problems for OS/2's distribution. Whenever this is the case, the item should always be included on the CD-ROM distribution, and should be made available for media charges only for the floppy distribution.

Some of the items in this list represent major changes to OS/2 and specifically dictate the removal of old methods of doing things. It is recommended that such changes be implemented as a two version process whenever possible - the first release would implement the addition and the next release would remove support for the old method. This will allow the user the time between major releases (usually a year) to update their software and become familiar with the additions.

I do not necessarily understand everything I add to the list, so if I misunderstood a request, please let me know!

The latest version of the list is always available from ftp.synapse.org in /pub/wishlist and from 1:163/590 with the magic filename WISHLIST.

0.0 ADDITIONS/DELETIONS/CHANGES SINCE 94-01-15

This section contains references to all new sections and changed sections of the Wish List since it was last released. When a section is deleted, an explanation as to why is given. I am currently running the OS/2 2.1 ServicePak Beta, which may give different results than the OS/2 2.1 GA.

CHANGED  2.4    FILE SYSTEM REQUIREMENTS (see 3.4)
CHANGED  3.1    DEVICE ALIASES
ADDITION 4.5    IMPROVED SUPPORT FOR PCMCIA
CHANGED  5.1    UNICODE
ADDITION 5.7    SEPARATE TEXT FROM CODE
MOVED    6.2    MOVEMENT OF INFORMATION FROM THE OS2.INI TO THE FILESYSTEM
                now 8.36
MOVED    6.5    COLOURFUL ICONS now 8.37
ADDITION 6.27   32-BIT CONTAINERS
MOVED    6.9    BACKGROUND COLOUR ON ICON TEXT now 8.38
MOVED    6.10   AUTOMATIC CONVERSION OF WINDOWS ICO FILES TO OS/2 ICONS now
                8.39
MOVED    6.11   ALLOW DIRECT MODIFICATION OF THE INI FILES WITHOUT COPYING
                THEM now 8.40
ADDITION 6.23   ALT-TAB SHOULD WORK LIKE WINDOWS
ADDITION 6.24   HAVE PM NOT LOAD ON BOOT UP
ADDITION 6.25   EDIT CONTROL NOT CUA COMPLIANT
ADDITION 6.26   INCLUDE NEW ATM AND MORE FONTS
CHANGED  8.3    SHADOWS SHOULD STAND OUT BETTER
CHANGED  8.10   DEFAULT VIEW OPTION IN OBJECT SETTINGS
MOVED    8.18   ASSOCIATE VIEW.EXE WITH INF FILES now 21.1
CHANGED  8.19   REDEFINE SCALING OF MOUSE SPEED, KEY REPEAT SETTINGS ETC.
ADDITION 8.31   HOTKEYS
ADDITION 8.32   A WAY TO USE THE PTR FILES CREATED WITH THE ICON EDITOR
ADDITION 8.33   MODIFY TREE VIEW TO ALLOW THE USER TO MORE SUB-LEVELS
ADDITION 8.34   SET THE DEFAULT START SIZE, POSISTION OF AN OBJECT
ADDITION 8.35   ABILITY TO TURN OFF ANY OF THE OPTIONS IN THE RIGHT MOUSE
                BUTTON MENU
ADDITION 8.36   CONFIG.SYS SETTINGS SUPPORTED BY WPS OBJECTS
ADDITION 8.41   EXPAND THE SYSTEM SOUNDS
DELETION 9.25   DELETE TO END OF LINE
  The shell should support a key combination to clear the current command
 line to the end of the line.

 REASON:  CTRL-END does this right now
ADDITION 9.26   MOVE SHOULD WORK ACROSS DEVICES
ADDITION 11.15  FDISK SHOULD NOT REQUIRE A REBOOT
ADDITION 11.16  ATTRIB FOR DIRECTORIES
ADDITION 11.17  MIGRATE UTILITY SHOULD REMEMBER WHAT IT HAS MIGRATED
CHANGE   13.1   WIN32S SUPPORT FOR WINOS/2
ADDITION 13.3   ALLOW OS/2 FOR WINDOWS SUPPORT IN STANDARD OS/2
ADDITION 13.4   SUPPORT WINDOWS FOR WORKGROUPS 3.11
ADDITION 16.3   UPDATE/REPLACE SOFTERM
CHANGED  17.1   A SIMPLE, ROCK SOLID INSTALL PROCESS
CHANGED  17.3   COMMON INSTALL/UNINSTALL PROGRAM
CHANGED  17.5   PROGRESS INDICATORS
ADDITION 17.7   NEAT TIPS, TRICKS AND OTHER INTERESTING INFORMATION
ADDITION 18.4   DOCUMENT PRODUCTIVITY FOLDER
CHANGE   19.4   USE THE CD-ROM VERSION OF OS/2 TO PROMOTE OS/2 SHAREWARE
CHANGE   20.4   GET RID OF THE CONFIG.SYS
ADDITION 20.8   SUPPORT FOR MULTIPLE CONFIGURATIONS
ADDITION 21.0   NEW SECTION - HELP SYSTEM
ADDITION 21.2   SEARCH FEATURE SHOULD FIND PARTIAL MATCHES
ADDITION 21.3   ALLOW PM-STYLE COPY FROM VIEW.EXE
ADDITION 21.4   ABILITY TO TURN INF FILES IN TO TEXT 
ADDITION 21.5   PRINTER-SELECT OPTION IN VIEW.EXE
MOVED    98.13  KEYBOARD DEFINITION UTILITY now 5.6
ADDITION 98.15  ENCOURAGE GROUP DESIGN
ADDITION 98.16  LOWER MEMORY REQUIREMENTS
ADDITION 98.17  PUT THE WHOLE OPERATING SYSTEM IN \OS2

1.0 The Kernel

The OS/2 kernel is showing signs of age in relation to the new breed of micro kernels; listed below are proposed ways to improve it.

1.1 Include SMP Support

Included with the base system should be the kernel support for handling SMP (symmetric multiprocessing). It is understood that most users can not take advantage of SMP, however its inclusion would be a powerful weapon against those vendors who claim their operating system is superior because they support SMP.

1.2 Move the Intel Version to the IBM Microkernel

Of course, if you can't beat them, join them. The portable OS/2 versions (i.e.: OS/2 for PowerPC) is already moving to the IBM Microkernel and by moving the Intel version to the Microkernel as well as keeping uniformity between versions of OS/2 for different architectures. This would allow:

  • dynamic loading/unloading of device drivers
  • greater stability as device drivers run in user space and not kernel space
  • would provide architecture-independent device support as drivers interact with the kernel and not directly with the hardware.
  • would require less memory
  • faster boot off floppy as less has to be loaded at boot time (device drivers could be loaded as needed by an installation program that would search for supported devices)

2.0 File Systems

This section deals with all wishes directly related to changes and additions to the OS/2 file systems.

2.1 Utility to Convert Between File Systems

It is very difficult to convince a user to format their FAT drive to install HPFS. Therefore, a utility to convert between file system formats non-destructively should be provided.

2.2 Installable File Systems for Removable Devices

Installable file systems must be made available for removable devices, including floppies. It is unacceptable for a user with optical disks to be forced to use FAT instead of a better file system (i.e.: HFPS)

2.3 Long File Name Support in FAT

Long file name support already exists in FAT, in the form of the .LONGNAME extended attribute. All file system calls should rely on the .LONGNAME extended attribute instead of the 8.3 file name to provide transparent long filename support to the user.

2.4 File System Requirements (see 3.4)

The needs of OS/2 users are constantly changing and the file systems need to move with them. The following is a list of the new file system requirements.

  • access control lists (ACL) for file security
  • journaling
  • support extended attributes greater than 64K
  • support caches greater than 2 MB
  • support a maximum file system size in the terabyte range
  • 255 character disk labels
  • new file type (in addition to 'File' and 'Directory' called 'Abstract' to handle symbolic links (shadows) and imbedding objects in to the file system
  • file association in the file system

Note: symbolic links must work across file filesystems and even across file systems of different types.

Most of these requirements would probably require a new file system to support them. Those that can be implemented in HPFS should be, and those that can not should be implemented in a new file system.

2.5 Make '/' and '\' Act the Same for Changing Directories

OS/2's API set should be changed to allow changing directories using either '/' or '\'. This requires changing the command line switch delimiter to '-' from '/'. It should be noted that except for IBM's software, most programs already use '-' instead as a command line switch delimiter.

In addition, the OS/2 IFS definition specifically states that '/' and '\' should both be usable for changing directories.

2.6 Standard Tape Filesystem

A standard tape-backup filesystem should be provided to allow sharing of information on tape between OS/2 configurations. The filesystem should be designed to allow multiple backups on one tape and should allow the backup of any information stored on a disk filesystem, meaning support for long filenames, extended attributes, security, etc.

2.7 File System-Independent Disk Compression

A file system-independent disk compression scheme should be provided with OS/2 to help offset the increased disk space requirements over DOS/Windows systems.

2.8 Additional File System Support

OS/2 should ship with support for the following file systems:

  • NTFS
  • common UNIX disk formats
  • Macintosh
2.9 Make All Files Executable

Any file should be executable, no matter what its extension. The shell should first determine whether whatever the user asked it to open is actually an executable. If it is, the program starts normally. If not, the file is assumed to be some sort of data file, and the operating system tries to find the creator (using the extended attributes) of the file and starts it, instructing the creator to open the file. If it can't find the creator, it should return back an error message saying that the file was not executable and the file's creator could not be found. The current rules for special file extensions should be removed as they are not appropriate for a free-form filename system. Something like a REXX script or batch file that generally has no file type could be started as 'cmd rexxscript'. Typing just the name of a directory would change in to the directory.

2.10 Utility to View/Set Extended Attributes

A utility should ship with OS/2 to allow the user to view and edit a file's extended attributes. This would be particularly necessary if all files are considered executable, as the user may want to specially assign creators for files so they can be automatically opened, or to allow a REXX script or batch file to run without having to run 'cmd rexxscript'.

2.11 Secure System Files

Display a warning every time a system file (typically one in the \OS2 directory) is going to be replaced by an application. To implement this, a file holding the names of files that should not be changed without giving notice to the user could be used.

2.12 Allow Optional Caching on a Drive Basis

The user should be able to specify drives to cache (or not to cache). For example, the user could ask for drives 'C:', 'D:' 'F:' to be cached, but not 'E:'.

3.0 Handling Disks

Pretty well every OS/2 user agrees that calling disks 'A:', 'B:', 'C:' just doesn't cut it. Unfortunately, not everyone is agreed on how this problem should be solved. There are 2 opposing arguments, one for mounting drives off of a root directory and the other for using the already present disk labels as disk names.

3.1 Device Aliases (see 3.2, 3.3, 3.4)

The user should be able to alias a directory to a disk name or a disk to another disk name, or a disk name to a directory. This is to support wishes 3.2, 3.3 and 3.4. This would be used in the case of wish 3.3 to alias '/' to 'C:', '/floppy' to 'A:'. It would be used in the case of with 3.4 to alias device 'MYDISK:' to 'C:'.

3.2 Disk Device Names (see 3.1)

Instead of calling disks 'A:', 'B:', 'C:', etc, disk devices could be referenced internally as 'FDx:' for floppies and 'HDx:' for hard drives. This would allow an unlimited number of available partitions. Device aliases could be created to alias back 'FDx' and 'HDx' to the DOS equivalents to allow older software to work while allowing those who have surpassed the 26 available drives to use their full capacity.

3.3 Mounting Drives Instead of Having Drive Letters (see 3.1)

Drives would be mounted as directories off of the boot drive (for example, 'D:' could be mounted as '\applications'). For programs that are not designed to handle such a system, the root drive would be aliased to 'C:' and the floppy drives would be aliased to 'A:' and 'B:'.

3.4 Using Disk Labels Instead of Drive Letters (see 3.1)

Disk labels, currently an unused feature of the file systems, could be used as device aliases as well. For example, if a disk label is 'MYDISK', the drive could be accessed as 'MYDISK:' This would make accessing disks much more intuitive.

When used on a FAT or HPFS drive, the disk label could only be 11 characters (as that is the current disk label size). Any new file systems should support 255 characters and the APIs to support the new drive schemes should support 255 character labels.

Disk labels should be allowed to contain any character usable in the file systems.

3.5 New Boot Sector

The current OS/2 boot sector (created by FORMAT/PMFORMAT) is next to useless. It displays a cryptic message that few people bother to even look up. A new boot sector that just skips over the disk and continues the boot process if it can't boot OS/2 should be implemented.

3.6 Booting Takes Too Long (see 1.2)

Booting OS/2 off hard disk is a long process for many users, but loading off of floppy (for example, during the install process) is almost unbearable. An inexperienced user could think that the computer has crashed while booting. As a first step, a progress indicator should appear telling the user that something is happening. To really solve the problem would require less to be loaded during the boot process (which would mean moving to the IBM Microkernel). In addition, reducing the number of install disks from 2 to 1 would be a big improvement.

4.0 Device Drivers

Device drivers are at the heart of the operating system and yet they are often the one of the greatest sources of heartache for users. The following is a list of wishes designed to fix that.

4.1 Support

Without device driver support for devices the user can't use their investments and would likely rather stay in DOS than have to give up access to their hardware. IBM must do everything possible to get third party vendors to write device drivers. This includes a service for vendors to pay IBM to write the device drivers at a reasonable cost.

4.2 Quality

Not all third party vendors give the same driver quality that we are used to IBM providing. To solve this, IBM should have an independent lab to do device driver testing at low or no charge. IBM should also set up a volunteer device driver testing corps based on Team OS/2 (maybe even using Team OS/2 members). IBM could manage a database with each member's configuration and would make the database available to any manufacturer on request. This solution would satisfy everyone: it is low cost for IBM to support and for vendors to use, provides the vendor with diverse system configurations and would help to provide the user the best quality drivers.

4.3 Allow Dynamic Loading and Unloading of Device Drivers (see 1.2)

OS/2 should allow device drivers to load and unload as desired by the user. This would be handled easiest by moving to the IBM Microkernel, but should be made available even if the current kernel is maintained.

4.4 Support for All SCSI Standard Devices

OS/2 should provide drivers for all devices that are part of the SCSI standard devices, such as tapes, scanners, etc. Each type of device would get one driver, much like the way SCSI-2 CD-ROMs are handled using the OS2CDROM.DMD.

4.5 Improved Support for PCMCIA

OS/2 currently only provides the "socket services" for PCMCIA devices and requires the PCMCIA card manufacturer to provide the other side of the socket, which few other than IBM provide. OS/2 needs to provide full support for PCMCIA devices out-of-the-box.

5.0 OS/2 As an International Operating System

OS/2 is designed as an international operating system, to be used anywhere in the world along with other platforms. Unfortunately, OS/2 in it's current state is far from being an international operating system; the following are wishes designed to solve this.

5.1 Unicode

Unicode support should be included in the base operating system. This would also remove the need for a different double byte character set version of the operating system.

Codepage emulation would be provided to support applications that are not Unicode-aware.

5.2 Standard Date Time and Number Formats (see 14.4, 15.1)

The system date time and number formats (as defined in the Country object in the System Setup folder' should be used everywhere in the operating system. Reading huge numbers like those returned by CHKDSK and DIR which are currently not broken up by the 1000s separator and ambiguous date formats are almost enough to drive the user insane.

These formats should also be a lot less restricted. The user should be able to build the formats any way they like. This means the user should be allowed to do things like 'yyyy-mm-dd' (ISO date format), dd/mm-yy (old Swedish style) and even things like dd-mmm-yy to get a 3 character short form for the month.

5.3 Support for 8-Bit Code Pages for Cyrillic and Greek

OS/2 should have the same 8-bit code pages for Cyrillic and Greek that is provided for IBM DOS.

5.4 Support of ISO 8859.1 (ISO Latin-1) Character Set

OS/2 should support the ISO 8859.1 (also known as ISO Latin-1) character set, used in other operating systems such as UNIX.

5.5 Support for More Than 2 Codepages

There must be support for more than 2 codepages. As OS/2 becomes more widely used internationally people need to be able to exchange documents using different codepages simply.

5.6 Keyboard Definition Utility

The user should be able to define their keyboard as they desire instead of being restricted to the keyboard layouts defined by the Country setting.

5.7 Separate Text From Code

As an example for other vendors, there should be no text imbedded in executable code. All text used in the operating system should be placed in language files (*.msg). This would, among other things, speed up the release times for the international OS/2's.

==6.0 Presentation Manager This section contains wishes for anything related to the Presentation Manager, including wishes for INI and icon files.

6.1 INI Editor

An INI editor should be included as part of the base system.

6.2 Movement of Information From the OS2.INI to the File System

Icon information etc. should be moved from the INI files in to the file system in the form of extended attributes. This will allow users to retain system settings even when replacing the operating system as all the necessary settings are kept along in the application's extended attributes which can be backed up, and would ensure that deleted application settings do not live on forever in the INI files as all settings would disappear along with the application.

6.3 MULTIPLE INPUT QUEUES

Having PM grind to a halt because of a process holding the message queue for too long just isn't acceptable. Every thread that uses the PM should be assigned its own, independent message queue to ensure that the user can always interact with the system, even if one application goes down.

6.4 Changing the Graphics Driver On-the-Fly

Being able to change the graphics driver on the fly would be a big plus. This means that the system should not have to be rebooted to handle the new driver, and all video changes should take effect immediately.

6.6 Right Mouse Button Action for Programs That DON'T USE IT

The commands in the toolbar menu (at the top left corner of each window) as well as the menubar (in the case of PM application) should form a right mouse button pop-up menu for applications that do not explicitly support the right mouse button.

6.7 Movement of OS/2 Logo to After PM Gets Started

Moving the OS/2 Logo to just after PM gets started (as the first thing that is shown on the screen) just makes more sense - the graphical environment is up and running and all the routines are there for showing bitmaps. In addition, it would allow more colourful OS/2 bitmaps to be shown on start-up without pain.

6.8 Optional Disabling of Menu Drop Down on Right Alt Key

On many international keyboards, the right ALT key is used to type special characters such as brackets. An accidental slip on the keyboard while doing an ALT key combination can cause a menu to drop down, and thus is a real annoyance. For people using international keyboards, an option either the Country object or Keyboard object should determine whether only the left ALT key or both ALT keys should bring down menus.

6.11 Use Fonts Like DLLs

A font should only be kept in memory as long as there is a program using the font; keeping fonts loaded forever is a waste of valuable system resources. After the last process to use a font is terminated, the font should be unloaded.

6.13 Vector Icons

Allow vector graphic files in addition to bitmaps and allow the icon to be scaled to a fixed size no matter what the resolution is.

6.15 Enhanced Task List

There should be a 'Details' view of the task list, showing more information about a program - i.e.: priority, memory usage, idle time, CPU usage, process ID, parent ID, command line parameters, etc. From here the user should also be able to change task priorities.

6.16 Optional 'Keyboard Focus Follows the Mouse Support'

Optionally, the user should be able to enable X11-style 'keyboard follows the mouse pointer' support. The active window and keyboard focus are changed as the mouse pointer moves from one window to another. Note that the new active window is not brought to the surface, only the keyboard focus changes.

6.17 Display PostScript

PC's have become powerful enough to handle Display Postscript, and definitely the next generation of PC's - the PowerPC's - could handle display Postscript with no problems at all. With fonts playing an increasingly important role, it is important for what is on the screen to look as much as possible as printed output.

6.18 Animated Cursors

OS/2 should support animated cursors. This means for the alarm clock cursor, the dial could spin, etc.

6.19 Minimize Button Goes First to Titlebar Only, Then Hidden

The minimize button could be (optionally) changed to first minimize down to the titlebar only and then another click on the minimize button would hide the window. Pressing the maximize button when at the titlebar-only stage would bring the window back to its original size. This would be a great screen saver while not inconveniencing people with having to keep running to the Window list to bring up a minimized window.

6.20 Enhance File Dialog Box

Enhance the file dialog box so that it is possible to see the size and date stamp on a file, in addition to just the file name. An example of how this would look is the folder Details view in the WPS. Also, be very desirable to be able to sort the list of files by name, size or date from within the standard file dialog box.

6.21 State-Revealing Icons

Icons should reveal the state of the program they belong to. For example, the printer icon could change to indicate that there are jobs in the spooler, a minimized interactive program's icon could bink to indicate waiting on user input, and the minimized folder could 'glow' when occupied.

6.22 Change Behaviour of Drop-Down Lists

Currently, the user must click on the button to the right of a drop-down list to make it drop down. This should be changed so that the user could click anywhere in the entry field in addition to clicking on the button to bring down the list.

6.23 Alt-Tab Should Work Like Windows

The ALT-TAB key combination, which cycles through the running programs, should work like in Windows. This means that rather than flipping through the programs, a little box showing the name of a running program should appear. Each time the user hits ALT-TAB, the name of the next running program would appear, until there are no more programs and it restarts at the beginning again. When the user finds the program they want, they let go of the ALT key to switch to that program.

6.24 Have PM Not Load on Boot Up

PM should be more separated from the rest of OS/2, allowing a user to function without it when the overhead of a graphic interface is undesirable. This might be a good use for the STARTUP.CMD - OS/2 would first start in a text mode and then try to execute STARTUP.CMD - STARTUP.CMD would then contain the commands to start PM.

It should also be possible to quit PM without shutting down the machine. Doing so would return the user to the command line. This would allow to do such things as replace locked DLLs, change display drivers etc. that would normally require the system to be reset.

6.25 Edit Control Not CUA Compliant

The base edit control (not MLE: WC_ENTRYFIELD) does not support some CUA defined behaviour. For example, the control does not support CTRL-LEFT or CTRL-RIGHT accelerators to move to the next word. It also does not support double-clicking on a word to mark the word. The MLE control supports both of these and it is inconsistent not to provide this support in dialogs.

6.26 Include New ATM and More Fonts

Adobe Type Manager 3.0 (with multiple master fonts) should be included in the next version of OS/2, along with a greater number of fonts.

6.27 32-Bit Containers

When opening a WPS window with 1000+ icons, you only see the real icon for a limited number of them. This is probably due to PM's 16-bit internal structure, and should be changed.

7.0 Text Applications

This section is for wishes related to text applications. While it is desirable to have most applications as PM programs, reality states that some programs work best in text mode and can not have the overhead associated with a graphic interface and these wishes are designed to specifically address those applications.

7.1 Text-Mode Multi-Tasking

From full screen DOS or OS/2 sessions, CTRL-ESC should bring up a text version of the task list rather than switching to the desktop. Pressing ALT in a full screen session should bring down a text the equivalent of the toolbar menu for a windowed session, with functions to mark, copy, paste, change settings, etc. Switching between full screen sessions should not require switching to the desktop as an intermediate step.

7.2 Textual User Interface

Provide a text user interface API, a type of textual Presentation Manager.

7.3 Switching From Full Screen to Window Mode for OS/2 Shells

The same ALT-HOME functionality available to DOS shells should be made available for OS/2 shells. There are features that a full screen shell can do that a windowed one can't - then again, with DOS shells, there are resolutions that can be handled in full screen mode that can't in windowed mode; OS/2 just says 'I can't do that' and pauses the window until it goes full screen again. Why not do the same thing for OS/2 shells?

7.4 Switching From Full Screen to Window Mode

The same ALT-HOME functionality available to DOS software should be made available for OS/2 text applications. There are features that a full screen shell can do that a windowed one can't - then again, with DOS shells, there are resolutions that can be handled in full screen mode that can't in windowed mode; OS/2 just says 'I can't do that' and pauses the window until it goes full screen again. The same type of message could be given for text applications that try to do unsupportable actions while windowed.

7.5 Use the PM Method for Copy and Paste in Text Mode

OS/2's current method for doing copy and paste's from a text session is very awkward. A much simpler and more natural method should be used, namely the one implemented for PM applications. The user simply selects the text they want to copy and then press the standard PM CTRL-INS to copy and SHIFT-INS to paste.

7.6 Make Copy and Paste Features Available to Full Screen Sessions

There is no reason why full screen sessions should not be able to use the same copy and paste features of windowed sessions.

7.7 Full ANSI X3.64 Support

The complete ANSI X3.64 terminal specification should be enabled for text sessions.

7.8 VT-100 Support

Text sessions should have complete VT-100 support.

7.9 Allow Mark and Copy as 1 Function (see 7.5)

The Mark and Copy features should be integrated in to 1 action.

8.0 Workplace Shell

The WorkPlace Shell is something a user must interact with every day and so it is important for the shell to meet the user's needs. The following is a list of wishes directly related to the WorkPlace shell.

8.1 Addition of Master Templates

'Master Templates' are default settings for any object, like a folder or a program. By changing the settings in the Master Template, the settings in every object of that type would also be changed. This will allow the user to accomplish something like 'make all folders look like this one'. By default, an object would always inherit any changes to the master; however, by turning off a setting in the object's settings (named, for example, 'Inherit from Master') the user could disable such a feature to allow for customization for specific objects.

Master templates could also be used as a replacement for the command association features of the WPS. A Master Template for '*.ZIP' could execute UNZIP when a ZIP file is run.

8.2 Movement of Shadows in to the File System (see 2.4)

The Shadows are one of the most complex parts of the WPS because often users don't understand that a shadow only exists in the desktop. Therefore, shadows (or 'symbolic links') should become part of the file system.

8.3 Shadows Should Stand Out Better

It is often difficult to tell whether an object is a shadow or not as the only distinguishing characteristic is a different icon text colour. Shadows could have a slightly different icon (as templates do). In addition, it should be possible to set the font for shadows independent from the font used for other icons.

8.4 Reliable Workplace Shell Backup/Restore (OS2.INI and Desktop Directory)

(see 2.4)

There needs to be a way to backup and restore the Workplace Shell setup, including things like the desktop and object settings. Possibly this could be achieved most easily through the movement of desktop information from the INI files to the filesystem where they can be easily backed up using any backup software.

8.5 Random Background Selection for the WPS

A list of desirable backgrounds could be selected for the WPS and upon startup, the WPS could randomly choose a background to display.

8.6 Turning the Shredder in to a Trash Can

The Shredder needs to be turned in to a trash can, meaning that files put in it need to be recoverable. This means tighter integration of the WPS object with the SET DELDIR= option. Files should remain in the trash can until they are explicitly cleaned out (as an option in the object and a command line utility). When there is not enough space to perform a function, the operating system should first see if there are files that could be cleaned up to make room. If so, the user is asked if it is alright to remove files, and then proceeds to make space. If the user says 'no', or there are no files to remove, the write fails normally.

Files would be removed in chronological order, starting with the oldest files and proceeding until enough room is made or there are no more files to remove.

8.7 List View for Object Settings

There could be a list view for object settings - it would basically be a dump of all the possible settings there are for the given object, sorted alphabetically and not grouped together in notebook sections. This would make it very easy to find a particular setting when you don't exactly know where to look (but you know what to look for). As many as could fit on one notebook page would be shown at a time, and arrows at the bottom of the notebook would allow flipping between pages.

8.9 Starting PM Applications 'Minimized'

The feature for starting a program minimized should be enabled for PM applications.

8.10 Default View Option in Object Settings

Any object for which the type of view can be variable (for example, a folder can be viewed in the 'Icon' view, 'Tree' view and 'Details View') should have a default view option. This option would be very accessible, for example through a drop down list in the 'Window' page.

8.11 Add Grid/Change the Meaning of Arrange

The Icon view named 'Non-grid' should be renamed to 'Gridded'. An option for defining the grid of user-defined size (or to turn off the grid, for functionality similar to the 'Non-Grid' mode) Arrange would move the icons to nearest point on a the grid. In addition, there should be an option in the window settings for to always snap icons to the grid.

8.12 Expand All Branches/Expand Tree Feature for Tree Views

The user should be able to expand all branches of a tree or to expand the entire tree while in a Tree view. * and CTRL-* are used in the help system to provide similar functionality, and their use is recommended here as well.

8.13 More Information for Drive Objects/Disk Tree Views

Below the name of the drive in a drive object (ie: 'Drive C') the amount of free disk space should be shown (note: this should only be shown for disks that are writable; no matter how long you look at a CD-ROM, it will always say 0 bytes free). In a Tree view, below each folder name, the number of files in the directory and the size of the contents should be displayed.

8.14 Save Changes Made by the Palettes in the System Setup Folder

ALL IBM software, including the help system and INF files, must support saving changes to fonts definitions, colour schemes etc. made by performing a drag-and-drop from any of the various 'Palette' objects in the System Setup folder. This includes the 'Font Palette', 'Colour Palette' and 'Colour Scheme' objects. Third party vendors should be encouraged to follow IBM's example.

8.15 Open Parent Folder

The ability to open a folder's parent should be available in the 'Open' section of the right mouse button menu.

8.16 Close of the Current Folder When Opening a Child Folder

Both accessible through the 'Open' section in the right mouse button menu and by an accelerator key should be the ability to close the current folder when opening a child folder.

8.17 Cascadable Menus

The user can add items to the right mouse button menus, even sub-menus, but the user can not add sub-sub menus.

8.19 Redefine Scaling of Mouse Speed, Key Repeat Settings etc.

The current scale used for mouse speed, key repeat delay, etc. is much to slow for most users. As most users use the settings at their fastest rate, there is not much point in having the settings there in the first place. To make them useful, the fastest speeds need to be many times faster than those available now.

To solve this problem, flexible ballistics should be supported via a customizable acceleration curve. The user would more or less 'pull' on the curve to create the acceleration they desire. A few standard configurations would be given for users that do not want to play with the curve.

In additon, the user should be able to disable ballistic tracking for the mouse for those who prefer linear mouse tracking.

8.20 Shell Window Closing

The WPS should not ask for confirmation to close a shell that is not running any software programs.

8.21 Colour Palette Changes Icon Text Colour

Dragging a colour from the Colour Palette should change the icon text colour for that particular icon (or group of icons if more than 1 is selected).

8.22 Put Full Path in Directory Titlebar

When the user chooses a directory from the Drives object, the title bar of the directory window should contain the full path to the directory, and not just the directory's name. For example, it should say 'D:\MYDIR' instead of 'MYDIR'.

8.23 Ability to Set Disk Labels From the Drive Object

The user should be able to change a disk label from the Drive object.

8.24 Add 'Change' Option to Right Mouse Button Menu

An option to 'Change' a view from one type to another (for example, from Tree to Icon view) should be added to the right mouse button menu. This would allow the user to see a different view of a window without the old view staying on the desktop.

8.25 Tear-Off Menus

Tear-off menus were a rather interesting part of the OS/2 2.0 betas, and unfortunately were left out of the final product to ensure compatibility with all existing applications. It would be nice if IBM could resolve the compatibility problems and return the tear-off menus to OS/2.

8.26 Simplify 'Find' Page

The notebook 'FIND' page is much too complicated. It should be replaced with a simple file dialog (slightly modified to handle the WPS).

8.27 No Password for Screen Saver

The screen saver should not require a password in order to operate.

8.28 Additions to the WPS Shutdown Function

Two additions are preposed to the WPS shutdown function. First, there should be an option (in the dialog asking to shut down) to automatically reboot the machine after shutdown. Second, there should be an option to unconditionally close all running programs, without asking for the user's consent.

8.29 'Clean Desktop' Function in the Desktop Menu

A 'Clean Desktop' function should be added to the desktop menu (the one that appears with the right mouse button). This function would minimize all open windows.

8.30 'Accessing Disk' Notice

The initial disk access in the WPS (especially for floppies) can take some time. A message indicating that the system is, in fact, doing something should appear so the user is not left wondering what is happening.

8.31 Hotkeys

It should be possible to create hotkeys to start applications from the WPS. For example, the user could design the system such that ALT-1 starts a communications package, ALT-2 starts a word processor, etc.

8.32 A Way to Use the PTR Files Created With the Icon Editor

While the user can create pointers using the icon editor, there is no way for the user to make any use of them. The user should be able to use these new pointers, if no where else but the WPS. All pointers used in the WPS should be configurable, from the standard pointer to the 'lock' in the screen saver. In addition, it should be possible to return to the default pointers.

8.33 Modify Tree View to Allow the User to More Sub-Levels

When opening a sub-level in a window's Tree View, the parent of this branch should be moved to the top of the window to allow the user to see more of the sub-levels. It is obvious that the user wants to see what is in the sub-levels and the WPS should reflect this.

8.34 Set the Default Start Size, Position of an Object

It should be possible to set a default start size and position at the object level rather than at a program level. This would allow the user to individually set the start size and position of one shell window object without affecting any other shell window object.

8.35 Ability to Turn Off Any of the Options in the Right Mouse Button Menu

The user should be able to turn off any of the options in the right mouse button menu in the WPS. This would allow the user to turn off such functions as 'Arrange', which can be hazardous to a carefully designed desktop.

8.36 Colourful Icons

The default icon set in OS/2 is a bit bland and unappealing. A splash of colour would really improve the looks of the WPS.

8.37 Background Colour on Icon Text

Icon text should have the background colour underneath in order to be able to see the text with some bitmaps.

8.38 Automatic Conversion of Windows ICO Files to OS/2 Icons

Windows ICO files should be automatically converted to OS/2 icons, or there should at least be a utility included in OS/2 to allow turn the icons in to OS/2 ones. This is required for DOS software that comes with Windows icon files.

8.39 Allow Direct Modification of INI Files Without Copying Them

Having to re-copy INI files to change them is terribly wasteful and should be corrected.

8.40 CONFIG.SYS Settings Supported by WPS Objects

Program objects and folders should have a new settings page where the user could specify settings such as environment variables (like the PATH). This function would work hierarchically - opening a program in a folder on the Desktop would set the program's default environment to that of the Desktop, then any settings defined in the program's folder would be added and then any settings defined in the program's object would be added.

8.41 Expand the System Sounds

The System Sounds should be an object attribute for every object, available through a 'Sound' page in it's notebook. It should have at least two fields - open and close - in addition to any application-specific sounds. For example, the Shredder has a sound that is played when something is dropped on to it. If a datafile associated with the program has different sound attributes, they will be used instead of the application defaults. Only sounds that are specific to the WPS should be defined in the System Sounds object, such as warning messages.

9.0 Shells

A huge number of users prefer using the command line over any other method of controlling the system, and yet it has not significantly evolved over the COMMAND.COM from DOS. The following are wishes related to OS/2's shell (CMD.EXE) designed to remedy this oversight.

9.1 Scroll-Back Buffer for All Shells

A scroll-back buffer of user-definable size should be available for all shells, be it full screen or windowed, DOS or OS/2.

9.2 Support Wildcard Expansion in the Shell

The OS/2 command shell (CMD.EXE) should provide wildcard expansion. For example, a user should be able to 'cd \desk*' to change in to '\desktop'. As another example, 'copy' would copy all the files in the wildcard expansion in to the last file given on the command line. Therefore, 'copy \mydir\* .' would copy all files in '\mydir' in to the current directory.

To ensure that such a change would be safe for the user, commands such as 'copy' would be modified to complain if a file will be overwritten. A command line switch would override this.

The addition of shell wildcard expansion will also simplify application development as well, as each piece of software does not need to have its own wildcard expansion routines.

9.3 Command Aliases in CMD.EXE

The OS/2 command shell (CMD.EXE) should support command aliases. This allows users to alias a complex or cumbersome command with a short, simple name. Aliases should be executed before any internal commands.

9.4 Jump-Scrolling for Shell Windows

Windows currently scroll too slowly - jump-scrolling, whereby only what can be put to the screen in a reasonable amount of time is shown, would improve performance dramatically.

9.5 Resizeable Shell Windows

Being limited to fixed resolutions (80x??) is an unnecessary limitation for shell windows. They should be changed to be dynamically resizeable - simply pull on the resizing borders to resize the screen. During the process, the title bar could change to show the current resolution.

9.6 Resizeable Font for Shell Windows

Similar to having dynamically resizeable shell window resolutions, there should be dynamically resizeable font sizes. The amount of text that could be shown a one time in the window remains constant, but the font size is changed (using the resize borders). This should be an option in the titlebar menu and not default behaviour.

9.9 Resizeable Font for Shell Windows

Similar to having dynamically resizeable shell window resolutions, there should be dynamically resizeable font sizes. The amount of text that could be shown a one time in the window remains constant, but the font size is changed (using the resize borders). This should be an option in the titlebar menu and not default behaviour.

9.10 Any Font in Shell Windows

Any font, be it bitmapped or an Adobe Type 1, should be available in shell windows.

9.11 Extensions to the DIR Command

The DIR command should optionally:

  • show the .COMMENT extended attribute
  • show the number of HPFS extents used by a file
9.12 Verbose Copy/Move/Del for Shells

The copy/move/del etc. commands should, by default, show each file being processed. An option to process quietly ('/Q' perhaps) should be available for those not interested in seeing each file being processed.

9.13 CD With a Drive Changes Current Drive (see 9.3)

In a shell, using 'CD' with a drive (ie: 'CD D:\MYDIR') changes the current directory of the 'D:' drive to '\MYDIR', but does not move the user to 'D:'. A new command to move the user to the new drive (for example, 'chddir' or 'cdd' for a short form) should be created to allow users to use the old method while allowing them to take advantage of the new one. If aliases are added to CMD.EXE, the user could opt to alias 'cdd' to 'cd' to always change the drive when changing directories.

9.14 Additions to Shell Command History Functions

Pressing 'PAGE UP' in a shell should print out the complete available command history.

If the user uses the new 'PAGE UP' function or the 'UP' and 'DOWN' arrows when there is already a command partially entered on the command line, the shell should try to match the first part of the command with something in the history. 'PAGE UP' would show all items in the history that start with the partial command, and 'UP' and 'DOWN' would move to the next match. Partially completed commands should be matched up to the current cursor position only. If there are no matches, the system moves forward or backward as usual and 'PAGE UP' returns 'No Matches'. In order to implement this feature, OS/2's shell will have to stop moving the cursor position to the end of the line after searching in the command history.

9.15 Allow Optional ANSI Key Remapping With Command History Enabled

It is undesirable to have OS/2 only allow either ANSI key remapping or command history for shells. This is an unnecessary limitation and should be removed.

9.16 Filename Completion in Shells

Pressing 'TAB' while entering a path in a shell would try to perform 'filename completion', that is, fully resolve the path. The first 'TAB' would find the first match for the partial command; subsequent 'TAB's would cycle through the items that match, until it runs out of matches at which point it restarts at the beginning.

9.17 License 4OS2 From JPL Software as OS/2's Default Shell

Most of the shell wishes could be easily solved by replacing OS/2's command shell 4OS/2 by JPL Software.

9.18 Fix the Handling of '*' and '.' in a Shell

The current handling of '*' and '.' in a shell are terribly outdated, being remnants of the old FAT filesystem. The following is how they should be interpreted.

'*' = select all files
'*.' = select files ending in a '.'
'.*' = select files starting with a '.'
'myprog' = execute a program named 'myprog'
'myprog.' = execute a program named 'myprog.'

Not that it is not acceptable for '*' to equal '*.' and for a program named 'myprog' (no extension, as they are not required with free-form filenames) to only run when it is started as 'myprog.'

9.19 Change When Internal Shell Commands Are Executed

Internal shell commands (like copy, del) should only be executed after searching the path for the program. This would allow people to replace the default commands with their own versions.

9.20 PROFILE.CMD to Store Commands to Run for OS/2 Shells

A program, PROFILE.CMD, should be run every time a shell is opened. It would contain all environment variables (rather than having them in the config.sys) so that they can be easily changed without rebooting the machine.

9.21 Fix Return to Parent Process for Spawned Tasks

When returning from a spawned process (for example, the 'HELP' program, which starts up the system help in another task), control should return to the shell and not to the WPS.

9.22 Allow the User to Drop Fonts on to Shell Windows

Instead of having to go in to the titlebar menu to change the font, the user should be able to drop any font from the Font Palette on to a shell window (be it DOS or OS/2).

9.23 Plug-and-Play Shell

Implementing some of the proposed changes to the shell will no doubt cause third party vendors to worry (as they must provide the same level of functionality to make sales) and possibly users, who may be uncomfortable with the changes. Thus, it is proposed that IBM turn CMD.EXE in to a bunch of DLLs, linked together through a single interface, CMD.EXE. In effect, CMD.EXE would be just a dispatch system - sending out the work to DLLs. This would allow users to make custom shells to suit their needs by plugging in different DLLs, and would allow shareware authors and commercial vendors to use IBM's technology as a stepping stone for their own products.

9.24 Single Command Line

A single command line should be created to allow users to execute OS/2 and DOS software from the same command line. A similar scheme as available right now for specifying DOS configuration could be used (as part of the shell options), and the extended attributes could hold specific configuration options for DOS applications. This would also allow IBM to remove the entire set of DOS utilities as a DOS program could not tell whether an application was DOS or OS/2, allowing seamless integration of the two operating systems.

9.26 Move Should Work Across Devices

The MOVE command should work across devices - this means it would have to do something like copy and then delete the files. When MOVE is used on a directory, it should move the entire contents of the directory across to the destination drive.

10.0 Multimedia

One of OS/2's best features is the MMPM/2; the following are suggestions for making it even better.

10.1 Support More Video Formats

Support for the following additional formats should be provided by the Software Motion Video extension:

  • MPEG-I
  • MPEG-II (when finalized)
  • FLI
  • FLC
  • Video for Windows 1.0 AVI
  • Video for Windows 2
  • Indeo 3
  • QuickTime
10.2 'Loop Feature'

A feature to continuously loop a video clip or sound file (MIDI or Digital Audio) should be provided.

10.3 Update the OS/2 CD-ROM Videos

Each full release of OS/2 should come with a totally new set of videos. They should emphasize human interaction, wild technology and something that could be used as an in-store demo (an introduction to OS/2, perhaps) or something that uses the word 'OS/2' in a way that makes the user think about it.

10.4 Support for Mode Audio Formats

Support for the following additional formats should be provided by Digital Audio player:

  • AU
  • SND
  • VOC
  • Compressed WAV
10.5 Add DSP Support

Support for DSP boards, such as the IBM MWave, should be added to the MMPM/2 to offload the CPU from such tasks as graphics manipulation, voice recognition, text-to-speech, audio compression and video playback.

10.6 MPU-401 Support

The MPU-401 is the standard for MIDI interfaces, yet it is not supported by the MMPM/2. MPU-401 support is essential for those who with to use OS/2 as a music creation platform and support must be provided for these users.

11.0 Utilities

The following are suggestions for changes to existing OS/2 utilities and suggestions for additional utilities.

11.1 Controlling Process Priority

Command line utilities for setting process priority should be available.

11.2 List/Kill Process Commands

As part of the base operating system, a command to kill processes must be provided. There must be some means to kill off a program that has gone awry quickly and simply. In addition, to become useful to the average user, 'pstat' must be simplified. It is recommended that, by default, 'pstat' should show only the base amount of information (i.e.: PID of the main thread and the program command line).

11.3 Shutdown Utility

There must be a utility to shutdown from the command line. By default, it should ask to confirm whether to shutdown the machine or not, but there should be a command line option to unconditionally shutdown. In addition, it should have the ability to reboot the machine automatically at the end of a shutdown. This could then be called by remote users (say, on a network) who could reboot a troubled machine without having to go down to the system.

11.4 Defragmentation Utility

It is unacceptable to have to boot DOS in order to defragment a FAT partition - especially when many DOS defrag utilities mutilate extended attributes. A defrag utility for HPFS would be good as well.

11.5 Syncing Up DOS and OS/2 Utility Functions

All command-line utilities, such as DIR and FORMAT, should have the same functionality as those included with IBM DOS 6.1. This means the same command line options and the same behaviour (for example, COPY should ask before overwriting an existing file, FORMAT should be able to QuickFormat, etc.) Whether OS/2's way of doing things or DOS's way of doing this is chosen, they should both be the same for compatibility and consistency across platforms.

11.6 Utility for Finding the Owner of a Resource

There should be a utility to show the program and process ID of the owner of a particular system resource, be it a pipe, queue, device, file, drive or any other system resource. For example, assuming the program was called 'OWNER.EXE', the user could type 'OWNER \PIPE\MYPIPE' and find out that it is owned by 'MYPROGRAM' running at PID 135, along with any other useful information.

11.7 Migration Database Maintenance

Included in the Migrate program should be a method for updating the database to change settings as well as adding and deleting programs.

11.8 New 'MORE' Utility

The OS/2 'more' utility is showing its age and should be replaced with a faster and more feature-packed version. It should be able to get a filename to read from the command line (ie: you should be able to type 'more myfile'), it should NEVER scroll when showing a full page (should clear the screen and show the full page), should have forward and backward movement using 'UP' and 'DOWN' arrows for moving single lines and 'PAGE UP' and 'PAGE DOWN' for moving entire pages. 'SPACE' would move forward 1 page, 'RETURN' would move forward 1 line. It must have some kind of search capabilities.

11.10 Text-Mode Editor

A text editor that can be used when booting from floppies must be included for emergency measures. I recommend using the same editor that comes with IBM DOS 6.1 which is based on TinyEd, an IBM EWS product.

11.11 Subdirectory Recursion for File Commands

All file commands modification, such as 'ATTRIB', 'DEL' and 'COPY' should have an option to recurse subdirectories. The switch '-r' is recommended for enabling the recursion option.

11.12 Program Scheduler

Include a program to schedule programs to start at different times during the day, allowing support for starting programs at any minute, hour, day of the week, day of the month and month. While it is understood that the ALARM applet can do it, ALARM is not really designed as a task scheduler, and furthermore is probably overlooked by many users because it is quirky to use.

11.14 Distribution of Migrate Database

Assuming IBM periodically updates the migration database (which it should if it does not right now), it should be posted to the IBM BBS as well as to the Internet regularly.

11.15 FDISK Should Not Require a Reboot

Changing drive tables should not require a reboot. Any drive that is no longer available should simply disappear, leaving other drives available for use.

11.16 ATTRIB for Directories

ATTRIB should work on directories in addition to files.

11.17 Migrate Utility Should Remember What It Has Migrated

The Migrate utility should remember what it has migrated and by default not show any applications that have already been migrated in the lists of found applications. An option to 'Show All' would allow the user to select programs that have been installed before.

12.0 DOS

One of the benefits of OS/2 over any other operating system is its ability to run both existing applications as well as the newer, faster and more functional OS/2 ones. The following are suggestions to keep OS/2's DOS support on the cutting edge.

12.1 Update DOS Code

OS/2's DOS code should updated to IBM DOS 6.1 or higher and should include full DPMI 1.0 support.

12.2 Automatic Truncation to 8.3 Filenames in DOS/Windows Applications

Currently, OS/2 will only show filenames that are 8.3-compatible in a DOS/Windows session, which is an extreme problem for those of us with HPFS drives and like to use the long filename feature to its full potential.

12.4 Better SVGA in DOS Windows Support

OS/2 needs better SVGA support for DOS window sessions. All resolutions supported by a card should be available for windows. As long as a window would not cover more area than available on the desktop it should be shown (or perhaps a method for 'squishing' the windows to make them fit on the desktop could be developed).

12.5 DOS Wildcard Expansion

DOS wildcard expansion should be changed to act exactly as in IBM DOS 6.1.

12.6 HPFS Device Driver

Create a device driver to seamlessly handle HPFS disks when booting from real DOS and offer to include it in a user's DOS CONFIG.SYS, if present.

12.7 Allow SETBOOT /IBD
X to be Run From DOS

Having this command would allow the user to boot OS/2 from DOS without having to go through the Boot Manager.

12.8 Use Extended Attributes to Store DOS Config Info (see 9.24)

The extended attributes would store a list of device drivers and environment settings (like EMS, XMS, priorities, etc) for a DOS program, so that any time the program is run its specific configuration is enabled. This moves the dependence on configuration information from the shell to the application, where it belongs in the first place.

12.9 Drag-and-Drop DOS Settings

It should be possible to drag the DOS settings from one program to another. This would greatly simplify the configuration of DOS programs.

12.10 Make DOS-Related Files Less Intrusive

Move all DOS-related files to the \OS2\MDOS directory, like AUTOEXEC.BAT, etc. so that they do not clutter up the root directory.

13.0 WIN-OS/2

Everyone said IBM could never get Windows to run under OS/2, and yet they did and it runs amazingly under most configurations. To enhance IBM's support for Windows, the following wishes were made.

13.1 Win32S Support for WINOS/2

Win32s support should be included as part of the base system to allow users to run such applications as MathCad 4.0. This also means full VXD support should be available.

13.2 Simple Way to Install WIN-OS/2 Fullscreen Drivers

Provide an easy way to change the Win-OS/2 FS device drivers to the manufacturers accelerated ones. One of the biggest problems with Win-OS/2 is the slow FS performance. This turns off many people moving from Windows. Including the video card manufacturers accelerated drivers with an option to install them as the FS ones would help improve this perception.

13.3 Allow OS/2 for Windows Support in Standard OS/2

The standard OS/2 distribution should be able to perform the same magic that OS/2 for Windows can when it comes to starting Windows. This means that a user should be able to use the Windows already on their drive instead of having to install WinOS/2 - even if the user bought the standard OS/2.

13.4 Support Windows for Workgroups 3.11

IBM should support the enhancements brought by Windows for Workgroups 3.11, such as the enhanced file system routines. While it is debatable as to the need for full Windows for Workgroups support (meaning the networking functionality), the user should be able to run Windows for Workgroups using OS/2 for Windows' Windows technology.

14.0 REXX

REXX is one of the greatest features of OS/2 because of its simple way of allowing any user to write very powerful programs. The following are suggestions to make a good thing even better.

14.1 Integration of REXX Queues with API Queues

Why must there be two separate queues in OS/2 - the system queues invoked using the API calls and the REXX queues? Would it not make more sense to have both use the same queues? The transmission between the API calls and REXX could be done using shared memory which is freed after the element is taken off the queue. All that would be passed through the queue would be the address to the shared memory segment. This would not only remove the confusion as to why there are two separate queues, but would allow the user to create very powerful yet simple software with REXX-based clients talking to a C-based server using queues.

14.2 More Integration of the WPS and REXX

The ability to query and control objects is greatly needed in REXX. This means passing data to and from an object, as well as doing things like instantiating objects (for example, opening a WPS folder). Being able to query objects would make it much easier to document and compare object settings.

14.3 Process Control and Shutdown Commands for REXX

REXX should have commands to allow process control (starting new tasks, killing tasks, setting process priority) as well as a command to shutdown the system.

14.4 International Functions (see 5.3)

To implement the standard formats asked for in section 5.3, the REXX API must be expanded to handle the conversion of date, time, floating point and integer numbers, currency, etc. to and from string formats.

15.0 API Set Changes

The following are requests for changes or additions to the OS/2 API set.

15.1 International Functions (see 5.3)

To implement the standard formats asked for in section 5.3, the OS/2 API must be expanded to handle the conversion of date, time, floating point and integer numbers, currency, etc. to and from string and number formats.

15.2 APIs for ALL Standard SCSI Functions

OS/2's API function set should be expanded to include any standard SCSI device, such as CD-ROMs, scanners, tape drives, etc.

15.3 Make All APIs Public

It is unacceptable for part of OS/2's API set to still be hidden away, forcing programmers to hack the libraries to find out how to use these functions.

15.4 Enhancements to DosAllocMem

Two new memory allocation types should be added for DosAllocMem. The first is PAG_RESIDENT which would make the memory object from being paged out or discarded. This would be helpful for those programs that need to have deterministic behaviour in order to maintain real-time I/O responsiveness in heavy workload situations.

The second memory allocation type is PAG_DISCARDABLE which would allow OS/2 to throw away the contents of pages of the object rather than paging them out. This would be useful for application-managed caches. For example, DB2/2 could cache database information in a higher-level form than depending on file system caches. Multimedia applications could cache recently used images or read-ahead data to improve responsiveness to the user.

Two new exception type should be added to help applications using discardable memory to handle accessing pages that have been discarded. The first exception could be named XCPT_PAGE_NOT_PRESENT and would be issued when an attempt to access a discarded page is made. The default behaviour would be to terminate the application.

The second exception type could be named XCPT_DISCARDING_PAGE and would be issued whenever a range of discardable pages are being thrown out. This would help applications update status tables to reflect that pages have been discarded. The default behaviour would be to ignore the exception and continue.

15.5 Enhancements to DosQueryMem (see 15.4)

DosQueryMem should be modified to be able to report resident and discardable page types and also to be able to report whether a discardable page is present (in RAM) or not present (it was discarded).

15.6 New API - DosQueryResourceStatus (see 15.4)

A new API call named DosQueryResourceStatus should return the amount of used and unused physical resources such as physical memory, virtual memory and CPU time. This would aid programs that maintain caches allocated with PAG_DISCARDABLE by giving them more informatino to decide how big to make discardable caches.

The following is a proposed definition for DosQueryResourceStatus.

 APIRET  DosQueryResourceStatus( PID processID, RES_TYPE sourceType,
 RES_MEASURE  resourceMeasure, RES_UNIT resourceUnit, PULONG pResult );
 processID - process ID for which information is to be returned or 0 for
 global information for the entire system
 resourceType - type of resource: RESTYPE_PHYSICAL_MEMORY,
 RESTYPE_VIRTUAL_MEMORY, RESTYPE_DISCARDABLE_MEMORY RESTYPE_CPU_TIME
 resourceMeasure - type of measure: RESMEAS_UNUSED, RESMEAS_USED
 resourceUnit - unit to use for results: RESUNIT_BYTES, RESUNIT_PAGES,
 RESUNIT_PERCENT, RESUNIT_MILLISECONDS
 pResult - pointer to 32-bit unsigned integer to receive the result

16.0 Productivity Folder

OS/2's productivity folder should be one of the highlights of the operating system, and yet if the applications contained in it are rarely used. To remedy this problem, the following wishes should be taken in to consideration.

16.1 Revamping the Productivity Folder

The productivity folder should not only be made up of useful applications, but should also be a reflection of what OS/2 is capable of. They should be technology statements. This means that the applications should be usable, should be SOM-based, support standards like OpenDoc when applicable, etc. They are often the first exposure a user has to OS/2 applications, and IBM should do everything possible to make sure it is a positive first step.

16.2 Provide Base Word Processing Abilities

A small word processor should be included with the operating system. It would have to support things like multiple fonts, bold, underline, etc. This might be a good way to show off OpenDoc.

16.3 Update/Replace Softerm

Softerm has been updated since the version that was included with OS/2 2.0, and yet OS/2 continues to ship with the same version. If it can't be updated, it should be replaced. The current Softerm is too difficult to use for most users.

17.0 Installation and Configuration

Installing OS/2 has been a horrible experience for many users; the following suggestions are designed to simplify the install procedures and make sure they work for everyone.

17.1 A Simple, Rock Solid Install Process

OS/2 has in the past had a reputation for a terrible install process. Whether many of the problems have been solved or not, the fact remains that many people still have problems, and even more people fear installing OS/2 in the first place because they have heard about the 'OS/2 Install Monster'.

In addition to just installing the operating system, the install program should do some initial hardware testing and provide useful feedback to the user about what to do to correct any problems. Things to be checked include:

  • cache memory (works or not)
  • change line in diskette drives
  • proper operating of parallel port

and anything else that could cause problems for OS/2 down the line.

The text mode install program should contain stripped down versions of FDISK and FORMAT (perhaps in the form of DLLS) which would load and execute in the background while the user is reading installation notes.

The PM part of the install should install the MMPM/2 and video drivers rather than forcing the user to install the MMPM/2 and extra video drivers after everything is installed.

17.2 Recovery Floppy/Partition

OS/2 should allow the user to create a 'Recovery Disk', with only the code needed to get the particular installation of OS/2 up and running for correcting problems, replacing system files, etc. The user should be able to specify whether they want to make a recovery floppy or a recovery partition - the partition, in conjunction with Boot Manager, would allow a user to boot off hard drive to fix problems. Either way, these options would allow the system to boot much quicker than using the 2 install disks.

17.3 Common Install/Uninstall Program

A single, common install and uninstall program should come with OS/2 and IBM should insist that all 3rd party vendors make use of it. This install program should even be used for the OS/2 installation. This install program would use CID scripts to perform the installation and would allow administrators to create their own scripts. The process for creating CID scripts would have to be documented to allow anyone to make their own scripts. Installation scripts would be processed hierarchically and the granularity of packages should go down to individual programs, for example:

  • OS/2 Base System
  • Tools and Games
  • EPM
  • Chess
  • Multimedia
  • Software Motion Video
  • Video Drivers

If, for example, the user chose to install the Software Motion Video drivers, the MMPM/2 would be installed if it was not already installed, while uninstalling Tools and Games would remove EPM, Chess and everything else in the package.

The installation process should support SOM object registration and CONFIG.SYS updating. Uninstalls should remove all traces of the program's existence, including entries in any system INI files (i.e.: OS2.INI).

17.4 Support for Plug and Play ISA

OS/2 should support the Plug and Play ISA specification by Microsoft and Intel to ensure simple installation and configuration of ISA bus cards.

17.5 Progress Indicators

Any task that will take longer than 5 seconds to accomplish should have a progress indicator to assure the user that the system is, in fact, still functioning. These progress indicators should also be used during the boot process, showing loading device drivers etc.

17.6 Test If User Is Visually Impaired

The OS/2 install program should ask the user if they are visually impaired, perhaps along with a simple colour test. This would allow IBM to include one set of icons and schemes for the visually impaired and another set, a much more colourful one, for those who are not.

17.7 Neat Tips, Tricks and Other Interesting Information

During the installation process, little banners showing nifty tips, tricks and other interesting information should appear, giving the user not only something to watch during a lengthy installation, but practical knowledge about an often unfamiliar system.

18.0 Documentation

Some parts of OS/2 have not been documented very well or not at all. The following are suggestions of which parts should be included as on-line documentation or enhancements to existing documentation.

18.1 On-line User Guide and Installation Guide

The provision of the 'User Guide' and 'Installation Guide' as INF files would be much appreciated.

18.2 Make the OS/2 Technical Library Freely Available

Releasing the complete IBM OS/2 Technical Library would be greatly appreciated by all OS/2 users. If this is not possible, at least the OS/2-specific parts should be released. This includes such items as the Redbooks. They are chocked full of useful information for any OS/2 user and would be put to good use by many people.

18.3 An On-line, In-Depth Description of the CONFIG.SYS

There should be an on-line, in-depth description of the CONFIG.SYS consolidated in one INF file. This file should have descriptions of each and every valid command in the CONFIG.SYS, along with useful tips and recommendations.

18.4 Document Productivity Folder

There is no documentation for the software included in the Productivity folder beyond the on-line help for each package. IBM should include some kind of user's guide for each program.

19.0 Packages

The following are packages that are not included in the base system and should be for future releases.

19.1 Peer-to-Peer in Base System

The base OS/2 kit should include some sort of peer to peer networking as an option. Basic TCP/IP networking would be good for cross-platform networking.

19.2 Inclusion of EPM Sources (*.E) and ETPM Compiler

The EPM sources (*.E) and ETPM compiler should be included in the base operating system.

19.3 C2 Security in Base System

Optional C2 security should be available in the base system, complete with a file system to handle file permissions. Support for even higher levels of security would be great, as a separate product.

19.4 Use the CD-ROM Version of OS/2 to Promote OS/2 Shareware

Only a small portion of the OS/2 CD-ROM is used. The remainder could be filled with the best OS/2 shareware, bitmaps, fonts, etc. Software should be initially tested for quality, but after that no restrictions should apply to who's software can appear, except that it must not be commercial. This will give a real boost to the OS/2 shareware industry while not treading on the toes of the commercial vendors.

19.5 Provide a Separate OS/2 Software CD With OS/2 on CD-ROM

Ship each version of OS/2 on CD-ROM with an extra CD of vendor software. Each disk would contain fully featured OS/2 applications that work for a limited number of uses (say, 10 uses). After that, the application must be paid for (by using an 800 number). When ordering the application, the user receives a key to unlock that application so it can be used unlimited times, and the user would have the opportunity to order manuals etc. on the phone.

19.6 Include More EWS Programs in the Base Product

The IBM Employee Written Software collection is chocked full of really useful software. The entire EWS collection should be provided in the CD-ROM version. The floppy version should contain the most useful of the EWS programs - namely TinyEd, ExDesk, MSHELL/TSHELL, etc.

20.0 CONFIG.SYS

The CONFIG.SYS can be a mortal enemy for some users. It is difficult to update and often a little frightening to the novice user. The following are recommendations designed to solve that.

20.1 Multiple-Line CONFIG.SYS Entries

CONFIG.SYS entries should be allowed to span multiple lines to enhance readability and ease of editing the CONFIG.SYS with editors that can not handle the long lines. Entries that span multiple lines could, for example, be enclosed in double quotes ("") or the end of a line could be delimited with two pipes (||).

20.2 Ability to Change LIBPATH Without Rebooting

Not being able to change the LIBPATH without rebooting is a real problem. The user should be able to change the LIBPATH that all new processes will inherit; existing processes will retain their existing LIBPATH.

20.3 SEPARATE CONFIGURATION INFO FROM DEVICE DRIVERS (see 9.20)

The only thing the CONFIG.SYS should hold is device drivers, and even then, only OS/2 device drivers. Putting configuration information (like the LIBPATH, environment variables) in to the CONFIG.SYS makes OS/2 a problem to reconfigure as the system needs to be rebooted for changes to take effect. Such configuration information should be kept in the PROFILE.CMD and executed for every OS/2 process that is started.

20.4 Get Rid of the CONFIG.SYS

Of course, the real solution is to replace the CONFIG.SYS all together.

A folder called \STARTUP would be used to store the device drivers, installable file systems and programs that would normally be started from the CONFIG.SYS.There would be various possible times the driver could be loaded - for example, base-level support for hard drive controllers etc. would be loaded very early in the boot process while things like extra file systems would be started later on. The extended attributes for each file would contain the setting for when the driver would be started. The extended attributes would also contain any necessary command line options.

This directory would be managed by a WPS configuration object that would allow users to do drag-and-drop configuration and set the boot order and command line options for each program to be started.

20.5 PM CONFIG.SYS Manager (see 20.4)

A PM CONFIG.SYS manager is required to help the user get their machine configured as they need it hassle-free until such time as it can be replaced by the WPS Configuration Manager.

20.6 Separate DOS Device Drivers from the OS/2 CONFIG.SYS

It is unnecessarily complex to have OS/2 device drivers included in the same file as DOS device drivers. Another file should be used to hold DOS device drivers instead. It would replace the DOS_DEVICE setting in the program settings for a DOS program; instead, only an option to specify a path to the file should be provided. Any option that is allowable in a DOS CONFIG.SYS should be allowed in here; OS/2 can choose to ignore those that do not apply.

20.7 Driver Configuration Database (see 20.4, 20.5)

A database-based tool for configuring device drivers could be created to simplify their management. The database would contain infomration on what swithes exist, what they do, which drivers must be loaded before this driver can be loaded, examples of use, etc. A GUI utility would use this database to help the user edit the CONFIG.SYS.

20.8 Support for Multiple Configurations

Like DOS, OS/2 should support multiple configurations. However, OS/2's multiple configuration support must be much simpler than DOS's. One method of ensuring simplicity would be to look for files named CONFIG*.* in the root directory of the boot drive. OS/2 would show a menu of all the CONFIG*.* files during boot up, with the default being CONFIG.SYS. The user can then select which configuration to start.

21.0 HELP SYSTEM

When in trouble, the on-line help system is usually the only place to turn, so it should be easy to use and intuitive to use and reasonably well featured. Unfortunately this isn't necessarily the case. The following are suggestions on how to correct this.

21.1 Associate VIEW.EXE with INF Files

Associating VIEW.EXE with INF files will make starting INF files from the WPS much easier for the user.

21.2 Search Feature Should Find Partial Matches

Searching for complete words can be a trial-and-error game if you don't know exactly what you are looking for.

21.3 Allow PM-Style Copy From VIEW.EXE

It should be possible to just mark and copy from an INF file using the same PM-style methods as everywhere else, meaning the user should be able to drag to highlight an area and then use CTRL-INS to copy.

21.4 Ability to Turn INF Files in to Text

It should be possible to turn a partial or entire INF in to a text file.

21.5 Printer-Select Option in VIEW.EXE

It should be possible to select alternate printers from within VIEW.EXE.

98.0 OS/2 in General

The following are items that do not fit in to any other category.

98.1 Maintaining the NumLock State (AS DEFINED BY THE BIOS)

On bootup, OS/2 should leave the NUMLOCK state alone, as it is defined in the BIOS. To support machines without a BIOS option for NUMLOCK, the NUMLOCK state could be defined by an environment variable (for example, 'SET NUMLOCKSTATE=[ON|OFF|DEFAULT]')

98.2 Better Internet Support

IBM needs to provide better support to people on the Internet. This means assigning people to monitor the Usenet newsgroups (comp.os.os2.*), making available Internet-addressable mailboxes for IBM support, making IBM support board message areas Internet accessible and especially keeping the IBM Internet site complete and up to date (software.watson.ibm.com). This means that EVERYTHING available on IBM's Support BBS in Boca Raton should be on this system at the most 1 day after it appears in Boca Raton. Of course, making the IBM's Support BBS Internet-accessible would be the optimum solution.

98.3 Change CTRL-ALT-DEL Meaning

The first CTRL-ALT-DEL should bring up a window asking the user whether they would like to kill the application that had the keyboard focus at the time of the CTRL-ALT-DEL, reboot the machine or cancel. The second CTRL-ALT-DEL will unconditionally reboot the machine.

98.5 Boot Drive Selection

There should be a variable in the CONFIG.SYS to denote the boot drive, which could be used for anything (such as LIBPATH entries or entries in the OS2.INI) that knows it will always be running from the boot disk. This would give a sort of disk independence for boot disks and make the task of transferring configurations much simpler.

98.6 Slim OS/2

There should be an OS/2 that will run in less than 4 MB (i.e.: start up in 2 MB, but for performance run in 4, much like OS/2 starts in 4 now but for performance people use 8). It should also use less disk space.

98.8 Optional Saving of Memory State

The user should be able to save the memory state of the machine to the swapfile as an option during shutdown. This would allow the machine to start up with all programs and documents opened to the exact place they were before shutting down. It would be desirable to be able to save the memory state for individual applications instead of the memory state of the entire system. This would allow the user to do such things as:

  • interrupt a long debugging session and reload it the next day
  • save the state of a program before attempting a critical manipulation
  • save the state of a program when a bug has occurred or is about to occur to give to the author for debugging purposes.
98.10 Upgrade SOM to SOM-II, Add DSOM w/Peer-to-Peer (see 19.1)

Upgrade OS/2's SOM and the WPS to SOM-II. When Peer-to-Peer services are installed, install DSOM.

98.11 Add Support for OpenDoc (see 16.1)

Support for OpenDoc should be included with the operating system.

98.12 SUPPORT SWAP PARTITIONS

OS/2 should support swap partitions in addition to swap files. Swap partitions eliminate costly file I/O overhead by allowing the operating system to do block writes right to the device. OS/2 should also support multiple swap partitions, allowing the user to spread the swap activity over many disks.

98.13 Keyboard Definition Utility

The user should be able to define their keyboard as they desire instead of being restricted to the keyboard layouts defined by the Country setting.

98.14 Alt-Tab Should Work Like Windows

The ALT-TAB key combination, which cycles through the running programs, should work like in Windows. This means that rather than flipping through the programs, a little box showing the name of a running program should appear. Each time the user hits ALT-TAB, the name of the next running program would appear, until there are no more programs and it restarts at the beginning again. When the user finds the program they want, they let go of the ALT key to switch to that program.

98.15 Encourage Group Design

IBM should encourage vendors to get together as groups to design software for OS/2. This means things like device drivers, file systems, common functionality for applications, etc. This will help the user enormously by creating some form of standards for third party support.

98.16 Lower Memory Requirements

The standard PC ships with 4 MB memory - not nearly enough to run OS/2 properly. To support these standard configurations, OS/2 should be modified to run with acceptable speed (comparable to a 6 or 8 MB configuration) on 4 MB systems.

98.17 Put the Whole Operating System in \OS2

The entire operating system should be held within \OS2 - this includes the PSFONTS, SPOOL and DESKTOP directories, and possibly even the multimedia support.

98.18 Log the Boot Process

Often error messages fly off the screen during boot up. To allow the user to diagnose problems, a log of the boot process showing everything sent to the screen should be created.

99.0 CONTRIBUTORS

Without the many contributors from networks all over the world, this list would not be possible. I would like to thank each and every person who helped me make this list what it is today.

 Abbott, Darren (abbott@batman.dynetics.com)
 Aiyagari, Sanjay (sanjay@cs.columbia.edu)
 Babcock, Bob (peprbv@cfa0.harvard.edu)
 Behrens, Frank (frank@sax.sax.de)
 Bonnaud, Laurent (bonnaud@inrs-telecom.uquebec.ca)
 Bononno, Robert (bononno@acf2.nyu.edu)
 Byrne, Peter (peterb@mclprism.co.uk)
 Cadiz, Bombim (cadizht@csgrad.cs.vt.edu)
 Caldwell, Larry (larryc@teleport.com)
 Caples, Jon (jcaples@netcom.com)
 Coen, Paul R. (pcoen@drunivac.drew.edu)
 Corrigan, John (1:3406/15)
 Cox, Sam (slc00@lvld.hp.com)
 Derbyshire, Drew (software@kew.com)
 Dhir, Al (adhir@betelgeuse.iagi.com)
 Duffy, Patrick (duffy@theory.chem.ubc.ca)
 Fahller, Bjorn (bjorn@ludd.luth.se)
 Freeborg, John (johnf@persoft.com)
 Fischer, Kevin (kfischer@hurricane.seas.ucla.edu)
 Freeman, Jerry (n6140299@henson.cc.wwu.edu)
 Gurganus, James (gurganus@ecn.purdue.edu)
 Harden, John (johnh@splat.com)
 Heiden, John (jheiden@uoft02.utoledo.edu)
 Henry, Andrew (bspahh@ss1.bath.ac.uk)
 Hernandez, Manolo (manolo@rcf.rsmas.miami.edu)
 Huttunen, Ari (ari.huttunen@hut.fi)
 Jensen, Lew (lrj@helios.tn.cornell.edu)
 Karasch, Bernt (bernt.karasch@ruba.rz.ruhr-uni-bochum.de)
 Kiehl, Horst (h.p.kiehl@kfa-juelich.de)
 Kint, Rene (kint@tudebg.et.tudelft.nl)
 Knotts, Brian (bknotts@mcimail.com)
 Kwilas, Kris (kris.kwilas@gco.com)
 Lassiter, Vincent (lassiter@pentagon-hqdadss.army.mil)
 Leung, Tedman (tedman@sfu.ca)
 Liskov, Nate (nate@miki.lcs.mit.edu)
 Longton, Andrew (1:109/347)
 Lonngren, Fredric (Fredric.Longren@eos.ericsson.se)
 Hamblen, Nathan (nathan@crl.com)
 Hanser, Per M. (perhans@mmf.ruc.dk)
 Horvath, Joshua (pari4038@nova.gmi.edu)
 Mack, Thomas (mack@ips.cs.tu-bs.de)
 Mackintosh, David (1:163/557)
 Martin, Steve (steve@dlomas.com)
 Masalehdan, Babak (tillman+@pitt.edu)
 Menard, Francois (1:257/445)
 Narramore, Mattison (jmn@gandalf.rutgers.edu)
 Ngo, Jonathan Vincent (jngo@charon.engga.uwo.ca)
 Patanen, Jani (japa@mits.mdata.fi)
 Petrilli, Jack (jack.petrilli@rose.com)
 Raine, Michael John (michael-raine@uiowa.edu)
 Regoli, Luca (mc0280@mclink.it)
 Roderick, Richard (richard@kira.csos.orst.edu)
 Rodgers, R S (rsrodger@wam.umd.edu)
 Salo, Mike (1:282/108)
 Samuel, Joshua (josh@werple.aphana.org.au)
 Shiu, Venone (h9218919@hkuxa.hku.hk)
 Skinner, Joseph (joe@jsnode.equinox.gen.nz)
 Stephenson, Dan (dano@srl01.cacs.usl.edu)
 Swackhamer, Jay (c/o Evan Champion, evanc@spatial.synapse.org)
 Swanson, Craig (1:202/354)
 Tan, Cheng-Yang (cytan@tristan.tn.cornell.edu)
 Teittinen, Marko (marko@cs.umd.edu)
 Timms, Ian (itimms@ariel.ucs.unimelb.edu.au)
 Venkateswar, Ravikumar (rvenkate@uiuc.edu)
 Verburg, Bram (2:500/137.21376)
 Veronese, Luciano (veu@necsy.it)
 Vezeau, Danny (spice@bmerha2f.bnr.ca)
 Vulis, Dimitri (dlv@bwalk.dm.com)
 Wiencken, Marcus (wiencken@linac.ikp.physik.th-darmstadt.de)
 Wilcox, Duncan (mc2199@mclink.it)
 Wiley, George (magrw@levels.unisa.edu.au)