═══ 1. PC/2 Help for Help ═══ PC/2 - Program Commander/2 Version 1.90 for IBM OS/2 2.x, 3.x Presentation Manager Copyright (C) by Roman Stangl May, 1995 Please select one of the following topics for further information: o About the utility PC/2 o Installing PC/2 o Using PC/2 as a WPS addon o Concepts of the Popup Menu o Starting a Program from PC/2 o Setting up the Popup Menu - Adding a Submenu - Adding a Program - Adding Popup Menu controls - Resorting a (Sub)menu - Runtime parameters o Setting up the Desktop o PC/2's Desktop Overview Window o PC/2's Spooler Control window o PC/2's compatibility to other applications o Error Messages o Questions & Answers Note: PC/2 contains "WPS 2 PC/2" WorkPlace Shelll migration tool in its package. For further information about WPS 2 PC/2 select Help from the WPS Object WPS 2 PC/2 itself. WPS 2 PC/2 is installed on your Desktop during installation of the PC/2 package. ═══ 2. Help for About PC/2 ═══ PC/2 - Program Commander/2 Version 1.90 for IBM OS/2 2.x, 3.x Presentation Manager Copyright (C) by Roman Stangl Roman May, 1995 E-Mail: o InterNet: rstangl@vnet.ibm.com o IBM VNET: 61821799 at VIEVMA o FidoNet: Roman Stangl @ 2:310/14 LA BAMBA BBS Tel.: (Int. Code +43 +1 +6156811) o FidoNet: Roman Stangl @ IBM Austria National Support BBS Tel.: (Int. Code +43 +1 +21145-6600) The PC/2 package (consisting of the OS/2 PM application PC/2 and the WPS program Object WPS 2 PC/2) is classified as Freeware. Under the copyright, you are allowed and encouraged to freely use, distribute or modify this program under the following conditions: o The complete source code and all executables must be included. This rule also applies for any modifications/recompilitions you've made. Just drop me a short note descibing the changes. o You may only charge for the costs of duplicating. Distribution on InterNet, FidoNet or similar is preferred. Therefore, this program must not be sold by immoral "Public Domain & ShareWare" dealers that charge a price way over the actual duplication costs. o Any commercial use is prohibited without contacting me beforehand, except for incorporating the concept or code in any future release of OS/2 by IBM. This however this clause doesn't apply to individual private use. o You don't want to port this utility to MS Windows, Windows NT (Nice Try), or Windows96 (or whatever "Chicago" will be called when it is ready) You are encouraged to upload this utility to your favorite file-server or BBS. Please dooublecheck that no file from this archive is missing, if you change the archive to a different compression scheme. Please retain the same name, regardless of the compression method you use. PC/'2 archive is named PC2vxyy.ZIP, where x is the major and yy the minor version, e.g. 190 for version 1.90 (PC2v190.ZIP). If you find this program useful and want to honor many weeks of work writing this utility, you are welcome to send me a small fee of about 50 to 150 Austrian Schillings (about 5 to 15 dollars) to my home address. Of course you don't need to pay again, when a new release of PC/2 comes out. Please send any donations in cash - it is a lot of trouble to work with foreign money orders or equivalent, here in Austria, plus the banks charge an arm and a leg! Suggestions are welcome. Because of the Freeware status of PC/2 I am not going to send new versions or anything else by mail (which is likely to become a never ending story), however I try to do my best to do support via E-Mail. As my time is limited, contributors' get priority treatment. Thanks to all those people who sent me proposals and bug reports to improve this utility! Special thanks to Mario Semo, Carrick von Schoultz and Markus Hof, Roman Fischer, Alex Stewart, Ingo Pflanz, Rolf Knebel, Michael Wakunda, Stefan Hora, Monte Copeland, Roland Emmerich and Joe Hartman (thanks Joe, without your support, PC/2 and its documentation would not have experienced such a quality improvement) who gave me advice, source code, valuable hints, or other support to improve PC/2 Also, thanks to anyone who makes "undocumented" information available, too! My home address is: Roman Stangl Strebersdorferstrasse 46 A-2103 Langenzersdorf, Austria ═══ 3. Installing PC/2 ═══ You have obviously started PC/2 once, because you are reading this help panel. The installation is straight forward, with a REXX script that installs PC/2. However here are some points to take note of: o The installation installs an icon on the Desktop and starts the help panels of PC/2. To ensure that OS/2 starts PC/2 automatically the next time you boot your system, you must start PC/2 again (you then can notice that the background behind the icon changes). If you have added SET RESTARTOBJECTS=STARTUPFOLDERSONLY in your CONFIG.SYS then you must add a shadow of PC/2 to your startup folder to ensure PC/2 is started the next time you boot OS/2. o PC/2 requires access to the PC2HOOK.DLL and PC2SPOOL.DLL files. PC/2 tries to find these files either in the current directory when the LIBPATH environment variable contains .;, or in a path that is included in the LIBPATH environment variable. PC/2 will not be able to run if PC2HOOK.DLL can't be loaded, and won't be able to provide the PC/2 Spooler Control Window, if PC2SPOOL.DLL can't be loaded. The file PC2.HLP may be either accessible in the directory, where PC/2 is started from, or in a path that is included in the environment variable HELP. If you have problems running PC/2, ensure that the working directory of PC/2 is accessible by these variables in your CONFIG.SYS. o The installation program assumes that you are using the default profile PC2.CFG containing a standard pre-defined Popup Menu. If you want to use another Popup Menu, you have to restart PC/2 and add your preferred profile as a commandline option. Click to the next help panel to get more information about commandline parameters. You may also use your favorite editor to import one profile into another, but you have to ensure that you don't violate the syntax rules of the profile. o PC/2 looks for its initialization file, PC2.INI in the directory where PC/2 was started from. o You can only run one copy of PC/2 concurrently. o If you select a DOS or WIN-OS2 Program to be started via PC/2, the time-slice of their sessions is optimized (the DOS-Settings are modified to IDLE_SECONDS=5 IDLE_SENSITIVITY=100) to get better performance. This is useful for most DOS games. o You may use PC/2 with or without the WPS installed, you may even use PC/2 as a replacement for the WPS. To do so, you must install PC/2 first. Then you have to ensure that PC2HOOK.DLL and PC2SPOOL.DLL are accessible by PC/2. You also have to ensure that PC2.HLP is accessible in the PC/2 directory, or in a path pointed to by the HELP environment variable in your CONFIG.SYS file. Then replace the statement SET RUNWORKPLACE=C:\OS2\PMSHELL.EXE with SET RUNWORKPLACE=[path]PC2.EXE or SET RUNWORKPLACE=[directory]PC2.EXE where where [path] is the full pathname of the directory (including the drive letter, e.g. C:\PMAPPS\PC2\PC2.EXE) and [directory] is the pathname of the directory (excluding the drive letter, e.g. \PMAPPS\PC2\PC2.EXE) you installed PC/2. Warning: If you specify only the directory you installed PC/2 into, then be sure that this directory is found on your boot drive. This feature is useful when using PC/2 as the shell process for an OS/2 maintenance setup created by BOOTOS2. See the compatibility section for more information. The next time you boot, PC/2 will be started as a replacement for the WPS. Be careful, OS/2 seems to dislike any parameters added to the program started as a replacement for the WPS! Of course, you can start the WPS from a command prompt by typing START PMSHELL or add a corresponding entry to PC/2. Warning: When running PC/2 as the Workplace Shell process, you can't terminate PC/2, because the WPS process should not terminate, neither by closing PC/2 from the Window List, nor by closing it from the Exit smarticon or the Exit OS/2 menuentry. Any WPS process will automatically be restarted by OS/2 immediately following its termination (you may notice this fact when the WPS traps, it will restart immediately, and rebuild your desktop). Warning: PC/2 has not been tested on all OS/2 versions or installed software and hardware (simply because I don't have them), so there is no guarantee of PC/2 being bugfree!. ═══ 4. General Help for PC/2 ═══ PC/2 - Program Commander is an addon or replacement for the WPS (Workplace Shell). The user can configure a Popup Menu that will appear when mouse button 1 is clicked anywhere on the Desktop. From this freely configurable Popup Menu, you can select an entry - which is launched immediately. PC/2 lets you define Hotkeys too. Pressing the Hotkey defined for a program the program is switched into the foreground or, if it is not already running, launched immediately. PC/2 also allows you to expand the Desktop up to an 81-fold Virtual Desktop, you may define Hotkeys to switch to an application on any Virtual Desktop by a simple keypress. You may also switch to any Virtual Desktop directly by doubleclicking with mouse button 1 on PC/2's Overview Window. PC/2 also enables you to define a UNIX-style behavior of switching the input focus from one window to another. This allows you to have the input focus in a window which is not the topmost window. (Sounds complicated, but try it; you'll like it!) PC/2 additionally provides a simple Spooler interface. You can manage the printer queues and jobs on your local machine - a necessity when using PC/2 as a WPS replacement (because without the WPS you have no spooler available unless you use PC/2's spooler interface). PC/2 allows you to customize the fonts used by the Popup Menu, the Overview Window and the Spooler window, just by dragging fonts from the Font Palette to PC/2. Warning! On some display drivers you may not be able to set up every font lable in the Font Palette exactly. Instead, you may just get a similar font. For example. the Popup Menu might look like: You have selected the item Prompts, which is a Submenu containing seven more items. E.g., the item OS/2 Window starts a windowed OS/2 command prompt, when selected. This Popup Menu is fully configurable - you may add, change or remove items. An item can either be a Submenu containing more items, the name of a program, or a Menu Control. The complete Popup Menu can be modified, but the Menu Control Desktop Menu must be defined before the Popup Menu will be displayed after mouse button 1 clicks. If you have not defined this Menu Control, the Setup dialog appears after mouse button 1 clicks enabling you to add this control. Your configuration is read from the default profile PC2.CFG each time PC/2 is started and saved every time you save your changes. You can of course overwrite the default configuration filename to a file named Filename.ext by invoking PC/2 with the following commandline option: PC2 [-Profile Filename.ext] or PC2 [/Profile Filename.ext] where Filename.ext conforms to a filename of a PC/2 profile. Both FAT and HPFS filename naming conventions are accepted. A few sample configuration files are provided in this package. As the default, the Popup Menu appears if you double-click once on the Desktop, if no option, or the following option is specified: PC2 [-DoubleClick] or PC2 [/DoubleClick] You may select a single-click instead, by invoking PC/2 with the following commandline option: PC2 [-SingleClick] or PC2 [/SingleClick] Please be sure not to combine both click behavior options. If you don't specify this option, a user-modifiable default behavior is taken from PC2.INI. Of course the options changing the click behavior and the configuration filename options may be combined. You may disable that PC/2 automatically starts the sessions having the style Autostart, but PC/2 does preserve this style in the configuration file save. This may prove useful when customizing the Popup Menu. To disable the Autostart style, invoke PC/2 with the following commandline option: PC2 [-NoAutostart] or PC2 [/NoAutostart] You may also select the behavior to ignore the Autostart style, by selection of the Ignore Autostart checkbox on the Virtual Desktop Settings dialog. Because some people use PC/2 as a WPS replacement, PC/2 contains a Menuitem to ShutDown OS/2. By selecting this entry, it is safe to power off your PS/2 or PC after all disk activity has been stopped, although no windows are closed. If you run PC/2 as a WPS replacement, you may want to start the WPS either by starting PMSHELL.EXE from a command prompt or by starting a PMSHELL Menuitem with PC/2. You then can follow the WPS initialization by heavy disk access and buildup of your Desktop with objects. PC/2 requires to "see" the Desktop (in technical terms the window handle of the Desktop) to be able to catch mouse button 1 clicks. If you start the WPS, the Desktop also undergoes changes too. Therefore, PC/2 checks regularly if the Desktop has changed, so you may have to wait a little bit after the WPS was started, before PC/2 recognizes mouse clicks again.. I would strongly recommend starting PC/2 during OS/2 boot. If you don't want to use the default profile, don't forget to add /Profile Filename.exe to the Parameters entryfield in the Settings of PC/2. The reason why I wrote this utility was primarily that many programs installed on a system require many folders and icons on the Desktop. But to start a program, I don't want to open and close folders, so I made shadows on the Desktop messing it up, and adding overhead, thereby slowing things down. Using PC/2 as a WPS replacement, you will get: o a remarkable performance increase and boot time decrease, especially on systems equipped with less than 8 MB memory, o improved overall system performance and response times due to less swapping. o the ability to run multimedia or network software with acceptable performance, even with 8 MB or less, o or the ability to create a maintainance partition ( for example by using BOOTOS2) without losing immediate access to your favorite programs. The solution I prefer, is to click on the Desktop - this gives me an immediate menu, from which I can easily select an application to be launched from this menu, or alternatively launch (or switch) to an application by simply pressing a Hotkey. So PC/2 will help you to start your programs more quickly, without needing to open and close folders, and all the overhead of the WPS. Of course, to gain this speed, and and overhead savings, you lose some of the "niceties" of the WPS, for instance, you can't start applications from icons. ═══ 5. Concepts of PC/2 ═══ The basic idea behind PC/2 is to have a configurable Popup Menu available to start programs quickly, without having to open and close folders. The Popup Menu, popped up when you click with mouse button 1 anywhere on the Desktop (just like button 2 for the Desktop Menu), consists of menu items (sometimes called menuentries). An item may be a Submenu, which contains further items, or the title of an Application, or Menu Control items. A Submenu contains of a little arrow right beside the title of the Submenu. (Mouse button 1 is on most systems the left mouse button.) To change the font of the Popup Menu, drag a font from the Font Palette to the smarticon bar of PC/2's Overview Window. This font will be saved when you exit PC/2. You can imagine this Popup Menu as a tree, with Submenus as branches, and applications as leaves on a particular branch. PC/2 allows you to freely build your own tree. To do so you have to click on the Desktop with the left mouse button and select SetupConfig Menu from the Popup Menu. A dialog box appears, where you can add, modify or remove Submenus and Applications. The listbox displays all Submenus and Applications of one level (like a cut through the tree). Of course you may change this level up and down. Note: You must have defined the Menu Configure Menu before PC/2 will display its Popup Menu on mouse button 1 clicks. If you don't define it, PC/2 displays its Setup dialog after each click until you have added this control. ═══ 6. Help for starting a program via PC/2 ═══ After you have configured the PC/2 Popup Menu, you click on the Desktop with mouse button 1, select the Application you want to start and click on it. The Application will be started as if you were clicking on an icon. One advantage starting an Application this way is that you can manipulate many startup parameters governing how the Application is started. This is one thing you can't do with many icons. E.g., you can start it invisibly (useful for a backup program), and making it only visible by selecting it from the window list. You may also specify the size of the Application or that you want to start it in the background. You can even set its priority or define a Hotkey to switch to it. You can also start WPS Objects that are not Folder (WPFolder class) or Program (WPProgram class) type WPS Objects, if they have an ObjectID defined. Most OS/2 WPS Objects get installed with a predefined ObjectID by default during installation (see OS2_20.RC for a more detailed information), and many applications (e.g. IBM C Set++, Toolkit, ...) defined an ObjectID for their WPS Objects too. Folder or Program WPS Objects and other WPS Objects that have a defined ObjectID can be dumped automatically by WPS 2 PC/2, to create corresponding Popup Menu entries. You can also open any WPS Folder by PC/2 after dragging the folder onto PC/2 to create a corresponding menuentry. Warning: You can start WPS Objects via their ObjectID and open folders only if the WPS is running, because only the WPS can process the request made by PC/2 to open them. To close an Application, select the corresponding option from the Application or terminate it from the Window List. Alternatively, you may use PC/2's Kill smarticon to close the application's window. ═══ 7. Help for PC/2 Setup ═══ In the listbox, all Submenus and Applications of one level (imagine a cut through the tree) are displayed. A Submenu has an arrow right beside it. For instance, assume the listbox contains 6 Submenus and 2 Applications resulting in the following Popup Menu: Select the item Config Menu to configure the items appearing in the Popup Menu. The Setup dialog appears, allowing you to adjust all items of the current level. You may want to get into the Submenu Prompts. Just select the Submenu Prompts and click on the button Level Down >>. The listbox will now be filled with all Submenus and Applications of the Submenu Prompts. To get one level up, simply press << Level Up. If nothing seems to change, you may be either at the highest level (the root of the tree) or at the deepest level (a leaf of the tree) of a Submenu. To configure the Popup Menu, just select an item and/or invoke functions by selecting the following pushbuttons.. Pushbutton: Description: Level Down After selecting a Submenu, click on Level Down. The listbox contents are replaced with the Menuentries of the Submenu. You may alternatively doubleclick on a Submenu to change to. Level Up Selecting Level Up chains up into the next upper Submenu level, unless the root level is reached. Add Submenu To add a Submenu, press the button Add Submenu. The Menu Installation dialog is displayed, allowing you to add a new Submenu. After pressing Ok in that dialog, the Submenu will be inserted either after the selected item, or at the end of the list, if no item was selected. Add Program To add an application, press the button Add Program. The Program Installation dialog is displayed, allowing you to add a new Application. After pressing Ok in that dialog, the Application will be inserted after the selected item, or at the end of the list, if no item was selected. Add Control To add a Control press the button Add Control, and a dialog appears, allowing you to add Menu Controls predefined by PC/2. Change Entry To change a Menuentry that corresponds to an executable application, select the application and then invoke Change Entry to display the Program Installation dialog. Alternatively, you may just doubleclick on a Menuentry to display the Program Installation dialog. Remove Entry ,To remove an application or an empty Submenu, select the Menuitem and click on the button Remove Entry. Resort Menu To resort a Submenu press the button Resort Menu. A new dialog is displayed allowing you to resort the currently listed Submenu. Press here to get more information about the Resort dialog. If the listbox is empty, you can't remove or change anything. You also can't select any item, but in this case, you can add a Submenu or an Application by just pressing the buttons, without needing to select an item. (WPS 2 PC/2's icon) By using the listbox on this dialog page together with WPS 2 PC/2, you can easily convert WPS Objects into menuitems for PC/2's Popup Menu. Assuming that you have extracted details about WPS Objects by dropping them onto WPS 2 PC/2's icon on the Desktop, just drag them from WPS 2 PC/2's Status bitmap and drop it onto the Submenu/Program Configuration listbox. PC/2 then generates Popup Menu items automatically and adds them to your Popup Menu. This lets you copy the settings of WPS Objects easily, without entering them manually. For more information about WPS 2 PC/2 just select help from the WPS 2 PC/2 WPS Object, which you can install by PC/2's installation program, if it is missing. Once you have configured your tree of Submenus and Applications, just press Save to bring them into effect and save them to the profile, or Cancel to make them temporarily effective, but without saving them to the profile on disk. Example 1 Example 2 ═══ 7.1. Setup example 1 ═══ Assume the listbox contains the following items resulting in the following Popup Menu: You want to remove the Submenu References, rename the Submenu Tools to Utilities and add a Submenu Demos. 1. Select the item References. You can now press the button Remove Entry to remove the submenu, but only if this Submenu is empty. If it isn't empty, get into this Submenu by pressing Level Down >> and remove all items. 2. To rename Tools to Utilities select the item Tools and press the button Change Entry. A dialog box appears allowing you to rename this item. 3. Select the item, after which you want to insert the new Submenu. Then press the button Add Submenu to add one. A dialog box appears allowing you to enter the title of a new Submenu. ═══ 7.2. Setup example 2 ═══ Assume that you have remove all items, leading to an empty listbox. Now you want to add the Applications Backup and Terminal. 1. The listbox is empty, so you can't select any item. Just press the button Add Program and a dialog box appears, allowing you to enter all the data required for the new Application. 2. Now the listbox contains the item Backup, select it and press the button Add Program a second time. Again you get a dialog box, where you enter the data for the Application Terminal. ═══ 8. Help for PC/2 Menu Installation ═══ This dialog is used to get a name for a Submenu, which is then added to the Popup Menu. You can enter whatever you like, e.g to make a Submenu that contains OS/2 utilities you might enter Utilities. If you have chosen in the previous dialog to change the name of a Submenu, then overwrite the pre-entered text. Press Ok to accept, or press Cancel to ignore the data you entered. Examples ═══ 8.1. Menu installation examples ═══ Assume you have entered the following Submenu Titles: Title: Purpose: Prompts You want to add a Submenu named Prompts, that contains OS/2 and DOS fullscreen and windowed command prompts. Spreadsheets You want to add a Submenu named Spreadsheets for your spreadsheet programs, such as Lotus 123/G or Excel. ═══ 9. Help for PC/2 Program Installation ═══ This dialog is a notebook consisting of the following pages: Page: Tab title: Application This page is used to define an application's title, path, filename, working directory, command-line parameters and DOS settings. Session This page determines the type of session you want to add. Select between PM, OS/2, DOS and WIN-OS2 sessions. Style This page can be used to define the appearance of an application. If the application doesn't overwrite attributes, you may define the style, size and position. Hotkey This page is used to define a Hotkey which will switch to the application and bring it into the foreground. Warning: If you don't have filled in the Window Name entryfield correctly on this notebook page, you will not be able to use PC/2 features successfully, including Hotkeys, specifying the sessions startup position or keeping the session on the active Desktop. I strongly recommend to read the online help, including the Frequently asked chapter, carefully. Priority This page can be used to overwrite the default priority assigned to an application. Caution: Changing the priority may cause serious problems, because the application may be set to consume the full CPU! Environment This page is used to add environment variables to, or to replace the environment inherited from PC/2 to the application started from PC/2's Popup Menu. Press Ok to accept, or press Cancel to ignore the data you entered in all notebook pages. For more information about one of the above notebook pages, select: o Application Settings o Session Settings o Style Settings o Hotkey Settings o Priority Settings o Environment Settings Example 1 ═══ 9.1. Application Settings ═══ This dialog is used to get the title, the path and filename, the working directory and parameters of a Menuitem, which is then added to the Popup Menu. For a normal user it is the easiest way to use the following guidelines. According to the type of application you add, some fields may not be editable or visible: Fieldname: You would enter: Program Title: Here you enter the name which should appear on the applications's titlebar, which may be overwritten by some applications. For OS/2 and DOS windows, this will also be the title in the window list. You may also name the Objects here, you want to add. For better navigation through the Popup Menu, you may add a tilde (~). When a menuentry has a tilde before a letter, the letter is treated as a mnemonic. After activating the Popup Menu, you can type a mnemonic defined for a session to start it, instead of selecting it with the mouse or keyboard. When defining a mnemonic, ensure that the entryfield Window Name on the Hotkey Settings page is filled in correctly. Path and Filename: Here you enter the fully qualified path and filename. E.g., you might enter c:\os2\cmd.exe to obtain an OS/2 command prompt, or c:\os2\mdos\qbasic.exe to start the basic interpreter. If the executable is located in the path specified in the Working Directory entryfield, you may supply the executable's name excluding path information. Here you also enter the name of WPS Objects. WPS Objects are referred either by their defined Object ID (Identity) e.g or for preinstalled Objects, of e.g. or which can be extracted by the WPS 2 PC/2 WPS Object, unless they represent Folder or Program objects (then their settings are taken instead of their ObjectID, which may be available too). Preinstalled WPS Objects usually have a defined name; you may need to take a look into the file OS2_20.RC to get further information. PC/2 can only launch WPS Objects named by their defined ID, so be careful to get either the correct ID from OS2_20.RC or by extracting the WPS Object in question by using WPS 2 PC/2. You can't use the Program Template to create Objects if you want them to add to PC/2, because PC/2 can't define the Object ID of such Objects, so try to use any installation routine that probably creates a Program object with an ObjectID. Here you would also enter the path and filename of a seamless WIN-OS2 application. WIN-OS2 applications prefixed by a ! (exclamation mark) immediately before the filename get started minimized, applications prefixed by a ^ (caret) get started maximized. To start more than one application, separate applications by a , (comma). (By the way, this is a feature of OS/2 and should be therefore also available for your WIN-OS2 WPS Objects!) Working Directory: Here you enter the directory where the EXE, HLP and DLL files of your application are located. Before the application is started, a change drive and change directory call is made to make this directory the working directory. Parameters: Here you enter the parameters passed to the application. PC/2 allows you to be asked for commandline parameters before the application is invoked. Press on Commandline Parameters to find out more about this feature. Assume that you want to use VIEW.EXE to view the command reference. You would enter: c:\os2\book\cmdref.inf. If you have selected the WIN-OS2 Program Manager PROGMAN.EXE to be started as a seamless WIN-OS2 application, you may enter 1 and only 1 additional WIN-OS2 application. This application will be started by the Program Manager in the same WIN-OS2 session. The Program Manager itself will be started minimized. You may also change the application's style by using !, ^ and , characters as described in Path and Filename. DOS Settings: Selecting this pushbutton opens the standard OS/2 DOS settings dialog (OS/2 DOS support must be installed of course). You can then customize the DOS settings exactly as you would do with a WPS program Object. The settings are then set into the multiline entryfield. You can of course write them by hand, but this is discouraged, because of spelling mistakes easily made. DOS settings are valid for DOS applications, and WIN-OS2 is just a special DOS application. By default, for a new DOS application the DOS Settings IDLE_SECONDS=5 and IDLE_SENSITIVITY=100 are defined. As seamless WIN-OS2 sessions are also DOS type sessions, you may strongly want to adjust the Settings of WIN-OS2 sessions for better WIN-OS2 performance than the default settings, e.g you may want to increase the memory by adding DPMI_MEMORY_LIMIT=8. File Find: If you click on this button, the standard file dialog of OS/2 is displayed where you can select the application you want to install. The application parameters (e.g path) will then be inserted automatically in the corresponding entryfields. Drag & Drop: You can alternatively use the Drag & Drop operation to create a Program Popup Menu entry. There are 3 basic kind of objects you may want to drop onto this notebook page: 1. Program objects, which are *.EXE or *.COM files of PM, OS/2 windowed, DOS or WIN-OS2 applications. Just select one application from, say, a Drives object or from a filemanager, drag it into the dialog over any area that accepts it and drop it. 2. Batch file objects, which are *.CMD or *.BAT type batch files for OS/2 and DOS command processors (CMD.EXE and COMMAND.COM). These batch files are automatically installed to be run through a copy of their command processors (see the online OS/2 command reference for more information about CMD.EXE and COMMAND.COM). 3. WPS Folder Objects, which are opened by the WPS on request of PC/2 when selected from the Popup Menu. If the WPS is not running, PC/2 can't open menuentries of this type. You can't create a menuentry for any object of a different type by dropping them onto this dialog, you have to use WPS 2 PC/2 in this case. Data extracted from the WPS by WPS 2 PC/2 can then be dropped onto PC/2's Setup dialog. The notebook settings will be adjusted according to the application you dragged into. For a power user, the data entered may be less. Because the OS/2 API DosStartSession() is used to start the application, all rules for this API apply as described in the toolkit. Hence you may leave the entryfield Path and Filename blank and then select from the Session Settings group an OS/2 or DOS fullscreen or window, to get a command prompt. You may also start an application indirectly through a secondary command processor by specifying c:\os2\cmd.exe as the Path and Filename and use then the /C or /K option of CMD.EXE in the Parameters entryfield. (For further information, type start view cmdref cmd in an OS/2 command prompt, to get online information about the command processor.) Press Ok to accept, or press Cancel to ignore the data you entered in all notebook pages. ═══ 9.2. Session Settings ═══ Here you can select the type of application you want to add. By default, PC/2 tries to determine the type of an application you installed via the standard file dialog or via Drag & Drop. Option: Description: Determined by WPS This default selection lets the WPS choose the type of application when started. OS/2 Full-Screen The session is a command session, started in full-screen. OS/2 Window The session is a command session, started in a window on PM. Presentation Manager The session is graphical PM application. DOS Full-Screen The session is a DOS command session, started in full-screen. DOS Window The session is a DOS command session, started in a window on PM. WPS Object The Object-ID of the WPS Object to be started is contained in the entryfield Path and Filename:. The session can only be started when the Object-ID is assigned. Seamless WIN-OS2 The session is a seamless WIN-OS2 session. Be sure that your graphics adapter supports such sessions. Currently all seamless WIN-OS2 sessions are separate sessions. Real Mode The seamless WIN-OS2 session is started in Real Mode. Real Mode compatibility is only provided by OS/2 2.0. Standard Mode The seamless WIN-OS2 session is started in Standard Mode. 386 Enhanced Mode The seamless WIN-OS2 session is started in 386 Enhanced Mode. 386 Enhanced mode compatibility is only provided by OS/2 2.1. Separate Session When checked, the seamless WIN-OS2 session in Standard Mode or 386 Enhanced Mode is started in a separate session (loading another copy of the WIN-OS2 environment) otherwise the session is started into a common WIN-OS2 session (loading the WIN-OS2 environment only once). You generally have to verify that the Program Type setting corresponds to the application you installed, for most programs you can use Determined by WPS if you aren't sure. According to the Program Type that is selected, some settings may not be editable or visible. OS/2 and DOS Fullscreen or Windows are only used if you want to start a command prompt as the application. In this case, you would usually enter in the the entryfield Path and Filename of the group Program Data, the path of the corresponding command processor. An advanced technique to select the type of command processor only with these radiobuttons is described under the group Program Type. To add a seamless WIN-OS2 session without a corresponding WPS Object defined, select the Seamless WIN-OS2 radiobutton. Another group of buttons will be enabled, allowing you the select the Settings of the WIN-OS2 session. Although there is a Separate Session checkbox, seamless WIN-OS2 sessions will currently always be started as separate sessions. Warning: Under OS/2 2.0 GA, seamless WIN-OS2 sessions may only be started with the WPS running, otherwise the system hangs. There also seems to be a problem with a real mode session, because such a WIN-OS2 session starts to load, but doesn't finish successfully. Under OS/2 2.1 GA you may start seamless WIN-OS2 sessions with or without the WPS installed. Press Ok to accept, or press Cancel to ignore the data you entered in all notebook pages. ═══ 9.3. Style Settings ═══ You can select one of the radiobuttons and any of the checkboxes to define the style the application should be started with. Warning: PC/2 can only request that an application is started by OS/2 with the selected style, but it can not force the application not to overwrite these recommendations. Some applications overwrite the default style settings, for example by reading them from a profile, and adjust themselfs immediately before becoming visible. PC/2 won't be able to prevent applications from doing this, for example, no-one will be able to move PC/2's Overview Window outside of the Desktop, because PC/2 itself rejects such manipulations. PC/2 can't force such applications to accept the styles you selected. Option: Description: Restored The default style defined by the session itself is used. Maximized The session's default style is modified to maximized. Minimized The session's default style is modified to minimized. Invisible The window created by the application is invisible. No Autoclose The window created by the application is not terminated when the application shuts down. Background The window is created in the background. This option may be useful for sessions that get started by a Hotkey on a Virtual Desktop, to avoid switching the focus from the current Desktop. Autostart A session marked with this setting will by started automatically by PC/2 during PC/2's invocation. This feature works similar as the startup folder of the WPS. User defined Size & Position The session's default size and position is modified to the values entered. PC/2 forces the window to the entered position, even when the application overwrites these values. You may specify a position relative to the origin of the Virtual Desktops (the "middle" Desktop of the 9 Virtual Desktops), useful when the. Virtual Desktop feature is enabled. E.g. if you selected Minimized, Invisible and Background buttons, the application will be started minimized, in the background and invisible (this may make sense for a backup program). Press Ok to accept, or press Cancel to ignore the data you entered in all notebook pages. ═══ 9.4. Hotkey Settings ═══ PC/2 supports the definition of Hotkeys to switch from the current application to other applications just by pressing a Hotkey. If the Hotkeyed session is on another Virtual Desktop, PC/2 switches to this Desktop and switches the application into the foreground. Warning: Hotkeys defined are detected by PC/2 systemwide, that is they may be stolen from any PM applications, unless the application has defined an accelerator for this Hotkey, or you have selected No systemwide Hotkeys on the General PC/2 Settings notebook page. PC/2 supports 0 ... 9 and A ... Z in combination with either the CTRL-Key or the ALT-Key as Hotkeys, giving you 72 different Hotkeys at maximum. This set of keys is the optimum compromise between CPU requirements and keys available on all possible keyboard layouts. If PC/2 can't detect the application running the pressed Hotkey is defined for, it starts the application as if it was invoked by PC/2's Popup Menu. Starting applications by pressing a Hotkey is another alternative delivered by PC/2, when invoking programs delivered by PC/2. PC/2 allows you to mark the application as non-movable around the Virtual Desktop. By defining this style, the application always keeps on the active Desktop, regardless what Virtual Desktop you are switching to. Control: Description: Window Name If you have either marked the application as non-movable, defined a Hotkey or a mnemonic, you must fill this entryfield with a string that equals or is part of either the application's name on its titlebar or the application's name in the Window List. If you use one of the two features and you leave the entryfield empty, PC/2 copies the string from the Program Title entryfield into the Window Name entryfield, when you press Ok. after automatically removing the tilde defined for the mnemonic. Be sure that the string you entered matches only with the current application, because the first match of this string with any applications's titlebar or its entry in the window list will be used. You may want to start your application without these options first, to get its titlebar name or its entry in the window list. Warning: I strongly recommend you fill in this entryfield if you experience unexpected results. PC/2 uses the Window Name to identify the current sessions for all running sessions. Keep on active Desktop Checking this flag keeps the application always on the current Desktop regardless to which Virtual Desktop you move. Enable Hotkey This flag says you want to define a Hotkey for this application. The controls necessary to define the Hotkey will be enabled. You may want to select the session started in background, if it will get started on a Virtual Desktop, to avoid losing focus from the current Desktop. Default Once you press the Hotkey, the Desktop is switched to the Virtual Desktop the application is located on and activates it. Maximized The same as for Default is done, but the applications window is maximized too. Restore The same as for Default is done, but the application's window is restored too. CTRL-Key You define a Hotkey which ranges from 0 ... 9 and A ... Z in conjunction with the CTRL-Key. ALT-Key You define a Hotkey which ranges from 0 ... 9 and A ... Z in conjunction with the ALT-Key. You must select a key in the range between 0 and 9 or A ... Z from the dropdown box, which in conjunction with the CTRL-key or ALT-key is used to switch to the application. You can define 72 different keys this way as the maximum. Current Window List To define the style non-movable or the Hotkey, you may start the application first without these options and grab its titlebar name from its window or its window list name from the Current Window List. PC/2 prior to version 1.90, PC/2 could not detect Hotkeys pressed in OS/2 or DOS windows, but for other windows, when you have defined a Hotkey, you had just to press the key on the keyboard that has the defined Hotkey character labeled on. Said otherwise, this approach was NLS-independent. Version 1.90 and above of PC/2 is also able to detect Hotkeys in OS/2 or DOS windows, but now you have to define the Hotkeys based on the US-keyboard. The new approach of detecting Hotkeys is now NLS-dependent. To explain this in more detail, assume that you have a German keyboard. A German keyboard looks like the US-keyboard, but has the keys Y and Z exchanged, that is the Y key is on a German keyboard where the Z key is on a US-keyboard and vice versa. Now assume you want to define for a program the Z key as a Hotkey. Because the Z key on a German keyboard is at the position of the Y key on a US-keyboard, you have to define the letter Y in this dialog's drop-down box, but to use the Hotkey you have to press CTRL or ALT in conjunction with the Z key. I'm sorry that this is a bit complicated, but the only way I have found out to detect Hotkeys both in PM and OS/2 or DOS windows is by using the Scan-Code of a key, which is the same for a key at a certain physical position on the keyboard for all languages, regardless which NLS-dependent letter is printed on. Which letter is printed on a certain physical key on a keyboard is dependent on the country the keyboard is used at. Similar, because PC/2 detects the physical position of a key on the keyboard and not the letter printed on, you have to translate the Hotkey's letter to the position of the physical key on a US-keyboard that has this letter printed on. Caution! All keys defined as Hotkeys in PC/2 are no longer available for other applications, because once a key is defined as Hotkey no other application except PC/2 gets this key. This is a limitation of the Hotkey feature, because only this way PC/2 can ensure that if a Hotkey is defined, the Desktop switches to this application. The Hotkey launches the application, if the application, the Hotkey is defined for, is not running. If you need a certain key, which is defined as a Hotkey in PC/2, change the Hotkey to an unused key. Even if a Hotkey is defined, you may pass this key to a application, when the SHIFT-key is pressed and hold before the Hotkey. When PC/2 detects SHIFT is pressed together with the Hotkey, it ignores the Hotkey by passing it to the application that currently has the focus. Press Ok to accept, or press Cancel to ignore the data you entered in all notebook pages. ═══ 9.5. Priority Settings ═══ PC/2 allows you to specify the priority of the applications you start via the Popup Menu. OS/2 has the following priority classes and deltas to select from: Priority Class: Description: Idle time Idle-time is the lowest priority class a session or thread can run under OS/2. You may use this option for task that should only be performed if enough CPU-resource is available, i.e. for a background NFS (Network File System) Server or BBS. Regular If not specified otherwise, the priority class Regular is the default class of all sessions and threads. For this default class, the priority delta of 0 is the default. No Change This option just doesn't change the priority. The application is started with priority class Regular and priority delta 0. Time Critical Time-critical priority class is used for time-critical sessions. Examples may be real-time data acquisition. Foreground Server Foreground Server is the highest priority class available and should be only used for small assembly language applications because they really eat up the CPU time. Priority Delta The priority delta selectable between 0 and 31 is defined for each priority class. I.e., a session with Regular priority class and priority delta 25 has a lower priority than a session with Time-critical priority class and priority delta 3. Extreme caution! Changing the priority from the default selection may cause serious performance impacts on your system. Be very carefully when selecting higher priorities, because the higher the priority, the higher the CPU time-slice a session consumes deteriorating overall system performance. Note! You can't change the priority of DOS session (and WIN-OS2 sessions are DOS sessions) because allowing this would lock PM for unknown reasons. For example, if you set an OS/2 command prompt to a Time-critical priority, you may not be able to switch to other sessions until the command prompt is waiting for input. Press Ok to accept, or press Cancel to ignore the data you entered in all notebook pages. ═══ 9.6. Environment Settings ═══ PC/2 allows you to specify the environment of the applications you start. If you don't specify any special environment settings, the the started application inherits the environment of PC/2. PC/2 itself inherits its environment from the process it was started from, which is either the WPS or the OS/2 Shell process itself. You may either add settings to the settings that already get inherited from PC/2, or you may replace settings defined in PC/2's environment with a different value, or you may modify existing settings with additional values.. For OS/2 versions 3.00 (WARP) and above, you may also specify the settings BEGINLIBPATH and ENDLIBPATH, which are not part of the process's environment, but are actually the process's information area, to be technically exact. Even if both are not part of the environment, PC/2 and the OS/2 command processor CMD.EXE allow you to treat both settings like environment variables, because this is more consistent for the user. Warning: The BEGINLIBPATH and ENDLIBPATH settings are not available for OS/2 2.x, because the Operating System doesn't support it, and will be ignored for these versions. An entry in the environment specifies the value of a environment variable, and entry has therefore the following form: ENVIRONMENTVARIABLE=VALUE where ENVIRONMENTVARIABLE is the name of a environment variable and VALUE is the value it gets assigned. You may replace VALUE by anything you want, but ensure that you use the correct spelling. Both ENVIRONMENTVARIABLE and VALUE are case sensitive, and both get inherited to the started process with case sensitivity preserved. Part of VALUE may also be %ENVIRONMENTVARIABLE which gets replaced by the VALUE of the same ENVIRONMENTVARIABLE of the parent process. For example, to add the environment variable MYPROG with the value MyValue you'd write: MyProg=MyValue, or to replace the PATH environment variable of PC/2's environment you could write: PATH=C:\;D:\MYPROG;D:\MYPROG\DLL;, or to append the path X:\TOOLS; before and Z:\NETWORK\; after the existing DPATH environment variable of PC/2's environment, you may write: DPATH=Z:\NETWORD\;%DPATH%X:\TOOLS;. Warning: You can't replace the LIBPATH variable, which, although it's treated like a environment variable in CONFIG.SYS, but does not belong to a process's environment, but to the process itself. The LIBPATH is a systemwide resource. ═══ 9.7. Program installation example 1 ═══ Assume you want to add Lotus 123/G: Fieldname: You would enter: Program Title: Lotus 123/G Path and Filename: c:\123g\123g.exe Working Directory: c:\123g Parameters: (none) Lotus 123/G is a Presentation Manager application so you would select Presentation Manager as program type. The program style may be Maximized, because more information is visible. The priority may be left at the default selection No Change. Assume you want to add the WPS Object System Clock (located in the folder OS/2 SystemSystem Setup): Fieldname: You would enter: Program Title: System Clock Path and Filename: Working Directory: (n/a) Parameters: (n/a) The System Clock is a WPS Object, so WPS Object is selected as the program type. You may have to look into the file OS2_20.RC to get the defined name of preinstalled WPS Objects. Most settings are not available for WPS Objects. Assume you want to add the WPS clock object with the ObjectID . First you must extract the ObjectID by using WPS 2 PC/2. Then drag the extracted object from the WPS 2 PC/2 window onto PC/2's Setup dialog, to create a menuentry within the Popup Menu. After you have created the clock menuentry, you can view its settings by editing the menuentry: Fieldname: You would enter: Program Title: System Clock Path and Filename: Working Directory: (n/a) Parameters: (n/a) The System Clock is a WPS Object, so WPS Object is used as the program type. Assuming that you extracted the ObjectID as outlined before, then the Object ID is . Sorry, this may be a little complicated, but it is the only way to get a known Object ID. Assume you want to add the WIN-OS2 Program Manager. Open the Program Installation dialog, and either enter the path information (e.g c:\os2\mdos\winos2\progman.exe) or drag PROGMAN.EXE into. If you have entered the data manually, you also must check the seamless WIN-OS2 session. Further assume that you want in the same WIN-OS2 session to also start the WIN-OS2 File Manager WINFILE.EXE - then you'd add it to the Parameters entryfield: Fieldname: You would enter: Program Title: Prog & File Manager Path and Filename: c:\os2\mdos\winos2\progman.exe Working Directory: c:\os2\mdos\winos2 Parameters: winfile.exe You can only add a single Parameter to the WIN-OS2 Program Manager. ═══ 10. Help for PC/2 Control Addition ═══ This dialog allows you to add Menu Control items to PC/2's Popup Menu. Except for Break Separator and Menu Separator, you may only add 1 instance of the Menu Control to the Popup Menu. The Menu Control Configure Popup Menu Settings must be added to the Popup Menu in order that PC/2 displays the Popup Menu after mouse button 1 clicks, otherwise the Setup dialog will be invoked after each mouse click until you have added this Menu Control. PC/2 supports the following Menu Controls: Control: Description: Menu Settings This button is used to add the Menu Control to be able to configure the Popup Menu via the Setup dialog. Desktop Settings This button is used to add the Menu Control to configure the Virtual Desktop feature. About PC/2 This button adds the About PC/2 Menu Control. ShutDown OS/2 This button adds a Menu Control, which, when selected, displays a message box allowing you to shutdown OS/2 just by clicking on Ok or pressing the Enter key. Help This button adds the online help Menu Control item. Exit This button is used to add the Menu Control to be able to exit PC/2 via a message box by just clicking on Ok or pressing the Enter key. When running PC/2 as the WPS process, this menuitem will be disabled, because a WPS process should not terminate. Break Separator This button is used to add one break separator Menu Control. You may add this Menu Control to convert a large single-column menu to a smaller multi-column menu. This Control is a Menu Control that you may add as often you prefer. I suggest to use this Control only to break Menuitems not being a Submenu. Menu Separator This button is used to add one separator Menu Control. You may add this Menu Control to enhance the readability of the Popup Menu. This Control is a Menu Control that you may add as often you prefer. Press Ok to accept or press Cancel to ignore your modifications. ═══ 11. Help for PC/2 Resort ═══ This dialog box contains two listboxes, the left one that displays the currently available Menuentries and the right one that displays the currently resorted Menuentries. Select one or more Menuentries from the left listbox and press the Reorder button, to resort it to the right listbox. For the remaining Menuentry(ies) repeat this procedure, until the left listbox is empty. Instead of selecting a Menuentry and then clicking on the Reorder button, you may doubleclick on a Menuentry. You can cancel the resort before you have done any sort, but you have to resort the complete Submenu once you made one resort operation. All sorted Menuentries in the right listbox can't be started with PC/2 until you complete the resort by pressing OK. Warning: You have to press OK in the Setup Dialog to write the resorted Menuentries structure to the configuration file. Because a Break Separator is a style of the preceding Menuentry, you can't resort a Break Separator standalone, you can only resort its owning menuentry which automatically resorts the Break Separator too. ═══ 12. Help for PC/2 Startup Parameters ═══ PC/2 allows you to replace the commandline parameters of your application completely or partly. For example, assume you have a TCP/IP communications package installed on your system. You also have added an Menuitem that starts a file transfer program named FTP. FTP requires the name of the host you want to connect to, as a parameter. To prompt you for this parameter immediately before FTP is started, you would modify the parameters entryfield of the PC/2 Program Installation dialog like [Please enter host address] Further assume that you selected the Menuitem FTP from the Popup Menu. Just before FTP is started, a dialog box is displayed, requesting the host address from you. You would type something like ftp.cdrom.com, then the file transfer program will be invoked as if you typed FTP ftp.cdrom.com from a commandline. Generally, the syntax for the commandline parameters is: Parameter(s) 1 [Text] Parameter(s) 2 Assume you typed FirstFile.doc as the first, and ThirdFile.doc as the second parameter. You would be asked by a dialog box what to replace [Text] with. Assume you entered MyFile.doc then the program will be invoked with the commandline parameters FirstFile.doc MyFile.doc ThirdFile.doc. The string [Text] would have been replaced by MyFile.doc. Of course both parameters may be omitted, both may contain more than one parameter or only one of them may present. Omitting [Text] would start the application without asking you for a commandline parameter prior. You may also use this dialog to add a second WIN-OS2 application to a WIN-OS2 session, if the first application is the WIN-OS2 Program Manager. PC/2 allows you to edit commandline parameters similar to the WPS (open the Settings notebook of any application, position the cursor into the Parameters entryfield and press F1 or Help to get further information). Press Acceot to accept the parameters you entered, or press Ignore to replace the user editable Parameter(s) with an empty string. ═══ 13. Help for PC/2 Desktop Setup ═══ PC/2 supports Sliding Focus and Virtual Desktops. The Sliding Focus gives you a behavior you may know from X-Windows - you don't have to click on a window to activate it and to switch the input focus to it - the window below the mouse pointer is automatically activated. Just move the mouse pointer from one window to another to switch the input focus. You'll notice that the window below the mouse pointer always has a highlighted frame, which OS/2 uses to signal the active window as having the input focus. You may use the SHIFT-key to temporarily suspend the Sliding Focus, which you may find useful for some programs, e.g. online help displayed with VIEW.EXE, because OS/2 doesn't expect mouse movements to switch the active window. A Virtual Desktop is a Desktop enhancement that expands the size of your display and controls which part of the virtual display is covered by your physical screen. For example assume that you are running OS/2 on an XGA-2 at a resolution of 1024 * 768 pixels. Your display has then 1024 columns and 768 rows of pixels, giving you a Desktop where application windows can be seen. We will call this the physical Desktop. Of course you can start windows outside this Desktop, on one of the Virtual Desktops, but you won't be able to see them unless you switch to this Desktop. To summarize the graphics, assume you are using an XGA-2 display adapter at a resolution of 1024 * 768 points: 1. The physical Desktop, that is the screen you are currently looking into is located at the center of all Virtual Desktops, after invoking PC/2 The lower left point of is then the origin in the Virtual Desktop with coordinates of (0, 0). All coordinates on the Virtual Desktop are then counted relative to this absolute origin, counting positive on the right and upper direction and negative to the lower and bottom direction. 2. The Virtual Desktop to the left to your Display after starting PC/2 has negative horizontal coordinates. In our example, this point would be (-1024, 0). 3. The Virtual Desktop right to your Display after starting PC/2 has the absolute coordinates of (1024, 0) in our example. On a VGA screen at a resolution of 640 * 480 the coordinates would be (640, 0), as you have hopefully assumed. 4. When you are using OS/2, you have usually a physical Desktop in front of you, where the WPS (WorkPlace Shell) is running. After invoking PC/2, the WPS is drawn on the Overview Window with the name Desktop. Behind the WPS, which is a Presentation Manager application just covering the while screen, is the image of the physical Desktop, named Display, but it is covered by the WPS, so you can't see it. Now assume you move the physical Desktop onto the Virtual Desktop where the IBM Web Explorer, (named IBM WebE in our graphics), runs. The physical Desktop will then be at 2 in our graphics, and you would be able to see its name Display then, because it is not longer covered by the WPS. Simply speaking, imagine the Virtual Desktop as an up to 9 * 9 array of Desktops, with the physical Desktop, that is the display, just covering 1 of all Virtual Desktops. You just navigate your display around within the Virtual Desktops as you would do on a map from sector to sector. Distributing applications on the Virtual Desktops simply helps you to avoid having all application's windows on your display. Now assume that you move the physical Desktop left, all windows you have started will move right, so some shift out on the right side and some shift in on the left side of your display. Controlling the windows is exactly that what PC/2 does for you. If you move your mouse pointer on the leftmost column of your display (column 0), all windows move rightward, as the physical Desktop moves leftward within the Virtual Desktop. The same principle is used on the rightmost columns and the top and bottom rows. If you move your mouse pointer into a corner of your display, the physical Desktop even will move in two directions, leading to a horizontal and a vertical movement. Of course you can only move your physical Desktop in one direction, as long as this movement keeps it within the Virtual Desktop, whose size you can select from 1 * 1 up to 9 * 9. The Sliding Focus gives you a behavior you may know from X-Windows, you don't have to click on a window to activate it, the window below the mouse pointer is automatically activated. Just move the mouse pointer from one window to another, to switch the input focus. All settings are saved and will be used when PC/2 is loaded unless you have specified a different behavior with the Commandline Parameters. Caution: You may want to disable the Sliding Focus on a machine used for development. When using a debugger (e.g. IPMD) your machine is likely to lock with the Sliding Focus enabled. You can use the Virtual Desktop on a development machine, just avoid switching between Desktops when a debugger is active. Trap popup screens also make changes in the focus order so I would suggest you use the keyboard to dismiss these dialogs. For more information selecte help for one of following notebook pages: o Virtual Desktop Settings o Physical Desktop Settings o General PC/2 Settings Once you have configured the notebook pages, just press Save to bring them into effect and save them to the profile, or Cancel to make them temporarily effective, but without saving them to the profile PC2.INI on disk. If your INI file is corrupted, PC/2 assumes default values, which you then can edit and save to a new INI file. ═══ 13.1. Virtual Desktop Settings ═══ This dialog is used to control the Virtual Desktop feature of PC/2. Fieldname: Description: Virtual Desktop Select this checkbox to enable the Virtual Desktop feature of PC/2. Move OS/2's Desktop This checkbox allows you to move the Desktop within the Virtual Desktop like any other window. The Desktop is another name for the WPS (WorkPlace-Shell). You may check this option if you don't need the services provided by the WPS on all Virtual Desktops. Click to Move If you prefer to click to a surrounding row or column, before the physical Desktop is moved, select this option, otherwise you can change to another Virtual Desktop by just moving the mouse pointer on a surrounding row or column of your Display. Overview Window You may also want an Overview Window, that contains the current layout of the Virtual Desktop. Select this checkbox to enable this feature. You may doubleclick with mouse button 1 on any of the up to 81 Virtual Desktops to immediately switch to this Desktop. commandline option, to move the physical Desktop. Expand WPS to Virtual Desktop When selecting this feature, the WPS is expanded to the size of the Virtual Desktop. You may then distribute WPS Objects to any of the Virtual Desktops. If you have a scroll bar on your WPS, this feature removes the scrollbar when your WPS completely fits into the Virtual Desktop. Desktop Scrolling The scrollbar Desktop Scrolling enables you to define the scrolling factor that is applied to your Virtual Desktop, when switching to the next Virtual Desktop, by clicking on a surrounding row or column. You can select between 0 and 100 % with 5% increments, with 100 % being the default one. Virtual Desktop count These two spinbuttons enable you to define the number of Virtual Desktops in horizontal direction and vertical direction, both in the range of 1 to 9. The first spinbutton determines the number of Virtual Desktops in the horizontal direction, the second spinbutton the number of Virtual Desktops in the vertical direction. Single Click Select this option if you want to activate the Popup Menu or switch to another Virtual Desktop with a single click with mouse button 1. Double Click Select this option if you want to activate the Popup Menu or switch to another Virtual Desktop with a double click with mouse button 1. Preselection Check this item if you want PC/2 to automatically select the first entry of your Popup Menu for you. If the first item is a submenu, it will be opened automatically. Sliding Focus Select this checkbox to enable the Sliding Focus feature of PC/2. Note! Even if this setting is enabled, you can temporarily prevent the focus from moving by holding down the SHIFT-key when moving the mouse. Preserve Z-Order To preserve the Z-Order of the windows, that is, the order in which a window in the foreground overlaps a window behind, also check the Preserve Z-Order checkbox. Note! Even if this setting is enabled, you can temporarily prevent changes of the Z-Order by holding down the SHIFT-key when moving the mouse. Hide Titlebar To hide the titlebar of PC/2's Overview Window select this option. This increases the space available to paint a reduced image of the Virtual Desktops. Hide Smarticons To hide the smarticon bar of PC/2's Overview Window select this option. This increases the space available to paint a reduced image of the Virtual Desktops too, at the cost of not being able to manipulate PM windows on the Overview Window. Press Save to accept the configuration and save it into PC2.INI, or press Cancel to ignore any changes you made. If your INI file is corrupted, PC/2 assumes default values, which you then can edit and save to a new INI file. ═══ 13.2. Physical Desktop Settings ═══ This dialog is used to control the physical Virtual Desktop feature of PC/2. Control: Description: OS/2's Desktop Name PC/2 has to know the name of this Desktop, so you have to ensure that you type its name in the entryfield. Under OS/2 2.0 it's usually named OS/2 2.0 Desktop, but it changes under OS/2 2.1 to Desktop, if you haven't installed it over an existing OS/2 2.0 system. You may rename the Desktop by clicking with mouse button 2 on the Desktop selecting DesktopSettings (or Settings under OS/2 Warp) and selecting the General notebook page. Changing the title can be used to replace OS/2 2.0 Desktop by Desktop. Also ensure that you translate it into your national language, if you don't use an English OS/2 version. Window List Name PC/2 also must know the name of the Window List. The Window List is usually named Window List but you have to ensure that it is translated into your national language, if you don't use an English OS/2 version. Button 2 titlebar click lowers Z-order Select this checkbox if you want to click down mouse button 2 on any window's titlebar to set this window to the bottom of all windows. This moves the window you clicked on behind all other windows, lowering its Z-Order to the minimum. The window under the mouse pointer is moved to the foreground and activated, if it is not the same you clicked on. By holding the Ctrl-key while clicking with mouse button 2 on a window's titlebar, the window under the mouse pointer gets not moved to the foreground and activated. This allows you to kick a window into the background without affecting the Z-order of other windows. By holding the Alt-key while clicking with mouse button 2 on a window's titlebar, the titlebar acts as if you haven't checked PC/2's option Button 2 titlebar click lowers Z-order. This allows you to move the window or activate any special features the window supports. Keep on top Select this option if you want the Overview Window to always stay on the top of the Desktop, even if another window has the focus. Use Spooler Control Window PC/2 provides a Spooler Control Window, which allows you to manage the printer queues and jobs of your local workstation. This feature is primarily to provide printer management, when PC/2 is running as a WPS replacement, because the standard OS/2 Spooler management is a SOM application, and requires the WPS to be running. By default PC/2 starts the Spooler Control Window only, when PC/2 is running as a WPS replacement. When selecting this checkbox, the PC/2 Spooler Control Window is also available when you run PC/2 on top of the WPS (which increases PC/2's memory requirements slightly). Changes of this setting aren't available immediately, but the next time you start PC/2. Background Bitmap Check this option to add the background Bitmap support of PC/2. PC/2 then allows you to define a bitmap, which is displayed on PM background. PM background means all the background of OS/2 that is not covered by the WPS. For example if you have 3 Virtual Desktops, having the WPS as the centered one, then the 2 Virtual Desktops beside the WPS will display the background bitmap. Normal This option displays the bitmap unsized. The bitmap is centered. Scaled This option scales the bitmap so that is covers the complete screen. Tiled The bitmap is tiled covering the complete screen with the tile count selected in the Tile count spinbutton. You can select a tile count of 1 to 99 although OS/2 seems to limit this to about 20. Caution! Under OS/2 3.00 Warp this seems to hang OS/2 completely, requiring a soft reset. A defect (PMR 4X472) has been opened against OS/2 Warp, so this may be fixed by a future CSD (Corrective Service Diskette). This bug is not a problem of PC/2, since it works correctly under OS/2 2.x. Find Bitmap... Select this pushbutton to use the standard OS/2 file dialog to locate the bitmap file you want to display. Path to Bitmap Either fill this entryfield by selecting a bitmap with the file dialog by clicking on Find Bitmap... or enter the fully qualified path to the bitmap manually. Press Save to accept the configuration and save it into PC2.INI, or press Cancel to ignore any changes you made. If your INI file is corrupted, PC/2 assumes default values, which you then can edit and save to a new INI file. ═══ 13.3. General PC/2 Settings ═══ This dialog is used to control PC/2 settings that have a general character. Control: Description: Normal ShutDown (WPS method) Check this item if you want PC/2 to perform a Shutdown of OS/2 the way the WPS does, when selecting ShutDown from its context menu. When this item is checked, and you select ShutDown from PC/2's Popup Menu or SmartIcon, OS/2 informs all application that OS/2 is going to shut down, giving them a chance to write unsaved changes to disk. Some applications, e.g. OS/2 command processors, even ask if you are sure to close them. Ignore Autostart Check this item to ignore the Autostart style of applications in PC/2's Popup Menu, without having to remove this style from all applications individually. You may find this feature useful when temporarily exiting PC/2 and reloading PC/2 without launching the applications having the Autostart style set a second time. You may also specify the commandline option -NoAutostart, as described in General Help for PC/2, to get the same behaviour. No systemwide Hotkeys Check this item to allow PC/2 Hotkeys to be detected only, if either PC/2, the Window List, PM or the WPS is active window when pressing a Hotkey. This prevents PC/2 from stealing Hotkeys from your application software you are working with. For example, if you have defined the Hotkey CTRL+U to start a host upload program, you usually don't want to invoke this upload, when pressing CTRL+U in EPM to undo a typing mistake. Press Save to accept the configuration and save it into PC2.INI, or press Cancel to ignore any changes you made. If your INI file is corrupted, PC/2 assumes default values, which you then can edit and save to a new INI file. ═══ 14. Help for PC/2 Overview Window ═══ PC/2's Desktop Overview Window displays a sized image of all windows available on all Virtual Desktops and allows direct manipulation. Of course PC/2's Overview Window must be enabled before it is displayed. To change the font of the Overview Window just drag a font from the Font Palette to the Overview Window. This font will be saved the next time you exit PC/2. The Overview Window is controlled by smarticons, located at the top of the window. The currently active smarticon is framed and pressed. If mouse button 2 is pressed on a window, the action corresponding to the active smarticon is performed. To perform actions on the windows displayed in PC/2's Desktop Overview Window, the following smarticons may be used: Icon: Description: Exit PC/2 Click on this smarticon to exit PC/2. When running PC/2 as the WPS process, this smarticon will be disabled, because the WPS (or WPS replacement) process should not terminate. Move window Selecting this icon changes the pointer to a window pointer cursor, allowing you to select and move a window by clicking and holding mouse button 2. Hide window Selecting this icon changes the pointer to a window pointer cursor, allowing you to select and hide a window by clicking mouse button 2 on it. The window can be made visible again by selecting it from the Window List. Set to top Selecting this icon changes the pointer to a cross wires cursor, allowing you to move a window on the top of the Desktop by clicking mouse button 2 on it. Set to bottom Selecting this icon changes the pointer to a cross wires cursor, allowing you to move a window to the bottom of the Desktop by clicking mouse button 2 on it. Kill a session Selecting this icon changes the pointer to a cross wires cursor, allowing you to terminate a window by clicking mouse button 2 on it. Maximize window Selecting this icon changes the pointer to a cross wires cursor, allowing you to maximize a window by clicking mouse button 2 on it. Minimize window Selecting this icon changes the pointer to a cross wires cursor, allowing you to minimize a window by clicking mouse button 2 on it. Restore window Selecting this icon changes the pointer to a cross wires cursor, allowing you to restore a window by clicking mouse button 2 on it. ShutDown OS/2 Selecting this icon changes the pointer to a window pointer cursor and displays a message box asking to continue ShutDown of OS/2. If you chose to continue ShutDown, OS/2 closes all file buffers and suspends all disk access without closing the running applications. This ShutDown method shuts down OS/2 immediately without any further user interaction, however active programs do not get informed to write unsaved data to disk. When activating the Ignore Autostart checkbox, PC/2 doesn't ask you to continue ShutDown of OS/2, but performs a ShutDown as the WPS does. This is described in more detail at the Virtual Desktop Settings help. This ShutDown method may take a while and usually required user interaction, however all applications get the chance to write unsaved data to disk. PC/2 Help Selecting this icon changes the pointer to a window pointer cursor and displays PC/2's online help you are reading now. ═══ 15. PC/2's Spooler Control Window ═══ PC/2 supports a Spooler Control Window, which is simply a container filled with the available printer queue and job information available on the local machine PC/2 is running. To change the font of the Spooler Control Window, just drag a font from the Font Palette to the Spooler Control Window container. This font will be saved the next time you exit PC/2. The PC/2 Spooler was primarily added to be able to manage print jobs on systems PC/2 is running as a WPS replacement. Any WPS replacement has to start the OS/2 spooler and provide a mechanism to manage print jobs. To be able to display PC/2's Spooler Control Window, you must select the menuitem PC/2 Spooler from PC/2's Popup Menu (of course you have to add this menuitem via the Control Addition dialog. If the container is empty, PC/2 can't find any printer queue on your local workstation. Menuentry: Description: Refresh Select this item to refresh the Spooler window container immediately from the real-time printer queue status of the local workstation. When you don't select this item, the Spooler window container gets refreshed regularly. Hold job Select this item to set the currently selected job(s) to hold status. Release job Select this item to set the currently selected job(s) to normal status (this request will be ignored for jobs being in the normal status). Delete job Select this item to delete the currently selected job(s). The jobs will be removed from the printer queue by the OS/2 spooler in a few seconds. Hold queue Select this item to suspend the currently selected queue(s). All jobs running in these queues will suspended from printing, too. Release queue Select this item to set the currently selected queue(s) to the normal status (this request will be ignored for queues being in the normal status). Help Selecting this item just displays the online help panel you are currently reading. ═══ 16. PC/2's Compatibility with other applications ═══ This section provides information about compatibility with some (but certainly not all) useful packages. (EWS is the abbrevation for Employee Written Software, a program of IBM to promote programs written by its emplyees outside of IBM. OS2TOOLS is the OS/2 utilities archive on the IBM internal use only IBMPC conference disk.) Program: Compatibility information. BOOTOS2 This package, available as EWS (or from OS2TOOLS), allows you to create a bootable system to either diskette or harddisk. The bootable system can range from a single command prompt, over a PM to a complete WPS setup. This is useful for creating a bootable maintenance partition on a logical FAT (because HPFS requires a CHKDSK when not shut down correctly) drive (requiring under 10 MB disc space), allowing you to recover a unbootable production partition (e.g. changes in CONFIG.SYS which made it unbootable) or to remove files, which would have been locked when booting from your production partition. After creating a PM setup, the standard OS/2 command processor CMD.EXE is your Workplace Shell process. By replacing the line SET RUNWORKPLACE=\OS2\CMD.EXE, which BOOTOS2 creates in your CONFIG.SYS, by SET RUNWORKPLACE=\PC2\PC2.EXE, assuming you have installed PC/2 into the directory \PC2 on the boot drive, PC/2 will be a more comfortable Workplace Shell process. You can of course copy your existing PC2.CFG file to this directory, to continue fast access to your favorite programs. IPFCPREP This package, available as EWS (or from OS2TOOLS) is a great help for writing online help panels (that is compiling *.IPF files into *.HLP files). This package contains a preprocessor that adds conditional compiling, macros and some more things, which the IPFC (Information Presentation Facility Compiler) is definitely missing. PMPRINTF This package, available as EWS (or from OS2TOOLS) is a great help for debugging PM programs. This package contains an object named PRINTF.OBJ, which can be linked in into an executable to replace the standard C-function printf(), which writes to stdout, by a printf() that forwards the output into the window of a PM server application. This allows real-time traces of stdout output, which you can get otherwise for PM programs only by redirecting stdout to a file, and analysing the file afterwards. PMSPY This package, available from OS2TOOLS is a great help for debugging PM messaging. This package consists of a spy, which allows you the see (of course you may define filters to see only some of) all PM messages sent within a process and between processes. PMTREE This package, available as EWS (or from OS2TOOLS) or is a great help for analysis of the hierarchy of all PM windows and within PM windows. It allows you to see which controls a window consist of, and which styles, resources, process IDs, window text, position and size,... are assigned to a window. OS/2 2.x PC/2 was successfully tested with OS/2 2.10 and 2.11 US. It may also be compatible with OS/2 2.00, but this was not tested. OS/2 WARP PC/2 is fully compatible with OS/2 WARP. Using previous versions of PC/2 (1.70 and before) may cause problems when using the Virtual Desktop. Of course, you can continue to use the Launchpad together with PC/2. ═══ 17. Help for PC/2 Errors ═══ PC/2 can't verify all user input for validity, so some user input may cause some PC/2 functions to fail. In this case, a message box is displayed containing the module and the sourcecode linenumber that failed. Also, an error message is displayed, containing which error occurred and what should be done to resolve the problem. E.g. you might've configured to start the program VIEW.EXE by writing c:\os3\view.exe in the entryfield Path and Filename in the Program Installation dialog. This of course leads to an error, because when OS/2 tries to start this item, it can't find the directory \os3\ simply because it should read \os2\. A message box is displayed saying an error occurred, and that the user input should be corrected. Some messages aren't even errors, just warnings (e.g. the message that informs you that the file PC2.INI does not exist or must be updated from a previous version of PC/2). ═══ 17.1. Help for running PC/2 ═══ PC/2 detected that one instance of PC/2 is already running in your system. PC/2 can only be run once concurrently, this instance will therefore shutdown itself. Please ensure that only one instance of PC/2 gets started concurrently, to avoid this error message. This limitation also applies when running two different versions of PC/2, which also may trap all instances of PC/2 due to version incompatibilities. ═══ 17.2. Help for loading DLLs ═══ PC/2 requires access to the DLL PC2HOOK.DLL. OS/2 reported that this DLL or a function within this DLL couldn't be loaded successfully. Please ensure that PC2HOOK.DLL is in the directory PC/2 was started from. You should also ensure that you don't use the DLL from another version of PC/2, because they are very likely incompatible. You can check the version by comparing the file dates, which should be identical. ═══ 17.3. Help for accessing PC2.INI ═══ A problem occurred accessing the profile PC2.INI. You will usually get this message when PC2.INI can't be accessed, either because PC/2 can't read from it, or write to it. When you are running PC/2 for the first time, this message just informs you that an empty or non-existant profile was found. Once you enter some configuration data, PC/2 will then create this file, which will then be used for future invocations. ═══ 17.4. Help for loading PC2SPOOL.DLL ═══ PC/2 requires access to the DLL PC2SPOOL.DLL. OS/2 reported that this DLL or a function within this DLL couldn't be loaded successfully. Please ensure that PC2SPOOL.DLL is in the directory PC/2 was started from. You should also ensure that you don't use the DLL from another version of PC/2, because they are likely incompatible. You can check the version by comparing the file dates, which should be identical. This message is only informational - you may continue using PC/2, however the Spooler interface is disabled. ═══ 17.5. Help for creating working thread ═══ To improve overall system performance, OS/2 was designed to support multithreading for applications. PC/2 also uses this feature, to perform time-intensive tasks with a second working thread, to avoid unresponsiveness of PM. During creation of this working thread, an error occurred. PC/2 will not be able to continue. You may have run out of resources - close some windows or applications and retry. You may have run out of threads; if you are using applications that take full power using multiple threads, increase the THREADS count in your CONFIG.SYS then. ═══ 17.6. Help for accessing PC2.CFG ═══ A problem occurred accessing the profile PC2.CFG, or the profile you specified using the -Profile commandline parameter. You will usually get this message when PC2.CFG can't be accessed, either because PC/2 can't read from or write to. When you are running PC/2 for the first time, this message just informs you that an empty or non-existant profile was found. Once you enter some configuration data, PC/2 will create this file, and use it for future invocations. ═══ 17.7. Help for PC/2's hooks ═══ PC/2 requires to be able to hook into two hooks provided by OS/2 - (the Input hook and the Sendmessage hook), in order to intercept mouse movements, key presses and window positioning. If you experience this error during initialization of PC/2, you can't continue. Ensure that PC2HOOK.DLL is accessible in the directory you installed PC/2 into, and rerun PC/2 again. If you experience this error during shutdown of PC/2 it is recommended to shut down OS/2 to avoid possible data loss. ═══ 17.8. Help for dialog creation ═══ You selected an option that required further user intervention. PC/2 tried to load a dialog window to get the necessary user input, but loading the dialog failed. You may have run out of resources. Close some windows and applications and retry again. ═══ 17.9. Help for changing directory ═══ PC/2 tried to change the current working directory on a drive. OS/2 reported that a call accessing the directories was unsuccessful, however you may ignore this message and continue your work. You may notice that a selected session didn't get started, or the working directory on a drive wasn't changed correctly. ═══ 17.10. Help for changing priority ═══ PC/2 allows you to specify the priority for some session types, which required PC/2 to change its priority, because the current priority gets inherited to sessions started by PC/2 You may ignore this message and continue your work, however a shut down is suggested to avoid potential data loss. ═══ 17.11. Help for starting a session ═══ An error occurred when PC/2 tried to launch the selected session. You may verify the parameters you entered for the session and retry the operation. If a module name is given, that is a DLL of the product to be started, you may have to add this DLL to a path pointed to by the LIBPATH environment variable, or alternatively specify the BEGINLIBPATH or ENDLIBPATH settings under OS/2 Warp. You may also check the following items: o Is the executable's name correctly spelled? o If you don't have specified a working directory, does the executable's name include full path information? o Is the working directory spelled correctly? o Are all DLLs required by the application accessible for the OS/2 loader? (Refer to your application's documentation on how to install the product correctly.) o Is the application's environment specified correctly? o Is the application's session type specified correctly? o Have you tried to start the application through a command processor (CMD.EXE for OS/2 programs, or COMMAND.COM for DOS programs)? o Have you tried to start the application using the same parameters as entered in the application's Program Installation notebook in a command processor window? If the failure persists, you may have run out of resources, close some windows and applications and retry again. You may have run out of threads. If you are using applications that take full power using multiple threads, increase the THREADS count in your CONFIG.SYS then. ═══ 17.12. Help for accessing media ═══ PC/2 tried to access removable or non-removeable media to determine the media's parameters. OS/2 reported that a call accessing the media was unsuccessful, however you may ignore this message and continue your work. You may notice that a selected session didn't get started, or the working directory on a drive wasn't changed correctly. ═══ 17.13. Help for PC/2 as WorkPlace process ═══ When running PC/2 as WorkPlace Shell (WPS) process, you will not be able to close, and therefore terminate, PC/2. PC/2 will ignore any requests to close from the Window List and the Menuentry and Smarticon to close PC/2 are disabled during PC/2's initialization. This is not a limitation of PC/2, OS/2 always restarts the application configured as the WorkPlace process, when this process terminates for some reason. You may have noticed that the WPS itself gets restarted when it traps due to an error caused by itself or its registered WPS Objects. If you no longer want to use PC/2 as the WorkPlace process, please refer to Installing PC/2 on how to undo the changes you made to use the PC/2 as the WorkPlace process. ═══ 18. Help Questions & Answers ═══ The following questions and answers is the online help version of PC2.FAQ. ****************************************************************************** Frequently Asked Questions PC/2 - Program Commander/2 Version 1.90 for IBM OS/2 2.x, 3.x Presentation Manager Copyright (C) by Roman Stangl May, 1995 Version 1.90 Draft ****************************************************************************** 1.) How can I configure PC/2 to display the Popup Menu on the Desktop, using a Mouse Button 1 singleclick instead of the default doubleclick? First, you may select the Configure Desktop dialog on the Popup Menu to select the type of default mouse click action. This information is written to the PC2.INI profile. Second, use the commandline option "-SingleClick" or "/SingleClick" to overwrite the default behavior read from PC2.INI. If you run PC/2 as a WPS replacement, you can't use any commandline option, since OS/2 seems to dislike commandline options on programs run as the WPS. However, this doesn't prevent you from setting the default behavior using the Configure Desktop dialog. 2.) PC/2 assumes that OS/2 is installed on drive C: , but I use drive H: ! Either start with a blank menu and add your programs, or use an editor such as EPM.EXE to change all " C: " occurrences to " H: " in the profile. The profile is named PC2.CFG by default. 3.) How do I add DOS Settings correctly? If you wish to do this using your text editor, ensure you use the exact same spelling as found in the settings of a typical DOS program. They have usually ON/OFF or numbers as possible selections. For ON/OFF, you add =1 or =0 to the setting, e.g. HW_TIMER=1. For numbers, add =xxxx, e.g. EMS_MEMORY_LIMIT=1024 or DOS_VERSION=DOSPROG.EXE,5,0,255. But the really easy way to do this is to use the standard DOS Settings dialog, which is displayed when you click on the DOS Settings pushbutton. 4.) How can I add batch files? Batch files aren't executable files, so they need a command processor to interpret them. Therefore, you have to select a command processor, (e.g. CMD.EXE) and add /C filename.bat or /C filename.cmd to the parameters entry field. You may wish to look at the command reference of CMD.EXE and COMMAND.COM for more details. If you use the standard file dialog to find the batch file you want to add, PC/2 automatically add this batch file as an argument to the command processor. 5.) Is HPFS supported? Yes, PC/2 fully supports HPFS. However, if a filename contains spaces, you have to place it in double-quotes, e.g. at a command prompt you would type DIR "[d]\OS!2 2.0 Desktop\*" /s to list all files of the Desktop directory. The same is true for PC/2, e.g. if you want to start a batchfile that conforms to HPFS-filename conventions, you may create an entry like this : (Note: Replace [d] with a drive letter, e.g. E: ) Program Title: HPFS-Test Path and Filename: [d]\OS!2 2.0 Desktop\Prompts\Command Processor.exe Working Directory: [d]\OS!2 User Applications Parameters: /C ""[d]\OS!2 2.0 Desktop\Run Me.cmd"" Note: Passing HPFS-filenames to command processors may require two double-quotes (e.g. CMD.EXE does). Also take a look at the help pages for CMD.EXE to get more details. Open up an OS/2 command line prompt, and enter: help cmd.exe - this should get you to the right section. 6.) How do I start a full-screen WIN-OS2 session? Create a full-screen DOS command prompt that uses WINOS2.COM as the executable's name. (e.g. [d]\OS2\MDOS\WINOS2\WINOS2.COM, where [d] is the drive letter you installed WIN-OS2 onto, e.g. C: ). Then add the required DOS Settings (e.g. the following settings greatly improve performance on a 8514/A adapter (and probably on other adapters too): VIDEO_8514_XGA_IOTRAP=0 VIDEO_RETRACE_EMULATION=0 VIDEO_SWITCH_NOTIFICATION=1 XMS=64 EMS=0 DPMI=4 (or more than 4, if you run a lot of Win apps) IDLE_SECONDS=2 IDLE_SENSITIVITY=100 HW_ROM_TO_RAM=1 Thanks to Timothy Sipples for them! 7.) How do I control what mode and session type a Windows application runs in? Just enter the application's data and select the mode the seamless WIN-OS2 session should run. This includes realmode, standard or enhanced 386 mode, both in separate sessions or in a common VDM. 8.) How do I start a VDM from an image? First create the image, then create an entry of a fullscreen or windowed DOS session. Then add to the DOS settings: DOS_STARTUP_DRIVE=[path]DISK.IMG where [path]DISK.IMG is the path and filename of the image you want to start. Caution! On OS/2 2.0 (2.0 GA) it doesn't work; I don't know why. 9.) How do I start a VDM that boots from drive A: ? Same as item 8.) says, only adjust the DOS settings to: DOS_STARTUP_DRIVE=A: Caution! On OS/2 2.0 (2.0 GA) the system traps, I don't know why. 10.) Why has PC/2 an option to shut down OS/2? Some people use PC/2 as a replacement for the WorkPlace Shell (this saves up to 4 MB memory!) and they can't click with button 2 to get the WPS Popup Menu, from where shutdown is usually selected. So, it is provided on PC/2's Popup Menu. PC/2 requests OS/2 to clear all file buffers. After all disk activity has been stopped, it is safe to power off your system. PC/2 don't close the programs, but after the disk activity has stopped, all processes are frozen (you can not switch to or select programs anymore). If you set up "Normal Shutdown" in the PC/2 Desktop Menu, when you click Shutdown OS/2 on the PC/2 Popup Menu, PC/2 will act just as the WPS does, when doing a normal shutdown. In other words, apps are notified they are about to be shut down, and, depending on the application, you may get several questions asking something to the effect "Do you really want to do this?" 11.) How do I add commandline parameters at runtime? E.g. assume you created a Menuentry that starts the editor EPM.EXE. After you selected EPM, just before it is started, you can request a dialog box from PC/2, where you can enter any commandline parameter by adding a [...] construct in the parameters entryfield of the Program Installation dialog. This work similar to the same WPS feature. 12.) How do I install PC/2 as a replacement for the WPS? First, install PC/2 in the normal way. Second, edit your CONFIG.SYS to replace the statement (Note: substitute your drive name instead of [d], e.g. C: ): SET RUNWORKPLACE=[d]\OS2\PMSHELL.EXE to REM * SET RUNWORKPLACE=[d]\OS2\PMSHELL.EXE SET RUNWORKPLACE=[d]\path\PC2.EXE or REM * SET RUNWORKPLACE=[d]\OS2\PMSHELL.EXE SET RUNWORKPLACE=\path\PC2.EXE Where [d]\path is the drive and path (e.g. \PMAPPS\PC2 on drive C: ) where you installed PC/2. (The second method can be used to add PC/2 as the Workplace process of a maintenance partition, e.g. created by the BOOTOS2 package). Second, ensure that all PC/2 *.DLLs are in the directory PC/2 is running from, or in a path pointed to by the LIBPATH environment variable in your CONFIG.SYS. The next time you boot, the WPS will not be loaded (you can verify this by a blank screen displayed instead of the normal Desktop and objects. Not using the WPS saves memory and reduces boot time! Of course, you can also start the WPS later, either by starting PMSHELL.EXE from a command prompt or from a PMSHELL Menuitem of PC/2. You can follow the WPS initialization by heavy disk access and buildup of your Desktop with objects. To use the Popup Menu on the newly started WPS just wait a few seconds until PC/2 knows about this new window. PC/2 displays the Window List on PM too, just as the WPS does by clicking mouse buttons 1 and 2 together. 13.) How do I add WPS Objects to start them via PC/2? The important thing is, that you have to know the WPS Object ID (Identifier) to be able to add them to PC/2. For preinstalled Objects, you can find the ID in the file [d]\OS2\OS2_20.RC (where [d] is the drive you installed OS/2 onto, e.g. C: ). Alternatively, you may use WPS 2 PC/2 to extract the Object ID from WPS Objects not being Folders or Program Objects, when available. The ID of Objects, created as outlined above, may than be added in the entryfield Path and Filename in the Program Installation dialog, with the Program Type WPS Object. Note that this function is not supported when PC/2 is used as the replacement for the WPS, as it is the WPS that services starting the Object ID's. 14.) How do I use Drag'n Drop? In addition to the standard file dialog, you may use Drag'n Drop to add applications in the Program Installation dialog. E.g. you may use a drive object, select one (only 1!) application, and then drag it into the dialog and drop it onto any area that accepts it (any area that isn't covered by text, buttons, entryfields,...). You can also drag one WPS Folder Object onto the first page of the Program Installation dialog, to open it when selecting it from the Popup Menu. PC/2 will try to determine the type of the application you added automatically (programs or folders), but you can still change it. 15.) How can I add WPS Objects, and what WPS Object classes are allowed? The simplest way is to use WPS 2 PC/2. Just drag the WPS Objects you want to add to PC/2's Popup Menu, onto the WPS *icon* of WPS 2 PC/2 (Not the open WPS 2 PC/2 application). Then open the WPS 2 PC/2 application window by clicking on the icon mentioned before. Now drag the status bitmap (the full suitcase) from WPS 2 PC/2 onto the Setup dialog of PC/2, and voila, for each WPS Object extracted, a new menuentry is created within PC/2's Popup Menu. WPS 2 PC/2 can extract data from WPS Objects of classes WPProgram, WPFolder, any WPS Object that has an Object ID defined, or WPShadow Objects of the classes mentioned previously. E.g. you can't extract your WPS Printer Object, or a Drive Object, unless an Object ID is assigned to these Objects. Note: When running PC/2 as a replacement shell for the WPS, these functions are inoperative, as they require the WPS to service them. 16.) Does PC/2 change to the root of all drives except for the working dir? Yes, PC/2 changes to the root of all non-removable drives before the selected application is started. 17.) Which versions of OS/2 are supported? PC/2 was developed under OS/2 2.1 GA, 2.11 GA, and WARP GA, but I would expect it to work under OS/2 2.0 and any Service Level too. Under OS/2 WARP for Windows, using a tiled background bitmap hangs OS/2 solidly, requiring a reboot. Under OS/2 WARP Fullpack, using a tiled background bitmap just hangs PC/2, so in this case, just use CTRL+ESC to terminate PC/2. A defect (PMR 4X472) has been opened against OS/2 WARP, so a future CSD (Corrective Service Diskette) will hopefully repair this defect. This bug is not a PC/2 problem, since selecting a tiled background bitmap works correctly under OS/2 2.x. 18.) How do I enable the Virtual Desktop and/or Sliding Focus? Start PC/2, click on the Desktop and select SETUP Desktop. A dialog box will appear, where you can enable these features. Just press help for further information. To temporarily suspend the Sliding feature, just hold down the SHIFT key while moving the mouse. 19.) How does the sliding Focus work? For all pointer movements, OS/2 generates messages that contain the window where the message originated. PC/2 hooks into these messages and determines the active window. If the active window is not the window that originated the message, it makes the message originating window active. Of course, PC/2's window, the Desktop and the window list are treated differently. To preserve the Z-order of the windows, also check this option. Caution! Sliding Focus does not work well, when running seamless WIN-OS2 sessions. To temporarily suspend Sliding, just hold down the SHIFT key while moving the mouse. 20.) How do I use the enabled Virtual Desktop? You may know that a VGA-display has usually 640 columns and 480 rows (numbered from 0...639 and 0...479). If you position your mouse pointer over the surrounding rows and/or columns of your display (here columns 0 or 639 and/or rows 0 or 479) PC/2 SHIFTs all windows that exist on your system (with some exceptions like window list) in the opposite direction. Some windows may slide out, some may slide in from the other direction. You may click on any Virtual Desktop on the overview Window to immediately switch to that Virtual Desktop. 21.) How does the Virtual Desktop work? First, for all windows, OS/2 tracks their coordinates in data structures. PC/2 queries and adjusts them according to the mouse movements the user makes. For instance, if the mouse pointer is over column 0 on the screen, PC/2 adds to the x-position of all windows for example 50 % of the x-dimension of the screen. The windows appear to move rightward (out of the display) because the display SHIFTs leftward within the Virtual Desktop. Because windows are usually aligned on byte-boundaries, they may not appear on their original place if you SHIFT one unit in one direction and one unit in the opposite direction. 22.) How do I start applications on the Virtual Desktop? In the Program Installation dialog, you can define the size and position that the application should use. For instance, you can enter a position of -200 in X, which would position the application to the left of your Physical Desktop. All coordinates are in relation to your Physical Desktop. In other words, an x setting of -1 would position your application 1 pixel (out of a possible 640 in VGA) to the left off of your Physical Desktop. PC/2 forces the window to the position you entered, however the application may determine its size itself. To allow PC/2 to find the window, ensure that you enter the applications Window List entry or titlebar text to the Window Name entryfield on the Hotkey notebook page of the Program Installation dialog. You don't need to enter the complete Window List or titlebar text, just any substring that matches with the text. *However*, you must ensure that this substring matches *only* with the application you want. Results are unpredictable if multiple applications contain the same substring. Some applications are "stubborn", that is, no matter what you do to specify your xy coordinate position for the application, it refuses to obey, and starts where it wishes. For instance, a DOS windowed session that changes from 80x25 line mode to 80x28 line mode during startup causes just such a condition. 23.) What's the name of the Desktop? OS/2 2.0 introduced the name "OS/2 2.0 Desktop" for the Desktop window, which normally is the WPS. OS/2 2.1 and OS/2 WARP use the name "Desktop" instead, if you install it over a newly formatted system. OS/2 2.1 and WARP may use a different name, if you install it over a previous OS/2 system, so please read the README file provided with your version of OS/2 carefully. You may use the Notebook that appears after clicking mouse button 2 on the WPS at page Desktop-Settings to change the Desktop's name. Your Desktop may have a name translated to your national language. 24.) What's the name of the Window List? The Window List (known as Task List in OS/2 1.x) is just named "Window List". It may have a name translated to your national language. 25.) What about seamless WIN-OS2 support, without a corresponding WPS object? PC/2 allows you to start seamless WIN-OS2 sessions, as separate sessions or in a common VDM. This means, if you start a Windows application in a separate session, a complete copy of the WIN-OS2 environment will come up. This wastes memory, so I suggest to start Windows applications into a common VDM whenever possible. This seamless WIN-OS2 support works also without the WPS installed, under OS/2 2.1 GA with no problems, but OS/2 2.0 GA hangs during load. So under OS/2 2.0 GA, only start seamless WIN-OS2 sessions if the WPS is running. Under OS/2 2.0 GA you can only successfully start WIN-OS2 sessions in standard mode. 386 enhanced mode is not supported by OS/2, and real mode starts to load, but doesn't complete successfully for unknown reasons. Under OS/2 2.1 and WARP, real mode is not supported, so you can only start Standard mode and 386 Enhanced mode sessions. 26.) How many applications can I start within a seamless WIN-OS2 session? For a separate session usually only 1, but you may start the Windows Program Manager as the first, and any Windows applications as a commandline parameter, which the Program Manager will start for you. If you start the Program Manager, you can of course start any Windows application from it, but make sure that you have enough storage defined in the DOS Settings (usually DPMI_MEMORY_LIMIT=16 or so). For separate sessions, the limit is determined by your system configuration (e.g. how much memory you have in your kingdom. ). 27.) How do I define a program's priority? Just select the last notebook page from the Program Installation dialog. Warning - changing a program's priority may have severe impacts on your system's performance, giving all CPU time to the application. You may set a tape backup or image conversion program to a lower priority or a real-time data acquisition to a higher priority. For DOS sessions (and WIN-OS2 sessions are DOS sessions), the priority can't be changed, because this would lock PM for unknown reasons. You can't change the priority of WPS Object either, because the WPS actually starts them after a request from PC/2. On OS/2 Warp, you can adjust the priority of DOS sessions via the DOS Settings dialog, in the Settings Notebook. 28.) How do I define a Hotkey to switch to a session? Just select notebook page 4 from the Program Installation dialog. You may define any key from the pool keys 0 to 9 and A to Z combined with either with the CTRL or the ALT key. Once a Hotkey is defined for an application, it is no more available for other sessions. You may define Hotkeys for 72 different sessions as the maximum. If PC/2 detects that the user pressed a Hotkey and the application the Hotkey is defined for is not running, PC/2 launches the application, otherwise, PC/2 will jump to the application already running. You may temporarily suspend the Hotkey feature by pressing and holding the SHIFT key while pressing the Hotkey. PC/2 will then ignore the Hotkey and pass it over to the application that currently has the focus. 29.) How does the Hotkey feature work? PC/2 knows which Hotkeys are used if you have defined them. However, PC/2 also needs to know at least a part of the application's titlebar text or Window List entry to switch to, so you have to fill in the entryfield "Window Name: " (on the Hotkey notebook page) with the session's titlebar text or Window List entry. For a session's Window Name either use part of the string that appears in the session's titlebar, or part of the string that appears in the Window List for this session. This is most important that you follow this procedure, otherwise results become unpredictable. If you press the Hotkey for a session, PC/2 searches all titlebars and the Window List for the text from the "Window Name" entry and switches to that session when a match was found. PC/2 not only switches to the session the Hotkey is defined for, but also switches to the Virtual Desktop the session resides on. If neither the Window Name can be found on any window's titlebar nor in the Window List, PC/2 assumes the application is not running and launches it. This is why it is important that you ensure your entry in the "Window Name" entryfield accurately relates to the titlebar name of the running session's Window List entry. You may temporarily suspend Hotkey detection, if you press the SHIFT key simultaneously with the Hotkey. PC/2 then will *not* steal the Hotkey, but passes it on the the window that had the focus while the keypress. 30.) Why should I use the Hotkey feature? Well, you don't need to use it, but you may find it very useful to quickly switch to a certain session, for example a host terminal emulator and than switch back to a compiling environment residing on different Virtual Desktops. 31.) I have defined some Hotkeys - now these keys are not available on other sessions any more! Once you have defined a Hotkey, this Hotkey will be "seen" by PC/2 when it is pressed, because PC/2 "steals" them, before the application, the key was pressed in, gets the notification for that key. Hotkeys are detected systemwide, unless you check the option "No systemwide Hotkeys". PC/2 will not see the Hotkey, if this Hotkey is the same as a accelerator key, because PM translates character keys into accelerators before PC/2 has the chance to detect it. See 52.) for an explanation of accelerators. For example, the EPM editor has defined an accelerator key for CTRL+U, to invoke its undo function. You can define CTRL+U as a Hotkey for your terminal emulator, but PC/2 will never see this key. To allow PC/2 to see CTRL+U then, you have to switch the focus to a window that has no accelerator defined for this key, e.g. the Window List. 32.) I switched to another window - now the Hotkey feature doesn't work anymore! The window you switched to has probably defined an accelerator key, that matches the Hotkey (see also 52.), the Hotkey can't be seen by PC/2 then. See 31.) for more information. 33.) I defined a Hotkey but the wrong window is activated! You have probably defined a Hotkey for an application and have inadvertantly started more than one copy of this same application. PC/2 only switches to the first application window, and ignores all other sessions containing copies of the same hotkeyed application. Be sure that you don't start more than one instance of a session a Hotkey is defined for. A session is a PM, windowed OS/2 or DOS application that displays at least one window on PM (Presentation Manager). 34.) How to I define a Hotkey for a certain window (e.g. Drive C object) even if it wasn't started from PC/2? Assume that you have opened the Drive C - Tree View object from the OS/2 System->Drives object of the WPS and you want to define ALT+C as its Hotkey. Create a new menuentry and skip to the Hotkey notebook page of the Program Installation dialog. Enable the Hotkey feature and select ALT+C as the Hotkey. Then select the entry of the Drive C object from the Current Window List MLE and doubleclick on it. The selected entry will also be filled into the entryfield Window Name. Now save the changes and voila, you can now use the newly defined Hotkey. As the Drive objects are WPS Objects too, Drive objects can only be opened while the WPS is running. 35.) Do I need to completely fill in the Program Installation dialog to define a new Hotkey? No, you just need to fill in the Hotkey labeled notebook page. PC/2 uses the text entered in the entryfield Window Name to compare with all windows' titlebars and Window List entries. If the text matches any of these entries, (or subset of the entry) the window the entry is defined for is activated. To use the Hotkey feature, just ensure that the text entered in the entryfield Window Name is part of any window's titlebar or Window List entry. 36.) I have 2 OS/2 windows with the same name. Will the Hotkey work? Yes, but only for the first window whose titlebar or Window List entry matches to the Menuitem Window Name. You have to ensure a unique title for a window to allow PC/2 to exactly identify a window and activate it through the Hotkey function. 37.) How do I access the Window List on PM? If you are positioned over the PM with the mouse pointer, just press and hold down a mouse button and then click the other while not moving the mouse pointer. The Window List will appear with the mouse pointer in center (when the complete Window List can displayed then). The PM is the bottommost window which you can see as your Desktop's background, if either you don't run the WPS or you moved the WPS to an other Virtual Desktop. Of course pressing CTRL+ESC works too. 38.) What is the feature "Button 2 titlebar click to set window to bottom" useful for? Even if you don't use the Virtual Desktop feature, you may find that sometimes you like to switch to a window which is under the currently active one, but you don't want to move or minimize the active one to get the other window to the top. If this option is on, it enables you to just click mouse button 2 on the active window's titlebar to push this window to the bottom. The window previously behind the active window now becomes the topmost window. Note that with this function enabled, you can't activate window movement with mouse button 2 anymore - however you can still accomplish this using mouse button 1. Pressing the CTRL key while clicking on the titlebar only moves the window to bottom; pressing the Alt key activates the default action of the titlebar (usually activating the move window tracking frame). Therefore, the CTRL and Alt key may be temporarily used to suspend the default PC/2 behavior. 39.) Can a Hotkey defined for PC/2 itself? Yes, just enter PC/2 as the string to match on the Hotkey notebook page in the Program Installation dialog and assign a Hotkey e.g. ALT+P. 40.) When switching to a Virtual Desktop with a Hotkey, how is the window aligned? PC/2 moves the Desktop on the Virtual Desktop at the rate you defined with the Virtual Desktop Scrolling scrollbar on Desktop Setup dialog. The movement stops either when the middle point of a window becomes visible on the screen the first time, or a surrounding edge was hit. If you set the Virtual Desktop Scrolling to 100 % you will probably see the best results. 41.) How do I activate and use the PC/2 Spooler Control Window? To be able to select the PC/2 Spooler, just add a the PC/2 Spooler via the Control Addition dialog to your Popup Menu. Then select the newly created item to show the PC/2 Spooler. The PC/2 Spooler is a container where you can manipulate the printer queues and print jobs of your local machine by pressing mouse button 2 on any row you want to apply an action. A Popup Menu occurs, which you can use to select actions. Note that when running PC/2 as the WPS replacement, the PC/2 Spooler Control Window is the only way you can control your queues and jobs. Even more, without the PC/2 Spooler Control Window, the OS/2 spooler would not even be started! 42.) Why does the Overview Window sometimes not correspond to the real Desktop application mix? The Overview Window does its updating by event triggering. This means that an event (creating, destroying, sizing or moving a window) is the prerequisite for all windows available on the Desktop to get shown on the Overview Window. For example, because many events are generated when a Window is created, PC/2 ignores all events during working on the first event. So when PC/2 is drawing a window on the Overview Window as a result of a window creation, and another window is created (but doesn't trigger any action by PC/2 because PC/2 is already busy with the previous event) it will not be displayed on the Overview Window. To compensate for this, PC/2 redraws all windows again, when another event is triggered. However, even then, there is a low possibility that a window doesn't get recognized by PC/2. When the system is idle, no event triggers PC/2 actions and PC/2 is therefore idle too. PC/2 versions previous to 1.80 took another approach. They always drew the windows available, loading the CPU to a permanent 15 % even when the system was doing nothing. I am happy to say, this is no longer the case. 43.) I have configured a Popup Menu, but always get the Setup dialog when clicking on the Desktop. To display the configured Popup Menu, the Menu *must* contain the entry "Configure Desktop", otherwise, the Setup dialog will be displayed. To add the menuentry "Configure Desktop", select the pushbutton "Add Control" from the Setup dialog. Then select "Configure Popup Menu Settings" to add the entry "Configure Desktop" to your Popup Menu. Now you will get the Popup Menu when clicking mouse button 1 on the Desktop. 44.) How can I change the default fonts used by PC/2? You can change the font of the Popup Menu, the Spooler Window and the Overview window by simply dragging a font from the font palette: +) to change the Popup Menu's font, drop the font onto the Smarticonbar on PC/2's Overview Window +) to change the Spooler Window Container's font, drop the font onto the container +) to change the Overview's Window font, drop the font onto the Overview Window (all fonts will be accepted, though some fonts produce not exactly the requested result). 45.) What is the addon WPS 2 PC/2 used for? WPS 2 PC/2 is a WPS Object, residing in WPS2PC2.DLL. This DLL must reside in a directory that is accessible through the LIBPATH environment variable in your CONFIG.SYS. When WPS 2 PC/2 is installed and registered to the WPS, you can extract settings from WPS Program and Folder objects to be used within PC/2's Popup Menu. To extract the data from WPS Objects, just select the and drag them over to WPS 2 PC/2's closed icon on your Desktop, and drop them to let WPS 2 PC/2 extract their contents. To add extracted WPS Object data to PC/2's Popup Menu, open the WPS 2 PC/2 Object and PC/2's Setup dialog, and drag the Status bitmap (Full suitcase) from WPS 2 PC/2's window onto the Submenu/Program Configuration listbox on PC/2's Setup dialog. Menuitems corresponding to the settings of the WPS Objects you extracted will be added at the bottom of the current level of the Popup Menu (you probably will notice that the listbox gets filled with the top-level WPS Objects converted to Popup Menu entries). From now on, you can use exactly the same settings of your WPS Objects from PC/2's Popup Menu without entering them twice (even DOS settings will be extracted). 46.) How can I open WPS Folder Objects from PC/2's Popup Menu? Just create a Program Menuitem by selecting Add Program from PC/2's Setup dialog. Then drag one WPS Folder Object on PC/2's Program Installation dialog (and replace the Program Title field for better readability) - that's all. 47.) What is the difference between the "slow" and "fast" version of PC/2. Beginning with version 1.90, PC/2 slightly changed the way how the Overview window is updated. Up to version 1.80, PC/2 used to updated the Overview window only on the screen, causing some flicker. This approach is called "slow" because it gives the best performance for video chipsets, that have a small performance of moving data from main memory to video memory (e.g. the 8514/A adapter because of its IO-mapped design). This version is called PC2SLOW.EXE and can either be renamed to PC2.EXE or you change the settings of PC/2's WPS Object. Beginning with version 1.90, PC/2 defaults to draw most changes of the Overview window into memory first, and just copies it onto the screen, when the drawing has finished, eliminating most flicker. This approach is called "fast" because for modern video chipsets (e.g. XGA, S3) there is no performance impact of moving data from main memory to video memory. This version requires a slightly more memory). 48.) Why does an installation update of PC/2 not work with active CM/2? IBM Communication Manager/2 locks the DLL PC2HOOK.DLL when running, therefore you have to stop and shut down CM/2 prior to run an update of PC/2. This behavior of CM/2 is not expected and I can't explain it - but there are potentially more programs out having this behavior. So I suggest you shut down or not start applications prior to running an installation update of PC/2, if you experience problems installing PC/2. 49.) Why does selection of a tiled background bitmap hang OS/2 Warp 3.0? OS/2 WARP has a bug, when requesting display of a tiled background bitmap. It even behaves a little different between OS/2 WARP and OS/2 WARP Fullpack. A defect (PMR 4X472) has been opened against OS/2 WARP, so a future CSD (Corrective Service Diskette) will hopefully repair this defect. This bug is not a PC/2 problem, since selecting a tiled background bitmap works correctly under OS/2 2.x. During beta test of OS/2 WARP Fullpack, I informed OS/2 development 3 times about this bug (on an IBM internal forum, and via a note), but I have not yet heard back yet, in time for the cutoff date of this release. 50.) Do I have to change anything in CONFIG.SYS to run PC/2? No, PC/2 is so smart that it can locate all its files (the DLLs, the online HLP and configuration files) in the directory PC/2 was started from! This also holds true then using PC/2 as the WPS replacement. In contrast, many other programs require modifications in your CONFIG.SYS or that you copy some files in certain directories. Just WPS 2 PC/2 requires its DLL and HLP file in the directory \OS2\DLL and \OS2\HELP, because the WPS requires them in a path pointed to by the LIBPATH and HELP environment variables. Both files will be copied by the installation automatically. 51.) I have defined a Hotkey, but now my favorite program doesn't get this key! When you have defined a Hotkey, PC/2 "sees" that Hotkey when any PM window (PM programs, OS/2 and DOS windows) has the focus unless: *) a application has defined an accelerator for this Hotkey, then PC/2 won't be able to detect it (see 52. for more information), or *) you have selected the checkbox "No systemwide Hotkeys" on the Desktop dialog notebook - using this option, PC/2 detects Hotkeys only when either PC/2, the Window List, or the WPS are the active tasks when pressing the Hotkey. 52.) What is referred as an *accelerator* key? An accelerator is a special OS/2 PM (Presentation Manager) resource, that, when pressed, informs the window having the focus not by its ASCII character code, but by a special message. As PC/2 *detects* only Hotkeys by their character code, not by any special message they may produced, PC/2 can only *see* a Hotkey, when the PM window having the focus when the Hotkey was pressed, does *not* have defined an accelerator key for this Hotkey. For example, the EPM editor has defined an accelerator key for ALT+S, to invoke its split line function. You can define ALT+S as a Hotkey to launch PMSEEK, but PC/2 will never see this key, when pressed having EPM as the focus window. To allow PC/2 to see ALT+S then, you have to switch the focus to a window that has no accelerator defined for this key, e.g. the Window List, PC/2, the WPS or PM itself. 53.) Which sequence is used by PC/2 when autostarting programs? PC/2 uses a recursive depth-first search, when searching the Popup Menu for applications marked to be autostarted. For example, assume your Popup Menu looks like the following graphics (tree view): +----+ Px ... x'th program menuentry, not +--| A2 | not having autostart flag | +----+ set | | P1 | +----+ | +----+ Sy ... y'th submenu menuentry +--| A1 | | | A3 | | +----+ | +----+ Az ... z'th program menuentry, having | | S2 |--+ autostartt flag set +----+ | +----+ +----+ | S1 !--+ | S3 |-----| P2 | +----+ +----+ +----+ | A5 | | P3 | +----+ +----+ +----+ | S4 |-----| P4 | | A4 | +----+ +----+ +----+ | P5 | +----+ | A6 | +----+ \----/ \----/ \----/ root first second level submenu submenu level level Having above Popup Menu, invoking PC/2 would autostart applications in the following order: A1 --> A2 --> A3 --> A4 --> A5 --> A6 To define a certain sequence for your applications to autostart, you have to position their menuentries according to above graphics. 54.) Are duplicate menuentries allowed? It is possible to have multiple menuentries for the same applications, but I *strongly* recommend creation of just *one* menuentry for a single application. PC/2 currently does *not* support a concept of "shadow menuentries", behaving similar to WPS Shadowobjects. 55.) What's the difference between the Program Title and Window Name? The Program Title is the text displayed for an application's menuentry in PC/2's Popup Menu. Some applications (e.g. OS/2 and DOS windows) even use this text in their titlebar, but mode applications (e.g. EPM) choose to set their titlebar text according to their own preferences. The Window Name is the text used by PC/2 to identify one certain PM window among all windows on PM. To identify a certain window, PC/2 uses the Window Name text and matches it with all windows on PM. A window is identified when the menuentry's Window Name matches either the window's titlebar *or* the window's Window List entry. The first window of all windows on PM which matches with the menuentry's Window Name is assumed as the window launched by this menuentry by PC/2. If you choose not to fill the Window Name entryfield, PC/2 just copies the contents of the Program Title entryfield into Window Name. 56.) How can I use a Hotkey that starts a program, each time the Hotkey is pressed instead of switching to the running instance? Just ensure that the program's Window Name entryfield contains a text, that never occurs on any window's titlebar *or* Window List entry. For example I prefer CTRL+O to start an OS/2 window each time I press CTRL+0. I do so be entering the following data for this OS/2 window: Program Title: OS/2 Window Window Name: HK OS/2 Window Under the assumption that now other window on PM contains the string "HK OS/2 Window", CTRL+0 will always start a new OS/2 window. Of course, if I for example would invoke EPM "HK OS/2 Window", then my OS/2 Window's Window Name "HK OS/2 Window" would be successfully matched with this EPM session when pressing CTRL+0, and the Hotkey would switch to this EPM session instead of starting another OS/2 window. Just ensure that it is very unlikely that any PM window contains the Window Name in its titlebar *or* Window List entry, to start a new instances of the program each time the Hotkey is pressed. Also, please read the help panels. Enjoy! Roman