HDTenEightyP/NetNews huggingface dataset:
From: mitchell@aaec1.aaec.com
Newsgroups: comp.os.vxworks
Subject: re: Locking Interrupts..
Date: Tue, 29 Sep 92 15:11:19 EDT
Organization: Lawrence Berkeley Laboratory, Berkeley CA
NNTP-Posting-Host: 128.3.112.16
Originator: daemon@vxw.ee.lbl.gov

>Sender: zafer@bcars474 (Zafer Elbi)
>
>For the following code:
>
>int lock = intLock();
>..
>..
>..--->  Task switch
>..
>intUnlock();
>
>If there is a task switch occurs in the middle of the interrupt routine, can
>the preempting task unlock the interrupts again?
>
>Thanks for the reply..
>
>---------------------------

Interrupt service routines are never preempted by tasks.  They run at
interrupt
level on the CPU, which is kind of like "higher than 0" priority.  They
have no task context and many vxWorks "things" won't work.  The only thing
that can
preempt an interrupt is a higher priority interrupt (or another level 7 if
currently a level 7 (NMI)).  This is for a 680x0, and is the way the chip
works;  I don't know about other CPU families.  intLock() is rarely needed
in an ISR, since the same level interrupt is ignored, other interrupts tend
to be unrelated, no task will run until all pending interrupts are finshed,
and ISR's typically do some simple I/O and/or give semaphores. 

intLock at the task level is quite different; it locks out all interrupts 
(except NMI level 7 - which one tries to avoid using for non-fatal events),
and is very useful when manipulating data that is also used by an ISR. 
Long intLocks() should be avoided because they increase latency, making the
system "less" real-time.  The current interrupt mask is part of the task
context, and is switched with the rest of the task.  If a task is at one
intLock level and is switched out, then the interrupt level mask in the CPU
will be set to the new task's intLock level, and restored when the original
task is switched back in.  If the intLock level is at the default level 7,
then the only way to get a context switch is for the current task to ask
for one via a semGive or other kernel call (see CAVEAT under intLock()). 
intLock levels other that 7 are set with intLockLevelSet(), which sets up
the control word to be used by the "quick" intLock(), intUnlock(). 
intLevelSet() dets the level directly, but is slower than intLock and
intUnlock.
  Andrew Mitchell                |  Internet: mitchell@aaec.com
  Atlantic Aerospace             |  tel: (617) 890-4200 
  470 Totten Pond Road           |  fax: (617) 890-0224
  Waltham MA 02154 USA           |
 
                                

Newsgroups: comp.os.vxworks
From: pat@wrs.com (Patrick Boylan)
Subject: Re: bug with mutex semaphores in 5.0.2???
Keywords: semaphore, bug, 5.0.2
Reply-To: pat@wrs.com
Organization: Wind River Systems, Alameda CA
Distribution: wrs
Date: Wed, 30 Sep 1992 16:31:33 GMT

In article <1992Sep29.175143.20505@kronos.arc.nasa.gov>, doctor@kronos.arc.nasa.gov (Terry Fong) writes:
|> Hi all,
|> 
|> I seem to be having a problem with mutual exclusion semaphores: they
|> don't seem to work at all!!!! For example, given the following code:
|> 
|> ------------------------------------------------------------------------------
|> #include "vxWorks.h"
|> #include "semLib.h"
|> 
|> SEM_ID semId;
|> 
|> waitAndPrint ()
|> {
|>   extern SEM_ID semId;
|> 
|>   while (1) {
|>     semTake (semId, WAIT_FOREVER);
|>     printf ("got semId!\n");
|>   }
|> }
|> ------------------------------------------------------------------------------
|> 
|> I compile under 5.0.2 using cc68k:
|> 
|>   cc68k -O -fstrength-reduce -fcombine-regs -msoft-float -traditional \
|> 	-I/usr1/vw/h -c  waitAndPrint.c
|> 
|> Then in the VxWorks shell:
|> 
|> -> semId = semMCreate (1)		(note: 1 = SEM_Q_PRIORITY)
|> semId = 0x33fdcec: value = 54264916 = 0x33c0454
|> -> ld < waitAndPrint.o
|> value = 0 = 0x0
|> -> semTake (semId, -1)			(note: -1 = WAIT_FOREVER)
|> value = 0 = 0x0
|> 
|> By this point, the semId should be empty and anything that attempts to
|> take it should pend. So, I start up the waitAndPrint task:
|> 
|> -> waitAndPrint
|> got semId!
|> got semId!
|> got semId!
|> got semId!
|> .
|> .
|> .
|> (Ctrl-C)
|> 
|> As you can see, waitAndPrint NEVER pends. It ALWAYS is able to take
|> the semaphore. If I replace "semMCreate (1)" with "semBCreate (1, 1)"
|> (i.e., use a regular binary semaphore), everything works as expected
|> (i.e., waitAndPrint pends). So, am I doing something wrong? Or is
|> there a bug here?
|> 
|> -Terry
|> 

Terry,

Everything appears to be working correctly.

Remember that mutual exclusion semaphores are meant to protect access to a 
resource.  Once a task has taken control of a resource, it is not an error 
to take control of it again.  If another task were to try to take this 
semaphore at this point, then you would see it pend for the first task to 
release it.

Try spawing your "waitAndPrint" as a separate task from the shell after 
taking the semaphore from the shell.  It should pend in this case.

-> semTake (semId, -1)			(note: -1 = WAIT_FOREVER)
value = 0 = 0x0
-> sp waitAndPrint
value = 0 = 0x0
->

Look at the VxWorks Reference Manual under "semMLib" under the heading 
"Recursive Resource Access".


- Patrick

-- 
 Patrick Boylan, Consulting Engineer, FAE Asia/Pacific
 Wind River Systems
 1010 Atlantic Ave. Alameda, CA  94501
 email: pat@wrs.com   tel: (510)748-4100   fax: (510)814-2010
From: flash@austin.lockheed.com (James W. Melton)
Newsgroups: comp.os.vxworks
Subject: Re: bug with mutex semaphores in 5.0.2???
Keywords: semaphore, bug, 5.0.2
Date: 6 Oct 92 00:26:46 GMT
Organization: "Lockheed Austin Division, 6800 Burleson Rd, Austin, TX 78744

In article <1992Sep29.175143.20505@kronos.arc.nasa.gov> doctor@kronos.arc.nasa.gov (Terry Fong) writes:
>Hi all,
>
>I seem to be having a problem with mutual exclusion semaphores: they
>don't seem to work at all!!!! For example, given the following code:
>
[...]
>
>SEM_ID semId;
>
[...]
>
>Then in the VxWorks shell:
>
>-> semId = semMCreate (1)		(note: 1 = SEM_Q_PRIORITY)
>semId = 0x33fdcec: value = 54264916 = 0x33c0454
>-> ld < waitAndPrint.o
>value = 0 = 0x0
>-> semTake (semId, -1)			(note: -1 = WAIT_FOREVER)
>value = 0 = 0x0

I don't know if this is related to your semaphore never being
taken, but there IS is a problem here. When a symbol is defined
from C code:

    SEM_ID semId;

the symbol that goes into the symbol table is actually _semId.
However, when a variable is created from the shell:

    semId = semMCreate (1)

the symbol that goes into the symbol table is semId (no leading
underscore). If a symbol with the leading underscore is already
present, the shell is kind enough to figure out what you mean. In
other words, 

    -> ld < waitAndPrint.o
    -> semId = SemMCreate(1)
    -> semTake (semId, -1)
    -> waitAndPrint

MIGHT work. Notice that the shell translates function calls (ld,
semTake, etc.) to their proper names (_ld, _semTake, etc.) All this
can be verified by using lkup to examine the symbol table.

Hope this helps.

-- 
Jim Melton, novice guru
email:      flash@austin.lockheed.com | "So far as we know, our
voice mail: (512) 386-4486            |  computer has never had
fax:        (512) 386-4223            |  an undetected error"
From: Steve Blachman <sblachma@aoc.nrao.edu>
Newsgroups: comp.os.vxworks
Subject: MVME147s parallel port
Date: Tue, 6 Oct 92 18:11:22 MDT
Organization: Lawrence Berkeley Laboratory, Berkeley CA
NNTP-Posting-Host: 128.3.112.16
Originator: daemon@vxw.ee.lbl.gov

Does anyone have (or know of) a vxWorks driver for the 147's parallel
i/o port (the Centronics printer port)?
From: talarian!brianq@uunet.uu.net (Brian Quigley)
Newsgroups: comp.os.vxworks
Subject: re: Driver for GPIB-1014P
Date: Thu, 1 Oct 92 13:56:03 PDT
Organization: Lawrence Berkeley Laboratory, Berkeley CA
NNTP-Posting-Host: 128.3.112.16
Originator: daemon@vxw.ee.lbl.gov

> Submitted-by: interf!zeus!brackett@uunet.uu.net (Todd Brackett)
>  
> Does anybody have a driver/library for the National Instruments
> GPIB-1014P board?  This is the cheap programmed I/O one without 
> the DMA.
> 

The driver National sells is the ESP488I and is available in their
catalog for about $300.  Programmed I/O works pretty much out of the
box, VME interrupts takes more time because of gaps in the GPIB-1014
documention, and I we never did get DMA to work (see if the DMA examples
in the back of GPIB-1014 manual work for you!).

The 'we' refers to a previous company I worked for so I don't have
the code anymore.  I probably shouldn't post code that other people 
own and sell, anyway. 

Let me know if you have more specific question and hopefully I
can help.
From: shaffer@stef.crd.ge.com (Phil Shaffer)
Newsgroups: comp.os.vxworks
Subject: Reset and Hold for Motorola MVME167
Date: Thu, 1 Oct 92 07:39:03 EDT
Organization: Lawrence Berkeley Laboratory, Berkeley CA
NNTP-Posting-Host: 128.3.112.16
Originator: daemon@vxw.ee.lbl.gov

Does anyone know how to reset AND HOLD a Motorola MVME167
board, from another board on the VME backplane (all running vxWorks).

I know how to reset a 167: write 0x80 to (0x10*proc + 3) in Short IO space,
where proc is SysProcNum on the target board.  But this doesn't
provide for holding the 167 in the reset state.  The 167 Programmer's
Reference Manual, p. 2-16, in the section "Reset Driver" says:
"By setting a control bit, software can maintain a board in a reset
state, disabling a faulty board from participating in normal system
operation." Note the word "maintain".  But there is no further
description of this, and a Motorola Systems Engineer who has
generally been very helpful in the past, says there is in fact
no way to do this.

Of course, I have thought of the obvious method of repeatedly
hitting the reset bit, but that's not very elegant, is it?

For Motorola MVME165 or 147, you set a bit on the target processor to reset
and hold, then clear the bit to allow the target processor to continue
(reboot, actually).  But those boards use the VMEchip rather than the 
VMEchip2 in the 167.

If anyone knows how to do this, please let me know.  If you email
to me, I will summarize.  Thanks.

     Phillip L. Shaffer                  shaffer_phillip@ae.ge.com
     GE Aircraft Engines, MS A320
     1 Neumann Way
     Cincinnati, OH 45215
From: smb@afterlife.ncsc.mil (Steve M. Burinsky)
Newsgroups: comp.os.vxworks
Subject: Intertask communication mechanisms
Date: 30 Sep 92 05:29:36 GMT
Organization: The Great Beyond

I'm exploring my alternatives for intertask communication among tasks on
the same or other boards.

I need:
1.  High throughput.
2.  Ordered delivery.
3.  High reliability (but < 100% is potentially acceptable).
4.  Multicasting (one sender, several receivers).

Given that the only physical communications medium accessable to all of the
processors is the backplane, it would seem that my alternatives are:

1.  TCP on the backplane network.
2.  UDP on the backplane network.
3.  Some shared memory mechanism that I implement.
4.  Some other (unknown to me) mechanism.

My concerns are that:

1.  TCP throughput is too low.
2.  UDP throughput is too low and potentially too unreliable or unordered.
3.  I have to write my own mechanism.
4.  There is something better out there that I'm not aware of.

Any suggestions, comments, or questions are welcomed.  Thanks.
-- 

Steve M. Burinsky
smb@afterlife.ncsc.mil
From: briggs@thalia.jpl.nasa.gov (Clark Briggs)
Newsgroups: comp.os.vxworks
Subject: Intertask Communications Mechanisms
Date: Wed, 30 Sep 92 08:24:27 PDT
Organization: Lawrence Berkeley Laboratory, Berkeley CA
NNTP-Posting-Host: 128.3.112.16
Originator: daemon@vxw.ee.lbl.gov

Steve M. Burinsky writes, while looking for communications schemes:

>My concerns are that:

>1.  TCP throughput is too low.
>2.  UDP throughput is too low and potentially too unreliable or unordered.

But Steve gave no speed requirements.  There are a lot of advantages to using
TCP or UDP simply because they exist and are so flexible and transportable.
Before taking 1 & 2 above as givens, consider your real speed needs vs
development effort carefully.  It has been my experience that TCP speeds
(even over ethernet) are quite acceptible and if continuous transfer speed
requirements are really that high, the overall system design and component
load balancing must be done very carefully.

I wont offer any firm speed figures, but I seem to remember discussion in
here pointing out ethernet transfer speeds of 400K bytes (or bits? whats a
factor of 8 anyway?).  With care, backplane speeds should be substantially
higher, but again I offer no figures for lack of memory.

Remember, WRS firmly believes sockets, etc, can be slicked up to provide
sufficient transfer speed for most applications, while maintaining standards.
(I got this I believe from the last West Coast User Group Meeting.)

Peter Mutsaers adds:
>Why not simply use shared memory (assuming your VME board supports it)
>and use TCP sockets to tell that data is available to the other board.
I think that is an excellent compromise that avoids moving large amounts of
data across the sockets.

Clark Briggs
briggs@csi.jpl.nasa.gov
From: rob@cygnus.com (Rob Savoye)
Newsgroups: comp.os.vxworks
Subject: Re: gcc and g++ 2.2.2
Date: 2 Oct 92 16:54:45 GMT
Organization: Cygnus Support -- +1 415 322 3811
In-reply-to: bres@aar.alcatel-alsthom.fr's message of 2 Oct 92 08:41:54 GMT

In article <1992Oct2.084154.2159@aar.alcatel-alsthom.fr> bres@aar.alcatel-alsthom.fr (Guillaume Bres) writes:

   Sorry if it is a FAQ. Is there anybody around who succeded
   in using gcc 2.2.2 for the target 68030 VX 5.0  and the host
   sun3.

   Indeed some problems arise because gcc refers to ___main
   which is defined in libgcc.a, and ___main refers to _on_exit
   which is defined in the sunos libc.a but not in the vx library
   all.a

What I do is do a partial link using the -r option to gcc. You have to
build the libraries, but It has other advantages. This bring in the
__main() function.

	- rob@cygnus.com -
From: doug@neopath.wa.com (Doug Carlton)
Newsgroups: comp.os.vxworks
Subject: Xmodem File Transfer Protocol under VxWorks
Date: 1 Oct 92 18:39:26 GMT
Article-I.D.: neopath.1992Oct1.183926.4357
Organization: NeoPath

We are in need of a file transfer protocol (preferably Xmodem) that
runs on a Force CPU30 board under VxWorks (preferably 5.0.2). Ideally
I would like to buy the source code. If that is not possible, is there
someone out there that has ported this to the aforementioned hardware?

I have an immediate need to resolve this issue.

Sincerely,

Doug Carlton
NeoPath Inc.
Followup-To: 
Distribution: usa
Organization: NeoPath
Keywords:
From: sjk@strl.labs.tek.com (Steven King)
Newsgroups: comp.os.vxworks
Subject: Interphase Eagle 4207 Ethernet driver installation problem
Date: 30 Sep 92 19:22:07 GMT
Reply-To: sjk@strl.labs.tek.com (Steven King)
Followup-To: comp.os.vxworks
Organization: Software Technology Research Lab, Tektronix, Inc.

I'm having a problem installing an Interphase Eagle 4207 Ethernet
board.  I was hoping that someone else has installed an Eagle and
could give me some hints.

The issues are as follows:

    In one VME chassis I have both an Interphase and Motorola MV147
    board.

    In config.h I define the following:

#define IO_ADRS_EGL	((char *)0xffff8000)

#define INT_VEC_EGL             (PCC_INT_VEC_BASE + 0xc)
#define INT_LVL_EGL             3       /* LANCE Ethernet interface */

    I then do the following from the shell:

usrNetIfConfig ("egl0", "xxx.xxx.xx.xx", "inetName")

    usrNetIfConfig() eventually calls eglattach().  eglattach() gets as
    far as performing the intConnect() calls for the vectors, but when
    it performs the sysIntEnable() things hang up.  It seems that an
    interrupt is pending, and the appropriate interrupt routine is
    called but cannot handle the interrupt.  The work queue soon fills
    up can I get a work queue panic.

I rather suspect that the location of the interrupt vector is bogus, but
the Interphase docs don't mention any restrictions.  They also don't
mention what _is_ appropriate, so I placed it just above the lance chip
vector.

I can get to the Interphase memory from the shell, so I feel that the i/o
address is correct.  The initialization and configuration packets are 
getting to/from the Interphase correctly.

Does anyone have some hints on installing this board?
  

Steven (sjk@strl.labs.tek.com)

"Sometimes if you have a cappuccino and then try again it will work OK."
(Dr. Brian Reid)  "Sometimes one cappuccino isn't enough." (Marcus Ranum)
"A double vanilla latte always works."  (Me)
From: bres@aar.alcatel-alsthom.fr (Guillaume Bres)
Newsgroups: comp.os.vxworks
Subject: gcc and g++ 2.2.2
Date: 2 Oct 92 08:41:54 GMT
Reply-To: bres@aar.alcatel-alsthom.fr ()
Organization: Alcatel Alsthom Recherche (Marcoussis)


Sorry if it is a FAQ. Is there anybody around who succeded
in using gcc 2.2.2 for the target 68030 VX 5.0  and the host
sun3.

Indeed some problems arise because gcc refers to ___main
which is defined in libgcc.a, and ___main refers to _on_exit
which is defined in the sunos libc.a but not in the vx library
all.a

I would be pleased with information about using g++.

Guillaume Bres
bres@aar.alcatel-alsthom.fr
-- 

---------------------------------------------------------
Guillaume Bres			Alcatel Alsthom Recherche
tel : (33) (1) 64 49 17 72	           Route de Nozay
fax : (33) (1) 64 49 17 89	         91460 Marcoussis
email : bres@aar.alcatel-alsthom.fr                France
Newsgroups: comp.os.cpm
From: laverman@cs.rug.nl (Bert Laverman)
Subject: Re: Televideo TS806/20 Info Requested
Originator: laverman@rug16
Organization: Dept. of Computing Science, Groningen University
Date: Tue, 29 Sep 1992 08:13:13 GMT


Jeff Foy writes:
> Today I was given a system that is tagged as TS-806/20.
Hey, here we go again. The Televideo's seem to be in their retirement phase ;-)

> I'm assuming, at 
> least for the moment, that it is a TS-806 computer with a 20 meg hard 
> drive. (I know there's a hard drive but I've not been able to determine 
> what kind it is yet)
Correct. The TS806-10 had a 10Mb drive. Actually, you'll have only 17MB
to use. :-(

> The system came with five TeleVideo 925 terminals with keyboards.
Thos should be TS800-A's, which are full Z80 systems, but without disks.

> According to what little info came with the system, it seems to run a 
> network-type system called MmmOST with CP/M R 2.2.
Mmmost is a program that runs on the 806, and takes care of the 800's disk I/O.
It also provides a rough form of protection, and some printer spooling.

> Ok, the problems:
>  1) No boot disk. (5.25" floppy drive so assuming this should be a 5.25" 
>     floppy diskette -- about 368k I'd imagine.
It should boot from the HD. Press the reset button again immediately after
booting if it tries to boot from floppy.

>  2) No cable for the hard drive. Two openings on the rear of the machine 
>     are labeled WINCH (DATA)  and  WINCH (CONTROL). I'm assuming this is 
>     where the cable is supposed to snake through.
??? The HD should be inside the 806 case.

>  3) The cables for the workstation terminals had been severed so I'll 
>     probably need new ones. They seem to be RS-422 D-style connections 
>     (15-pins).
As far as I know that is the case.

> The questions:
> 
>  1) Where can I get a boot disk either with or without MmmOST? Cost?
If noone in your neighbourhood can help you, I'll send a copy.

>  2) Where can I get an appropriate hard drive cable? Cost?
I'm not sure. I had a 806/20, but it was scrapped when the HD gave out.
Maybe the cables are still somewhere...

>  3) Will any RS-422 cables work? If not, where can I get the right type 
>     for this setup?
I can check the hardware manual if you like.

> The sooner I can get this system online, the sooner I can finish up CP/M 
> ZIP as my other CP/M system (BMC if800) bit the big one about three 
> weeks ago.
As I said, Help in the states would be fastest, but I'm available as
backup :-)

Greetings, Bert
-- 
#include <std/disclaimer>

  Bert Laverman,  Dept. of Computing Science, Groningen University
  Friendly mail to: laverman@cs.rug.nl      The rest to: /dev/null
From: ac959@cleveland.Freenet.Edu (Ed Grey)
Newsgroups: comp.os.cpm
Subject: WordStar 4.0 for CP/M
Date: 28 Sep 1992 11:08:14 GMT
Organization: Case Western Reserve University, Cleveland, Ohio (USA)
NNTP-Posting-Host: slc4.ins.cwru.edu


I am trying to install WS4.0, on a TeleVideo 803H, using the
printer driver for the Epson FX-85.  When I try to print, I keep
getting an error message saying that I don't have enough memory
or it cannot find the printer driver.  Qustions:
 
1.  How much memory is needed?  I've tried with as much as 59K.
2.  Is this a normal problem when trying to install a driver for
    a full featured printer?  
3. Is there a way around this problem?
   
Thanks, any help, information and/or suggestions regarding WS4.0
will be greatly appreciated.  I've been happy with WS3.3 and only
now am I considering switching because I wanted to use additional
features of my printer.  Take care.
   
    
NOTE: I've tried using CP/M 2.2, CP/M 3.0 and Z-system.  The symtoms
don't change.
   
-- 
 Ed Grey  \*\  Sysop of The Grey Matter BBS & RCP/M 213-971-6260
 P.O. Box #2186  \*\  Bitnet: ac959%cleveland.freenet.edu@cunyvm
 Inglewood, CA 90305  \*\  Internet: ac959@cleveland.freenet.edu
 USA \*\ v.: 213-759-7406 \*\ Fido: 1:102/752 \*\ GEnie: E.GREY1
Newsgroups: comp.os.cpm
From: bmarcum@world.std.com (Bill Marcum)
Subject: Re: access with Kaypro IV
Organization: The World Public Access UNIX, Brookline, MA
Date: Sun, 4 Oct 1992 22:57:33 GMT

Most arcade-type games don't work well on a character screen with keyboard
input, but there's a CP/M version of Tetris called T20 that I've enjoyed
playing.  I think I downloaded it from the GEnie CP/M library.
From: UNF315@IBM.RHRZ.UNI-BONN.DE (Uwe Nass)
Newsgroups: comp.os.cpm
Subject: WordStar 4.0
Date: 2 Oct 92 07:04:28 GMT
Distribution: world
Organization: The Internet
X-Unparsable-Date: Thu, 01 Oct 92 14:54:45 MEZ


Hi all,

I have just read an old release announcement for WordStar 4.0 by
MicroPro. Up to now, I use version 3.0 (!!) for editing letters
on my old CP/M computer at home. Since I saw that some nice new
features are added in version 4.0, I think I should give this
product a chance, if

     - somebody can sell me this product with the manuals

     - the price is okay

Any hints?

                                             Thanks in advance
                                                           Uwe Nass

INTERNET: UNF315@ibm.rhrz.uni-bonn.de (131.220.224.1)
BITNET:   UNF315@DBNRHRZ1.BITNET
From: gomide@FPSP.FAPESP.BR
Newsgroups: comp.os.cpm
Subject: Apologies re: InterMeta course
Date: 29 Sep 92 07:03:26 GMT
Article-I.D.: brfapq.DE487C4F800024C5
Organization: The Internet
X-Unparsable-Date: Mon, 28 Sep 1992 17:45 BSC (-0300 C)

PLEASE DO NOT SEND MONEY !
It is with regret that I perform this task. Dr. Gelson V. Gomes. a
professor of the University of Parana, Brazil, has exceeded this
privileges and announced a eletronic course:

> ____________________________________________________________
>        Mastering INTERNET Tools, Seizing METANET Power -
>                      The InterMeta Course
> ____________________________________________________________

I must apologize for this flagrant breach of network etiquette. Please
be aware that Dr. Gelson had no right to do so, since this is against
the rules of our ANSP network, and also against the Bitnet rules.

PLEASE DO NOT SEND MONEY!
I will not discuss what his motivations were. But his account has been
revoked, and there will be no such course through my network.

With regards,
--
Alberto Courrege Gomide | Fundacao de Amparo `a Pesquisa - (11)831-3357
Software Supervisor     | Rua Pio XI, 1500 - CEP 05468-901 - Sao Paulo
<gomide@fapq.fapesp.br> | FAX (11)261-4167 Telex (11)82014 - Brazil
(ACG8) - .BR Domain Technical Contact. |