mckenney@talos.pm.com (Frank McKenney) (05/03/90)
The following message describes experience with the Microsoft Programmer's WorkBench 1.0, and the associated C Compiler 6.0. Those interested in neither can just hit "n". Caveat: the following are initial impressions of Version 1.0 of a complex piece of software, made by a reasonably competent user, but one who has had only 5 days' experience with the product. The items below might equally be results of mis-read, missing, or incorrect documentation, product deficiencies, actual bugs, or my own ignorance. Not to mention possible klutz errors... Caveat 2: my purpose was to learn enough about PWB to be comfortable using it for editing, compiling, linking, and testing. I have left the fancier features (Source Browser) alone for now. Equipment: 10MHz AT Clone, 5 Mb RAM, MS Bus Mouse, Video 7 VGA, ST-296N, ST-251-1, DOS 3.3, TMP=(2Mb RAM disk) -------------------------------------------------------------------- 4/27 - Installation. DOS/Real Mode only (for now). Quick Help? Sure!. Small Memory Model library only. Six megabytes gone. Ouch. -------------------------------------------------------------------- 4/28 - U1354 (undocumented) error from PWB. Since PWB's directory (D:\MSC6\BIN) had been added to my PATH, I assumed that I could run it from anywhere. When I tried it, however, I got error U1354 unless I started it from within D:\MSC6\BIN. Neither the PWB online help nor the QH.EXE progam could tell me what this error meant. Then I tried my first compile, and got the same error code. Next I tried running NMAKE outside PWB. NMAKE claimed that it couldn't find CL.EXE or LINK.EXE, although I could execute them from the DOS command line without problem. The removal of a TSR utility named DPATH finally fixed the problem. Apparently DPATH's assistance was confusing the EXEC method used by the new utilities. -------------------------------------------------------------------- 4/29 - Startup and exit timings. PWB takes about 30 seconds to come up, and 3-5 seconds to shut down (not counting prompters). Shelling out to DOS ("Run DOS Command" COMMAND) takes about 6 seconds, and it takes about 24 seconds to return (timings done with 3 open files totalling about 22K). Using "File/DOS Shell" is a few seconds faster, and returns into the PWB environment about 5 seonds faster. -------------------------------------------------------------------- 4/29 - TMP vs. TEMP oddity. I have an environment variable named TMP set to point to my RAM drive (VDISK.SYS), but no TEMP. PWB seems to be working just fine, and various messages indicate that the contents of TMP are being used. -------------------------------------------------------------------- 4/30 - I really like the CodeView VGA 50-line mode. CV now has four adjustable windows (Watch, Source, Memory, and Command), with the result that there is too little room on a 25-line display for a reasonable number of Watch statements. -------------------------------------------------------------------- 4/30 - I seem to occasionally wind up with an "open" help window in my "Files" list, and can't figure out how to get rid of it. It does disappear when I shut down PWB and bring it back up again. -------------------------------------------------------------------- 4/30 - Trying to set up to run in Debug mode can be tricky. There are several different places where switches have to be set, and it took a while to find all of them. Unfortunately, the only way of checking was to re-compile and go into CodeView, and then be told that there was no symbolic information because it was a "packed" file. A "master switch" would be nice. -------------------------------------------------------------------- 4/30 - PWB does a nice job of keeping track of all of my open program files. I only wish it also kept my MAKE file - I have to respecify <that> with "Make/Set Program List" each time I bring PWB up. This seems inconsistent. -------------------------------------------------------------------- 4/30 - I keep getting (intermittently) "C1069: write error on file xxxx.obj" when compiling. Other programs like this drive just fine, and a recompile always succeeds. To date, this has always occurred with other compile errors. -------------------------------------------------------------------- 5/1 - There appears to be a problem with the "incremental compile" feature. If I have an error, fix it, and then recompile, I occasion- ally get the message "C4140: 'function' redefined, preceeding references may be invalid" for each function which follows the function fixed. A "Make/Rebuild All" fixes the problem. -------------------------------------------------------------------- 5/1 - Time to "Open" files seems reasonable. Switching between already "open" files goes fairly quickly. Using the vertical "slider" to move through the active file is very quick. Switching <windows>, on the other hand, can take as long as 10 seconds. -------------------------------------------------------------------- 5/2 - If I leave PWB (either exiting, or to CodeView) after making changes to multiple files, I will get a prompter labelled "File has changed!" for the current file. If I respond "Y" to save it, I will then get <another> prompter asking if I want to save "All Files". Since I generally want to save everything, the ordering of these prompters seems backwards. -------------------------------------------------------------------- 5/2 - Shelling out to DOS. PWB appears to write most of itself out to files in the directory SET by TMP: PWB08090 V00 163848 5-02-90 1:01p PWB SHL 122 5-02-90 1:01p leaving only 14K resident when a DOS command is "Run" from the menu. This is fairly impressive. Using the "File/DOS Shell" method creates an additional file, but uses 4K less (10K resident). The "Run/Run DOS Command" method does <not> retain the last command used. Sigh. -------------------------------------------------------------------- 5/2 - Cursor, bell: minor irritations. During file load and other lengthy (>.5 sec) operations, the cursor tends to jump around on the screen, rather than being blanked. Also, there is a "beep" that I <assume> signals the end of a rebuild, but it occurs 10-15 seconds before I get any other results. Sounds like a left-hand/right-hand problem. -------------------------------------------------------------------- 5/2 - Mouse positioning. It may take several clicks for the mouse to reposition the text cursor. This seems to occur mainly (only?) at the left margin. I suspect that the PWB mouse support is giving me the "accurate" response ("You can't click on a window border") rather than the "useful" one ("Oh. You're <actually> clicking on the window border character, but since that isn't useful, I'll <act as though> you were at the left margin"). The problem, of course, is that the window border is a thin vertical line, so it's hard to tell the difference between the blank portion of the vertical line's "character space" and a blank character to its immediate right. Quick fix: I used "Options/Editor Settings" to set the window border from 17 (white on blue) to 74 (red on white), making the "real" border more obvious. -------------------------------------------------------------------- 5/2 - PWB crashes on "run-time error R6003 - integer divide by 0" I loaded a copy of this document (MSC6.DOC, in XyWrite III format) into PWB to make a few minor changes. It was a little tricky, since my "paragraphs" exceed PWB's "line" length limit, but it looked OK on the screen. When I tried to re-save the result, I got a prompter with the messages "Cannot rename FILE.$!" and "No such file or directory". After several more prompters, PWB finally terminated with an R6003 run-time error. Fortunately, MSC6.BAK (the XyWrite backup) and MSC6.$ (the PWB backup) were both still present. Guess: PWB doesn't gracefully handle "long" text lines. -------------------------------------------------------------------- Overall reaction: favorable. I believe that Microsoft has defined a framework which will last for a while (i.e. four or five years, a long time in this business). PWB does appear to have a few bugs, it doesn't run as fast as I would like for some things, and it makes me wonder when I'll wind up buying a 200Mb disk, but I <can> use it, as shipped, to productively develop software. And that's really what I need. Thanks, Microsoft.