microp@b-tech.UUCP (Microport mailing list) (10/22/87)
Subject: Microp mailing list #35 (22-Oct-87) This message is being mailed to you as part of a mailing list. This list is targeted towards technical discussions of Microport's Sys V/AT Unix for the IBM PC-AT. It not officially related to Microport Systems Inc. Any input you have should be sent to: seismo!umix!b-tech!microp microp%b-tech.uucp@umix.cc.umich.edu To be added to this list, contact one of the following sites (not this site please): seismo!scubed!sdcsvax!amos.ling.LOCAL!sdeggo!dave (southern CA area) tektronix!reed!percival!nerd rutgers!umnd-cs!umn-cs!rosevax!herman!k0jfv!alan (Minneapolis/St. Paul area) uunet!mcvax!trevan!trevor (UK) nessus!info-uport genrad!mrst!sdti!mjy ucbvax!sdcsvax!ucrmath!soft21!mplist thos@cca.ucsf.edu | ucbvax!ucsfcgl!cca.ucsf!thos wulfeck@nprdc.arpa kre@munnari.oz | siesmo!munnari!kre (australia) seismo!cmcl2!manhat!samperi ----------------------------------------------------------------------------- From: umix!rutgers!slxsys.co.uk!jpp (John Pettitt) To: umix!metavax!b-tech!microp Subject: DMA bug . . . If this has already been noted please disregard (I only have the last 6 or 7 news letters) . There is a bug in the dmainit() routine in the 286 kernel (1.x & 2.x) as follows. When a device wants to use DMA for the first time it calls dmainit() to set up the dmac (normally first floppy access). dmainit() sets up ALL dma channels on both dma controllers and flips a bool to say it has donw so. What should happen is that subsequent call to dmainit() detect that there is nothing to do an return. The test always causes the dmac to be reset. This will cause no problems if only one dma device is used at a time but it you try and use two (tape and floppy for example) the system will probably double panic ! John Pettitt (Tel +44 1 398 9422) jpp%slxsys.uucp@ukc.ac.uk { stc!datlog } uunet!mcvax!ukc!{ pyrltd }!slxsys!jpp { reading!riddle } P.S. trevan!trevor is relaying the news letter to at least 3 uk sites - save's on transatlantic phone bills ! ------------------------------------------------------------------------------ From: umix!rutgers!rochester!ur-valhalla!micropen!dave Subject: mail list Please subscribe me to your list. [ed: please contact one of the sites listed above]. Also, as a lark I tried to run my 2.2 UNIX on my new '386 box. Yes, the '386 doing '286 emulation works fine. Maybe next week my SVr3 for '386 will arrive but for now I have a 2X speed up for my compiles etc. David F. Carlson, Micropen, Inc. ...!{ames|harvard|rutgers|topaz|...}!rochester!ur-valhalla!micropen!dave ------------------------------------------------------------------------------ Subject: UUCP windows 7 fix From: umix!rutgers!EDDIE.MIT.EDU!mit-caf!soft21!jantypas (John Antypas) This little chunk of mail allows one to set WINDOWS = 7. This does actually double the transfer rate at 1200 baud over PC Pursuit. I didn't write it, but I'm grateful for the author's work. --- John Antypas =========== Fix follows Steve Nuchia | [...] but the machine would probably be allowed no mercy. uunet!nuchat!steve | In other words then, if a machine is expected to be (713) 334 6720 | infallible, it cannot be intelligent. - Alan Turing, 1947 /* run as a.out < uucico */ #include <stdio.h> main() { long i=0, p=0; int ch; static int sstr[] = { 0xC6, 0x44, 0x27, 0x03, 0xB0, 0x03 }; while ( (ch = getchar()) != EOF ) { ch &= 0xff; if ( ch == sstr[p] ) p++; else if ( ch == sstr[p = 0] ) p++; if ( p == 6 ) printf ( "%ld\n", i ); i++; } } /* run as a.out << uucico */ char str[] = { 0xC6, 0x44, 0x27, 0x07, 0xB0, 0x07 }; main() { /* the long const is the number reported above */ lseek ( 1, 28470L - 5, 0 ); write ( 1, str, 6 ); } --------------------- PATCHING UUCP TO USE WINDOWS=7 ON MICROPORT V2.2 Microport Unix SYSV's uucico comes set at the factory for WINDOWS = 3, as do most. Below is a method of changing this for those of you who do not have a source license. First, a small comment: If you are using PC-Persuit or other packet-switched network for uucp access, you WANT this patch. Our throughput doubled after installing it, from about 550 baud effective transfer rate to a little over 1100 -- probably the best you can achieve on a 1200 baud line. Disclaimer & Notes: This method worked here -- after a long night of trying to figure out where to patch the hard way! The article posted a few days previous about this patch on a VAX was incredibly helpful in locating the proper point to apply the patch at. Of course, as with any modification, your mileage may vary and you should test the results thoroughly before trusting valuable data to it. You will need: 1) MSDOS 2) Norton's Utilities or other similar package that can search and patch disk files (this is explained later) 3) Microport Unix. 4) About 15 minutes of your time. To change to Windows 7: 1) Make another copy of uucico in /usr/lib/uucp in case you mess up. 2) Copy uucico to a dos DISKETTE (DO NOT use 'doscp' to a hard disk partition, there is a bug which can DESTROY the Fat table. It works fine to floppy media) The command you want to use is: 'doscp -b uucico A:' (See documentation supplied for more on doscp and it's devices). 3) Boot MS-DOS. 4) Bring up your file-zapper, and search for the sequence: c6 44 27 03 b0 03 -- there is only one occurrance. 5) Change both of the '03's above to '07', and write the sector back to disk. 6) Reboot Microport, and replace your uucico in /usr/lib/uucp with the patched version using the command 'doscp -b A:uucico /usr/lib/uucico'. That's it! You now have windows 7. We've been using this for several days now, and have had zero problems with it. As mentioned before, our effective baud rate essentially doubled. Question: Why use DOS at all, and not 'patch'? Well, although patch documents that it can use a hard address, we've been unable to get it to accept this form of the command. Since uucico (and everything else) is stripped, you cannot use a symbolic address.... thus the need for this route. Enjoy, and happy PC-Persuiting! -- Karl Denninger UUCP : ...ihnp4!ddsw1!karl Macro Computer Solutions Dial : +1 (312) 566-8909 (300-1200) "Quality solutions at a fair price" Voice: +1 (312) 566-8910 (24 hrs) ------------------------------------------------------------------------------ Subject: Yacc, Lex From: b-tech!zeeff (Jon Zeeff) Personal mail I've received indicates that yacc and lex are small model programs. Might be something to look out for if you are doing anything serious with them. I've seen problems with yacc and the getdate routine from news 2.11. The compiler won't compile what yacc produces. Has anyone else had this problem? --Jon ------------------------------------------------------------------------------