Info-IBMPC@WSMR-SIMTEL20.ARMY.MIL (02/15/89)
Info-IBMPC Digest Tue, 14 Feb 89 Volume 89 : Issue 22 Today's Editor: Gregory Hicks - Chinhae Korea <COMFLEACT@Taegu-EMH1.army.mil> Today's Topics: Fitted-Software Modula-2 compiler AT&T 6386 Info wanted elongating PATH string (2 msgs) Multi-user BBS IBM PC Convertible Hard Disk Drives Motorola-68000/68020 Cross Assembler wanted microsecond timing Microsecond Timing on PC MS PASCAL, HLLAPI and expert system combo. Multitasking and modems under DesqView and Windows Plug-in processor boards for AT bus Turbo Pascal V5.0, Hercules & ClearDevice Re: Microsecond Timing on a PC ---------------------------------------------------------------------- Date: 02/07/89 15:07:48 MEZ From: <BD50180%DHHUNI4.BITNET@CUNYVM.CUNY.EDU> Subject: Fitted-Software Modula-2 compiler I read about a shareware MODULA-2 compiler from Fitted-Software. Does anyone know about a fileserver where I can obtain the compiler via network file transfer over the Internet or BITNET/EARN. Thanks in advance... Dipl. Inform. Wolfram Reinken Universitt Hamburg, Arbeitsbereich fr Betriebswirtschaftliche Datenverarbeitung Von-Melle-Park 5, D-2000 Hamburg 13 E-Mail : <BITNET> BD50180@DHHUNI4.BITNET <EUNET> REINKEN@INFOHH.RMI.DE.UUCP ------------------------------ Date: 07 Feb 89 11:55:31 EDT From: RSPELLMAN@BAT.Bates.EDU Subject: AT&T 6386 Info wanted In response to Nick Lemberos <OPER013%UMUC.BITNET@CUNYVM.CUNY.EDU>: We are using several AT&T 6386's running at 16 MHz. All in all, we are very satisfied with their performance. We have had a few problems installing large hard drives which AT&T doesn't seem to support within the BIOS. Let me know what type of information you are looking for, and I'll try and help. Rob Spellman RSpellman@Bat.Bates.EDU Computing Services Bates College ------------------------------ Date: Tue, 7 Feb 89 20:10:32 MST From: Gregory Hicks <GHICKS@WSMR-SIMTEL20.ARMY.MIL> Subject: elongating PATH string No... Unless you explicitly state what the last drive letter will be, DOS defaults to LASTDRIVE=E: (That's a command for your CONFIG.SYS file BTW) Thus, if you want a drive higher than E:, you need to put the line "LASTDRIVE=x:" Where 'X' is the letter of the last drive you want to access. Good Luck! Gregory Hicks ------- ------------------------------ Date: Tue, 07 Feb 89 21:49:29 EST From: "Dr. A.Bykat" <BYKAT%UTCVM.BITNET@CUNYVM.CUNY.EDU> Subject: elongating PATH string >You COULD do the following: >SUBST <drive-name> <long-path-name> > >Where <drive-name> is the LETTER of the NEW DRIVE you've just created > (similar to a ram disk) >and <long-path-name> is most, if not all, of the path you want to refer > to... > >See your DOS manual. I'm sorry I don't know the page to look at, but it >should be there... The limit is 128 chars for a path name.. > >It SHOULD work.. You can substitute most, if not all, of your >'very-long-path' this way. > >Gregory Hicks Gregory, thanks. I tried it and the it works. But it seems limited to only two aliases. Is that your experience too? That is, I've set: subst d: <path1> subst e: <path2> and these work, but the third subst f: <path3> yields "Invalid parameter" error! Alex Bykat Acknowledge-To: <BYKAT@UTCVM> ------------------------------ Date: 7 February 1989, 17:51:33 ITA From: M. De Bernardinis <CHIRUR2%IPRUNIV.bitnet@cunyvm.cuny.edu> Subject: Multi-user BBS Hi, is there someone that knows if exist a software to run a BBS with several users connected at any time in MSDOS or, better I think, in UNIX/XENIX. Thank You -MAX- <CHIRUR2 at IPRUNIV> ------------------------------ Date: Tue, 7 Feb 89 09:22 EST From: <TLEWIS%UTKVX3.BITNET@CUNYVM.CUNY.EDU> Subject: IBM PC Convertible Hard Disk Drives I've been through my computer magazines without any sucess for a hard disk drive for a IBM PC Convertible. Can someone point me in the right direction? Thanks, Terry Lewis University of Tennessee at Martin TLEWIS@UTKVX (bitnet) ------------------------------ Date: Tue, 7 Feb 89 09:21:23 PST From: Lance Keigwin <lance@ubvax> Subject: Motorola-68000/68020 Cross Assembler wanted > Date: Fri, 3 Feb 89 01:36:22 PST > From: xjyan@Romeo.Caltech.Edu (Xiaojian Yan) > > WE NEED TO FIND A COMPILER THAT COMPILES MOTOROLA-68000(OR 68020) ASSEMBLY > LANGUAGE ON IBM COMPUTER. IS THERE ANYONE KNOWS ABOUT THIS. PLEASE GIVE > ME A CALL OR LEAVE A MESSAGE. THANKS! > Intermetrics builds a family of cross compilers/assemblers for numerous hosts, among them MSDOS systems. I have a copy of their 68000/010/020/881 assembler for the PC but haven't used it yet (or their C 68000/020 toolkit). We've had good luck with their unix-based cross compilers for 80x86, Z80, and 68k which we run on our 750's. Intermetrics is located at 733 Concord Avenue, Cambridge, MA 02138, tel# 617-661-0072. You might want to ask for a reference for the PC 68k tools, to talk to a real customer. Lance P. Keigwin lance@ubvax.ub.com (uucp) lance@Engr.UB.Com (CSNET) {pyramid,vsi1,ames,lll-winken,weitek,sco}!ubvax!lance ------------------------------ Date: Tue Feb 7 10:04:37 1989 From: microsoft!neilb@beaver.cs.washington.edu Subject: microsecond timing In Info-IBMPC Digest Vol 89:issue 19 Mon, 6 Feb 89 there is a request from George Nassas @ cornell about microsecond timing on the IBM PC. Please see article in PC TECH JOURNAL, April 1984 page 62, LIFE IN THE FAST LANE. [Techniques for obtaining timing information with microsecond resolution on the PC] by Bob Smith and Tom Puckett ------------------------------ Date: Wed, 8 Feb 1989 11:13:12 PST From: Billy Brackenridge <billy@venera.isi.edu> Subject: Microsecond Timing on PC FTP Software sells a NetWatch program that collects packets from an Ethernet and displays them on a screen. At Interop 88 the net was pretty busy and the screen was rolling fast and furious. Packet arrival was displayed to an accuracy of .1 MS. Steve Knolls of FTP informed me that they had reprogrammed the timer chip in the PC and could have displayed more accuracy if they needed it. ------------------------------ Date: Tue, 7 Feb 89 07:35 EDT From: "Picard, Ronald V." <"RCVAX::GMRCMSA::RPICARD%gmr.com"@RELAY.CS.NET> Subject: MS PASCAL, HLLAPI and expert system combo. I know there are several expert system shells that can be linked to MS PASCAL (or C) programs. We are currently running a MS PASCAL program with IBM HLLAPI that monitors our MVS console. This program has grown to be a series of jumbled tasks that could better be implemented in an expert system. Anybody out there have any experience combining the three? Any comments would be most appreciated. Ron Picard (rpicard%gmrcmsa%gmr.com@relay.cs.net) ------------------------------ Date: Tue, 7 Feb 89 19:50:48 CST From: Brian D. Carlton <carlton@rice.edu> Subject: Multitasking and modems under DesqView and Windows Has anyone has successfully ran a bbs in the background under a multi-tasking program such as DesqView and Windows? I am particularly interested in what will work on a 286. What have people tried, and what are the minimum system requirements, and the system requirements anyone has found actually necessary. Also what doesn't work well might be useful to know. Please reply to me and I will summarize to the list. Thanks in advance. Brian Carlton carlton@rice.edu (Internet) BCARL01@RICE (Bitnet) ------------------------------ Date: Tue, 7 Feb 89 14:58:19 EST From: Robert Carpenter <rc@cmr.icst.nbs.gov> Subject: Plug-in processor boards for AT bus????? A friend needs a coprocessor BOARD for a PC-AT which will plug into the bus and run ** simultaneously ** with the normal processor. The new board should allow a math processor as well as. The idea is to off-load some of the calculation from the PC. He needs quite a bit of memory on the new board; some of it should be dual-ported to the AT bus to allow the new board to be handled like "smart" memory ... write some data ... read the answer. Mature software support is a must (under DOS, please). Presumably a board using a '286 or '386 would offer the least software confusion. I haven't followed the field .... can someone please comment on the availability and merits of specific boards of this type? I've seen NS 32016 and TI DSP boards, are more ordinary things on the market? Thanks to all. Bob (W3OTC) rc@cmr.icst.nbs.gov ------------------------------ Date: Wed, 08 Feb 89 14:17:05 SET From: Karl Keyte <ESC1332%ESOC.BITNET@CUNYVM.CUNY.EDU> Subject: Turbo Pascal V5.0, Hercules & ClearDevice I have a program which needs to run with Hercules, EGA and VGA adapters. I use SetVisualPage and SetActivePage to toggle screen pages (for a kind of animation), and ClearDevice to clear the screen. It works perfectly well for VGA and EGA, but for the Hercules it all seems to go terribly wrong. The screen switching doesn't seem to work properly, and the call to ClearDevice just clears the screen (very slowly), and then re-paints the picture on to it. Weird! Any ideas anyone??? Oh..just to put it into perspective..I've tried it on load of different machines including REAL ones!! Karl Darmstadt, West Germany ------------------------------ Date: Tue, 7 Feb 89 18:01:49 EST From: Michael J. Tighe <mjt@super.org> Subject: Re: A few things cleaned up in the Random Number Generator The code is a direct adaption of routines by Steve K. Park and Keith W. Miller in their article, "Random Number Generators: Good Ones are Hard to Find", published by Communications of the ACM, October 1988 (Volume 31, Number 10). The Turbo Pascal (5.0) code segment as shown in the Digest will NOT work CORRECTLY on 16 bit (8088/8086/80286) machines. (not having a 32 bit (80386) machine I do not know if it will work on a 32 bit machine). This is due to overflow. Oh sure, the code will compile, and it will spit out numbers, but the seed will soon overflow, and then the numbers will not be random. It can only be made to work if the variables of type integer are converted to type longint. Turbo Pascal uses 16 bits to store an integer, and 32 bits to store a longint. In the code, m is const defined to be 2^31-1, and it will be stored as a longint. However, seed is an integer, and eventually it is given the value: seed := test + m; This will cause and overflow when executed. The article provides numerous insights on the subject of generating random numbers and those wishing a further explanation are encouraged to read it. Most important, the article provides a way to check the generator. If after 10,000 runs with an initial seed of 1, the seed is not 1043618065, then an error has occurred. Michael Tighe internet: mjt@super.org uunet: ...!uunet!super!mjt ------------------------------ Date: Tue, 7 Feb 89 18:01:56 EST From: Michael J. Tighe <mjt@super.org> Subject: Re: Microsecond timing on a PC In issue 19, volume 89 of the IBM-PC Digest, one of the topics is titled, "microsecond timing on a PC". The following code segments, in Turbo Pascal 5.0 and Turbo C 2.00, show how to access the clock. PROGRAM ticktock(input,output); { Name: ticktock.pas Author: Michael Tighe System: IBM PC/XT/AT/PS2, MS-DOS 3.30 Language: Turbo Pascal Version 5.0 Description: Demo of IBM PC's high resolution clock INFO FOR TICKTOCK: The TICKTOCK programs demonstrate how to obtain accurate timing information from the IBM PC/XT/AT family of computers. The next few paragraphs should give you a basic idea of how the time is stored in these computer systems. In the PC family, an internal clock runs at 1.193180 Mhz. This clock is divided by 65536 to give 18.206482 clock pulses per second (.0549255 seconds per clock pulse). Therefore, the clock 'ticks' every .0549255 seconds. Two addresses in low memory are used to keep track of the tick count. They are both 1 word (two bytes) in length. The first is at address 0000:046C. It is incremented 18.2 times a second. When it overflows, it is reset to 0 and another word at address 0000:046E is incremented. It should be noted that the word at address 0000:046E is also the current hour, in 24 hour format. The address at 0000:046C when divided by 18.2, is the current time past the hour, in seconds. } { compiler directives } {$a+} {word alignment (+=on,-=off (+)} {$b+} {boolean evaluation (+=complete,-=short circuit) (-)} {$d-} {debug information (+=on,-=off) (+)} {$e-} {emulation (+=on,-=off) (+)} {$f-} {force far calls (+=all far,-=as needed) (-)} {$i-} {i/o error checking (+=on,-=off) (+)} {$l-} {local symbols (+=on,-=off) (+)} {$m 16384,0,655360} {memory allocation (stk,minhp,maxhp) (16k,0,640k)} {$n+} {numeric data processor (+=true,-=false (-)} {$o-} {overlays (+=on,-=off (+)} {$r-} {range checking (+=on,-=off (+)} {$s-} {stack checking (+=on,-=off (+)} {$v-} {var string checking (+=on,-=off) (+)} USES crt; CONST version_number = '[TICKTOCK Version 87.365]'; VAR t1,t2 : byte; tick,tock : real; BEGIN writeln(version_number); writeln; t1 := 0; t2 := 0; t1 := mem[$0000:$046c]; t2 := mem[$0000:$046d]; tick := int(t1) + int(t2)*256; t1 := mem[$0000:$046e]; t2 := mem[$0000:$046f]; tock := int(t1) + int(t2)*256; writeln('Tick value is ',tick:6:0,', Tock value is ',tock:6:0); writeln('Sleeping for 5 seconds (~91 ticks)...'); delay(5000); t1 := 0; t2 := 0; t1 := mem[$0000:$046c]; t2 := mem[$0000:$046d]; tick := int(t1) + int(t2)*256; t1 := mem[$0000:$046e]; t2 := mem[$0000:$046f]; tock := int(t1) + int(t2)*256; writeln('Tick value is ',tick:6:0,', Tock value is ',tock:6:0); END. /* Name: ticktock.c Author: Michael Tighe System: IBM PC/XT/AT/PS2, MS-DOS 3.30 Language: Turbo C Version 2.00 Description: Demo of the IBM-PC's high resolution clock INFO FOR TICKTOCK: The TICKTOCK programs demonstrate how to obtain accurate timing information from the IBM PC/XT/AT family of computers. The next few paragraphs should give you a basic idea of how the time is stored in these computer systems. In the PC family, an internal clock runs at 1.193180 Mhz. This clock is divided by 65536 to give 18.206482 clock pulses per second (.0549255 seconds per clock pulse). Therefore, the clock 'ticks' every .0549255 seconds. Two addresses in low memory are used to keep track of the tick count. They are both 1 word (two bytes) in length. The first is at address 0000:046C. It is incremented 18.2 times a second. When it overflows, it is reset to 0 and another word at address 0000:046E is incremented. It should be noted that the word at address 0000:046E is also the current hour, in 24 hour format. The address at 0000:046C when divided by 18.2, is the current time past the hour, in seconds. */ # include <stdio.h> # define TIMER_LO 0X46C # define TIMER_HI 0X46E void geticktock(); float tick, tock; main() { printf("[TICKTOCK Version 87.365]\n\n"); getticktock(); printf("tick value is %6.0f, tock value is %6.0f\n",tick,tock); printf("Sleeping for 5 seconds (~91 ticks)...\n"); sleep(5); getticktock(); printf("tick value is %6.0f, tock value is %6.0f\n",tick,tock); return; } getticktock() { unsigned char t1,t2; t1 = 0; t2 = 0; t1 = peekb(0,TIMER_LO); t2 = peekb(0,TIMER_LO+1); tick = (float) t1 + (float) t2 * 256; t1 = peekb(0,TIMER_HI); t2 = peekb(0,TIMER_HI+1); tock = (float) t1 + (float) t2 * 256; return; } Michael Tighe internet: mjt@super.org uunet: ...!uunet!super!mjt ------------------------------ End of Info-IBMPC Digest ************************ -------