home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / OS2 / TSHELL05.ZIP / README < prev    next >
Text File  |  1994-01-18  |  15KB  |  423 lines

  1. TSHELL                               Monte Copeland, IBM Boca Raton
  2.  
  3. (c) Copyright International Business Machines Corporation 1993.
  4. All rights Reserved.
  5.  
  6.  
  7. REVISION HISTORY
  8. --------------------------------------------------------------------
  9.  
  10. 19JAN94: first release for IBM EWS
  11. 05JAN94: home,end keys for listboxes; tweak readme
  12. 13DEC93: CSHELL->TSHELL name change; less RAM used if no REXX
  13. 16NOV93: start group is programmable with REXX
  14. 18AUG93: first release on OS2TOOLS.
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. INTRODUCTION
  22. --------------------------------------------------------------------
  23.  
  24. TSHELL is a text-based, non-graphical user interface shell for OS/2 2.1.
  25. TSHELL can start multiple full-screen sessions and run programs in them.
  26.  
  27. TSHELL is not for everybody.  TSHELL sacrifices the usability of PM and the
  28. Workplace Shell, but it does save memory.  TSHELL works well in 4MB.
  29.  
  30. Every TSHELL session is a full-screen session.  These can be OS/2, DOS, or
  31. WINOS2 sessions depending on the machine configuration.  As always, you use
  32. Alt-Esc to switch around sessions and Ctrl-Esc to show a list of sessions.
  33.  
  34. There is no Presentation Manager; thus, PM applications will not work.
  35. There are other restrictions; see below.  TSHELL may have applications in
  36. low-resource systems, embedded systems, floppy boots, or test beds.
  37.  
  38. TSHELL is IBM Employee Written Software.  Please read the "as-is" license
  39. agreement from IBM.  Essentially, you use this program "as is," and IBM
  40. makes no warranty about the correctness of this program or its suitability
  41. to any purpose.
  42.  
  43. TSHELL is written by Monte Copeland, IBM Boca Raton.
  44. (C) Copyright 1993 IBM Corporation.
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51. INSTALLATION
  52. --------------------------------------------------------------------
  53.  
  54. 1. Make a copy of your CONFIG.SYS.  You will need it to uninstall TSHELL.
  55.  
  56. 2. Copy TSHELL.EXE into the root directory of the bootup drive.
  57.  
  58. 3. Edit CONFIG.SYS and change the PROTSHELL setting to
  59.  
  60.             PROTSHELL=\TSHELL.EXE
  61.  
  62. There is more you can do to save memory.  See below.
  63.  
  64. 4. (OPTIONAL) Copy PGMSHELL.EXE into your PATH.
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72. RESTRICTIONS AND KNOWN BUGS
  73. --------------------------------------------------------------------
  74.  
  75. TSHELL will not run programs that require Presentation Manager.  TSHELL
  76. does not initialize PM.  It can only start OS/2 and DOS programs in full
  77. screen sessions.
  78.  
  79. TSHELL does not spool.  If you have no printer attached, and you
  80. accidentally press Print-Screen, you should wait for the parallel port to
  81. timeout:  up to two minutes.  See SetParallelTimeout() function below for a
  82. workaround.
  83.  
  84. REXX works (if present) but REXX utilities DLL (REXXUTIL.DLL) does not.
  85.  
  86. The START /DOS command does not work right.  CMD.EXE should start a DOS
  87. session, but it incorrectly starts an OS/2 session.  Get my STARTDOS
  88. package (STARTD.ZIP) for a workaround.
  89.  
  90. At this time, IBM LAN Requestor does not work.  Fix in progress.
  91.  
  92. When TSHELL has a shutdown option on the menu, end all running programs
  93. first, then it works.
  94.  
  95. When TSHELL does not have a shutdown option on the menu, press
  96. Control-Alt-Delete and wait for the disk activity light to go out.  Then
  97. turn off the computer.  This is a clean shutdown.  C-A-D will always
  98. perform a clean shutdown and reboot.
  99.  
  100. TSHELL has no means to kill a session.  Working on it.
  101.  
  102. Pressing Ctrl-Esc from WinOS2 on Dell S3 SVGA causes video sync problems.
  103. Keep pressing Alt-esc to recover.
  104.  
  105. The running list can get corrupted.  Keep pressing Alt-Esc to recover.
  106. This happens on ThinkPads if you close and reopen them.
  107.  
  108. In DOS sessions, NumLock and CapsLock lamps on the keyboard do not light
  109. properly.  The lamps are refreshed correctly after a session switch.
  110.  
  111. If running MEMMAN=NOSWAP, you must ensure you have enough memory.  Problems
  112. will occur upon exceeding memory capacity.  TSHELL operates most reliably
  113. with swapping turned on.
  114.  
  115. Don't run TSHELL from a command prompt.  TSHELL.EXE is for the PROTSHELL
  116. statement in CONFIG.SYS.
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126. PGMSHELL.EXE: PROGRAMMING THE TSHELL START LIST
  127. --------------------------------------------------------------------
  128.  
  129. Usage: PGMSHELL <REXX cmd file>
  130.  
  131. You can modify TSHELL's list of startable programs by writing a script in
  132. REXX and invoking it via the utility PGMSHELL.EXE.  PGMSHELL collects data
  133. from REXX and passes it to TSHELL.
  134.  
  135. PGMSHELL is optional.  If you never use PGMSHELL, TSHELL will provide a
  136. default list of items to start.  PGMSHELL requires REXX.
  137.  
  138. Here is a sample REXX program that modifies the TSHELL start list:
  139.  
  140.     /* REXX program to modify TSHELL */
  141.  
  142.     if 'PGMSHELL' <> address() then do
  143.       say 'Expected PGMSHELL environment.'
  144.       say 'Usage:  PGMSHELL <cmd filename>'
  145.       return 2
  146.     end
  147.  
  148.     /* TSHELL does not spool, so reduce parallel port timeout
  149.     from 120 to 5 seconds in case you accidentally hit print-screen
  150.     and there is no printer hooked up. */
  151.     rc = SetParallelTimeout( "LPT1", 5 )
  152.  
  153.     /* title text for the start list  */
  154.     rc = SetStartTitle( "Start Group" )
  155.  
  156.     /* title text for the running list  */
  157.     rc = SetRunningTitle( "Running Group" )
  158.  
  159.     /* Add OS2 program; arguments: title, startup dir, parameters, exe */
  160.     /* I omit the title of CMD.EXE session, then CMD.EXE will dynamically */
  161.     /* update the title based on the currently-running program. */
  162.     rc = AddOS2Program( "",,,"CMD.EXE" )
  163.  
  164.     /* Add OS2 program; arguments: title, startup dir, parameters, exe */
  165.     rc = AddOS2Program( "Format Floppy",,"A:","FORMAT.COM" )
  166.  
  167.     /* is configured for DOS? */
  168.     if QueryDOSCapable() then do
  169.       /* Add DOS program;
  170.       arguments: title, startup dir, parameters, settings stem */
  171.       drop settings
  172.       settings.0 = "DPMI_DOS_API=ENABLED"
  173.       settings.1 = "DPMI_MEMORY_LIMIT=8"
  174.       rc = AddDOSProgram( "DPMI DOS Session",,, "settings" )
  175.  
  176.       /* Add winos2 */
  177.       rc = AddDOSProgram( "WinOS2","","/c winos2", "" )
  178.     end
  179.  
  180.     /* add shutdown option. arguments: title, completion msg */
  181.     rc = AddShutdown( "Shutdown", "Shutdown Complete" )
  182.     return 0
  183.  
  184.  
  185.  
  186. These special functions are available to REXX programs under the PGMSHELL
  187. environment:
  188.  
  189.  
  190. SetParallelTimeout( portname, timeout in decimal seconds )
  191.    Sets the parallel port timeout. Set the port timeout to zero if there
  192.    is no printer attached.
  193.  
  194. SetStartTitle( start group title )
  195.    Sets the title text above the list of startable programs.
  196.  
  197. SetRunningTitle( running group title )
  198.    Sets the title text above the list of running programs.
  199.  
  200. QueryDOSCapable()
  201.    Returns a Boolean indicating if the system is configured to emulate DOS.
  202.  
  203. AddOS2Program( title, startup dir, parameters, EXE )
  204.    Adds an OS/2, protected-mode program to the start list.
  205.  
  206. AddDOSProgram( title, startup dir, command.com arguments, settings stem )
  207.    Adds a DOS mode program to the start list. ALL elements of the stem
  208.    variable are considered DOS settings. Therefore, drop the stem variable
  209.    before assigning DOS settings to it.  For help with DOS settings,
  210.    1) see the settings dialog in Workplace Shell or 2) obtain my
  211.    STARTDOS package and run settings.exe, a PM application.
  212.  
  213. AddShutdown( shutdown title, shutdown complete message )
  214.    Adds the shutdown option to the start group.
  215.  
  216.  
  217.  
  218. --------------------------------------------------------------------------
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225. LICENSE INFORMATION:
  226. ----------------------------------------------------------------------------
  227. Please read LICENSE.TXT, the IBM license agreement.  If you redistribute
  228. TSHELL, be sure the ZIP contains these files:
  229.  
  230.     TSHELL.EXE
  231.     PGMSHELL.EXE
  232.     README
  233.     LICENSE.TXT
  234.     TSHELL.ABS
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244. USING LESS DISK AND MEMORY WITH TSHELL
  245. ----------------------------------------------------------------------------
  246.  
  247. This section suggests ways to reduce the amount of disk space and
  248. memory required for OS/2 when running with TSHELL.  Think carefully before
  249. you delete OS/2 system files.  Experiment with a subset of OS/2 DLLs in a
  250. directory other than \OS2\DLL.  When you find the right subset, then erase
  251. the rest as you see fit.
  252.  
  253. OS/2 2.1 can boot from a single floppy.  See the BOOT2X.ZIP package
  254. in the OS2USER forum library 17 on CompuServe.
  255.  
  256. Here are two configurations:  one with DOS support; one without.  It
  257. assumes the boot drive is drive C:, and there is a VGA display installed.
  258.  
  259. Step 1:  Create new directories for your subset of OS/2 DLLs.  Begin by
  260. copying DLLs from \OS2\DLL into C:\DLL and C:\DLL\DLL as shown.
  261.  
  262. Directory C:\DLL is required for both DOS and non-DOS operation.
  263.  
  264.            Directory of C:\DLL
  265.  
  266.           11-20-93  10:27a     <DIR>           0  .
  267.           11-20-93  10:27a     <DIR>           0  ..
  268.            4-22-93   2:49p       438           0  ANSICALL.DLL
  269.            4-22-93   2:50p       401           0  BKSCALLS.DLL
  270.            4-22-93   2:51p       398           0  BMSCALLS.DLL
  271.            4-25-93   4:04p      9443          49  BVHINIT.DLL
  272.            4-25-93   4:04p     40892          49  BVHVGA.DLL
  273.            4-22-93   2:54p       454           0  BVSCALLS.DLL
  274.            1-15-94   1:19p     <DIR>           0  DLL
  275.            4-29-93   9:30p     90854           0  DOSCALL1.DLL
  276.            4-22-93   3:32p       858           0  KBDCALLS.DLL
  277.            4-22-93   3:31p      1010           0  MOUCALLS.DLL
  278.            4-22-93   4:09p       508          49  MSG.DLL
  279.            4-25-93   4:31p      1024          49  NAMPIPES.DLL
  280.            4-22-93   4:08p       466          49  NLS.DLL
  281.            4-22-93   6:03p     25280          49  NPXEMLTR.DLL
  282.            4-25-93   4:12p     56000          49  OS2CHAR.DLL
  283.            4-29-93   9:27p     15250          49  QUECALLS.DLL
  284.            4-25-93   4:18p     32806          49  SESMGR.DLL
  285. optional-> 4-29-93   9:01p    179872           0  UHPFS.DLL
  286.            4-25-93   4:11p      1825           0  VIOCALLS.DLL
  287.                   21 file(s)     457779 bytes used
  288.                                24926208 bytes free
  289.  
  290.  
  291.  
  292. Directory C:\DLL\DLL is only required for DOS operation. Omit it
  293. for protect-only configuration.
  294.  
  295.            Directory of C:\DLL\DLL
  296.  
  297.            1-15-94   1:19p     <DIR>           0  .
  298.            1-15-94   1:19p     <DIR>           0  ..
  299.            4-25-93   4:04p     14288          49  BVHWNDW.DLL
  300.            4-22-93   4:10p       474          49  MONCALLS.DLL
  301.            4-22-93   1:06p      1597           0  OS2SM.DLL
  302.            4-25-93   5:02p     60162           0  PMBIND.DLL
  303.            5-06-93  11:37p    327579        3236  PMCTLS.DLL
  304.            4-22-93   3:34p    303865          49  PMGPI.DLL
  305.            5-11-93   6:14p    421101           0  PMGRE.DLL
  306.            5-02-93  10:14p    125296        3286  PMSHAPI.DLL
  307.            4-22-93   1:02p      3839        3286  PMSHAPIM.DLL
  308.            4-22-93  11:51a    183292           0  PMSPL.DLL
  309.            5-06-93   9:58p      2550           0  PMVDMH.DLL
  310.            4-25-93   4:49p     35105           0  PMVDMP.DLL
  311.            5-06-93  10:00p     96401        3542  PMVIOP.DLL
  312.            4-29-93   9:04p    541892           0  PMWIN.DLL
  313.            3-12-93   5:57p    248368           0  REXX.DLL
  314.            3-12-93   5:57p     33367           0  REXXAPI.DLL
  315.            3-12-93   5:57p      1468           0  REXXINIT.DLL
  316.            5-08-93   9:33p     29385           0  REXXUTIL.DLL
  317.            4-22-93  11:36a      5061          49  SPL1B.DLL
  318.                   21 file(s)    2435090 bytes used
  319.                                24924672 bytes free
  320.  
  321.  
  322. Three REXX DLLs can reside in either C:\DLL or C:\DLL\DLL.  Or, omit them
  323. if you don't use REXX.
  324.  
  325.  
  326. Step 2: Modify CONFIG.SYS.  Here are two sample CONFIG.SYS files.
  327. The directory C:\BIN contains only user executables.
  328.  
  329. FOR NON-DOS, OS2-ONLY OPERATION:  Get VTBL850.DCP from OS/2 Installation
  330. Disk 1 and copy to C:\OS2.  Note this LIBPATH ignores C:\DLL\DLL created in
  331. step one.  Sample CONFIG.SYS:
  332.  
  333.    rem CONFIG.SYS for no DOS, protect-mode-only operation
  334.    PROTSHELL=C:\TSHELL.EXE
  335.    rem HPFS is optional
  336.    IFS=C:\OS2\HPFS.IFS  /CACHE:256 /CRECL:4 /AUTOCHECK:C
  337.    SET COMSPEC=C:\OS2\CMD.EXE
  338.    SET OS2_SHELL=C:\OS2\CMD.EXE
  339.    SET PROMPT=[$p]
  340.    LIBPATH=.;C:\DLL;C:\;
  341.    SET DPATH=C:\OS2;C:\OS2\SYSTEM;C:\OS2\INSTALL;C:\;
  342.    SET PATH=c:\bin;C:\OS2;C:\OS2\SYSTEM;C:\OS2\INSTALL;C:\;C:\OS2\APPS;
  343.    PRIORITY_DISK_IO=YES
  344.    FILES=20
  345.    BUFFERS=30
  346.    IOPL=YES
  347.    DISKCACHE=64,LW
  348.    MAXWAIT=3
  349.    MEMMAN=SWAP,PROTECT
  350.    SWAPPATH=C:\OS2\SYSTEM  4096 5120
  351.    THREADS=64
  352.    PRINTMONBUFSIZE=134,134,134
  353.    COUNTRY=001,C:\OS2\SYSTEM\COUNTRY.SYS
  354.    SET KEYS=ON
  355.    BASEDEV=PRINT02.SYS
  356.    BASEDEV=IBM2FLPY.ADD
  357.    BASEDEV=IBM2ADSK.ADD
  358.    BASEDEV=OS2DASD.DMD
  359.    PROTECTONLY=YES
  360.    CODEPAGE=437,850
  361.    DEVINFO=KBD,US,C:\OS2\KEYBOARD.DCP
  362.    DEVINFO=SCR,EGA,C:\OS2\VTBL850.DCP
  363.  
  364.  
  365.  
  366.  
  367. FOR OS/2 WITH DOS SUPPORT: Sample CONFIG.SYS:
  368.  
  369.    rem CONFIG.SYS for multiple DOS sessions
  370.    PROTSHELL=C:\TSHELL.EXE
  371.    rem HPFS is optional
  372.    IFS=C:\OS2\HPFS.IFS  /CACHE:512 /CRECL:4 /AUTOCHECK:C
  373.    rem INI's are not used, but settings are required
  374.    SET USER_INI=C:\OS2\OS2.INI
  375.    SET SYSTEM_INI=C:\OS2\OS2SYS.INI
  376.    SET COMSPEC=C:\OS2\CMD.EXE
  377.    SET OS2_SHELL=C:\OS2\CMD.EXE
  378.    SET PROMPT=[$p]
  379.    SET KEYS=ON
  380.    LIBPATH=.;C:\DLL;C:\DLL\DLL;C:\OS2\MDOS;C:\;
  381.    SET PATH=c:\bin;C:\OS2;C:\OS2\SYSTEM;C:\OS2\INSTALL;C:\;C:\OS2\MDOS;
  382.    SET DPATH=C:\OS2;C:\OS2\SYSTEM;C:\OS2\INSTALL;C:\;C:\OS2\MDOS;C:\OS2\APPS;
  383.    PRIORITY_DISK_IO=YES
  384.    BUFFERS=30
  385.    IOPL=YES
  386.    DISKCACHE=64,LW
  387.    MAXWAIT=3
  388.    MEMMAN=SWAP,PROTECT
  389.    SWAPPATH=C:\OS2\SYSTEM  4096 5120
  390.    THREADS=64
  391.    PRINTMONBUFSIZE=134,134,134
  392.    COUNTRY=001,C:\OS2\SYSTEM\COUNTRY.SYS
  393.    BASEDEV=PRINT02.SYS
  394.    BASEDEV=IBM2FLPY.ADD
  395.    BASEDEV=IBM2ADSK.ADD
  396.    BASEDEV=OS2DASD.DMD
  397.    PROTECTONLY=NO
  398.    SHELL=C:\OS2\MDOS\COMMAND.COM C:\OS2\MDOS
  399.    BREAK=OFF
  400.    FILES=20
  401.    FCBS=16,8
  402.    RMSIZE=640
  403.    DEVICE=C:\OS2\MDOS\VEMM.SYS
  404.    DOS=LOW,NOUMB
  405.    DEVICE=C:\OS2\MDOS\VDPX.SYS
  406.    DEVICE=C:\OS2\MDOS\VXMS.SYS /UMB
  407.    DEVICE=C:\OS2\MDOS\VDPMI.SYS
  408.    DEVICE=C:\OS2\MDOS\VCDROM.SYS
  409.    DEVICE=C:\OS2\MDOS\VMOUSE.SYS
  410.    DEVICE=C:\OS2\POINTDD.SYS
  411.    DEVICE=C:\OS2\MOUSE.SYS
  412.    rem unrem these for COM device driver support
  413.    rem DOS programs see COM hardware even if these are rem'ed out
  414.    rem DEVICE=C:\OS2\COM.SYS
  415.    rem DEVICE=C:\OS2\MDOS\VCOM.SYS
  416.    CODEPAGE=437,850
  417.    rem this machine has a VGA
  418.    DEVICE=C:\OS2\MDOS\VVGA.SYS
  419.    DEVINFO=KBD,US,C:\OS2\KEYBOARD.DCP
  420.    DEVINFO=SCR,VGA,C:\OS2\VIOTBL.DCP
  421.    SET VIDEO_DEVICES=VIO_VGA
  422.    SET VIO_VGA=DEVICE(BVHVGA)
  423.