July 25, 1992; Revised August 05, 1992 The following is copyright 1992 Jesse F. Knecht, RN. All rights reserved. Information provided is without warranty. This information is not free, but may be distributed freely if not packaged with any other product. This document must be distributed in unmodified form. The procedure(s) are to be considered Shareware. If it works for you and you use it for 10 days, a $1.25 per PC/Workstation registration fee is required. You are simply being allowed to read/try/test the below described procedure(s) before paying for them. Mail fee(s), name, address to: QHS, Inc. P.O. Box 8692 Metairie, LA 70011 The author may be reached at the above address and also via email. CompuServe: 70400,600 America Online: JFK RN Prodigy: MRSV81A All trademarks of products referenced belong to their respective owners. "Shell to DOS from Windows running under OS/2 2.0" The following is quoted from the OS/2 2.0 README file. "o Windows programs cannot start DOS sessions or DOS programs." IBM says you can't run Windows apps. in OS/2 2.0 that shell to DOS. I say you can! Do you NEED to shell to DOS from Windows under OS/2??? There is a little Windows zip file utility and some WinBatch stuff I like to use, but sometimes they shell to DOS. Now I (and you) can use these and many other programs that shell to DOS from Windows when in OS/2. NO REBOOTING TO USE THEM! What do you end up with? Windows 3.0 in Real Mode (Large Frame EMS) that can shell to DOS. I end up with 540k+ (550k+ using DRDOS) free conventional memory after after starting a DOS session from Windows 3.0 under OS/2. It's a fairly easy 6 part procedure. 1) Backup your files 2) Create a DOS *.IMG file (can use a boot floppy instead) 3) Model the IMG config.sys & autoexec.bat files after the below examples. Use your particular directory/drive names. 4) Adjust settings for the IMG file 5) Edit the Windows 3.0 system.ini file 6) Run it (WIN /R) I have not patched any of the OS/2, Windows, or DOS files; I use the 3-30-92 OS/2 kernel, but have downloaded a couple of other fixes (REXX, com & floppy, VEMM, and Trident video drivers). What do you need? You need Microsoft Windows 3.0 and Win3 needs to be started from a DOS *.IMG file (MS DOS 5 and DR DOS 6 both work) or Drive A: DOS. It also helps to have 4DOS.COM (shareware) replace COMMAND.COM as 4DOS can load conventional, XMS, EMS or swap to disk if needed. 4DOS gives me almost 10k more of 1st 640k than COMMAND.COM. I have both MSDOS.IMG and DRDOS.IMG files I use. The only difference seems to be that DEVICEHIGH= (HIDEVICE) doesn't seem to work on the DRDOS.IMG; the files load low with every combination I've tried. The following refers to a MSDOS.IMG file but can be used for DRDOS as well. Create your IMG file as per OS/2 online instructions. To save hard drive space use the smallest floppy available to create your IMG file. I dusted off an old single-side 1D floppy (160k) for my IMG files. Do they still make 160k floppies? Sample IMG config.sys: DEVICE=FSFILTER.SYS DEVICE=F:\OS2\MDOS\HIMEM.SYS DEVICE=F:\OS2\MDOS\EMM386.SYS REM Next line for DRDOS IMG REM DEVICE=C:\DOS\HIDOS.SYS /B=FFFF DOS=HIGH,UMB REM Do not use \os2\mdos\COMMAND.COM supplied with OS/2 REM SHELL=C:\COMMAND.COM C:\ /P /E:1024 SHELL=F:\4D\4DOS.COM F:\4D @F:\4D\MSDOSIMG.INI /P REM May use fewer files FILES=99 REM Use HIBUFFERS for DRDOS BUFFERS=25 DEVICEHIGH=F:\OS2\MDOS\ANSI.SYS Sample IMG autoexec.bat: (If you mention WINOS2 in your PATH, place your Windows 3.0 directory before it; your true DOS should be before \os2\mdos) @ECHO OFF SET PCTOOLS=D:\PCT\DATA SET TEMP=E:\TEMP SET TMP=E:\TEMP REM Next line I use for WinBatch SET IMGFIL=YES REM Next line is for 4DOS SET _CDPATH=D:\QHS;D:\;D:\WIN;E:\;F:\;C:\;D:\OV;D:\WS;F:\OS2;D:\;F:\OS2\MDOS; PATH F:\4D;C:\DD;D:\WIN;C:\DOS;D:\WP;D:\XL;D:\OV;D:\WS;D:\CC;D:\CC\CAM;D:\PCT; REM Next 2 lines activate my numlock and capslock that OS/2 turns off NUMLOCK CAPSLOCK PROMPT $i$E[1;32mTime $T$_Date $D$E[1;31m [MSDOS IMG] $P$G$E[0;1m F:\OS2\MDOS\MOUSE REM Next 2 lines are for 4DOS ALIAS /P /R F:\4D\ALIASMSD.TXT HISTORY /R F:\4D\HISTQHS.TXT F: ECHO Edit IMG files now if needed. ECHO Enter FSACCESS A: for "normal" A: drive access. My "settings" for MSDOS.IMG include DOS full screen DOS_RMSIZE 640, KBD_CRTL_BYPASS CTRL_ESC, EMS_FRAME_LOCATION AUTO, EMS_MEMORY_LIMIT 2048, XMS_MEMORY_LIMIT 2048, DOS_STARTUP_DRIVE F:\OS2\MSDOS.IMG, DOS_UMB ON, DOS_HIGH ON. Lastly, you need to make a slight change to the Windows 3.0 system.ini file if you want to use your mouse. In the [BOOT] section there is the line: mouse.drv=mouse.drv REM the line by placing a semicolon ";" in front of it. ;mouse.drv=mouse.drv Add the line: mouse.drv=:\os2\mdos\winos2\system\mouse.drv Use the full path as above. DO NOT overwrite your "normal" Windows mouse.drv by copying the file from OS/2 (read on). Doing the above system.ini editing substitutes the winos2 driver for the the Windows 3.0 mouse driver. The above assumes a standard Microsoft compatable mouse. Note, if you later decide to boot DOS and want to run Windows 3.0, REM out ";" the winos2 driver and unREM the regular Windows 3.0 driver. Windows 3.0 may not start under DOS if the winos2 driver is used. Addendum (revised 08-05-92) DR DOS USERS: Include both HIDOS=ON and DOS=LOW,UMB in your IMG config.sys. You'll add almost 8k to your available 1st 640k in the session. ***Potential problem areas & solutions.*** ALL USERS: The mouse command in the IMG autoexec.bat is required for mouse use. This is in addition to editing Windows 3.0 system.ini. In the IMG file autoexec.bat, set your TEMP (TMP) environment to some drive and/or directory other than where your OS/2 swappath is. Check your OS/2 config.sys. You'll find a line similar to: SWAPPATH=E:\ 2048 2048 In the above example OS/2 is swapping to the root directory on E drive. For this example you'd set your IMG file TEMP environment somewhere other than the root directory of E. SET TEMP=E:\TEMP works in my IMG file autoexec.bat. If you have 2048k or less free on the SWAPPATH drive (referring to above example), set the IMG's TEMP to a different drive. In Windows 3.0 SYSTEM.INI there is a section: [NonWindowsApp] You may or may not have any entries in the section. If, however, there is an entry that begins swapdisk= be sure it does not point to the SWAPPATH directory. Swapdisk= tells windows where to swap non-windows apps. when in standard and REAL modes. The Windows default (no entry) is the TEMP environment or the Windows directory if there is no TEMP environment. You may need to REM the line (use a semicolon ";" as instructed earlier). See sysini.txt. In Windows 3.0 WIN.INI the [windows] section may contain the line: swapdisk= This is in addition to the SYSTEM.INI entry. This entry should indicate the same path as the SYSTEM.INI notation. If there is no SYSTEM.INI entry or you used the REM ";" suggestion, then the WIN.INI should be: swapdisk= (nothing after "=") OS/2 config.sys should include DOS=HIGH,UMB; RMSIZE=640; along with all the v*.sys statements OS/2 adds. Be sure your OS/2 config.sys loads vemm.sys & vxms.sys. You might also add the line: SET COMSPEC= to your IMG autoexec.bat. Refer to your MSDOS or DRDOS user's guides for more info on SET, SHELL, and COMSPEC. Files & Dates The procedure works without using any "fixes" that have been released (OS/2 2.0 with all files dated 3-30-92). This is sometimes called the GA version. Below are some IBM "fixes" that the author has downloaded and tried/uses. The procedure also works with the following replacing the initial GA version files. Others may be added to the list as they are downloaded and tried. IBM1FLPY.ADD 5-14-92 IBM1S506.ADD 4-6-92 COM.SYS 4-23-92 MOUSE.SYS 6-8-92 (Double speed version) BVHSVGA..DLL 4-22-92 DISPLAY.DLL 3-30-92 (Trident version 800x600 seamless) REXX.DLL 7-8-92 REXXAPI.DLL 7-1-92 REXXUTIL.DLL 7-1-92 VSVGA.SYM 4-20-92 VCOM.SYS 4-24-92 VEMM.SYS 4-21-92 VSVGA.SYS 4-20-92 Windows 3.0 files are all 5-1-90 with the exception of Trident video support: 386grabber=tvga.gr3 6-18-90 display.drv=t640.drv 3-11-91 (256 color VGA) This zip file was created by a Windows program that starts PKZIP.EXE version 1.1 (a DOS program) to do the zipping. It was done using the procedure as described above. This zip was uploaded to CompuServe using CIM.EXE (CompuServe Information Manager), a DOS program started from Windows 3.0 under OS/2 2.0 using this procedure. If you'd like a 160k IMG file for OS/2 and can't make one yourself, mail a bootable floppy (msdos.sys, io.sys, & command.com for MS DOS; ibmbio.com, ibmdos.com, & command.com for DR DOS) up to 1.44meg to the below address. Also include the file fsfilter.sys. There is a $5.50 fee (check or money order) per IMG for this service which includes return by US mail of your floppy with the 160k IMG file on it. I'll include NUMLOCK.COM & CAPSLOCK.COM. Mail fees (check or money order), floppies, name, address to: QHS, Inc. P.O. Box 8692 Metairie, LA 70011 Your Name: ______________________________ Company: ________________________________ Address: ________________________________ ________________________________ ________________________________ ________________________________ Procedure Use @$1.25 ea. x ____ PC/Workstation(s): _________ 160k IMG Files @$5.50 ea.: ________ (Includes US mail shipping, procedure use on one PC/Workstation, and NUMLOCK & CAPSLOCK) **You may order only up to the number of DOS (MS/DR) or OS/2 you have currently licensed, whichever is less. Outside US shipping @$1.00 per floppy: _______ Louisiana Residents 4% tax: _______ Total: ___________ Please allow approx. 3 weeks for US delivery of IMG files.