Received: from USC-ISIB.ARPA by wiscvm.wisc.edu on 02/11/86 at 23:04:10 CST Date: 11 Feb 1986 18:18:58 PST Subject: Info-IBMPC Digest V5 #20 From: Info-IBMPC Digest To: Info-IBMPC_Distribution_List: ; Reply-To: INFO-IBMPC@USC-ISIB.ARPA Info-IBMPC Digest Tuesday, 11 February 1986 Volume 5 : Issue 20 This Week's Editor: Billy Brackenridge Today's Topics: Hard Disk Interleaves PC Clones Query XENIX and 30MB Seagate Alsys Ada on AT Installing Interrupt Handlers in Turbo Pascal 2.0B (MS-DOS version) MAX Editor Dead Terminal Caused Backlog A Different Experience with the Proprinter Proprinter GKS driver Dbase III+ Undocumented Microsoft LINK option: /E ARC5.12 IS NOW AVAILABLE Renaming Subdirectories Beware of 'MVDIR.BAT' (& all self-documenting code) MVDIR.BAT New Files Available at SIMTEL20 Rename Directories, Moving Files, & Disk Optimizing Disk Optimizers DOS vs. Direct Screen Writes DOS vs. direct screen writes Terminal and PC at Once? Alternate Shell Program Russian (and French) Word Processors MS Mouse Protecting the Hard Disk Heads on an XT Symdeb 4.0 -- Stack trace? Hotel Front Desk Package Wanted Product Evaluation: Classic 286 ---------------------------------------------------------------------- From: allyn@sdcsvax.ucsd.edu (Allyn Fratkin) Date: 11 February 1986 1630-PST (Tuesday) Subject: Hard Disk Interleaves I have read with interest the discussions about the interleave factors on hard disks. But I still have a few questions. I work with 4 PC/ATs and 4 PC/XTs. All of these use the standard IBM disk controllers. We have a mixture of disks: CMI and Seagate for the ATs and Seagate and IMI for the XTs. Are some or all of these disks likely to be suffering from a bad interleave factor? How do I check the interleave of a disk, and how can I change it if I don't like it? Thank you. Allyn Fratkin allyn@sdcsvax.ucsd.edu UCSD EMU/Pascal Project or U.C. San Diego {ucbvax, decvax, ihnp4}!sdcsvax!allyn [This question has been asked before but never answered. -wab] ------------------------------ Date: Tue, 04 Feb 86 18:10 EST From: GKN3M2%IRISHMVS.BITNET@WISCVM.WISC.EDU Subject: PC Clones Query I would be interested in hearing from those people who have purchased PC/PC-XT clones. Specifically, how compatible are they? Is there sufficient support from the dealer? How much did it cost? Feel free to include any general comments on the 'feel' of the machine. Evan Bauman ARPANET -- gkn3m2%irishmvs.bitnet@wiscvm.arpa BITNET -- gkn3m2@irishmvs ------------------------------ Date: Fri 7 Feb 86 18:46:29-PST From: William Pearson Subject: XENIX and 30MB Seagate I recently purchased a 30MB Seagate drive for my PC/AT (drive type 8), which installed with no problems under DOS3.1. I now use the original IBM 20MB drive with XENIX, and the 30MB drive with DOS, but I would like to reverse the configuration. I have Robin Cutshaw's patches to correct the XENIX disk parameter tables, but it is not clear to me how many changes must be made to the distribution/installation floppy. I am unable to run "fd /etc/badtrack" because the 30MB drive keeps seeking to track 0 after checking the first 520 tracks (at least that's what it sounds like) and as a result I get a "Bad signature (B66D)" message when I boot XENIX, which does not seem to hurt anything. I would appreciate hearing from anyone who has set up IBM XENIX for the AT to boot from a non-standard drive. Bill Pearson Dept. of Biochemistry U. of Virginia (804) 924-2818 ------------------------------ To: INFO-IBMPC@usc-isib.ARPA, INFO-Ada@usc-isif.ARPA Subject: Alsys Ada on AT Date: 08 Feb 86 11:02:08 EST (Sat) From: Bob Munck I too have been looking into this, and have set aside the money in my budget. I'm told by an Alsys source that they have pre-validated the compiler running on a VAX and compiling to a PC or AT. (Pre-validation is the point where the vendor has run all of the validation tests and is satisfied that his compiler passes, such that he is willing to risk the significant cost of calling in the government validation team to run the tests officially.) The source felt that they were within a week or so of pre-validating the AT host compiler, and mentioned in passing that the RAM board they supply with the compiler is more likely to be 4M than 3. That'll take my AT to 7.5M. I've been coding in Modula-2 until now, using the Logitech compiler and a Final Word II editor reprogrammed to "know" Modula-2. To switch to Ada, I need a set of Final Word macros for it. Has anyone done this? Anyone want to help? (The Modula-2 macros took about four evenings to write, and Ada has quite a few more statements and reserved words.) -- Bob Munck, MITRE (...!linus!munck.UUCP) (Munck at MITRE-Bedford.ARPA) ------------------------------ To: info-pascal@BRL-VOC.ARPA cc: "J. Eliot B. Moss" , James Dugal Subject: Installing Interrupt Handlers in Turbo Pascal 2.0B (MS-DOS version) Date: 08 Feb 86 01:11:47 PST (Sat) From: Alastair Milne [Apologies to non Turbo Hamsters for this long message. The discussion of Interrupt handlers is meaningless without the code examples, so despite our policy of not including long code examples in the digest, it seemed the right thing to do in this case. -wab] Ages ago now I posted a general request for information about installing user-written interrupt handlers in Turbo Pascal, MS-DOS version. Eliot Moss kindly sent me hardcopy of a terminal emulator package in Turbo which installs a handler for auxiliary serial port AUX:. However, at the time I was unable to coax what I thought were the relevant sections to behave for me. Since that time I have had reason to do some similar work in 8088 assembly, which led me to discover some small but very important details, and also to a better understanding of Eliot's package. Finally, last night, I successfully raised an interrupt for a routine in my program installed as in interrupt handler, which worked, returned successfully to the program, and apparently left the system intact. Two major points: 1. In every routine, Turbo apparently places some code ahead of the first user instruction, making it impossible immediately to install inline code to save all the registers, as MUST be done in an interrupt handler. The routine itself cannot therefore be installed directly as the handler. 2. The interrupt controller chip, the 8259, must be programmed to allow your interrupt, which is done by sending a mask value to port 21H. The particular mask value depends on the interrupt you are servicing. Also, the interrupt servicer should inform the 8259 when servicing has finished. This is done by sending another mask to port 20H. NOTE: if you want to assign the the two words of any intersegment pointer individually, instead of by using the function Ptr, remember that the offset is in the FIRST word, the segment base in the SECOND. This is contrary to the : notation commonly used. "Ptr" handles this automatically. Eliot's technique, which seems to work just fine, is to place in a data structure the sequence of instructions needed to save all the registers, and call as a far routine the actual handler. The handler will finish with a far return, and the rest of the data structure will restore all registers, and return from interrupt. The advantage here is that Turbo doesn't interfere with the contents of a data structure, so the handler begins and ends with exactly the code one specifies. Finally, one simply assigns into the interrupt vector the pointer to the structure. An example of code to do this: *************** program lookatinterrupts; {I can't stand looking at streams of numbers, especially in hex, and especially when they are doing something important: } const pushax = $50; popax = $58; pushbx = $53; popbx = $5B; pushcx = $51; popcx = $59; pushdx = $52; popdx = $5A; pushsi = $56; popsi = $5E; pushdi = $57; popdi = $5F; pushES = $06; popES = $07; pushDS = $1E; popDS = $1F; pushCS = $0E; pushBP = $55; popBP = $5D; callL = $9A; { long (intersegment) call} IRet = $CF; { return from interrupt: LAST instruction of handler} StI = $FB; { Set Interrupt flag: allow interrupts to be raised. interrupt flag is automatically reset when the handler is called.} type array11 = packed array[1..11] of byte; {Must be adjusted to exactly the number of bytes the initialising instructions need.} array10 = packed array[1..10] of byte; {Likewise for terminating instructions.} RoutinePtr = ~byte; {actually, pointer to anything will do.} CallerRec = record SaveAllAndCallServicer: array11; ServicerAddr: RoutinePtr; RestoreAllAndIRET: array10; end; { A "CallerRec" is in fact a routine. All the components MUST be directly contiguous, and allocated in this order. Particularly, ServicerAddr is the argument to the far call which is the last instruction of the previous field. } { Declare as constants the stream of bytes comprising the interrupt's initialisation, long call, and termination: } const ServicerInit: array11 = (pushAX, pushBX, pushCX, pushDX, {save all gnrl. reg.s} pushSI, pushDI, pushES, pushDS, pushCS, popDS, { set DS to CS} callL); { call the servicer, whose address must immediately follow this byte. } ServicerTermnt: array10 = (popDS, popES, popDI, popSI, popDX, popCX, popBX, popAX, StI, {re-enable interrupts before leaving} IRet); {finally, return from interrupt} var PrntScrnAddr: RoutinePtr; {to save the pointer to the true print screen servicer. Fail to restore this, and you will only be able to print the screen after rebooting. } { Declare the interrupt vector as what it is: 256 routine pointers starting at address 0:0 : } IntrVector: array[0..255] of RoutinePtr absolute 0:0; { Provide callers for, in this case, 2 interrupt handlers: } PrntCaller, MyCaller: CallerRec; procedure myscreenprinter; { A substitute routine to serve as an example of substituting for an existing interrupt handler. THE ORIGINAL MUST BE RESTORED, or you will lose all screen-printing service. NOTE: NO parameters are possible, either on the stack or in registers. The program MUST NOT DIRECTLY CALL THIS ROUTINE.} begin writeln('screen would now be printed.'); port[$20] := $10; {DON'T TRUST THIS MASK VALUE. It caused me no problems on the Sanyo MBC-550, but that's not compatible enough with IBM's and their imitators for a strong argument. } inline( $8b/$e5/ {mov sp, bp} $5d/ {pop bp} $cb); {retl} end; procedure myhandler; { A very simply demonstration interrupt handler, to make some previously unserved interrupt give a response when raised. The CallL instruction in MyCaller calls this. NOTE AGAIN: NO parameters; the program MUST NOT DIRECTLY CALL THIS ROUTINE.} begin (**)writeln('in interrupt handler.'); port[$20] := $20; { Announce to the 8259 that the interrupt is over. Since the particular mask value that announces this depends on which interrupt is being served, the OUT instruction for this is not built into the handler termination code. $20 works is the completion mask for interrupt 12} {Make sure that the routine uses a long, or far, return, to match the long call instruction that called it. Restore SP and BP just as Turbo's code would, if the routine were going to use it. } inline( $8b/$e5/ {mov sp, bp} $5d/ {pop bp} $cb); {retl} end; procedure installhandler( IntrNum: byte; var Caller: CallerRec; RoutineAddr: integer); { Sets up the callerrec Caller to call the routine whose offset is RoutineAddr when interrupt IntrNum is raised. Although this form does not do so, ideally interrupts should be disabled whenever the interrupt vector is modified, and restored only when all changes are finished. Disaster could occur if something raised the interrupt while the address in the vector was only partly changed.} begin { Fill in the initialisation field of the record with the instructions already declared as a constant: } Caller.SaveAllAndCallServicer := ServicerInit; { Likewise for the termination code: } Caller.RestoreAllAndIRET := ServicerTermnt; { Fill in the intersegment address of the CALLL instruction which is the last byte in the initialisation code. The pointer to the routine consists of the code segment base, and the routine's offset in CS: } Caller.ServicerAddr := ptr( CSeg, RoutineAddr ); { Fill in entry IntrNum of the interrupt vector with the address of the CallerRec (NOT the handler routine itself). Its pointer is the Data seg (NOT the code seg.), and its offset into the data seg: } IntrVector[IntrNum] := ptr( DSeg, ofs(Caller) ); { NOTE: pointer is put into vector only AFTER what it points to is ready to handle an interrupt. } end; begin . . . { EXAMPLES OF INSTALLING INTERRUPT HANDLERS: } { Install the routine MyHandler as the servicer for interrupt 12: } InstallHandler(12, MyCaller, ofs(MyHandler)); { When superceding existing handlers, BE SURE TO SAVE THEM to be restored before the program exits. Otherwise, you'll find yourself missing possibly vital services until you next reboot. } PrntScrnAddr := IntrVector[5]; InstallHandler(5, PrntCaller, ofs(MyScreenPrinter) ); { Let the 8259 controller know that interrupt 12 is now supported and active:} port[$21] := port[$21] and not $10; . . . IntrVector[5] := PrntScrnAddr; {RESTORE pre-existing handler. } . . . end. *************** Nobody's favourite coding, but it works. Eliot also supplied two small procedures Enable and Disable to allow and prevent interrupts, respectively. I have omitted them here to keep things from getting completely out of hand. They consist simply of InLine calls using the STI and CLI instructions. Alastair Milne PS. I'm sure that by now, Eliot, James, and anybody else who wanted this information is certain that I've forgotten all about it, and that Eliot at least is quite irritated, since I told him I would pass his information on long ago. I hope they will accept my apologies for the long delay. ------------------------------ Date: Sat, 8 Feb 86 14:30 EST From: "Roger A. Roach" Subject: MAX Editor I got a copy of MAX 1.01 (and SCR) from: Mr. Ivo A. Welch Columbia College East Campus New York, NY 10027 At the time, Mr. Welsh was available as UI.IVO@CU20B. The cost was $15 for educational uses, $30 for commercial. Since it seemed that the authors were students, I am not sure what their present address would be. There was some reference information included on the disks, but I could not find any other address. ------------------------------ Date: 8 Feb 1986 18:02:56 PST Subject: Dead Terminal Caused Backlog From: Koji Okazaki Howdy. My terminal's been dead for the last couple of weeks.... hence, I haven't been able to read my mail recently. Now you all know why I haven't been answering your messages to me. Will be operational within a week. Thanks in advance for being patient. Koji Info-IBMPC program submissions... ------------------------------ Date: Sat, 8-Feb-86 18:17:31 EDT From: Manny Farber Subject: A Different Experience with the Proprinter My experiences with the IBM Proprinter have been notably more positive than those reported in an earlier Info-IBMPC. While there are some things I don't like about it, I have not had any problems with paper feeding; quite to the contrary, it has been exceptional in this area. The paper can also be ripped off right along the perforation, with no wastage. The construction is rather sturdy and the single sheet feeder is handy, although I don't use it much. The print speed (200 cps) is relatively fast (or at least average), and the NLQ mode produces very clear, easy-to-read characters that don't have serifs. It also prints all 256 IBM display characters. Now the bad parts: it's relatively expensive, unless you can get a discount; the output is much more wavy than an Epson's; and it doesn't have italics built in. I have overcome the problem with italics by trapping the output from PROLOAD (a font loader/editor available on CompuServe) and putting it in a file, which I copy to the printer with the /B option. This allows it to be put in a batch file. With Microsoft Word, for italics one can send the codes (in the PRD) file to switch into the download character set; in the end, it's transparent. (If anyone wants details or source code [for the trap routine], drop me a line.) Manny (manny@louie.udel.edu) ------------------------------ Date: Tue, 11 Feb 86 12:03:12 PST From: Jim Carter Subject: Proprinter GKS driver You've all been waiting for the driver for the IBM 4201 Proprinter in IBM's GKS. Guess what? You had it all along. vdiprgra.sys (for the standard graphic printer) works on the Proprinter also IF you turn on switch 6, auto CR after LF. Switches are under the cover at the left rear of the machine. Auto CR has no effect on most other software -- unless your program does a LF and expects to end up in the middle of the line. This was tested on "circut.exe", the GKS demo program that has a print feature, and on some locally written software. I have heard that a simi- lar maneuver also works on IBM-compatible Epson printers. My boss pulled this in from a bboard. James F. Carter (213) 206-1306 UCLA-SEASnet; 2567 Boelter Hall; 405 Hilgard Ave.; Los Angeles, CA 90024 UUCP:...!{ihnp4,ucbvax,{hao!cepu}}!ucla-cs!jimc ARPA:jimc@locus.UCLA.EDU [Cross-posted in net.graphics] ------------------------------ Date: Sat, 8 Feb 86 21:51 EST From: Yedidyah Langsam Subject: Dbase III+ The $100 upgrade fee for Dbase III+ is in my opinion worth it. Firstly, they completely redid the Assist interface. Secondly, there is a new type of file which keeps track of which indexes go with which file and allows you to set up a "view" of how you wish your files to be opened without having to open each index and file independently. This feature is in itself worth the update. Thirdly, there is the matter of the network support, which if you need it is great. A full review appeared in last months issue of Data Base Advisor, and is well worth reading. ------------------------------ Date: Sun, 9 Feb 86 20:13:17 CST From: nather@ASTRO.UTEXAS.EDU (Ed Nather) Subject: Undocumented Microsoft LINK option: /E The option does not exist in MS Link versions 3.00 and 3.01; it seems to have been added to version 3.02. I tried it out on a long program and it works, but the exepack utility that comes with Microsoft languages works better -- the size reduction was 2X greater than with link /E. Maybe that's why its undocumented ... Ed Nather Astronomy Dept, U of Texas @ Austin {allegra,ihnp4}!{noao,ut-sally}!utastro!nather nather@astro.UTEXAS.EDU ------------------------------ Date: Sun, 9 Feb 86 20:36:47 pst From: Richard Hallett Subject: ARC5.12 IS NOW AVAILABLE [Info-IBMPC is not distributing ARC or ARC format files or for that matter any binary format files. Discussion is fine but please don't ask us to send it to you. -wab] 8 Feb 86 EIBEN, MSDOS:ARC51.COM .. a truly 'boots-trapping ARC' - beware, You need roughly double the space of ARC51.COM to get the 'hidden ARC-files' de-arced. From: REFUGE::PORTER 7-FEB-1986 16:39 Subj: New version of ARC - V5.12 in a "package" Bernie, Just happened to be checking up on SEAboard, and spotted a new version of the now famous ARC utility - V5.12. This one comes with its own unique form of "packaging" - a "self-unpacking" archive! It is no longer necessary to have any "other" file compression utilities to unpack an ARC kit! The new "self-unpacking" archive file is named ARC51.COM, to unpack the ARC software you just run it like any other .COM image and it proceeds to unpack an archive contained within the .COM file as follows: ARC51.COM contents: ARC.EXE Version 5.12 executable ARC.DOC Version 5.12 docset ARC.TXT ARC product description only one caveat - when you run ARC51.COM to unpack the kit, the file must be in your MSDOS "current default directory". On another topic: There is now a new version of Fido - V11R, I will try to upload a copy to LSMVAX as soon as possible. Regards, KhP Kevin R. Porter Sysop of WayStar Fido - (617)-481-7147 in Marlborough, Mass. ------------------------------ Date: Mon 10 Feb 86 08:12:41-CST From: Clifford A. Wilkes Subject: Renaming Subdirectories To: MATHES%UMCVMB.BITNET@WISCVM.WISC.EDU Department: Computation Center - A20/R20 staff The "Duke Language Toolkit" is a set of programs to describe and install different character sets on IBM PC's with the EGA. I've used it and found it easy to understand and describing a character set, while time consuming, is not difficult. The major drawbacks are its support of few printers at present and the fact that it will not work on my Sperry. For more information on the the "Duke Language Toolkit" you should contact Jeffrey William Gillette at Duke University. His e-mail address is: DYBBUK%TUCCVM.BITNET@WISCVM.WISC.EDU. I hope this helps. <@> ------------------------------ Date: Mon, 10 Feb 86 14:25:14 EST From: Kenneth Van Camp -FSAC- Subject: Beware of 'MVDIR.BAT' (& all self-documenting code) James H. Coombs writes on Feb 6: >So far, 'MVDIR.BAT' has cost me two hours. If I'm lucky, I can get >everything set up again in another two hours, plus diddling this and >that for several weeks. I hope no one else has shared this experience, >and I am writing in the hope that no one else will. > >Finally, I have to say that I am not pleased to find an uncommented, >unexplained BAT file in INFO-IBMPC. I guess this must be refering to my MVDIR.BAT, since I think I was the only one who submitted a BAT file of that name to the request for directory rename utilities. However my version was definitely NOT undocumented. True there was not documentation within the BAT file itself; but my accompanying letter provided thorough (I think) guidelines for its usage. My mistake was probably in separating the batch file listing from the rest of the message by a line with many dashes that said in the middle to show where the BAT file began and ended. When the info-ibmpc digest arrived at my mailbox, I undigestified it. The undigestify program thought the dashes were message separators and hence the BAT file came out looking totally undocumented. All I had to do was read the messages before and after it to get the total picture. Perhaps your undigestify program did the same, or even lost the other two parts completely. To summarize, the documentation pointed out that the current directory should be the directory you want to move, and the parameter to MVDIR should provide the full path of the destination directory. There were also instructions to create two supporting files, \TMP\CD.MKB and \TMP\RMDIR.MKB. My guess is that your friend didn't create these files, or didn't create them properly, resulting in the improper construction of the CMMDS.BAT file from within MVDIR. In retrospect, I probably should have made it so MVDIR.BAT created its own supporting files every time it is run, for the public release version -- to avoid this kind of problem. Of course I don't do that in my own version because it slows things down and seems like a waste of computer time. It still seems like a very slim possibility that this could have caused your friend's problems. MVDIR.BAT was *really* a very simple program; most of the work was provided by the public domain MV.EXE; are you sure your version of that is working OK? If you really want to know for sure (and if you have the stomach to look into this any further), check and see if you have a file called CMMDS.BAT on your hard disk. If so, let me know what it contains and maybe we can figure out what happened. One of the worst things about MS/DOS is the poor support for error checking in BAT files; ERRORLEVELs are not set from most DOS commands. I'm really looking forward to hearing from more people on the net about PCUNIX. Hopefully this system provides some REAL script files, like Unix. --Ken Van Camp ------------------------------ Date: Tue, 11 Feb 86 8:42:54 EST From: Kenneth Van Camp -FSAC- To: info-ibmpc@usc-isib Subject: MVDIR.BAT To those who were wondering what MV.EXE program I was using in my MVDIR.BAT, I would like to clear up the confusion. This was NOT the program written by Harry McGavran (also called MV.EXE); it was written by Chuck Forsberg and was gotten from Volume 068 of the Simtel20 archives -- not from USC-ISIB. I don't know if it was MV.EXE that caused the problems, but probably the easiest solution is to use McGavran's program instead of Forsberg's. (McGavran's automatically renames directories, as well as files.) The only problem is that McGavran won't release the source and USC won't keep anything but source. ------------------------------ Date: Mon, 10 Feb 1986 13:28 MST From: Keith Petersen To: hans@OSLO-VAX.ARPA (Hans A. ]lien) Subject: New Files Available at SIMTEL20 Hello again Keith, Why have so many of the files in PCDOS: been removed lately? Will they be replaced by new versions, are the programs already available in other PD: directories, or whatever? Maybe some of the programs can't be distributed, even for private use? I would especially like to have access to the ARC500*.* file archiver. Thanks for any help! Hans We have created a new directory PD: here at SIMTEL20. It has several subdirectories, one of which has ARC500.EXE and DQC, and the latest versions of LU, SQ and USQ. For a complete list of available files FTP the file PD:MSDOS.CRCLST which will be periodically updated as new files are added. --Keith ------------------------------ Date: Mon, 10 Feb 86 12:15:33 PST From: prandt!reynolds@AMES-NAS.ARPA (Don Reynolds) To: amelia!info-ibmpc@usc-isib.ARPA Subject: Rename Directories, Moving Files, & Disk Optimizing This note is in response to several messages on disk utilities for renaming subdirectories, moving files, and optimizing the hard disk. I have had good luck with the PACKDISK Utilities from SoftPatch P.O. Box 11455 San Francisco, CA 94101 (415) 777-2993 PACKDISK eliminates file fragmentation, unallocated space, reintegrates lost clusters into the available space, packs the root directory and subdirectories and frees subdirectory trailing clusters (but could trash hard-disk installations of some software) DELDIR deletes subdirectory, its files and subdirectories NAMEDIR renames a subdirectory TRANSDIR transfers a subdirectory, its files & subdirectories to another directory LISTFRAG lists fragmented files in the drive PARK parks disk before power off Softpatch's PACKDISK Utilities contains NAMEDIR.COM, which apparently renames directories with no problems. But it is suggested that software "installed" on the hard disk be "uninstalled" before packing (or re-formatting) the disk. After re-formatting, I have heard it suggested to MKDIR the most used subdirectories first, for fastest access. Is that fact or fiction? The message from Coombs in Info-IBMPC Digest, Vol. 5, Issue 19 should raise a caution flag and suggest you backup your hard disk before reorganization. Best, Don ------------------------------ Date: Tue, 11 Feb 86 11:45:45 PST From: walton%Deimos@Hamlet.Caltech.Edu Message-Id: <860211114545.00g@Deimos> Subject: Disk Optimizers To: info-ibmpc@Hamlet.Caltech.Edu There are two conceptually different products on the market for hard disk optimization. One is the "make all current files contiguous" type, which makes access to these files very fast but has the disadvantage of being both temporary and placing all new files at the end of the disk, making many cross-disk seeks necessary to create new files. The other type is, or would be, a disk caching utility--a RAM-resident program which would hold in memory the most recently accessed sectors on the disk and return the copy in memory rather than going to the disk if possible. All computers larger than IBM PC's use disk caching, and some PC-clones do as well. For example, the ITT Xtra-XP (80286-based XT compatible) uses a disk program which gets AT-class performance on average out of an XT-class hard disk (85 msec track-to-track access time). Also, I believe MS-DOS does hold the current FAT in memory. At least one product exists which is supposed to do this disk caching; I saw the ad in PC magazine within the last few months, but can't find it again. The tip-off was the ad said "Uses Expanded Memory if present." PC had a disk caching utility a while back, but it only used a 64K cache (too small for even a 10 MB hard disk) and was optimized for floppy disks. I recommend it to two-floppy owners, but it wasted 64K of memory on my hard disk system. ------------------------------ Date: Mon, 10 Feb 86 14:31:49 PST From: kegel%Romeo@Hamlet.Caltech.Edu Subject: DOS vs. Direct Screen Writes Minshall- DOS writes to the screen are slow for two reasons: 1. stdout is normally in 'cooked' mode, in which DOS makes one call to the device driver for each character output. 2. ANSI.SYS stacks the registers for each char output, and makes one or two BIOS calls per character output, to boot! Both of these can be fixed. 1. Any handle can be set to 'raw' mode with dos function 44h. In raw mode, DOS passes all read and write requests directly to the device driver, cutting the per-character overhead to zero. 2. ANSI.SYS can be rewritten to write directly to screen memory, and to avoid stacking the registers. I'm not sure if anyone else has redone ANSI.SYS, but I took a shot at it, and would be happy to put my sources up. It is radically faster. One test program I wrote- a file viewer- redraws the screen in less than a tenth of a second. I think even the most hardcore advocate of direct machine access would be satisfied with the performance an efficient device driver gives DOS. - Daniel Kegel [Woof Woof Send it to us Daniel! -wab] ------------------------------ Date: Mon, 10 Feb 86 23:46:20 pst From: minshall%ucbopal@BERKELEY.EDU (Greg Minshall) To: kegel%Romeo@hamlet.caltech.edu Subject: DOS vs. direct screen writes Very well. However, in my test case, I was invoking INT 10H myself. So (to my very limited understanding) NO DOS, NO ANSI.SYS. And, I was still unhappy. Again, with this approach, one gets some 50 K bits/second to the screen. But, I want some number of megatbits/second. Or, am I wrong? I would, though, love to see a much faster ANSI.SYS. Greg Minshall ------------------------------ Date: Mon, 10 Feb 1986 22:15 PLT From: George Cross Subject: Terminal and PC at Once? I have two serial ports on a PC and a terminal (VT 100). Is there a DOS multitasking product that will let me connect the terminal to one of the ports, a modem to another, and then dial out from the terminal while still using the main PC console? Perhaps Double DOS - run a background CTTY to COM1, dial out on COM2, etc. ---- George [The COM_PKG2.ASM in supports two serial ports simultaneously. You could use this package to implement this application -wab] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - George R. Cross cross@wsu.CSNET Computer Science Department cross%wsu@csnet-relay.ARPA Washington State University faccross@wsuvm1.BITNET Pullman, WA 99164-1210 (509)-335-6319/6636 Acknowledge-To: George Cross ------------------------------ Date: Mon, 10 Feb 86 22:35:26 cet To: INFO-IBMPC@USC-ISIB.ARPA From: 10409813%WSUVM1.BITNET@WISCVM.WISC.EDU Subject: Alternate Shell Program I am interested in writing an alternate command processor to run under MS-DOS rather than command.com. I welcome any input from those of you who have experience in this area. I am looking to implement a shell similar to those found under UN*X. One initial question I have is whether or not my shell has to be a .COM file? Please send comments directly to me, and I will summarize to the net in a couple weeks when I know what such a project entails. Thank you, Eric Schneider 10409813@wsuvm1.BITNET or eric@wsu.CSNET [Try PC-Toolbox from Wendin. It looks like this is exactly what you are looking for. Perhaps some users of this package can help you out. Of course we have most Unix utilities in our program library. -wab] ------------------------------ Date: Tue, 11 Feb 86 01:40:21 pst From: ttidca!ttihwe!cole@rand-unix.ARPA To: ttidca!randvax!info-ibmpc@isib Subject: Russian (and French) Word Processors Cc: cole@rand-unix.ARPA I asked an associate (a fellow by the name of Potashnik) about word processors for Russian, and he gave me the name of one company who makes one. The company is called Economic Insights, of Rockville, MD, phone (301) 258-5235. Their product uses a Quadvue display board, generates output only for Diablo 630 and Epson LQ-1500 printers, and costs $595. That's all I know about them (I don't speak or write Russian and never heard of the company until now). On a (remotely) related subject, another friend who is a big fan of Microsoft Word is in the process of getting a French version of MW. It is apparently only available in France, however. He talked to Microsoft in Canada and they have a French-Canadian version, but it is said to be significantly different from the French version. I don't know if there are any other versions out there for other languages, although I doubt they have a Russian version. If they did you might have to order it from the USSR and pay for it in rubles, anyway. Randy Cole Citicorp-TTI ------------------------------ Date: Mon, 10-Feb-86 20:44:59 EDT From: David Farber Subject: MS Mouse For those who have MS Bus mice which stop working when the clock is raised, the new bus mouse and its rev D card works fine at 9 mh. Hmmm. WOnder why they fixed it. Also FANSI and MS Word/ PCPAINT just do not agree. Dave ------------------------------ Date: 11 Feb 86 07:34 EST From: Jim Moore Subject: Protecting the Hard Disk Heads on an XT There has been a lot written in PC Mag, PC Tech Journal, and (I think) this space concerning the parking of hard disk heads to protect the disk. I'm no longer sure that's a good idea: I'd been using SHIPDISK.COM, which comes with the Diagnostics Disk, to retract the heads every afternoon after work, because my XT sits on the floor on a stand, a particularly vulnerable position. The last time I ran it, the heads moved back, then went wild. I had to re-partition the disk and reformat. Fun. Now the only thing I do is turn the power off and take my chances.... jim ------------------------------ Date: Tue, 11 Feb 86 11:38 EST From: LBrenkus@MIT-MULTICS.ARPA Subject: Symdeb 4.0 -- Stack trace? The new version of the excellent symbolic debugger SYMDEB (included at no extra charge with the Macro Assembler v 4.0) includes several new options. The most intriguing is a new command K which the "help screen" (? option) identifies as a "stack trace". Unfortunately, the manual says nothing about it. Anyone know what it does? ------------------------------ Date: Tue, 11 Feb 86 11:59:17 pst From: Ron Smith Message-Id: <38:ron@garfield.mun.cdn> Subject: Hotel Front Desk Package Wanted I am searching for a Hotel/motel front desk package that will run on an IBM PCXT or compatable. Tha package will be used by students in the Hospitality Program here at Holland College to familiarize them with software they will find in the industry. If anyone can recommend a package please give me the package name, producer and/or supplier name and address. A brief description would also be appreciated. My mailbox name is . Postal address is Ron Smith Holland College Weymouth Street Charlottetown, P.E.I. Canada, C1A 4Z1 Telephone is (902) 566-9670 Many thanks for any suggestions I may recieve. ------------------------------ Date: Tuesday, 11 February 1986 16:16:49 EST From: Joe.Newcomer@a.sei.cmu.edu Subject: Product Evaluation: Classic 286 As you may be aware from reading earlier postings, I have been interested for some time in upgrading our PC and XT to AT-class performance. I have evaluated several boards, most of which were rejected just based on specs or price. One low-cost board (Titan Technologies) simply didn't perform as advertised (SI 1.8x faster, benchmark 1.2x faster as opposed to a promised "2.5 to 4"). I have finally located a board which solves our problem. It may not be the only such board, but I'm somewhat tired of looking, it works, and I'm using it. The board is the Classic Technology 286 Speed-Pak. The board is a 286 chip and the usual connector into the 8088 slot. Installation was reasonably straightforward in our XT. First, the 8088 is removed. However, unlike most boards, you don't throw the chip away, you plug it into a socket on the chip. With the flip of a switch, you can then change from 80286 operation to 8088 operation. The device is not strictly AT compatible. For example, its memory extension above 1Mb is their own proprietary scheme, which they are not releasing specs of. It is clearly not compatible with VDISK extended memory. The board itself contains 1Mb of memory, but the upper banks of RAM are used to hold a copy of the ROM BIOS so that the BIOS runs with a 16 bit memory path. Extended memory (Intel/Lotus spec) is supposed to work with this board, although with only an 8-bit path. They have a 2.5MB upgrade, but it only runs with their multitasking software, and they are not currently supporting ramdisks with their memory upgrade. Their ramdisk software didn't install in anything approximating the documented way (in fact, I couldn't get it to install at all) and apparently you can only add ramdisks with their software where you would have had floppies (so, for example, you have to configure the XT motherboard to say there is a B: drive to get a B: ramdisk!). When I called them up to ask about this, they said "oh, yeah, there's a bug" and sent me new software which I haven't tried. There was also a bug in their installation instructions. They supply a little 40pin DIP header with three capacitors, which is to be inserted in the 8087 slot if the 8087 is not used (the board has a provision for an 80287 also). The instructions say "insert the dip header with the notch towards the back of the computer". Fine, except the header is totally symmetric. Not even a pin 1 marking. Fortunately, I knew that the three capacitors which were connected to a corner pin must obviously be to ground, so plugged it in so that pin 20 (ground) was where the common line to the three capacitors went. Not everyone would have known this. The board also doesn't have a built-in clock/calendar. Fortunately, we have one on our multifuction XT memory board (which now serves only as a serial port and clock). The goal was not AT compatibility, but XT compatibility with AT speed. Since this was of more interest to me than AT compatibility, I feel no loss. The Norton SI command says the performance is 7.0 times a PC, and our benchmark (I/O and compute intensive) ran in 25 minutes instead of 82 minutes. The difference is obviously the disk I/O limitation (80 ms seek), since it runs in 18 minutes on my AT with the faster drive (30ms seek), but only 5.0 on the SI yardstick. I have had no failures running any program we normally use. We also successfully ran FASTBACK in the 80286 mode to restore files to a new 32Mb disk we installed, so serious BIOS and device hacking still works. There have been no disk problems or other problems of timing. Performance of screen editors such as Epsilon is impressive, since it runs more towards the 7.0 factor. Unfortunately our best measure was big file searches, which are also disk intensive; they seem to run 3-4 times faster. One nice feature of the 8088 "downgrade" switch is that we could switch processors and run the same tests again to see what the performance is like. A little experimentation showed that switching processors makes the machine go catatonic; they should be switched only when the power is off. My housemate, who was envious of the performance of my AT, is now extremely pleased. We even bought some little "custom hot rod" flames to put on the machine to show it is a "hot" job. I am sufficiently happy with this product that we have ordered a second one for our PC. The original price was about $1200, but rumor has it that they have dropped the price by $150 in the last week or so. Because we have ordered the second one within 30 days of the evaluation copy the first one also comes in at the lower price, whose exact value I will know when the second one arrives in a week or two. Adding two AT-performance for $2000 is not a bad investment at all. I hope someday they produce real ramdisk software that allows the creation of D:, E:, etc. drives in extended 16-bit memory. This will substantially improve the performance (for example, I use ramdisk on my AT for Epsilon swap space). Being able to put the dBASEIII .dbf and .ndx file for our major application into ramdisk for the report generation would also be a big win. The company didn't seem much interested in this aspect, nor with releasing the specs to customers, which was a bit of a turn off, but I'm hoping they will finally wise up and either provide useful software or provide the necessary specs. If anyone knows of a cheap Intel/Lotus compatible board or source for something of that form, I'm interested. ------------------------------ End of Info-IBMPC Digest ************************ ------- Received: from USC-ISIB.ARPA by wiscvm.wisc.edu on 02/12/86 at 20:25:03 CST Date: 12 Feb 1986 17:12:49 PST Subject: Info-IBMPC Digest V4 #21 From: Info-IBMPC Digest To: Info-IBMPC_Distribution_List: ; Reply-To: INFO-IBMPC@USC-ISIB.ARPA Info-IBMPC Digest Wednesday, 12 February 1986 Volume 5 : Issue 21 This Week's Editor: Billy Brackenridge Today's Topics: Review of "Schmeme" Lisp AT&T PC 6300 Expansion Now How About Specs for 1-2-3 Device Drivers? SHELL, Modula2 Software Development System Fansi Console and Shell from Dr. Dobbs Turbo Board Comparison? monochrome monitor query Removing non-DOS Partitions from AT Disk LINK Option /E vs EXEPACK PC-DOS 3.1 and "echo off" CGA: 2 More Palettes in Medium Res Re: File truncation under PC-DOS Co-Processor Board Inquiry WordPerfect and the LaserJet CHMOD Woes ---------------------------------------------------------------------- Date: Tue 11 Feb 86 22:38:38-CST From: Rob Pettengill Subject: Review of "Schmeme" Lisp I recently purchased an implementation of the Scheme dialect of lisp for my PC. I am familiar with GC Lisp, IQ Lisp, and Mu Lisp for the PC. I use Lambdas and 3600s with ZetaLisp at work. TI PC Scheme is a very complete implementation of scheme for the IBM and TI personal computers and compatibles. It combines high speed code execution, a good debugging and editing environment, and very low cost. The Language: * Adheres faithfully to the Scheme standard. * Has true lexical scoping. * Prodedures and environments are first class data objects. * Is properly tail recursive - there is no penalty compared to iteration. * Includes window and graphics extensions. The Environment: * An incremental optimizing compiler (not native 8086 code) * Top level read-compile-print loop. * Interactive debugger allows run time error recovery. * A minimal Emacs-like full screen editor with a scheme mode featuring parethesis matching and auto indenting of lisp code. * An execute DOS command or "push" to DOS capability - this is only practical with a hard disk because of the swap file PCS writes. * A DOS based Fast Load file format object file conversion utility. * A fast 2 stage garbage collector. First Impressions: Scheme seems to be much better sized to a PC class machine than the other standard dialects of lisp because of its simplicity. The TI implementation appears to be very solid and complete. The compiled code that it produces (with debugging switches off) is 2 to 5 times faster than the other PC lisps that I have used. With the full screen editor loaded (there is also a structure editor) there seems to be plenty of room for my code in a 640k PC. TI recommends 320k or 512k with the editor loaded. The documentation is of professional quality (about 390 pages), but not tutorial. Abelson and Sussman~2's "Structure and Interpretation of Computer Programs" is a very good companion for learning scheme as well as the art and science of programming in general. My favorite quick benchmark - (define (test n) (do ((i 0 (1+ i)) (r () (cons i r))) ((>= i n) r))) runs (test 10000) in less than 10 seconds with the editor loaded - of course it takes a couple of minutes to print out the ten thousand element list that results. The main lack I find is that the source code for the system is not included - one gets used to that in good lisp environments. I have hit only a couple of minor glitches, that are probably pilot error, so far. Since the system is compiled with debugging switches off it is hard to get much useful information about the system from the dubugger. Based on my brief, but very positive experience with TI PC scheme and its very low price of $95 - I recommend it to anyone interested in a PC based lisp. You can order from Texas Instruments at 1-800-TI-PARTS. (Standard disclaimers about personal opinions and having no commercial interest in the product ...) Rob Pettengill ------------------------------ Date: Wed, 12 Feb 86 05:56:59 cet From: 10409813%WSUVM1.BITNET@WISCVM.WISC.EDU Subject: AT&T PC 6300 Expansion I have an AT&T PC 6300 and would be interested to hear from other owners concerning expansion. I am looking into an expanded memory board, and I believe AT&T makes one which would take advantage of the 16-bit data bus. Does anyone have any experience with this product? I would also like to find out about other boards for the AT&T which take advantage of the 8086's 16-bits. (Graphics, ports, etc.) On an unrelated note, does anyone have a screen dump routine for the TOSHIBA P1340? I have FRIEZE (comes w/PC PAINTBRUSH) and it seems to support as many printers as any, and it does not support the P1340. I have written (not entirely successfully) my own driver, but would most insterested in seeing what others have done. Ultimately, I would like to be able to dump AT&T 640x400 monochrome, but would settle for a routine which expects a CGA. Thanks, Eric Schneider 10409813@wsuvm1.BITNET or eric@wsu.CSNET ------------------------------ Date: Wed, 12 Feb 86 05:17 ??? From: LBAFRIN%clemson.csnet@CSNET-RELAY.ARPA Subject: Now How About Specs for 1-2-3 Device Drivers? Plaudits to the kind soul who contributed the 1-2-3 worksheet file format specification to the Info-IBMPC archives. Would it also be possible to obtain for the archives a copy of whatever specs Lotus may have for writing 1-2-3 device drivers? Just wondering... -- Larry Afrin Dept. of Computer Science Clemson University ================================ Please send replies, if any, to: lbafrin@clemson.csnet or lbafrin%eureka@clemson.csnet or, as a last resort, any reasonable-looking string with "lbafrin", "eureka", and "clemson" in it (And I'm told that Usenet fans can try ihnp4!seismo!clemson.CSNET!lbafrin) I disclaim everything anybody ever said about anything. ------------------------------ Date: Feb 10 1986 From: Hermann Willers Subject: SHELL, Modula2 Software Development System 1. Did anyone try successfully to put COMMAND.COM into an other directory than the root ? I tried, but the SHELL command in CONFIG.SYS did'nt work. "missing or defective command interpreter" (or so) was the message. My system is an Olivetti M24, MSDOS 2.11, version to support 720 K drives (M24 = AT&T 6300). Does it under these conditions always fail or did I miss something too obvious ? 2. Does anyone know, if the M2SDS has nice features like INLINE (as Turbo-P.), interruptcalls, the capability of executing as an interrupt service routine, include files (optional), including EXTERNAL code, absolute variables, short: the things one wouldn't want to miss in T.P. Please reply directly to me, since I see only someone else's copy of INFO-IBMPC and this is VERY irregular. Thanks in advance for your time and effort ! Hermann Willers G95@DHDURZ2.BITNET Heidelberg, FRG ------------------------------ Date: Wed, 12 Feb 86 13:30 EST From: Hess@MIT-MULTICS.ARPA Subject: Fansi Console and Shell from Dr. Dobbs To: info-ibmpc@USC-ISIB.ARPA Message-ID: <860212183030.376476@MIT-MULTICS.ARPA> For the person who wanted a faster ANSI driver, there is FANSI-CONSOLE, which is shareware of some sort. Not freeware, but not expensive either. Try Hersey Micro Consulting (or "no Smoking Software"?) in Ann Arbor, MI. For the person who wanted to create a shell to replace COMMAND.COM, try looking at last month's and this month's Doctor Dobbs Journal. They claim to have a disk available, with source code (MS-C) and executable shell. Try DDJ in Palo Alto, CA. Brian ------------------------------ Date: Wed, 12 Feb 86 13:32 EST From: Hess@MIT-MULTICS.ARPA Subject: Turbo Board Comparison? Can someone with a Victor plug-into-socket board estimate the speed-up via Norton tests? I recall that the most recent message about it described mostly installation stuff. Joe Newcomer's note about his turbo card and an advertisement from Victor sparked my interest. Brian ------------------------------ Date: 12 Feb 1986 12:09:49 PST Subject: monochrome monitor query From: Laurence I. Press Does anyone know a source for schematics and parts for the IBM monochrome monitor? Thanks, Larry Press ------------------------------ Date: Wed, 12-FEB-1986 12:31 PST From: Mike Iglesias Subject: Removing non-DOS Partitions from AT Disk We have an AT w/20mb hard disk. We had a copy of PC/IX on loan about a year ago, and we tried to install it, but for some reason that I can't remember right now, it didn't work. We don't have PC/IX anymore, and we want to get rid of the PC/IX partition on the hard disk so we can have a 20mb DOS partition again. I've tried using FDISK to remove the PC/IX partition with no success. Is there a way to get rid of the PC/IX partition without having PC/IX? Thanks, Mike Iglesias University of California, Irvine ------------------------------ Date: Wed, 12 Feb 86 04:14:42 PST From: Ya'akov_Miles%UBC.MAILNET@MIT-MULTICS.ARPA Subject: LINK Option /E vs EXEPACK By comparing the sizes of the (packed) files generated from LINK ver 3.02 and the /E option with the size of the .EXE file manually packed with the (scarce and infrequently distributed) utility EXEPACK, I have come to the conclusion that LINK ver 3.02 option /E generates EXACTLY the same size file as manually running EXEPACK on a regular .EXE file output by LINK... Since LINK is easy to get, whereas EXEPACK is only distributed with an (expensive) subset of Microsoft packages, I heartily recommend using LINK and /E. Also, the LINK with /E does not involve the hassle of intermediate files, and appears to bind at the same rate as LINK without /E. There is only one slight problem with packed files, namely SYMDEBUG does not know how to use them. In reality this is no problem, you link without /E while developing and then release the final product packed. Also, in higher level languages (such as Quick-Basic), who cares about the Symbolic Debugger, anyway... While on the topic of Quick-Basic, when is Microsoft going to improve their manual so as to mention that you have to link to GWCOM.OBJ to get the serial I/O ports to work, and what the file SMALLERR.OBJ is good for? It would also be nice if the /V and /W switches to BASCOM worked as the manual said they did. (/V works like /W is supposed to, /W produces junk) Also, a BREAK or a FRAMING ERROR to the serial I/O port crashes Quick-Basic ------------------------------ From: 2212msr%whuts.UUCP@BRL Subject: PC-DOS 3.1 and "echo off" Date: Tue, 4-Feb-86 10:15:45 PST nather@astro.utexas.edu writes: "For several reasons (none very good) I'd like to use PC-DOS 3.1, but not at the expense of bat-chatter. If anyone knows how to patch the 3.x command.com so it runs .bat files silently, please send it to me, or post it to the net. The patch for 2.x I am using does not work on 3.x (*sigh*). I have a kludge that erases the "echo off" which is echoed when the batch command "echo off" is executed, but it is irritating after getting used to the real thing." This patch changes echo default to echo off (DOS 3.1 only!). debug command.com -e 1967 xxxx:1967 01.00 -w writing xxxx bytes -q Max S. Robin AT&T Bell Laboratories Rm. 3E-318A Whippany, NJ 07981 201-386-6865 email:whuxg!2212msr ------------------------------ From: farren%well.UUCP@brl Subject: CGA: 2 More Palettes in Medium Res Date: Sun, 9-Feb-86 10:44:51 PST jan@looking.UUCP (Jan Gray) writes: "From the documentation I've seen, there are only two medium res colour palettes, one with black, red, green, yellow, and the other black, magenta, cyan, white. However, Turbo Pascal can set another two palettes with "high intensity" colours. How is this done? The BIOS Video Set Palette call doesn't seem to be able to set palette 2 or 3. Is there a BIOS call to do this? Is there a (much less portable) IO address to poke?" You can get the high-intensity palette by setting the background color to a high-intensity color (Probably black, that's usually the most common choice). To do this, you use the normal BIOS call, INT 10H, with AH set to 0BH, BH set to zero, and BL set to 8 (high intensity black). Likewise, if BL is set to zero, you will get the low-intensity pallette. Mike Farren uucp: {your favorite backbone site}!hplabs!well!farren Fido: Sci-Fido, Fidonode 125/84, (415)655-0667 ------------------------------ From: rde@ukc.ac.uk Subject: Re: File truncation under PC-DOS Date: Tue, 4-Feb-86 01:08:02 PST bright@dataio.UUCP writes: "Anyone out there know a way to truncate a file to 'n' bytes in length without going in and directly manipulating the FAT? I need a method that is well-behaved." Use function 42H (seek) to move the file pointer to the place you want the file truncated. Then use function 40H (write) with a count of zero (CX=0). This comes from the MS-DOS Programmer's Manual so it ought (!) to be well behaved. Hope this helps. Bob Eager rde@ukc.UUCP rde@ukc ...!mcvax!ukc!rde Phone: +44 227 66822 ext 7589 ------------------------------ Date: Wednesday, 12 Feb 1986 13:15:20-PST From: watson%akov04.DEC@decwrl.DEC.COM Subject: Co-Processor Board Inquiry I would like to find out what a co-processor is and how it works. I have requested information from suppliers that advertize such products in the trade magazines but all I get is hype on their products. I would like to know does the co-processor and system processor compute concurrently? How do the processors communicate, do (all, most, some, none) of the popular software work on the co-processor? How does the user control the 2 processors? Are there (one, two, several, many) different types of co-processors? Which one is best? etc, etc, etc. If you are privy to this information, I would very much appreciate hearing from you. I will try to summarize the responses for other curious and/or confused souls out there with the same interests. Thank in advance. Rick Watson ------------------------------ Date: 12 Feb 1986 16:24:43 PST Subject: Co-Processor Board Inquiry From: Billy To: watson%akov04.DEC@DECWRL.DEC.COM A co-processor as defined by Intel is a chip nearly pin for pin identical to the processor chip. In the case of the PC/XT the main processor chip is an Intel 8088 and the floating point co-processor chip is an Intel 8087. When the main processor issues a special instruction the co-processor is informed that the next few following bytes are instructions for the co-processor to perform. Currently there are two co-processor chips made by Intel. The 8087 does fast floating point arithmetic, the other is a special chip that aids in implementation of stand alone word processors. Intelwill soon announce a third co-processor chip that will speed up graphics for PC applications. There are also co-processor boards available for the PC. I suspect this is what you were asking about and relabeled your query accordingly. Some co-processor boards use the Intel family chips to run DOS faster than a PC or AT. Others contain 68000s or National 320XX chips and run various flavors of Unix. The subject is indeed confusing as no standard has emerged in this area. ------------------------------ Date: Wed, 12 Feb 86 16:27 CST From: XASSHOR%UCHIMVS1.BITNET@WISCVM.WISC.EDU Subject: WordPerfect and the LaserJet The reason WordPerfect will sometimes not print boldface on the LaserJet even though there is a bold font available is this: WordPerfect assumes that there is one printer command string for turning on boldface. On the LaserJet there is both a primary font and a secondary font available, and the command strings for working with them are slightly different. By default, WordPerfect sends the string for boldfacing the primary font. The fixes are obvious. -- Melinda Shore University of Chicago Computation Center ...!ihnp4!gargoyle!sphinx!shor XASSHOR@UChicago.Bitnet ------------------------------ Date: Wed, 12 Feb 1986 19:56 EST From: LENOIL@XX.LCS.MIT.EDU To: Craig Milo Rogers Subject: CHMOD CHMOD (PC-DOS interrupt function 43H) negligently trashes register AX on a non-error return from subfunction 00H (Get File) Not negligent at all. The DOS technical manual explicitly states (somewhere) that AX is never preserved by an INT 21. ------------------------------ End of Info-IBMPC Digest ************************ ------- ========================================================================= Received: from USC-ISIB.ARPA by wiscvm.wisc.edu on 02/14/86 at 21:38:40 CST Date: 14 Feb 1986 18:57:47 PST Subject: Info-IBMPC-Digest V5 #22 From: Info-IBMPC Digest To: Info-IBMPC_Distribution_List: ; Reply-To: INFO-IBMPC@USC-ISIB.ARPA Info-IBMPC Digest Friday, 14 February 1986 Volume 5 : Issue 22 This Week's Editor: Billy Brackenridge Today's Topics: Hard Disk Interleaves Xenix 1.0 + Hercules + Princeton + vi = headache Memory Board Query UNIX|STAT Announcement MIDI Interfaces Xenix on 30Mb Rodine Disk fopen() under XENIX/DOS on PC-AT Request Info on Micro-PROLOG 1.2 MB Drive on PC/XT Link/E Option IBM System/36PC New ANSI Driver WordStar 2000 Inquiry SAVVY PC 5 Mb Cartridge Drives Info-IBMPC Submission Quick Basic Woes System Buffer Pool Writer's Workbench for PC-DOS Query Expanding Old PC Motherboards Where is ARC50.COM? ---------------------------------------------------------------------- Date: Wed, 12 Feb 86 16:21 PST From: GEORGEBURKITT.ES@Xerox.COM Subject: Hard Disk Interleaves The interleave function exists because some controllers cannot buffer adjacent sector READs in real time. They read one sector, then transfer the data out; while the data is being transferred, the disk is still spinning past the adjacent sector. By the time the controller is ready to handle a second sector, the head is ready to read a sector some ways around the track. The controller knows this, so it originally placed the "second" sector the same distance around the track. The interleave factor is the number of sectors which the controller skips between "acjacent" sectors. It also is the number of revolutions the disk must make to read an entire track. Since it is a FORMAT function, it must be done at the initial formatting....usually by the dealer before delivery. There are a number of non-IBM reformat programs around, but I don't know them by name. [Does anybody have any specific programs that will format a disk with higher interleave factor? -wab] ------------------------------ Date: Wed, 12 Feb 86 19:20:08 pst From: David Robinson Subject: Xenix 1.0 + Hercules + Princeton + vi = headache I have just installed Xenix 1.0 on an IBM PC/AT that has a Hercules color card with a Princeton monitor. When I use vi, everytime I insert a character, delete a character, or delete a line the screen flashes. This is literally giving me a headache. Is there an easy fix to this or do I need to hack up the /etc/termcap entry? Any suggestions/fixes are more than welcome! ------------------------------ Date: 12 February 86 22:14-PST From: from: DEP%SLACVM.BITNET@WISCVM.WISC.EDU Subject: Memory Board Query Date: 12 February 1986, 22:13:21 PST Anyone out there have strong opinions about reliable and economical memory boards for the IBM PC (non AT)? We have been using mostly AST boards here, but I'm curious to know what other people recommend? *-------------------------------------------------------------------* * Don Pelton, Stanford Linear Accelerator Center, Stanford, Calif. * * Bitnet: DEP@SLACVM Arpa: DEP%SLACVM.BITNET@wiscvm.ARPA * * Usenet: ihnp4!ptsfa!well!dep * * 415-856-8032 (home) 415-854-3300 ext. 2901 (work) * *-------------------------------------------------------------------* [I like Tall Tree -wab] ------------------------------ Date: Wed, 12 Feb 86 10:04:28 est From: "Bennett E. Todd III" Subject: UNIX|STAT Announcement What follows is an announcement of a new version (5.2) of my UNIX|STAT package of data manipulation and analysis programs for UNIX and MSDOS. The UNIX version is finished, and the MSDOS version will be ready as soon as we get around to compiling them, certainly by March 1, 1986. UNIX|STAT continues to be distributed on tape for $20 and floppies for $15, and you can make free copies for non-profit use. If you do data analysis on UNIX or MSDOS, its worth reading on. For People Who Are Familiar With UNIX|STAT: So what's new from the old version? To me the main changes are: a. contab (new program) for contingency tables and chi-square b. probdist (new and replacement program) for random number generation, and probability to/from statistic conversion for uniform, normal, chi-square, t, and F distributions. c. on-line help built into most programs: -L print program limits -O print program options -V print program version number d. ranksort (new program) to rank order data within columns e. on-line manual entries will be available on MSDOS, so: g. I am no longer distributing free printed documentation. f. there is brand new documentation (a big handbook) for 5.2 There are several new features added to old programs, to take up slack for programs I am no longer distributing (io, vincent, trans, dataplot). I hope to rid myself of this compulsion to write new UNIX|STAT programs, so I intend to avoid adding to the package for at least six months. This should be the best version around for a while. The long description follows, and it includes ordering information. Due to the number of calls I have received, and had to return, I will no longer be returning calls about the package. If you must call, leave your name and address and I'll send you a paper copy of exactly what follows. And don't forget, send me your addresses in the form they will appear on a mailing label, or I will let your request gather dust for weeks rather than try to decipher letter-head. Foreign requesters: please tell me what country you are writing from; I am still wondering where Flatzen-Hozen is. UNIX|STAT 5.2 DATA MANIPULATION & ANALYSIS PROGRAMS FOR UNIX and MSDOS UNIX|STAT is a set of over 20 data manipulation and analysis programs developed at the University of California, San Diego and at the Wang Institute of Graduate Studies by Gary Perlman. The programs are designed with the UNIX philosophy that individual programs should be designed as tools that do one task well and produce output suitable for input via pipes to other programs. Interactive use is supported in the command line interpreter which also provides a programming language for complex analyses. Typical usage involves a pipeline of transformations of data followed by input to an analysis program, summarized schematically by: INPUT DATA | TRANSFORM | ANALYSIS | OUTPUT RESULTS Functionality often built into statistical packages (e.g., graphics and sorting) is not re-invented in UNIX|STAT which delegates such responsibility to standard tools. DATA MANIPULATION PROGRAMS: abut join data files colex column extraction dm column oriented data manipulator maketrix create matrix type file from free-form file perm randomly permute lines in a file probdist probability distribution functions ranksort rank order columns repeat repeat a pattern or file reverse reverse lines, columns, and characters series print a series of numbers transpose transpose matrix type file validata verify data file consistency DATA ANALYSIS PROGRAMS: anova multi-factor analysis of variance calc interactive algebraic modeling calculator contab contingency tables and chi-square desc descriptions histograms, frequency tables dprime signal detection d' and beta calculations oneway one-way anova and t-test and error-bar plots pair paired data statistics, regression, plots regress multivariate linear regression stats report summary statistics ts time series analysis and plots FEATURES: easy to use (negligible training period) simple input formats (free format field oriented) used in pipelines with other UNIX or MSDOS utilities (sort, print) flexible data manipulation data validation (range and type checking) full documentation (manual entries, tutorials) extensible (many modular C functions) efficient (less than a few seconds per analysis) small enough for micros runs on any UNIX System (V6, V7, 2.8BSD, 4BSD, System V, etc.) runs on MSDOS 2.0 and 3.0 with 96K (IBM PC, Wang PC, AT&T PC, etc.) liberal copyright (can't be distributed for gain) in use at more than 400 UNIX sites for six years CHANGES FOR RELEASE 5.0 (March 1985): reworked to increase portability, reliability, usability most commands now use a standard option parser (getopt) all calculations now done in double precision improved error messages regress now does a partial correlation analysis colex and trans added as alternative to dm better approximations to F-ratios efficiency of I/O improved most programs ported to MSDOS improved random number seeding on UNIX standard exit status (0) on successful runs version control added CHANGES FOR RELEASE 5.1 (November 1985): several minor bugs removed the full package was ported to MSDOS CHANGES FOR RELEASE 5.2 (January 1986): 5 probability distributions with random number generation crosstabs and chi-square program on-line help in most programs plotting options added to paired data program anova program more robust error bar plots, unweighted means solution in oneway program better support for residual plotting in regress UNIX|STAT Handbook and new manual entries on-line manuals on MSDOS AVAILABILITY AND ORDERING INFORMATION: The programs are distributed under a liberal copyright. The software (program code, executable code, and on-line documentation) can be distributed freely, provided there is no material gain. All rights are reserved on the printed documentation. All prices include delivery and should be prepaid US funds to G. Perlman. UNIX Version of UNIX|STAT: Price: $20 Contents: Program (C language) & Manual (troff) Source Files Format: 600 foot half inch 9 track mag tape, 1600 bpi tar format MSDOS Version of UNIX|STAT: Price: $15 Contents: Preformatted Manuals and Executables Format: 2S/2D MSDOS 5.25 inch floppy diskettes Handbook: Price: $10 Contents: Examples, Conventions, Reference Materials, CALC & DM Manuals Format: Printed Manual (~70 pages) Printed Manual Entries: Price: $5 Contents: Typeset Versions of Manual Entries, Reference Sheets Format: Printed Manual (~30 pages) CONTACT: Gary Perlman Wang Institute of Graduate Studies Tyng Road Tyngsboro, MA 01879 USA (617) 649-9731 UUCP: decvax!wanginst!perlman CSNET: perlman@wanginst NOTES: UNIX|STAT is unsupported, though known bugs have been removed. UNIX|STAT may not be distributed for profit. UNIX is a trademark of AT&T Bell Laboratories. UNIX|STAT is NOT a product of any company or organization. -- Gary Perlman Wang Institute Tyngsboro, MA 01879 (617) 649-9731 UUCP: decvax!wanginst!perlman CSNET: perlman@wanginst -------------------------------------------------------------- -Bennett Bennett Todd -- Duke Computation Center, Durham, NC 27706-7756; (919) 684-3695 UUCP: ...{decvax,seismo,philabs,ihnp4,akgua}!mcnc!ecsvax!duccpc!bet ------------------------------ Date: 12 Feb 86 23:41:34 EST From: John Duimovich Subject: MIDI Interfaces We have people here doing a music/computer interfacing project using an IBM-PC equipped with the Roland MPU-401 and corresponding interface board. Does anyone out there have any information on : 1) Available MIDI software / documentation for the IBM-PC 2) Documentation for Oberheim System Exclusive Messages, and associated protocol. This is really important ! 3) Is there a MIDI BBoard/Mail Groups on the Net (or anywhere else !) ? 4) Documentation on the Roland MPU-401. Anyone out there used it ? Problems ? As this is a specialized topic please reply directly to me and I'll summarize to the net. Thanks in advance John Duimovich John_Duimovich@Carleton.BITNET PP147363@Carleton.BITNET if your mailer can't handle > 8 character names. ------------------------------ Date: 13 Feb 1986 09:56-EST Subject: Xenix on 30Mb Rodine Disk From: MHARRIS@A.BBN.COM I have been trying to install Xenix on an AT with 30Mb Rodine disk without success. I tried Robin Cutshaw's patches; they caused my installation floppy to trash itself. Mr. Cutshaw very kindly sent me the patched code on floppy; it doesn't work. I'm told there are "official" IBM patches now; does anyone know if this is so, and how to get them (local dealers feign ignorance)? Any help would be appreciated (my project is constrained to IBM issued Xenix, so SCO is not a possibility). Thanks. -- Michael Harris BBN Labs 617-497-3794 ------------------------------ Date: Thu, 13 Feb 86 09:25:20 est From: Kevin Sullivan Subject: fopen() under XENIX/DOS on PC-AT I developed a program under XENIX and used the -dos option on the compiler to produce a file executable under DOS. The fopen() call returns an absurd value, however, when the memory model is specified to be Large. The program runs under XENIX and under DOS unless memory model LArge. 1) has anyone seen this problem, do you know a fix? 2) does anyone know how to get IBM to respond to this kind of problem? Please mail directly to me as I am not on the PC list. Thanks much. Kevin Sullivan Tufts University kjs%tufts@CSNET-RELAY ------------------------------ Date: Thu, 13 Feb 86 12:10 EST From: Deba Patnaik Subject: Request Info on Micro-PROLOG How much does it cost ? Who distributes the software ? Are there any other PROLOG interpreters or compilers ? ------------------------------ Date: 13 Feb 86 10:13:41 PST (Thursday) Subject: 1.2 MB Drive on PC/XT From: Kadifa.osbunorth@Xerox.COM I am interested in the possibility of using a 1.2 MB high-density floppy drive as an additional drive on an XT. Naturally, the XT BIOS doesn't support the high-density drive, but I would like to know if there exist any MS-DOS drivers for the 1.2 MB drive. Abdo. [Tall Tree in Palo Alto makes hardware & software to support 1.2MB drives -wab] ------------------------------ Date: Thu, 13 Feb 86 14:36:52 CST From: CHENJCL%UMCVMB.BITNET@WISCVM.WISC.EDU To: INFO-IBMPC@USC-ISIB.ARPA Subject: Link/E Option Microsoft's newest version of the macro assembler documents the /e (Execpack option). Masm ver 4 (i think) around page 55. More trivia. Up to and including pc-dos version 3.0 allowed basic to rename directories (using NAME "?old" AS "?new"). Pc-dos version 3.1 flags this 'error'. Oh well. john lewis ------------------------------ Date: Thursday, 13 Feb 1986 14:26:57-PST From: waters%viking.DEC@decwrl.DEC.COM Subject: IBM System/36PC I just opened up a copy of Datamation and saw an advertisement from IBM for a "System/36PC". What is this???? There is a picture of an IBM PC with two floppy drives, monochrome monitor, and keyboard. Next to the PC is a vertical mount chassis system which has a single half-height drive and looks like a PC/AT. The price? -- $5995! This includes "a 256K, 40MB System/36 Processor". The ad says that it is available from participating Authorized IBM PC dealers, Value Added Dealers, and IBM Product Centers. When was this announced? Did it just get lost in the RT/PC announcement? Lester Waters WATERS%VIKING.DEC@DECWRL.COM (ARPA) ...!decvax!dec-rhea!dec-viking!waters (UUCP) ------------------------------ Date: Thu, 13 Feb 86 18:27:23 PST From: kegel%Juliet.Caltech.Edu@Hamlet.Caltech.Edu Subject: New ANSI Driver Hi, folks. Here's my console driver: NANSI.CAT Nansi.sys is a console driver which understands ANSI control nansi.doc sequences. It has several advantages over ANSI.SYS (the driver setraw.cat supplied with DOS): 1. It supports new escape sequences (see nansi.doc). 2. It provides MUCH faster output under certain conditions. 3. It supports the 43-line mode of the EGA. 4. The darned bell is now 1/4 second instead of 1/2 second. See the file setraw.doc for Macro Assembler, Lattice C, and Microsoft C routines for entering and leaving raw mode. 2/14/86 So let me know what y'all think. - Daniel Kegel [These files have been added to our program library. It would be very nice if someone could combine this with the work done for terminal emulation ------------------------------ Date: 14 Feb 86 03:47 GMT From: ghicks @ KOREA-EMH Subject: WordStar 2000 Inquiry Having just purchased an EPSON FX-80 printer, I wanted to try and get our office copy of WordStar 2000 to work with it... I installed the printer as directed, but couldn't find a way to get the right printer selected. The one that came closest wasthe MX-80... But I can't do proportional spacing from WordStar.. Any ideas on how to 'patch' (or change the PRINTERS.DB file) to allow WS2000 to understand this printer?? Thanks Greg Hicks ------------------------------ Date: Thu, 13 Feb 86 22:23 CST From: Greenwald@HI-MULTICS.ARPA Subject: SAVVY PC Does anyone have any experience with SAVVY PC. (put out by Savvy Corp. in Albuquerque, N.M.). It is advertised as a Database Manager, Extensible Programming Language, and pattern recognition driven Retriever. In addition, it is a virtual system - permitting you to run programs whose size is limited only by disk space, allows for 10,000 concurrently open files, has embedded telecommunications, .... And all of this for $49 !!! ------------------------------ Date: 14 Feb 1986 02:20:34 EST From: BALLGOOD@USC-ISI.ARPA Subject: 5 Mb Cartridge Drives Does anyone know if on a system (GRid) using MS-DOS with a 10MB hard disk composed of 2 5MB cartridges, a contiguous file greater than 5 MB (say 6.5MB) be built by a data base program? Specifically, R-Base 5000, Dbase III or Oracle. Anyone willing to share any experience with the GRiD and large database systems , please let me know,]]Thanks Bob Allgood ------------------------------ Date: Friday, 14 Feb 1986 07:09:19-PST From: watson%akov04.DEC@decwrl.DEC.COM Subject: Info-IBMPC Submission I have just replaced the 8088-2 CPU in my PC Designs FD-1000 with a V20 chip and would like to report the differences noted. My configuration is: PC Designs FD-1000 system (8 Mhz clock) 512 K 150 ns system ram 2 M AST Rampage board (128 K used to bring system memory to 640 K) (remainder used as ram disk) The following are comparison timings done before and after the installation of the V20 chip: Norton SI index 1.7 2.9 BENCHA (Interrupt Response) 1.21 1.04 BENCHB (Interrupt Kernel benchmark) 4.39 4.18 BENCHE (String Search benchmark) 6.32 4.83 BENCHF (Bit Manipulation Instructions) 6.70 6.26 BENCHH (Linked List Insertion) 4.40 4.18 BENCHI (Quicksort) 7.14 5.99 BENCHK (Bit Matrix Transpose benchmark) 18.23 16.03 IEEE Micro (2/81) Digital Filter Benchmark 13.68 8.24 Compilation of 8454 line Turbo Pascal Program 159.00 156.00 DeARC 19 'Crunched' Pascal Sources Files (ARC V5.2) 226.63 220.41 ARC the same 19 files (Crunched) 112.37 109.03 * All benchmarks were run from and used files exclusively from ram disk. The numbers represent time in seconds except the Norton SI which is a relative index. The BENCH? and Filter Benchmark were obtained from a BBS and are designed to highlight the V20 performance. The V20 has some additional instructions to aid in bit manipulations. The table above indicates the timings with the V20 running 8088 object code. BENCHF and BENCHK also report timings using the enhanced instructions which are: BENCHF 3.85 BENCHK 10.93 These times are much improved over the 8088 however, the object code is not compatible with the 8088. All in all I can't notice any difference while doing normal operations on the system. (normal operations include program development using C, Turbo Pascal, and MASM). So far, I haven't found any program that was 'broken' by the V20. If I do, I will go back to running the 8088 and chalk up the $25 spent on the V20 to experience. Rick Watson ------------------------------ Date: Fri 14 Feb 86 08:53:06-PST From: Bob Knight Subject: Quick Basic Woes On the subject of Quick Basic, I had a private conversation which I enclose in this message. If there's anyone else who's run into problems, please send documentation to me. Date: Thu 13 Feb 86 14:21:01-PST From: Bob Knight Subject: Quick Basic. To: Ya'akov_Miles%UBC.MAILNET@MIT-MULTICS.ARPA Hi - In the latest INFO-IBMPC digest, you spoke of problems you've encountered with Quick-Basic. I'm writing an application in it, unfortunately, and have run into problems with PC hangs that I feel were the fault of Quick-Basic, and directly related to comm ports, since I'm working over a radio link. Your message was truncated, but the last line said something regarding this. In addition, I've had random lossage (and I MEAN random) regarding string space corrupts, out of memory errors and the like. Considering the time constraints I'm under on this project, and the apparent ignorance on Microsoft's part of these problems, I'm looking for people who've run into them and can perhaps offer some workarounds... If I had more time, I'd have the luxury of using something that was more stable. Thanks much for any assistance given, Bob ------- Date: Thu, 13 Feb 86 18:53:38 PST From: Ya'akov_Miles%UBC.MAILNET@MIT-MULTICS.ARPA To: KNIGHT@SRI-NIC.ARPA Subject: Quick Basic. I have devised the following procedures which make BASIC usable (1) Use BASICA interpreter instead of Quick-Basic where possible (2) Have the ON ERROR GOTO a statement which consists of RUN Don't bother with sophisticated error handling, or Quick-Basic will incur another I/O error before it has finished processing the last I/O error. This will drive it nuts... (3) Manually examine the COM line status register for BREAK and FRAMING errors (the ones that crash Quick-Basic). Refrain from opening files on COM until you have manually (thru OUT) cleared these bits. (4) Microsoft Quick-Basic is guaranteed to crash on the following o The guy sending thru COM device changes baud rate suddenly... o The guy sending thru COM device hits break. (it breaks...) ------- End of enclosure ------- ------------------------------ Date: Fri, 14 Feb 86 08:53:03 PST From: Jim Carter Subject: System Buffer Pool In PC digest V5#20, Walton%Deimos@Hamlet.Caltech.Edu writes about disc optimizers and points out that disc "access" can be speeded up a lot if disc sectors are cached in core; he mentions several products that take care of this. Standard PC-DOS v3.1 (and v3.0, the manual says) has a system buffer pool too. The default number of sectors in the cache is 2 (3 for an AT) but you can expand it to 99 (=~50K) with the "buffers" command in config.sys. All drives share the same cache. James F. Carter (213) 206-1306 UCLA-SEASnet; 2567 Boelter Hall; 405 Hilgard Ave.; Los Angeles, CA 90024 UUCP:...!{ihnp4,ucbvax,{hao!cepu}}!ucla-cs!jimc ARPA:jimc@locus.UCLA.EDU ------------------------------ Date: 14 Feb 1986 09:47:39 PST Subject: Writer's Workbench for PC-DOS Query From: Richard Nelson Writer's Workbench is a text preparation tool available on Unix. Is there a version of it (or something like it) available on PC-DOS machines? Thanks, /richard ------------------------------ Date: Fri, 14 Feb 86 13:25:23 est From: parrish@EDN-VAX.ARPA (Jimmy Parrish) Subject: Expanding Old PC Motherboards Does anyone know of a method of expanding the motherboard memory of early IBM-PCs. These early machines were limited to 64K ( 36 16K x 1 chips) memory on the motherboard. Any source for advice or parts would be appreciated. Please reply directly to PARRISH@EDN-VAX.ARPAPA . THANKS IN ADVANCE ------------------------------ Date: Fri, 14 Feb 86 15:52:17 PST From: cameron@Jpl-VLSI.ARPA Subject: Where is ARC50.COM? Gentlemen, I noticed that has the file ARC50.DOC which is the documentation for the lastest version of the archiving utility ARC. I was wondering: is the latest version of ARC on ARPAnet somewhere? Thanks, -Jonathan Cameron (CAMERON @ JPL-VLSI) [Does anybody want to be the "Official" net depositary of the latest version of ARC. If so I will put your address in our ARC.DOC file. -wab] ------------------------------ End of Info-IBMPC Digest ************************ -------