home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 15 / CD_ASCQ_15_070894.iso / vrac / letbox.zip / README.TXT < prev    next >
Text File  |  1994-06-03  |  13KB  |  321 lines

  1. Firefly Software Systems Corp.
  2. Box 5035
  3. Oregon City, OR 97045
  4.  
  5. 503-694-2221
  6. FAX 503-694-5867
  7.  
  8. 6-3-94
  9.  
  10. This program project is code named Letter Box.
  11.  
  12. A replacement for WINOA386.MOD from Firefly Software Systems Corp.
  13. (Winao386.mod is the DOS session sub system).
  14.  
  15. INSTALLATION --------------
  16.  
  17. These files are normally found in the Windows\SYSTEM subdirectory.
  18.  
  19. Rename Winoa386.mod to something else like *.old
  20. copy wx.exe to Winoa386.mod.
  21. Copy WOLDAPDL.DLL to the same directory with Winoa386.mod
  22. Copy the dosfon.fon font to the same directory.
  23. Copy VTSR___.ttf to the same directory. (see note below).
  24.  
  25.  
  26. Copy DOSAPP.INI to DOSAPPx.INI. (windows subdirectory).
  27.  
  28. That's all it takes for the install.
  29.  
  30.  
  31. Problems reported will be fixed, where feasible within minutes. Hours,
  32. days, years. As fast as possible.
  33.  
  34.  
  35.  
  36. FEATURES:
  37.  
  38. System.ini switches
  39.  
  40. [NonWindowsApps]
  41. WinoaLogErrors=1    ; turns on error logging.
  42.             ; 0 = off, 1 = on, 2 = on and notify w/messagebox
  43.  
  44. Special Features
  45. Better error handling
  46. Faster
  47. --------------
  48. Screen updates (more to come).
  49. Starting a second DOS session; much faster.
  50.  
  51. The User Interface has been improved somewhat. Operations which take some
  52. time, more than a second have an hourglass/wait icon displayed.
  53.  
  54. The system/settings menu now has 2 items. This Session, and PIF Editor.
  55. Brings up the pif editor and the correct pif file
  56. for the present DOS session.
  57.  
  58.  
  59. The Settings dialog box, has a help button for DOS sessions that
  60. have gone to sleep and won't wake up.
  61.  
  62. True Type Fixed Fonts in a Windowed DOS session!!!! The dialog box will
  63. allow any point size you want to enter manually.
  64.  
  65. If you use a "?" in the pif file in the optional parameters,
  66. Winoldap will put up a dialog box prompt asking you to fill in the blank.
  67. Our implementation supports a browse button, cancel, help and maybe
  68. a history list. Now allows changing the full-screen/windowed option.
  69. This feature is quite powerful.
  70.  
  71. An Extended DOSAPP.ini file is now being used. The file name is "DOSAPPx.ini"
  72. This extended file will allow new features, including a limit on the number
  73. of instances that can be started.
  74.  
  75. A CopyScreen to clipboard menu item.
  76.  
  77. Error logging for system administrators. Log is kept in WINOLDAP.LOG in
  78. the Windows directory.
  79.  
  80. More stack space
  81.  
  82. More reliable during startup. Starting 2 dos sessions back to back
  83. won't crash your system or make it unstable.
  84. More reliable during run time. Critical error messages will always display
  85. under worst case.
  86. Should be much better on a network.
  87.  
  88. If the grabber file (vga.3gr or whatever) can't be found, you will
  89. get a specific message with precise missing file name when you try
  90. to start a DOS session. Try it. Rename the vga.3gr in system.ini to
  91. vgaz.3gr.
  92.  
  93. Help buttons in all dialog boxes.
  94.  
  95. A  True Type Terminal Font by Ed Behl. VTSR____.TTF.(if not included, see below)
  96. These type faces are from Ed Behl's type company, in Florida.
  97. This VTSR is a True Type but has the PC-8 (OEM terminal) type faces with
  98. the high ascii characters. Install this font with your Windows Control
  99. Panel. Then select it in the True Type menu item, under the Fonts menu
  100. item on the system menu in a DOS windowed session. (Download this from
  101. our BBS - 503-694-2220). Or maybe off of Compuserve.
  102.  
  103.  
  104.  
  105.  
  106. LRESULT SendMessage(hWnd, WM_USER+0x530, 178H, 0L);
  107. will return a handle of a global memory object: copy of the screen.
  108. You must GlobalFree the handle, in AX. DX contains the format number.
  109. AX is in the lowword and DX is in the Hiword of LRESULT.
  110. A screen object will normally be about 2048 bytes in length. Trailing
  111. spaces are converted to nulls. Lines are terminated with cr/lf.
  112.  
  113.  
  114.     hDOS = FindWindow("tty", NULL);// set null = "a Window Title"
  115.     if(!hDOS) return 0;           // to find other than first window
  116.     lres = SendMessage(hDOS, WM_USER+0x530, 0x178, 0L);
  117.     if(lres == -1L) return 0;
  118.     fptr = (LPSTR)MK_FP((UINT)(lres),0);
  119.     MessageBox(hWnd, fptr, "Screen", MB_OK);    //display info
  120.     GlobalFree((UINT)lres); // be sure to free the block
  121.  
  122. ;It might be useful to know the screen size returned.
  123.  
  124.    ; using messagebox, may result in the ok button being off the bottom
  125.    ; of the screen.
  126.  
  127. We have a test application that demonstrates this feature. If you want
  128. the source just ask.
  129.  
  130.  
  131. SendMessage with wParam = 
  132. 175h, gets the screen size. DX=Height, AX=Width (one based).
  133. 176h = get the cursor screen position.DX=ROW, AX=COL (zero based).
  134. 177h = get screen mode.    AL = (0-A).
  135. 178h = get screen section.  (not done yet).
  136. (Programmer interface not in shareware version).
  137.  
  138.  
  139. In cases where you are attempting to start a pif that requires more EMS,
  140. XMS or conventional memory than is available, you will get a message 
  141. that the pif needs to be changed. This is now followed by a retry dialog
  142. box. You can enter a new number and attempt to restart. The restart will
  143. occur immediately. 
  144.  
  145. Many new features coming.
  146.  
  147.  
  148. Terminate now has a KILL button. In case terminate does not work.
  149. Clipboard support(int 2f, func 17xx), copies are much faster.
  150. New clipboard functions coming.
  151. Large pastes will give a warning first.
  152.  
  153.  
  154. Letter Box works ok with EDOS. If you don't know what EDOS is,
  155. it stands for Enhanced DOS for Windows. EDOS has many features
  156. designed to appeal to DOS users(in Windows). Available from our BBS.
  157.  
  158.  
  159. Support for "Save Settings on Exit", has been worked on. The
  160. algorithm for deciding how that part of the system works is
  161. still being worked out. Your suggestions are welcome.
  162.  
  163. W4W 3.11, the VFAT.386 file is broken. If you have 32bit File Access
  164. turned on, then you may experience system integrity violations using
  165. some software. This is NOT a Letter Box problem.
  166. -------------------
  167.  
  168.  
  169. NOTE: vtsr____.ttf, is a true type font with OEM(PC-8) faces. This
  170. font is from E.H.Behl and is shareware. We have their permision to
  171. distribute it with Letter Box. The .fot has been patched to allow display
  172. of the ascii chars below ascii space. (Happy face and others).
  173. The dosfon.fon file is from Don Stegal at Playroom Software. The 
  174. same distribution rights apply to it. When you register Letter Box
  175. you will get registered copies of their fonts, included in the price.
  176. !!!!!! Be sure to copy the .fot to the directory AFTER using the control
  177. panel to install the Font. 
  178. Playroom Software is the producer of Makeover, a really neat Windows app
  179. that can change the LOOK of your entire Windows system. Sculptured
  180. Title bars and buttons, etc. See Playroom.wri.
  181.  
  182.  
  183. PROBLEMS:
  184. ------------------------------------------------------------------------
  185. Here is the part where I releave you the
  186. little people of the burden of your failed and miserable lives.
  187. (The Joker: A reasonable quotation from Batman, the movie).
  188.  
  189. In this case, this is where we the superior people releave you of
  190. your innocence and burden you with the knowledge of good and evil.
  191.  
  192. This software is not perfect. It contains bugs and undocumented features.
  193. Any known bugs would have been removed. That means the unknown ones
  194. are still here. Were it not so, there would be no need for programmers.
  195. God knows the world needs more programmers! If programmers could be
  196. squashed as easily as bugs, there would be no bugs!
  197.  
  198.  
  199. Once upon a time, a programmer who was fishing, fell overboard in
  200. shark infested waters. He was immediately shredded and eaten.
  201. Needless to say, all the computer users in the universe were delighted.
  202. For there was one less programmer who would be creating
  203. bugs. As usual, a large great white shark happened along just as this
  204. was happening. He was also a very wise great white shark, and he wanted
  205. to know why they were eating a programmer, as even God knows that
  206. what the universe needs are more, not fewer programmers. 
  207.  
  208. They explained that this particular programmer was one of the great
  209. programmers. And, that they were EACH just trying to get their fair
  210. share of his secret algorithms. The moral: a programmers heart beats
  211. in every breast. And a shark is just a programmer at heart. Goto
  212. object. Byte object. Swollow byte. Repeat while not zero.
  213.  
  214.  
  215. This version of the software has a couple of problems.
  216. Sizing of the screen in windowed mode is sometimes not quite right.
  217.  
  218. True TYpe fonts don't always restore properly after a close session, with
  219. save settings on. True Type selections do not use OEM(PC-8) fonts 
  220. exclusively. This means that a font which is ANSI will not have the
  221. character faces for the high ascii characters that you expect in a DOS
  222. session. This is not a major problem. What you need are some TT fonts
  223. with OEM faces, vtsr____.ttf fixes this.
  224.  
  225. Sometimes there are some little colored cells on the screen for a moment.(fixed)
  226.  
  227.  
  228. The help does not always lead to useful information. 
  229. The KILL feature does not work yet.
  230.  
  231. The basic system is quite stable. And has been running here for
  232. many months without crashing. 
  233.  
  234. Consistency, when changing fonts and reseting the window is not always
  235. right. Now Better, has been worked on.
  236.  
  237. The italic font style may not be supported. Displays
  238. of italic lines, did have some problems at the begin and end of the line.
  239. I have not disabled the italic from showing as an option. If I do disable it
  240. then fixing the display problem will not be necessary. Would like feedback
  241. as to whether italic is really wanted. (ALL FIXED).
  242.  
  243. If you are using EDOS with Letter Box... The EDOS menu item:
  244. VIew/Fonts does not work. Use the old system menu for fonts.
  245.  
  246. All of these problems are on a list to be fixed.
  247.  
  248. Note: if you have a display driver that can be reconfigured on the fly,
  249. both MS Winoldap and Letter Box will get confused and fail to display
  250. correctly unless you restart the first instance of all DOS sessions.
  251. If this is a problem, please let us know about it.
  252.  
  253. Letter Box, runs very nicely in Beta testing and seems to be QUITE
  254. reliable. Were it not so, you would not now have your hands on it.
  255. But if you find something interesting, please let us know. We have
  256. very little better to do in life than fix bugs, as you can well imagine.
  257.  
  258. ==================================================================
  259. A history of EDOS and a replacement Winoldap's development.
  260.  
  261. In order to save myself the trouble of being constantly queried
  262. about how all this came about... herein lies the tale.
  263.  
  264. About 2 years I built a tool to ferret out how Windows controls
  265. itself. That tool was a VxD and I call it edebug. It is not a debugger
  266. in the normal sense. But, since a VxD can intercept calls made to
  267. VxD calls, edebug was built to do just that. It contains traps for
  268. critcal calls to build a DOS session. The trap routines would output
  269. debug strings to a serial port, to which was attached another computer.
  270. The second computer would capture the output and write it to a disk file.
  271. The results could then be examined at leisure and in detail. From that I
  272. gleaned enough insight to start building EDOS. EDOS is a VxD and a DLL
  273. that work in cooperation. I could see the calls coming down the line and 
  274. gradually I deduced the use of the registers.
  275.  
  276. Eventually I built a couple of test programs in C that simulated the 
  277. work necessary to start a DOS virtual machine. About one year went by
  278. during which my attempts become more promising until sometime in mid
  279. 1993, one night, I got back a valid VM handle. It took another year
  280. to finish writing a Winoldap replacement in C and assembler.
  281.  
  282. The effort do this is almost mind boggling. You know the old story, if
  283. I had known what I was doing. I would have had more sense than to try.
  284. My replacement for Winoldap consists of about 100k of include files,
  285. 400k of assembly code and about 25k of C. Not including test programs.
  286.  
  287. All the assembler is written using Borland's Turbo Assembler and
  288. their IDEAL mode. The contributions of others, who are totally ignorant
  289. of their help, is lengthy. Without TASM's ideal mode I doubt that I would
  290. have tried to build such a large project. This is without a doubt the
  291. single biggest assembly language project I have ever done. 
  292.  
  293. Barry Kauler's book, Windows Assembly language and systems 
  294. programming, has been invaluble. Included in the list of necessary reading:
  295. Undocuemented DOS and Windows, also Windows internals by Mat Pietrik and
  296. DOS internals by Geoff Chappel. The Intel 386 processor manuals and
  297. scores of other documents from the MS Knowledge Base. Brent Rector's book
  298. on Windows Programming. This list is NOT inclusive.
  299.  
  300. Using TASM's ideal mode provides type checking of parameters and ideal
  301. mode syntax is less ambiguous than MASM mode. I wanted to eliminate
  302. all opportunities for mistakes since the project was such a massive one.
  303. Since TASM ideal mode has not had a lot of visible use in large projects,
  304. I would like to add, that I have not had any complaints with TASM's 
  305. code generation. The assembler is a little bit touchy about certain
  306. kinds of mistakes and will lock up occassionaly. The fact is that the
  307. code that it generates appears to be very stable. I consider stable code
  308. to be the first objective of any programming project.
  309.  
  310.  
  311. =============
  312.  
  313.  
  314. Because we now have a code base for supporting the running of
  315. DOS apps in Windows. We have the ability to modify the system for
  316. doing so almost at will. If you think of a feature that Letter Box
  317. doesn't have, why be sure to let us know about it.
  318.  
  319.  
  320.  
  321.