home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / os2 / row2r01.zip / USER.DOC < prev   
Text File  |  1993-06-27  |  18KB  |  399 lines

  1. Documentation for Row.Exe. Last revision is 06-24-1993 for version 2.x.
  2. Produced by Patrick T. Wolfert, (c) Copyright 1993. All Rights Reserved.
  3.  
  4.  
  5.  
  6.  
  7. What is Row?
  8.  
  9. Row.Exe is a program which may be executed from the DOS Config.Sys file as
  10. a device driver or from the DOS Command prompt or from the OS/2 Cmd prompt or
  11. from an OS/2 Config.Sys Call statement as a standard executable file to
  12. change the number of rows currently being displayed by either a text mode
  13. display adapter or a graphics mode windowed session on either a color or
  14. monochrome monitor. The operating system, presence of a presentation manager,
  15. and the display adapter define the various possibilities with respect to the
  16. number of rows that can be displayed by a particular system or session.
  17.  
  18.  
  19.  
  20. Why use Row?
  21.  
  22. Use Row when you want to change the number of text rows being displayed on
  23. your computer's monitor if it's in text mode or the number of rows which can
  24. be displayed by a OS/2 virtual DOS session or Cmd session. For DOS you may
  25. set the rows to either 50, 43, 28, 25, 21, 14, or 12 rows with or without
  26. clearing the screen. OS/2 will accept a number from between 1 and 255 rows
  27. inclusive but the valid mode settings vary with the presence of the
  28. presentation manager as the protected mode shell and if a full-screen session
  29. is being used and the graphics adapter in use.
  30.  
  31. You may want to change the rows being displayed for a whole host of reasons:
  32.         1. Reduce eye strain.
  33.         2. Prevent DOS Config.sys initialization messages from scrolling off
  34.            of the screen before they can be read; This is the reason why
  35.            I wrote the device driver part of the program which came first.
  36.         3. Confuse network snooper programs which transmit an image of the
  37.            screen back to another node on the network, with or without the
  38.            knowledge of the person whose screen is being viewed. The NetBIOS
  39.            snooper program at an office where I have worked tosses cookies
  40.            to the viewer for any number of rows other than 25.
  41.         4. Setting up nice looking small OS/2 2.x virtual DOS windowed
  42.            sessions without having any scroll bars around to muck them up.
  43.         5. Setting up nice looking large OS/2 2.x Cmd windowed sessions
  44.            without having any scroll bars around to muck them up.
  45.         6. You want to see more of that spreadsheet you have been working
  46.            on but even just the thought of that 132 column mode and it's
  47.            tiny characters makes your eyes cross and the slow performance
  48.            of the WYSIWYG mode just plain makes you cross.
  49.         7. Same as 6 but the 132 column mode is not supported or does not
  50.            look nice in some graphical environment you are working in.
  51.         ...
  52.  
  53.  
  54.  
  55.  
  56. What is Row compatible with?
  57.  
  58. Row for DOS requires that the host computer have a VGA adapter and a BIOS
  59. which supports the basic VGA functions of setting the scan lines, mode,
  60. and font. Row has an option which disables VGA detection for those video
  61. adapters such as the EGA which are capable of some of the modes and which
  62. should be able to run the screen in 43 or 21 rows just fine.
  63.  
  64. Row for OS/2 only requires that the operating system be present. The OS and
  65. the underlying hardware determine how many rows from 1 through 255 can be
  66. displayed in the current context of the request.
  67.  
  68. Row has been tested with MS DOS 3.2, IBM DOS 3.3, IBM DOS 4.01, IBM DOS 5.0,
  69. IBM OS/2 2.0 GA using a DOS Window or a Virtual DOS Machine, and IBM OS/2
  70. 2.0 GA Cmd.Exe sessions and has been found to work in all cases either when
  71. loaded as a device driver or when invoked from the Command or Cmd prompt
  72. except for MS DOS 3.2 in which Row does not work as a device driver. For OS/2
  73. Row may also be executed from Config.Sys through a Call statement but since
  74. programs invoked in this way execute after all other Config.Sys processing is
  75. complete chances are that putting Row in the OS/2 Config.Sys will be useless.
  76.  
  77. Row has been tested on both ISA and EISA based PCs having either a Diamond
  78. Stealth VRAM, or an Orchid ProDesigner VGA graphics adapter.
  79.  
  80. Row for DOS has been tested (and developed) under QuarterDeck's DesqView
  81. which does not toss any cookies but which may or may not change the mode
  82. depending on how DV and it's windows are set up and the position of the sun.
  83.  
  84. It has not been tested under MicroSoft Windows at all.
  85.  
  86. Row's machine code is compiled for the 8086 meaning that it will run on any
  87. 80x86 processor based computer (running DOS or OS/2).
  88.  
  89.  
  90.  
  91.  
  92. DOS compatibility notes:
  93.  
  94. Versions of DOS previous to version 5 do not detect the number of rows on the
  95. screen dynamically when programs such as Dir /p or More need to know when to
  96. pause. DOS 3.3 for example seems to always think that there are only 25 rows
  97. no matter how many or few there really are on the screen. IBM DOS 5 processes
  98. Dir /p and More correctly no matter how many rows are set.
  99.  
  100. The device driver and executable format should be good for DOS 2 and up but
  101. I have read that some versions of DOS 2 do not have the executable file loader
  102. present at the time Config.Sys is processed so .EXE files cannot be in
  103. Config.Sys. My program will not work under those conditions.
  104.  
  105. For the MS DOS 3.2 version I have been testing with the protocol described
  106. by the IBM DOS 3.3 Technical Reference to indicate that a device driver
  107. should terminate without staying resident does not seem to work so for that
  108. version of DOS Row may not operate as a device driver properly. Specifically,
  109. it will not unload properly. I do not know if this is because of the specific
  110. buggy DOS 3.2 I have or if it's a general property for DOS versions below 3.3.
  111.  
  112. Do not exepack Row.Exe and expect for it to still function as a device driver;
  113. The OS/2 part of Row will probably stop working correctly also.
  114.  
  115.  
  116.  
  117.  
  118. OS/2 2.x virtual DOS compatibility notes:
  119.  
  120. Row.Exe works in any regular OS/2 DOS Command windowed or full screen
  121. session or any windowed or full screen session of a Virtual DOS Machine. I
  122. have tested only VDM's booted from image files but have tested images of
  123. DOS 3.2 through DOS 5.0. All DOS versions from 3.3+ allow Row to be used in
  124. any command invocation. Row makes nice 14 row DOS windows which can be
  125. maximized and then have a small font applied to them yielding a scroll bar
  126. free window of a small height stretching across the screen. I find it quite
  127. useful for those commands which might require it.
  128.  
  129.  
  130.  
  131.  
  132. OS/2 2.x protected mode compatibility notes:
  133.  
  134. Row.Exe operates in any OS/2 2.x windowed or full screen Cmd session; The
  135. programming API used is for OS/2 1.2 so this program may also work for OS/2
  136. 1.2+ windowed and full screen Cmd sessions but has not been tested as to
  137. whether it will work or as to which row settings will be available.
  138.  
  139. For a VGA OS/2 2.0 GA presentation manager windowed session the row settings
  140. OS/2 does not balk at are from 1 through 102 inclusive. For a full screen
  141. session under presentation manager the following settings were possible: 24,
  142. 25, 27, 28, 45, 46, 47, 48, 49, and 50 rows. A full screen session of Cmd.Exe
  143. running directly as the protected mode shell was only capable of setting 25
  144. rows on the display at a time. When called through the Config.Sys Call
  145. statement Row was capable of setting the text mode screen to both 25 and 50
  146. rows which is all that was tested.
  147.  
  148.  
  149.  
  150.  
  151. The Disclaimer:
  152.  
  153. This software carries absolutely no warranty whatsoever, this program
  154. works on the author's system and is not guaranteed to work on anyone
  155. else's system. The owner/author, Patrick T. Wolfert, will not be held
  156. liable for any damages caused by this program to any system.  If you are
  157. in doubt as to this program's suitability for your computer system then
  158. simply do not run it!
  159.  
  160.  
  161.  
  162.  
  163. The License:
  164.  
  165. This program is not free, it is distributed as shareware, meaning that
  166. you are encouraged to try it out on your own system and to pass it along
  167. to as many others as you would like to, but that after a reasonable trial
  168. period, not to exceed one month of use you are required to pay for it's
  169. continued use.
  170.  
  171. Payment is ten dollars ($10) per computer which will have it's screen rows
  172. modified by Row payable in United States currency/check/MO, etc...
  173.  
  174. Please remit to:
  175.         Patrick T. Wolfert
  176.         580 Main Street, Suite 1320
  177.         New York, N.Y., 10044
  178.  
  179. Multiple computer licensing information is available upon request.
  180.  
  181. Registered users of Row will recieve the latest edition of the program and
  182. documentation files on diskette as well as a laser printed typeset edition
  183. of the user documentation if desired and your address is supplied; Registered
  184.  
  185. Any license granted applies to all past, present, and future editions of Row.
  186.  
  187.  
  188.  
  189.  
  190. Instructions:
  191.  
  192. Row for DOS (Row/D) may be loaded from either the Config.Sys file or from the
  193. Command prompt. Row requires no resident memory; Loading as a device driver
  194. is simply a convenience to prevent messages from scrolling off of the screens
  195. of those computer systems which process many programs within their Config.Sys
  196. and Autoexec.Bat files.
  197.  
  198. Row for OS/2 (Row/2) is executable from either a Config.Sys Call statement at
  199. system startup time or from the Cmd prompt at any time.
  200.  
  201. Row may also be executed from other programs; LoadHi /GS for DOS indicates
  202. that 9K run-time bytes of memory are used by Row/D 2.01.
  203.  
  204. Row will always display a message indicating it's processing status.
  205.  
  206. The version numbers displayed by Row/D and Row/2 may be different since
  207. Row.Exe is really two separate executable programs combined into one; The
  208. operating system loads Row.Exe and executes the appropriate part of it.
  209.  
  210. To invoke Row from your DOS or OS/2 Config.Sys file add a line consisting of
  211. the following anywhere in the file where you want the screen rows to change:
  212. (Note:OS/2 executes Call statements after all other Config processing is done)
  213.  
  214.         DEVICE=[d:][path]Row.Exe [options]          <== Use this for DOS
  215.  
  216.                       -or-
  217.  
  218.         CALL=[d:][path]Row.Exe [options]            <== Use this for OS/2
  219.  
  220. Replace the [d:] with an optional drive specification, the [path] with an
  221. optional path specification and [options] with any options you may wish to
  222. pass to Row to modify it's execution. Do not place the Row invocation in
  223. between any device commands or call statments which must load consecutively.
  224.  
  225. To invoke Row from the DOS Command or OS/2 Cmd prompt type the following:
  226.  
  227.         [d:][path]Row [options]
  228.  
  229. Replace the [d:] with an optional drive specification, the [path] with
  230. an optional path specification and [options] with any options you may
  231. wish to pass to Row to modify it's execution.
  232.  
  233.  
  234.  
  235.  
  236. Options available to modify the operation of Row/D for DOS:
  237.  
  238. Options to Row/D are typed after it's invocation. Options are not case
  239. sensitive and consist of a row count or short word or abbreviation.
  240. Options may be typed in any order; If multiple conflicting options are
  241. present then only the last applicable one is used since it's values
  242. will overwrite any set by previous options.
  243.  
  244. Option          Function
  245. ?               Row does nothing but display a quick syntax message.
  246. 50              Row will set the adapter to display 50 rows.
  247.                 This is the default number of screen rows.
  248. 43              Row will set the adapter to display 43 rows.
  249. 28              Row will set the adapter to display 28 rows.
  250. 25              Row will set the adapter to display 25 VGA rows.
  251. 25V             Row will set the adapter to display 25 VGA rows.
  252. 25E             Row will set the adapter to display 25 EGA rows.
  253. 25C             Row will set the adapter to display 25 CGA rows.
  254. 21              Row will set the adapter to display 21 rows.
  255. 14              Row will set the adapter to display 14 rows.
  256. 12              Row will set the adapter to display 12 rows.
  257. NoCls           Row will not clear the screen.
  258.                 This is the default for screen clearing.
  259. Cls             Row will clear the screen and 'home' the cursor.
  260. +               Enable VGA detect. This is the default.
  261. -               Disable VGA detect.
  262.                *Results are undefined for non-VGA adapters.
  263.  
  264. N and C may be used in place of NoCls and Cls respectively.
  265.  
  266.  
  267.  
  268.  
  269. Options available to modify the operation of Row/2 for OS/2:
  270.  
  271. Options to Row/2 are typed after it's invocation. Options are not case
  272. sensitive and consist of a row count or short word or abbreviation.
  273. Options may be typed in any order; If multiple conflicting options are
  274. present then only the last applicable one is used since it's values
  275. will overwrite any set by previous options.
  276.  
  277. Option          Function
  278. ?               Row does nothing but display a quick syntax message.
  279. [rows]          Place the number of rows you wish for the session to have
  280.                 here. The default is 50 rows. OS/2 allows 1<=rows<=255.
  281. NoCls           Row will not clear the screen.
  282.                 This is the default for screen clearing.
  283. Cls             Row will clear the screen and 'home' the cursor.
  284.  
  285. N and C may be used in place of NoCls and Cls respectively.
  286.  
  287.  
  288.  
  289.  
  290. Examples for DOS and OS/2 follow:
  291.  
  292. Device=c:\util\Row.exe              Change rows to 50 without clearing.
  293. Device=c:\util\Row.exe Cls 28       Change rows to 28, clear screen.
  294. Row ?                               Display a help message only.
  295. Row n 21                            Change to 21 rows, no screen clear.
  296. Row 43 -                            Display 43 rows, no screen clear,
  297.                                     disable VGA detection. For DOS only.
  298.  
  299.  
  300.  
  301.  
  302. Usage notes:
  303.  
  304. Since I do not have a monochrome VGA monitor to test this program with the
  305. monochrome code for Row/D is untested at this time. If you use this program
  306. with a monochrome VGA please let me know how it turns out. The differences
  307. for monochrome are that screen mode 7 is used instead of mode 3 and the
  308. program message colors are plain white. No video card I tested this with was
  309. capable of emulating monochrome so that my program (or any other for that
  310. matter) could detect it properly.
  311.  
  312. If you are using a display page other than page zero as the active page
  313. the Row/D will probably reset the screen to page zero as the active
  314. page. I do not know this for sure and have not tested it under this
  315. condition.
  316.  
  317. Row/D may be invoked from the DOS_DEVICE DOS setting of an OS/2 DOS session.
  318. Do not place the DEVICE= statement in the DOS_DEVICE setting, just use the
  319. Row.Exe invocation.
  320.  
  321. The difference between the Row/D CGA, EGA, and VGA 25 row modes is the number
  322. of scan lines put on the screen. Each is visibly different in VGA text mode.
  323.  
  324.  
  325.  
  326.  
  327. Author's notes:
  328.  
  329. The Row/D program is written in 8086 Assembler. It was assembled using
  330. XASM, The Brand X Assembler by Access, a very good assembler compatible
  331. with MASM, so compatible it probably could never be released.
  332. Thank-you to whoever wrote it!
  333.  
  334. The Row/2 program is written in C for the Microsoft C Compiler version 6.00AX
  335. using OS/2 as the target operating system.
  336.  
  337. The program requires about 9K of memory and switches to an internal stack
  338. for both DOS device driver and DOS EXEC execution. For OS/2 the C startup
  339. code handles the program's stack. Row/D is the stub of Row/2.
  340.  
  341. In May of 1991 I typed in a debug script from what I think was PC Magazine.
  342. In a letter to the editor there was a small 21 byte COM file (in a debug
  343. script) which set the screen to 28 rows. I thought that it was pretty cool
  344. and learned more about the video services by using Debug to unassemble the
  345. bytes in the script. While learning about the video services I saw that other
  346. row counts were possible. In December 1992 after getting a new video adapter
  347. I made a 50 row version of the 21 byte file which got me wondering if the
  348. mode switch could be done in Config.Sys so that I would not miss any messages
  349. output by programs starting up there or in Autoexec. Recently I had some time
  350. to do this and so VgaRow was born. It was started on May 15, 1993, some hours
  351. later the first device driver version gave my screen 50 rows. Quarterdeck's
  352. Device program was very useful since I could test my program in a Desqview
  353. window without having to reboot my computer every time the program freaked
  354. out (developing device drivers tend to do that). After the program was stable
  355. I decided to make an .EXE out of the .SYS version which would load both ways
  356. and operate using the same syntax. The program grew to many times the size of
  357. the original .SYS version but added many features such as picking the rows
  358. and screen clearing options. Now it probably takes less space than two separate
  359. executable files would take.
  360.  
  361. After writing a new program like VgaRow but in C and targeted for OS/2 I
  362. wanted to combine the two into one executable program if possible and also
  363. fix the lack of screen scrolling in certain conditions in the DOS version
  364. which is handled more pleasently in the OS/2 version. More specifically the
  365. screen is scrolled up an appropriate number of rows if the new screen will
  366. have less rows displayed on it. The new, combined executable file for DOS and
  367. OS/2 is called Row.Exe.
  368.  
  369. The first edition to be released is VgaRow.Exe version 1.21 of May 21, 1993.
  370. The second edition to be released is Row.Exe version 2.01 for DOS and 2.10
  371. for OS/2 of June 23, 1993.
  372.  
  373.  
  374.  
  375.  
  376. Questions, Comments, Suggestions, or Criticisms?
  377.  
  378. They are all welcome, send them to me at:
  379.         Patrick T. Wolfert
  380.         580 Main Street, Suite 1320
  381.         New York, N.Y., 10044
  382.  
  383. Hopefully VgaRow and now Row can help to make using your computer more
  384. efficient and enjoyable than it otherwise would have been.
  385.  
  386.  
  387.  
  388.  
  389. Copyrights, Trademarks, and other protections:
  390.  
  391.         Desqview is property of Quarterdeck Office Systems.
  392.         IBM DOS is property of IBM Corporation.
  393.         LoadHi is property of Quarterdeck Office Systems.
  394.         MS DOS is property of MicroSoft Corporation.
  395.         OS/2 is property of IBM Corporation.
  396.         The VgaRow and Row programs are property of Patrick T. Wolfert.
  397.  
  398.                                    - Fini -
  399.