From mcintosh@infinity.ccsi.com  Sat Feb  1 02:30:42 1997
From: Gordon McIntosh <mcintosh@infinity.ccsi.com>
Date: Sat Feb  1 02:30:44 PST 1997
Subject: Re: Text on software development for PPC 604
I've read the book "Optimizing PowerPC Code" by Gary Kacmarcik  and I like it
better tan the others I have...
Gordon McIntosh

mcintosh@rtsd.com
http://www.rtsd.com

From raymond@ipnsun5.in2p3.fr  Mon Feb  3 01:02:19 1997
From: DOUET Raymond <raymond@ipnsun5.in2p3.fr>
Date: Mon Feb  3 01:02:25 PST 1997
Subject: tip connection
Hi,

I use "tip" running in a xterm window to connect mv167 and Sun
workstation over RS232. Sometime this connection badly hung up and I
don't see the reason for this problem
I have ever seen this problem in users group mails. Does anyone have any
idea.
	Thanks
-- 
++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++
                                   
    _/_/   _/_/_/_/_/   _/      _/   Raymond Douet	
   _/_/   _/      _/   _/_/    _/   S2I - I.P.N Orsay bt 102   
  _/_/   _/_/_/_/_/   _/  _/  _/   91406 ORSAY FRANCE 
 _/_/   _/           _/    _/_/   email:raymond@ipnsun5.in2p3.fr  
_/_/   _/           _/      _/   phone:(33) 01 69 15 64 41	  
                                fax:(33) 01 69 15 62 58
                                
Institut de Physique Nucleaire (IN2P3)
++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++

From malcolm.cifuentes@nautronix.com.au  Mon Feb  3 01:11:00 1997
From: malcolm.cifuentes@nautronix.com.au (Malcolm Cifuentes)
Date: Mon Feb  3 01:11:03 PST 1997
Subject: MMU Modification under tornado
Hi all,
    Host:   Solaris 2.51
    Target: PowerPC
    OS    : Tornado 1.0 FCS

    I am trying to allow a 256MB window of VME address space to be made 
    accessible through the MMU.

    Under vxworks version 5.2 on a MVM167, I just did the following :-
        Modified the structure PHYS_MEM_DESC sysPhysMemDesc in "sysLib.c" to
        contain the initialisation :-
            {
            (void *) 0x18000000,
            (void *) 0x18000000,
            0x10000000,
            VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE | 
            VM_STATE_MASK_CACHEABLE, VM_STATE_VALID  | VM_STATE_WRITABLE  | 
            VM_STATE_CACHEABLE_NOT
            },

    I have tried the same under tornado for the PPC, but is seems to hang the
    system after the following startup sequence :-
    <snip>
    Loading... 547600
    Starting at 0x100000...
    HANGS RIGHT HERE!

    I assume where it hangs is where it is doing the memory initialisation!

    Has any one seen this before, and how did you get around it!

thanks
-- 
Malcolm Cifuentes 
(
 Nautronix LTD          
 malcolm.cifuentes@nautronix.com.au   
 PH  : +61-09-430-5900  
 FAX : +61-09-430-5901  
)

From cgrames@mdc.com  Mon Feb  3 07:11:36 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Mon Feb  3 07:11:37 PST 1997
Subject:  MMU Modification under tornado -Reply
>Submitted-by malcolm.cifuentes@nautronix.com.au  Mon Feb  3 01:11:00 1997
>Submitted-by: malcolm.cifuentes@nautronix.com.au (Malcolm Cifuentes)
 
>    I am trying to allow a 256MB window of VME address space to be made 
 >   accessible through the MMU.

Malcolm,

If you are using the MVME1604, you need to make the following changes in config.h:

#define	MASTER_MEM_BUS_A32	0x00000000
#define	MASTER_MEM_A32_SIZE	0x10000000

You may also want to consider using the block-address translation (BAT) registers to map your
VME space instead of page table entries.  The page table entries for 256 MB of VME space
consume 2 MB of memory.  Let me know if you want more info.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From fbh@vlsi9.gsfc.nasa.gov  Mon Feb  3 09:02:55 1997
From: Francis Hallahan <Francis.Hallahan@gsfc.nasa.gov>
Date: Mon Feb  3 09:03:01 PST 1997
Subject: Re: MMU Modification under tornado
>Submitted-by malcolm.cifuentes@nautronix.com.au  Mon Feb  3 01:11:00 1997
>Hi all,
>    Host:   Solaris 2.51
>    Target: PowerPC
>    OS    : Tornado 1.0 FCS
>
>    I am trying to allow a 256MB window of VME address space to be made
>    accessible through the MMU.
>
>    Under vxworks version 5.2 on a MVM167, I just did the following :-
>        Modified the structure PHYS_MEM_DESC sysPhysMemDesc in "sysLib.c" to
<Snip>
>    I have tried the same under tornado for the PPC, but is seems to hang the
>    system after the following startup sequence :-
>    <snip>
>    Loading... 547600
>    Starting at 0x100000...
>    HANGS RIGHT HERE!
>
>    I assume where it hangs is where it is doing the memory initialisation!
>
>    Has any one seen this before, and how did you get around it!
>
>thanks
>--
>Malcolm Cifuentes
> Nautronix LTD

Malcolm,

Yes, I've seen this.  I have not been able to create a VME window larger
than 64Meg.  I did do some tracing through usrConfig.c and found the
hang occurs during a call to usrMmuInit().  The source for usrMmuInit()
is in  /vw.../src/config/usrMmuInit.c; however, I have not had time
to try debugging this.

Hope this helps,
Frank Hallahan

---------------------------------------------------------------------------
| Frank Hallahan                            |  Hallahan@gsfc.nasa.gov     |
|   Software Environment Leader - Code 521  |  fbh@vlsi.gsfc.nasa.gov     |
| Computer Sciences Corporation             |                             |
| at Nasa Goddard Space Flight Center       |  Phone (301) 286 7064       |
---------------------------------------------------------------------------

From rstelzer%ims.fhg.de%sonja.ims.fhg.de@ims.fhg.de  Tue Feb  4 07:32:02 1997
From: Rainer Stelzer <rstelzer@ims.fhg.de>
Date: Tue Feb  4 07:32:04 PST 1997
Subject: 1394 High Performance Serial Bus Driver
Hi there,

first I want to thank all the guy's who give me 
suggestions to solve my WindView problem. 
(the problem was the TPU-code).

Now a further question:
I'm looking for a device-driver for the IEEE1394
high performance serial bus. We want to use the 
chipset TSB12C01A/TSB11C01 from Texas Instruments.
Has somebody allready written driver code for such
a device. We need a PC-Card (PCI or ISA) to talk with
our system, too.

thanks in advance !

rainer 

--

**********************************************************************
Fraunhofer Institut f|r Mikroelektronische Schaltungen und Systeme
Abteilung SAT
Rainer Stelzer 
Finkenstra_e 61
47057 Duisburg
Tel.  0203/3783-238 
email rstelzer@ims.fhg.de
**********************************************************************

From daemon@csg.lbl.gov  Wed Feb  5 04:00:18 1997
From: daemon@csg.lbl.gov
Date: Wed Feb  5 04:00:20 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Wed Feb  5 04:00:16 PST 1997

        Subject: Re: VxWorks 5.3 kernel size ?
        Subject: US, NY, Syracuse--Job:Software Engineer, Embedded Systems
        Subject: Proper use of malloc()
        Subject: SLIP problems
        Subject: Re: invisible static variables

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: VxWorks 5.3 kernel size ?
Date: Sun, 26 Jan 1997 22:39:09 -0800
From: dfigueroa@tst.com (David Figueroa)
Organization: Torrey Science Corp
Message-ID: <dfigueroa-2601972239090001@news2.cts.com>
References: <32E968EA.8A0@z9.com>

In article <32E968EA.8A0@z9.com>, geo@z9.com wrote:

> For a 68332 target, can someone tell me approx how big the kernel is ?
> For this application, networking support is not required.
> 
> Also, it was suggested to me that a build for debugging would require
> much more target memory than one without debugging information. I can
> see that perhaps -g turns off some code optimization, but other than
> that why should the target care about debug info ? Is the debug info
> actually downloaded to the target ?
> 
> Thanks for any pointers or insight into the above.

I have experience with the '302, and have spent a lot of time trying to
shrink the kernel size.  You will be hard pressed to get it under 80K. 
But 80K is very possible (this includes the agent and most needed
libraries like semLib, memLib and msgQLib.  As far as debugging, you have
to preallocate memory to be used by the debug agent in advance.  This is
used mainly for downloading code.  If your code is built into rom, this is
unnecessary, and all your ram is available.

Wind River really needs to address kernel size to remain competetive.  I
have heard (from sales people) that wrs already has very tiny kernels, but
they are not publicly available.

good luck

dave

- -- 
 |  David Figueroa
- -+----------------------------------
 |  Torrey Science Corporation
 |  10065 Barnes Canyon Rd
 |  San Diego, CA  92121
 |
 |  (619) 552-1052
 |  (619) 552-1056 (fax)

---------------------------

Newsgroups: comp.os.vxworks
Subject: US, NY, Syracuse--Job:Software Engineer, Embedded Systems
Date: 4 Feb 1997 14:58:49 GMT
From: chthibault@aol.com
Organization: AOL http://www.aol.com
Message-ID: <19970204145800.JAA07401@ladder01.news.aol.com>

Leybold Inficon, Inc., located in central New York state, is looking for a
Software Engineer responsible for developing and maintaining real-time,
embedded software to control the operation of analytical instrumentation,
acquire data, and transfer the data to other tasks or processors for
subsequent processing. This position reports to the HAPS Software Manager.
The successful candidate must be an experienced, self-motivated individual
with strong communications and team skills, capable for working with
minimal
supervision.

Minimum educational and work experience is a BS in computer science,
electrical engineering, or related technical discipline, with at least 5
years experience or an advanced degree with 3 years experience.

Technical experience is required in the following areas:
- - Real-Time programming including data acquisition, instrument control,
    and/or signal processing.
- - Embedded systems programming, including experience developing software
    where speed, memory and power consumption constraints are critical.
- - Multi-Task programming, including familiarity with such issues as
    inter-task  communication, multi-task debugging, and parent-child
    task relations.
- - Extensive experience in C and some experience in assembly language
    are required.

Experiance in the following areas would be helpful:
- - Experience with C++ or other object oriented languages would be a plus.
- - Scientific Programming experience and/or Gas Chromatography and
    Mass Spectrometry would be a plus.
- - Experience with various real time operating systems and kernels
    would be helpful (especially VxWorks).
- - Experience writing and debugging device drivers would also be helpful.

Please send resumes and cover letters, with salary requirements to:

Leybold Inficon, Inc.
Human Resources, Dept CT
2 Technology Place
E. Syracuse NY 13057
========================================================================
Charlie Thibault                Leybold Inficon, Inc
ChThibault@aol.com              2 Technology Place
(315)434-1268                   E. Syracuse NY 13057

Charlie Thibault                Leybold Inficon, Inc
ChThibault@aol.com        2 Technology Place
(315)434-1268                 E. Syracuse NY 13057

---------------------------

Newsgroups: comp.os.vxworks
Subject: Proper use of malloc()
Date: 4 Feb 1997 14:51:07 GMT
From: plward@ll.mit.edu (paula l ward)
Organization: MIT Lincoln Laboratory
Message-ID: <5d7icr$bai@llnews.ll.mit.edu>
Sender: plw@bart (paula l ward)

Hello, I'm developing my first system under VxWorks and I'm using a VME167
target and Tornado running on Solaris.

I'm unclear on the proper use of malloc. I want to allocate some memory
and it seems pretty straightforward but I think I'm missing some basic
information.

According the the programmer guide, malloc() is supposed to return a pointer 
to the memory space but when I do:

...
short *ptr;
...
ptr = malloc(32);
...

I get a compile warning that the assignment makes a pointer from an integer
without a cast. It seems to get allocated ok at run time and I can write to
it but I think I'm doing something wrong here. (BTW, does VxWorks zero the
memory or do I need to do that?)

After the memory is allocated, what is the proper way to use it? I found
the documentation lacking examples for this. What I really want to do is
reserve a block of memory for a structure and another for an array. I'd
like to reference the array and structure in the normal ways but how do I
get them assigned to the specified memory blocks? If I define the array
separately, the memory seems to already be allocated elsewhere for it. Am
I trying to combine too many things and oversimplify/compilcate this?

Thanks in advance.

Paula 

---------------------------

Newsgroups: comp.os.vxworks
Subject: SLIP problems
Date: Tue, 04 Feb 1997 17:36:11 +0100
From: Maureen Jett <mjett@gwdg.de>
Organization: MPI fuer biophysikalische Chemie
Message-ID: <32F7657B.21FC@gwdg.de>
Reply-To: mjett@gwdg.de

Hello,

We are using Solaris 2.5 and are trying to use SLIP to talk to our V17
though the serial port.  When I tried to attach using the following
command:

slip-attach -d /dev/ttya -l 134.76.211.40 -v 134.76.211.50 -m
255.255.0.0

I got the following error:

slip-attach[321]: ioctl(I_PUSH) slipdlpi: Invalid argument

We are using solaris-slip-7 obtained from
ftp://ftp.ece.wisc.edu/pub/slip. I realize this isn't really a vxWorks
question, but I thought maybe someone in this group might have run into
this problem.  It's also very likely that I'm doing something stupid,
since I've never used SLIP before.

TIA,
Maureen
- -- 
Maureen M. Jett
Max Planck Institute for Biophysical Chemistry
ZEWEG-EDV Group, 051
tel:   49-551-201-1414       FAX: 49-551-201-1011
email: mjett@gwdg.de

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: invisible static variables
Date: 30 Jan 1997 22:15:15 GMT
From: "Robert Myhre" <rob@alexis.com>
Organization: Alexis Logic Corporation
Message-ID: <01bc0efa$ef7709a0$0cd2b8c7@PCRAM.alexis.com>
References: <5cqjui$5a8@bogus.cts.com>

Lee Slaughter <lees@cts.com> wrote in article <5cqjui$5a8@bogus.cts.com>...
> Why are static variables invisible symbols to vxWorks?
> Impossible to debug.
> 
> for example, a .c file:
> ......
> #include ...
> #define ...
> 
> int x;
> 
> foo()
> {
> ...
> }
> ...
> 
> in this case x is visible.
> if i qualify it with 'static' it is unknown.
>

This seems reasonable to me.  K & R's "The C Programming  Language" says
that if an external variable is declared static, it's scope is limited to
the source file in which it is declared. 
 

---------------------------

End of New-News digest
**********************

From gverdun@fibertek.com  Wed Feb  5 07:56:50 1997
From: "Gustavo H. Verdun" <gverdun@fibertek.com>
Date: Wed Feb  5 07:56:53 PST 1997
Subject: Anyone gotten VME Interrupts to work on Tornado for PowerPC?
I'm using two Radstone boards to write a simple periodic interrupt handler
and have not had luck in getting it to work. Has anyone done this before
and could provide me with sample code to do this?

Both Tornado and Radstone have vague documentation on this.

Thanks,

Gustavo H. Verdun
Senior Systems Engineer
FIBERTEK, INC.           \|/
--------------------------*--
510 Herndon Parkway      /|\
Herndon, Virginia  20170-5225   
Voice:   (703) 471-7671
Fax:     (703) 471-5806
http://www.fibertek.com

From cgrames@mdc.com  Wed Feb  5 08:38:57 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Wed Feb  5 08:38:59 PST 1997
Subject:  comp.os.vxworks newsdigest -Reply
>According the the programmer guide, malloc() is supposed to return a pointer  to the memory
>space but when I do:
>
>... short *ptr;
>... ptr = malloc(32);
>...
>
>I get a compile warning that the assignment makes a pointer from an integer without a cast. It
>seems to get allocated ok at run time and I can write to it but I think I'm doing something wrong
>here. (BTW, does VxWorks zero the memory or do I need to do that?)

Paula,

malloc returns a void pointer (you have to include stdlib.h).  To get the compiler to not complain,
you need to cast it to your target type.  In your example:

	ptr = (short *)malloc(32);

malloc does not zero memory.  If you want that capability, use calloc.  For your example (assuming
short is 16 bits):

	ptr = (short *)calloc(16,sizeof short);

>After the memory is allocated, what is the proper way to use it? I found the documentation lacking
>examples for this. What I really want to do is reserve a block of memory for a structure and
>another for an array. I'd like to reference the array and structure in the normal ways but how do I
>get them assigned to the specified memory blocks? If I define the array separately, the memory
>seems to already be allocated elsewhere for it. Am
>I trying to combine too many things and oversimplify/compilcate this?

If you want to allocate structures, you do something like:

	struct mystruct {
		int field1;
		short field2;
		char field3[2];
	}

	struct mystruct *myptr;

	myptr = (struct mystruct *)calloc(1,sizeof struct mystruct);
	myptr->field1 = 1;
	myptr->field2 = 2;
	myptr->field3[0] = 3;
	myptr->field3[1] = 4;

Arrays are even simpler.  In your example, ptr[0] accesses the first element, ptr[1], the second, etc.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From Phil_Watson@ns1.masirv.com  Wed Feb  5 09:32:34 1997
From: Phil_Watson@ns1.masirv.com (Phil Watson)
Date: Wed Feb  5 09:32:36 PST 1997
Subject: Re: Proper use of malloc()
> Hello, I'm developing my first system under VxWorks and I'm using a VME167
> target and Tornado running on Solaris.
>
> According the the programmer guide, malloc() is supposed to return a pointer 
> to the memory space but when I do:
> 
> ...
> short *ptr;
> ...
> ptr = malloc(32);
> ...
> 
> I get a compile warning that the assignment makes a pointer from an integer
> without a cast. It seems to get allocated ok at run time and I can write to
> it but I think I'm doing something wrong here. (BTW, does VxWorks zero the
> memory or do I need to do that?)

Check the malloc prototype that you are using. Perhaps you are using
the Solaris prototype instead of the Tornado header. Make sure your
include directives include the VxWorks header directory, and that you
use -nostdinc to the GNU compiler (if that's what you're using) so
that the compiler doesn't look in /usr/include for you when you don't
want it to. Your usage of malloc() looks fine otherwise.

No, VxWorks does NOT zero out malloc'd memory. Do it yourself if you
need it done. 

As far as use of malloc'd memory, see a good C programming guide.
Check the section on pointers and arrays. 

----
Philip Watson
Telecommunications Lead

Phil_Watson@masirv.com
Matsushita Avionics Systems Corporation
15253 Bake Parkway
Irvine, California, 92618  U.S.A.

From Phil_Watson@ns1.masirv.com  Wed Feb  5 09:37:31 1997
From: Phil_Watson@ns1.masirv.com (Phil Watson)
Date: Wed Feb  5 09:37:33 PST 1997
Subject: Re: comp.os.vxworks newsdigest
> Lee Slaughter <lees@cts.com> wrote in article <5cqjui$5a8@bogus.cts.com>...
> > Why are static variables invisible symbols to vxWorks?
> > Impossible to debug.
> > 
> > for example, a .c file:
> > ......
> > #include ...
> > #define ...
> > 
> > int x;
> > 
> > foo()
> > {
> > ...
> > }
> > ...
> > 
> > in this case x is visible.
> > if i qualify it with 'static' it is unknown.
> >
> 
> This seems reasonable to me.  K & R's "The C Programming  Language" says
> that if an external variable is declared static, it's scope is limited to
> the source file in which it is declared. 

To reference static variables, use the first parameter to the ld()
command: 
         0 - Add global symbols to the system symbol table.
         1 - Add global and local symbols to  the  system  symbol table.
        -1 - Add no symbols to the system symbol table.

For example,
	ld 1 < debug.o

Of course, this only works if you are downloading code. If your code
is burned in ROM with the kernel, I don't know how to do this.

----
Philip Watson
Telecommunications Lead

Phil_Watson@masirv.com
Matsushita Avionics Systems Corporation
15253 Bake Parkway

From bcarlson@drao.nrc.ca  Wed Feb  5 09:51:20 1997
From: Brent Carlson <bcarlson@drao.nrc.ca>
Date: Wed Feb  5 09:51:26 PST 1997
Subject: SCSI disk corruption problem.
Hello VxWorks users:

I'm a new addition to this exploder and I have a problem that has 
puzzled me for some time now.  I'm running VxWorks 5.2 on Radstone
PME 68-41 CPUs and "occaisionally" I get a disk corruption problem
when writing to the local SCSI disk which has a VxWorks DOS file
system (long name support, NFS mounted).  It seems that I can write
and read hundreds of Mbytes over several weeks and then boom, all of
a sudden the application that tried to write data to a file in some
directory goes into never-never land (spy indicates that the task
uses almost 100% CPU).  So, I reboot the disk and try, via NFS from
a Sun, to write to a file in the directory which was just being written
to and bang, the VxWorks NFS server is history (100% CPU usage ...).
This would seem to indicate that the drive is corrupted (but only in
the directory where the failure occured).
I recently had this happen on several CPUs at about the same time
(each CPU has its own disk).

I'm split down the middle as to whether this is a hardware or software
problem (or termites).  My drives are 2Gb and 4Gb Fujitsu M2932 and
M2934 and I have every confidence that they are not the problem (have
one running flawlessly on a Sun for the last year).  The whole system
is on a dedicated UPS and my rack power supplies are made by Todd.

After a corruption, re-making the file system fixes the disk (unfortunately
all of my data is gone though).

Has anybody seen anything similar to this?

Any help would be appreciated.

Brent.

From YF.Siu@eng.efi.com  Wed Feb  5 13:09:32 1997
From: "Yuet Fung Siu" <YF.Siu@eng.efi.com>
Date: Wed Feb  5 13:09:34 PST 1997
Subject: Re:  SCSI disk corruption problem.
>and read hundreds of Mbytes over several weeks and then boom, all of
>a sudden the application that tried to write data to a file in some
>directory goes into never-never land (spy indicates that the task
>uses almost 100% CPU).  So, I reboot the disk and try, via NFS from

This looks very much like the 5.2 dosFsLib problem that I'd reported
to WRS two years ago, when they first released 5.2. The in-core hash
table used by dosFsLib was corrupted, due to a bug in dosFsLib. The
disk itself may not be corrupted. You may be able to use it with
VxWorks 5.1, which doesn't use the hash table.

If you've the source license, I can probably email you the fix. Or
you can talk to WRS tech support, ask for a patch for SPR 4418. I
am really surprised that they haven't fixed this fatal bug in two
years' time.

Good Luck,

YF

From fbh@vlsi9.gsfc.nasa.gov  Wed Feb  5 16:38:09 1997
From: Francis Hallahan <Francis.Hallahan@gsfc.nasa.gov>
Date: Wed Feb  5 16:38:11 PST 1997
Subject: Re:  SCSI disk corruption problem.
>>Submitted-by bcarlson@drao.nrc.ca  Wed Feb  5 09:51:20 1997
>>Submitted-by: Brent Carlson <bcarlson@drao.nrc.ca>
>
>>and read hundreds of Mbytes over several weeks and then boom, all of
>>a sudden the application that tried to write data to a file in some
>>directory goes into never-never land (spy indicates that the task
>>uses almost 100% CPU).  So, I reboot the disk and try, via NFS from
>
>Submitted-by YF.Siu@eng.efi.com  Wed Feb  5 13:09:32 1997
>Submitted-by: "Yuet Fung Siu" <YF.Siu@eng.efi.com>
>
>This looks very much like the 5.2 dosFsLib problem that I'd reported
>to WRS two years ago, when they first released 5.2. The in-core hash
>table used by dosFsLib was corrupted, due to a bug in dosFsLib. The
>disk itself may not be corrupted. You may be able to use it with
>VxWorks 5.1, which doesn't use the hash table.
>
>If you've the source license, I can probably email you the fix. Or
>you can talk to WRS tech support, ask for a patch for SPR 4418. I
>am really surprised that they haven't fixed this fatal bug in two
>years' time.
>

I also had many problems with the early 5.2 NFS in May-Nov 95 and am
also surprised to find anyone else still experiencing it.  I think
someone using vxWorks 5.3 just reported this to the exploder.

I had TSR#s 23185 (100% CPU on task tNfsdX) and 24452 ( corruption
of large file, 1.3Mb, on >2Gb disk) and was assigned SPR #4672.
Yuet Fung Siu is right! you need the patch for the 100% CPU problem.

I am still waiting for an answer to TSR #24452/SPR #4672 (not really
its only been over a year ;-), but in the meantime I set the number of
NFS servers to 1.  The nfs daemons apparently don't set any file locks
and if the DOS cluster size(16k in my case) is larger than the NFS
block size(8k) a race condition may occur when 2 daemons try to write
to the same file at the same time.

To set 1 NFS Daemon (default is 4)  add the line

    nfsdNDervers = 1;  /* limit number of NFS Servers */

somewhere in vxWorks, before the network is initialized.  I
like to put it in sysHwInit in sysLib.c, but usrConfig.c is
probably a better location.

I hope this helps you and others.
Frank Hallahan

/-------------------------------------------------------------------------\
| Frank Hallahan                    | at                                  |
| Computer Sciences Corporation     | Nasa Goddard Space Flight Center    |
| 7700 Hubble Drive                 | Code 521                            |
| Greentec II,  Dept. 522           | Greenbelt, MD  20771                |
| Lanham-Seabrook, MD 20706         |                                     |
|                                   |  Hallahan@gsfc.nasa.gov             |
|  fhallaha@csc.com                 |  fbh@vlsi.gsfc.nasa.gov             |
|  fbh@niccolo.gsfc.nasa.gov        |                                     |
|                                   |  Phone (301) 286 7064               |
|  Phone (301) 794 2030             |  Fax   (301) 286 1768               |
\-------------------------------------------------------------------------/

From froeber@bbn.com  Wed Feb  5 18:49:59 1997
From: Fred Roeber <froeber@bbn.com>
Date: Wed Feb  5 18:50:02 PST 1997
Subject: Re: SCSI disk corruption problem.
On Wed, 5 Feb 1997, "Yuet Fung Siu" <YF.Siu@eng.efi.com> answered a question:

> >and read hundreds of Mbytes over several weeks and then boom, all of
> >a sudden the application that tried to write data to a file in some
> >directory goes into never-never land (spy indicates that the task
> >uses almost 100% CPU).  So, I reboot the disk and try, via NFS from
> 
> This looks very much like the 5.2 dosFsLib problem that I'd reported
> to WRS two years ago, when they first released 5.2. The in-core hash
> table used by dosFsLib was corrupted, due to a bug in dosFsLib. The
> disk itself may not be corrupted. You may be able to use it with
> VxWorks 5.1, which doesn't use the hash table.

We ran into a similar problem recently and got a patched dosFsLib.o for
VxWorks 5.2 from WRS support that seemed to fix the problem.  Seems first
thing you want to try is asking them for the fixed version of the file.
I doubt you need a specific SPR number to reference it.   Fred

   |     Fred J Roeber,  BBN Systems & Technologies     |
   |   4 John Clarke Road   Middletown, RI  02842-5202  |
   |         froeber@bbn.com     401-848-3548           |

From cgrames@mdc.com  Wed Feb  5 20:14:34 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Wed Feb  5 20:14:36 PST 1997
Subject:  Redirecting Output to a Different Board
Hi all,

I am evaluating an application that would be using multiple PowerPC targets in a single VME
chassis with a console attached to processor 0 only.  In this application, I would like to get any
output on standard output/error, including any VxWorks-generated abort messages, redirected to
that one console.  I know that ioGlobalStdSet will redirect standard output/error to another device,
but I can't think of any way to make it a device on another board.

Has anyone else run into this requirement, and, if so, what solution did you find?

Thanks in advance.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From daemon@csg.lbl.gov  Thu Feb  6 04:00:26 1997
From: daemon@csg.lbl.gov
Date: Thu Feb  6 04:00:45 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Thu Feb  6 04:00:23 PST 1997

        Subject: Re: comp.os.vxworks newsdigest
        Subject: Re: invisible static variables
        Subject: Re: OSI TRANSPORT layer
        Subject: Re: Big disks on Vxworks
        Subject: Re: The year 2000 and VxWorks
        Subject: CD-R.Media.for.Sale.
        Subject: high-speed mass storage, Fibre Channel, VME
        Subject: Re: The year 2000 and VxWorks
        Subject: Re: ROM Expansion card for PCs
        Subject: Re: Device Driver's Class
        Subject: syntax completion - a bad thing?
        Subject: DHCP support for Tornado 1.0
        Subject: visionsoft development tools - performance analysis, optimization, runtime error checking, coverage in a single pass
        Subject: Re: Proper use of malloc()
        Subject: BIND/dns resolver for vxworks?
        Subject: Re: Need Simple GZIP Function
        Subject: Re: ethernet drivers
        Subject: Re: syntax completion - a bad thing?
        Subject: Re: Information on MPC860/821 Device Drivers
        Subject: Tornado - VxWorks subroutine calls

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: comp.os.vxworks newsdigest
Date: Fri, 31 Jan 1997 01:34:27 +0000
From: "Dale M. Rickman" <daler@erols.com>
Organization: Erol's Internet Services
Message-ID: <32F14C14.5AC5@erols.com>
References: <9701281741.AA27455@trojan.masirv.com>
Reply-To: daler@erols.com

A close relative of mine works for Microtec.  She tells me that Microtec
has not only had per-task debugging with XRAY, a superbly stable
graphical debug environment, a streams based networking solution for
VRTX (with dynamic routing and multicast available for years) and that
they invented the "Tornado" architecture years ago (but theirs is called
Spectra) and since it is 3 years old, IT actually works.  And embedded
compiler features including linking of C++ and C code seamlessly,
template debugging support, packed structure support, align keyword
support, init data (rom to ram copy support), etc.  Plus task-per-window
debugging built into the debugger.  

She complains that the only reason that WindRiver wins is because of
their marketing hype, that in any real technical evaluation Microtec
wins hands down.

Any comments ?

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: invisible static variables
Date: Fri, 31 Jan 1997 01:40:25 +0000
From: "Dale M. Rickman" <daler@erols.com>
Organization: Erol's Internet Services
Message-ID: <32F14D78.4D4A@erols.com>
References: <5cqjui$5a8@bogus.cts.com> <01bc0efa$ef7709a0$0cd2b8c7@PCRAM.alexis.com>
Reply-To: daler@erols.com

Or you could just use XRAY, where this stuff "just works", and you don't
even have to RTFM.   And you don't have to worry about turning on
optimization in your code.  This just works as well.
Apparently,
according to my sources.

Why are static variables invisible symbols to vxWorks?
> Impossible to debug.
> 
> for example, a .c file:
> ......
> #include ...
> #define ...
> 
> int x;
> 
> foo()
> {
> ...
> }
> ...
> 
> in this case x is visible.
> if i qualify it with 'static' it is unknown.
>

This seems reasonable to me.  K & R's "The C Programming  Language" says
that if an external variable is declared static, it's scope is limited
to
the source file in which it is declared.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: OSI TRANSPORT layer
Date: Fri, 31 Jan 1997 03:47:23 +0000
From: "Dale M. Rickman" <daler@erols.com>
Organization: Erol's Internet Services
Message-ID: <32F16B41.1CCF@erols.com>
References: <5bgeev$3ai@ilex.FernUni-Hagen.de> <5cok29$qui@krypto.zippo.com>
Reply-To: daler@erols.com

or you could check out open networks engineering www.one.com

Of course, ONE (CMIP, GDMO,etc ) is owned by Microtec.  But then,
Epilogue (SNMP, MIB)   is owned by ISI.......

So, if an Epilogue solution doesn't bother you, and ONE one shouldn't
either :-)

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Big disks on Vxworks
Date: 5 Feb 1997 13:58:20 GMT
From: "Adam Baker" <adam_baker@roke.co.uk>
Organization: Roke Manor Research
Message-ID: <01bc136c$77fce770$e2c076c1@aabpc>
References: <01bc0efb$85d46280$0cd2b8c7@PCRAM.alexis.com>

Robert Myhre <rob@alexis.com> wrote in article
<01bc0efb$85d46280$0cd2b8c7@PCRAM.alexis.com>...
> I'm trying to use a 4 GB disk with DOS formatting, but I get an error
when
> I call dosFsMkfs. It doesn't seem to have a problem at 3 GB. What's the
> limit?
> 
I spent a long time playing with this and eventually concluded that to get
the maximum possible size is 8323072 512 byte sectors or about 3.97 GB.
This is because one of the parameters to dosFsConfigInit is a signed char
and hence limited to 127.

I filed a TSR to try and confirm if this is the limitation and Wind River
claimed much larger sizes are possible. I replied that that wasn't my
experience and haven't heard anything from them since.

There is a second issue if you are booting from SCSI disk. This falls over
with a somewhat smaller disk, around 2GB IIRC. I think this is down to how
much memory is available at boot time but as its such a pain to debug boot
rom problems I settled for using a small boot partition and then after
booting configuring the rest of the disk as a much larger partition.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: The year 2000 and VxWorks
Date: Wed, 05 Feb 1997 10:32:18 -0800
From: Dave Bott <dmb@cetia.com>
Message-ID: <32F8D232.2847@cetia.com>
References: <5d57tb$5u2@llnews.ll.mit.edu> <5d8ksa$gth@bcarh8ab.bnr.ca>

Pierre Pierre Blais wrote:
> 
> In article <5d57tb$5u2@llnews.ll.mit.edu>,
> paula l ward <plward@ll.mit.edu> wrote:
> >
> >Does anyone know how VxWorks will handle the transition from
> >December 31, 1999 to January 1, 2000?
> 
>         We asked this question of WRS and the answer was that VxWorks
>         is Y2K compliant.
> <snip>
>
> >What algorithms are used to determine the date? Since the year 2000
> >is a leap year (and is divisible by 400), does anyone know if this
> >will be handled correctly?

Here is some code I tried to look at what vxWorks thinks.
According to my sparc, there is a February 29th in 2000, but not
according to vxWorks - there's a March 0 instead !

#include "vxWorks.h"
#include "stdio.h"
#include "taskLib.h"
#include "time.h"
#include "private/timeP.h"

void t2000 (int year);

/* t2000 - year 2000 leap year test code
 *
 * set the time to 10 seconds before midnight on Feb 28th for the year
 * provided as a parameter (97 = 1997, 100 == 2000) and test how the
 * rollover works to Feb 29th or March 1st.
 * It appears to show that the year 2000 has a March 0...
 */

void t2000
    (
    int year
    )
    {
    time_t result;
    time_t x;
    char *y;
    struct tm tm_time;
    char zoneBuf[sizeof (ZONEBUFFER)];
    IMPORT void __getZoneInto (char *, int, TIMELOCALE *);
    IMPORT TIMELOCALE * __loctime;
    IMPORT sysClkRateGet ();
    struct timespec curTmSpec;

    /* setup current time as if from a time of day clock */

    tm_time.tm_sec  = 50;
    tm_time.tm_min  = 59;
    tm_time.tm_hour = 23;
    tm_time.tm_mday = 28;
    tm_time.tm_mon  = 1;
    tm_time.tm_year = year;

    result = mktime (&tm_time);

    /* mktime returns localtime, convert back to GMT */

    if (tm_time.tm_isdst)
        result -= SECSPERHOUR;

    __getZoneInfo (zoneBuf, TIMEOFFSET, __loctime);
    result -= atoi (zoneBuf) * SECSPERMIN;

    curTmSpec.tv_sec = result;
    curTmSpec.tv_nsec = 0;

    /* set clock time (POSIX) */

    clock_settime (CLOCK_REALTIME, &curTmSpec);

    /* Loop displaying the time (roughly) every second */

    while (1)
    {
    taskDelay (sysClkRateGet ());
    x = time ((time_t *)NULL);
    y = ctime (&x);

    printf ("Time is %s\n", y);
    }

    }

Here's my output for the year 2000:
Running on a Cetia CVME604 100Mhz PowerPC 604 vxWorks 5.3)

- -> t2000 100
...
Time is MON FEB 28 23:59:57 2000
Time is MON FEB 28 23:59:58 2000
Time is MON FEB 28 23:59:59 2000
Time is TUE MAR 00 00:00:00 2000
Time is TUE MAR 00 00:00:01 2000
...

For 1995, I get :
- -> t2000 95 
...
Time is TUE FEB 28 23:59:57 1995
Time is TUE FEB 28 23:59:58 1995
Time is TUE FEB 28 23:59:59 1995
Time is WED MAR 01 00:00:00 1995
Time is WED MAR 01 00:00:01 1995
...

For 1996, I get :
- -> t2000 96
...
Time is WED FEB 28 23:59:57 1996
Time is WED FEB 28 23:59:58 1996
Time is WED FEB 28 23:59:59 1996
Time is THU FEB 29 00:00:00 1996
Time is THU FEB 29 00:00:01 1996
...

Maybe I did something wrong, but it looks like there's a problem with
the year 2000 !

Dave
- -- 
Dave Bott : Customer Support Engineer  Cetia Inc.
Tel +1 408 247 2430                    45, Cabot Avenue, Suite 201
Fax +1 408 247 5132                    Santa Clara CA 95051, USA
dmb@cetia.com                          #include <standard_disclaimer.h>

---------------------------

Newsgroups: comp.os.vxworks
Subject: CD-R.Media.for.Sale.
Date: 2 Feb 1997 13:08:43 GMT
From: oure@cmfadljf.com
Organization: The.Copy.Cat Shop.
Message-ID: <5d23kr$jct@mtinsc04.worldnet.att.net>

We have the following CD-R media for sale.

Brand: Pioneer
Type: Printable Media (Surface is blank for printing or labels)
Type: Gold on Green
Size: 74 min (650 mb)
Price: 6.99
Minimum Order: 10

Brand: Maxell
Type: Gold on Gold
Size: 74 min (650 mb)
Price: 6.55
Minimum Order: 10

Brand: TDK
Type: Gold on Green
Size: 74 min (650 mb)
Price: 6.55
Minimum Order: 10

Brand: Hewlett Packard
Type Gold on Gold
Size: 74 min (650 mb)
Price: 7.15
Minimum Order: 10
Lifetime Warranty

The Copy Cat Shop has all your CD duplication, replication, recorders,
software, and media needs.

If you have any questions or comments feel free to call.

Cordially,

			The Copy Cat Shop
			213-650-1680
			213-650-9110 Fax

		

---------------------------

Newsgroups: comp.os.vxworks
Subject: high-speed mass storage, Fibre Channel, VME
Date: 27 Jan 1997 18:57:06 GMT
From: lsrsearch@aol.com (LSRsearch)
Organization: AOL http://www.aol.com
Message-ID: <19970127185700.NAA12421@ladder01.news.aol.com>

I am looking for people with knowledge of high-speed mass storage
networks.  Specifically I am interested in your opinion on the future
applications for fibre channel to high-speed mass storage networks.  Also,
do you see any application to the VME market.  Any referrals to experts in
this area are greatly appreciated.
Thanks,
Lisa Solomon
LSRsearch@aol.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: The year 2000 and VxWorks
Date: Wed, 05 Feb 1997 16:24:02 -0600
From: Steve Strauss <steves@lmtas.lmco.com>
Organization: LMTAS News Server
Message-ID: <32F90882.49A9@lmtas.lmco.com>
References: <5d57tb$5u2@llnews.ll.mit.edu>

paula l ward wrote:
> 
> Does anyone know how VxWorks will handle the transition from
> December 31, 1999 to January 1, 2000?
> 
> What algorithms are used to determine the date? Since the year 2000
> is a leap year (and is divisible by 400), does anyone know if this
> will be handled correctly?
> 
> Thanks.
> 
> Paula Ward

At the Wind River Users Conference recently, they told us that
vxWorks does not know or care about the date, so the transition to
2000 will not affect it.

Steve Strauss

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: ROM Expansion card for PCs
Date: Mon, 03 Feb 1997 10:05:13 -0700
From: Michael Mirabile <mmirabile@dayna.com>
Organization: Dayna Communications
Message-ID: <32F61AC9.64B1@dayna.com>
References: <32EE4818.1CFBAE39@xyplex.com>

Roger,

Check out Circuit Specialists at http://www.cir.com
Look in "Flash EPROM/RAM/ROM Disk Cards under the "Industrial Computers"
section.

Good luck.

- ---

Roger Cruz wrote:
> 
> I'm researching the use of VxWorks on a regular IBM-compatible PC for
> an embedded application.  I understand that if I like to have VxWorks on
> a ROM, I will need to get an expansion ROM card.  I'm wondering if
> anyone has done something similar to this.  If so, can you give me
> references to ROM card manufacturers (WRS mentions Blunk Microsystems)?
> Can they be Flash ROMs or only EPROMs?  What's the maximum size
> allowed?  I assume these cards plug in to an ISA slot.  Correct?
> 
>  Another thought I had was to use the boot-rom sockets provided with NIC
> cards.  Has anyone used this approach?  Is there enough space to hold
> the boot code?  a VxWorks image?  The PCI spec also allows for expansion
> roms, is there a card that has just a EPROM or flash ROM?
> 
>   Thanks in advance.
> 
> --
> Roger Cruz         cruz@xyplex.com, rcruz@xyplex.com, rrc@xyplex.com
> Whittaker Xyplex                                    w: 508-952-4783
> 295 Foster Street                                    f: 508-952-5772
> Littleton, MA 01460

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Device Driver's Class
Date: Tue, 04 Feb 1997 11:21:59 +0100
From: Josef Rabitz <josef.rabitz@sea.ericsson.se>
Organization: Ericsson Austria AG
Message-ID: <32F70DC6.7D08@sea.ericsson.se>
References: <32F10228.136@dskp3.itg.ti.com> <32F4AD8E.3DCB@gdesystems.com>

Michael Levasseur wrote:
> 
> Steven J. Powell wrote:
> >
> > What are people's true opinions about the Device Driver class taught
> > by Wind River?  Is it good class with "lab" time.
> >
> 
> I took the class last July and I thought it was a good class. The
> instructor was knowledgable. There was a lab and plenty of lab
> time. The labs were simple, yet effect examples of implementations
> of Character Drivers, Serial Drivers and Block Drivers.

I think, too, that in general their classes are quite ok.

BUT having heard a VxWorks or Tornado Class before the Device Driver's
Class a part of it is just a repitition (those are the first 2 of
4 days which are rather a presentation of the basics of hardware
programming like polling, interrupt handling, etc.).

the actual device driver stuff is just the other 2 days.
for me 1/3 instead of 2/2 days would have been better.
but probably like in any other class what you really get out depends on
the knowledge you already have.

another thing (which at least Tornado users do not like) is that all
labs are mainly done by using the shell and not Tornado tools.

Josef Rabitz - Ericsson Austria AG

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: syntax completion - a bad thing?
Date: Thu, 06 Feb 1997 08:22:17 +0900
From: Andrew Kelly <andrewk@vsl.com.au>
Organization: Vision Systems
Message-ID: <32F91629.5F9@vsl.com.au>
Reply-To: andrewk@vsl.com.au

Looking at Rational's Apex Ada development environment, I am
worried the inclusion of syntax completion in the "analyser"
(pre-compilation phase).

It seems to me that syntax completion, as a step during 
compilation, is not a good thing as it *repairs* errors 
rather than report them (eg. unpaired begin/ends).  The 
obvious risk being that incorrect code will quite happily be 
"repaired" (very possibly, incorrectly) and will compile 
successfully.

This seems, to me, to be more dangerous than it is useful ...
eg. If you accidentally delete the "end" from a nested "if", 
where does the analyser stuff the "end"?  Indeed, even if it 
gets the placement correct (eg. by inference from the text
indentation) if code statements have been inadvertantly deleted
as well, a clearly erroneous file will compile cleanly.

I believe syntax completion should be available during editting, 
but not automatically employed during compilation.  As far as I
can discover, it cannot be switched off in Apex either.

Has anybody had any experiences with syntax completion that may
confirm or allay my fears?

- --
+===============================================================+
| Andrew Kelly (andrewk@vsl.com.au)                    _  |\    |
| Software Design Engineer                           _/ |_| \   |
| Vision Systems                                    / Vision \  |
| Technology Park                                  / Products \ |
| Adelaide, SA 5095, AUSTRALIA                     \    __    / |
| ph: +61-8-300 4602                                \__/  \__/  |
| fx: +61-8-300 4422                                        v   |
+===============================================================+

---------------------------

Newsgroups: comp.os.vxworks
Subject: DHCP support for Tornado 1.0
Date: Wed, 05 Feb 1997 18:15:28 -0800
From: Scott Slomba <scotts@wrs.com>
Organization: Wind River Systems
Message-ID: <32F93EC0.7068@wrs.com>

Hi,

DHCP is going to be supported in the next release of the networking
stack, BSD 4.4, due out shortly after the Tornado 1.0.1 maintenance
release.  I'm working with some people who are in need of DHCP now.
Does anybody know of a DHCP integration with the current Tornado
1.0 networking stack.

Any information would be greatly appreciated.

Thank you,
Scott

***************************
Scott Slomba
Field Applications Engineer
Wind River Systems
(619)546-2835
scotts@wrs.com

---------------------------

Newsgroups: comp.os.os9,comp.os.qnx,comp.os.vms,comp.os.vxworks
Subject: visionsoft development tools - performance analysis, optimization, runtime error checking, coverage in a single pass
Date: Wed, 05 Feb 1997 10:50:40 -0800
From: Phil Thoren <phil@vsonline.com>
Organization: VisionSoft Inc.
Message-ID: <32F8D680.68D8@vsonline.com>
Reply-To: phil@vsonline.com

Professional C/C++/Java Developers:

VisionSoft has recently developed a runtime analysis and optimization
tool that will analyze the relative and actual execution performance of
your Java and/or C/C++ applications.  The C/C++/Java tool provides
results as follows:

For C/C++ by file, function, class, method, statement and if-clause
True/False degrees of resolution.

For Java by file, class/method, statement and if-clause True/False
degrees of resolution.

Once the analysis is performed the program can automatically or be
directed to optimize your source structure to improve the C/C++
application performance dramatically.

If you are interested in using this tool please send email to
vsinfo@vsonline.com or visit our web site at http://www.vsonline.com and
request an evaluation.

For other tools that are currently released please visit our web site at
http://www.vsonline.com

regards,

VisionSoft

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Proper use of malloc()
Date: Tue, 04 Feb 1997 17:07:48 GMT
From: tfm@sei.cmu.edu
Organization: Software Engineering Institute
Message-ID: <5d7qea$ko3@news.sei.cmu.edu>
References: <5d7icr$bai@llnews.ll.mit.edu>

plward@ll.mit.edu (paula l ward) wrote:

>Hello, I'm developing my first system under VxWorks and I'm using a VME167
>target and Tornado running on Solaris.

>I'm unclear on the proper use of malloc. I want to allocate some memory
>and it seems pretty straightforward but I think I'm missing some basic
>information.

>According the the programmer guide, malloc() is supposed to return a pointer 
>to the memory space but when I do:

>...
>short *ptr;
>...
>ptr = malloc(32);
>...

>I get a compile warning that the assignment makes a pointer from an integer
>without a cast. It seems to get allocated ok at run time and I can write to
>it but I think I'm doing something wrong here. (BTW, does VxWorks zero the
>memory or do I need to do that?)

It sounds like you are missing an include file reference in your
source.  C implicitly defines all functions as returning INT.  You
probably need to include <stdlib.h>.  This will define malloc as
returning a void *.  You will have to cast the result of malloc into
the type of pointer you want to use.

malloc typically does not initialize memory, it only allocates it.
You can initialize allocated memory to zero either by making a call to
bzero following the malloc, or by using calloc instead of malloc

>After the memory is allocated, what is the proper way to use it? I found
>the documentation lacking examples for this. What I really want to do is
>reserve a block of memory for a structure and another for an array. I'd
>like to reference the array and structure in the normal ways but how do I
>get them assigned to the specified memory blocks? If I define the array
>separately, the memory seems to already be allocated elsewhere for it. Am
>I trying to combine too many things and oversimplify/compilcate this?

There is typically no proper way to use it (or rather, it depends on
you application).  Typically, you will have and maintain a pointer to
the allocated space.  This pointer may be of any type (natural or
derived), and all accesses to this memory are made via this pointer.

In terms of what you would like to do,  you can either define an item
of the type you want, in which case the compiler will allocate storage
for the item (either statically, or on the stack, depending on the
system and how you define the item).  Or, you can define a pointer to
the type of item you are interested in, and then use
malloc/calloc/valloc to allocate storage associated with one or more
of the items of the interested type.  In this way, you can create
either a single, dynamically allocated item, or a dynamically
allocated array of items
  ie 
  typedef struct {
   ...
} structure_type;

structure_type *structure_pointer;
structure_type *structure_array_pointer;
...
structure_pointer = (structure_type *)malloc(sizeof(structure_type));

  /* this allocates one of the kind of structure of interest*/

 /* the following would allocate an "array" of 5 items, all accessed
thru a single pointer */
structure_array_pointer = 
  (structure_type *)malloc(5*sizeof(structure_type));

be careful as to how you use these pointers and how you manage them.
It is very easy to either "lose" a pointer, orphaning the memory and
creating a classic "memory leak" resource problem, or free the memory
and then reference the pointer, at which point the pointer may not be
valid, as the memory could have been reallocated to contain some other
object.

All of this is basic, classic memory allocation (dynamic memory)
information, which is basically the same in Unix, Windoze, and
VxWorks.   In most cases, the allocated memory comes off of a
construct known as a "heap", which may be task unique in terms of
size.  In VxWorks, I believe the "heap" is merely all of unallocated
system memory.  When memory is free'ed, it is returned to the "heap".

VxWorks will combine adjacent free'ed memory sections into one larger
memory section.  Still, depending on the system being implemented,
memory can become seriously fragmented.  This means that merely
performing a malloc  does not mean that the allocation of memory was
successful..  Check the return value.  If malloc fails, it (usually)
returns NULL.
>Thanks in advance.

>Paula 

Ted Marz

---------------------------

Newsgroups: comp.os.vxworks
Subject: BIND/dns resolver for vxworks?
Date: 06 Feb 1997 00:23:17 -0500
From: Mark Eichin <eichin@cygnus.com>
Organization: Cygnus Support, Eastern USA
Message-ID: <xe16806mrsq.fsf@maneki-neko.cygnus.com>

Has anyone ported BIND to vxworks? All I'm really looking for is
enough of a resolver to implement gethostbyname, but didn't see
anything on the ucar vxworks archive...

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Need Simple GZIP Function
Date: 5 Feb 1997 23:15:15 -0800
From: chaos@idiom.com (h.j. bae)
Organization: the derome mansion, oakland california
Message-ID: <5dc0e3$t5@idiom.com>
References: <russell.brill-3001971455240001@rmbrill.jpl.nasa.gov>

In article <russell.brill-3001971455240001@rmbrill.jpl.nasa.gov>,
Russ Brill <russell.brill@jpl.nasa.gov> wrote:
>Has anybody got a simple (small), callable version of gzip (or a program
>implementing a similar compression scheme) that will run under VxWorks?  I
>need to load this function on board a spacecraft, and I can't afford the
>luxury of lots of options, or of bringing along the decompression
>software.

i've ported zlib uncompress() function to replace the vxworks' bsd
style uncompress.  gnu version does better than 50% compression,
compared to 30% in bsd version.  this allowed us save a lot of
money on one of the products by eliminating our need for a second
flash rom part.  the zlib port is easy enough.  the only thing
one has to look out for is when actually creating a compressed
version of bootroms and modifying the bootInit.c.  if interested
in details, email me.

- -- 
 http://www.pso.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: ethernet drivers
Date: 5 Feb 1997 23:18:30 -0800
From: chaos@idiom.com (h.j. bae)
Organization: the derome mansion, oakland california
Message-ID: <5dc0k6$13n@idiom.com>
References: <32F20FB7.684A@ccii.co.za>

In article <32F20FB7.684A@ccii.co.za>,
Conrad Vermeulen  <conrad@ccii.co.za> wrote:
>Hi there
>
>Under Solaris one can access drivers by opening a device, like:
>  fp = open("/dev/le0",..)
>
>By calling "devs" under vxWorks, I did not see any suitable drivers
>available, but I know that the ene interface is active upon startup.
>Can I open them as under Solaris? Do the ethernet drivers under
>vxWorks support the DLPI 2.0 interface?
>

vxworks network drivers are bsd unix style drivers and do not support
dlpi interface or streams at all, although there are some third
vendor streams ports and protocol stacks that work with vxworks
that support dlpi/streams.

- -- 
 http://www.pso.com

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Re: syntax completion - a bad thing?
Date: Thu, 6 Feb 1997 07:39:51 GMT
From: wb6w@netcom.com (Glenn Thomas)
Organization: Netcom On-Line Services
Message-ID: <wb6wE567yF.Jq0@netcom.com>
References: <32F91629.5F9@vsl.com.au>
Followup-To: comp.lang.ada,comp.os.vxworks
Sender: wb6w@netcom14.netcom.com

My newsreader claims that Andrew Kelly (andrewk@vsl.com.au) wrote:
: Looking at Rational's Apex Ada development environment, I am
: worried the inclusion of syntax completion in the "analyser"
: (pre-compilation phase).

: It seems to me that syntax completion, as a step during 
: compilation, is not a good thing as it *repairs* errors 
: rather than report them (eg. unpaired begin/ends).  The 
: obvious risk being that incorrect code will quite happily be 
: "repaired" (very possibly, incorrectly) and will compile 
: successfully.

: This seems, to me, to be more dangerous than it is useful ...
: eg. If you accidentally delete the "end" from a nested "if", 
: where does the analyser stuff the "end"?  Indeed, even if it 
: gets the placement correct (eg. by inference from the text
: indentation) if code statements have been inadvertantly deleted
: as well, a clearly erroneous file will compile cleanly.

: I believe syntax completion should be available during editting, 
: but not automatically employed during compilation.  As far as I
: can discover, it cannot be switched off in Apex either.

: Has anybody had any experiences with syntax completion that may
: confirm or allay my fears?

Yes - more years ago than I'd like to admit, I worked as a window
programming consultant in college. The machine was a CDC-3150 and
the main programming language used by students was FORTRAN-IV.
We had several Fortran compilers available and the one that was
particularly recommended for student use was a FORTRAN IV
interpriter(!). The stated reason for the recommendation was that
it was more forgiving of keypunch errors than the other compilers.
A more logical reason was that most student programs were short
(10 to 200 LOC), so a system that could dispense with part of
the compilation process and all of the linkage process could
turn programs around much faster. (Typical turnaround time was
about 24 hours...)

One of the things this system did was correct the number of parenthesis
in a given statement if there was a problem. The correction was to
add the appropriate number of left parens to the beginning or right
parens to the end. Well... students were usually not too sure about
operator precidence and would use parens to make it explicit. The
problem was that if a paren on either end of the statement was
not semanticly correct, the student would spend a LOT of time trying
to figure out why a program that compiled with NO ERRORS (see, it
says so right on the listing and computers don't lie) and looked
corrrect on fairly close examination, insisted
on producing bizzare results.

The current programming methodology fad at the time was that computers
should be easy to program and minor errors (like parenthesis counts)
should be automaticly and painlessly corrected. The problem is that
this (and any other system that arbitrarily assumes what the programmer
really intended) is that computer language processors can only work
with the syntax of the program. They have little information about
the semantic of a program (other than the mapping of the input language
to whatever language the processor outputs) and no information about
the *intended* semantic. For this reason, programs that attempt to
predict what the intended syntax of an otherwise syntacticly incorrect
statement will meet with mixed success at best. Syntax completion
systems can be useful only if the human is explictly advised of the
change and if the human approves the change.

Put more simply, the computer will do exactly what you told it to do,
which is not necessarily the same thing as what you wanted it to do.

: --
: +===============================================================+
: | Andrew Kelly (andrewk@vsl.com.au)                    _  |\    |
: | Software Design Engineer                           _/ |_| \   |
: | Vision Systems                                    / Vision \  |
: | Technology Park                                  / Products \ |
: | Adelaide, SA 5095, AUSTRALIA                     \    __    / |
: | ph: +61-8-300 4602                                \__/  \__/  |
: | fx: +61-8-300 4422                                        v   |
: +===============================================================+

Good luck - Glenn Thomas --
*********************************************************************
* "Two wrongs don't make a right, but three lefts do."              *
*                                                                   *
*  wb6w@netcom.com  - Glenn Thomas                                  *
*********************************************************************

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Information on MPC860/821 Device Drivers
Date: Wed, 05 Feb 1997 23:13:49 -0500
From: Hugo Krapf <huggo@interlog.com>
Organization: InterLog Internet Services
Message-ID: <32F95A7D.38A6@interlog.com>
References: <32F7CB62.794B@printrak.com>
Reply-To: huggo@interlog.com

Diane Kato wrote:
> 
> Hi,
> 
> We are working on a project using the PowerPC MPC821 processor
> and the ADS860 Board Support Package.
> 
> We need to obtain the following device drivers that are not
> included as part of the BSP:
> 
>        I2C, SPI, DMA, PCMCIA
> 
> Does anyone know of any device driver software that is availible
> for these devices?
> 
> Any help would be greatly appreciated...
> 
> --
> Diane Kato
> dkato@printrak.com
> http://www.PrintrakInternational.com

Me too !!!
I'm especially interested in PCMCIA drivers for the 821.
Thanks.
Hugo Krapf
huggo@interlog.com

---------------------------

Newsgroups: comp.os.vxworks,comp.lang.tcl
Subject: Tornado - VxWorks subroutine calls
Date: Thu, 06 Feb 1997 11:21:25 -0800
From: Lajos Farkas <extlafa@rlyhps2.rly.abb.se>
Organization: ABB Network, Sweden
Message-ID: <32FA2F35.62CA@rlyhps2.rly.abb.se>

Hello

I am developing a dialog by Tcl in Tornado and I want to execute
VxWorks subroutines on my target maskin (host: HPUX, target: PPC 603)
from the dialog.

My solution is just now to send gdb commands to CrossWind, but it is not
really good for me. I want to execute these soubrutine calls direct on
the target or send them to WindShell but I don't know how can I do it.

Has anyone some exeperience about it ?

---------------------------

End of New-News digest
**********************

From "74043,572"@compuserve.com  Thu Feb  6 06:24:09 1997
From: Jeff Schmidt <"74043,572"@compuserve.com>
Date: Thu Feb  6 06:24:10 PST 1997
Subject: Warning Messages
I'm developing C/C++ code using the cc386 compiler and am having
problems controling which warning messages actually get displayed.  I've
tried a number of things without receiving the desired results.  What I
need to do is basically supress all warning messages with the exception
of a selected few.  I've tried doing what was explained in the manual,
however, the results were not what were expected.  Here are the things
I've tried.

1. -w with specific messages turned on -
	Didn't get any messages

2. Turn on only the message I want to see -
	Got flooded with various warning messages

3. Explicitly turned off every message listed in the GNU toolkit. -
	Got flooded with various warning messages.

I find #3 the most curious.  If anyone has any info on this or has some
success controlling messages please let me know.  For example, how would
the flags be set up to look at -Wimplicit warnings and no others??

Any help would be appreciated.

Jeff Schmidt
74043,572@compuserve.com

From dit@bach.jhuapl.edu  Thu Feb  6 07:52:56 1997
From: dit@bach.jhuapl.edu (Daryl I. Tewell)
Date: Thu Feb  6 07:52:58 PST 1997
Subject: Re: Proper use of malloc()
>...
>short *ptr;
>...
>ptr = malloc(32);
>...

>I get a compile warning that the assignment makes a pointer from an integer
>without a cast. It seems to get allocated ok at run time and I can write to
>it but I think I'm doing something wrong here. (BTW, does VxWorks zero the
>memory or do I need to do that?)

You don't have a malloc declaration in scope.  Include the proper .h file
(see comp.lang.c FAQ 7.6).

Two others have responded that you need to cast the result of malloc.
For ANSI-C compilers, this is untrue, and, in fact, detrimental (see
comp.lang.c FAQ 7.7).

-Daryl

From Phil_Watson@ns1.masirv.com  Thu Feb  6 09:51:45 1997
From: Phil_Watson@ns1.masirv.com (Phil Watson)
Date: Thu Feb  6 09:51:50 PST 1997
Subject: Re: Warning Messages
Jeff,

I've had no problems with controlling GNU warnings, so I'm surprised
with yours. Here's what I use: 

	-Wall -Wshadow -Wpointer-arith

I find these to be the most useful set. I've never used the -w option,
nor only the -Wimplicit. 

------------------
   Submitted-by "74043,572"@compuserve.com  Thu Feb  6 06:24:09 1997
   Submitted-by: Jeff Schmidt <"74043,572"@compuserve.com>

   I'm developing C/C++ code using the cc386 compiler and am having
   problems controling which warning messages actually get displayed.  I've
   tried a number of things without receiving the desired results.  What I
   need to do is basically supress all warning messages with the exception
   of a selected few.  I've tried doing what was explained in the manual,
   however, the results were not what were expected.  Here are the things
   I've tried.

   1. -w with specific messages turned on -
	   Didn't get any messages

   2. Turn on only the message I want to see -
	   Got flooded with various warning messages

   3. Explicitly turned off every message listed in the GNU toolkit. -
	   Got flooded with various warning messages.

   I find #3 the most curious.  If anyone has any info on this or has some
   success controlling messages please let me know.  For example, how would
   the flags be set up to look at -Wimplicit warnings and no others??

   Any help would be appreciated.

   Jeff Schmidt
   74043,572@compuserve.com

----
Philip Watson
Phil_Watson@masirv.com
Matsushita Avionics Systems Corporation
15253 Bake Parkway
Irvine, California, 92618  U.S.A.

From darren@wrs.com  Thu Feb  6 15:31:15 1997
From: Darren Cathey <darren@wrs.com>
Date: Thu Feb  6 15:31:17 PST 1997
Subject: Re: comp.os.vxworks newsdigest
Dear User's Community:

Normally, Wind River Systems employees refrain from responding
to *customer* interaction on the Web in a non-productive
manner.

However, I felt obligated to warn you that the messages from
one "Dale M. Rickman" are obviously biased due to the fact
that his close relative just happens to be a Sales Rep in
our local territory.  Personally, I find that this is in
truly poor taste and indicative of the drastic lengths to
which Ready/Microtec/Mentor has stooped to save what 
remaining business they can.  I can tell you we have many
VRTX customers who are literally *jumping* at the chance to
go to VxWorks.  As far as the specifics of the varied comments,
please contact your local Sales Team for answers to any
questions that Mr. Rickman's correspondence has raised.

Respectfully,

Darren Cathey 

>Newsgroups: comp.os.vxworks
>Subject: Re: comp.os.vxworks newsdigest
>Date: Fri, 31 Jan 1997 01:34:27 +0000
>From: "Dale M. Rickman" <daler@erols.com>
>Organization: Erol's Internet Services
>Message-ID: <32F14C14.5AC5@erols.com>
>References: <9701281741.AA27455@trojan.masirv.com>
>Reply-To: daler@erols.com
>
>A close relative of mine works for Microtec.  She tells me that Microtec
>has not only had per-task debugging with XRAY, a superbly stable
>graphical debug environment, a streams based networking solution for
>VRTX (with dynamic routing and multicast available for years) and that
>they invented the "Tornado" architecture years ago (but theirs is called
>Spectra) and since it is 3 years old, IT actually works.  And embedded
>compiler features including linking of C++ and C code seamlessly,
>template debugging support, packed structure support, align keyword
>support, init data (rom to ram copy support), etc.  Plus task-per-window
>debugging built into the debugger.  
>
>She complains that the only reason that WindRiver wins is because of
>their marketing hype, that in any real technical evaluation Microtec
>wins hands down.
>
>Any comments ?
>
>
>

>
===========================================================
Darren Cathey                          Phone : 540-338-6970
Regional FAE Manager - Southeast       Fax   : 540-338-3168
Wind River Systems                   Email : darren@wrs.com
===========================================================

From darren@wrs.com  Thu Feb  6 15:37:03 1997
From: Darren Cathey <darren@wrs.com>
Date: Thu Feb  6 15:37:05 PST 1997
Subject: Re: comp.os.vxworks newsdigest
Dear User's Community:

Normally, Wind River Systems employees refrain from responding
to *customer* interaction on the Web in a non-productive
manner.

However, I felt obligated to warn you that the messages from
one "Dale M. Rickman" are obviously biased due to the fact
that his close relative just happens to be a Sales Rep for
Microtec/Mentor (i.e. VRTX/Spectra) in
our local territory.  Personally, I find that this is in
truly poor taste and indicative of the drastic lengths to
which Ready/Microtec/Mentor has stooped to save what 
remaining business they can.  I can tell you we have many
VRTX customers who are literally *jumping* at the chance to
go to VxWorks.  As far as the specifics of the varied comments,
please contact your local Sales Team for answers to any
questions that Mr. Rickman's correspondence has raised.

Respectfully,

Darren Cathey 

>Newsgroups: comp.os.vxworks
>Subject: Re: comp.os.vxworks newsdigest
>Date: Fri, 31 Jan 1997 01:34:27 +0000
>From: "Dale M. Rickman" <daler@erols.com>
>Organization: Erol's Internet Services
>Message-ID: <32F14C14.5AC5@erols.com>
>References: <9701281741.AA27455@trojan.masirv.com>
>Reply-To: daler@erols.com
>
>A close relative of mine works for Microtec.  She tells me that Microtec
>has not only had per-task debugging with XRAY, a superbly stable
>graphical debug environment, a streams based networking solution for
>VRTX (with dynamic routing and multicast available for years) and that
>they invented the "Tornado" architecture years ago (but theirs is called
>Spectra) and since it is 3 years old, IT actually works.  And embedded
>compiler features including linking of C++ and C code seamlessly,
>template debugging support, packed structure support, align keyword
>support, init data (rom to ram copy support), etc.  Plus task-per-window
>debugging built into the debugger.  
>
>She complains that the only reason that WindRiver wins is because of
>their marketing hype, that in any real technical evaluation Microtec
>wins hands down.
>
>Any comments ?
>
>
>

>
===========================================================
Darren Cathey                          Phone : 540-338-6970
Regional FAE Manager - Southeast       Fax   : 540-338-3168
Wind River Systems                   Email : darren@wrs.com
===========================================================

From dleviner@HiWAAY.net  Thu Feb  6 17:24:59 1997
From: David Leviner <dleviner@HiWAAY.net>
Date: Thu Feb  6 17:25:01 PST 1997
Subject: PCMCIA driver??? & mouse driver???
Hi all,

I'm in the process of working on a BSP for an embedded PC386 with
standard pc interfaces (serial, parallel, ps/2 keyboard and mouse),
4MBytes of FLASH (Intel 28F016 chipset), 2MBytes of DRAM, and PCMCIA
capabilities. 

The PCMCIA chipset is the Cirrus Logic CL-PD6720-QC-B. I've heard
through the grapevine that VxWorks does support this chipset. Does
anyone know where I can find the driver for this interface? If I'm
completely wrong in assuming there is a driver for this controller --
please let me know also.

Also, the customer wants to eventually utilize a vxWorks supported
graphical interface and thus needs mouse support. Does anyone know of a
ps/2 mouse driver available?

Thanks for the advice.

--------------------------
David Leviner
Systems Engineer
Chandler/May, Inc. (CMI)
125 West Park Loop
Huntsville, AL  35806
phone: (205)722-0175
fax:   (205)722-0144
email: dleviner@HiWAAY.net

From mjh@adv.sbc.sony.co.jp  Fri Feb  7 01:17:23 1997
From: Margaret J Harris <mjh@adv.sbc.sony.co.jp>
Date: Fri Feb  7 01:17:25 PST 1997
Subject: Anyone know of a SPI Driver?
Hi all,

I'm in the process of working on a BSP for an embedded system with based on
a Motorola QUICC chip.  This has a Serial Peripheral Interface (SPI) on
chip.  Anyone know of a vxWorks driver for this?

Thanks for the advice.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Margaret J Harris
Engineer                              Tel: +44 (0) 1256 48 3722 (Direct)
New Technologies (D&D)                Tel: +44 (0) 1256 55 011 (Switchboard)

Advanced Technology Division          Fax: +44 (0) 1256 81 1430   
Sony Broadcast & Professional Europe     
Jays Close, Viables, Basingstoke
Hampshire RG22 4SB UK                 E-mail: mjh@adv.sbc.sony.co.jp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

From usd@mee.hwm.com  Fri Feb  7 01:26:18 1997
From: Uwe Scheffold <usd@mee.hwm.com>
Date: Fri Feb  7 01:26:20 PST 1997
Subject: socket types
Hi vxWorkers,

in the socket() manual page are described 3 types of sockets: SOCK_STREAM, SOCK_DGRAM and SOCK_RAW.
But I can find example programs for only: SOCK_STREAM and SOCK_DGRAM.

So what are the main advantages (or disadvantages) for the different socket types. In what case do you use what kind of socket? 

Does anyone have a example client/server program witch uses SOCK_RAW?

regards: Uwe
-- 
-------------------------------------------------------------------------
Uwe Scheffold     _/_/_/_/_/_/_/_/_/  _/_/_/_/   Mail: usd@mee.hwm.com
Tele Robot Engineering _/    _/   _/ _/           Web: http://www.hwm.com
Waelischmiller GmbH   _/    _/_/_/  _/_/_/      Voice: (+49) 7532 4320 41
Klingleweg 8         _/    _/   _/ _/             Fax: (+49) 7532 4320 99
D-88709 Meersburg   _/    _/    _/_/_/_/_/ 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

From daemon@csg.lbl.gov  Fri Feb  7 04:00:21 1997
From: daemon@csg.lbl.gov
Date: Fri Feb  7 04:00:25 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Fri Feb  7 04:00:18 PST 1997

        Subject: Re: Big disks on Vxworks
        Subject: Re: ethernet drivers
        Subject: Re: syntax completion - a bad thing?
        Subject: New to vxWorks with NT
        Subject: Re: syntax completion - a bad thing?
        Subject: Help please. VxWorks 5.3 on R4650
        Subject: Structure alignment with x86 compiler
        Subject: Networking
        Subject: floating point exceptions & the mv1604
        Subject: The year 2000 and VxWorks
        Subject: PPP difficulties
        Subject: Help Wanted: POSIX.4 System Call
        Subject: CFP : 22nd IFAC/IFIP Workshop On Real-Time Programming
        Subject: VxWorks versus LynxOS
        Subject: vxload
        Subject: test <eom>

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Big disks on Vxworks
Date: Thu, 06 Feb 1997 06:44:04 -0500
From: "richard.price" <richard.price-1@lsoc114x.ksc.nasa.gov>
Organization: United Space Alliance
Message-ID: <32F9C404.7111@lsoc114x.ksc.nasa.gov>
References: <01bc0efb$85d46280$0cd2b8c7@PCRAM.alexis.com> <01bc136c$77fce770$e2c076c1@aabpc>

Adam Baker wrote:
> 
> Robert Myhre <rob@alexis.com> wrote in article
> <01bc0efb$85d46280$0cd2b8c7@PCRAM.alexis.com>...
> > I'm trying to use a 4 GB disk with DOS formatting, but I get an error
> when
> > I call dosFsMkfs. It doesn't seem to have a problem at 3 GB. What's the
> > limit?
> >
> I spent a long time playing with this and eventually concluded that to get
> the maximum possible size is 8323072 512 byte sectors or about 3.97 GB.
> This is because one of the parameters to dosFsConfigInit is a signed char
> and hence limited to 127.
> 
> I filed a TSR to try and confirm if this is the limitation and Wind River
> claimed much larger sizes are possible. I replied that that wasn't my
> experience and haven't heard anything from them since.
> 
> There is a second issue if you are booting from SCSI disk. This falls over
> with a somewhat smaller disk, around 2GB IIRC. I think this is down to how
> much memory is available at boot time but as its such a pain to debug boot
> rom problems I settled for using a small boot partition and then after
> booting configuring the rest of the disk as a much larger partition.

Yes
We had a similar problem with vxworks and an GB RAID.  After weeks of T/S a suspected bad 
VME controller we determined that vxworks had a disk volume limit with the signed 
character perameter. No help from wind river either.
RNP at KSC

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: ethernet drivers
Date: 6 Feb 1997 05:08:05 GMT
From: mda@bnr.ca (Mark Dapoz)
Organization: Bell-Northern Research Ltd.
Message-ID: <5dbovl$ogc@bcarh8ab.bnr.ca>
References: <32F20FB7.684A@ccii.co.za>

In article <32F20FB7.684A@ccii.co.za>,
Conrad Vermeulen  <conrad@ccii.co.za> wrote:
>Hi there
>
>Under Solaris one can access drivers by opening a device, like:
>  fp = open("/dev/le0",..)
>
>By calling "devs" under vxWorks, I did not see any suitable drivers
>available, but I know that the ene interface is active upon startup.
>Can I open them as under Solaris? 

All of the standard vxWorks network drivers are written using the BSD
networking model. This model uses an internal ifnet structure to represent
the driver entry points.  There is no file level access to the network
drivers as there is in Solaris 2.X and other SVR4 based systems.

> Do the ethernet drivers under vxWorks support the DLPI 2.0 interface?

There is a DLPI 2.0 framework if you get the WRS streams package.  I'm
not sure how (or even if) the streams layer talks to the BSD layer, you
may have to write your own drivers for it.
			-mark
- -- 
Mark Dapoz	Bell-Northern Research, Ottawa, Canada	    Mark.Dapoz@bnr.ca

Fingers and toes, fingers and toes, forty things we share, forty one if you
include the fact that we don't care.  - The Tragically Hip

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Re: syntax completion - a bad thing?
Date: 6 Feb 1997 08:08:56 -0500
From: dewar@merv.cs.nyu.edu (Robert Dewar)
Organization: New York University
Message-ID: <dewar.855234467@merv>
References: <32F91629.5F9@vsl.com.au>

Andrew says

"It seems to me that syntax completion, as a step during
compilation, is not a good thing as it *repairs* errors
rather than report them (eg. unpaired begin/ends).  The
obvious risk being that incorrect code will quite happily be
"repaired" (very possibly, incorrectly) and will compile
successfully."

This must be a misunderstanding, no Ada compiler can possibly have as
its standard or only operating mode one in which errors are silently
ignored. It would be impossible to validate such a compiler, and since
the Rational compilers are validated (the observations apply equally
to Ada 83 and Ada 95), you must be misunderstanding ...

---------------------------

Newsgroups: comp.os.vxworks
Subject: New to vxWorks with NT
Date: Thu, 06 Feb 1997 16:32:02 +0200
From: Howie Schiffmiller <howie@amil.co.il>
Organization: NetVision LTD.
Message-ID: <32F9EB62.167EB0E7@amil.co.il>

Hi

 We've been working with UNIX and vxWorks for a few years, and
we're now trying to move our host to NT. I was hoping someone
out there could help with some of the following...

1. On UNIX, in order to download our code and start our session
with the target, we use the following

  cat <script> - | telnet <target>

For example, The script contains some of the following

iam "howie"
cd "/home/howie"
ld < myLib.o

Since we redirect the srdout to be the stdin of the telnet session,
we now have a window open to the target where we can issue
commands, as well as see our output.

How is one supposed to work in NT (preferably as similar as possible
but I'll take any ideas).

2. Is there any way to boot off of a specific system drive other
tahn the default? When I give my target the following boot line

  machine:f:/bootpath/vxWorks.exe

it doesn't understand it. I have to leave out the f:, in which case
(I assume) it boots from my default systemdrive.

3. Within the ftp session, I can't seem to cd from one drive to 
another (cd f:/newdir doesn't work if I'm in c:)
 
Thanks in advance for any help you can offer
- -- 
Howie Schiffmiller                Email: howie@amil.co.il
Applied Materials (Israel) Ltd.   Phone: +972-3-645-0247
P.O. Box 58152                    Fax:   +972-3-645-0280
Tel Aviv, Israel  61581           TimeZone: GMT + 2

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Re: syntax completion - a bad thing?
Date: Thu, 06 Feb 1997 17:34:53 GMT
From: garriga@logica.com (Stephen Garriga)
Organization: Logica UK Ltd
Message-ID: <32fa1450.32791176@news.logica.co.uk>
References: <32F91629.5F9@vsl.com.au> <dewar.855234467@merv>

On 6 Feb 1997 08:08:56 -0500, dewar@merv.cs.nyu.edu (Robert Dewar)
wrote:

>Andrew says
>
>"It seems to me that syntax completion, as a step during
>compilation, is not a good thing as it *repairs* errors
>rather than report them (eg. unpaired begin/ends).  The
>obvious risk being that incorrect code will quite happily be
>"repaired" (very possibly, incorrectly) and will compile
>successfully."
>
>
>This must be a misunderstanding, no Ada compiler can possibly have as
>its standard or only operating mode one in which errors are silently
>ignored. It would be impossible to validate such a compiler, and since
>the Rational compilers are validated (the observations apply equally
>to Ada 83 and Ada 95), you must be misunderstanding ...
>
Ahh! But the problem occurs with the EDITOR. Apex is a development
environment (editor, config control, &c) - When you are using the
editor, you get syntax completion (unless you turn it off). I have
used Apex (and the earlier Rational 'delta' boxes) and encountered
bugs resulting from erroneous code completion - usually an 'end if' in
the wrong place. The editor seems to look for a blank line sometimes 
(presumably when indentation does not help) and puts the end if there.
IMO completion is helpful if you force it after keywords to get a
template IF you are writing a new subprogram. On existing code it is
more trouble than it is worth. My approach was to use vi on existing
code and the Rational editor to create new stuff.

Just an opinion

Steve Garriga                         garriga@logica.com                 
   type OPINION is access PERSONAL_THOUGHTS_AND_BIAS; 
   OPINION_STATED : new OPINION := not LOGICA.OPINION;
Logica UK Ltd.   +44 171 637 9111   http://www.logica.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Help please. VxWorks 5.3 on R4650
Date: Thu, 06 Feb 1997 14:14:03 +0000
From: Tony Gibbs x5610 <tony.gibbs@cambridge.simoco.com>
Organization: Simoco Telecomms. Ltd.
Message-ID: <32F9E72B.512D@cambridge.simoco.com>

Hello,

I am thinking about using VxWorks 5.3 on an R4650 based custom target.

Has anyone any experience of developing using Tornado 1.0 on Solaris for
VxWorks 5.3 for R4650?

Is VxWorks 5.3 still a beta for this target? 

Does the fact that the compiler and tools are GNU based cause any
problems, especially getting support and bux fixes?

What are the strengths and weakneses of Tornado 1.0 / VxWorks 5.3
compared to say pSOS+ / pRISM+ on the R4650?

How easy is it to use VxSim, and do you have to develop device drivers
for VxSim to simulate the behaviour of the target hardware?

How easy is it to write device drivers for the BSP?

I have asked alot of questions all at once, but I hope that someone here
can help me.

Regards,
Tony Gibbs.
Software Team Leader,
Simoco Telecomms. Ltd.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Structure alignment with x86 compiler
Date: Tue, 4 Feb 1997 16:02:47 GMT
From: fuda@norden.com (Thomas Fuda)
Organization: Northrop Grumman Corporation, Baltimore, MD
Message-ID: <E52xpE.DxF%mother@mdnews.md.essd.northgrum.com>
Sender: news%mother@mdnews.md.essd.northgrum.com

I am running vxWorks 5.2 on an x86 target with release 2.2.3 of the
GNU toolkit. Does anybody out there know of a way to force the
compiler to align structure elements to 1 byte boundaries? I've tried
#pragma pack (1) but it doesn't seem to have any effect. Thanks in
advance for any suggestions.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Networking
Date: Thu,  6 Feb 1997 18:14:47 -0500
From: Kevin Bradley <kb+@andrew.cmu.edu>
Organization: Doctoral student, Electrical and Computer Engineering, Carnegie Mellon, Pittsburgh, PA
Message-ID: <gmyaLbG00UhWQ1y4Fs@andrew.cmu.edu>

I'm just beginning to use VxWorks, and I'm having difficulty getting
the system to talk to the network.

Here's the situation:  I have a Pentium PC with a 3c509 card.  The
driver inits, I can get/set the host table, parameters to the card,
the whole nine yards.  But I can't ping anybody, nor can anyone else
ping the machine.

A UNIX machine here shows the following parameters:

eth0      Link encap:10Mbps Ethernet  HWaddr 00:A0:24:58:E2:15
          inet addr:127.0.0.20  Bcast:127.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:7419641 errors:24 dropped:24 overruns:0
          TX packets:1210249 errors:0 dropped:0 overruns:0
          Interrupt:9 Base address:0xff80 

(names, IP addresses, etc. changed to protect the innocent).

The VxWorks ifShow("elt0") gives:

Flags: (0x63) UP BROADCAST ARP RUNNING
Internet Address:  127.0.0.75
Broadcast Address: 127.0.0.255
Netmask 0xffff0000 Subnetmask 0xffff0000
Ethernet  address is 00:20:af:9d:42:5c
Metric is 0
Maximum Tranfer Unit size is 1500
0 packets received; 0 packets sent
0 input errors; 0 output errors
0 collisions

Looking at the TCP traffic, I observe the following:

14:12:23.596138 arp who-has ROUTER tell VX1
14:12:28.595774 arp who-has ROUTER tell VX1

and later (much later):

18:13:42.677998 arp who-has VX1 (0:20:af:9d:42:5c) tell ROUTER
18:14:42.677709 arp who-has VX1 (0:20:af:9d:42:5c) tell ROUTER

(ROUTER being the router for my subnet, VX1 being the VxWorks machine.
Vx1 is a registered name, i.e. nslookup returns its IP address).

In other words, the machine seems to want to talk, and tries, but
is speaking another language or something.

Questions:

1)  Does "Metric" matter that it's different between the Unix and VxWorks?

2)  What's the arp messages?

3)  Any idea how to make 'em talk to each other?

4)  I presume, once it talks, linking it to Tornado will be easy...

I have experimented with changing the flags to "NOARP" and "PROMISCUOUS"
and "MULTICAST", but the condition persists.

I appreciate any help anyone can give me; it's been rough so far
climbing the learning curve!

                                                    -- Kevin

PS:  details:  pc386 BSP 1.1/0, VxWorks 5.3

---------------------------

Newsgroups: comp.os.vxworks
Subject: floating point exceptions & the mv1604
Date: Thu, 6 Feb 1997 17:55:25 GMT
From: Bob Marino <ram@mr.picker.com>
Organization: Picker International, Inc.
Message-ID: <32FA1B0D.167E@mr.picker.com>
Sender: news@picker.com

I am running VxWorks 5.3 (Tornado 1.0) on a mv1604.  I recently
discovered that VxWorks is not reporting any floating point
exception (SPR # 7840).  Has anyone spun a workaround for this
problem that they would be willing to share with me?

- -- 
Roberto "Bob" Marino                          Picker International, Inc.
principal engineer                            5500 Avion Park Dr.
NMR division                                  Highland Hts, OH 44143

---------------------------

Newsgroups: comp.os.vxworks
Subject: The year 2000 and VxWorks
Date: 3 Feb 1997 17:39:55 GMT
From: plward@ll.mit.edu (paula l ward)
Organization: MIT Lincoln Laboratory
Message-ID: <5d57tb$5u2@llnews.ll.mit.edu>
Sender: plw@bart (paula l ward)

Does anyone know how VxWorks will handle the transition from
December 31, 1999 to January 1, 2000?

What algorithms are used to determine the date? Since the year 2000
is a leap year (and is divisible by 400), does anyone know if this
will be handled correctly?

Thanks.

Paula Ward

---------------------------

Newsgroups: comp.os.vxworks
Subject: PPP difficulties
Date: Thu, 06 Feb 1997 09:46:49 GMT
From: pete@imc4.eej.ulst.ac.uk (Pete Brett)
Message-ID: <855222495.4631.0@hathsys.demon.co.uk>

	With vxWorks set up as a server and using Windows NT (version 4.0
service pack 2) as a client, PPP is failing during PAP authentication.

	I have included the lines :

	pppSecretAdd("*", "*", "pass", NULL);
	options.pap_user_name = "ben";
	options.pap_passwd = "pass";

	in my code (where options is declaired as PPP_OPTIONS	options;),
believing that this is the way to set up the user name and password
for authentication. My target has no local file system and NFS is not
included.

	The following is an extract from ppp.log generated by Windows NT. I
have annotated it with comments in braces {} and packet numbers in
square brackets[] in an attempt to make it more readable.

FsmThisLayerStarted called for protocol = c021, port = 1
<PPP packet sent at 02/06/1997 08:43:50:475
<Protocol = LCP, Type = Configure-Req, Length = 0x34, Id = 0x0, Port =
1

Windows NT -> vxWorks [packet 1]
C0 21{LCP} 01{configure-request} 00{packet ID 0} 00 32{packet length
0x32}
02{async-control-character-map} 06{length} 00 00 00 00{data}
05{magic number} 06{length} 00 00 20 FF{number 0x20FF}
07{protocol-field-compression} 02{length}
08{address-field-compression} 02{length}
0D 03 06 11 04 06 4E 13 17 01 41 EF 3B 70 7F F9 11 D0 9C 82 00 01 1B
0A 4C 46 00 00 00 00
{The above line makes no sense to me... HELP!}

vxWorks -> Windows NT [packet 2]
>PPP packet received at 02/06/1997 08:43:50:956
>Protocol = LCP, Type = Configure-Req, Length = 0x18, Id = 0xbe, Port = 1
C0 21{LCP} 01{configure-request} BE{packet ID 0xBE} 00 16{packet
length 0x16}
01{max-receive-unit} 04{length} 05 DC{0x05DC = 1500... Is this not the
default?}
03{authentication-protocol} 04{length} C0 23{PAP}
05{magic number} 06{length} 00 01 7D A4{0x00017DA4}
07{protocol-field-compression} 02{length}
08{address-field-compression} 02{length}

Windows NT -> vxWorks [packet 3] {reply to packet 2}
<PPP packet sent at 02/06/1997 08:43:50:956
<Protocol = LCP, Type = Configure-Ack, Length = 0x18, Id = 0xbe, Port
= 1
C0 21{LCP} 02{configure Ack} BE{packet ID 0xBE} 00 16{packet length
0x16}
01{max-receive-unit} 04{length} 05 DC{0x05DC = 1500}
03{authentication-protocol} 04{length} C0 23{PAP}
05{magic number} 06{length} 00 01 7D A4{0x00017DA4}
07{protocol-field-compression} 02{length}
08{address-field-compression} 02{length}

vxWorks -> Windows NT [packet 4] {reply to packet 1}
>PPP packet received at 02/06/1997 08:43:51:016
>Protocol = LCP, Type = Configure-Reject, Length = 0x24, Id = 0x0, Port = 1
C0 21{LCP} 04{configure-reject} 00{packet ID 0} 00 22{packet length
0x22}
0D 03 06 11 04 06 4E 13 17 01 41 EF 3B 70 7F F9 11 D0 9C 82 00 01 1B
0A 4C 46 00 00 00 00
{The above line is the same as the line which I could not understand
in packet 1}

Windows NT -> vxWorks [packet 5]
<PPP packet sent at 02/06/1997 08:43:51:016
<Protocol = LCP, Type = Configure-Req, Length = 0x16, Id = 0x1, Port =
1
C0 21{LCP} 01{configure-request} 01{packet-ID 0x01} 00 14{packet
length 0x14}
02{async-control-character-map} 06{length} 00 00 00 00{data}
05{magic number} 06{length} 00 00 20 FF{number 0x20FF}
07{protocol-field-compression} 02{length}
08{address-field-compression} 02{length}

vxWorks -> Windows NT [packet 6] {reply to packet 5}
>PPP packet received at 02/06/1997 08:43:51:356
>Protocol = LCP, Type = Configure-Ack, Length = 0x16, Id = 0x1, Port = 1
C0 21{LCP} 02{configure Ack} 01{reply to packet ID 01} 00 14{packet
length 0x14}
02{async-control-character-map} 06{length} 00 00 00 00{data}
05{magic number} 06{length} 00 00 20 FF{number 0x20FF}
07{protocol-field-compression} 02{length}
08{address-field-compression} 02{length}

FsmThisLayerUp called for protocol = c021, port = 1
LCP Local Options-------------
	MRU=1500,ACCM=0,Auth=0,MagicNumber=8447,PFC=ON,ACFC=ON
	Recv Framing = PPP,SSHF=OFF,MRRU=1500
LCP Remote Options-------------
	MRU=1500,ACCM=-1,Auth=c023,MagicNumber=97700,PFC=ON,ACFC=ON
	Send Framing = PPP,SSHF=OFF,MRRU=1500
LCP Configured successfully

Windows NT -> vxWorks [packet 7]
<PPP packet sent at 02/06/1997 08:43:51:356
<Protocol = LCP, Type = Identification, Length = 0x14, Id = 0x2, Port
= 1
C0 21{LCP} 0C{reserved} 02{packet ID} 00 12{packet length}
00 00 20 FF 4D 53 52 41 53 56 34 2E 30 30
{Can anyone tell me what the above line means?}

Windows NT -> vxWorks [packet 8]
<PPP packet sent at 02/06/1997 08:43:51:356
<Protocol = LCP, Type = Identification, Length = 0x15, Id = 0x3, Port
= 1
C0 21{LCP} 0C{reserved} 03{packet ID} 00 13{packet length}
00 00 20 FF 4D 53 52 41 53 2D 31 2D 48 41 4C
{I can't understand this one either!}

Authenticating phase started {on the NT box}

Windows NT -> vxWorks [packet 9]
<PPP packet sent at 02/06/1997 08:43:51:426
<Protocol = PAP, Type = Protocol specific, Length = 0xf, Id = 0x0,
Port = 1
C0 23{PAP} 01{authentication request} 00{ID} 00 0D{length}
03{three letters for user-name} 62 65 6E{user name ben}
04{four letters for password} 70 61 73 73{password pass}

vxWorks -> Windows NT [packet 10] {reply to packet 7}
>PPP packet received at 02/06/1997 08:43:52:147
>Protocol = LCP, Type = Code-Reject, Length = 0x18, Id = 0xbf, Port = 1
C0 21{LCP} 07{code-reject} BF{my packet ID} 00 16{my packet length}
{rejected packet follows}
0C{reserved} 02{packet ID} 00 12{packet length}
00 00 20 FF 4D 53 52 41 53 56 34 2E 30 30
{vxWorks can't understand it either}

vxWorks -> Windows NT [packet 11] {reply to packet 8}
>PPP packet received at 02/06/1997 08:43:52:197
>Protocol = LCP, Type = Code-Reject, Length = 0x19, Id = 0xc0, Port = 1
C0 21{LCP} 07{code-reject} C0{my packet ID} 00 17{my packet length}
{rejected packet follows}
0C{reserved} 03{packet ID} 00 13{packet length}
00 00 20 FF 4D 53 52 41 53 2D 31 2D 48 41 4C
{vxWorks can't understand it either}

{vxWorks now enters authentication phase}
vxWorks -> Windows NT [packet 12] {reply to packet 9}
>PPP packet received at 02/06/1997 08:43:52:237
>Protocol = PAP, Type = Protocol specific, Length = 0x16, Id = 0x0, Port = 1
C0 23{PAP} 03{authentication NAK} 00{packet ID} 00 14{length}
0F{msg_length}
4C 6F 67 69 6E 20 69 6E 63 6F 72 72 65 63 74{login incorrect}
{I beleive that I have set up passwords and user names correctly in
vxWorks.}
{Could the login failure be caused by the extra packets 7, 8, 10 &
11?}

{The remainder is straight forward}
Auth Protocol c023 terminated with error 5
FsmThisLayerDown called for protocol = c021, port = 1
<PPP packet sent at 02/06/1997 08:43:52:237
<Protocol = LCP, Type = Terminate-Req, Length = 0xa, Id = 0x4, Port =
1
<C0 21 05 04 00 08 00 00 00 05                   |.!........      |

>PPP packet received at 02/06/1997 08:43:52:247
>Protocol = LCP, Type = Terminate-Req, Length = 0x6, Id = 0xc1, Port = 1
>C0 21 05 C1 00 04                               |.!....          |

<PPP packet sent at 02/06/1997 08:43:52:247
<Protocol = LCP, Type = Terminate-Ack, Length = 0x6, Id = 0xc1, Port =
1
<C0 21 06 C1 00 04                               |.!....          |

FsmThisLayerFinished called for protocol = c021, port = 1
FsmThisLayerFinished called for protocol = c021, port = 1
Line down event occurred on port 1
FsmReset called for protocol = c021, port = 1
Line down event occurred on port 1
	

---------------------------

Newsgroups: comp.os.vxworks,vmsnet.vms-posix
Subject: Help Wanted: POSIX.4 System Call
Date: 7 Feb 1997 07:07:28 GMT
From: "Your_Name" <login@themall.net>
Message-ID: <01bc14c5$c9547700$8abd2299@raymondy>

I'm new to POSIX.4 system calls.  In particular, my
application deals with real-time protocol message
exchanges.  POSIX supports mq_receive with either
O_NOBLOCK or BLOCK until message is received.

To set up a guard timer, I attempt to use timer_connect
etc.  What is the common practice in handling the time
out signal SIGALRM?  I tried to have my signal handler
to send a timeout message back to the task.  Unfortunately,
mq_receive returns with ERROR and errno= EINTR.
How do I make the task aware of the timeout event?

I'd appreciate it if you can share your experience with
me here. 

Thanks,
Raymond Yeung
ryeung@themall.net

---------------------------

Newsgroups: comp.os.vxworks
Subject: CFP : 22nd IFAC/IFIP Workshop On Real-Time Programming
Date: Tue, 28 Jan 1997 16:10:39 GMT
From: Jacques.Skubich@if.insa-lyon.fr (Jacques J. SKUBICH)
Organization: INSA de LYON - FRANCE
Message-ID: <5cl8cd$ili@tempo.univ-lyon1.fr>

---------------------------

Newsgroups: comp.os.vxworks,comp.os.lynx
Subject: VxWorks versus LynxOS
Date: Fri, 07 Feb 1997 23:38:44 GMT
From: njt@worlds-edge.u-net.com (Neil Turner)
Organization: U-NET Ltd
Message-ID: <5ddq5o$ae5$1@despair.u-net.com>
Reply-To: njt@worlds-edge.u-net.com

Hello,

We have to make a decision fairly quickly about which RTOS to use. We
have no previous experience of using an RTOS and we don't really have
the time to develop the taste needed to know which features are
important to us(we must be unique! ;-). I would be very interested in
the opinions of any developers who have had any recent experience with
both OS's, and  developers who have gone the full cycle to delivering
and supporting a product in the field.

On the basis of a cursory look at the VxWorks and LynxOS product
information and a number of newsgroups the picture looks like this to
me:-

Support for the MMU
Lynx put some emphasize on their support for the MMU. From a
developers perspective how much and when does this matter? I've seen
a few postings about the MMU and garbage collection but I don't really
have a very good uinderstanding of the issues being discussed. Perhaps
somone can simplify this for me.

BSP Availability.
We have the impression that BSP's are more likely to be produced first
for VxWorks.  This is the case with one high performance analogue I/O
card that we are interested in using(Pentland).  In general, does
VxWorks have better BSP's support than Lynx.?

Technical Support
 Lynx seem to be short on direct technical support in the UK.  We
would probably have to rely on the French office. In early December I
saw about half a dozen complaints about WindRivers technical support.
What is the situation like in practice in the UK? 

Development Environment
Does anyone have any opinions either way. I get the impression that it
is preferable to opt for the UNIX rather than Windows based
development environments. There seems to be some some problems with
Tornado particularly under NT. Because the Lynx newsgroup is
noticeably less active than the  VxWorks newsgroup its harder gain any
general impression about PosixWorks. I  would be interested to know
how well the development tools work with other development tools such
as Rational Apex C++(or Ada95), Iona's Orbix, ILog's Views and
ObjectStore.

POSIX compiance
Lynx appear to have made more effort and progress towrd full POSIX
compliance.  If we were to consider moving to NT(as and when or if,
the hard real-time capability appears) or any other POSIX compliant
RTOS, will porting our sources be less difficult with LynxOS than with
VxWorks?  I don't really envisage that we will need or want to move to
another OS in the short term. Are there any more or any deeper
arguments regarding the importnace of POSIX compliance?  I assume that
WindRiver will continue to pusue more extensive POSIX complance. Are
there any reasons why they may not achieve(or may not want to achieve)
the same level of compliance as Lynx? Is it reasonable to anticpate
that both OS's wil be equally compliant in a couple of years or is
significantly more work(and time) required to achieve a comparative
level of POSIX compliance?

Our applications domain is power systems control.  We are considering
the use of the PowerPC 604, may need to use DSP's, We  need to process
many fast analgue and many slow digital signals. Several parts of the
control system are duplicated. We expect a  typical application to use
half a dozen processors, a few DSP's and half a dozen I/O cards.

As usual, any help with any part of this query will be greatly
appreciated.

Neil Turner

---------------------------

Newsgroups: comp.os.vxworks
Subject: vxload
Date: Fri, 07 Feb 1997 11:12:10 +0100
From: Vincent HUE <vincent.hue@met.fr>
Organization: MET
Message-ID: <32FAFFFA.5C7@met.fr>

Hi,

Two weeks ago, somebody posted an article, 
telling he has modified vxload so as to give 
news boot params to the vxWorks.st or vxWorks.

I'm realy interested by this program. Could you
send it to me ? 

Is there any other way to give specific parameters 
to an image ? 

Thanks, 

Vincent

- --------------------------------------------------
Vincent HUE              SDH/ATM Software Engineer
MET Commutation, 19 av Carnot 91348 MASSY / France
Tel.: +33-1 64 47 51 30  - Fax : +33-1 64 47 57 45 
Email : vincent.hue@met.fr  -  Memoid : met.metvhe

---------------------------

Newsgroups: comp.os.vxworks
Subject: test <eom>
Date: Mon, 3 Feb 1997 22:19:13 GMT
From: Jeff Pierro <jpier@bigwig.jpl.nasa.gov>
Organization: JPL
Message-ID: <32F66461.6745@bigwig.jpl.nasa.gov>
Sender: news@llyene.jpl.nasa.gov

news test

---------------------------

End of New-News digest
**********************

From jwc@ssd.ray.com  Fri Feb  7 05:39:48 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Fri Feb  7 05:39:50 PST 1997
Subject: Re: socket types
Uwe Scheffold (usd@mee.hwm.com) of Tele Robot Engineering asks:
>Hi vxWorkers,
>
>in the socket() manual page are described 3 types of sockets: SOCK_STREAM, SOCK_DGRAM and SOCK_RAW.
>
>So what are the main advantages (or disadvantages) for the different socket types. In what case do you
>use what kind of socket? 

>Does anyone have a example client/server program witch uses SOCK_RAW?

From the SunOD 5.4 man pages:
>A SOCK_STREAM type provides sequenced, reliable, two-way connection bases byte streams.
>A SOCK_DGRAM socket supports datagrams (connectionless, unreliable messages of a fixed
>maximum length.
>SOCK_RAW sockets provide access to internal network interfaces.

Summary:
SOCK_STREAM uses TCP protocol to support the reliable, flow controlled transmission of data.
SOCK_DGRAM uses UDP protocol to allow  (unreliable is not really the right word) for 
broadcast/multicast transmission of data without the handshake required to guarantee reception
of that data.
SOCK_RAW (only avail. to super user on Unix) allows for access/manipulation of the lower level
protocols, such as IP, Link Level, and even Hardware Level.

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From GNarciso@mailb.harris.com  Fri Feb  7 05:40:31 1997
From: GNarciso@mailb.harris.com (GNarciso)
Date: Fri Feb  7 05:40:33 PST 1997
Subject: SUBSCRIBE
     SUBSCRIBE

From 74043.572@CompuServe.COM  Fri Feb  7 06:02:09 1997
From: Jeff Schmidt <74043.572@CompuServe.COM>
Date: Fri Feb  7 06:02:15 PST 1997
Subject: GNU Warning Messages
Folks,

I'm developing C\C++ software for an '486 based system and am having trouble
controlling the warning messages being displayed by the cc386 GNU compiler.
According to the GNU toolkit I should be able to individually select which
messages are presented and which are inhibited.  For example, if I only want to
look at the -Wimplicit warning, according to the documentation, I should be able
to.  Unfortunately, I haven't yet been able to get it to work properly.  Here
are a couple scenerios I've tried and the results I recieved.

1. -w to inhibit all warning messages then explicity turning on the warning
messages I wanted to see using the -Wnnn options.
	-- Didn't see any warning messages

2. Turned on only those warning messages I wanted to see.
	-- Got showered with an array of warning messages.

3. Using the -Wno-nnn options, I turned off every warning listed in the
documentation.
	-- Got showered with an array of warning messages.

The results of #3 are  most curious.  It leads to me the conclusion that not all
of the warning messages produced by cc386 are listed in the toolkit
documentation.  In particular, the warning message of the format

warning:  initialization of non-const "xxxx" with no rvalue "yyyy" 

shows up whenever a parameter to a class constructor is initialized within the
call itself.

So, if anyone has had success controlling the warning messages or knows how to
inhibit the aforementioned warning message I would appreciate the help.

Jeff Schmidt
74043,572@compuserve.com

From cpinkard@falcon.kla.com  Fri Feb  7 08:25:41 1997
From: Christopher Pinkard <cpinkard@falcon.kla.com>
Date: Fri Feb  7 08:25:43 PST 1997
Subject: Re: comp.os.vxworks newsdigest
>that his close relative just happens to be a Sales Rep in
>our local territory.  Personally, I find that this is in
>truly poor taste and indicative of the drastic lengths to

I agree that is not fair play for Mrs. Rickman to use
her husband's email address as a screen for her marketing
wars with WRS.  I once complained here that debugging multiple
tasks under Tornado using NT host was a nightmare compared
to XRAY tools from Microtec that I had used for the last
two years, and I heard from the Rickman team via direct
email, which is more appropriate than sending to the 
newsgroup.  However this is not the forum for WRS to carry
on their marketing counterattacks either. This is a forum
for technical discussion and problem solving.  
-- 
----------------------------------------------------
Chris Pinkard             Sr. Staff SW Design Engineer
KLA Instruments Corp.     RAPID Engineering
cpinkard@falcon.kla.com   408-468-4346

-----------------------------------------------------
                  may all your goats be free of fleas
                  and may your camels never spit
-----------------------------------------------------

From tmorris@me.umn.edu  Fri Feb  7 08:54:51 1997
From: Ted Morris <tmorris@me.umn.edu>
Date: Fri Feb  7 08:54:53 PST 1997
Subject: PCMCIA driver??? & mouse driver???
the vxWorks Users Group Exploder writes:
> Submitted-by dleviner@HiWAAY.net  Thu Feb  6 17:24:59 1997
> Submitted-by: David Leviner <dleviner@HiWAAY.net>
>  
> Hi all,
> 
> I'm in the process of working on a BSP for an embedded PC386 with
> standard pc interfaces (serial, parallel, ps/2 keyboard and mouse),
> 4MBytes of FLASH (Intel 28F016 chipset), 2MBytes of DRAM, and PCMCIA
> capabilities. 
> 
> The PCMCIA chipset is the Cirrus Logic CL-PD6720-QC-B. I've heard
> through the grapevine that VxWorks does support this chipset. Does
> anyone know where I can find the driver for this interface? If I'm
> completely wrong in assuming there is a driver for this controller --
> please let me know also.
> 
> Also, the customer wants to eventually utilize a vxWorks supported
> graphical interface and thus needs mouse support. Does anyone know of a
> ps/2 mouse driver available?

well, here's something I grabbed a couple of weeks ago.  Although it's
for a MS-compatible mouse I think.  maybe it will help.

<snip>

The following outline of how to communicate with a mouse assumes
that you are using a Microsoft-format 2-button serial mouse that is
plugged into one of the serial ports of a MVME167 P2-adapter.

- -----------------------------------------------------------------------
#include <stdio.h>
#include <errno.h>
#include <vxWorks.h>
#include <ioLib.h>

#define MOUSE_SERIAL_PORT "/tyCo/3"
#define MOUSE_MESSAGE_LEN 3     /* Each mouse message is 3-bytes long */

/*
 * I haven't actually tested the following example function, but it
 * is derived from well tested code that I do use, so it ought to be ok.
 * All the function does is open a connection to the mouse and
 * thereafter report the details of every mouse message that it
 * receives. I don't currently have a VME crate set up to test it, but
 * if it doesn't work, tell me and I'll try to find time to set up
 * a test.
 */
int mouse_reader(void)
{
  unsigned char message[MOUSE_MESSAGE_LEN]; /* The read buffer */
  int nbyte = 0;        /* The number of bytes currently in message[] */
  int fd;               /* The mouse serial port fd */
  unsigned char byte;   /* The latest mouse byte read */
  int nread;            /* The latest number of bytes read */
/*
 * Open a connection to the mouse.
 */
  fd = open(MOUSE_SERIAL_PORT, O_RDWR, 0644);
  if(fd < 0) {
    perror("Error opening " MOUSE_SERIAL_PORT);
    return 1;
  };
/*
 * Set the serial port up for raw terminal-I/O at 1200 baud.
 * Also reduce the read buffer size to prevent the mouse reader
 * function from being kept behind by too many historical mouse events.
 * It doesn't matter if we miss a few events and the mouse reader has
 * enough information to discard truncated messages.
 */
  if(ioctl(fd, FIOSETOPTIONS, OPT_RAW) ||
     ioctl(fd, FIOBAUDRATE, 1200) ||
     ioctl(fd, FIOFLUSH, 0) ||
     ioctl(fd, FIORBUFSET, 30)) {
    perror("Mouse serial-port ioctl()");
    return 1;
  };
/*
 * Read and interpret bytes as they become available on the
 * mouse serial port.
 */
  while((nread=read(fd, &byte, 1)) == 1) {
/*
 * The Microsoft mouse format specifies that only the first byte of each
 * three-byte event will have its 7th msb set. Use this to synchronize.
 * This is how truncated messages are discarded.
 */
    if(byte & 1<<6)
      nbyte = 0;
    message[nbyte++] = byte;
/*
 * Once MOUSE_MESSAGE_LEN contiguous bytes have been received,
 * decompose and interpret the event.
 */
    if(nbyte >= MOUSE_MESSAGE_LEN) {
      unsigned char dx;   /* The horizontal distance that the mouse moved */
      unsigned char dy;   /* The vertical distance that the mouse moved */
/*
 * Decode and report the state of the mouse buttons.
 */
      printf("The left and right buttons are %s and %s respectively.\n",
             (message[0] & 1<<5) ? "down":"up",
             (message[0] & 1<<4) ? "down":"up");
/*
 * Decode and report the distance that the mouse has moved
 * since the last event was received. Distances are measured
 * in "mouse pixels". I don't remember what physical distance
 * one mouse pixel corresponds to.
 */
      dx = ((message[0] & 03) << 06) | (message[1] & 077);
      dy = ((message[0] & 014) << 04) | (message[2] & 077);

      printf("The mouse moved by x=%d and y=%d pixels.\n",
             *((signed char *)&dx), *((signed char *)&dy));
/*
 * Prepare the read buffer for the next mouse message.
 */

--       nbyte = 0;
    };
  };
/*
 * Close the serial port.
 */
  close(fd);
/*
 * Report read errors.
 */
  if(nread < 0) {
    perror("Mouse read error");
    return 1;
  } else {
    fprintf(stderr, "Mouse serial port closed.\n");
    return 1;
  }
  return 0;
}
<snip>

Ted Morris
tmorris@me.umn.edu                                             612-625-3520
Center For Advanced Manufacturing Design And Control           612-625-9881
Institute of Technology, U of Minnesota                   FAX: 612-625-8884

From franz@eng.kns.com  Fri Feb  7 12:36:07 1997
From: franz@eng.kns.com (Keith Franz)
Date: Fri Feb  7 12:36:09 PST 1997
Subject: Re: Proper use of malloc()

You probably do not include the proper include file.  Therefore, it is 
assumed that the function returns an integer.  

Second, if the pointer type returned by malloc (either a void* ro char*)
depending on the library,  you must retype the value to elliminate warnings.
i.e.

#include <stdio.h>

struct Abc {int a};

struct Abc *createAbc(int size)
{
  struct Abc *abc = (struct Abc*) malloc(sizeof(struct Abc) * size);
  if (abc == NULL)
    fprintf(stderr, "WARNING: struct Abc not malloced (file %s, line %d)\n", 
	__FILE__, __LINE__);
  return abc;
}

-Keith Franz
franz@eng.kns.com

From ddavies@worf.utsci.com  Fri Feb  7 13:58:03 1997
From: ddavies@worf.utsci.com (Douglas Davies)
Date: Fri Feb  7 13:58:05 PST 1997
Subject: Microtec...
> Submitted-by: Christopher Pinkard <cpinkard@falcon.kla.com>
>  
> >that his close relative just happens to be a Sales Rep in
> >our local territory.  Personally, I find that this is in
> >truly poor taste and indicative of the drastic lengths to
> 
> I agree that is not fair play for Mrs. Rickman to use
> her husband's email address as a screen for her marketing
> wars with WRS.  I once complained here that debugging multiple
> tasks under Tornado using NT host was a nightmare compared
> to XRAY tools from Microtec that I had used for the last
> two years, and I heard from the Rickman team via direct
> email, which is more appropriate than sending to the 
> newsgroup.  However this is not the forum for WRS to carry
> on their marketing counterattacks either. This is a forum
> for technical discussion and problem solving.  

It was the Rickman team (in extremely poor taste) that started
the foray, and WRS has the right to defend themselves.  Leaves
me with a high disregard for Microtec...

-Doug
Douglas Davies
Director of Software Engineering
Utah Scientific, Inc.

From "74043,572"@compuserve.com  Fri Feb  7 14:08:59 1997
From: Jeff Schmidt <"74043,572"@compuserve.com>
Date: Fri Feb  7 14:09:01 PST 1997
Subject: Viewing Arrays In Debugger
Target	: 486

When viewing arrays in the debugger I find that I am only able to see
the first 200 elements in the array.  How do you control the range of
values being displayed.  For example, how would I specify the range
1..1000 or 300..500??

Any help would be appreciated.

Jeff Schmidt
74043.572@compuserve.com

From gnarciso@palmnet.net  Fri Feb  7 15:56:01 1997
From: "George Narciso" <gnarciso@palmnet.net>
Date: Fri Feb  7 15:56:03 PST 1997
Subject: SUBSCRIBE
SUBSCRIBE

From sathyan@trinc.com@trinc.com  Fri Feb  7 16:02:41 1997
From: Sathyan Iyengar <sathyan@trinc.com@trinc.com>
Date: Fri Feb  7 16:02:44 PST 1997
Subject: Re: PCMCIA driver??? & mouse driver???
At 05:25 PM 2/6/97 PST, you wrote:
>Submitted-by dleviner@HiWAAY.net  Thu Feb  6 17:24:59 1997
>Submitted-by: David Leviner <dleviner@HiWAAY.net>
> 
>Hi all,
>
>I'm in the process of working on a BSP for an embedded PC386 with
>standard pc interfaces (serial, parallel, ps/2 keyboard and mouse),
>4MBytes of FLASH (Intel 28F016 chipset), 2MBytes of DRAM, and PCMCIA
>capabilities. 
>
>The PCMCIA chipset is the Cirrus Logic CL-PD6720-QC-B. I've heard
>through the grapevine that VxWorks does support this chipset. Does
>anyone know where I can find the driver for this interface? If I'm
>completely wrong in assuming there is a driver for this controller --
>please let me know also.
>

Technology Rendezvous Inc., provides PCMCIA software for embedded
systems. Currently the PCMCIA stack (which includs Socket Services(SS), 
Card Services(CS), CSI and Client Drivers) is available for VxWorks.

The PCMCIA controllers we have supported till now is  Intel365, Vedam365
and Vedam469. For a different controller, as mentioned above, we need
to make changes in the SS layer only.
TRI could take up this work. 

Contact me for more information.

Thanks,
-Sathyan

/*****************************************************************
Technology Rendezvous Inc.              Ph  : 408-566-0280 Ext:201
3160, De La Cruz Blvd.                  Fax : 408-566-0284
Suite #101, Santa Clara                 e-mail:  sathyan@trinc.com
CA - 95054,  USA
*****************************************************************/

From daemon@csg.lbl.gov  Sat Feb  8 04:00:18 1997
From: daemon@csg.lbl.gov
Date: Sat Feb  8 04:00:22 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Sat Feb  8 04:00:15 PST 1997

        Subject: Re: Anyone gotten VME Interrupts to work on Tornado for PowerPC?
        Subject: Default routing in VxWorks
        Subject: Re: VxWorks versus LynxOS
        Subject: Re: VxWorks versus LynxOS
        Subject: What do you think of Tornado
        Subject: Re: DHCP support for Tornado 1.0
        Subject: Real Time Trace on embedded PowerPC
        Subject: Re: Networking
        Subject: Re: VxWorks versus LynxOS
        Subject: Tcl file open
        Subject: Help Wanted: POSIX.4 System Call

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Anyone gotten VME Interrupts to work on Tornado for PowerPC?
Date: Fri, 7 Feb 1997 13:35:35 GMT
From: bgosse@nswc.navy.mil (bgosse)
Organization: NSWCDD
Message-ID: <bgosse-0702970844390001@bgossmac.nswc.navy.mil>
References: <199702051556.KAA01917@gw1.fibertek.com>
Sender: news@relay.nswc.navy.mil

In article <199702051556.KAA01917@gw1.fibertek.com>, "Gustavo H. Verdun"
<gverdun@fibertek.com> wrote:

> I'm using two Radstone boards to write a simple periodic interrupt handler
> and have not had luck in getting it to work. Has anyone done this before
> and could provide me with sample code to do this?
> 
> Both Tornado and Radstone have vague documentation on this.
> 
> Thanks,
> 
> Gustavo H. Verdun
> Senior Systems Engineer
> FIBERTEK, INC.           \|/

I am currently bringing up a system using another PPC board and have the
interrupts functioning, so it can be done.  My BSP was also not sufficently
informative in this area.  This is what I have gleaned:

1)  PPC has a single interrupt line for all external interrupts.  This 
    interrupt should be connected to a BSP specific interrupt handler
    which will handle all non-processor interrupts.

2)  The BSP interrupt handler should contain a vector table for VME
    interrupts.

3)  The board I use contains a Tundra Universe VME chip.  Within the 
    BSP is a vmeUniverse.c file which contains the VME interrupt vector
    table.  There was no system call provided to install interrupts or
    even obtain free interrupts.  Created my own and inserted the
    interrupt routine address into this table.

4)  You also have to enable the specific interrupt level on the VME bus
    which can be done with a call to sysIntEnable() if your BSP is 
    similiar to mine.

- -- 
Bruce Gosse                          bgosse@nswc.navy.mil
"expressing personnel opinions, not those of my employer"
Naval Surface Warfare Center Dahlgren Division,  Code N85
Phone:  (540) 653-2823

---------------------------

Newsgroups: comp.os.vxworks
Subject: Default routing in VxWorks
Date: Fri, 31 Jan 1997 11:49:05 +0000
From: Arthur Watt <arthur@lucent.com>
Organization: Lucent Technologies
Message-ID: <32F1DC31.6351@lucent.com>

We have a VxWorks system which boots over the network via the
BOOTP protocol. The VxWorks API bootpParamsGet() does not return
the gateway address, hence we can only boot the VxWorks target
from machines on the same subnet.

In order to get around this problem, we have assumed 
that our network architecture is such that the IP address
of the default router is host id 1 on the local subnet.
(This matches our real network topology)

bootLoadFromNW()
{
    struct in_addr inaddrServer;
    struct in_addr inaddrDefGateway;
    char           *pchAddrDefDestination = "0.0.0.0";
    char           pchAddrDefGateway[32];

    /*
     * Get parameters via bootpParamsGet()
     * params.had = Host IP address (char *)
     * netmask    = Subnet mask
     */
    bootpParamsGet( .... );

    /*
     * Generate the default router
     */
    inAddrServer_addr = inet_addr( params.had );
    inaddrDefGateway.s_addr = (inaddrServer.s_addr & netmask) + 1;
    inet_ntoa_b( inaddrDefGateway, pchAddrDefGateway );
    rc = routeAdd( pchAddrDefDestination, pchAddrDefGateway );

    /*
     * Get the boot file via TFTP, etc
     */

}

The problem is, that even though I have defined a default
gateway using

routeAdd("0.0.0.0","135.86.28.1")

when the system boots up, no default routing is shown.
The routeAdd function is definitely being called, with
the correct parameters (an no error code is reported).

Can anyone tell me what I'm doing wrong, or how to
set up a default router in VxWorks (preferably in
the bootrom code) ??

Please help

Arthur Watt
E-Mail: arthur@lucent.com
Tel:    44 1666 833727

---------------------------

Newsgroups: comp.os.vxworks,comp.os.lynx
Subject: Re: VxWorks versus LynxOS
Date: Fri, 07 Feb 1997 14:13:53 GMT
From: tfm@sei.cmu.edu
Organization: Software Engineering Institute
Message-ID: <5dfdca$sm9@news.sei.cmu.edu>
References: <5ddq5o$ae5$1@despair.u-net.com>

njt@worlds-edge.u-net.com (Neil Turner) wrote:

>Hello,

>We have to make a decision fairly quickly about which RTOS to use. We
>have no previous experience of using an RTOS and we don't really have
>the time to develop the taste needed to know which features are
>important to us(we must be unique! ;-). I would be very interested in
>the opinions of any developers who have had any recent experience with
>both OS's, and  developers who have gone the full cycle to delivering
>and supporting a product in the field.
snip

>Support for the MMU
VxWorks and LynxOS have very different tasking models, as well as very
different support environments.  
LynxOS is a self hosting, very Unix like environment.  It has the Unix
process/thread tasking model, and tasks run in protected memory
spaces.
VxWorks as a more primitive tasking model.  All tasks (normally) run
in a single, common address space, with no code or data segment memory
protection.  VxWorks does have MMU support (via an add on product
called VxVMI), which, under some circumstances, allows you to create
(semi) protected environments.  However, it gives you virtually no
help in managing the virtual address space.

>BSP Availability.
VxWorks appears to have much better support for new platforms, both by
Wind River itself, and by 3rd parties porting the environment onto new
platforms.  I have not created device drivers in either environment,
but don't believe that either are terribly difficult to work in.
Don't confuse BSP support with device support.

>Technical Support
I haven't tried to get technical support from Lynx.  WRS technical
support is slow and un-coordinated (my opinion).  TSRs to not appear
to have general visibility to the community at large.  Getting status
on a TSR that someone else opened seems to be impossible.
I cannot address the practice in the UK.

>Development Environment
LynxOS is self hosting.  I am also told that you can cross develop and
get an enhanced debug environment under SunOS/Solaris.
VxWorks is not self hosting. period.  You have to have some sort of
cross development system.  The Sun environment appears to be both more
mature and better supported than NT.  I haven't worked with Tornado
(you don't have to if you don't want to), but all the postings I have
read appear to be complaints about it's instability and immaturity.
> I  would be interested to know
>how well the development tools work with other development tools such
>as Rational Apex C++(or Ada95), Iona's Orbix, ILog's Views and
>ObjectStore.
We (just recently) looked into ORB support for LynxOS.  Orbix does not
appear to be supported at this time.  There may be other ORBs
available, and there is a rumor of a port of ILU into Lynx.

>POSIX compiance
LynxOS 2.4 is POSIX.1b complient.  POSIX Threads, POSIX message
queues, and POSIX secheduling (maybe more, I've only worked with these
areas).  VxWorks does have a partial  POSIX environment, as well.  The
tasking is different (priorities operate in the opposite order), and
(as mentioned before) it doesn't do threads.  Message Queues are
available.
Porting should be simpler into Lynx, if you are coming from a
Unix-like environment.  Also, porting out of the environment to
something else that is POSIX should be fairly easy.

About changes in WRS to more closely support POSIX.  I wouldn't bet on
it, in several fundamental areas.  They have no interest in moving
into a protected task memory environment.  Consequently, they will not
(because they need not) support POSIX type shared memory.  I kind of
doubt that they will change their tasking model, either.
They pride themselves on being a "low overhead, high efficiency"
environment, and view these kind of changes as undesireable.

>Our applications domain is power systems control.  We are considering
>the use of the PowerPC 604, may need to use DSP's, We  need to process
>many fast analgue and many slow digital signals. Several parts of the
>control system are duplicated. We expect a  typical application to use
>half a dozen processors, a few DSP's and half a dozen I/O cards.

Since VxWorks does not operate in a protected memory task environment,
you will need to be very careful in the testing of your application.
It is very easy to have one piece of code "run away".  In protected
task memory environments, the offending task is quickly and easily
identified (localizing it to the offending compilable unit / line is
much more difficult).  In VxWorks, since there is an open address
space, and without VxVMI, no CSECT protection of either the kernel, or
the user task, a "rogue" task could effect any area of the system.
Not an impossible situation to deal with, but it may influence your
decision.

>As usual, any help with any part of this query will be greatly
>appreciated.

>Neil Turner

Ted Marz
(These comments reflect my own opinions, and do not reflect any
official position of my employer).

---------------------------

Newsgroups: comp.os.vxworks,comp.os.lynx
Subject: Re: VxWorks versus LynxOS
Date: Fri, 7 Feb 1997 16:47:37 GMT
From: seibert@Lynx.COM (Greg Seibert)
Organization: Lynx Real-Time Systems
Message-ID: <E58rzF.4p@Lynx.COM>
References: <5ddq5o$ae5$1@despair.u-net.com>
Sender: news@Lynx.COM (Root on Lynx Servers)

In article <5ddq5o$ae5$1@despair.u-net.com>,
Neil Turner <njt@worlds-edge.u-net.com> wrote:
>Hello,
>
[whole bunch of good stuff deleted]
>
>As usual, any help with any part of this query will be greatly
>appreciated.
>

Depending on if, and where, any existing code you plan to use came from
LynxOS is generally easier to port to. I found this out from direct
experience at my last job using LynxOS.

A recent observation came from Sun of all places. They have a 100baseTx
card that this one fellow spent four months porting their driver to
VxWorks. He finished his port to LynxOS yesterday after four days of
work. 30 to 1 decrease in cost in this case.

There are many other similar stories. If you're planning on creating
all your stuff from scratch without any plans to move from VxWorks,
then quite honestly their debug tools currently kick ass over ours.
This gap is quickly closing.
- -- 
- --Greg
mailto:seibert@lynx.com         |  Lynx Real-Time Systems, Inc.
"Time is always real.           |  San Jose, Ca
 What you do with it isn't."    |  (408) 558-3137

---------------------------

Newsgroups: comp.os.vxworks
Subject: What do you think of Tornado
Date: Fri, 07 Feb 1997 16:40:29 GMT
From: "Paul D Morriss" <paulm@active.imaging.co.uk>
Organization: Active Imaging (UK) Ltd
Message-ID: <01bc1515$7d9f0000$d398dfc2@philip.imaging.co.uk>

What do people think of Tornado?
I saw a message a while ago saying it was buggy.
Is it worse under 95 or Unix?

Thanks in advance

Paul Morriss

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: DHCP support for Tornado 1.0
Date: 5 Feb 1997 20:25:15 -0800
From: chaos@idiom.com (h.j. bae)
Organization: the derome mansion, oakland california
Message-ID: <5dbmfb$img@idiom.com>
References: <32F93EC0.7068@wrs.com>

In article <32F93EC0.7068@wrs.com>, Scott Slomba  <scotts@wrs.com> wrote:
>Hi,
>
>DHCP is going to be supported in the next release of the networking
>stack, BSD 4.4, due out shortly after the Tornado 1.0.1 maintenance
>release.  I'm working with some people who are in need of DHCP now.
>Does anybody know of a DHCP integration with the current Tornado
>1.0 networking stack.
>
>Any information would be greatly appreciated.

i've ported public domain dhcp server code to current vxworks tornado 1.0
and it works fine.  the code was from ftp.vix.com and needs some
reworking for vxworks.

- -- 
 http://www.pso.com

---------------------------

Newsgroups: comp.realtime,comp.sys.powerpc.tech,comp.os.vxworks
Subject: Real Time Trace on embedded PowerPC
Date: Mon, 27 Jan 1997 12:22:21 +1030
From: Andrew Kelly <slobber@ozemail.com.au>
Organization: sti
Message-ID: <32EC0A55.449D@ozemail.com.au>
Reply-To: andrewk@vsl.com.au

I understand the IBM 403 mpu provides a secondary debug port that 
provides enough info about the instruction progression through the
instruction cache to provide real-tim-trace functionality via a probe
and some external decoding software.  Is this facility available on
the Motorola 800 series?

What tools are people using to do real-time development/debugging with 
PowerPC?  I am particularly intersted in Motorola 8xx stuff ...

Thanks in advance.

- -- 
+====================================================================+
| Andrew Kelly                                              _  |\    |
| andrewk@vsl.com.au                                      _/ |_| \   |
| 38 Plymouth Ave, DEVON PARK, South Australia           /        \  |
|                                                       /          \ |
|                                                       \    __    / |
| ph: +61-8-300 4602 BH                                  \__/  \__/  |
|     +61-8-340 1929 AH                                          v   |
+====================================================================+

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Networking
Date: 7 Feb 1997 08:58:51 -0800
From: craigb@sdd.hp.com (Craig Bosworth)
Organization: Hewlett Packard, San Diego Division
Message-ID: <5dfn0bINNnur@hpsdlgd9.sdd.hp.com>
References: <gmyaLbG00UhWQ1y4Fs@andrew.cmu.edu>

In article <gmyaLbG00UhWQ1y4Fs@andrew.cmu.edu> Kevin Bradley <kb+@andrew.cmu.edu> writes:
>I'm just beginning to use VxWorks, and I'm having difficulty getting
>the system to talk to the network.

It looks like the subnet mask does not match.

>A UNIX machine here shows the following parameters:
>
>eth0      Link encap:10Mbps Ethernet  HWaddr 00:A0:24:58:E2:15
>          inet addr:127.0.0.20  Bcast:127.0.0.255  Mask:255.255.255.0
                                                         ^^^^^^^^^^^^^
>The VxWorks ifShow("elt0") gives:
>
>Netmask 0xffff0000 Subnetmask 0xffff0000
           ^^^^^^^^              ^^^^^^^^

Hopefully changing the masks to 0xffffff00 will help.
- -- 
Craig Bosworth, KD6WQH  Hewlett Packard, San Diego Division
craigb@sdd.hp.com  kd6wqh@wb6dgr.#soca.ca.usa.na  +1 619 655 8609

---------------------------

Newsgroups: comp.os.vxworks,comp.os.lynx
Subject: Re: VxWorks versus LynxOS
Date: Fri, 07 Feb 1997 17:41:05 -0700
From: Joe Van Andel <vanandel@ucar.edu>
Organization: National Center for Atmospheric Research
Message-ID: <32FBCBA1.3A92@ucar.edu>
References: <5ddq5o$ae5$1@despair.u-net.com>

njt@worlds-edge.u-net.com (Neil Turner) said:
>If we were to consider moving to NT(as and when or if,
>the hard real-time capability appears) or any other POSIX compliant
>RTOS, will porting our sources be less difficult with LynxOS than with
>VxWorks? 

Just to clear up any confusion regarding NT and POSIX -  NT has some
POSIX features, but they were put in just to meet the letter (but *NOT*
the spirit) of some US government procurement specifications.   POSIX as
shipped in NT is fairly useless - you can't use any of the WIN32 APIs,
because they are in a separate "Sub-system" from the POSIX "Sub-System".

There are two vendors supplying add-on products to NT to add a useful
POSIX capability, but Microsoft's POSIX features are *NOT* useful to
most people.

- -- 
Joe VanAndel  	          Internet: vanandel@ucar.edu
National Center for 	  http://www.atd.ucar.edu/~vanandel/home.html
Atmospheric Research

---------------------------

Newsgroups: comp.os.vxworks
Subject: Tcl file open
Date: Fri, 07 Feb 1997 11:32:01 -0600
From: Steve Strauss <steves@lmtas.lmco.com>
Organization: LMTAS News Server
Message-ID: <32FB6711.70DE@lmtas.lmco.com>

Does anyone know how to open a binary file on the host (using Tcl),
and write its contents, 512 bytes at a time, to target memory?  It looks
like it would be easy to do the opposite - copy target memory to a file,
by using wtxMemRead to get the data into a memory block, and
memBlockWriteFile to get it from the memory block to a file.  But there
is no memBlockReadFile to get binary data FROM a file.  (There is
wtxMemWrite to move the data from a memory block to the target.)  Any
ideas would be greatly appreciated.

Steve Strauss

---------------------------

Newsgroups: comp.os.vxworks
Subject: Help Wanted: POSIX.4 System Call
Date: 8 Feb 1997 06:28:08 GMT
From: "Your_Name" <login@themall.net>
Message-ID: <01bc1589$83858600$d4f12399@raymondy>

I'm new to POSIX.4 system calls.  In particular, my
application deals with real-time protocol message
exchanges.  POSIX supports mq_receive with either
O_NOBLOCK or BLOCK until message is received.

To set up a guard timer, I attempt to use timer_connect
etc.  What is the common practice in handling the time
out signal SIGALRM?  I tried to have my signal handler
to send a timeout message back to the task.  Unfortunately,
mq_receive returns with ERROR and errno= EINTR.
How do I make the task aware of the timeout event?

I'd appreciate it if you can share your experience with
me here. 

Thanks,
Raymond Yeung
ryeung@themall.net

---------------------------

End of New-News digest
**********************

From daemon@csg.lbl.gov  Sun Feb  9 04:00:22 1997
From: daemon@csg.lbl.gov
Date: Sun Feb  9 04:00:27 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Sun Feb  9 04:00:19 PST 1997

        Subject: Re: 82557 driver
        Subject: Can Anyone Help?
        Subject: Getting Started with VxWorks on NT
        Subject: Dynamic Config of DRAM's
        Subject: Information on MPC860/821 Device Drivers
        Subject: Re: Warning Messages
        Subject: PMAC Drivers
        Subject: Re: syntax completion - a bad thing?

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: 82557 driver
Date: Thu, 06 Feb 1997 12:22:16 -0800
From: Greg Rasche <grasche@gi.com>
Organization: General Intrument
Message-ID: <32FA3D78.1116@gi.com>
References: <218EEB3201660C00@mail.madge.com>
Reply-To: grasche@gi.com

Try Cyclone Microsystems, they've got a 557 on a squall module that
works just fine.  

Greg Rasche

Guy Kronental Ops-Tel wrote:
> 
> Hi.
> I am  working with vxWorks 5.3 and i960CA CPU.
> I am in search of a driver for intel's 82557 chip (10/100M Ethernet
> Cntrl).
> If anyone knows of a reliable driver I will be happy to hear about it.
> 
> Thanks GUY.

- -- 
Greg Rasche                    _/            _/_/_/_/_/    _/_/_/_/_/   
_/_/_/_/_/
mrasche1@aol.com               _/            _/      _/    _/      _/   
_/      _/
LRGR & Associates Inc.         _/            _/      _/    _/           
_/      _/
13690 Lindamere Lane           _/            _/_/_/_/      _/           
_/_/_/_/
San Diego, CA 92128            _/            _/     _/     _/    _/_/   
_/     _/
Phone:   (619)  673-8898       _/            _/      _/    _/      _/   
_/      _/
FAX:     (619)  673-2228       _/_/_/_/_/    _/      _/    _/_/_/_/_/   
_/      _/

---------------------------

Newsgroups: comp.realtime,comp.os.vxworks,comp.arch.embedded
Subject: Can Anyone Help?
Date: Thu, 06 Feb 1997 16:37:07 -0800
From: Mona Carver <volttex@ix.netcom.com>
Organization: VSG
Message-ID: <32FA7933.2FC7@ix.netcom.com>

Does anyone know where I might find embedded programmers with experience 
in either pSOS, VTRX, or VxWorks?  We have multiple job openings in St. 
Paul, Minnesota.  If so, please respond directly to 
volttex@ix.netcom.com.

Thanks for your help.

Mona Carver

---------------------------

Newsgroups: comp.os.vxworks
Subject: Getting Started with VxWorks on NT
Date: Fri, 07 Feb 1997 15:41:37 -0600
From: gregl@criticalpath.com
Organization: Deja News Usenet Posting Service
Message-ID: <855351456.3179@dejanews.com>

  I am trying to get started with development with VxWorks, and I would
appreciate some pointers in the following areas. 1.  Does VxWorks exist
in a freely distributable form for Windows NT 4.0?  a. Either way, where
can I get a copy? 2.  Is there a target on the Internet or a simulator
that I can run in NT that will respond to VxWorks commands?

Thank you for your time in advance,
- --Greg Livengood
gregl@criticalpath.com

- -------------------==== Posted via Deja News ====-----------------------
      http://www.dejanews.com/     Search, Read, Post to Usenet

---------------------------

Newsgroups: comp.os.vxworks
Subject: Dynamic Config of DRAM's
Date: Mon, 3 Feb 1997 06:09:02 GMT
From: wchung@netcom.com (Wing-kuen Chung)
Organization: Netcom On-Line Services
Keywords: MakeSkel, make.depends, makeTarget2, MEM_HIGH_ADRS, etc.
Message-ID: <wchungE50Jr2.Fqz@netcom.com>
Sender: wchung@netcom12.netcom.com

Hello Fellow VxWorks Users,

In my situation, I have to be able to "dynamically" configure the
on-board DRAM (the board is M68360-based).  The idea is to have the
VxWorks BSP's "dynamically" set the chip-select information for the 
DRAM when SIMM memory chips are added on or replaced with different 
sizes.  At first, I thought that it was kind of easy but it turns 
out that MEM_HIGH_ADRS, LD_HIGH_FLAGS, etc. are also parts of the 
variables in the VxWorks (v5.2) make files.  In this case, I would
assume that once I have the hardware board DRAM modified, the 
existing VxWorks load may not be able to recognize the new DRAM
size even if I code it up in romInit.s or the like to detect new
DRAM configuration since the make environment also needs to take
part in the configuration.  This sounds lame to me unless I don't
understand the VxWorks.  Of course, I believe VxWorks can handle
this well.  Then perhaps I need some pointers from you as of what
I'd missed.  There got to be a bunch of people in the VxWorks users'
community who had alread run into this kind of need.  As seen,
"dynamic" really means no change in MakeSkel and recompilation upon
SIMM module change.  In terms of "MEM_HIGH_ADRS" in config.h, I can
always tweak them.

I greatly appreciate it if there is any lead to an answer or clue.

Thanks,

Wing.
- -- 

---------------------------

Newsgroups: comp.os.vxworks
Subject: Information on MPC860/821 Device Drivers
Date: Tue, 04 Feb 1997 15:50:58 -0800
From: Diane Kato <dkato@printrak.com>
Organization: Printrak International Inc.
Message-ID: <32F7CB62.794B@printrak.com>

Hi,

We are working on a project using the PowerPC MPC821 processor
and the ADS860 Board Support Package.

We need to obtain the following device drivers that are not
included as part of the BSP:

       I2C, SPI, DMA, PCMCIA

Does anyone know of any device driver software that is availible
for these devices?

Any help would be greatly appreciated...

- -- 
Diane Kato
dkato@printrak.com
http://www.PrintrakInternational.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Warning Messages
Date: 9 Feb 1997 03:34:36 GMT
From: garyjohn@spk.hp.com (Gary Johnson)
Organization: Hewlett-Packard, Spokane Division
Message-ID: <5djgkc$aug@hpcvsnz.cv.hp.com>
References: <32F9E91F.504@compuserve.com>

Jeff Schmidt ("74043,572"@compuserve.com) wrote:
> I'm developing C/C++ code using the cc386 compiler and am having
> problems controling which warning messages actually get displayed.  I've
> tried a number of things without receiving the desired results.  What I
> need to do is basically supress all warning messages with the exception
> of a selected few.

I usually want to see all the warning messages _except_ a selected few,
so I pipe the output of the compiler through a sed script to remove the
warnings about things I can't or won't fix.  I've never tried turning
off all the warnings, so I'm afraid I can't help you there.

Gary

---------------------------

Newsgroups: comp.os.vxworks
Subject: PMAC Drivers
Date: 8 Feb 1997 16:57:10 -0500
From: atathert@mtu.edu (Adam T. Atherton)
Organization: Michigan Technological University
Message-ID: <5disrm$p2p@maxwell13.ee>

I am working on an autonomous vehicle using the PMAC from 
Delta Tau and I was wondering if anyone has driver code
for the board. 

Thanks, 
Adam Atherton 
atathert@mtu.edu

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Re: syntax completion - a bad thing?
Date: 8 Feb 1997 23:19:50 -0500
From: dewar@merv.cs.nyu.edu (Robert Dewar)
Organization: New York University
Message-ID: <dewar.855461813@merv>
References: <32F91629.5F9@vsl.com.au> <dewar.855234467@merv> <32fa1450.32791176@news.logica.co.uk>

Steve said

<<Ahh! But the problem occurs with the EDITOR. Apex is a development
environment (editor, config control, &c) - When you are using the
editor, you get syntax completion (unless you turn it off). I have
used Apex (and the earlier Rational 'delta' boxes) and encountered
bugs resulting from erroneous code completion - usually an 'end if' in
the wrong place. The editor seems to look for a blank line sometimes
(presumably when indentation does not help) and puts the end if there.
IMO completion is helpful if you force it after keywords to get a
template IF you are writing a new subprogram. On existing code it is
more trouble than it is worth. My approach was to use vi on existing
code and the Rational editor to create new stuff.>>

Ah, sure, yes the Rational EDITOR does like to molest source as you
enter it. A lot of programmers like this and find it useful, and as
you point out it is an option you can turn off. Personally I hate
editors that do *anything at all* to the text I am entering, I don't
even like the Ada mode in EMACS, and I think that editors that produce
"useful" templates (like the default mode of EPM on OS/2 editing a C
file, or DEC's LSE) are a menace.

But this is a place where tastes differ VERY widely, and the important
thing is that these kind of features should be configurable in your
environment. And indeed using vi seems a quite reassonable "work around".

---------------------------

End of New-News digest
**********************

From daemon@csg.lbl.gov  Mon Feb 10 04:00:18 1997
From: daemon@csg.lbl.gov
Date: Mon Feb 10 04:00:20 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Mon Feb 10 04:00:15 PST 1997

        Subject: serial ports again..
        Subject: Re: VxWorks versus LynxOS
        Subject: Re: syntax completion - a bad thing?

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: serial ports again..
Date: Mon, 10 Feb 1997 07:58:56 +0100
From: Jean-Luc Fleureau PERS <fleureje@ensieta.fr>
Organization: ensieta
Message-ID: <32FEC730.1732@ensieta.fr>

- -- Hi all,

First, thanks to those who have answered to my previous questions.

I try again to use my four serial ports on my mvme 162-223 card.
To those, who have not followed the story before, I have four serial
connectors on my mvme card and only two ports were initialized by the
boot vxWorks, I have found in a header file (the target'one), a DEFINE
of the N_SIO_CHANNELS, I have turned this constant from 2 to 4,
expecting that was enough to use my four channels....

NOW, I have four devices, /tyCo/0.... /tyCo/3, but only the two firts
work. So I think, there is another nicety dealing with interruptions
linked to the other serial ports. But WHERE can I define or change
something to tell to my card that interuptions are available?

Best regards.

Please prefer mail to answer.

Jean-Luc FLEUREAU.
****************************************************************
Dpt Electronique Informatique Automatique
Ecole Nationale Superieure des Ingenieurs des Etudes et 
Techniques d'Armement
2 Rue Francois VERNY 29806 BREST cedex 9 FRANCE

Everything you ever wanted to know about me, 
but were afraid to ask ----> http://www.ensieta.fr/~fleureje/

TEL : 02 98 34 88 45 FAX : 02 98 34 87 50
Email : Jean-Luc.Fleureau@ensieta.fr
***************************************************************

---------------------------

Newsgroups: comp.os.vxworks,comp.os.lynx
Subject: Re: VxWorks versus LynxOS
Date: Sat, 08 Feb 1997 12:55:47 +0100
From: Philippe Le Foll <phillf@fridu.com>
Organization: Fridu a Free Software Company
Message-ID: <32FC69C3.78466193@fridu.com>
References: <5ddq5o$ae5$1@despair.u-net.com> <32FBCBA1.3A92@ucar.edu>

Joe Van Andel wrote:
> 

> Just to clear up any confusion regarding NT and POSIX -  NT has some
> POSIX features, but they were put in just to meet the letter (but *NOT*
> the spirit) of some US government procurement specifications.   POSIX as
> shipped in NT is fairly useless - you can't use any of the WIN32 APIs,
> because they are in a separate "Sub-system" from the POSIX "Sub-System".
> 
This is not true any more for version 4.0 of NT, in 4.0 win32 has been
included in kernel space and can be used by any subsystems.

Nevertheless POSIX is still a subsystem, and some errors when calling
posix entry point can lock sub-system. In this case all task trying
to use it will fail with an error that look like 

          "Posix sub-system busy"

Conclusion: NT Posix looks more like a marketing product that like
 a real tool, under NT-4.0 it is better than before but still useless.

phillf@iu-vannes.fr

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Re: syntax completion - a bad thing?
Date: Mon, 10 Feb 1997 21:59:51 +1030
From: Greg Bek <gab2@rational.com>
Organization: Rational Software Corporation
Message-ID: <32FF06AE.190F@rational.com>
References: <32F91629.5F9@vsl.com.au>
Reply-To: gab2@rational.com

Andrew Kelly wrote:
> 
>...
> 
> This seems, to me, to be more dangerous than it is useful ...
> eg. If you accidentally delete the "end" from a nested "if",
> where does the analyser stuff the "end"?  Indeed, even if it
> gets the placement correct (eg. by inference from the text
> indentation) if code statements have been inadvertantly deleted
> as well, a clearly erroneous file will compile cleanly.
>
The syntax completion algorthim attempts to put closing constructs
close the offending opening construct.  This tends to make the
additions obvious to the user performing the editing.  Similarly
you can force it to break constructs with a well placed semi-colon
when editing.

Certainly there is a risk in the syntax complete creating
eroneous code.  But programming is an intellectual activity,
you don't do it with the brain turned off.  The same risk
applies with a global search and replace, or the very common
cut/paste style of bug where you don't quite fix up all the
bits you should in the newly pasted text.

I wouldn't trade my Apex Ada editor for any other option,
the ability to browse definitions, perform show_usage and
auto formatting and syntax completion, along with 25 levels
of undo make it my editor of choice for Ada.  For me it
is the appropriate tool.  As Jerome D wrote is his response
there are ways to disable the behaviour if you want to.

 
> I believe syntax completion should be available during editting,
> but not automatically employed during compilation.  As far as I
> can discover, it cannot be switched off in Apex either.
> 
> Has anybody had any experiences with syntax completion that may
> confirm or allay my fears?

---------------------------

End of New-News digest
**********************

From 74043.572@CompuServe.COM  Mon Feb 10 08:16:10 1997
From: Jeff Schmidt <74043.572@CompuServe.COM>
Date: Mon Feb 10 08:16:12 PST 1997
Subject: Re: Proper use of malloc() -- Include files
Yes,

I experienced a similar thing with the math functions.  If you do not include
the proper header file containing the function prototype the function assumes an
integer return value.  I found it to be slightly undesirable having my sin() and
cos() functions returning ints.

Jeff Schmidt out
74043.572@compuserve.com

From GNarciso@mailb.harris.com  Mon Feb 10 09:37:39 1997
From: GNarciso@mailb.harris.com (GNarciso)
Date: Mon Feb 10 09:37:41 PST 1997
Subject: Image Processing Libraries
     Does anyone know of any image processing libraries available for 
     VxWorks?  I am mostly interesting in libraries which may contain FFTs 
     and inverse FFTs but may need other functions also.

From GNarciso@mailb.harris.com  Mon Feb 10 09:39:12 1997
From: GNarciso@mailb.harris.com (GNarciso)
Date: Mon Feb 10 09:39:13 PST 1997
Subject: Config data storage to FLASH
     Does anyone have any information on how to read and write to FLASH 
     memory from a VxWorks application on a Motorola MVME-177 single board 
     computer?  Sample code would be great but any information would be 
     appreciated.

From fbh@vlsi9.gsfc.nasa.gov  Mon Feb 10 10:24:29 1997
From: Francis Hallahan <Francis.Hallahan@gsfc.nasa.gov>
Date: Mon Feb 10 10:24:30 PST 1997
Subject: Re: Networking
>From: Kevin Bradley <kb+@andrew.cmu.edu>
>Here's the situation:  ...
>the whole nine yards.  But I can't ping anybody, nor can anyone else
>ping the machine.

   See if you specified a gateway address
   in the boot parameters and remove it.

   Use the routeShow command to see if this is the problem.
   If you specify a gateway, you will see two(2) entries in the
   "ROUTE NET TABLE".  You will have a problem if both entries
   specify the same destination net and different gateways.

   The end of the "Getting Started" section Ch 3 of the User's Guide
   (Ch 2 of the 5.2 Programmer's Guide) provides some excellent
   suggestions and commands for debugging network problems.

We just had a similar problem last week where a mv167 and an HP
workstation could ping each other, but the mv167 could not ping
anyone else nor could anyone else ping the mv167.  Sure enough
we had booted with a gateway specified.

>....
>eth0      Link encap:10Mbps Ethernet  HWaddr 00:A0:24:58:E2:15
>          inet addr:127.0.0.20  Bcast:127.0.0.255  Mask:255.255.255.0
> . . . .
>(names, IP addresses, etc. changed to protect the innocent).
>
>The VxWorks ifShow("elt0") gives:
>
>Flags: (0x63) UP BROADCAST ARP RUNNING
>Internet Address:  127.0.0.75
>Broadcast Address: 127.0.0.255
>Netmask 0xffff0000 Subnetmask 0xffff0000
> . . . .
 ****  Panic: ****
Your example shows a "127.xxx.xxx.xxx" address. Please tell me you are
NOT using any address starting with "127. ..." and this address is just an
example 'changed to protect the innocent'. I assume you are not from the
information below.

VxWorks, and most network devices, define a localhost or loopback host
with an IP of "127.0.0.1" and netmask of "ff000000".  If you use anything
in this "127. ..." range, no ethernet traffic would occur from the
system( see below ).

Since the IP addresses that you show all fall within a class C (netmask
0xffffff00), I doubt that the netmask is your problem, although it may
cause other problems.

>Looking at the TCP traffic, I observe the following:
>
>14:12:23.596138 arp who-has ROUTER tell VX1
> . . .
>18:14:42.677709 arp who-has VX1 (0:20:af:9d:42:5c) tell ROUTER
> . . .
>In other words, the machine seems to want to talk, and tries, but
>is speaking another language or something.
>

I don't know how you are monitoring TCP traffic, but this seems to indicate
that you are getting traffic out to the net.  Check your routing
with "routeShow" on vxWorks, and "netstat -r" on UNIX.

>Questions:
>
>1)  Does "Metric" matter that it's different between the Unix and VxWorks?
>
The  "Metric" does not matter to vxWorks (not used), but is important to UNIX.

>2)  What's the arp messages?
>
ARP stands for "Address Resolution Protocol".  Its used to connect an
IP address with an ethernet(MAC) address.  The "arpShow/arp -a" commands
show the actual hardware connections your machine knows about.

>3)  Any idea how to make 'em talk to each other?
>
>4)  I presume, once it talks, linking it to Tornado will be easy...
>
Tornado - easy??  But you are right, the linking should be easy.  Personally,
I am not a Tornado fan;  I like the vxWorks shell better.

I hope this info helps,  vxWorks is easy and fun to use once
you get the hang of it.

Frank Hallahan

/-------------------------------------------------------------------------\
| Frank Hallahan                            |  Hallahan@gsfc.nasa.gov     |
|   Software Environment Leader - Code 521  |  fbh@vlsi.gsfc.nasa.gov     |
| Computer Sciences Corporation             |                             |
| at Nasa Goddard Space Flight Center       |  Phone (301) 286 7064       |
\-------------------------------------------------------------------------/

From fbh@vlsi9.gsfc.nasa.gov  Mon Feb 10 10:25:39 1997
From: Francis Hallahan <Francis.Hallahan@gsfc.nasa.gov>
Date: Mon Feb 10 10:25:41 PST 1997
Subject: Re: Networking
>From: Kevin Bradley <kb+@andrew.cmu.edu>
>Here's the situation:  ...
>the whole nine yards.  But I can't ping anybody, nor can anyone else
>ping the machine.

   See if you specified a gateway address
   in the boot parameters and remove it.

   Use the routeShow command to see if this is the problem.
   If you specify a gateway, you will see two(2) entries in the
   "ROUTE NET TABLE".  You will have a problem if both entries
   specify the same destination net and different gateways.

   The end of the "Getting Started" section Ch 3 of the User's Guide
   (Ch 2 of the 5.2 Programmer's Guide) provides some excellent
   suggestions and commands for debugging network problems.

We just had a similar problem last week where a mv167 and an HP
workstation could ping each other, but the mv167 could not ping
anyone else nor could anyone else ping the mv167.  Sure enough
we had booted with a gateway specified.

>....
>eth0      Link encap:10Mbps Ethernet  HWaddr 00:A0:24:58:E2:15
>          inet addr:127.0.0.20  Bcast:127.0.0.255  Mask:255.255.255.0
> . . . .
>(names, IP addresses, etc. changed to protect the innocent).
>
>The VxWorks ifShow("elt0") gives:
>
>Flags: (0x63) UP BROADCAST ARP RUNNING
>Internet Address:  127.0.0.75
>Broadcast Address: 127.0.0.255
>Netmask 0xffff0000 Subnetmask 0xffff0000
> . . . .
 ****  Panic: ****
Your example shows a "127.xxx.xxx.xxx" address. Please tell me you are
NOT using any address starting with "127. ..." and this address is just an
example 'changed to protect the innocent'. I assume you are not from the
information below.

VxWorks, and most network devices, define a localhost or loopback host
with an IP of "127.0.0.1" and netmask of "ff000000".  If you use anything
in this "127. ..." range, no ethernet traffic would occur from the
system( see below ).

Since the IP addresses that you show all fall within a class C (netmask
0xffffff00), I doubt that the netmask is your problem, although it may
cause other problems.

>Looking at the TCP traffic, I observe the following:
>
>14:12:23.596138 arp who-has ROUTER tell VX1
> . . .
>18:14:42.677709 arp who-has VX1 (0:20:af:9d:42:5c) tell ROUTER
> . . .
>In other words, the machine seems to want to talk, and tries, but
>is speaking another language or something.
>

I don't know how you are monitoring TCP traffic, but this seems to indicate
that you are getting traffic out to the net.  Check your routing
with "routeShow" on vxWorks, and "netstat -r" on UNIX.

>Questions:
>
>1)  Does "Metric" matter that it's different between the Unix and VxWorks?
>
The  "Metric" does not matter to vxWorks (not used), but is important to UNIX.

>2)  What's the arp messages?
>
ARP stands for "Address Resolution Protocol".  Its used to connect an
IP address with an ethernet(MAC) address.  The "arpShow/arp -a" commands
show the actual hardware connections your machine knows about.

>3)  Any idea how to make 'em talk to each other?
>
>4)  I presume, once it talks, linking it to Tornado will be easy...
>
Tornado - easy??  But you are right, the linking should be easy.  Personally,
I am not a Tornado fan;  I like the vxWorks shell better.

I hope this info helps,  vxWorks is easy and fun to use once
you get the hang of it.

Frank Hallahan

/-------------------------------------------------------------------------\
| Frank Hallahan                            |  Hallahan@gsfc.nasa.gov     |
|   Software Environment Leader - Code 521  |  fbh@vlsi.gsfc.nasa.gov     |
| Computer Sciences Corporation             |                             |
| at Nasa Goddard Space Flight Center       |  Phone (301) 286 7064       |
\-------------------------------------------------------------------------/

From jsmith@bnlls1.nsls.bnl.gov  Mon Feb 10 11:50:20 1997
From: "John D. Smith" <jsmith@bnlls1.nsls.bnl.gov>
Date: Mon Feb 10 11:50:22 PST 1997
Subject: Motorola 162 boards and D16/D32 bit transfers to VME bus.
Hello:

	I am using a Motorola MVME162 board and find that
when I address VME memory the board uses D16 and not
D32 data transfers. Looking over the literature it seems
that the board has memory mapping registers that will allow
either 16 or 32 bit transfers.
	Is there a Vxworks function call to set the type of
transfer. What is needed to make the default D32.

john

John Smith
Brookhaven National Lab
Upton NY 11973
jsmith@bnl.gov

From bcrozier@fci.COM  Mon Feb 10 12:41:58 1997
From: bcrozier@fci.COM (Bruce Crozier)
Date: Mon Feb 10 12:42:00 PST 1997
Subject: RE: D16/D32 bit transfers to VME bus
In general, if you are doing pointer based I/O, the transfer size is 
determined by the size of the type.

e.g. if you use a (char *) pointer, you will do byte transfers,
if you use an (int *) pointer, you will do 16 (or 32) bit transfers
depending on your CPU.  Printout sizeof(int) or whatever you use to check. 

> 	I am using a Motorola MVME162 board and find that
> when I address VME memory the board uses D16 and not
> D32 data transfers. Looking over the literature it seems
> that the board has memory mapping registers that will allow
> either 16 or 32 bit transfers.
> 	Is there a Vxworks function call to set the type of
> transfer. What is needed to make the default D32.

Regards,
Bruce Crozier
Customer Engineering
Force Computers

From malcolm.cifuentes@nautronix.com.au  Mon Feb 10 17:07:35 1997
From: malcolm.cifuentes@nautronix.com.au (Malcolm Cifuentes)
Date: Mon Feb 10 17:07:47 PST 1997
Subject: Motorola 162 boards and D16/D32 bit transfers to VME bus.
Hope I am on the right path here, but I assume you are talking about
D16/D32 cycles!  If not then this is incorrect!

I use this for vxworks 5.2, MVME 167!

From what I understand the vxworks kernel is configured to D16, A24 address 
modes.  You must change 'sysLib.c' to force A24/D32 cycles to take place.  
Modification should look something like the following :-
        *VMECHIP2_LBSAR     &= ~LBSAR2_D16;             /* Mask D16 cycles */
        *VMECHIP2_LBSAR     |=  LBSAR2_D32;             /* Enable D32 cycles */
 
    These lines should be placed after the line :-
        *VMECHIP2_LBSAR     |= LBSAR3_AM_EXT_USR_DATA | LBSAR3_D32;

Hope this helps!
-- 
Malcolm Cifuentes 
(
 Nautronix LTD          
 malcolm.cifuentes@nautronix.com.au   
 PH  : +61-09-430-5900  
 FAX : +61-09-430-5901  
)

From froeber@bbn.com  Mon Feb 10 18:10:36 1997
From: Fred Roeber <froeber@bbn.com>
Date: Mon Feb 10 18:10:47 PST 1997
Subject: Re: MVME162 serial ports
On Mon, 10 Feb 1997, Jean-Luc Fleureau wrote:

> I try again to use my four serial ports on my mvme 162-223 card.
> To those, who have not followed the story before, I have four serial
> connectors on my mvme card and only two ports were initialized by the
> boot vxWorks, I have found in a header file (the target'one), a DEFINE
> of the N_SIO_CHANNELS, I have turned this constant from 2 to 4,
> expecting that was enough to use my four channels....

I would suggest that what you really want to do is set up the BSP so that
it supports the MVME162LX card that you have as opposed to a MVME162 that
is the default.  To do this, go into the beginning of the config.h file
in the BSP directory and find the code:
   #if     FALSE            /* change to true if using a MVME162LX target */
   #define MVME162LX

Change the FALSE to a TRUE.  This will change several things in the BSP
including setting it up to support the 4 front panel serial ports that
your MVME162LX card has.  Good luck.   Fred

   |     Fred J Roeber,  BBN Systems & Technologies     |
   |   4 John Clarke Road   Middletown, RI  02842-5202  |
   |         froeber@bbn.com     401-848-3548           |

From pcn@teil.soft.net  Mon Feb 10 20:19:38 1997
From: pcn@teil.soft.net (P.C.Narasimha Reddy)
Date: Mon Feb 10 20:19:56 PST 1997
Subject: 4.4BSD TCP/IP porting on vxWorks
hello
        I have at hand the seemingly impossible task of porting 4.4 BSD
        TCP/IP stack on to vxWorks. I had been working on the BSD 4.4
        TCP/IP for a long time, but have no idea of vxWorks, except that
        it has the 4.3 BSD TCP/IP implentation.

        Can anyone help me by, discussing the feasibility of the task, and
        if feasible, give an approximate estimation of the amount of work
        that is needed (in man-months).

Regards
narsimha

pcn@teil.soft.net

From pardo@rti.com  Mon Feb 10 20:59:32 1997
From: Gerardo Pardo-Castellote <pardo@rti.com>
Date: Mon Feb 10 20:59:50 PST 1997
Subject: Re: 4.4BSD TCP/IP porting on vxWorks

My understanding is that the network stack in the inminent maintenence release of Tornado (Tornado.1.0.1) is based in BSD 4.4. If you can hold off for
a month or so you may have a really easy task :)

		-Gerardo

===========================================================================
=                                           =                             =
=   Gerardo Pardo-Castellote                =   email: pardo@rti.com      =
=   Real-Time Innovations, Inc.             =   Phone: (408) 720-8312     =
=   155A Moffett Park Drive, Suite 111      =   Fax:   (408) 734-5009     =
=   Sunnyvale, CA 94089                     =   http://www.rti.com        =
=                                           =                             =
===========================================================================

>> Submitted-by pcn@teil.soft.net  Mon Feb 10 20:19:38 1997
>> Submitted-by: pcn@teil.soft.net (P.C.Narasimha Reddy)
>>  
>> hello
>>         I have at hand the seemingly impossible task of porting 4.4 BSD
>>         TCP/IP stack on to vxWorks. I had been working on the BSD 4.4
>>         TCP/IP for a long time, but have no idea of vxWorks, except that
>>         it has the 4.3 BSD TCP/IP implentation.
>> 
>>         Can anyone help me by, discussing the feasibility of the task, and
>>         if feasible, give an approximate estimation of the amount of work
>>         that is needed (in man-months).
>> 
>> Regards
>> narsimha
>> 
>> pcn@teil.soft.net
>> 
>> **********
>> 

From ConradBj@aol.com  Mon Feb 10 22:15:30 1997
From: ConradBj@aol.com
Date: Mon Feb 10 22:15:49 PST 1997
Subject: Help me get off
Could someone help me get off the explorer list. No longer wish to get
inforrmation dumps.
Thanks
Bjorn Conrad

From cgrames@mdc.com  Mon Feb 10 23:46:59 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Mon Feb 10 23:47:16 PST 1997
Subject:  Motorola 162 boards and D16/D32 bit transfers to VME bus. 
>Submitted-by jsmith@bnlls1.nsls.bnl.gov  Mon Feb 10 11:50:20 1997
>Submitted-by: "John D. Smith" <jsmith@bnlls1.nsls.bnl.gov>
>  Hello:
>
>	I am using a Motorola MVME162 board and find that when I address VME memory the board
>uses D16 and not
>D32 data transfers. Looking over the literature it seems that the board has memory mapping
>registers that will allow either 16 or 32 bit transfers.
>	Is there a Vxworks function call to set the type of transfer. What is needed to make the
>default D32.
>
>john
>
>John Smith
>Brookhaven National Lab
>Upton NY 11973 jsmith@bnl.gov

John,

I am speaking from the perspective of the MVME1604, but I believe the 162 uses the VMEchip2 as
well.

You did not mention how you are doing your VMEbus transfers.  If you are doing normal PIO to A32
or A24 space, look in sysLib.c for the routine sysHwInit.  You should find code like:

	*VMECHIP2_LBSAR |= (LBSARx_AM_STD_USR_DATA | LBSARx_Dww)	[A24]

and

	*VMECHIP2_LBSAR |= (LBSARx_AM_EXT_USR_DATA | LBSARx_Dww)	[A32]

Make sure ww is 16 where you want 16-bit transfers and 32 where you want 32-bit transfers.

If you are noticing 16-bit transfers during backplane communications using shared memory, then
you are out of luck, because Wind River's mbufs are structured such that they are always on the
odd 16-bit memory location (i.e., bcopy can only do transfers in 16-bit entities).

I hope this helps.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From kuester@hic334.decnet.bosch.de  Tue Feb 11 02:16:04 1997
From: Hans-Holger Kuester  c/o ROBERT BOSCH GmbH   FV/SLH <kuester@hic334.decnet.bosch.de>
Date: Tue Feb 11 02:16:12 PST 1997
Subject: subscribe

Please add ml_bi_vxwdeveloper@fr.bosch.de to the list.

From daemon@csg.lbl.gov  Tue Feb 11 04:00:53 1997
From: daemon@csg.lbl.gov
Date: Tue Feb 11 04:01:06 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Tue Feb 11 04:00:12 PST 1997

        Subject: NETWORK/REAL-TIME SPECIALIST
        Subject: 3C509 drivers
        Subject: Re: Multiple serial drivers in one VxWorks kernal?
        Subject: Re: Proper use of malloc()
        Subject: Re: VxWorks versus LynxOS

-------------------------------------------------------

Newsgroups: comp.os.vxworks,ont.jobs,tor.jobs,ott.jobs,can.jobs,mtl.jobs,qc.jobs,bc.jobs,misc.jobs.offered,comp.jobs.offered
Subject: NETWORK/REAL-TIME SPECIALIST
Date: Mon, 10 Feb 1997 11:20:28 -0500
From: "A.B.Simmons" <Tony.Simmons@CIMtegration.com>
Organization: DataVation
Message-ID: <32FF4ACB.1E28@CIMtegration.com>

DataVation Inc. (www.datavation.com)
SOFTWARE ENGINEER : NETWORK/REAL-TIME SPECIALIST
Location: North York, Ontario.

DataVation Inc. product development requires a specialist in network and
real-time programming to assist in the development of our patented
DataVast mass storage/network file server technology.

The ideal candidate has demonstrated knowledge of:
* ANSI C or C++ (2 or more years).
* NFS2/3, RPC, TCP/IP, etc. network programming internals.
* VxWorks or similar real-time programming.
* Unix OS, Macintosh/AppleShare, PCIbus, VMEbus desirable.

The candidate should have a bachelor's or master's degree in Computer
Science or its equivalent, and be accustomed to working with others in a
small development team to get the job done.  Thoroughness, attention to
detail, and potential leadership qualities are essential. 

We offer an excellent starting salary, a comprehensive benefits package,
and a supportive working environment.  If this is the challenge you
seek, then submit your resume by:

Mail:   Michael Mansell
        Product Manager, DataVation Inc.
        2727 Steeles Ave. West, Suite 303
        North York, Ontario, CANADA.
        M3J 3G9
Fax:    (416) 665-8285, Attn: Michael Mansell
E-mail: Mansell@DataVation.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: 3C509 drivers
Date: Mon, 10 Feb 1997 13:04:16 -0500
From: Lee Wheat <wheat@wg.com>
Organization: Wandel & Goltermann Technologies
Message-ID: <32FF6320.13F0@wg.com>

- ------------7DB4366643BB1
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii

we're trying to being up vxworks on an off-the-shelf x86
board and would like to use a 3Com 3C509 PCI Ethernet board
as the network interface. i checked 3Com's ftp site and their fax
service but they don't list such a beastie. wind river
got nervous when i mentioned PCI. i didn't find one on the
archive site (i may have missed it).

does anyone know where i can get drivers (source or binary)
for such a thing?

thanks,
lee wheat
wheat@wg.com

- ------------7DB4366643BB1
Content-Transfer-Encoding: 7bit
Content-Type: text/html; charset=us-ascii

<HTML><BODY>

<DT><TT>we're trying to being up vxworks on an off-the-shelf x86</TT></DT>

<DT><TT>board and would like to use a 3Com 3C509 PCI Ethernet board</TT></DT>

<DT><TT>as the network interface. i checked 3Com's ftp site and their fax
service but they don't list such a beastie. wind river</TT></DT>

<DT><TT>got nervous when i mentioned PCI. i didn't find one on the</TT></DT>

<DT><TT>archive site (i may have missed it).</TT></DT>

<DT><TT>&nbsp;</TT></DT>

<DT><TT>does anyone know where i can get drivers (source or binary)</TT></DT>

<DT><TT>for such a thing?</TT></DT>

<DT><TT>&nbsp;</TT></DT>

<DT><TT>thanks,</TT></DT>

<DT><TT>lee wheat</TT></DT>

<DT><TT>wheat@wg.com</TT></DT>

</BODY>
</HTML>
- ------------7DB4366643BB1--

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Multiple serial drivers in one VxWorks kernal?
Date: Mon, 10 Feb 1997 10:35:04 -0800
From: Graham Waters <waters@triumf.ca>
Organization: TRIUMF
Message-ID: <32FF6A58.4916@triumf.ca>
References: <855595128.13192@dejanews.com>

chaplin_roger@keithley.com wrote:
> 
> We're using an MVME1603-011, Tornado 1.0 (VxWorks 5.3), and want to use
> the serial port on the front panel (labeled Serial 3) as the console
> device.  
> 
> My question is, how do I compile *two* different drivers into a single
> VxWorks kernal, so that I can have all four serial ports available?

The number of serial ports are specified in:

config.h ( # define NUM_TTY )

Serial devices are opened/created in usrConfig.c:

tyCoDevCreate (/tyCo/0,bla bla)
tyCoDevCreate (/tyCo/i,bla bla)   etc

Any one can be defined as the consol device on the fly.

Graham

+-----------------------------------------------------------------------+| Graham Waters, Control System Eng          Internet: waters@triumf.ca |
| TRIUMF --- University of British Columbia,	phone: (604)-222-1047   |
| Vancouver, BC, Canada                           Fax: (604)-222-7307   |
|                                                http://www.triumf.ca   |
+-----------------------------------------------------------------------+

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Proper use of malloc()
Date: 5 Feb 1997 14:16:13 -0800
From: billr@master.cna.tek.com (Bill Randle)
Organization: Tektronix, Inc., Redmond, OR
Message-ID: <5db0rd$bn9@saab.cna.tek.com>
References: <5d7icr$bai@llnews.ll.mit.edu> <5dan2j$3u6@uuneo.neosoft.com>
Reply-To: billr@saab.CNA.TEK.COM

In article <5dan2j$3u6@uuneo.neosoft.com>, brucew@phoenix.net (Bruce Wedding) writes:
|> plward@ll.mit.edu (paula l ward) wrote:
|> >According the the programmer guide, malloc() is supposed to return a pointer 
|> >to the memory space but when I do:
|> 
|> >short *ptr;
|> >...
|> >ptr = malloc(32);
|> 
|> There is nothing wrong with this code, and it should not generate a
|> warning.  I think that we are missing something.

Actually, starting in VxWorks 5.2 (?), malloc is defined to return a void
pointer (void *), so you must cast it to the appropriate type. E.g.:

	short *ptr = (short *)malloc(32);
	char *sptr = (char *)malloc(32);

This is pretty typical these days and may be an ANSI-C thingie (but I don't know).

- -- 
	-Bill Randle
	Tektronix, Inc.
	billr@saab.CNA.TEK.COM

---------------------------

Newsgroups: comp.os.vxworks,comp.os.lynx
Subject: Re: VxWorks versus LynxOS
Date: Mon, 10 Feb 1997 22:11:22 +0000
From: Michael Johnston <rvdmikej@dircon.co.uk>
Organization: via Direct Connection News service
Message-ID: <32FF9D0A.52168BB8@dircon.co.uk>
References: <5ddq5o$ae5$1@despair.u-net.com>

Neil Turner wrote:

<snipping>
> 
> Technical Support
>  Lynx seem to be short on direct technical support in the UK.  We
> would probably have to rely on the French office. In early December I
> saw about half a dozen complaints about WindRivers technical support.
> What is the situation like in practice in the UK?
> 

I am involved with a complex and demanding development using mvme1604
boards (PPC 604).  Support from France has been quite surprising good. 
I usually get an immediate answer to my queries.

> Development Environment
> Does anyone have any opinions either way. I get the impression that it
> is preferable to opt for the UNIX rather than Windows based
> development environments.

I am using the self-hosted environment.  It works well generally,
although TotalView and TimeScan have some strange quirks.

> 
> POSIX compiance
> Lynx appear to have made more effort and progress towrd full POSIX
> compliance.  If we were to consider moving to NT(as and when or if,
> the hard real-time capability appears) or any other POSIX compliant
> RTOS, will porting our sources be less difficult with LynxOS than with
> VxWorks?

We have done initial development of much of the non-real-time parts of
our software on H-P workstations.  Using POSIX-compliant code enabled it
to be ported to LynxOS in minutes generally.

> 
> Our applications domain is power systems control.  We are considering
> the use of the PowerPC 604, may need to use DSP's, We  need to process
> many fast analgue and many slow digital signals. Several parts of the
> control system are duplicated. We expect a  typical application to use
> half a dozen processors, a few DSP's and half a dozen I/O cards.
> 

It's a good platform under LynxOS.  I have no experience with Vx-Works,
although I did look at it for our application.

- -- 
Mike Johnston MBCS, Isle of Wight, UK
rvdmikej@dircon.co.uk
*44-1983-611291 (Home)

---------------------------

End of New-News digest
**********************

From ndoye@ocegr.fr  Tue Feb 11 07:30:52 1997
From: Ibrahima Ndoye <ndoye@ocegr.fr>
Date: Tue Feb 11 07:31:04 PST 1997
Subject: QInit setup
Hi all,

Does anyone know if it is possible to select PRIORITY mode instead
of FIFO for the handling of ready queue ?
Currently inside usrKenel.c file only FIFO choice is possible.

Regards
Ibrahima

From ndoye@ocegr.fr  Tue Feb 11 07:37:54 1997
From: Ibrahima Ndoye <ndoye@ocegr.fr>
Date: Tue Feb 11 07:37:59 PST 1997
Subject: Re: QInit setup
Ibrahima Ndoye wrote:
> 
> Hi all,
> 
> Does anyone know if it is possible to select PRIORITY mode instead
> of FIFO for the handling of ready queue ?
> Currently inside usrKenel.c file only FIFO choice is possible.
> 
> Regards
> Ibrahima

Oh sorry,

one should read active queue instead of ready queue.

Thanks

From rstelzer%ims.fhg.de@sonja.ims.fhg.de  Tue Feb 11 07:43:34 1997
From: Rainer Stelzer <rstelzer@ims.fhg.de>
Date: Tue Feb 11 07:43:49 PST 1997
Subject: Re: Anyone know of a SPI Driver?
 
Hi Margaret,

are you still looking for a SPI-driver ?

We are currently working on a driver. The driver is 
not only able to talk with 'silly' peripherals 
(like realtimeclock, dac or adc).
He can also talk with intelligent subunits
with a small processors in a I2C way.

     
If You are interested contact me.

--

**********************************************************************
Fraunhofer Institut f|r Mikroelektronische Schaltungen und Systeme
Abteilung SAT
Rainer Stelzer 
Finkenstra_e 61
47057 Duisburg
Tel.  0203/3783-238 
email rstelzer@ims.fhg.de
**********************************************************************

From cgrames@mdc.com  Tue Feb 11 10:16:24 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Tue Feb 11 10:16:37 PST 1997
Subject:  Support for Serial Ports 3 and 4 on MVME160x
In response to Graham Waters (waters@triumf.ca) and others who have responded to questions
about support for serial ports 3 and 4 on the MVME160x:

Thank you for your attempts at supplying information, but what most of you do not realize is that the
MVME160x boards have TWO COMPLETELY SEPARATE serial chips for driving the four serial
ports.  The PC87303 "Super I/O" chip, which drives serial ports 1 and 2, is the only one supported
by the 160x BSP.  The Zilog 85230, which drives serial ports 3 and 4, is unsupported.  What some
of us want to know is:  Where can we get our hands on an appropriate driver for the Zilog chip, and
how can we piece it into our BSPs so we can use the additional ports?

Thanks for your consideration, but please don't bother answering unless you have a solution for
this architecture.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From wbrown@csg.lbl.gov  Tue Feb 11 10:48:48 1997
From: wbrown@csg.lbl.gov (Bill Brown)
Date: Tue Feb 11 10:48:54 PST 1997
Subject: snmp for vxWorks

Last Thursday I sent email to "inquiries@wrs.com" in which I asked the
following questions:

> We have a requirement for using snmp on our vxWorks systems in the near future.
> I've looked at the information on the web page, and have the following questions.
> 
> 1) Will the snmp product work with v5.2?
> 
> 2) If v5.3 is required, will this require us to license the "Tornado" product?
> 
> 3) What is the approximate price to add the snmp product to our WRS site-
>    license?  We'll probably be looking at >100 target systems.
> 
> Thank you for your assistance.

Since it doesn't look like I'm gonna get an answer from them, is there anyone
on the list who has experience with "WindNet SNMP"?  I'd appreciate any
information anyone would like to share.

Disclaimer:  Any opinions are my own and have	    |  -bill
    nothing to do with the official policy or the   |   wlbrown@lbl.gov
    management of L.B.N.L, who probably couldn't    |   Berkeley, CA
    care less about employees who play with trains. |   (510) 486-7183

From wbrown@csg.lbl.gov  Tue Feb 11 10:56:31 1997
From: wbrown@csg.lbl.gov (Bill Brown)
Date: Tue Feb 11 10:56:43 PST 1997
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x

I _think_ that this chip is essentially a double 8530, which was used on
some of the earlier Motorola cpu boards (mv147 maybe?).

If you've got the bsp for the '147 you might get some hints there.  It seems
like between the code in the bsp and the manual for the 85230 from Zilog
you might at least have a good starting point.

Perhaps this isn't much help, but you seem to be all wound around the axle
on this one.  Hope it's at least some help.

Disclaimer:  Any opinions are my own and have	    |  -bill
    nothing to do with the official policy or the   |   wlbrown@lbl.gov
    management of L.B.N.L, who probably couldn't    |   Berkeley, CA
    care less about employees who play with trains. |   aka wlbrown@netcom.com

From Phil_Watson@ns1.masirv.com  Tue Feb 11 12:04:11 1997
From: Phil_Watson@ns1.masirv.com (Phil Watson)
Date: Tue Feb 11 12:04:21 PST 1997
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x
>----
> Thank you for your attempts at supplying information, but what most of
> you do not realize is that the MVME160x boards have TWO COMPLETELY
> SEPARATE serial chips for driving the four serial ports. The PC87303
> "Super I/O" chip, which drives serial ports 1 and 2, is the only one
> supported by the 160x BSP.  The Zilog 85230, which drives serial ports
> 3 and 4, is unsupported.  What some of us want to know is: Where can
> we get our hands on an appropriate driver for the Zilog chip, and how
> can we piece it into our BSPs so we can use the additional ports?

We have done what you wish to do, that is, support two serial drivers
on one board. What we did was modify the tyCo drivers such that they
had unique names, scc_tycoCreate() for example. Then we created a
wrapper tyCoDrv.c that called the appropriate chip's functions. 

We didn't call both chips from tyCoDrv.c. (I suppose you might be able
to; let me know if you do.) We must specifically called the other tyco
functions from our app to start up the second driver. 

I believe the MV147 BSP uses the Zilog 8530. That's what we started our
85230 driver from. I don't think much modification was required.

----
Philip Watson
Phil_Watson@masirv.com
Matsushita Avionics Systems Corporation
15253 Bake Parkway
Irvine, California, 92618  U.S.A.
Ph: (714) 461-7300 (direct -7570)
Fx: (714) 462-7103

From jwc@ssd.ray.com  Tue Feb 11 12:45:43 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Tue Feb 11 12:45:53 PST 1997
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x
In response to  wbrown@csg.lbl.gov (Bill Brown):

The 8530 and 85C30 (found on the MVME-147) are Dual USART chips.
These BSP's may help...  However as the 85C30 is already 2 channels,
I doubt that the 85230 is a "double 8530" when they only connect to 2 serial ports.

Would someone check on the 85230 spec from Zilog.  I do not currently know where
to get one, but have significant experience with both the 8530 and the 85C30 chips,
and several flavors of implimentation (Moto '147, SBE VCOM-4/24, other non-standard
boards).

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From sridhar@prc.allied.com  Tue Feb 11 12:56:58 1997
From: sridhar@prc.allied.com (Sridhar Adumusilli)
Date: Tue Feb 11 12:57:09 PST 1997
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x

  
 
> What some
> of us want to know is:  Where can we get our hands on an appropriate driver for the Zilog chip, and
> how can we piece it into our BSPs so we can use the additional ports?
> 
> Thanks for your consideration, but please don't bother answering unless you have a solution for
> this architecture.
> 
> Charlie Grames
> McDonnell Douglas Training & Support Systems
> (314) 233-1956
> CGrames@mdc.com
> 

Here is a complete soultion you may not like.  

You can get Z85C30 driver from windriver, modify it for z85230.
Next step is integrating it into vxWorks.  I dont know if you 
will get any naming conflicts. 

Sridhar

P.S: Z85C30, and Z85230 are beasts.  You might need to get 
"SCC users manual" from Zilog to be able to handle them.

From sridhar@prc.allied.com  Tue Feb 11 13:19:01 1997
From: sridhar@prc.allied.com (Sridhar Adumusilli)
Date: Tue Feb 11 13:19:09 PST 1997
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x
Here is a solution you may not like:

I think you can get z8530 driver from windriver, modify it
for 85230.  The next step is linking it with vxWorks. I don't
know if you will get naming conflicts there.  

Also, you might want to get "SCC User's Manual" from Zilog
that explains the differences between both the chips.  It also
explains how to program these chips.

Sridhar.

From sima@tpp.epson.co.jp  Tue Feb 11 17:16:39 1997
From: sima@tpp.epson.co.jp
Date: Tue Feb 11 17:16:41 PST 1997
Subject: SUBSCRIBE
SUBSCRIBE

From darryl@isys.com  Tue Feb 11 19:35:14 1997
From: darryl@isys.com (Darryl Troxel)
Date: Tue Feb 11 19:35:16 PST 1997
Subject: Choosing a PCI CPU

Hi -

Our company makes image-based inspection systems.  Currently the
hardware of our system:

    - has a VME-bus architecture

    - uses one or more Motorola 68K-family VMEbus single-board computers
      running VxWorks

    - includes many proprietary VMEbus image processing boards

To lower costs (and for other reasons) we want to go to a PCI-bus
architecture.  We're putting our proprietary hardware on PCI and we'll
keep VxWorks, but we have some major decisions to make regarding the
CPU.  Some options we've considered:

    - Our proprietary cards in PCIbus slots of a Pentium-based motherboard

    - A PCI backplane with our proprietary cards, and a PCI single-board
      computer based on a (pick one):
	    - Pentium
	    - 68K
	    - PowerPC
	    - SPARC
	    - any other recommendations?

Here are the questions we have:

- Does anyone have experience or opinion concerning the choice of
  motherboard (with PCI slots) vs. passive backplane with PCI
  single-board computer?

- Is VxWorks easier or harder to use on a complete computer motherboard
  vs. a single-board computer?

- Are there any inexpensive processors which run big-endian
  (most-significant-first) byte ordering, like the 68K family does?  We
  would save lots of software porting time if a cheap big-endian PCI-bus
  processor were available.

- [Ignorant question ahead.]  Can Pentiums be made to run with
  big-endian byte ordering?  How about PowerPC's? (Is PowerPC gonna die?)

Any help would be much appreciated.

From MikeMcQuade@connect.com  Tue Feb 11 23:20:02 1997
From: MikeMcQuade@connect.com
Date: Tue Feb 11 23:20:04 PST 1997
Subject: Re: Choosing a PCI CPU
At 07:35 PM 2/11/97 PST, you wrote:
>Submitted-by darryl@isys.com  Tue Feb 11 19:35:14 1997
>Submitted-by: darryl@isys.com (Darryl Troxel)

>
>- [Ignorant question ahead.]  Can Pentiums be made to run with
>  big-endian byte ordering?  How about PowerPC's? (Is PowerPC gonna die?)
>

I don't think Pentiums can do Big Endian.

Yes the PowerPC can run big endian, and it does under VxWorks.

I don't see the PowerPC's death on the horizon, in the desktop market maybe,
but in the high-end embedded world, Im not so sure.

I can't comment on PCI boards, but...

With so many PowerPC (VME) boards from the various companies, you have a
wide selection if you stick with VME, we went with the MVME-2600 boards
based on the following:

- Interrupt structure (this board has an interrupt structure more suited for
real time than any other PowerPC or Pentium board)

- The memory performance is very good.

- It has up to 9Mb of flash.

- 64 bit PCI.

- The 603p (200Mhz) run cool, its not a Toaster like some other CPUs.

- 10/100 Mbit ethernet.

- 5 year warranty.

If you don't find any mature PCI boards, then you might want to have a look
at these boards, at least then you could have a board with a larger
installed VxWorks base than the PCI boards, and Id bet the price is less,
you can get the 2603 boards for about $4000.00

If you need the bandwith of PCI, then you could run through the PCI port, if
you stayed with your VME hardware you would enjoy the performance boost from
the PPC. 

I have no idea what Motorola has planned for their PowerPC VME boards, but I
notice in the documentation that one of the chips on the board is called an
MPIC, as in Multi Processor Interrupt Controller, maybe down the road we
will see SMP boards. (I think you could build a nice imaging system with a
dual 240Mhz 603 PowerPC board, and sitll use a lot less watts than a single
PPC 604 or a Pentium Pro).

From kuester@hic334.decnet.bosch.de  Tue Feb 11 23:28:49 1997
From: Hans-Holger Kuester  c/o ROBERT BOSCH GmbH   FV/SLH <kuester@hic334.decnet.bosch.de>
Date: Tue Feb 11 23:28:52 PST 1997
Subject: unsubscribe
Please remove

victoria@hic334.decnet.bosch.de

from your list

From daemon@csg.lbl.gov  Wed Feb 12 04:00:18 1997
From: daemon@csg.lbl.gov
Date: Wed Feb 12 04:00:20 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Wed Feb 12 04:00:15 PST 1997

        Subject: Filesystem tools
        Subject: Epilogue SNMP agent
        Subject: Re: 3C509 drivers
        Subject: Re: invisible static variables
        Subject: Gnat cross compiler

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Filesystem tools
Date: Tue, 11 Feb 1997 18:32:37 +0100
From: Andreas Reichenberg <rchbg@atlas.de>
Organization: STN Atlas Elektronik
Message-ID: <3300AD35.41C6@atlas.de>

Hi there!

I am using an MVME 162 with SCSI Disks attached. 
After working a while, some file operations failed.
Does anybody knows, if there are tools to inspect the 
filesystem it's fragmentation or disk usage? Is there
a possibility to rearange the files on disk or to make 
garbage collections?

Thank's for help.

Andreas

- -- 
.------------- Dipl.-Ing. Andreas Reichenberg --------------.
: STN ATLAS ELEKTRONIK GmbH,       D-28305 Bremen           :
: Sebaldsbruecker Heerstrasse 235  Tel.:  (0)421 - 457 3880 :
: Simulation Division, ETZ42       Fax:   (0)421 - 457 3903 :
 -----------------     <rchbg@atlas.de>    -----------------

---------------------------

Newsgroups: comp.os.vxworks
Subject: Epilogue SNMP agent
Date: Tue, 11 Feb 1997 13:55:06 GMT
From: Dave Rounds <dave@djrounds.mv.com>
Organization: RoundHouse Software Inc.
Message-ID: <33007A3A.58E0@djrounds.mv.com>
Reply-To: dave@djrounds.mv.com

Does anyone have experience porting the Epilogue SNMP agent, to 
VxWorks 5.2.  Care to share your experiences?  Based on the 
marketing descriptions available from both companies it looks to 
be a straight forward task.  Any hidden obstacles?

Thanks,
Dave Rounds
RoundHouse Software Inc.
dave@djrounds.mv.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: 3C509 drivers
Date: Tue, 11 Feb 1997 08:43:58 +0100
From: Vincent HUE <vincent.hue@met.fr>
Organization: MET
Message-ID: <3300233E.4BEB@met.fr>
References: <32FF6320.13F0@wg.com>

Lee Wheat wrote:
> 
> we're trying to being up vxworks on an off-the-shelf x86
> board and would like to use a 3Com 3C509 PCI Ethernet board
> as the network interface. i checked 3Com's ftp site and their fax
> service but they don't list such a beastie. wind river
> got nervous when i mentioned PCI. i didn't find one on the
> archive site (i may have missed it).
> 
> does anyone know where i can get drivers (source or binary)
> for such a thing?
> 
> thanks,
> lee wheat
> wheat@wg.com

3C509 driver is included in the 486 BSP. 
You just have to put the following in your config.h :

#define INCLUDE_ELT /* include 3COM EtherLink III interface */

also check that base address and IRQ are available. 
It works fine on our PCI bus. 

/vincent
 
- --------------------------------------------------
Vincent HUE              SDH/ATM Software Engineer
MET Commutation, 19 av Carnot 91348 MASSY / France
Tel.: +33-1 64 47 51 30  - Fax : +33-1 64 47 57 45 
Email : vincent.hue@met.fr  -  Memoid : met.metvhe

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: invisible static variables
Date: Fri, 31 Jan 1997 14:33:46 GMT
From: mfisher@dyn.com (Mark Fisher)
Organization: The World @ Software Tool & Die
Message-ID: <32f20235.64983980@news.std.com>
References: <5cqjui$5a8@bogus.cts.com>
Reply-To: mfisher@dyn.com
Sender: news@world.std.com (Mr Usenet Himself)

lees@cts.com (Lee Slaughter) wrote:

>Why are static variables invisible symbols to vxWorks?
>Impossible to debug.
>
Look up the loadLib functions documentation. There are a few options
for loading modules -- the default is to load Global Symbols only!

Mark.

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Gnat cross compiler
Date: Wed, 12 Feb 1997 10:45:27 +0100
From: T/KP David Karlsson <xsbdaka@kiemw.ericsson.se>
Organization: Ericsson Saab Avionics
Message-ID: <33019137.4769@kiemw.ericsson.se>

I am trying to make a gnat cross compiler port for vxworks. 
The host system is sparc-sun-solaris2.5 and the target 
m68k-wrs-vxworks5.2 . I have already set up a gcc cross compiler
for that configuration, and now I am searching for a way to 
proceed. 

Has anyone done something similar before? Do you have any advice 
to give? 

I have never done anything like this before, so I would 
appreciate any help you can give.

Thanks in advance.

David Karlsson

---------------------------

End of New-News digest
**********************

From jwc@ssd.ray.com  Wed Feb 12 05:41:27 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Wed Feb 12 05:41:29 PST 1997
Subject: Re: Choosing a PCI CPU
In response to darryl@isys.com (Darryl Troxel):

As for your last "[Ignorant question ahead.]" question,
Pentiums have the same hang-up as most Intel, they just do it faster...
However the PowerPC is "AC/DC" (beg your pardon) when it comes to endian...
Most OS's choose one or the other endian, so this might be a consideration...
As for "(Is PowerPC gonna die?)", I don't know, but IMHO I doubt it...

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From RADA_JA%WLDEV@wl.corning.com  Wed Feb 12 05:46:03 1997
From: RADA_JA%WLDEV@wl.corning.com
Date: Wed Feb 12 05:46:05 PST 1997
Subject: Re: Choosing a PCI CPU
>    - A PCI backplane

A good choice might be to use the new Compact PCI backplane. There is a 
limitation on PCI that can only allow 8 slots. You can get more slots by 
using bus repeaters. Force currently has a chassis that has both a VME and 
Compact PCI in one. This might be helpful while you are try to build your 
system and have not ported all your hardware.

>    - A PCI backplane with our proprietary cards, and a PCI single-board
>      computer based on a (pick one):>
>	    - Pentium
>	    - 68K
>	    - PowerPC
>	    - SPARC
>	    - any other recommendations?

The PCI bus is a little endian bus so Pentium is probably a good choice. 
But Power PC can be used and Motorola has acutaly put a PCI bus on the VME 
card for their Power PC cards local bus. Many chip manufactures are making 
PCI bus to other bus converter chips. (ie: PCI to VME). Also in the VME 
world it looks like Power PC will be the Chip to replace the venerable 68K 
family.

From gema@force.de  Wed Feb 12 07:59:14 1997
From: gema@force.de (Gerhard Mayr)
Date: Wed Feb 12 07:59:20 PST 1997
Subject: Re: Choosing a PCI CPU
Hi,

FORCE COMPUTERS is an processor independent manufacturer
of VME-based and CompactPCI-based systems and computer boards.

The CompactPCI standard is maybe interesting for you. We are
offering already Intel based board in a CompactPCI system
environment.

We are also offering VME boards based on the latest PowerPC
technology. You can scale the performance from a 603e running
at 120 MHz up to a 604e at 200 MHz with L2-cache.

Please visit us at http://www.forcecomputers.com to get more
informations.

Best regards,
Gerhard Mayr

From aisie.aisinc.com!aisinc.com!pew@msen.com  Wed Feb 12 08:28:49 1997
From: pew@aisinc.com (Paul E. Wilt)
Date: Wed Feb 12 08:28:51 PST 1997
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x
In response to jwc@ssd.ray.com (John Cosgrove):

The Zilog 85230 is also called the Enhanced SCC (ESCC).  It contains two
serial channels (just like the happy little 8530 and 85C30).  However it
has a deeper recieve FIFO (8 bytes as opposed to 3 bytes) and a transmit
FIFO.

Indeed, these venerable Zilog chips (used in Sun's, Macintoshes, ...) are
beasts.  Hardware flow control is implemented in a half-hearted fashion.
One reason they get used often is they also provide BiSync and HDLC features
for those hardware platforms where the hardware permits such things.

Be aware that at high receive rates you can *lose* transmit interrupts unless
you can use DMA to reduce the load on the CPU / ESCC interface.  In our
system (home-grown) we cannot use DMA because of some very *hard* realtime
constraints (on an i960).  I had some very long conversations with several
hardware guys a AMD on just such issues!

We had to add support for a second ESCC to our product.  I had to:
 .  Enable interrupts for the second external interrupt line.
 .  Added code to dispatch the second serial chip interrupts.

I also added (as an extra) code to allow ioctl() code to allow "baud
ratedata format" settings ala' tcgetattr()/tcsetattr() since these
ioctl()'s are not there in the standard vxWorks BSP packages.

Hope this helps,
Paul

-- 
=============================================================================
Paul Wilt, Sr Software Engineer       (313) 332-7044  FAX : (313) 332-7077  
Applied Intelligent Systems, Inc.                           pew@aisinc.com
3980 Ranchero Drive
Ann Arbor, MI  48108
=============================================================================

From daemon@csg.lbl.gov  Thu Feb 13 04:00:25 1997
From: daemon@csg.lbl.gov
Date: Thu Feb 13 04:00:28 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Thu Feb 13 04:00:23 PST 1997

        Subject: Re: Big disks on Vxworks
        Subject: Windview Timestamps (MVME167)
        Subject: aborting a read on a serial port
        Subject: Context Switching?
        Subject: Re: Support for Serial Ports 3 and 4 on MVME160x
        Subject: Re: Choosing a PCI CPU
        Subject: disk performance
        Subject: pSOS expertise

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Big disks on Vxworks
Date: Mon, 10 Feb 1997 17:41:24 GMT
From: georg@sgl.ists.ca (Georg Feil)
Organization: Institute for Space and Terrestrial Science
Message-ID: <georg.855596484@s2.sgl.ists.ca>
References: <01bc0efb$85d46280$0cd2b8c7@PCRAM.alexis.com> <01bc136c$77fce770$e2c076c1@aabpc> <32F9C404.7111@lsoc114x.ksc.nasa.gov>
Sender: news@newshub.ists.ca

>Adam Baker wrote:
>> I spent a long time playing with this and eventually concluded that to get
>> the maximum possible size is 8323072 512 byte sectors or about 3.97 GB.
>> This is because one of the parameters to dosFsConfigInit is a signed char
>> and hence limited to 127.

This is correct. The maximum number of sectors per cluster in dosFs is 127,
and the maximum number of clusters is 65536, so you can have at most
127*65536=8323072 sectors in a single dosFs partition. However, you can 
reformat your disk with larger sectors to get past these limits. For example
we are using Seagate Barracuda 9-Gig drives formatted with 1024-byte sectors
(you don't quite get the whole disk -- around 8.5 gig -- but I feel a bit
of wasted space is preferable to even larger sector sizes).

It is possible to use even larger sector sizes but then your dosFs cluster
size gets ridiculously large. For example even the 9-gig example above has
a minimum allocation size (cluster size) of 127K, so small files become very
inefficient -- a 100-byte file actually occupies 130048 bytes.
Also watch out for memory usage since each open file in VxWorks keeps a cluster
buffer in memory. In our application we need up to 100+ files open 
simultaneously -- that's over 12 Meg just for cluster buffers in the 9-gig case.

By the way it took me a while to figure out exactly how to reformat a disk
with larger sectors from VxWorks. You need to change the sector size using
scsiModeSelect() and immediately after do a low-level format with 
scsiFormatUnit(). Write a little program do do it. You can check that
the sector size change "took" using scsiModeSense() after.
We are also doing this successfully on a RAID disk system, the biggest 
difference being that the low-level format takes up to 2 hours on a single
disk such as the Barracuda 9 but the RAID controller does it "instantly"
(without erasing any data). That's because you're just changing the logical
representation it presents to the outside user. The biggest nuisance right 
now is that our RAID controller "forgets" that the sector size is 1024 bytes
every time you reset it or turn it off and on! It reverts to the universal
number of 512 bytes used by all brain-dead PCs across our planet.

Georg Feil
                                             |  http://www.sgl.ists.ca/~georg
Space Geodynamics Laboratory                 | Email: georg@sgl.ists.ca
Institute for Space and Terrestrial Science  | Phone: (416) 665-5458
4850 Keele St./North York/Ont/Canada/M3J 3K1 |   Fax: (416) 665-1815
- --
Georg Feil
                                             |  http://www.sgl.ists.ca/~georg
Space Geodynamics Laboratory                 | Email: georg@sgl.ists.ca
Institute for Space and Terrestrial Science  | Phone: (416) 665-5458
4850 Keele St./North York/Ont/Canada/M3J 3K1 |   Fax: (416) 665-1815

---------------------------

Newsgroups: comp.os.vxworks
Subject: Windview Timestamps (MVME167)
Date: 10 Feb 1997 16:55:44 GMT
From: plward@ll.mit.edu (paula l ward)
Organization: MIT Lincoln Laboratory
Message-ID: <5dnjug$e6k@llnews.ll.mit.edu>
Sender: plw@bart (paula l ward)

Hello,

I'm running Tornado on Solaris with a MVME167 target and I'm trying to use
windview with the timestamp capability. Windview is working fine in the
sequential mode but not in the timestamp mode. Instead of 'units: sec', I'm
still seeing 'sequential' in the upper left corner. 

I followed the instructions in the VxWorks reference 'mv167_timestampInfo(1)'
to add the timestamp fuctionality to windview and remade vxworks but it still
doesn't work. When I first open the windview window and then open a new graph,
it shows the 'units'. But as soon as I start my data collection (from the
target window) the graph changes to 'sequential'. It must be getting
overwritten by something else. What could it be?

I've looked in all the files in  .../config/all and .../config/mv167 but can't
find anything that looks like it's reconfiguring Windview and excluding the
timestamp capability.

I've also spoken with Wind River about this and they recommend that I re-install
windview. Since I have to wait a week to get this done, I thought I'd ask
the people of comp.os.vxworks. Anyone have any ideas?

Thanks.

Paula 

---------------------------

Newsgroups: comp.os.vxworks
Subject: aborting a read on a serial port
Date: Wed, 12 Feb 1997 11:26:07 -0500
From: bbeavers@ll.mit.edu
Organization: MIT Lincoln Laboratory
Message-ID: <3301EF1F.3282@ll.mit.edu>

I am trying to implement a time-out on a serial port
read using a watch-dog timer.  When the watch-dog
expires, it does an  ioctl(fd,FIOCANCEL,0).  The 
port is /tyCo/1 and then configured to OPT_RAW.  The
read is not aborting.  What am I missing here?
Or is there a better way to abort a read on a serial
port.  Any suggestions would greatly be appreciated.

Bill Beavers

---------------------------

Newsgroups: comp.os.vxworks
Subject: Context Switching?
Date: 11 Feb 1997 15:03:27 GMT
From: crenna@pogo.den.mmc.com (Chris Nmi Renna)
Organization: My Desk
Message-ID: <5dq1nv$apg@tel.ast.lmco.com>

Context switching? What's all this then? I keep coming across this term
but I have no idea what it means. Anyone have any insight?

Thanks in advance,

Christopher Renna

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Support for Serial Ports 3 and 4 on MVME160x
Date: 12 Feb 1997 12:29:42 -0500
From: hartwig@hartwig.owg.fs.lmco.com (Michael R. Hartwig)
Organization: Lockheed Martin Federal Systems
Message-ID: <wym20am7x15.fsf@hartwig.owg.fs.lmco.com>
References: <s30062fb.064@mdc.com>
Reply-To: michael.hartwig@lmco.com
Sender: hartwig@hartwig.owg.fs.lmco.com

In article <s30062fb.064@mdc.com> Charlie Grames <cgrames@mdc.com> writes:

> Thank you for your attempts at supplying information, but what most of you
> do not realize is that the MVME160x boards have TWO COMPLETELY SEPARATE
> serial chips for driving the four serial ports.  The PC87303 "Super I/O"
> chip, which drives serial ports 1 and 2, is the only one supported by the
> 160x BSP.  The Zilog 85230, which drives serial ports 3 and 4, is
> unsupported.  What some of us want to know is: Where can we get our hands on
> an appropriate driver for the Zilog chip, and how can we piece it into our
> BSPs so we can use the additional ports?

I don't know where it came from, but my source tree has a file:

  target/src/drv/sio/z85230Serial.c

I suspect it came from my MVME-1603 BSP, but I could be wrong.  Anyway, it has
Wind River-type modification comments and commentary, so I bet you could get a
copy from them.

Michael
 

- -- 
Michael Hartwig					Michael.Hartwig@lmco.com
Lockheed Martin Federal Systems, Owego, NY

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Choosing a PCI CPU
Date: Wed, 12 Feb 1997 14:22:32 -0500
From: Mike Kelly <cogent@cogcomp.com>
Organization: Cogent Computer Systems, Inc.
Message-ID: <33021878.2805@cogcomp.com>
References: <9702120336.AA02857@daffy.isys>
Reply-To: cogent@cogcomp.com

Darryl Troxel wrote:
> 
> Hi -
> 
> Our company makes image-based inspection systems.  Currently the
> hardware of our system:
> 
>     - has a VME-bus architecture
> 
>     - uses one or more Motorola 68K-family VMEbus single-board computers
>       running VxWorks
> 
>     - includes many proprietary VMEbus image processing boards
> 
> To lower costs (and for other reasons) we want to go to a PCI-bus
> architecture.  We're putting our proprietary hardware on PCI and we'll
> keep VxWorks, but we have some major decisions to make regarding the
> CPU.  Some options we've considered:
> 
>     - Our proprietary cards in PCIbus slots of a Pentium-based motherboard
> 
>     - A PCI backplane with our proprietary cards, and a PCI single-board
>       computer based on a (pick one):
>             - Pentium
>             - 68K
>             - PowerPC
>             - SPARC
>             - any other recommendations?
> 
snip snip snip snip snip

Darryl,

We (Cogent) make a development system that provides for multiple PCI
slots and your choice of CPU.  This would allow you to wotk with 
PowerPC, MIPS, ARM and i960.  The MIPS and the ARM families do support
Big Endian.  In my opinion, the MIPS does a better job because you
can specificy the endian mode at boot time.  The ARM requires you to
boot as little endian and then switch.  Check our web site to see
if we can help.

Michael J. Kelly
Cogent Computer Systems, Inc.
tel: (508) 278-9400, fax: (508) 278-9500
web: www.cogcomp.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: disk performance
Date: Wed, 12 Feb 1997 19:37:14 +0000
From: rms <richard@carapace.demon.co.uk>
Organization: X
Message-ID: <4ow+gDAqvhAzEwAa@carapace.demon.co.uk>
Reply-To: richard@carapace.demon.co.uk

I am using vxWorks with a dos compatable file system on a platform which
is PC like. 

I notice that the disk performance on vxWorks seems slow when compared
to DOS.

Flopy disks particularly so.

Are there any methods of tuning for disk performance?

Are there any add-ons such as caches to improve the performance? 

Any help greatfully received.

- -- 
rms

---------------------------

Newsgroups: comp.realtime,comp.os.vxworks,comp.arch.embedded
Subject: pSOS expertise
Date: Wed, 12 Feb 1997 11:11:03 -0600
From: "Chung-you(Pat) Liu" <cyliu@lucent.com>
Organization: Lucent Technologies/Bell Labs Innovation
Message-ID: <3301F9A7.77C8@lucent.com>

Does anyone know where I might find embedded programmers with experience 
in pSOS areas?  We have multiple job openings in Naperville, IL 
If so, please respond directly to cyliu@lucent.com 

Thanks for your help.

Pat Liu

---------------------------

End of New-News digest
**********************

From jwc@ssd.ray.com  Thu Feb 13 05:51:48 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Thu Feb 13 05:51:50 PST 1997
Subject: Re:  Support for Serial Ports 3 and 4 on MVME160x
in the Article <wym20am7x15.fsf@hartwig.owg.fs.lmco.com>
Michael Hartwig (michael.hartwig@lmco.com) writes:

>I don't know where it came from, but my source tree has a file:
>
>  target/src/drv/sio/z85230Serial.c
>
>I suspect it came from my MVME-1603 BSP, but I could be wrong.  Anyway, it has
>Wind River-type modification comments and commentary, so I bet you could get a
>copy from them.

I have the Tornado 1.0 release (5.3 VxWorks) with the 1604 BSP... and I don't
have z85230Serial.c in my directory tree...

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From SJohnson@systran.com  Thu Feb 13 05:55:32 1997
From: Steve Johnson <SJohnson@systran.com>
Date: Thu Feb 13 05:55:34 PST 1997
Subject: dosFs under 5.2 and 5.3

We've been developing device drivers for Fibre Channel disk drives.   
 Currently we support the dosFs under vxWorks 5.2 on various PowerPC and   
MIPS platforms.  On a single thread read or write to a Seagate Barracuda   
9, I can get from 9-10 MB/sec throughput.  Making multiple requests   
across multiple drives concurrently we can see aggregate throughputs   
anywhere from 16-37 MB/sec depending on the platform and the drive   
interface. The problem is when I run the same driver under 5.3 all of the   
throughput figures are cut in half or worse. It's so slow that when I   
make a request to a drive I can see a delay of 5-10 seconds before the   
activity LED on the drive even begins to flash.

 As I am not real familiar with how Wind River implements the dosFs I/O   
internally, does anyone know of any major redesigns or overhauls to this   
interface that has caused such a drastic change in performance ?

Can dosFs recognize anything larger than 500 MB ? I thought the bugs in   
the dosFsConfigShow were fixed.  I initialize a drive to be 9 GB and it   
won't see anything over 500 MB but it will let me write to the entire 9   
GB.  Sometimes I even get negative values for available space.

 We are not using the Tornado interface.  The kernel is configured to   
operate like the 5.2 interface. Would this be creating the problem in any   
way ?  Are there any tunable parameters that effect the file I/O, that   
have been drastically changed since 5.2 ?

Thanks,
"Bewildered by 5.3"

sjohnson@systran.com

Steven L. Johnson
Systran Corp.
Dayton, Ohio USA

From SJohnson@systran.com  Thu Feb 13 05:56:56 1997
From: Steve Johnson <SJohnson@systran.com>
Date: Thu Feb 13 05:56:58 PST 1997
Subject: SIGBUS problems on MV-147

Does anyone know why the second piece of code does not work in VxWorks.   
 If a SIGBUS is generated manually (kill()), it works fine.  If a real   
SIGBUS is generated by accessing an illegal VME address this handler does   
not get called.  Any help or experience anyone may have will be greatly   
appreciated.

Steve Johnson
Systran Corp.
Dayton, Ohio
sjohnson@systran.com
or
klauber@systran.com
============================================
The first test captures the bus error signal correctly:
===========================================
#include <signal.h>
#include <taskLib.h>

void handler()
    {
    printf("in handler\n");
    }

void hct()
    {
    signal(SIGBUS,handler);
    kill(taskIdSelf(),SIGBUS);
    }

======================
The second test crashes.
======================
#include <signal.h>
#include <taskLib.h>

void handler()
    {
    printf("in handler\n");
    }

void hct()
    {
    int i,*x;
    signal(SIGBUS,handler);
    x=0x20000000;
    i=*x;
    }

From csuka@desy.de  Thu Feb 13 06:50:06 1997
From: csuka@desy.de (Gabor Csuka)
Date: Thu Feb 13 06:50:09 PST 1997
Subject: MVME167 & 32 MB (5.1)
Hi All,

Is anybody useing MVME167 board with 32MB memory under
vxWorks 5.1 ?

My problem is: I have seen the 32MB memory with Motorola Bug,
but not with my vxWorks. I have modified the cofig.h for

#define LOCAL_MEM_SIZE          0x02000000      /* 32 Mbytes */

What else is needed ?

Thaks,

Gabor Csuka
DESY, Germany
csuka@heras1.desy.de

From jwc@ssd.ray.com  Thu Feb 13 07:39:04 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Thu Feb 13 07:39:05 PST 1997
Subject: Informational Question
I have addressed this request to both WRS and the Exploder because of time
constraints on the current job...Please excuse any unintentional offense...

I have a need to run diagnostics on the target single board computer that
is running VxWorks (a MVME-1604 currently, may change to the 260x series later).
I know Moto supplies some fairly good diagnostics in their PROM set.  Is there
a way, buying VxWorks and Moto PROMs to utilize these from under VxWorks control?
Or even utilize them from the PROM monitor, if need be?  Concerns obviously include
NVRAM utilization, as well as plain functional use of these diag's...

Any help is greatly appreciated...

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From "74043,572"@compuserve.com  Thu Feb 13 07:41:13 1997
From: Jeff Schmidt <"74043,572"@compuserve.com>
Date: Thu Feb 13 07:41:15 PST 1997
Subject: Autodependencies In GNU Make
Does anyone have a good example of a makefile which automatically
generates the dependencies.  We are developing C\C++ code using cc386 on
an NT platform.  Any help would be greatly appreciated.

Trying Not To Reinvent The Wheel,

Jeff Schmidt
Applied Biometrics Inc
74043.572@compuserve.com

From sridhar@prc.allied.com  Thu Feb 13 08:27:59 1997
From: sridhar@prc.allied.com (Sridhar Adumusilli)
Date: Thu Feb 13 08:28:00 PST 1997
Subject: Re:  Support for Serial Ports 3 and 4 on MVME160x
 Michael Hartwig (michael.hartwig@lmco.com) writes:
> 
> >I don't know where it came from, but my source tree has a file:
> >
> >  target/src/drv/sio/z85230Serial.c
> >
> >I suspect it came from my MVME-1603 BSP, but I could be wrong.  Anyway, it has
> >Wind River-type modification comments and commentary, so I bet you could get a
> >copy from them.
> 
> I have the Tornado 1.0 release (5.3 VxWorks) with the 1604 BSP... and I don't
> have z85230Serial.c in my directory tree...
> 
> John Cosgrove
> Raytheon
> (401)842-4167 (desk)
> (401)842-3511 (lab)
> jwc@ssd.ray.com
> 
> 
> 

VxWorks 5.3 related serial driver architecture is different form those they 
supplied with older BSP's. The advantage of these drivers, as they say, is
that they support system mode debugging. You can still use tyCoDrv's for
task mode debugging.  

They have these new drivers for only few chips. They may not have a
5.3 serial driver for z85230, and that could be the reason why you dont
see it in your all new 5.3 directory structure.

Just Guessing,

Sridhar
AlliedSignal Aerospace

From fbh@vlsi9.gsfc.nasa.gov  Thu Feb 13 09:06:33 1997
From: Francis Hallahan <Francis.Hallahan@gsfc.nasa.gov>
Date: Thu Feb 13 09:06:35 PST 1997
Subject: Re: SIGBUS problems on MV-147
>Submitted-by: Steve Johnson <SJohnson@systran.com>
>Does anyone know why the second piece of code does not work in VxWorks.
> If a SIGBUS is generated manually (kill()), it works fine.  If a real
>SIGBUS is generated by accessing an illegal VME address this handler does
>not get called.  Any help or experience anyone may have will be greatly
>appreciated.
>
>Steve Johnson
><snip>
>======================
>The second test crashes.
>======================
>#include <signal.h>
>#include <taskLib.h>
>
>void handler()
>    {
>    ********   printf("in handler\n");    ******
>    }
>void hct()
>    ....
>    signal(SIGBUS,handler);
>

Use logMsg() rather than printf() in handlers.  Handler() is
probably being called at interrupt level and is subject to
all of the ISR limitations.  Check your programmer's guide for the
table that lists "Routines that Can B Called by Interrupt Service
Routines" (Table 2-22 for ver 5.3).

Hope this help,
Frank Hallahan

/-------------------------------------------------------------------------\
| Frank Hallahan                            |  Hallahan@gsfc.nasa.gov     |
|   Software Environment Leader - Code 521  |  fbh@vlsi.gsfc.nasa.gov     |
| Computer Sciences Corporation             |                             |
| at Nasa Goddard Space Flight Center       |  Phone (301) 286 7064       |
\-------------------------------------------------------------------------/

From jford@sadira.gb.nrao.edu  Thu Feb 13 10:05:40 1997
From: John Ford <jford@arcturus.gb.nrao.edu>
Date: Thu Feb 13 10:05:42 PST 1997
Subject: Re: Informational Question

> 
> I have a need to run diagnostics on the target single board computer that
> is running VxWorks (a MVME-1604 currently, may change to the 260x series later).
> I know Moto supplies some fairly good diagnostics in their PROM set.  Is there
> a way, buying VxWorks and Moto PROMs to utilize these from under VxWorks control?
> Or even utilize them from the PROM monitor, if need be?  Concerns obviously include
> NVRAM utilization, as well as plain functional use of these diag's...
> 

I am also looking to do this.  In my case, I want to leave the 167Bug
EPROMS in, and add my vxWorks boot roms to the empty sockets provided
on the 167.  A co-worker and I have looked briefly at this, and I
don`t see any reason offhand it wouldnt work.  There are hooks in the
167Bug to romboot (see the ENV command), so we should be able to
recompile the vxWorks boot rom to start at a different location than
standard, program it in, and have it work.  I would REALLY like to
know if others have trod this path before I go down it, as I will not
have time to do it soon.

This seems to me a big win, as there are no diagnostics in vxWorks
proper. 

> Any help is greatly appreciated...
Ditto

-- 
John Ford
National Radio Astronomy Observatory
Green Bank, WV 24944-0002
jford@nrao.edu

From bobh@mbari.org  Thu Feb 13 10:08:56 1997
From: Bob Herlien <bobh@mbari.org>
Date: Thu Feb 13 10:08:57 PST 1997
Subject: Tornado questions
As many of you know, I've been a contributor to this list for many years,
so I feel a little foolish submitting novice questions.  However, we're
just now switching to Tornado/5.3 on our project (our ROV, remotely
operated vehicle), and I have a number of that type of questions.
Any help is appreciated.

1) Startup scripts
Am I correct in concluding that the only way to use startup scripts
under Tornado/5.3 is to include the target shell?  We need to load our
application code from the net and start executing at boot time (i.e.,
not in tcl scripts that run at 'launch' or 'windsh').  However, we'd
also like to be able to use the Tornado tools to monitor (and sometimes
debug) our system while running.  In particular, we'd like to use the
host shell since we can run multiple instances, and the CrossWind debugger.
The problem is that the symbols from the application code are target
resident only, and not available to the host tools.

Potential solutions to this problem are to either:
a) find some way to flag the target boot to the host, so the host
   can load the target application code, or
b) use the target startup script, but load the application code
   symbols onto the host.

I don't see a way to either of the above.  Am I missing something?
Is there some mechanism for syncing the symbols that are resident on
the host with those on the target?  As it is, it appears that startup
scripts imply using 5.3 in 5.2-compatibility mode only, without Tornado.

2) I/O redirection of stdin/stdout
Is this a complete kludge, or am I missing something?

So far, I've been able to run in the following modes:
a) 5.2 compatibility mode.  Target shell, telnet into the target.
   Only one shell possible, can't use CrossWind.  I *think* vxgdb
   still works in this environment.  Am I correct?  Otherwise, same
   as historical versions of VxWorks.
b) Redirect I/O to virtual console.  All interactive output from
   windsh goes to *another window*, which is very counter-intuitive.
   We have a number of monitoring and debug routines built into our
   code (a la xxxShow, xxxHelp), and their output go elsewhere.
   (Hint, try 'help', followed by 'nfsHelp'.  Output to different windows).
   Defeats the capability of running multiple shells on different
   hosts, because the output goes to a particular window on one host.
c) Redirect I/O, don't use virtual console.  Now output goes to windsh.
   However, if you run multiple windsh's, *all* the output from every
   instance goes all copies of windsh.  Even worse than (b).

Also in cases (b) and (c), any command with redirected output causes
approximately a 3 second delay before I get the '->' prompt again.
Anybody else see this?

Unless I can resolve some of these problems, it appears that Tornado
is useless in our environment.  I welcome any solutions and comments.
Thanks.

--------------------------------------------------------------
Bob Herlien
MBARI (Monterey Bay Aquarium Research Institute)
bobh@mbari.org

From usd@mee.hwm.com  Thu Feb 13 10:08:56 1997
From: Uwe Scheffold <usd@mee.hwm.com>
Date: Thu Feb 13 10:11:57 PST 1997
Subject: Re: Autodependencies In GNU Make
Hi Jeff,

we had the same problem. We found that gnu make seems not to include
the "autodependecie" feature. This means that the problem is
undependent from the makefile, it depends on the make executeable.

We are using sun host's so we tryed the Solaris make (with the same
makefile), it works.

So maybe you have a make on you NT computer?

Regards: Uwe
 
-- 
-------------------------------------------------------------------------
Uwe Scheffold     _/_/_/_/_/_/_/_/_/  _/_/_/_/   Mail: usd@mee.hwm.com
Tele Robot Engineering _/    _/   _/ _/           Web:
http://www.hwm.com
Waelischmiller GmbH   _/    _/_/_/  _/_/_/      Voice: (+49) 7532 4320
41
Klingleweg 8         _/    _/   _/ _/             Fax: (+49) 7532 4320
99
D-88709 Meersburg   _/    _/    _/_/_/_/_/ 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

From harry@ellips.nl  Thu Feb 13 10:34:46 1997
From: Harry Stox <harry@ellips.nl>
Date: Thu Feb 13 10:34:48 PST 1997
Subject: RE: Autodependencies In GNU Make

------ =_NextPart_000_01BC19E2.0D6B4B50
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit

O	Does anyone have a good example of a makefile which automatically
O	generates the dependencies.  We are developing C\C++ code using cc386 on
O	an NT platform.  Any help would be greatly appreciated.

GCC automatically generates a .d file for each .c or .cpp file, 
if you include -MD in the ADDED_CFLAGS and ADDED_C++FLAGS. 
You can include all these files at the end of your Makefile, provided 
you have some macro defining all .o files, like MY_OBJS = a.o b.o c.o.
In this case, simply add an "include $(MY_OBJS:.o=.d)" at the end of 
your Makefile, and make using the "-k" argument (otherwise make stops 
on the first compile, since it has no .d files by then). See also the GNU 
Toolkit user's guide (page 499 in the Tornado 1.0 edition).

Hope this helps,
-Harry Stox

------ =_NextPart_000_01BC19E2.0D6B4B50
Content-Type: application/ms-tnef
Content-Transfer-Encoding: base64

eJ8+IjYSAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEFgAMADgAAAM0HAgANABMA
DQA1AAQAPAEBCYABACEAAABCN0I3QTUxQzAwODVEMDExODc1MjAwMDA5MjkwMkJCQgDhBgEggAMA
DgAAAM0HAgANABMADQA1AAQAPAEBCIAHABgAAABJUE0uTWljcm9zb2Z0IE1haWwuTm90ZQAxCAEE
gAEAIQAAAFJFOiBBdXRvZGVwZW5kZW5jaWVzIEluIEdOVSBNYWtlAPAKAQ2ABAACAAAAAgACAAED
kAYAVAgAABIAAAALACMAAAAAAAsAKQAAAAAAAwAmAAAAAAADADYAAAAAAB4AcAABAAAAHQAAAEF1
dG9kZXBlbmRlbmNpZXMgSW4gR05VIE1ha2UAAAAAAwAGEF2EKjcDAAcQXQIAAB4ACBABAAAAZQAA
ANhET0VTQU5ZT05FSEFWRUFHT09ERVhBTVBMRU9GQU1BS0VGSUxFV0hJQ0hBVVRPTUFUSUNBTExZ
2EdFTkVSQVRFU1RIRURFUEVOREVOQ0lFU1dFQVJFREVWRUxPUElOR0NDKysAAAAAAwAQEAAAAAAD
ABEQAAAAAAIBCRABAAAApAYAAKAGAAAcEAAATFpGdbEg2ys3AAkDMAECNQDyC2BuZ/AxMDMzAfcB
8Q4AA9SJAgBjaArAc2V0AtFgcHJxMiAHEwKDMVcPkQMBEBcyELVXC4BnumQTUXMCgAKRCOY7CW/C
MBSvZTI1NRXaFvH/Fq8XuRXEF+IWTxofGd0ZX8MXjxXfZTEyOB+qIMH/IH8hiRXEIbIgHyPvI60j
L/shXyUkORLAKHQp0SHzKdChAoJzdHlsB5BoCeCGdAAAA/BkY3RsCrOHD4MB0AMwc25leBCQrwew
BbAAwAJzKgjQcw6QCQMwYWQTgHRpdmVEIEQBEGF1bAVAUAUKwGEJwGFwaCBGvwIhKwMRwSwHCiAL
IHIJUGcx4hAAMeJ3NB8REGBw0y0CLLhiYRBwZAIgAUDfLUMRwC/QBRACMC0wcANhEDogVG82AFN1
YgpqBZB0NgBEYXRl+jowxDYxPzJPM1MrkC7Q+xNRIjA1LREMMCy0EQA0Lxk1N1JlLzAQYSBIZXcu
0ASQMMQ3N784zznbME9BcDrYAUAOVDI0O48x5jg9IQtQeS8wgDLQCxH/PaUTwTDiIdA+nz+vM29D
T79EWTYiNcQ29S4jFMB2AlEAIHtVbmtub3dKbgKBSArAcnkGAHT8b3gT0SvyTQAsMEbBAYDebjaA
AGAJ8C7gbwDgAhB/LdA6Ii9AAgAQgS4yNxBtgwtRNxAgQzpcXAXgYk8BIGljZVGgE0F3mwWwCzBc
UQALcGwuO/D+dE4gEHAsMETgQlALgC1gGy0QLjJwAIAFkGx2bOsAUFTAdQUAbVSyAZAAIP9VQguA
AQACMAHBVLEQQA5wzwAAVMAM0AGQIC5L5FTGfxLAVWIvsEZwVd9W71f/M59UsQWBWZ9ar1u/bDRU
se5sWV9eH18lKVgsDgBc/+Nh318UYiAoApFi/1Tz/zegYK9lb2Z/Z49VID5waNL/Va9qP2tPWCwh
0Gjfbl9vb3twf1UgOW1Pct9z73T5YohrbWt20yBfTVMR/TbxYXkELWEK+xHCC/JMQT8EAAmAQlUO
sEwyL5B0aMsAUExBZAJAbS0B0EegkjYiMTU3AzAnZCHQDwGRTiALCAMxaS0zNvVCQWkOkDgBQCwH
VIQK4b9x0FUgAmB7wU8AYlJpYlL/EbKEcQvydr+BgngNf/JOEdkstkRvB5EAcHkCIC9ApxBALzFf
cGdvBHAgLWBmYVERL0BvZolxAMBr5wEQAxAvQHdoUhAwYH5h+wNxLxBjB0BEUAABfTV+P39/SQqF
e198b31/jX9/nX3+ZwnwBJA3AQQgkoAvQAEAFnBPUQnwYwiQcy4gvxMwiWEUwJVhLzAJAHATUcNR
cFGgQysrIAWgUDEGdQCQl1FjYzM4Nv2KYG6Mj5Kvjq+Pv5DPkd/Hmn+T+AORTlQgUSJPwt2WMUGI
0IkglwBwi0AIYPpsROBiL0AJwTcARFCIsJ5wENAFkAcwNxBkLpkv/59Pm0mAdAMwLAikr6W/m0n4
R0NDi6yJkJSnX3FE4J+LA0/BieAA0DBgLmOKYO8FwK5Qo/CtYyynYKifqa9/f7ARAKcGr3+wj3+y
BpAg/YjgdbSgleAKQFAxsk+zX+N/oZjgLU1EtRGVIrWvH7a/sYO1n7m/t7RBREQARURfQ0ZMQUf/
BfAAcETgvaWXwL4TljC7P++8T7GPwA+8n1m08YwwA6D/tSaMQZUiPYGLAoihBUCVMn9PUYpitOEF
wYrVr0AQ0G//neABAETgwp/Dr8Hfyb/D//u04okzcwNwL0AAwQNglWHvUgB3UZdgxgIuz9DGo69A
B1QQiuAF0FlfT0JKrQXwPYiw0MFi0MFj0MC/WBDMX81vy5/Tf7ceSbhi/wQAxTEQcK9AAJBREaPB
LuC/iLHV79b/f5I1MEJQZAJgnHF1U2AvQLUmJCjRteo60MA9U0ApABDct8b9/9ov2z/VP+C/24/H
7b5yisInmDWVMtyZLWvey3Jn/nUHgAIweOBTYCugR4Cd8f/m1CtAlyAEIONP5F/ij+uv/+SvAiCV
I1IAEGAFQAWgURD/rxOYUVIgtKAFQBBABCBM8JutNgQgYk2glTFuKdMPf+8/f5JC0AZRxeLPQJUj
R/xOVe4v9S/tb/f/9X82Ef0G8GvyYZhABJD6n/uvf6H+MwMwEODc8wQg6YDJEXjgwwqwlJAgNDk5
uEU2EecEoC7Qz9AxLi0QCYAvAX8PAPQP/r/5vPovBD+f2DH/PaCXIC9A2JOigtEwBn8Hj80FSi1N
aKcGfQAOcQ6wAgFxAAEAAAAbAAAAAbwZ2C/gHKW3q4UAEdCHUgAAkpAruwAAGwMgAEAAOQBA3zir
2Rm8AQIBRwABAAAANQAAAGM9Tkw7YT0gO3A9RWxsaXBzIEIuVi47bD1Qcml2YXRlIE1EQi05NzAy
MTMxODEzNTNaLTMAAAAAQAAHMDBCV63YGbwBQAAIMDCHq6vZGbwBHgA9AAEAAAAFAAAAUkU6IAAA
AAACARQ0AQAAABAAAABUlKHAKX8QG6WHCAArKiUXofU=

------ =_NextPart_000_01BC19E2.0D6B4B50--

From MikeMcQuade@connect.com  Thu Feb 13 14:11:27 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Thu Feb 13 14:11:29 PST 1997
Subject: Re: Tornado questions
At 10:08 AM 2/13/97 PST, you wrote:
>Submitted-by bobh@mbari.org  Thu Feb 13 10:08:56 1997
>Submitted-by: Bob Herlien <bobh@mbari.org>
> 

> We need to load our 
>application code from the net and start executing at boot time (i.e.,
>not in tcl scripts that run at 'launch' or 'windsh').  However, we'd
>also like to be able to use the Tornado tools to monitor (and sometimes
>debug) our system while running.  In particular, we'd like to use the
>host shell since we can run multiple instances, and the CrossWind debugger.
>The problem is that the symbols from the application code are target
>resident only, and not available to the host tools.

We use Bootp, our target boots up, gets its IP address from the bootptab
file on the host, then loads a file specified in the bootptab, this file
is the VxWorks image + our application, our application then starts up, and
we can run WindShell, Crosswind, Browser etc...

Not knowing how to implememt this, we came up with the following solution,

first make a routine that starts your app, we call ours:

appStart()

This routine spawns the tasks that start our application.

Then:

1. We added this to the usrConfig.c file.

#if defined(APP_START)
     
/* Launch our Application */
    taskSpawn ("appStart", 69, 0, 2000, (FUNCPTR)appStart, 0,0,0,0,0,0,0,0,0,0);

#endif

2. Then in the projects BSP directory, in config.h, we add this:

#define APP_START

3. Then add your application to the MACH_EXTRA entry in the vxWorks makefile.

Now rebuild vxWorks, then put the VxWorks image (which now includes your app)
into /usr/tftpdir/vxWorks

then specify this file as the file to load in the bootptab entry.

Setup your target to do bootp, (this is very easy, you just put 0xc8 in the
"flags"
in your boot parameters.

Power up your target, it should do a bootp, grab your file, and start
running your
application, you will have to specify the "core file" in the Tornado launcher,
ie: Launcher, Target menu, create, Core File = /usr/tftpdir/vxWorks
before you can run the Tornado tools.

>2) I/O redirection of stdin/stdout
>Is this a complete kludge, or am I missing something?
>

Virtual I/O is kinda kludgey, I like to use the RS-232 console,
it took a while to get used to looking at the term window, but
its not that bad. I have used virtual I/O on targets that were
in remote location, it does work.

i hope this makes sense, if not email me direct, and I will try to 
calrify any obscure points.

Mike McQuade

Mike

From bobh@mbari.org  Thu Feb 13 15:12:38 1997
From: Bob Herlien <bobh@mbari.org>
Date: Thu Feb 13 15:12:39 PST 1997
Subject: Re: Tornado questions
> At 10:08 AM 2/13/97 PST, Mike McQuade wrote:
> 
> We use Bootp, our target boots up, gets its IP address from the bootptab
> .....

Thanks for the response, Mike.  I guess I wasn't clear about our needs.

You've essentially told me how to link the application with VxWorks,
which I know how to do.  Then I could either boot the OS/application
image on the net, or ROM it.  But that doesn't serve our needs.

We've already ROM'd the OS, in order to reduce the boot time for our
vehicle (a concern).  However, we're not ready to ROM the application
code, as it's still changing, and the target CPU is very inaccessible
(inside a 10000 PSI titanium pressure vessel).  So, we need to run VxWorks
out of ROM but load the application from the net, immediately at boot time.
The only way I know of to do that is to include the target shell and
startup script options, but then the symbols aren't recognized on the host.

Are we the only ones with the need for startup scripts and host symbols?

> Virtual I/O is kinda kludgey, I like to use the RS-232 console,
> it took a while to get used to looking at the term window, but
> its not that bad. I have used virtual I/O on targets that were
> in remote location, it does work.

Right, it works (in a kludgey fashion) as a non-reentrant shell,
a la 5.2.  But the issue is that it doesn't *really* work as a
reentrant shell, since in that case stdio goes to the wrong place.

Again, are we the only ones with this problem?  These two issues seem
awfully fundamental.  Makes me think I'm missing something.

Thanks for the response.

--------------------------------------------------------------
Bob Herlien
MBARI (Monterey Bay Aquarium Research Institute)
bobh@mbari.org

From cruz@xyplex.com  Thu Feb 13 15:14:49 1997
From: Roger Cruz <cruz@xyplex.com>
Date: Thu Feb 13 15:14:50 PST 1997
Subject: Reducing symbol table size with target-resident loader
From the reading of the VxWorks manuals, I've been able to gather that
I can build VxWorks to hold a target-resident loader which allows me to
load modules as needed.  Also, for dynamic loading to work, I found I
have to link those modules and keep the symbol table information around
(-r switch).  But keeping the symbol table, which may contain hundreds
of symbols local to my module, around seems to be wasteful if all I need
is just the entry point to the self-contained module.  Is there anyway I
can create a loadable module with just the entry point in the symbol
table?  Declaring everything in C static is not an option because I want
visibility of some symbols across the files that make up the
self-contained module.  The functionality I'm trying to achieve is that
of a regular operating system (in this case VxWorks), which runs
independent programs (my self-contained modules) by always calling a
known entry point __main.

-- 
Roger Cruz                           cruz@xyplex.com
Whittaker Xyplex                     w: 508-952-4783
295 Foster Street                    f: 508-952-4887
Littleton, MA 01460

From Phil_Watson@ns1.masirv.com  Thu Feb 13 17:01:23 1997
From: Phil_Watson@ns1.masirv.com (Phil Watson)
Date: Thu Feb 13 17:01:24 PST 1997
Subject: Re: Tornado questions
> At 15:12 PM 2/13/97 PSW, Bob Herlien wrote: So, we need to run
> VxWorks out of ROM but load the application from the net,
> immediately at boot time.  The only way I know of to do that is to
> include the target shell and startup script options, but then the
> symbols aren't recognized on the host.  
> Are we the only ones with the need for startup scripts and host
> symbols?

I speak only as one present in the last VxWorks user group meeting. 

In the breakout session on Tornado, this was one of the things brought
up. WRS stated that they had a patch/script which permits you to have
both a target-resident and a shell-resident symbol table, and which
keeps them in sync. They then stated that this patch/script would be
coming out in the soon-to-be-released maintenance upgrade for Tornado.

If this sounds like it might help you do what you are trying to do,
then perhaps you should check the WRS tech support web site
(http://www.wrs.com/cslicense.html) for the patch, or contact them
somehow. 

----
Philip Watson
Telecommunications Lead

Phil_Watson@masirv.com
Matsushita Avionics Systems Corporation
15253 Bake Parkway
Irvine, California, 92618  U.S.A.
Ph: (714) 461-7300 (direct -7570)
Fx: (714) 462-7103

From gnarciso@palmnet.net  Thu Feb 13 17:50:27 1997
From: "George Narciso" <gnarciso@palmnet.net>
Date: Thu Feb 13 17:50:29 PST 1997
Subject: Hardware interrupts
Does anyone have any experience with servicing harware interrupts over the
VME bus?  I am kinda a novice at VxWorks and I know we will need to do
this later in the program that I am on.  

From malcolm.cifuentes@nautronix.com.au  Thu Feb 13 20:11:05 1997
From: malcolm.cifuentes@nautronix.com.au (Malcolm Cifuentes)
Date: Thu Feb 13 20:11:08 PST 1997
Subject: Re: Tornado questions
hi,

<snip>
> 2) I/O redirection of stdin/stdout
> Is this a complete kludge, or am I missing something?
> 
> So far, I've been able to run in the following modes:
> a) 5.2 compatibility mode.  Target shell, telnet into the target.
>    Only one shell possible, can't use CrossWind.  I *think* vxgdb
>    still works in this environment.  Am I correct?  Otherwise, same
>    as historical versions of VxWorks.
Yep

> b) Redirect I/O to virtual console.  All interactive output from
>    windsh goes to *another window*, which is very counter-intuitive.
>    We have a number of monitoring and debug routines built into our
>    code (a la xxxShow, xxxHelp), and their output go elsewhere.
>    (Hint, try 'help', followed by 'nfsHelp'.  Output to different windows).
>    Defeats the capability of running multiple shells on different
>    hosts, because the output goes to a particular window on one host.
> c) Redirect I/O, don't use virtual console.  Now output goes to windsh.
>    However, if you run multiple windsh's, *all* the output from every
>    instance goes all copies of windsh.  Even worse than (b).
> 
> Also in cases (b) and (c), any command with redirected output causes
> approximately a 3 second delay before I get the '->' prompt again.
> Anybody else see this?
Yep

I had similar problems which I raised with WRS in a get to know you group!
The solution I was told, was to :-
    / Create a target for each user (Gives a virtual console for each target)
      You can have multiple targets for the same machine!
    / Each user should reserve the target, so no body else can use it

I know its not much information, but I hope it helps!
-- 
Malcolm Cifuentes 
(
 Nautronix LTD          
 malcolm.cifuentes@nautronix.com.au   
 PH  : +61-09-430-5900  
 FAX : +61-09-430-5901  
)

From leif.thuresson@tsl.uu.se  Fri Feb 14 01:41:36 1997
From: leif.thuresson@tsl.uu.se (Leif Thuresson)
Date: Fri Feb 14 01:41:38 PST 1997
Subject: RE: Tornado questions
>> At 15:12 PM 2/13/97 PSW, Bob Herlien wrote: So, we need to run
>> VxWorks out of ROM but load the application from the net,
>> immediately at boot time.  The only way I know of to do that is to
>> include the target shell and startup script options, but then the
>> symbols aren't recognized on the host.  
>> Are we the only ones with the need for startup scripts and host
>> symbols?
>
>I speak only as one present in the last VxWorks user group meeting. 
>
>In the breakout session on Tornado, this was one of the things brought
>up. WRS stated that they had a patch/script which permits you to have
>both a target-resident and a shell-resident symbol table, and which
>keeps them in sync. They then stated that this patch/script would be
>coming out in the soon-to-be-released maintenance upgrade for Tornado.
>
>If this sounds like it might help you do what you are trying to do,
>then perhaps you should check the WRS tech support web site
>(http://www.wrs.com/cslicense.html) for the patch, or contact them
>
Leonid Rosenbaum announced to this list some time ago that you could
get an (unsupported) symbol table sync script for free from their web
server. 
        http://www.rst.co.il/3sw/index.html

I down loaded it then, but couldn't get it to work out of the box.
I guess you have to know a little bit about the WTX protocol.
I didn't have time to read the Tornado API Guide so, I skipped it 
for the time being.
You can make windsh load a script file at startup with the -s option, but 
then you have to have windsh running all the time to take care of reboots,
so I think it's not really what you want. I guess we have to wait
for the maintenance upgrade.

/Leif
------------------------------------------------------------------
Leif Thuresson				  Tel: 	  +46-18-183860
Uppsala University			  Fax: 	  +46-18-183833
The Svedberg Laboratory 		  E-mail: leif.thuresson@tsl.uu.se
P.O.Box 533, S-751 21 Uppsala, Sweden
                

From daemon@csg.lbl.gov  Fri Feb 14 04:00:28 1997
From: daemon@csg.lbl.gov
Date: Fri Feb 14 04:00:30 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Fri Feb 14 04:00:25 PST 1997

        Subject: Re: aborting a read on a serial port
        Subject: s_sigcatch: wbcnt=2! error
        Subject: nfsExport and a large disk array
        Subject: Re: Context Switching?
        Subject: Multiple serial drivers in one VxWorks kernal?
        Subject: Re: syntax completion - a bad thing?

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: aborting a read on a serial port
Date: Thu, 13 Feb 1997 11:19:31 GMT
From: Jim Simpson <jaimes@netcom.com>
Organization: Netcom On-Line Services
Message-ID: <3302F8C3.648D@netcom.com>
References: <3301EF1F.3282@ll.mit.edu>
Sender: jaimes@netcom18.netcom.com

bbeavers@ll.mit.edu wrote:
> 
> I am trying to implement a time-out on a serial port
> read using a watch-dog timer.  When the watch-dog
> expires, it does an  ioctl(fd,FIOCANCEL,0).  The
> port is /tyCo/1 and then configured to OPT_RAW.  The
> read is not aborting.  What am I missing here?
> Or is there a better way to abort a read on a serial
> port.  Any suggestions would greatly be appreciated.
> 
> Bill Beavers

One approach is to do the read() only if there is something there. 
There is an ioctl() (I can't remember which one) which tells you if
there is something there to read.  Use a watchdog to kick off a poll for
data on the serial line.  After N polls without data, do your timeout
logic.

Also, if polling is agreeable to you, you can use select to see if
something is there.  Select takes a timeout argument.

A word of warning about doing an ioctl frequently.  I found that polling
a serial connection and a TCP/IP socket faster than the vxWorks system
TICK time caused reads to fail.  Typically, the system TICK time is
16.7 ms.  The socket connection stopped passing data.  I vaguely
remember that the serial reads stopped returning data even though
I knew data was being sent.

---------------------------

Newsgroups: comp.os.vxworks
Subject: s_sigcatch: wbcnt=2! error
Date: 13 Feb 1997 12:08:50 -0500
From: Eric Ewanco <eje@eje.xyplex.com>
Organization: Xyplex, Inc.
Message-ID: <x8clo8socpp.fsf@eje.xyplex.com>

I am a VxWorks newbie trying very unsuccessfully to get a simple program to run
on VxSim which uses multiple tasks and message queues to demonstrate basic
VxWorks concepts.  The platform is SunOS Tornado (specific version numbers
below).

So far I've run into a lot of tools weirdness: gopher faults, VxSim
segmentation faults (the Unix kind which core dumps, not the kind VxSim traps
and prints out on behalf of the application), inconsistent behavior between
single-stepping and free execution, etc., but I'll focus on just one problem in
this message.

The problem is that I am getting what appears to be an internal error,
"s_sigcatch: wbcnt=2!".  (I don't use signals, justs tasks and POSIX queues.)
Here is the code which runs as its own task:

int pxXfer (int sq, int dq)
{
  MSG_TYPE msg;

#ifdef DEBUG
      printf ("xfer task %d to %d starting\n", sq, dq);
#endif
  msg = 0;
  while ( msg != -1 )
    {
      if (mq_receive (posixQ[sq], (void *) &msg, sizeof msg, NULL)
	  == ERROR)
	{
	  perror ("pxXfer mq_receive");
	  return ERROR;
	}
#ifdef DEBUG
      printf ("xfer from %d to %d: %d\n", sq, dq, msg);
#endif
      if (mq_send (posixQ[dq], (void *) &msg, sizeof msg, 0) == ERROR)
	{
    	  perror ("pxXfer mq_send");
	  return ERROR;
	}

    }
#ifdef DEBUG
      printf ("xfer task %d to %d terminating\n", sq, dq);
#endif
  return 0;

}

There are two tasks running this function, which copies the contents of one
queue to another; the second task reads the queue that the first task writes
to, so that the second task is blocked until the first mq_send is issued by the
first task (shown executing below).

Here is the output when I single step through it through CrossWind:

xfer task 1 to 2 starting
xfer from 1 to 2: 0
xfer from 1 to 2: 1
xfer from 1 to 2: 2
xfer from 1 to 2: 3
s_sigcatch: wbcnt=2!

When I let it run free, sometimes an infinite number of these messages
(s_sigcatch) is printed out, other times I get a Unix "Illegal instruction"
fault, still other times a UNIX BKP/Trap fault.

At the point at which it stops, task one has completely drained the input queue
and is blocked waiting on another message.  A third task (the parent task) has
been this time blocked in another queue (the output queue of task 2) waiting to
receive a message.  It's not clear whether task 2 has started to execute yet
when the error occurs, but it is at the point in execution where task 2 should
be unblocked from its mq_receive.

Here is the windsh log of the single stepping:

Break at 0x000491ec: _mq_receive             Task: SYSTEM

Break at 0x0037d2fc: _pxXfer + 0x44          Task: SYSTEM

Break at 0x0037d310: _pxXfer + 0x58          Task: SYSTEM

Break at 0x0001c7a0: _printf                 Task: SYSTEM

Break at 0x0037d324: _pxXfer + 0x6c          Task: SYSTEM

Break at 0x00049538: _mq_send                Task: SYSTEM

Break at 0x0037d33c: _pxXfer + 0x84          Task: SYSTEM

Break at 0x0037d35c: _pxXfer + 0xa4          Task: SYSTEM

Break at 0x0037d2e8: _pxXfer + 0x30          Task: SYSTEM

Break at 0x000491ec: _mq_receive             Task: SYSTEM
Error while polling for events:
    WTX Error 0x100d1 (AGENT_GOPHER_FAULT)

A CrossWind stack trace yields the following which appears to be incomplete:

(gdb) thread 9
[Switching to task 0x390920   t2        ]
#0  0x4ccd0 in tickAnnounce ()
(gdb) bt
#0  0x4ccd0 in tickAnnounce ()
#1  0x4c1c in usrClock ()
#2  0x22c0 in sysClkInt ()
#3  0x1f598 in intRun ()
#4  0x4cf00 in intCatch ()
#5  0x1c418 in s_sigcatch ()
#6  0x101a4 in _SIGTRAMP ()
#7  0x1ea0c in u_write ()
#8  0x1c6d4 in u_printf ()

It's not very clear where this error is occurring.  I cannot accurately pin it
down.

My system is as follows:

            CPU: SunOS 4.1.3_U1 [sun4m]
        VxWorks: 5.3
    BSP version: 1.1/0

My question is, first of all, does anyone have any clue what this error means
and where it might be occurring.  A quick search of WindSurf yields nothing.
Second of all, might my code share any culpability, or is there anything I can
do to fix it?  Finally, can anyone help me debug this, or point to sections in
the volumnous documentation?

Thanks,
Eric

- -- 
# __   __                    Eric Ewanco 
# IC | XC                 eje@world.std.com
# ---+---        Software Engineer, Xyplex Networks
# NI | KA                  Littleton, Mass.

---------------------------

Newsgroups: comp.os.vxworks
Subject: nfsExport and a large disk array
Date: Tue, 11 Feb 1997 07:40:55 -0800
From: David McCullough <dave@sd.aplabs.com>
Organization: Advanced Processing Laboratories, Inc.
Message-ID: <33009307.63DECDAD@sd.aplabs.com>

When I use 5.2 NFS Server on a 16 GB disk array partitioned into 8
2GB-partitions, I
can only do six nfsExport's. The 7th nfsExport will kill the CPU.
(the partitions are formatted for the dos file system).

My target is a mvme177 with 16mb memory.

I have the patch (TSR# 38282) for the dosFsLib.c, but that doesn't seem
to fix
the problem. Setting the number of NFS server daemons to 1 or increasing
it does not
help either.

Has anyone else seen a similiar problem or have any suggestions?

dave

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Context Switching?
Date: 13 Feb 1997 18:47:48 GMT
From: Derek Clarke <derek.clarke@gecm.com>
Organization: GEC-Marconi Inflight Systems
Message-ID: <5dvnkk$jr5@gcsin3.geccs.gecm.com>
References: <5dq1nv$apg@tel.ast.lmco.com>

crenna@pogo.den.mmc.com (Chris Nmi Renna) wrote:
>Context switching? What's all this then? I keep coming across this term
>but I have no idea what it means. Anyone have any insight?
It's a term from multi-tasking operating systems. These run a lot of 
tasks with one processor by allowing one task at a time to use the 
computer, but making sure all the tasks have access that need it.

When a task runs it effectively has control of the whole computer. In 
order to do that, it has information like the contents of processor 
registers, memory management registers, some critical operating system 
information, and so on. This is the _context_.

Context switching occurs when one task is suspended and another runs. It 
is the act of storing the context of the suspended task in a safe place, 
then loading the context of the task to run into the processor hardware 
to allow that task to run.

Alternatively when a hardware interrupt occurs, some or all context of 
the currently running task must be switched out to allow the interrupt 
service routine (ISR) to run. This is often less than a full context 
switch because the ISR is restricted in the hardware resources it can 
use.

It is mentioned a lot because it is a critical performance 
characteristic, and different processor types have different context 
switching overheads. 

---------------------------

Newsgroups: comp.os.vxworks
Subject: Multiple serial drivers in one VxWorks kernal?
Date: Mon, 10 Feb 1997 11:21:17 -0600
From: chaplin_roger@keithley.com
Organization: Deja News Usenet Posting Service
Message-ID: <855595128.13192@dejanews.com>
Reply-To: chaplin_roger@keithley.com

We're using an MVME1603-011, Tornado 1.0 (VxWorks 5.3), and want to use
the serial port on the front panel (labeled Serial 3) as the console
device.  Serial 3 and Serial 4 are connected to a 85230 UART.  The
distribution includes a 8530 driver which looks like it might work,
or could be modified to work.

My question is, how do I compile *two* different drivers into a single
VxWorks kernal, so that I can have all four serial ports available?
I've looked at sysSerial.c and usrConfig.c, and it looks like no
provision at all has been made for this kind of setup.

Anybody ever done this?

TIA

- --
Roger Chaplin
Keithley Instruments

- -------------------==== Posted via Deja News ====-----------------------
      http://www.dejanews.com/     Search, Read, Post to Usenet

---------------------------

Newsgroups: comp.lang.ada,comp.os.vxworks
Subject: Re: syntax completion - a bad thing?
Date: Wed, 12 Feb 1997 13:10:31 -0800
From: Matthew Daniel <mdani@ccgate.hac.com>
Organization: Hughes Aircraft Company
Message-ID: <330231C7.4D3D@ccgate.hac.com>
References: <32F91629.5F9@vsl.com.au> <32FF06AE.190F@rational.com>

Greg Bek wrote:
> 
> Andrew Kelly wrote:
> >
> >...
blah blah
> 
> I wouldn't trade my Apex Ada editor for any other option,
> the ability to browse definitions, perform show_usage and
> auto formatting and syntax completion, along with 25 levels
> of undo make it my editor of choice for Ada.  For me it
> is the appropriate tool.  As Jerome D wrote is his response
> there are ways to disable the behaviour if you want to.
> 

Xemacs with Adamode compiling with GNAT (which is a validated compiler),
you just about covered it all and not at $25K a seat. You do not loose
the ability to edit code whilst doing a semantize on other packages, it
does not use 5 meg of mem per server (directory, editor, etc .. 6) per
person.

I thought the R1000's were great (we only had 7 users at a time on each
machine), RXI as an interface was quick.

Matt

with Disclaimer; use Disclaimer

---------------------------

End of New-News digest
**********************

From RADA_JA%WLDEV@wl.corning.com  Fri Feb 14 05:59:44 1997
From: RADA_JA%WLDEV@wl.corning.com
Date: Fri Feb 14 05:59:46 PST 1997
Subject: Re: Informational Question VxWorks and Moto PROMs
> I know Moto supplies some fairly good diagnostics in their PROM set.  Is 
there
> a way, buying VxWorks and Moto PROMs to utilize these from under VxWorks 
control?

ACT Technico (215-957-9102) makes a set of ROMS for MVME167 that plug in 
the second set of ROM sockets that boot VxWorks. You leave the Motorola 
ROMs in there orginal socket and plug the new ones into the second set of 
sockets. We have tried them here at my office and they work fine. You need 
to set a parameter in NVRAM from the Motorola boot ROMs so on boot it will 
jump to the new boot location and boot up VxWorks. You even get a message 
like in VxWorks to hit a key to go to the Motorola ROMs before the system 
boots the VxWorks ROMs.

From rtp.co.uk!jfd@rtp.co.uk  Fri Feb 14 07:01:00 1997
From: Julian Day <jfd@rtp.co.uk>
Date: Fri Feb 14 07:01:03 PST 1997
Subject: RE: Tornado questions
> Submitted-by bobh@mbari.org  Thu Feb 13 10:08:56 1997
> Submitted-by: Bob Herlien <bobh@mbari.org>

> Any help is appreciated.

> 1) Startup scripts
> Am I correct in concluding that the only way to use startup scripts
> under Tornado/5.3 is to include the target shell?  We need to load our
> application code from the net and start executing at boot time (i.e.,
> not in tcl scripts that run at 'launch' or 'windsh').
If you look in $WIND_BASE/target/config/all/usrConfig.c at
the INCLUDE_DEMO bits, you will see how you can include your own
code to be executed at startup. Using this, and the other parameter (or the 
Startup script) in the bootrom to direct your custom function, you can do 
whatever you like. This could include a loadModule if you have the target 
loader included.

> However, we'd
> also like to be able to use the Tornado tools to monitor (and sometimes
> debug) our system while running. In particular, we'd like to use the
> host shell since we can run multiple instances, and the CrossWind 
debugger.
> The problem is that the symbols from the application code are target
> resident only, and not available to the host tools.
Try www.rst.co.ul There is something called symSync on the site there (In 
the free s/w dir which will keep your symbols in check.)

> Stuff deleted

> 2) I/O redirection of stdin/stdout
> Is this a complete kludge, or am I missing something?
You can still do an rlogin/telnet to redirect your std[in|out|err] 
channels.

> So far, I've been able to run in the following modes:
> a) 5.2 compatibility mode.  Target shell, telnet into the target.
>    Only one shell possible, can't use CrossWind.  I *think* vxgdb
>    still works in this environment.  Am I correct?  Otherwise, same
>    as historical versions of VxWorks.
Try typing
  target vxworks <targetname>
at the GDB prompt like in vxgdb.

> <snip>

> c) Redirect I/O, don't use virtual console.  Now output goes to windsh.
>    However, if you run multiple windsh's, *all* the output from every
>    instance goes all copies of windsh.  Even worse than (b).
If you don't have a virtual console the biggest problem is with  stdin!!!! 
Where does it come from? It noramlly means leaving this as coming from the 
serial port.

> <snip>

> Unless I can resolve some of these problems, it appears that Tornado
> is useless in our environment.  I welcome any solutions and comments.
> Thanks.

I think the main advantages of tornado, except for some embedded targets 
(with restricted i/o capabilities) are all to do with development. In a 
delivered system, Tornado cannot really help.

regards,

Julian

---------------------------------------------------------------
Julian Day
Real Time Products Ltd.                e-mail:    jfd@rtp.co.uk
Unit 8, Holt Court,                       tel: +44 121 333 6955
Aston Science Park, Jennens Road,         fax: +44 121 333 5433	
Birmingham. B7 4EJ. England.              web:    www@rtp.co.uk
---------------------------------------------------------------

From Lennart.Bie@emw.ericsson.se  Fri Feb 14 07:20:06 1997
From: Lennart.Bie@emw.ericsson.se (FY/DX Lennart Bie)
Date: Fri Feb 14 07:20:08 PST 1997
Subject: Re: Informational Question

John Cosgrove, jwc@ssd.ray.com wrote at  Thu Feb 13 07:39:04 1997:

> 
>I have addressed this request to both WRS and the Exploder because of time
>constraints on the current job...Please excuse any unintentional offense...
>
>I have a need to run diagnostics on the target single board computer that
>is running VxWorks (a MVME-1604 currently, may change to the 260x series later).
>I know Moto supplies some fairly good diagnostics in their PROM set.  Is there
>a way, buying VxWorks and Moto PROMs to utilize these from under VxWorks control?
>Or even utilize them from the PROM monitor, if need be?  Concerns obviously include
>NVRAM utilization, as well as plain functional use of these diag's...

Power up from PPC-Bug, not from vxWorks bootrom. Use the RBO_BOOT feature 
within PPC-Bug and start either a vxWorks bootrom (easiest and most flexible)
or start a stand alone vxWorks kernel from the PPC-Bug. You must change
rominit.s so that it begins with a tag:

* RBO Motorola PPCbug Boot. See PPCbug User's Manual page 1-9
*
*/
_romInit:
romInit:

#ifdef RBO_BOOT
	.ascii "BOOT"		/* RBO Boot String Ident. */
	.long cold-_romInit	/* Entry, word offset from 'BOOT' */
	.long 18		/* Lenght, - from BOOT */
	.ascii "VxWB"		/* Routine Name */
	.short	0x3fbc		/* Checksum */
	.align 4
#else	/* RBO_BOOT */
	bl	cold 
	
	bl	warm  

#endif	/* RBO_BOOT */

Then use the "env" PPC-Bug command to get the vxWorks bootrom (or kernel)
automatically booted.
Note, there are restrictions on where such a RBO_BOOT block may start
(alignment), especially if you start (during test) from RAM.

This way, you get the best out of two worlds :=)

Hope this helps.

Lennart Bie, Ericsson Microwave System AB, Sweden.

>Any help is greatly appreciated...
>
>John Cosgrove
>Raytheon
>(401)842-4167 (desk)
>(401)842-3511 (lab)
>jwc@ssd.ray.com
>

From rtp.co.uk!ihw@rtp.co.uk  Fri Feb 14 09:55:32 1997
From: Ian Willats <ihw@rtp.co.uk>
Date: Fri Feb 14 09:55:34 PST 1997
Subject: SIGBUS problems on MVME-147
Steve Johnson <SJohnson@systran.com> wrote:
> Does anyone know why the second piece of code does not work in VxWorks. 
> If a SIGBUS is generated manually (kill()), it works fine.  If a real
> SIGBUS is generated by accessing an illegal VME address this handler does 
> not get called.  Any help or experience anyone may have will be greatly 
> appreciated

On the 68k architecture, VxWorks translates bus error exceptions, as would 
be caused by accessing non-existent VMEbus resources, to SIGSEGV, not 
SIGBUS.  If you simply replace SIGBUS with SIGSEGV your program should work 
as intended.

PS: Contrary to Frank Hallahan's suspicion, it is safe to call printf() 
within a signal handler as it executes in normal task context rather than 
as an ISR.

HTH

Ian Willats
RTP Ltd

From YF.Siu@eng.efi.com  Fri Feb 14 11:10:43 1997
From: "Yuet Fung Siu" <YF.Siu@eng.efi.com>
Date: Fri Feb 14 11:10:45 PST 1997
Subject: Re:  Reducing symbol table size with target-resident loader
>(-r switch).  But keeping the symbol table, which may contain hundreds
>of symbols local to my module, around seems to be wasteful if all I need
>is just the entry point to the self-contained module.  Is there anyway I
>can create a loadable module with just the entry point in the symbol
>table?  Declaring everything in C static is not an option because I want
>visibility of some symbols across the files that make up the
>self-contained module.  The functionality I'm trying to achieve is that

If run-time memory usage is your primary concern, I would suggest that
you can remove all the symbols associated with one particular module
as soon as that module was loaded, via symEach and the module id. Here
is a little piece of code that will do the job. Hope that will help.

Good Luck,

YF

LOCAL BOOL unldSymbols
    (
    char *       name,          /* not used */
    int          val,           /* not used */
    SYM_TYPE     type,          /* not used */
    int          deleteGroup,   /* group number to delete */
    UINT16       group,         /* group number of current symbol*/
    SYMBOL *     pSymbol        /* a pointer to the symbol itself */
    )
{
    if (group == deleteGroup)
    {
        if (symTblRemove (sysSymTbl, pSymbol) != OK)
        {
            printf ("got bad symbol, %#x\n", (UINT) pSymbol);
            return (FALSE);
        }

        /* free the space allocated for the symbol itself */

        symFree (sysSymTbl, pSymbol);

    }

    return (TRUE);
}

/*
 * Remove all symbols from the symbol table that match the group
 * ID #.
 */
void *rmAllSym
    (
    MODULE_ID moduleId		/* module whose symbols will be removed */
    )
{
    return symEach (sysSymTbl, (FUNCPTR) unldSymbols, (int) moduleId->group);
}

From intrepid!minidds@uunet.uu.net  Fri Feb 14 12:39:47 1997
From: intrepid!minidds@uunet.uu.net (Lee Kappel)
Date: Fri Feb 14 12:39:49 PST 1997
Subject: tNetTask dies
We're running vxWorks 5.2 on Motorola's MVME-167 boards.  Very frequently,
the tNetTask dies.  A half-second later the CPU goes STAT.  In our test
configuration, we have a client task that connects to a server over the
ethernet.  The client tasks asks for a 4K record from the server.  The
server responds with the data.  This goes on in an infinite loop.  Data
over the ethernet is averaging 86 KBytes/sec.  After a couple of minutes,
the STAT light comes on.

We added a taskSwitchHook that writes over the VME Bus so we can determine
the last task running on the CPU.  The last task running is tNetTask.  It
never switches back out of it.  From a periodic VME Interrupt (OS Tick Rate),
we also output a constant on the VME Bus to determine when the CPU last
runs.  From the logic analyzer, we can tell that the tNetTask was the was
tasked it switched to and then about .5 seconds later it stops responding
to interrupts.  Believe it is due to an exception in an interrupt handler 
due to queue full or stack overrun since no task gets a chance to run.

From a network analyzer, the server repeatedly sends the last packet but
the CPU (client) is not retrieving the data.

With the cache set to WRITETHROUGH we have the same problems.  If we disable
the data cache then it seems to run OK although we have not done any long
duration testing with the cache off.  Of course it kills performance so it 
can not be the final solution.

Has anyone experienced similar problems with tNetTask?  The TFDs and RFDs
supplied to the ethernet driver are in a noncacheable region.

Thanks for any help

Kyle Hoyt
hoyt@eci-cec.com

From MikeMcQuade@connect.com  Fri Feb 14 22:42:24 1997
From: MikeMcQuade@connect.com
Date: Fri Feb 14 22:42:25 PST 1997
Subject: Question about VxWorks in ROM

I managed to get VxWorks into Flash on a Motorola MVME-2600 board, but but
ran into a problem with the "Boot Device"

The problem is this, when VxWorks boots up, I get a error message about
the boot device. It seems to be looking for an "lse" device for the network,
it should be connecting to the "dc" network device.

When I had the normal bootrom_uncmp in flash, the I could set these
parameters and they would stay in NVRAM, I looked all over the BSP for where
I could setup the network interface, but could find nothing.

Can someone tell me where I define the network interface as the "dc" device ?

Thank You.

From daemon@csg.lbl.gov  Sat Feb 15 04:00:31 1997
From: daemon@csg.lbl.gov
Date: Sat Feb 15 04:00:33 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Sat Feb 15 04:00:30 PST 1997

        Subject: All Screen Output Is Buffered!
        Subject: Re: Tornado questions
        Subject: Re: Tornado questions
        Subject: Starting a method as a task
        Subject: Re: s_sigcatch: wbcnt=2! error
        Subject: VxMP
        Subject: Re: s_sigcatch: wbcnt=2! error
        Subject: VME Block Mode Transfer - MVME2600 Tundra Universe
        Subject: Re: 3C509 drivers
        Subject: Re: Viewing Arrays In Debugger

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: All Screen Output Is Buffered!
Date: Thu, 13 Feb 1997 07:20:05 -0800
From: russell.brill@jpl.nasa.gov (Russ Brill)
Organization: Jet Propulsion Laboratory
Message-ID: <russell.brill-1302970720050001@rmbrill.jpl.nasa.gov>

I have several 68040 targets and one rad6000 target, and on some of them,
all output to the screen is buffered, even to stderr.  I have a program
that writes to the screen every few seconds.  On some of the 68040's the
data is displayed every few seconds; on some of the 68040's and on the
rad6000, it all comes out at the end of the program.  What's going on
here?  The boot scripts and "version" looks the same for all of the
68040's.  I'm using VxWorks 5.2, and I'm using m68k-gcc (on the 68040's,
of course).

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Tornado questions
Date: 14 Feb 1997 02:31:12 -0800
From: Martin Shepherd <mcs@goblin.caltech.edu>
Organization: California Institute of Technology.
Message-ID: <yc9u3nf8yrz.fsf@goblin.caltech.edu>
References: <199702131808.KAA29498@lbl.gov>

Bob Herlien <bobh@mbari.org> writes:
>...
> b) Redirect I/O to virtual console.  All interactive output from
>...
> c) Redirect I/O, don't use virtual console.  Now output goes to
> windsh.
>...
> 
> Also in cases (b) and (c), any command with redirected output causes
> approximately a 3 second delay before I get the '->' prompt again.
> Anybody else see this?

Yes I also encountered this (Ultra1 + Solaris 2.5.1 host with a single
MVME177 + VxWorks 5.3 target). The delay makes the virtual console
useless from my perspective, so I have reluctantly reverted to using
the target's console terminal.

Martin Shepherd  (mcs@astro.caltech.edu)

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Tornado questions
Date: Fri, 14 Feb 1997 10:08:30 -0500
From: Jerry Hudgins <hudgins_jc@corning.com>
Organization: Corning Incorporated
Message-ID: <33047FEE.4B26@corning.com>
References: <199702131808.KAA29498@lbl.gov>
Reply-To: hudgins_jc@corning.com

Bob Herlien wrote:
> 
> We need to load our application code from the net and start executing 
> at boot time (i.e., not in tcl scripts that run at 'launch' or 
> 'windsh').  However, we'd also like to be able to use the Tornado tools 
> to monitor (and sometimes debug) our system while running.  In 
> particular, we'd like to use the host shell since we can run multiple 
> instances, and the CrossWind debugger. The problem is that the symbols 
> from the application code are target resident only, and not available 
> to the host tools.

This is a big problem for us, too.  At first, I had a fair amount of
trouble getting the WRS support folks to understand -why- this was a
problem.  Eventually they admitted that it was a common complaint,
and described it as a "design oversight."  ;-)  However, they did
tell me that the remote and host symbol tables would be sync'ed in 
V1.0.1, which is about to beta.  I'm keeping my fingers crossed.

- -- 
Jerry Hudgins   |   Corning Incorporated   |   hudgins_jc@corning.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Starting a method as a task
Date: Thu, 13 Feb 1997 09:10:26 GMT
From: Marc de Bruin <mdb@oce.nl>
Organization: =?iso-8859-1?Q?Oc=E9=2DNederland?= B.V.
Message-ID: <3302DA82.357E@oce.nl>
Reply-To: mdb@oce.nl
Sender: news@oce.nl (The Daily News @ nntp01.oce.nl)

Haie,

Is it possible to start a method from a class as a task? I've tried it
but I got strange results...

Marc.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: s_sigcatch: wbcnt=2! error
Date: 14 Feb 1997 20:19:34 GMT
From: mda@bnr.ca (Mark Dapoz)
Organization: Bell-Northern Research Ltd.
Message-ID: <5e2hcm$9cg@bcarh8ab.bnr.ca>
References: <x8clo8socpp.fsf@eje.xyplex.com>

In article <x8clo8socpp.fsf@eje.xyplex.com>,
Eric Ewanco  <eje@eje.xyplex.com> wrote:
>So far I've run into a lot of tools weirdness: gopher faults, VxSim
>segmentation faults (the Unix kind which core dumps, not the kind VxSim traps
>and prints out on behalf of the application), inconsistent behavior between
>single-stepping and free execution, etc., but I'll focus on just one problem in
>this message.
>
>The problem is that I am getting what appears to be an internal error,
>"s_sigcatch: wbcnt=2!".  (I don't use signals, justs tasks and POSIX queues.)

Looks like your tasks may have exceeded their allocated stacks.  Have you
checked to see if you have allocated enough stack space.
				-mark
- -- 
Mark Dapoz	Bell-Northern Research, Ottawa, Canada	    Mark.Dapoz@bnr.ca

Fingers and toes, fingers and toes, forty things we share, forty one if you
include the fact that we don't care.  - The Tragically Hip

---------------------------

Newsgroups: comp.os.vxworks
Subject: VxMP
Date: Fri, 14 Feb 1997 14:20:31 +0000
From: Peter Skoog <peter_skoog@phx.mcd.mot.com>
Message-ID: <330474AF.41C6@phx.mcd.mot.com>

Hi,

Has anyone experience of VxMP? All I found so far is data sheet like
information so Im very basic.... What I like to know is how easy is it
for me to write an application that should be able to run on both single
CPU systems and multiple CPU systems. 

For example is it possible for me to assign all tasks to one virtual CPU
and let VxMP distribute the tasks between X CPU4s in the system if I
have told VxWork that this specific configuration has X CPU4s?

If as above how well can I expect the VxMP to work performance wise?

Please let me know what you think. Thanks for your answer!

Best regards,
Peter skoog

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: s_sigcatch: wbcnt=2! error
Date: 14 Feb 1997 17:09:56 -0500
From: Eric Ewanco <eje@eje.xyplex.com>
Organization: Xyplex, Inc.
Message-ID: <x8cenejniob.fsf@eje.xyplex.com>
References: <x8clo8socpp.fsf@eje.xyplex.com> <5e2hcm$9cg@bcarh8ab.bnr.ca>

mda@bnr.ca (Mark Dapoz) writes:

> 
> In article <x8clo8socpp.fsf@eje.xyplex.com>,
> Eric Ewanco  <eje@eje.xyplex.com> wrote:
> >So far I've run into a lot of tools weirdness: gopher faults, VxSim
> >segmentation faults (the Unix kind which core dumps, not the kind VxSim traps
> >and prints out on behalf of the application), inconsistent behavior between
> >single-stepping and free execution, etc., but I'll focus on just one problem in
> >this message.
> >
> >The problem is that I am getting what appears to be an internal error,
> >"s_sigcatch: wbcnt=2!".  (I don't use signals, justs tasks and POSIX queues.)
> 
> Looks like your tasks may have exceeded their allocated stacks.  Have you
> checked to see if you have allocated enough stack space.
> 				-mark

Indeed, it works *much* better now! (The wonders sufficient stack space can
accomplish.)   An extraordinarily helpful suggestion!

Many thanks!  (This should be in the FAQ ...)

- -- 
# __   __                    Eric Ewanco 
# IC | XC                 eje@world.std.com
# ---+---        Software Engineer, Xyplex Networks
# NI | KA                  Littleton, Mass.

---------------------------

Newsgroups: comp.os.vxworks
Subject: VME Block Mode Transfer - MVME2600 Tundra Universe
Date: Thu, 13 Feb 1997 19:48:11 -0500
From: Marco Oosterling <marcoo@iplmail.orl.mmc.com>
Organization: Lockheed Martin -- Information Systems Center
Message-ID: <3303B64B.794BDF32@iplmail.orl.mmc.com>

I am using a Motorola MVME2600 PowerPC board, running VxWorks Tornado
5.3
in VME master mode.  The VME chipset is the Tundra Universe VME Chip.

Question: I need to initiate a VME block mode transfer from an external
          VME board to the PowerPC.  Does VxWorks support block mode
transfers,
          and if not, what type of workaround is used to do something
similar
          to this ?

Thanks, Marco Oosterling.
- --------------------------------------------------------------------------------
        Marco R. Oosterling -- marcoo@iplmail.orl.mmc.com -- Staff
Engineer
     Lockheed Martin Corporation -- Electronics & Missles  -- Orlando,
Florida
                  Voice: (407) 356-8866 -- Fax: (407) 356-8944
- --------------------------------------------------------------------------------

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: 3C509 drivers
Date: Fri, 14 Feb 1997 09:46:01 -0800
From: John McQueen <jmcqueen@gi.com>
Organization: General Instrument
Message-ID: <3304A4D9.5CDF@gi.com>
References: <32FF6320.13F0@wg.com> <3300233E.4BEB@met.fr>

Vincent HUE wrote:
> 
> Lee Wheat wrote:
> >
> > we're trying to being up vxworks on an off-the-shelf x86
> > board and would like to use a 3Com 3C509 PCI Ethernet board
> > as the network interface. i checked 3Com's ftp site and their fax
> > service but they don't list such a beastie. wind river
> > got nervous when i mentioned PCI. i didn't find one on the
> > archive site (i may have missed it).
> >
> > does anyone know where i can get drivers (source or binary)
> > for such a thing?
> >
Try this site: 
It contains many of the drivers for the 3c509...

http://infodeli.3com.com/infodeli/swlib/unsupported_adapter_files.htm

jmcqueen@gi.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Viewing Arrays In Debugger
Date: Mon, 10 Feb 1997 19:37:42 GMT
From: bgosse@nswc.navy.mil (bgosse)
Organization: NSWCDD
Message-ID: <bgosse-1002971446510001@bgossmac.nswc.navy.mil>
References: <32FBA7D6.277A@compuserve.com>
Sender: news@relay.nswc.navy.mil

In article <32FBA7D6.277A@compuserve.com>, Jeff Schmidt
<"74043,572"@compuserve.com> wrote:

> Target  : 486
> 
> When viewing arrays in the debugger I find that I am only able to see
> the first 200 elements in the array.  How do you control the range of
> values being displayed.  For example, how would I specify the range
> 1..1000 or 300..500??
> 
> Any help would be appreciated.
> 
> Jeff Schmidt
> 74043.572@compuserve.com

in gdb see:

(gdb)help set print elements

- -- 
Bruce Gosse                          bgosse@nswc.navy.mil
"expressing personnel opinions, not those of my employer"
Naval Surface Warfare Center Dahlgren Division,  Code N85
Phone:  (540) 653-2823

---------------------------

End of New-News digest
**********************

From leonid@wrs.co.il  Sun Feb 16 00:08:37 1997
From: leonid@wrs.co.il (Leonid Rosenboim)
Date: Sun Feb 16 00:08:40 PST 1997
Subject: Re: Multiple serial drivers in one VxWorks kernal?
> Date: Mon, 10 Feb 1997 11:21:17 -0600
> From: chaplin_roger@keithley.com
> Message-ID: <855595128.13192@dejanews.com>
> ...
> My question is, how do I compile *two* different drivers into a single
> VxWorks kernal, so that I can have all four serial ports available?
> I've looked at sysSerial.c and usrConfig.c, and it looks like no
> provision at all has been made for this kind of setup.
> ...

On the contrary, my friend ! It is one benefitial addition in 5.3,
to be able to have drivers for different types of UARTs at the same
time on the same BSP. Recap: in older versions, up to 5.2, the
serial driver functions all had the tyCo... prefix, thus in order
to have two or more drivers combined in one BSP, one had to change
the function names. Not impossible, but makes maintenance more difficult,
ending up with a "special" version of the same UART driver per BSP.

Now, all SIO drivers have their functions and structures named
with a UART-specific prefixes, and sysSerial.c is the only place
where these are tied in to the BSP.

Here is what you got in sysSerial.c:

1. a structure for each UART channel. The structure type is defined
in a .h file for that specific UART included prior to structure declaration:

Add additional struct for the extra UART type.

2. sysSerialHwInit() is a function which initializes the above defined
structure. Many fields are not BSP specific, so you can easily
copy such definitions from another BSP using the same UART you are adding.
Be sure to initialize all fields of all structure as defined in #1.

In the end of this function, you call the UART-specific hardware init function:

    z8530DevInit (&z8530Dusart1);

You have obly one function sysSerialHwInit() per BSP, but it may call
different UART init functions, as needed. This is done from sysHwInit(),
prior to kernel initialization.

3. sysSerialHwInit2() is similar to the above, it is different from the above
only by the fact it is called ADTER kernel is initialized, hence ideal
for setting up interrupt vectors, enabling interrupts etc.

4. sysSerialChanGet() is the function which will be later called
by upper layers to associate a channel number with a data structure
relating to that channel, which also contains pointers to functions
(methods) which are UART specific.

In the case of different types of UARTs, you may decide that channels
0 through 3 belong to the first UART, while 4 through 7 are for the second.
Works if you got a number of UARTS of the same or different types.

Beware that this function must be extremely effecient, and may be
called at ISR as well as task level (ho fancy stuff here...)

---------
Although this is not intended to be a tutorial on writing UART drivers
in 5.3 BSPs, I sincerely hope this does help.
-----------------------------------------------------------------------
Leonid Rosenboim                   | Phone: +972-3-559-8144
Technical Manager                  | Fax:   +972-3-559-8244
Wind River Systems Israel          | E-Mail: leonid@wrs.co.il
P.O.Box 11502, AZUR 58017, Israel  | WWW: http://www.wrs.com

From gnarciso@palmnet.net  Sun Feb 16 03:01:36 1997
From: "George Narciso" <gnarciso@palmnet.net>
Date: Sun Feb 16 03:01:37 PST 1997
Subject: I/O Device Address Space Writeability
I am trying to write enable the FLASH on my Motorola MVME-177 board.  I
think all I need to do is set a bit in a VMEChip2 register which is mapped
to the I/O Device Address of $FFF40088.  For some reason, I cannot write
to this address from VxWorks.  Is VxWorks preventing me from writing to
this location?  Is there something I must to before writing to an I/O
Device Address?  All I want to do is write to FLASH from my program, is
that so crazy?

From daemon@csg.lbl.gov  Sun Feb 16 04:00:21 1997
From: daemon@csg.lbl.gov
Date: Sun Feb 16 04:00:27 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Sun Feb 16 04:00:14 PST 1997

        Subject: 328328H8/ WRITERS WANTED//
        Subject: Re: Choosing a PCI CPU

-------------------------------------------------------

Newsgroups: comp.object,comp.org.acm,comp.os.chorus,comp.os.vms,comp.os.vxworks
Subject: 328328H8/ WRITERS WANTED//
Date: 16 Feb 1997 01:51:03 GMT
From: RODFLK <107673.2146@CompuServe.COM>
Organization: MVMVO
Message-ID: <5e5p67$e0t$10@mhafc.production.compuserve.com>

We* are accepting new & previously published writers for
publication. We have 3 offices/ 2 in New York City/
the other in Florida. For ALL fiction & nonfiction/ 
send brief synopsis/ first chapter/ include a self 
addressed, stamped envelope: S.A.S.E.
Poetry: send 3 poems/ S.A.S.E.
Short Stories: send brief synopsis/ 3 pages/ S.A.S.E.
Do not send complete manuscript unless invited to do so.
WOODSIDE LITERARY AGENCY
1190 North Collier Blvd.
Marco Island, Florida
Zip:-- 34145
Tel: 941-642-9660

 

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Choosing a PCI CPU
Date: Thu, 13 Feb 1997 09:05:26 -0800
From: John Finley <john@finley.com>
Organization: Netcom
Message-ID: <330349D6.1A1D@finley.com>
References: <9702120336.AA02857@daffy.isys>
Reply-To: john@finley.com

Darryl Troxel wrote:
....
> To lower costs (and for other reasons) we want to go to a PCI-bus
> architecture.  We're putting our proprietary hardware on PCI and we'll
> keep VxWorks, but we have some major decisions to make regarding the
> CPU.  Some options we've considered:
....

Another option would be the Cyclone SB08.  It's essentially
a PC-formfactor motherboard, but has an i960 on it.  It also
has two 960-to-PCI bridge chips, giving it 8 PCI slots.  I've
never seen one (except at trade shows), but would think in
general it would be nicer to avoid all the PC baggage in a
VxWorks system.  I would also guess it's little-endian, although
Cyclone's VME 960 boards do a nice job of talking to the (big
endian) VMEbus (I have used those).  http://www.cyclone.com/
for more.

John

- --------------------------------------------------
John Finley                 Engineering Consultant
john@finley.com                  Real Time Systems
(619) 689-0032                Networking Protocols
- --------------------------------------------------

---------------------------

End of New-News digest
**********************

From eerobot@ee.ust.hk  Sun Feb 16 07:43:08 1997
From: "Dr. Zexiang Li's Robotic Project" <eerobot@ee.ust.hk>
Date: Sun Feb 16 07:43:10 PST 1997
Subject: Real-time user interface
Hi,

Does anyone have experiences on development of user interface for a real-time application system based on vxwork 5.2? 

Thanks in advance.

Qin
 

From rtp.co.uk!jfd@rtp.co.uk  Mon Feb 17 01:43:03 1997
From: Julian Day <jfd@rtp.co.uk>
Date: Mon Feb 17 01:43:05 PST 1997
Subject: RE: Tornado questions
Hi vxWorkers/Jerry

Sorry, My previous post shoul have read www.rst.co.il as the web site.

Btw, I have if you include both WDB and DEBUG but exclude WDB_BP
when configuring vxWorks, you get both debug capabilities in the
shell and the windsh etc. The only problem (that I have found) is that you cannot set breakpoints from the host side.

regards,
Julian

---------------------------------------------------------------
Julian Day
Real Time Products Ltd.                e-mail:    jfd@rtp.co.uk
Unit 8, Holt Court,                       tel: +44 121 333 6955
Aston Science Park, Jennens Road,         fax: +44 121 333 5433	
Birmingham. B7 4EJ. England.              web:    www@rtp.co.uk
---------------------------------------------------------------

----------
From: 	Jerry Hudgins[SMTP:hudgins_jc@corning.com]
Sent: 	14 February 1997 19:13
To: 	Julian Day
Subject: 	Re: Tornado questions

Julian Day wrote:
> 
> Try www.rst.co.ul There is something called symSync on the site there 
> (In the free s/w dir which will keep your symbols in check.)

Julian, I wasn't able to find this, even replacing '.ul' with '.uk'
and '.rst' with '.rtp'...  Could you give me an updated pointer to
symSync?  Thanks.

-- 
Jerry Hudgins   |   Corning Incorporated   |   hudgins_jc@corning.com

From daemon@csg.lbl.gov  Mon Feb 17 04:00:20 1997
From: daemon@csg.lbl.gov
Date: Mon Feb 17 04:00:22 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Mon Feb 17 04:00:18 PST 1997

        Subject: Re: Autodependencies In GNU Make
        Subject: Re: New to vxWorks with NT
        Subject: Re: Context Switching?
        Subject: JOBS:  MA <<< Embedded SW Engineers / C++ >>> Perm. MULTIPLE / URGENT Openings (agency)
        Subject: Re: Proper use of malloc() -- Include files
        Subject: Re: Proper use of malloc() -- Include files

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Autodependencies In GNU Make
Date: Fri, 14 Feb 1997 10:03:35 +0100
From: Philippe Le Foll <phillf@fridu.com>
Organization: Fridu a Free Software Company
Message-ID: <33042A67.39C9956B@fridu.com>
References: <330353A2.5868@mee.hwm.com>

Uwe Scheffold wrote:
> 
> Hi Jeff,
> 
> we had the same problem. We found that gnu make seems not to include
> the "autodependecie" feature. This means that the problem is
> undependent from the makefile,${DEPDIR}/%.d: %.cc
> it depends on the make executeable.
> 
> We are using sun host's so we tryed the Solaris make (with the same
> makefile), it works.
> So maybe you have a make on you NT computer?
> 

You can force auto dependencies on any gnu make with following lines
where SRCS is the list of the file you want dependencies, and
DEPDIR the directory you place your dependency in.

gcc -M or gcc -MM generate a file you can include in your makefile

It works under Unix & NT

phillf

# Automaticaly include dependency
# -------------------------------- 
SRCS   = $(wildcard *.c)
DEPDIR = ../depend
OBJDIR = ../obj
GCC     = gcc

ifdef SRCS
   include $(SRCS:%.c=${DEPDIR}/%.d)
endif

${DEPDIR}/%.d: %.c
        @echo extracting depend from $<
        ${GCC} -MM  ${ALLDEFINES} $< \
         | sed "s#$*.o#${OBJDIR}/$*${OBJ_SFX}#g"> $@

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: New to vxWorks with NT
Date: Tue, 11 Feb 1997 11:11:44 -0800
From: Doron Bar <doron@ndc.soreq.gov.il>
Organization: soreq NRC
Message-ID: <3300C470.ABA@ndc.soreq.gov.il>
References: <32F9EB62.167EB0E7@amil.co.il>
Reply-To: doron@ndc.soreq.gov.il

Hi !
I wroks fine with me..
Anyway, I boot my Vxworks from my nt workstation.
You will have to get a ftp server on the NT.

The change of the drive letter is done by the ftp server.
On NT and ohter MS-Windows, to change the drive
you should do the command: "F:" and then do a cd.
If the case you have described does not work, change (or get) another
ftp server. 
Chamelion NFS server is work fine, but the software of this company is
NOT good. (They suffer from a lot of bugs, etc).

Hope this help,
	Doron Bar.

Doron Bar
Phone: 08-9434361
Email: doron@ndc.soreq.gov.il
Soreq NRC, Yavne Israel.

Howie Schiffmiller wrote:
> 
> Hi
> 
>  We've been working with UNIX and vxWorks for a few years, and
> we're now trying to move our host to NT. I was hoping someone
> out there could help with some of the following...
> 
> 1. On UNIX, in order to download our code and start our session
> with the target, we use the following
> 
>   cat <script> - | telnet <target>
> 
> For example, The script contains some of the following
> 
> iam "howie"
> cd "/home/howie"
> ld < myLib.o
> 
> Since we redirect the srdout to be the stdin of the telnet session,
> we now have a window open to the target where we can issue
> commands, as well as see our output.
> 
> How is one supposed to work in NT (preferably as similar as possible
> but I'll take any ideas).
> 
> 2. Is there any way to boot off of a specific system drive other
> tahn the default? When I give my target the following boot line
> 
>   machine:f:/bootpath/vxWorks.exe
> 
> it doesn't understand it. I have to leave out the f:, in which case
> (I assume) it boots from my default systemdrive.
> 
> 3. Within the ftp session, I can't seem to cd from one drive to
> another (cd f:/newdir doesn't work if I'm in c:)
> 
> Thanks in advance for any help you can offer
> --
> Howie Schiffmiller                Email: howie@amil.co.il
> Applied Materials (Israel) Ltd.   Phone: +972-3-645-0247
> P.O. Box 58152                    Fax:   +972-3-645-0280
> Tel Aviv, Israel  61581           TimeZone: GMT + 2

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Context Switching?
Date: Wed, 12 Feb 1997 19:09:05 -0800
From: Duane C Austin <dcaustin@pacbell.net>
Organization: A customer of Pacific Bell Internet Services
Message-ID: <330285D1.2017@pacbell.net>
References: <5dq1nv$apg@tel.ast.lmco.com>
Reply-To: dcaustin@pacbell.net

Chris Nmi Renna wrote:
> 
> Context switching? What's all this then? I keep coming across this term
> but I have no idea what it means. Anyone have any insight?
> 
> Thanks in advance,
> 
> Christopher Renna

If process A is running and is pre-empted by process B you've had a
context switch.

Duane

---------------------------

Newsgroups: comp.os.vxworks
Subject: JOBS:  MA <<< Embedded SW Engineers / C++ >>> Perm. MULTIPLE / URGENT Openings (agency)
Date: 16 Feb 1997 19:30:27 GMT
From: tfi@ix.netcom.com(Ben Oifer, Technical Futures, Inc.)
Organization: Netcom
Message-ID: <5e7n8j$hb2@dfw-ixnews5.ix.netcom.com>

My client is a leading technology supplier for the digital wireless
communications marketplace.  The company designs, manufactures and
supports a line of advanced wireless communications and land mobile
infrastructure products for digital wireless applications.  The
company's product technology is advancing rapidly to meet the growth of
mini and micro cellular base stations.

The positions, based in Massachusetts, are permanent openings for all
levels of  SOFTWARE ENGINEERS with EMBEDDED C or C++ experiences. 
Responsibilities include the specification, design and implementation
of real time embedded communications systems for wide area data
communications for telecommunication products.

Requires 1 - 10  years commercial software development, embedded
software, and C++ coding experiences.

U.S. Citizen or Permanent Resident required.
Excellent salary package.
Relocation assistance will be provided.

Your name and resume will NOT be submitted to any company without your
prior authorization.

Please EMAIL your resume to:  tfi@ix.netcom.com
     or mail your resume to: 
            Ben Oifer
            Technical Futures, Inc.
            354 Turnpike Street, Suite 102
            Canton, MA  02021
            Phone: (617) 821-1600
            Fax:   (617) 821-0099  

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Proper use of malloc() -- Include files
Date: 12 Feb 1997 17:46:01 -0500
From: jha@cs.purdue.edu (John H. Aughey)
Organization: Department of Computer Science, Purdue University
Message-ID: <5dth79$j56@locutus.cs.purdue.edu>
References: <970210161309_74043.572_BHT176-1@CompuServe.COM>

In article <970210161309_74043.572_BHT176-1@CompuServe.COM>,
Jeff Schmidt  <74043.572@CompuServe.COM> wrote:
>I experienced a similar thing with the math functions.  If you do not include
>the proper header file containing the function prototype the function assumes an
>integer return value.  I found it to be slightly undesirable having my sin() and
>cos() functions returning ints.

The functions do not return integers even if you do not have the
include file.  The function defination is for your benefit so the
compiler will generate warnings that the return type doesn't match the
variable you're assigning it to.  This way when you see an warning
like:
c.c:8: warning: assignment makes integer from pointer without a cast

...you can look at your code and say, *duh*, I'm not supposed to assign
a pointer to a character variable.

True it assumes it will return an integer return value if you don't
define one, but it will still return the correct value at run time.
The assumption and hopeful warning that is generated is so you can
correct your code because it's probably incorrect.

- -John
- -- 
- --
John H. Aughey (jha@cs.purdue.edu)
Systems Programmer - Purdue University CS Department

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Proper use of malloc() -- Include files
Date: 16 Feb 1997 03:43:29 GMT
From: garyjohn@spk.hp.com (Gary Johnson)
Organization: Hewlett-Packard, Spokane Division
Message-ID: <5e5vp1$4o7@hpcvsnz.cv.hp.com>
References: <970210161309_74043.572_BHT176-1@CompuServe.COM> <5dth79$j56@locutus.cs.purdue.edu>

John H. Aughey (jha@cs.purdue.edu) wrote:
> In article <970210161309_74043.572_BHT176-1@CompuServe.COM>,
> Jeff Schmidt  <74043.572@CompuServe.COM> wrote:
> >I experienced a similar thing with the math functions.  If you do not include
> >the proper header file containing the function prototype the function assumes an
> >integer return value.  I found it to be slightly undesirable having my sin() and
> >cos() functions returning ints.

> The functions do not return integers even if you do not have the
> include file.  The function defination is for your benefit so the
> compiler will generate warnings that the return type doesn't match the
> variable you're assigning it to.  This way when you see an warning
> like:
> c.c:8: warning: assignment makes integer from pointer without a cast

Well, not quite.  The function sin() will return a double, but the
compiler will interpret it as an integer.  Note that the compiler will
not cast the double result to an integer, it will assume that the result
is already in the form of an integer.

> True it assumes it will return an integer return value if you don't
> define one, but it will still return the correct value at run time.

Nope.  You will get very bizarre results because the integer return
value seen by the caller will be the upper or lower (I forget which) 32
bits of the 64-bit floating point representation returned by the
function.  (This is assuming that your ints are 32 bits.)

Gary

---------------------------

End of New-News digest
**********************

From 74043.572@CompuServe.COM  Mon Feb 17 05:47:41 1997
From: Jeff Schmidt <74043.572@CompuServe.COM>
Date: Mon Feb 17 05:47:43 PST 1997
Subject: Re: Real-time user interface
We are currently developing a real time product with a user interface.  The
system is '486 based and receives inputs via a touch screen.  Although we are in
the middle of development, our user interface is comming along nicely.  If there
are any specific questions you have drop me a note.

Jeff 
74043.572@compuserve.com

From sridhar@prc.allied.com  Mon Feb 17 09:08:04 1997
From: sridhar@prc.allied.com (Sridhar Adumusilli)
Date: Mon Feb 17 09:08:06 PST 1997
Subject: Re: Real-time user interface
 Submitted-by: Jeff Schmidt <74043.572@CompuServe.COM>
>  
> We are currently developing a real time product with a user interface.  The
> system is '486 based and receives inputs via a touch screen.  Although we are in
> the middle of development, our user interface is comming along nicely.  If there
> are any specific questions you have drop me a note.
> 
> Jeff 
> 74043.572@compuserve.com
> 
> 
> **********
 
What kind of graphic libraries are you using?  I have plans to port
an airplane simulator to vxWorks on PC.

Thanks.

Sridhar

From 74043.572@CompuServe.COM  Mon Feb 17 14:12:09 1997
From: Jeff Schmidt <74043.572@CompuServe.COM>
Date: Mon Feb 17 14:12:11 PST 1997
Subject: Re: Real-time user interface
We are using MetaWindows primitives with the Autumn Hills graphics classes.  We
chose this since we are porting a system that originally used these libraries. 

The MetaWindows software was ported to VxWorks by Ease Software.  The Autumn
Hills software is currently sold by MetaGraphics and is designed for a DOS
environment and required some porting on our side.

Schmidt out

From MikeMcQuade@connect.com  Mon Feb 17 16:39:31 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Mon Feb 17 16:39:33 PST 1997
Subject: Re: Real-time user interface

We are using a system from Raster Graphics, their SDL package is easy to use, 
we are using their software on a PowerPC MVME-2603 board, along with a PMC card
that can drive a TFT or SVGA monitor.

The graphics card and the PowerPC make a mighty powerful combo, and the
Active matrix
TFT screen we are using stops people in their tracks, it puts a CRT to shame.

Along with this, we are using an embedded mouse from USAR systems, all in
all, its 
been a very good combination for us, and Raster Graphics support is the best
you will
find.

See their package at:

http://www.rastergr.com/

See the mouse pointer thing at:

http://www.usar.com/prodnser/mousec/hulapoint.htm

Glad to answer any questions.

Mike.

Mike

From dalsup@tinygee.dasd.honeywell.com  Mon Feb 17 17:06:05 1997
From: Dave Alsup <dalsup@tinygee.dasd.honeywell.com>
Date: Mon Feb 17 17:06:06 PST 1997
Subject: Re: Real-time user interface
> Does anyone have experiences on development of user interface for a real-time application system based on vxwork 5.2?
> 

We've been using the Virtual Application Prototyping System (VAPS) CCG
(C Code Generator) for about a year now and have been very pleased.  It
is produced by Virtual Prototypes Incorporated (VPI).

See http://www.virtualprototypes.ca

Dave Alsup
Honeywell Defense Avionics Systems

From cgrames@mdc.com  Tue Feb 18 02:01:06 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Tue Feb 18 02:01:08 PST 1997
Subject:  Question about VxWorks in ROM -Reply
>Submitted-by MikeMcQuade@connect.com  Fri Feb 14 22:42:24 1997

>I managed to get VxWorks into Flash on a Motorola MVME-2600 board, but but ran into a problem
>with the "Boot Device"
>
>The problem is this, when VxWorks boots up, I get a error message about the boot device. It
>seems to be looking for an "lse" device for the network, it should be connecting to the "dc"
>network device.
>
>When I had the normal bootrom_uncmp in flash, the I could set these parameters and they
>would stay in NVRAM, I looked all over the BSP for where
>I could setup the network interface, but could find nothing.
>
>Can someone tell me where I define the network interface as the "dc" device ?

Mike,

I am assuming your 2600 has Open Firmware installed.  Both Open Firmware and VxWorks use
the NVRAM, so once you configure for VxWorks and go back to Open Firmware, you end up
trashing the VxWorks configuration.

We left Open Firmware in the socketed flash (as delivered) and loaded bootrom_uncmp into the
soldered flash (0xff000000). Then we moved the ROM controller jumper (J10) to pins 1 and 2 to
select the soldered flash.  We failed boot from the "lse" device the first time, too, but once we
configured for VxWorks, all subsequent power-ups and boots occurred without incident.

I hope this helps.  Let me know if you need more info.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From daemon@csg.lbl.gov  Tue Feb 18 04:00:13 1997
From: daemon@csg.lbl.gov
Date: Tue Feb 18 04:00:15 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Tue Feb 18 04:00:11 PST 1997

        Subject: Re: MVME177 VME Interrupt and running my ISR
        Subject: tcl, tk and Tix port to vxworks

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: MVME177 VME Interrupt and running my ISR
Date: 17 Feb 1997 13:15:38 GMT
From: kadionik@aramis (Patrice KADIONIK (IXL - CNRS URA 846 - FRANCE))
Organization: CRIBX1 , Universite de Bordeaux I , France
Message-ID: <5e9llq$51h@news.u-bordeaux.fr>
References: <5e4fta$1cs@ddi2.digital.net>

Your_name_Here (you@somehost.net) wrote:
: When I get a VME interrupt (coming from custom VME card on same backplane) how 
: do I get my ISR to run.  I've read about intConnect() and it looks promising 
: but I don't understand the first parameter which is like 'byte offset in 
: table'.  Any help would be appreciated. Thanks.

: david exberger
: exberger@digital.net

Hi David;

During the interrupt cycle, the interrupter gives to the VME manager a byte
(value 0 to 255) identifying the interrupt routine to be executed by the processor of the interrupt manager board.
This value is in the range 0 to 255 and is similar to the vector number in
the 68k environment. 
In fact with your MVME 177 board, the interrupt manager is the VME chip.
By memory you have to enable your IRQ level first and give the vector number
of your interrupt to be executed for this VME interrupt.
Generally the VME vector number given by the interrupter may be the same than
your local vector number but you can change it.
So the first parameter of the intConnect() routine is the vector number of
your ISR.
Remember that you are in the M68k environment and some vector numbers are
reserved :
0 to 63 : reserved : buserror, reset...
64 to 255 : user defined.

So your first parameter must be in the space 64 to 255. Remember that
VxWorks may use some values for its own need.
I know that there is a VxWorks command giving the allocated vector numbers.
You can also take a look at the vector table normally in the address range
$000 $400 in local memory. The relation between the ISR address (or exception
routine) and its vector number is :
ISR_address = 4 * vector_number

You can see if a user vector number is also used. For an unused vector number
you have always a dummy address of a dummy ISR. It's always the same.

May this help you;

Cheers;
- --
Pat.
- -----------

                                \^ ^/
                                )@ @(
                  +---------oOO--(_)-------------+
                  |      Patrice Kadionik        |
                  |  kadionik@ixl.u-bordeaux.fr  |
                  +-----------------Oooo--oOO----+
                              oooO (   )
                             (   )  ) /
                              \ (  (_/
                               \_)

=========================================================================
| "Tout doit etre aussi simple que possible, pas seulement plus simple" |
=========================================================================
| Patrice Kadionik                                                      |
|    IXL                           Fax   : +33 5.56.37.15.45            |
| Laboratory of Microelectronics   Voice : +33 5.56.84.65.40            |
| 351, Cours de la liberation      http  : http://www.ixl.u-bordeaux.fr |
| 33405 TALENCE cedex              mail  : kadionik@ixl.u-bordeaux.fr   |
| FRANCE                                                                |
=========================================================================

---------------------------

Newsgroups: comp.os.vxworks
Subject: tcl, tk and Tix port to vxworks
Date: Mon, 17 Feb 1997 23:55:07 GMT
From: jmcardenas@ccgate.hac.com
Organization: Hughes Aircraft Co (soon to be Raytheon)
Message-ID: <3308edb1.7814234@news>
Reply-To: jmcardenas@ccgate.hac.com

I am in the process of porting tcl7.5, tk4.1 and Tix4.1 onto vxworks.
Anyone with experiences of this process that is willing to share
information will be greatly appreciated.  Please e-mail me at
GKLEE@ccgate.hac.com

---------------------------

End of New-News digest
**********************

From MikeMcQuade@connect.com  Tue Feb 18 08:01:50 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Tue Feb 18 08:01:53 PST 1997
Subject: Re: Question about VxWorks in ROM mv-2603
At 02:01 AM 2/18/97 PST, you wrote:
>Submitted-by cgrames@mdc.com  Tue Feb 18 02:01:06 1997

>I am assuming your 2600 has Open Firmware installed.  Both Open Firmware
and VxWorks use
>the NVRAM, so once you configure for VxWorks and go back to Open Firmware,
you end up
>trashing the VxWorks configuration.
>
>We left Open Firmware in the socketed flash (as delivered) and loaded
bootrom_uncmp into the
>soldered flash (0xff000000). Then we moved the ROM controller jumper (J10)
to pins 1 and 2 to
>select the soldered flash.  We failed boot from the "lse" device the first
time, too, but once we
>configured for VxWorks, all subsequent power-ups and boots occurred without
incident.
>

Charlie,

I have not had a problem putting bootrom_uncmp, into flash, as you noted, at
the first powerup, 
the NVRAM parameters are entered, then life is fine after that. The problem
I was having was,
putting the VxWorks_rom image into flash, when the OS would boot, it would
try to use the "lse"
interface. Problem is, there are no provisions to change the NVRAM
parameters from the console,
when you boot the OS this way.

I came up with a work around, I copy the default bootline into NVRAM, this
works for now, I think
that the BSP code should check to see if the information from NVRAM is
valid, if its not, then it
should copy the default bootline into NVRAM.

The 2600 board boots quick like this, it takes about 4 seconds after powerup
to be off and running.

Also, I dont know if you have seen this or not, but Ive seen several 2600
boards that hang on powerup, it appears to be a problem at powerup only, the
target will eventually time-out, and report "can't load bootfile"
then if I cycle power on the VME crate, the boards come right up. Also, once
the board boots up, hitting Cntrl-X
from the Windshell reboots every time.  -- Anyone else seen this strange
powerup problem on the 2600 ??

I don't see this boot problem now that Im booting from flash.

Thanks for the reply.

Mike

From wbrown@csg.lbl.gov  Tue Feb 18 08:10:10 1997
From: wbrown@csg.lbl.gov (Bill Brown)
Date: Tue Feb 18 08:10:12 PST 1997
Subject: Re: my SNMP info requests.

Many thanks to all who responded to my earlier request for information
on SNMP for vxWorks.

I've been off with the flu since last Tuesday, and I'm just now starting
to dig thru my mailbox.  Surely, my cup runneth over!  The list is an
amazing resource.

Disclaimer:  Any opinions are my own and have	    |  -bill
    nothing to do with the official policy or the   |   wlbrown@lbl.gov
    management of L.B.N.L, who probably couldn't    |   Berkeley, CA
    care less about employees who play with trains. |   aka wlbrown@netcom.com

From WILLIAMK@wpg.lmcda.lmco.com  Tue Feb 18 09:07:35 1997
From: "Williams, Kerry @ WIN" <WILLIAMK@wpg.lmcda.lmco.com>
Date: Tue Feb 18 09:07:39 PST 1997
Subject: MVME167 Newbie Questions

Hello all,

I'm a new vxWorks (Tornado 1.0) user and have some newbie-type questions 
regarding my Motorola MVME167 boards.

In my current application I have several custom VME boards to be used in a 
radar scan converter.  Right now I've edited the sysPhyMemDesc structure in 
sysLib.c to include all the cards I have. However, this really slows down 
boot time and seems to perform some memory initialization that I can't 
inhibit. Is there some way to dynamically allocate or deallocate VME memory 
for these cards from my application? How can I stop automatic memory 
initialization for the different memory spaces in sysPhysMemDesc?

I also need to DMA data at high speed from a couple of FIFOs visible on the 
VME. Is there a driver available that will do this for me? If I just dink 
with the VMECHIP2 DMA controller directly from my application, are there 
hidden pitfalls I should watchout for?

Please email any replies to "kerry.williams@lmco.com"

Thanks in advance,
Kerry.

Kerry Williams
Lockheed Martin Canada Inc.

From TOM2910@aol.com  Tue Feb 18 10:38:11 1997
From: TOM2910@aol.com
Date: Tue Feb 18 10:38:13 PST 1997
Subject: Question on the DNS's Resolver.
Hi Netter,

I am looking for the Resolver, the client-side API of the DNS.
Has anyone implemented it or any information on this ?

Many Thanks.

-Tom Wang
==============================================
3 Tech Inc.                                      Email:  s.wang@ieee.org

From cjs@cscsgi.larc.nasa.gov  Tue Feb 18 12:37:10 1997
From: "Christopher J. slominski" <cjs@cscsgi.larc.nasa.gov>
Date: Tue Feb 18 12:37:12 PST 1997
Subject: PowerPC lock-ups.
Folks,
	I recently sent an entry to the user's group.  I got somw
responses indicating the PowerPC patch for VxWorks, however installation
of the patch did not solve the problem.  I am including my original text
here.

--------------------------------------------------------------------------
 
Hello,
	I am a fairly new user of Vxworks.  I have a VME chassis with a
PowerPC 604 processor is slot #0 and a number of I/O boards populating the
chassis.  Other boards include:

	Systran SCRAMNet+
	Condor Engineering ARINC-429
	VMIVME-2128 Discrete output
	VMIVME-1129 Discrete input
	Datum bc635VME Time processor
	VMIVME-3122 Analog-to-Digital

The only card configured to interrupt the PowerPC CPU is the SCRAMNet+.  I
am running Vxworks 5.3.  My application runs continuously servicing the
I/O cards and performing internal calculations.  A Console diagnostic
display is also active, continuously updating the display with status via
the built in serial port.
	The application performs as expected, however occasional lock-ups
occur.  It can run for hours without a problem, however the problem can
reoccur, it appears, at any time.  I have not been able to correlate any
events to match occurence of the error.  When it locks, my console
display will freeze and servicing of the I/O cards stops.  Sometimes the
PowerPC reboots itself.
	I have no experience debugging system/interrupt level problems
with Vxworks and would like some suggestions on how I can proceed with
this problem.  My only debugging experience with Vxworks has included
"printf()" and a VME bus analyzer card (this application fell together
will few problems).  Therefore I am not even familiar with the Tornado
tool set.

--------------------------------------------------------------------

We purchased the WindView product originally, however because of
unavailability for the MVME1604 it was not shipped to us until today.  In
a few days I hope to be able to use this tool.  Does anyone have any
advice for me in using WindView or finding the cause of this problem.
Currently I am using the "divide-and-conquer" technique of sub-dividing
portions of the system and letting it run long periods to try to eliminate
sources of the problem.  With the rate of occurence of this problem, valid
statistical conclussions are difficult.

   *----------------------------------------*
   |  Christopher J. Slominski              |
   |   Computer Sciences Corporation (CSC)  |
   |   3217 N. Armistead Ave.               |
   |   Hampton, VA 23666                    |
   |   (757) 766-8258                       |
   |   c.j.slominski@larc.nasa.gov          |
   |   NASA Mail Stop 931                   |
   *----------------------------------------*

From tmorris@me.umn.edu  Tue Feb 18 14:06:50 1997
From: Ted Morris <tmorris@me.umn.edu>
Date: Tue Feb 18 14:06:52 PST 1997
Subject: Dual Pentium boards

Does anyone know of a vendor selling Dual-Pentium (Pentium Pro) boards
-- that actually will run ~2x faster than one Pentium (preferably
stand-alone)?

If such a beast exists, what kind of RAM is required?  The boards
we've checked out use 'off-the-shelf' RAM but I was told that the
performance is only 1.5 to 1.6 times better than one CPU.

Any experiences, suggestions, etc., are most welcome.

thanks!

Ted

-- 
Ted Morris
tmorris@me.umn.edu                                             612-625-3520
Center For Advanced Manufacturing Design And Control           612-625-9881
Institute of Technology, U of Minnesota                   FAX: 612-625-8884
---------------------------------------------------------------------------
"You cannot think about thinking without thinking about thinking about
something" -- Seymour A. Papert

From MikeMcQuade@connect.com  Tue Feb 18 14:37:20 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Tue Feb 18 14:37:22 PST 1997
Subject: Re: PowerPC lock-ups.
At 12:37 PM 2/18/97 PST, you wrote:
>Submitted-by cjs@cscsgi.larc.nasa.gov  Tue Feb 18 12:37:10 1997
>Submitted-by: "Christopher J. slominski" <cjs@cscsgi.larc.nasa.gov>
> 

>	I am a fairly new user of Vxworks.  I have a VME chassis with a
>PowerPC 604 processor is slot #0 and a number of I/O boards populating the
>chassis.  Other boards include:
>

You wont like this suggestion, get a 603e board from your rep, run your app
on it, I will wager that it runs solid with no lockups, if it does, let WRS 
know about it.

You should be able to get a 200Mhz 603 board, that way you wont loose too
much performance.

I have seen similar problems with the 604 CPU.

Mike.

Mike

From nmehrotra@yurie.com  Tue Feb 18 15:55:15 1997
From: nmehrotra@yurie.com
Date: Tue Feb 18 15:55:17 PST 1997
Subject: Year 2000 and tm_year in struct tm

Hi,

Sometime back there are a brief discussion on the year 2000 problem
and VxWorks. I'm not sure what the final conclusion was and if this
particular issue was discussed, if yes I apologize for repeating it.

In structure tm, the comment for the field tm_year states that this
value is the "years since 1900", as does K&R (2nd ed., pp. 255).
So for instance this value would be 97 right now.

My question is: what would this value be in 2001? 101 or 01?

I would assume 101 but then it no longer remains two-digit.

thanks,

nitin mehrotra

nmehrotra@yurie.com

From chengg@mcgowan.ssd.loral.com  Tue Feb 18 17:00:59 1997
From: chengg@mcgowan.ssd.loral.com (Gary Cheng)
Date: Tue Feb 18 17:01:01 PST 1997

Hi there,

I'm looking for a device-driver for chip R68561 from RockWell (BrookTree).  Has somebody seen driver for such a device.  

Thanks in advance !

Gary Cheng
Space System/Loral
1098 Alta Way, 
Mountain View, CA 94043
1-415-852-7537
chengg@mcgowan.ssd.loral.com

From a.g.kirke@ieee.org  Tue Feb 18 17:18:55 1997
From: al kirke <a.g.kirke@ieee.org>
Date: Tue Feb 18 17:19:13 PST 1997
Subject: Re: PowerPC lock-ups.
At 02:37 PM 2/18/97 PST, you wrote:
>Submitted-by MikeMcQuade@connect.com  Tue Feb 18 14:37:20 1997
>Submitted-by: Mike McQuade <MikeMcQuade@connect.com>
> 
>At 12:37 PM 2/18/97 PST, you wrote:
>>Submitted-by cjs@cscsgi.larc.nasa.gov  Tue Feb 18 12:37:10 1997
>>Submitted-by: "Christopher J. slominski" <cjs@cscsgi.larc.nasa.gov>
>> 
>
>>	I am a fairly new user of Vxworks.  I have a VME chassis with a
>>PowerPC 604 processor is slot #0 and a number of I/O boards populating the
>>chassis.  Other boards include:
>>
>
>
>You wont like this suggestion, get a 603e board from your rep, run your app
>on it, I will wager that it runs solid with no lockups, if it does, let WRS 
>know about it.
>
>You should be able to get a 200Mhz 603 board, that way you wont loose too
>much performance.
>
>I have seen similar problems with the 604 CPU.
>
>
>Mike.
>
Yeah, Mike,

We have a project underway using 604's.  Is there any manufacturer
or configuration that we should watch out for?

You may get tons of response from your comment, but maybe you
could send me some comments on where you hit trouble.

Thanks,

al kirke

From stan@rti.com  Tue Feb 18 18:45:24 1997
From: stan@rti.com (Stan Schneider)
Date: Tue Feb 18 18:45:26 PST 1997
Subject: Re: tcl, tk and Tix port to vxworks

>> Date: Mon, 17 Feb 1997 23:55:07 GMT
>> From: jmcardenas@ccgate.hac.com

>> I am in the process of porting tcl7.5, tk4.1 and Tix4.1 onto vxworks.
>> Anyone with experiences of this process that is willing to share
>> information will be greatly appreciated.  Please e-mail me at
>> GKLEE@ccgate.hac.com

Full source of a TCL 7.3 port to VxWorks is available free at www.rti.com
(What's Hot!-->Freebies).  Tk ported without problems or changes (I think).

Enjoy!

        -- Stan
           stan@rti.com

From MikeMcQuade@connect.com  Tue Feb 18 19:52:22 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Tue Feb 18 19:52:23 PST 1997
Subject: Re: PowerPC lock-ups.
At 05:19 PM 2/18/97 PST, you wrote:

>>You wont like this suggestion, get a 603e board from your rep, run your app
>>on it, I will wager that it runs solid with no lockups, if it does, let WRS 
>>know about it.
>>

>Yeah, Mike,
>
>We have a project underway using 604's.  Is there any manufacturer
>or configuration that we should watch out for?
>

I have run several 603 and 604 boards, all Motorola, the problems are most
likely
NOT a manufacturer problem, but more the nature of the 604. 

About three months ago, several of us on the exploder noted that the 604 boards 
would lockup, then WRS produced a patch that fixed interrupt code in the O/S, 
since this code was part of the OS, and NOT the BSP, Id think it affects all
boards.

(ps. this patch fixed all the lockups for me and some others on the 1604)

Im sure those !=Motorola will chime in and say it wasn't so with their boards, 
but since there are many more folks using Mot's cards, you will have to take
their
comments in some frame of statistical probability. :)

>You may get tons of response from your comment, but maybe you
>could send me some comments on where you hit trouble.
>

I make my comments based on experience with both the 603 and the 604 boards,
the 603
seems much more stable to me.

We have now gone to exclusive use of the MVME-2603 (200Mhz) boards, so far they
have exceeded our expectations, not a single lock up yet. And unlike the 604, 
you can run a 603 with just a whisper of cooling air, and at the end of the day 
the heat sink is just warm.

I guess if you like to live on the really ragged edge, you could get one of the 
new MVME-4600 boards, I saw info on them at the RTC show, the graphic showed
DUAL
604 CPU's.

Mike

From cgrames@mdc.com  Tue Feb 18 22:04:25 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Tue Feb 18 22:04:27 PST 1997
Subject:  Re: VME Block Mode Transfer - MVME2600 Tundra Universe
>From: Marco Oosterling <marcoo@iplmail.orl.mmc.com>
>
>I am using a Motorola MVME2600 PowerPC board, running VxWorks Tornado
>5.3 in VME master mode.  The VME chipset is the Tundra Universe VME Chip.
>
>Question: I need to initiate a VME block mode transfer from an external
>          VME board to the PowerPC.  Does VxWorks support block mode transfers,
>          and if not, what type of workaround is used to do something similar
>          to this ?

Marco,

From the best of my understanding, if your 2600 is the SLAVE of a VME transfer, only the hardware
is involved in the process, and it doesn't matter what are the capabilities of VxWorks.  Thus, the
2600 should respond to block transfers appropriately.

Now, if you want your 2600 to be the MASTER of a block transfer, that is a different matter
altogether.  In that case, there must be code to drive the DMA controller.  To the best of my
knowledge, VxWorks offers no support in this area.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From malcolm.cifuentes@nautronix.com.au  Wed Feb 19 01:04:49 1997
From: malcolm.cifuentes@nautronix.com.au (Malcolm Cifuentes)
Date: Wed Feb 19 01:04:51 PST 1997
Subject: PPC A24 MMU Remapping
Hi all,
    Version:  Tornado FCS 1.0
    Host   :  Solaris 2.5
    Proc   :  1604 PPC
    Memory :  16MB

    I have a card which needs to use A24 addressing, at the moment all
    A24 addressing is taken by the physical memory (16MB).  I would like
    to know if any one knows how to :-
        1/  move the 16 MB of consumable memory for the processor out of the 
            A24 address space.
        2/  make the A24 addressing available to me after moving the
            consumable memory(processor) out!

    I assume A24 addressing to be in the range 0 -> 0x1000000, I understand 
    that the ROM takes up the first 0x1000 bytes.

    I have looked at the 1604  hardware manual, and had a look around the
    sysLib.c, config.h files but I don't know how to do what I want to do!

any help would be appreciated, 

thanks
-- 
Malcolm Cifuentes 
(
 Nautronix LTD          
 malcolm.cifuentes@nautronix.com.au   
 PH  : +61-09-430-5900  
 FAX : +61-09-430-5901  
)

From 100656.1507@CompuServe.COM  Wed Feb 19 02:44:51 1997
From: John Shaw <100656.1507@CompuServe.COM>
Date: Wed Feb 19 02:45:09 PST 1997
Subject: Re: Year 2000 and struct tm tm_year
>Submitted-by: nmehrotra@yurie.com
 
>Sometime back there are a brief discussion on the year 2000 problem
>and VxWorks. I'm not sure what the final conclusion was and if this
>particular issue was discussed, if yes I apologize for repeating it.

>In structure tm, the comment for the field tm_year states that this
>value is the "years since 1900", as does K&R (2nd ed., pp. 255).
>So for instance this value would be 97 right now.

Nitin,

The struct tm tm_year field can be a 3 digit field. However, problems do
arise sometime after the year 2000. Here is a function I use to limit the
range of the field to within workable limits. The problems described were
found when using VxWorks 5.1.1 and 5.2, we haven't tried Tornado yet:-

whatCentury - A new routine that imposes a 2 digit year before deciding the
	      millenium. A time_t value is an unsigned 32-bit quantity that
	      holds the number of seconds since Jan 1 1970. However, a bus
	      error occurs if a struct tm year is 138 years after 1900 and
	      is then converted via mktime() into a time_t value. The range
	      allowed is thus 1938 to 1999 and 2000 to 2037. Any year prior
	      to 1970 defaults to 1970 in this routine.

	      The total number of time_t seconds may amount to 138 years but
	      the effective limit appears to be half this.

struct tm * whatCentury
	(
	struct tm * dateTime
	)
{
	if (dateTime != NULL)
		if((dateTime->tm_year %= 100) < 38)
			dateTime->tm_year += 100;

		else
		if (dateTime->tm_year < 70)
			dateTime->tm_year = 70;

	return dateTime;
}

--------------------------------------------------------------------------------
John Shaw, Shade (Computer Services) Ltd., Calne, Wiltshire, England.
100656.1507@compuserve.com

From daemon@csg.lbl.gov  Wed Feb 19 04:00:30 1997
From: daemon@csg.lbl.gov
Date: Wed Feb 19 04:00:32 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Wed Feb 19 04:00:28 PST 1997

        Subject: Kermit protocol
        Subject: Re: Autodependencies In GNU Make

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Kermit protocol
Date: Tue, 18 Feb 1997 16:30:53 -0800
From: tech.ts@galactica.it
Organization: Galactica Professional Communication
Message-ID: <330A49BD.5DF4@galactica.it>

Does anybody know about the existence of source code for the kermit 
protocol under VxWorks?

Thanks Francesco Grassini

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Autodependencies In GNU Make
Date: Fri, 14 Feb 1997 09:55:52 -0500
From: Jerry Hudgins <hudgins_jc@corning.com>
Organization: Corning Incorporated
Message-ID: <33047CF8.4DC8@corning.com>
References: <330353A2.5868@mee.hwm.com>
Reply-To: hudgins_jc@corning.com

Uwe Scheffold wrote:
> 
> we had the same problem. We found that gnu make seems not to include
> the "autodependecie" feature. This means that the problem is
> undependent from the makefile, it depends on the make executeable.
> 
> We are using sun host's so we tryed the Solaris make (with the same
> makefile), it works.

We've had good luck with using gcc & GNU make to generate dependency
files automatically on both NT and Solaris, using the supplied WRS
binaries.  I *did* have to use a different copy of sed on NT, as the
supplied one wouldn't do the job.  (I used GNU sed.)  Here's a fragment 
of our makefile to do this, which is based on information in the GNU 
docs, and which works on both platforms:

#########################################################################
#
#  Corning BPS system makefile
#
#  Requires GNU make and gcc, and any standard sed.
#
#  This version builds a non-optimized debug-ready image.
#
#########################################################################

# CPU and toolchain assignments

CPU  = MC68060
TOOL = gnu

# Standard Tornado include files

include $(WIND_BASE)/target/h/make/defs.bsp
include $(WIND_BASE)/target/h/make/make.$(CPU)$(TOOL)
include $(WIND_BASE)/target/h/make/defs.$(WIND_HOST_TYPE)

# Modified symbols

EXTRA_INCLUDE =  -ID:\Consolidation\Include
CFLAGS        += -g -Werror
CC_OPTIM      =  -fno-builtin -m68040

# Local symbols - modify paths as appropriate for your system

SED           =  D:\usr\local\bin\sed
LOAD_DIR      =  D:\Consolidation\Load
TARGET        =  bps

# Source file list

SOURCELIST    := aird.c \
                 ai_clear_failure.c \
                 (etc. - truncated for this example)

# Cleaned-up source and object lists

SOURCES       =  $(sort $(strip $(SOURCELIST)))
OBJECTS       =  $(patsubst %.c,%.o,$(SOURCES))

# Pseudo-rule for default target

.PHONY: exe
exe: $(TARGET)

# Rule to build target image

$(TARGET): $(OBJECTS)
	$(LD) -o $(TARGET) -r $^

# Static pattern rule to build dependency files from C sources

%.d: %.c
	$(CC) -MM $(CFLAGS) $< | $(SED) -e "s/$*\.o/& $@/g" > $@

# Includes source file dependency files (*.d)

- -include $(SOURCES:.c=.d)

- -- 
Jerry Hudgins   |   Corning Incorporated   |   hudgins_jc@corning.com

---------------------------

End of New-News digest
**********************

From tim@diasonics.com  Wed Feb 19 16:37:18 1997
From: tim@diasonics.com (Tim Crowe)
Date: Wed Feb 19 16:37:20 PST 1997
Subject: send index on vxworks
send index on vxworks

From tim@diasonics.com  Wed Feb 19 16:47:03 1997
From: tim@diasonics.com (Tim Crowe)
Date: Wed Feb 19 16:47:05 PST 1997
Subject: send index from vxworks
send index
send index from unix
send index from vxworks

From mam@mark.llnl.gov  Wed Feb 19 20:22:56 1997
From: mam@mark.llnl.gov (Mark McCall)
Date: Wed Feb 19 20:22:58 PST 1997
Subject: network boot of MVME1604 using Motorolla PPCBug ROMS ?
If possible, we would like to load vxWorks over the network and auto boot a 
MVME1604 using the Motorolla PPCBug ROMS which Motorolla supplied with the 
board. 

It looks like the vxWorks boot roms load the vxWorks image at location 0xF0000 
and jumps to location 0x100000 to bootstrap. 

With the standard PPCBug ROMS, I have been able to configure the 1604 using NIOT 
to do this, but the system hangs on boot.

Has anyone done this successfully ?

Thanks

From daemon@csg.lbl.gov  Thu Feb 20 04:00:20 1997
From: daemon@csg.lbl.gov
Date: Thu Feb 20 04:00:22 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Thu Feb 20 04:00:17 PST 1997

        Subject: How to use flash memory on MV2600?
        Subject: Re: Tornado questions

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: How to use flash memory on MV2600?
Date: 19 Feb 1997 14:01:48 -0800
From: billr@saab.cna.tek.com (Bill Randle)
Organization: Tektronix, Inc., Redmond, OR
Message-ID: <5eft8c$ikv@saab.cna.tek.com>

I want to put a standalone application, linked with VxWorks into flash. The
2600 and VxWorks documentation is confusing at best.

I know how to load bootrom_uncmp and copy it into flash at 0xff000100. I can
even put a copy of vxWorks_rom into that flash and have it load by
moving the jumper. However, when I try and put vxWorks linked with my app
into flash it won't boot. I suspect it's because it's larger than 512 Kbytes.

If I summarize what I know and what I theorize, perhaps someone can confirm/
deny/clarify the situation.

1. There is socketed flash from 0xfff00000 - 0xffffffff -- a range of 1MB.
2. It appears this may actually be mapped into two banks: 0xfff00000 -
   0xfff7ffff and 0xfff80000 - 0xffffffff (from reading the 2600 Hardware
   Manual).
3. There is a large block of flash memory (4-16M) on the RAM-200 piggyback
   board. This is "normally" mapped starting at 0xff000000. Using the
   OpenBoot firmware one can copy code from ram to this flash memory.
4. The VxWorks 2603 BSP Makefile has ROM_BASE defined as 0xfff00000 and
   ROM_SIZE as 0x00080000 (512K). [It's also in config.h.] This would
   imply a limit of 512K on flash images.
5. I did set ROM_SIZE to 0x00100000 (1M) in both places when building my
   embedded image.
6. It *appears* that moving the jumper (s10?) maps the lower 512K or 1M
   (don't know which) into the ppc address space starting at 0xfff00000 -
   effectively shadowing or masking the OpenBoot firmware. Since this is
   at most a 1M address range, you can't load anything larger than 1M
   and expect it to boot. (?)
7. VxWorks (in sysLib.c) sets up the MMU to map flash memory at 0xff000000.

So how does one make use of the full flash memory at 0xff000000?

Theory: Using the OpenBoot firmware, load a custom version of bootrom_uncmp
into flash at 0xff000000, as normal. Build the VxWorks_rom as usual,
download using OpenBoot and program into flash somewhere above the bootrom
code (e.g. at 0xff100000). Switch the jumper, powerup and let the bootrom
code load. This customized version of the bootrom will reprogram the MMU
allowing access to flash at 0xff000000. The bootrom will load VxWorks (with
linked in app) from 0xff100000 into RAM at 0x00100000 then jump to it.

Question 1: will this work?
Question 2: does the 2600 hardware somehow map *just* the lower 1M of flash
at 0xfff00000 and leave the rest at 0xff000000, or is something else
going on?
Question 3: is there really at 512K limit at 0xfff00000 as the BSP Makefile
would have you believe (and my limited testing would appear to confirm), or
is there a way and I can use all 1M? If I can get 1M to load and run, that
would be sufficient (initially).
Question 4: do I have to boot VxWorks as normal, download my combined os and
app to the target and program the flash at 0xff000000 *from VxWorks* (for
which no support is provided).
Question 5: why can't this stuff be better documented (or it documented
and I just can't find the proper manual to read)?

	-Bill Randle
	Tektronix, Inc.
	billr@cna.tek.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Tornado questions
Date: Fri, 14 Feb 1997 09:40:55 +0100
From: Vincent HUE <vincent.hue@met.fr>
Organization: MET
Message-ID: <33042517.200B@met.fr>
References: <1.5.4.32.19970213221312.00849f48@pop01.connect.com>

Mike McQuade wrote:

> 
> 3. Then add your application to the MACH_EXTRA entry in the vxWorks makefile.
> 
> Now rebuild vxWorks, then put the VxWorks image (which now includes your app)
> into /usr/tftpdir/vxWorks
[...]
> Power up your target, it should do a bootp, grab your file, and start
> running your
> application, you will have to specify the "core file" in the Tornado launcher,
> ie: Launcher, Target menu, create, Core File = /usr/tftpdir/vxWorks
> before you can run the Tornado tools.

This seems to be a good solution : Applications symboles 
are seen by tgtsvr, you can use Tornado Tools (shell, crossW, browser).

The only problem is that you cannot update your application 
modules. (unless you recompile the image and reboot the target). 

In our case, is is required to update some parts of the application
(e.g. for a patch or a new functionality) online. 

It this case, your solution doesn't work.

/vincent
 
- --------------------------------------------------
Vincent HUE              SDH/ATM Software Engineer
MET Commutation, 19 av Carnot 91348 MASSY / France
Tel.: +33-1 64 47 51 30  - Fax : +33-1 64 47 57 45 
Email : vincent.hue@met.fr  -  Memoid : met.metvhe

---------------------------

End of New-News digest
**********************

From jlm01@mhs.sperry-marine.com  Thu Feb 20 05:18:29 1997
From: John Mouring <jlm01@mhs.sperry-marine.com>
Date: Thu Feb 20 05:18:31 PST 1997
Subject: Network Time Protocol

Is anyone aware of an implementation of Network Time Protocol (NTP) that   
has been ported to VxWorks.

I am aware of the version of NTP that has been ported to VxWorks that can   
be found on the  VxWorks User's Archive at:

"ftp.atd.ucar.edu"  in  "/pub/vxworks/vx".

However, this implementation is huge.  We are looking for something that   
has been cut down to size and is ROMable.

We are looking for something similar to the NTP product sold by   
Integrated Systems for pSOS which is only about 35 kbytes in size.  

From cgrames@mdc.com  Thu Feb 20 07:20:34 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Thu Feb 20 07:20:36 PST 1997
Subject:  network boot of MVME1604 using Motorolla PPCBug ROMS ? 
>Submitted-by mam@mark.llnl.gov  Wed Feb 19 20:22:56 1997
>If possible, we would like to load vxWorks over the network and auto boot a  MVME1604 using the
>Motorolla PPCBug ROMS which Motorolla supplied with the  board. 
<snip>
>Has anyone done this successfully ?

Mark,

Yes, we have done this.  Here is an excerpt from a porting document that I put together.  We are
using a Solaris host, so you may need to adjust details for your environment.

Using the Motorola PPCBug ROMs in MVME1604 Boards

If you do not wish to create VxWorks ROMs, it is possible to boot VxWorks using the 
Motorola PPCBug ROMs. Using the PPCBug ROMs requires booting from another 
device, so it is probably best to do this only in a pinch and not as standard procedure.

Probably the simplest way to boot is via network from the remote host.  This process is 
divided into three phases.

Phase I - Create the VxWorks Boot Image

Since the PPCBug occupies the flash memory, the VxWorks boot image must be 
loaded into RAM.  Therefore, it is necessary to reserve the top megabyte of RAM for 
the image and inform VxWorks what the image address is.  (Actually, only 512 KB is 
required for the VxWorks image.   The top 512 KB of RAM is reserved for execution of 
the PPCBug.)  These are the required changes:

 	Make sure LOCAL_MEM_SIZE in target/config/mv1604/config.h is at least 1 MB 
(0x100000) less than the amount of physical memory on the target.

 	Change #undef INCLUDE_MOT_BUG_ROM in config.h to #define.

 	Do make bootrom_uncmp to create the VxWorks boot executable.

 	Enter the following command to create the boot image:

	elfToBin  <bootrom_uncmp  >boot.bin

Phase II - Prepare the Host for TFTP Booting

The Solaris host does not support TFTP booting by default.  To enable this, remove the 
comment character from the beginning of the following line in /etc/inetd.conf:

	tftp     dgram     udp     wait     root     /usr/sbin/in.tftpf     in.tftpd     -s     /tftpboot

and reboot the machine.  Then, copy the boot.bin file created in Phase I to the 
/tftpboot directory, and make sure that the file has "other" read permission.

Phase III - Configuring the Target and Booting

Perform the following steps to configure the target for a network boot:

 	Enter env;d from the Bug prompt to restore the default environment.  When 
prompted, update the non-volatile RAM, but do not reset the local system.

 	Enter env to modify the following defaults:

		Bug or System environment [B/S] = S? B
		Field Service Menu Enable [Y/N] = Y? N
		Network PReP-Boot Mode Enable [Y/N] = Y? N
		Auto Boot Enable [Y/N] = Y? N

	Depending on the PPCBug version, the network PReP-boot mode enable prompt 
may or may not be displayed.  When prompted, update the non-volatile RAM, and 
reset the local system.

 	Enter niot to establish the network boot parameters.  Accept the default values for 
all prompts except the following:

	Client IP Address - the IP address assigned to the target board
	Server IP Address - the IP address assigned to the host
	Subnet IP Address Mask - the appropriate IP address mask for the network
	Broadcast IP Address - the appropriate broadcast IP address
	Boot File Name - boot.bin
	Boot File Load Address - the same value used for LOCAL_MEM_SIZE in Phase I.
	Boot File Execution Address - the same value used for LOCAL_MEM_SIZE.

	When prompted, update the non-volatile RAM.

 	Enter nbo to initiate the network boot.

By default, the board will perform an automatic network boot each time it is reset.  If this 
behavior is not desired, it can be modified by changing the environment defaults.

Note:  The above procedure allows loading of the VxWorks boot image.  If you would 
prefer to load a VxWorks executable image (e.g., vxWorks.st) directly, modify the 
above procedure as follows:

 	Leave LOCAL_MEM_SIZE in target/config/mv1604/config.h unmodified.

 	Do make vxWorks.st to create the VxWorks executable.

 	Enter the following command to create the executable image:

	elfToBin  <vxWorks.st  >mv1604.bin

 	Copy mv1604.bin to the /tftpboot directory, and make sure it has "other" read 
permission.

 	Using niot, set the boot file name to mv1604.bin and the boot file load and 
execution addresses to 100000.

Another note:  When VxWorks is rebooted using reboot or <ctrl-X>, with PPCBug 
ROMs installed, control is returned to the PPCBug, not to the VxWorks boot menu.

Hope this helps.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From pvmetro@mailbox.neosoft.com  Thu Feb 20 07:40:04 1997
From: bvu@vmetro.com ( Bang Q. Vu )
Date: Thu Feb 20 07:40:07 PST 1997
Subject: Where to get MK48T08
Anybody knows where to get the MK48T08 Battery Backed RAM + Real Time 
Clock? BTW, which company makes this thing? i can't find it in my 
notes. Thanks.

Best regards,
+----
| Bang Vu            | VMETRO, Inc.
| bvu@vmetro.com     | 1880 Dairy Ashford, Ste 535
| Ph:  281-584-0728  | Houston, TX 77077
| Fax: 281-584-9034  | http://www.vmetro.com

From dmidkiff@trandes.com  Thu Feb 20 11:22:51 1997
From: "DENNIS MIDKIFF" <dmidkiff@trandes.com>
Date: Thu Feb 20 11:22:53 PST 1997
Subject: Unsubscribe
     Please delete me from the users group mailing list.
     
     Thanks
     
     Dennis

From uchenick@tis4000.com  Thu Feb 20 12:27:16 1997
From: Gordon Uchenick <uchenick@tis4000.com>
Date: Thu Feb 20 12:27:23 PST 1997
Subject: RE: Where to get MK48T08
The MK48T08 is made by SGS-Thomson Microelectronics. I called their local
distributor and he sent me a complete spec sheet that was good enough to
program the RTC to make it do what I needed for a recent MVME162 project.

From Chris_Nickles@ATK.COM  Thu Feb 20 12:43:06 1997
From: Chris_Nickles@ATK.COM (Chris Nickles)
Date: Thu Feb 20 12:43:08 PST 1997
Subject: Re: Where to get MK48T08
SGS Thompson Microelectronics, (602) 867-6100.  The also have
a Houston number: (713) 376-9939.

From chuckvb@juno.com  Thu Feb 20 14:59:01 1997
From: chuckvb@juno.com (Chuck J Van Blaricom)
Date: Thu Feb 20 14:59:03 PST 1997
Subject: TCP/IP Throughput Impacts?
We are currently trying to evaluate our processing load and are
interested in any throughput related timing of the VxWorks TCP/IP
protocol Stacks.  If anyone knows where some benchmarks are available or
has some numbers they are willing to share, I would certainly appreciate
them.

We are using the Motorola MPC860 processor.  If anybody has numbers for
other processors, we could use them for evaluation purposes.

Thanks in advance.

Chuck Van Blaricom
Communication Network System
2525 Walsh Ave, Santa Clara, CA 95051
(408) 235-7039    FAX: (408) 235-7085
EMail: chuckvb@juno.com

From cgrames@mdc.com  Thu Feb 20 15:31:50 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Thu Feb 20 15:31:52 PST 1997
Subject:  Redirecting Output to a Different Board
Thanks to all who responded to my query a couple of weeks back about how to redirect standard
output, standard error, etc., from one VxWorks board to a terminal on another.  I was able to
compile all the suggestions and come up with a solution that is appropriate for my environment.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From daemon@csg.lbl.gov  Fri Feb 21 04:00:20 1997
From: daemon@csg.lbl.gov
Date: Fri Feb 21 04:00:21 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Fri Feb 21 04:00:17 PST 1997

        Subject: Re: Force 5V, Tornado, Seagate ST31230N Problem...
        Subject: Re: Choosing a PCI CPU
        Subject: SNMP Question

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Force 5V, Tornado, Seagate ST31230N Problem...
Date: Tue, 18 Feb 1997 16:33:44 GMT
From: tfm@sei.cmu.edu
Organization: Software Engineering Institute
Message-ID: <5eclmu$58k@news.sei.cmu.edu>
References: <3309C560.36F4@lmco.com>

Tony Kennedy <tony.kennedy@lmco.com> wrote:

>I am working on an upgrade to an existing system, changing both my HW
>and OS at the same time. I had a Force 5CE under VxWorks 5.2 and am
>moving to a 5V with Tornado. My problem is that I cannot get VxWorks to
>recognize my Seagate HD. If I run scsiShow under 5.2, it reports the
>correct 2,069,860 blocks x 512 BlkSize. However, when I switched to the
>5V, with it's BSP, and Tornado, scsiShow reports that I have ONLY 1
>Block, which is of size 5,000,000!! I have contacted Force and been
>working with them for 2+ weeks, but we aren't getting anywhere...any
>ideas!?!?

>Tony Kennedy

If this is the HawkII series of segate drives, I also have had
problems with them in different environments.  Some
systems/controllers perform a more detailed drive inquery and they may
not always get back the response they expect, depending on the
firmware on the *drive*.  You may want to check in with Segate, as
well as Force.

The problem I ran into was with a Motorola -187 card and a HawkII disk
using Motorola Unix system V release 3 and 4.  Seems the installation
procedure was such that it would not correctly recognize the drive
characteristics, and so I could not install from the system
distribution.  A long investigation (by Motorola) and a SCSI analyser
showed that it was a flawed response from the drive.  Segate has
several different firmware releases for it's drives.

Don't know, this could be your problem

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Choosing a PCI CPU
Date: Thu, 20 Feb 1997 14:44:08 +0000
From: Andy Champ <achamp@axe.rcuk.cca.rockwell.com>
Organization: Rockwell Avionics - Collins
Message-ID: <330C6338.2753@axe.rcuk.cca.rockwell.com>
References: <9702120336.AA02857@daffy.isys> <3304EA17.FF6@helix.enet.dec.com>

Michael Miano wrote:
> Don't forget Alpha. Other RISC architectures are dead or dying. Alpha
> has won the RISC war.
That's a heck of a claim.  Alpha may have its good points, but what it
is not is low-power!

Andy Champ

---------------------------

Newsgroups: comp.os.vxworks
Subject: SNMP Question
Date: 15 Feb 1997 02:40:49 GMT
From: "Pavan Kumar" <pavan@adicomw.com>
Organization: Whole Earth Networks News
Message-ID: <01bc1aea$56f1fc20$ec60a9ce@get.hooked.net>

Hello Everyone:
I would appreciate if someone can share an example to code a MIB table
using the code generated by the WindNet SNMP MIB compiler. I am using
WindNet SNMPv1/v2c Beta version 1.0.

Thanks
Pavan

---------------------------

End of New-News digest
**********************

From Glenn.L.Williams@lerc.nasa.gov  Fri Feb 21 07:09:52 1997
From: Glenn L Williams <Glenn.L.Williams@lerc.nasa.gov>
Date: Fri Feb 21 07:09:54 PST 1997
Subject: RE: Where to get MK48T08
At 12:27 PM 2/20/97 PST, you (the vxWorks Users Group Exploder) wrote:
>Submitted-by uchenick@tis4000.com  Thu Feb 20 12:27:16 1997
>Submitted-by: Gordon Uchenick <uchenick@tis4000.com>
> 
>The MK48T08 is made by SGS-Thomson Microelectronics. I called their local
>distributor and he sent me a complete spec sheet that was good enough to
>program the RTC to make it do what I needed for a recent MVME162 project.
>
>

You can find the real data sheet at

http://www.st.com/stonline/books/ascii/docs/2411.htm
Glenn L. Williams/7715
M.S. 86-5  NASA Lewis
Voice: (216) 433-2389
FAX:   (216) 433-6382
Glenn.Williams@lerc.nasa.gov

From gilibert@scn.de  Fri Feb 21 08:40:20 1997
From: Giuseppe Giliberto <gilibert@sbs.de>
Date: Fri Feb 21 08:40:22 PST 1997
Subject: vxworks drivers
--=====================_856575590==_
Content-Type: text/plain; charset="us-ascii"

--=====================_856575590==_
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: attachment; filename="PING.TXT"

Hi fellows,

I am currently developing a network serial driver under VxWorks.

I've written it and attached to VxWorks, I'm trying to test it by
connecting two of my boards through the serial line but I'm having trouble. 
When I ping from one target to the other I get the message
"no answer from ..."

Apparently the driver's routines get called as I added debug information
there, but the actual destination address is a broadcast address,
not the target's. Can it be the sender is trying getting to know the
recipient's hardware address? If so, I'd like to add an entry to the arp 
table but I didn't manage to run the command arpAdd. Why? What did I 
forget to include in the operating system configuration?

If I am wrong, can anyone there give me a suggestion? I'd be much appreciated...

Claudio Nardi

--=====================_856575590==_--

From daemon@csg.lbl.gov  Sat Feb 22 04:00:21 1997
From: daemon@csg.lbl.gov
Date: Sat Feb 22 04:00:24 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Sat Feb 22 04:00:18 PST 1997

        Subject: Re: usrTime

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: usrTime
Date: 21 Feb 1997 13:09:06 -0800
From: billr@master.cna.tek.com (Bill Randle)
Organization: Tektronix, Inc., Redmond, OR
Message-ID: <5el2ti$247@saab.cna.tek.com>
References: <330DD088.351A@cebaf.gov>
Reply-To: billr@saab.CNA.TEK.COM

In article <330DD088.351A@cebaf.gov>, Carl Timmer <timmer@cebaf.gov> writes:
|> The usrTime extension to vxWorks that exists at:
|> 
|> ftp://ftp.atd.ucar.edu/pub/vxworks
|> 
|> is currently usable only for 68k architecture. Has anyone
|> ported this to the PPC platform and would also be willing
|> to share their hard-earned secrets?

The only part that's really mv162 specific is the rtc.c file that talks
to the MK48T08 chip. Attached below is an rtc.c that works for the
Motorola MVME1603. I modified it slightly to stand on its own with the
rest of the usrTime package. It uses clock_settime() when clockInit()
is called so that future time requests can just call clock_gettime() -
a standard library function in VxWorks 5.2 and later.

	-Bill
- ------------------

#!/bin/sh
# This is a shell archive (shar 3.24)
# made 02/21/1997 21:07 UTC by billr@saab
# Source directory /export/proj/billr/sgl/src/demos/big
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   9176 -r--r--r-- rtc.c
#
if touch 2>&1 | fgrep '[-amc]' > /dev/null
 then TOUCH=touch
 else TOUCH=true
fi
# ============= rtc.c ==============
echo "x - extracting rtc.c (Text)"
sed 's/^X//' << 'SHAR_EOF' > rtc.c &&
X/* $Id: rtc.c,v 1.2 1996/05/20 01:38:45 billr Exp $ */
X/************************************************************************/
X/* Copyright 1990 - 1993 MBARI						*/
X/************************************************************************/
X/*                                                                      */
X/* Summary  : Functions to read time from MK48T08 chip on MVME-162 CPU	*/
X/*		under vxWorks						*/
X/* Filename : rtc.c							*/
X/* Author   : Bob Herlien (rah)						*/
X/* Project  : Tiburon ROV						*/
X/* Revision: 1.2  							*/
X/* Created  : 02/28/91							*/
X/************************************************************************/
X/* Modification History:						*/
X/* Log:	rtc.c,v 
X *
X * 95/09/09  10:02:53 billr
X * Changes for MVME-1600. Cleanup to make this file standalone for
X * VxWorks 5.2. I.e., remove dependencies on usrTime.[ch]
X *
X * Revision 1.2  91/09/23  09:38:59  09:38:59  hebo (Bob Herlien 408-647-3748)
X * Minor bug fixes, added -DMICROTIME
X * 
X * Revision 1.1  91/09/06  16:05:35  16:05:35  hebo (Bob Herlien 408-647-3748)
X * Initial revision
X * 
X * Revision 1.0  91/08/09  11:10:33  11:10:33  hebo (Bob Herlien 408-647-3748)
X * Initial revision
X * 	*/
X/* 28feb91 rah, created							*/
X/************************************************************************/
X/* The Unix Epoch (day 0) is Jan 1, 1970.  The real-time clock chip	*/
X/* only gives 2 decimal digits of year.  Also, a Unix time_t value	*/
X/* (signed long) can only go +/- 68 years from 1970.  Therefore, these	*/
X/* routines assume that the year is between 1970 and 2070.  Note that	*/
X/* the leap-year exception for centuries not divisible by 400 is not a	*/
X/* factor in this period.						*/
X/************************************************************************/
X
X#include <vxWorks.h>			/* VxWorks includes		    */
X#include <time.h>			/* VxWorks time definitions	    */
X#include <taskLib.h>			/* VxWorks task definitions	    */
X#include <sysLib.h>			/* VxWorks driver definitions	    */
X
X#include "config.h"			/* Hardware defns for MVME-1600	    */
X
X#define SECS_PER_DAY	86400L		/* Seconds per day		    */
X#define USECS_PER_SEC	1000000L	/* Microseconds per second	    */
X
X#define YEAR0		70		/* Unix Epoch year (1970)	    */
X#define DAY0		4		/* 1jan1970 was a Thursday	    */
X
X
X/* Defines for MK48T08 Real-Time Clock Chip on MVME-1600 */
X
X#define RTC(x)		((unsigned char *)(TOD_CLOCK + x))
X
X#define RTC_CTRL 	RTC(0)		/* Control byte of RTC chip	    */
X#define RTC_SECS 	RTC(1)		/* Seconds on RTC chip	    */
X#define RTC_MINS	RTC(2)		/* Minutes on RTC chip	    */
X#define RTC_HR		RTC(3)		/* Hours on RTC chip		    */
X#define RTC_DAY		RTC(4)		/* Day of week (1 - 7) on RTC chip */
X#define RTC_DATE	RTC(5)		/* Date (1 - 31) on RTC chip	    */
X#define RTC_MONTH	RTC(6)		/* Month on RTC chip		    */
X#define RTC_YR		RTC(7)		/* Year (00 - 99) on RTC chip    */
X
X#define STOP_BIT	0x80		/* "Stop Clock" bit in seconds field*/
X#define WRITE_BIT	0x80		/* "Write" bit in control byte	    */
X#define READ_BIT	0x40		/* "Read" bit in control byte	    */
X
X
Xstatic unsigned short	jdays[12] = {	/* Days since Jan. 1 in non-leap yr */
X   0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334
X};
X
X/********************************/
X/*	Forward Functions	*/
X/********************************/
X
Xint julday( int yr, int mo, int day );
Xint ep_days( int year, int yday );
X
X
X/************************************************************************/
X/* Function    : bcd_to_hex						*/
X/* Purpose     : BCD to hex conversion					*/
X/* Input       : BCD byte						*/
X/* Outputs     : Hex byte						*/
X/************************************************************************/
Xint bcd_to_hex( int byte )
X{
X    return( (10 * (byte>>4)) + (byte & 0xf) );
X
X} /* bcd_to_hex() */
X
X
X/************************************************************************/
X/* Function    : hex_to_bcd						*/
X/* Purpose     : Hex to BCD conversion					*/
X/* Input       : Hex byte						*/
X/* Outputs     : BCD byte						*/
X/************************************************************************/
Xint hex_to_bcd( int byte ) 
X{
X    return( ((byte / 10) << 4) + (byte % 10) );
X
X} /* hex_to_bcd() */
X
X
X/************************************************************************/
X/* function    : rtc_on							*/
X/* purpose     : Make sure rtc chip is running				*/
X/* inputs      : None							*/
X/* outputs     : None							*/
X/************************************************************************/
Xvoid rtc_on( void )
X{
X    if ( *RTC_SECS & STOP_BIT )		/* Clock stopped?		*/
X	*RTC_SECS &= 0x7f;		/* Start it			*/
X
X} /* rtc_on() */
X
X
Xvoid set_rtc_reg(unsigned char *addr, unsigned char byte)
X{
X    *((unsigned char *)NV_RAM_LSB_REG) = (unsigned char)(((int)addr) & 0xff);
X    *((unsigned char *)NV_RAM_MSB_REG) = (unsigned char)((((int)addr) >> 8) & 0xff);
X    *((unsigned char *)NV_RAM_DAT_REG) = byte;
X}
X
Xunsigned char get_rtc_reg(unsigned char *addr)
X{
X    *((unsigned char *)NV_RAM_LSB_REG) = (unsigned char)(((int)addr) & 0xff);
X    *((unsigned char *)NV_RAM_MSB_REG) = (unsigned char)((((int)addr) >> 8) & 0xff);
X    return ((unsigned char)*((unsigned char *)NV_RAM_DAT_REG));
X}
X
X/************************************************************************/
X/* Function    : rtc_read						*/
X/* Purpose     : Read the RTC chip, put the results in struct tm *tp	*/
X/* Inputs      : Pointer to struct tm to put current time into		*/
X/* Outputs     : Time in time_t format					*/
X/************************************************************************/
Xtime_t rtc_read( struct tm *tp )
X{
X    time_t	rtn;
X    struct tm	temp_tm;
X    unsigned char dummy;
X
X    rtc_on();				/* Make sure RTC is running	*/
X
X    if ( tp == (struct tm *)NULL )	/* If no tm, use temp one	*/
X	tp = &temp_tm;
X
X    dummy = get_rtc_reg(RTC_CTRL);
X    set_rtc_reg(RTC_CTRL, dummy|READ_BIT); /* Stop updating clock	*/
X    tp->tm_sec = bcd_to_hex(get_rtc_reg(RTC_SECS) & 0x7f);
X    tp->tm_min = bcd_to_hex(get_rtc_reg(RTC_MINS) & 0x7f);
X    tp->tm_hour = bcd_to_hex(get_rtc_reg(RTC_HR) & 0x3f);
X    tp->tm_mday = bcd_to_hex(get_rtc_reg(RTC_DATE) & 0x3f);
X    tp->tm_mon = bcd_to_hex(get_rtc_reg(RTC_MONTH) & 0x1f) - 1;
X    tp->tm_year = bcd_to_hex(get_rtc_reg(RTC_YR));
X    if ( tp->tm_year < YEAR0 )		/* RTC_YR 00 is actual year 2000*/
X	tp->tm_year += 100;
X    tp->tm_wday = (get_rtc_reg(RTC_DAY) & 7) - 1;
X    set_rtc_reg(RTC_CTRL, 0); /* Restart clock updating	*/
X    tp->tm_yday = julday( (tp->tm_year % 100), tp->tm_mon, tp->tm_mday ) - 1;
X    tp->tm_isdst = 0;
X
X    rtn = ep_days(tp->tm_year - YEAR0, tp->tm_yday) * SECS_PER_DAY;
X    rtn += (tp->tm_hour * 3600L) + (tp->tm_min * 60) + tp->tm_sec;
X    return( rtn );
X
X} /* rtc_read() */
X
X
X/************************************************************************/
X/* Function    : rtc_write						*/
X/* Purpose     : Write the RTC chip from the values of struct tm *tp	*/
X/* Inputs      : Pointer to struct tm that contains current time	*/
X/* Outputs     : None							*/
X/************************************************************************/
Xvoid rtc_write( const struct tm *tp )
X{
X    rtc_on();				/* Make sure RTC is running	*/
X    *RTC_CTRL |= WRITE_BIT;		/* Stop the clock		*/
X
X    *RTC_SECS = (char)(hex_to_bcd(tp->tm_sec) & 0x7f);
X    *RTC_MINS = (char)(hex_to_bcd(tp->tm_min) & 0x7f);
X    *RTC_HR   = (char)(hex_to_bcd(tp->tm_hour) & 0x3f);
X    *RTC_DAY  = (char)((tp->tm_wday + 1) & 7);
X    *RTC_DATE = (char)(hex_to_bcd(tp->tm_mday) & 0x3f);
X    *RTC_MONTH = (char)(hex_to_bcd(tp->tm_mon + 1) & 0x1f);
X    *RTC_YR   = (char)hex_to_bcd(tp->tm_year % 100);
X
X    *RTC_CTRL &= 0x03; /* Restart clock 		*/
X
X} /* rtc_write() */
X
Xvoid clock_init(void)
X{
X    struct tm tp;
X    struct timespec rtctime;
X    unsigned char dummy;
X
X    rtctime.tv_sec = rtc_read(&tp);
X    rtctime.tv_nsec = 0;
X
X    clock_settime(CLOCK_REALTIME, &rtctime);
X    clock_gettime(CLOCK_REALTIME, &rtctime);
X}
X
X/************************************************************************/
X/* Function    : julday							*/
X/* Purpose     : Calculate Julian Day given year, month, day		*/
X/* Inputs      : year (00 - 99), month (0 - 11), day (1 - 31)		*/
X/* Outputs     : Julian day						*/
X/* Comment     : Returns Julian day in range 1:366.  Unix wants 0:365	*/
X/************************************************************************/
Xint julday( int yr, int mo, int day )
X{
X    int		leap;
X
X    leap = (((yr % 4) == 0) && (yr != 0) && (mo > 1)) ? 1 : 0;
X    return( jdays[mo] + day + leap );
X
X} /* julday() */
X
X
X/************************************************************************/
X/* Function    : ep_days						*/
X/* Purpose     : Calculate number days since Unix epoch			*/
X/* Inputs      : years since 1970, Unix-type julian day (0:365)		*/
X/* Outputs     : Days since 1/1/1970					*/
X/* Comment     : The (year + 1)/4 term accounts for leap years, the	*/
X/*		 first of which was 1972 & should be added starting '73	*/
X/*               Year 2000 is not a leap year.                          */
X/************************************************************************/
Xint ep_days( int year, int yday )
X{
X    return( (365 * year) + ((year + 1)/4) + yday - ((year+1970) > 2000 ? 1 : 0));
X
X} /* ep_days() */
X
SHAR_EOF
$TOUCH -am 0519183996 rtc.c &&
chmod 0444 rtc.c ||
echo "restore of rtc.c failed"
set `wc -c rtc.c`;Wc_c=$1
if test "$Wc_c" != "9176"; then
	echo original size 9176, current size $Wc_c
fi
exit 0
- -- 
	-Bill Randle
	Tektronix, Inc.
	billr@saab.CNA.TEK.COM

---------------------------

End of New-News digest
**********************

From AS_Bridge@MSMAIL3.HAC.COM  Sat Feb 22 07:02:13 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sat Feb 22 07:02:15 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: comp.os.vxworks newsdigest
Sent: Sat, Feb 22, 1997 5:57 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sat, Feb 22, 1997 7:01 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sat Feb 22 10:03:10 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sat Feb 22 10:03:12 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sat, Feb 22, 1997 8:43 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sat, Feb 22, 1997 10:01 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sat Feb 22 13:02:20 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sat Feb 22 13:02:22 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sat, Feb 22, 1997 11:43 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sat, Feb 22, 1997 1:01 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sat Feb 22 16:02:22 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sat Feb 22 16:02:25 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sat, Feb 22, 1997 2:56 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sat, Feb 22, 1997 4:01 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sat Feb 22 19:02:31 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sat Feb 22 19:02:33 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sat, Feb 22, 1997 5:50 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sat, Feb 22, 1997 7:01 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sat Feb 22 22:02:35 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sat Feb 22 22:02:37 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sat, Feb 22, 1997 8:40 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sat, Feb 22, 1997 10:01 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 01:33:42 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 01:33:44 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 12:02 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 1:32 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 04:20:45 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 04:20:47 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 3:18 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 4:19 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 07:01:30 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 07:01:32 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 5:51 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 7:00 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 10:01:45 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 10:01:47 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 8:33 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 10:01 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 13:01:57 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 13:01:59 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 11:32 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 1:01 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 15:32:00 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 15:32:02 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 2:24 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 3:30 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 18:02:13 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 18:02:20 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 4:55 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 6:00 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 20:32:10 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 20:32:12 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 7:26 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 8:31 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Sun Feb 23 23:01:51 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Sun Feb 23 23:01:53 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Sun, Feb 23, 1997 9:56 PM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Sun, Feb 23, 1997 11:01 PM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Mon Feb 24 01:32:59 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Mon Feb 24 01:33:01 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Mon, Feb 24, 1997 12:28 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Mon, Feb 24, 1997 1:31 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Mon Feb 24 04:17:15 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Mon Feb 24 04:17:17 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Mon, Feb 24, 1997 3:04 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Mon, Feb 24, 1997 4:16 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From AS_Bridge@MSMAIL3.HAC.COM  Mon Feb 24 07:10:42 1997
From: "AS Bridge" <AS_Bridge@MSMAIL3.HAC.COM>
Date: Mon Feb 24 07:10:43 PST 1997
Subject: Undeliverable Mail
Unknown Microsoft mail form. Approximate representation follows.

Message: Undeliverable Mail
Sent: Mon, Feb 24, 1997 5:50 AM
To: Haberman, Robert C
On Server: 631 Segment3
Date: Mon, Feb 24, 1997 7:09 AM
Reason: Could not be delivered because the destination Microsoft Mail server
could not be found.

From john.gordon@rrds.co.uk  Mon Feb 24 11:21:54 1997
From: John Gordon <john.gordon@rrds.co.uk>
Date: Mon Feb 24 11:21:56 PST 1997
Subject: National Semi PC87308 Super I/O
Hi,

Does anyone out there have a VxWorks 5.3 device driver for the
parallel port inside a National Semi PC87308 ISASIO device as
fitted to the Motorola MVME2604 series PowerPC boards? If not
does anybody have any useful pointers for writing parallel port
device drivers ;-}

Thanks,

John...

-- 
John Gordon                   |  Racal Radar Defence Systems Limited
Development Engineer          |  Manor Royal, Crawley, West Sussex.
Tel: +44 (0) 1293 644568      |  RH10 2PZ.
Fax: +44 (0) 1293 644164      |  United Kingdom

From TOM2910@aol.com  Mon Feb 24 11:50:38 1997
From: TOM2910@aol.com
Date: Mon Feb 24 11:50:40 PST 1997
Subject: Does the PPP of the vxWorks support mutilink ?
Hi,

Does anyone know that the PPP of the vxWorks support multilink ?
i.e. combining two ISDN's channels, each with 64kb, into 128kb channel.

Thanks.

-Tom Wang
=====================================================
3 Tech Inc.                          Email: s.wang@.ieee.org
Phone: 610-279-5678

From anthonyl@atlantis.softeng.lamrc.com  Mon Feb 24 12:11:52 1997
From: anthonyl@atlantis.softeng.lamrc.com (Anthony Le)
Date: Mon Feb 24 12:11:54 PST 1997
Subject: Re:  Undeliverable Mail
Please fix this.

From Yael.Lapid@ecitele.com  Mon Feb 24 22:50:07 1997
From: Yael.Lapid@ecitele.com
Date: Mon Feb 24 22:50:10 PST 1997
Subject: Problem with Tcl under Windows 
Hi,

We wrote a Tcl application that talks with target via virtual I/O.
This script can be used either from CrossWind or WindShell.
It was developed under UNIX (Sun OS) and tested with several targets (VxSim, 
I80486, etc.). Now, when I'm trying to transfer it to Windows 95 platform, it 
doesn't work.

The problem that tcl command 'time' seems to be not supported on PC.

For example, 

time {puts Hello}

returns:

on UNIX:

20456 microseconds

on PC:
0 microseconds.

In both cases I use the same target I80486.

Actually, it doesn't matter what command I'm using with time,
the result under Windows is always 0.

I can't rewrite the whole script so can you advice me what to do?

My license for Windows: 9583, for SunOS 9585.

Thank you in advance,

Yael.

--
	-------------------------------------------------------
	Yael Lapid 
	DCME, Video Networking Group
	ECI Telecom Ltd.		Phone: +972-3-9266357
	30 Hasivim St.			Fax:   +972-3-9266870 
	Petah-Tikva 49133, Israel	e-mail:  Yael.Lapid@ecitele.com
	-------------------------------------------------------

From daemon@csg.lbl.gov  Tue Feb 25 04:00:18 1997
From: daemon@csg.lbl.gov
Date: Tue Feb 25 04:00:20 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Tue Feb 25 04:00:16 PST 1997

        Subject: Tornado, VIO driver, creating files
        Subject: NETWORK/REAL-TIME SPECIALIST
        Subject: Re: Dual Pentium boards
        Subject: Re: STDARGS

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Tornado, VIO driver, creating files
Date: Mon, 24 Feb 1997 23:34:03 -0500
From: Don Bowman <don@pixsci.com>
Organization: Pixel Scientific
Message-ID: <33126BBB.B63@pixsci.com>
Reply-To: don@pixsci.com

Hi.

I have Tornado for i960 (windows NT host).
My target board has no network (and thus no NFS).
I'd like to be able to write a file back to the host
(just for debugging).

I know the VIO driver does this for tty's... Can anyone
tell me how to open a file in (for instance) /tmp on my system?

Open just fails.

The manual alludes to this in one spot, but I couldn't find
the details.

Does it have to do with assigning another channel?

If I run (in the shell) '-> cmd > outfile', then outfile gets nothing,
and the output goes to the virtual console (target server) window.

Thanks for any help anyone can provide.

---------------------------

Newsgroups: tor.jobs,ont.jobs,ott.jobs,can.jobs,comp.jobs.offered,comp.os.vxworks
Subject: NETWORK/REAL-TIME SPECIALIST
Date: Mon, 24 Feb 1997 10:53:33 -0500
From: mansell@datavation.com
Organization: CIMtegration - Internet Communications and Marketing
Message-ID: <3311B97D.3676@datavation.com>

SOFTWARE ENGINEER : NETWORK/REAL-TIME SPECIALIST
Location: North York, Ontario.

DataVation Inc. product development requires a specialist in network and
real-time programming to assist in the development of our patented
DataVast mass storage/network file server technology.

The ideal candidate has demonstrated knowledge of:
* ANSI C or C++ (2 or more years).
* NFS2/3, RPC, TCP/IP, etc. network programming internals.
* VxWorks or similar real-time programming.
* Unix OS, Macintosh/AppleShare, PCIbus, VMEbus desirable.

The candidate should have a bachelor's or master's degree in Computer
Science or its equivalent, and be accustomed to working with others in a
small development team to get the job done.  Thoroughness, attention to
detail, and potential leadership qualities are essential. 

We offer an excellent starting salary, a comprehensive benefits package,
and a supportive working environment.  If this is the challenge you
seek, then submit your resume by:

Mail:   Michael Mansell
        Product Manager, DataVation Inc.
        2727 Steeles Ave. West, Suite 303
        North York, Ontario, CANADA.
        M3J 3G9
Fax:    (416) 665-8285, Attn: Michael Mansell
E-mail: Mansell@DataVation.com

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Dual Pentium boards
Date: Mon, 24 Feb 1997 19:25:16 -0800
From: Rob Davidson <rdavidso@slonet.org>
Organization: Call America Internet Services +1 (800) 563-3271
Message-ID: <33125B9C.542D@slonet.org>
References: <199702182206.WAA24278@ziv.me.umn.edu> <330BA69B.5B89@dayna.com>
Reply-To: rdavidso@slonet.org

Wes Peters wrote:
> 
> Ted Morris wrote:
> > Does anyone know of a vendor selling Dual-Pentium (Pentium Pro) boards
> > -- that actually will run ~2x faster than one Pentium (preferably
> > stand-alone)?
> 
> ASUS has a multiple pentium and pentium pro boards in PC form factor.
> They are pretty well respected in the PC world, but I wouldn't know
> about industrial quality.
> 
> > If such a beast exists, what kind of RAM is required?  The boards
> > we've checked out use 'off-the-shelf' RAM but I was told that the
> > performance is only 1.5 to 1.6 times better than one CPU.
> 
> Standard EDO or FPM SIMMs, I guess.  The ASUS boards also have an
> L2 cache controller, and use SDRAM for the cache.
> 
> The performance you get is more dictated by software than hardware.
> Sun seems to be able to get about 94% speedup per cpu with Solaris
> 2.5 on SMP SPARCstations.  What kind of performance increase you
> get with VxWorks probably depends mostly on VxWorks SMP support,
> and on your ability to partition your tasks into multiple threads.
> 
> > Any experiences, suggestions, etc., are most welcome.
> 
> The FreeBSD project has a team working on SMP support for common
> PC SMP boards and the code is freely available.  See
> 
>         http://www.freebsd.org/
> 
> for info.  Try the search engine there.

Keep an eye on www.ziatech.com for forthcoming information on dual
Pentium Pro for CompactPCI.

Rob D.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: STDARGS
Date: 25 Feb 1997 08:10:51 GMT
From: "Krister Hagman" <Krister.Hagman@senet.abb.se>
Organization: ABB Sweden
Message-ID: <01bc22f2$b3c05e50$9549e38a@pc2090>
References: <01bc1fe1$eb7fdfa0$9549e38a@pc2090> <01bc1fe2$282fea30$9549e38a@pc2090> <5et8ji$a91@elaine29.Stanford.EDU>

Earl Mitchell <kla@leland.Stanford.EDU> wrote in article
<5et8ji$a91@elaine29.Stanford.EDU>...
> In article <01bc1fe2$282fea30$9549e38a@pc2090>,
> Krister Hagman <Krister.Hagman@senet.abb.se> wrote:
> >I forgot to say that the line that caused the error is the
> >
> >	'arg = va_arg(argPtr, int);'
> >
> 
> Run just the preprocesor on your code to expand this
> stuff then you can see what its complaining about.
> The va_arg is a macro which can be defined differently
> based on what CPU you are using.
> 

I have looked at the pre-processor output and the output looks like this:

	[...]

	typedef struct {
	  char gpr;			 
	  char fpr;			 
	  char *overflow_arg_area;	 
	  char *reg_save_area;		 
	} __gnuc_va_list[1];

	[...]

	typedef struct {
	  long   __gp_save[8];		 
	  double __fp_save[8];		 
	} __va_regsave_t;

	[...]

	va_list argPtr;

	__extension__ ({	register int __words = __builtin_args_info (0)  -   0 ;	(
  argPtr   )->gpr = (__words < 8) ? __words : 8;	(   argPtr   )->fpr =
__builtin_args_info (1)  - 33;	(   argPtr   )->reg_save_area = (((char *)
__builtin_frame_address (0))	+ __builtin_args_info (4) );	(   argPtr  
)->overflow_arg_area = ((char *)__builtin_saveregs ()	+ (((__words >= 8) ?
__words - 8 : 0)	* sizeof (long)));	(void)0;	})   ;
    
	 arg = ((    int   *)(  argPtr   += sizeof(    int  )))[-1]  ;

The line that begins with "__extension" is the "va_start(...)" line. The
last line "arg = ..." is the
line that causes the compiler error. It seems like the part:

		argPtr += sizeof(....)

causes the compiler a great deal of trouble. Sizeof returns the type
"size_t" and argPtr is of the type "va_list".

/Krister Hagman
ABB Network Partner 
SWEDEN

---------------------------

End of New-News digest
**********************

From bf@kayser-threde.de  Tue Feb 25 04:27:32 1997
From: Florian Bittner <bf@kayser-threde.de>
Date: Tue Feb 25 04:27:34 PST 1997
Subject: MV1604 and vxMemProbe help
Hi,

I discovered a strange problem with the 604 PPC CPU which relates to
probing the VME bus at well defined addresses for specialized hardware.
All I need is a function which accesses a memory location and returns
whther something is present or not ( 680x0 does this via a bus error
handler ).
This code worked for years under VmeExec/pSOS, now I ported the stuff to
Tornado/VxWorks and PowePC using vxMemProbe to check word locations on the
VMEbus. Interestingly the code works on the 603, so VMEbus remap and all
the VME_WINDOW things work fine, but the 604 sometimes returns "hosts",
i.e. a board was found and the next memory check returns the same type,
even if nothing is there. Even worse sometimes the task, which intiates the
vxMemProbe, is suspended and no error message is displayed. The worst case
leads to a grinding system halt without any indication why. There is no
deterministic scheme behind this.
Maybe anybody out there in netland had a similar problem, may be it=B4s
related to cache enable, which is currently always on.

Thanks,
greetings from Munich,

Florian Bittner                 Software Engineer            __  __  =20
Kayser-Threde GmbH              Tel +49 89 78720 383        |  |/  / =20
Perchtingerstr.3                Fax +49 89 78720 398        | =3D=3D=3D=3D< =
 =20
81379 Munich                    Germany                     |__|\__\ =20

From zane@eng.kns.com  Tue Feb 25 05:34:25 1997
From: Erik Zane <zane@eng.kns.com>
Date: Tue Feb 25 05:34:27 PST 1997
Subject: subscribe
subscribe

-- 
Erik Zane
zane@eng.kns.com
Kulicke & Soffa Industries, Inc.

From tja@radstone.co.uk  Tue Feb 25 06:20:08 1997
From: Tim Allen <tja@radstone.co.uk>
Date: Tue Feb 25 06:20:10 PST 1997
Subject: Re: MV1604 and vxMemProbe help
>I discovered a strange problem with the 604 PPC CPU which relates to
>probing the VME bus at well defined addresses for specialized hardware.
>All I need is a function which accesses a memory location and returns
>whther something is present or not ( 680x0 does this via a bus error
>handler ).

I understand there is a patch to the PPC 604 library for this problem,
available from WRS.  The fault/patch is covered by SPR# 7444 and 7445.  You
should be able to get this patch from your nearest WRS support office.

Cheers,
Tim.

  Tim Allen                                    phone: +44 (0)1327 359444
  Principal Software Engineer                  fax:   +44 (0)1327 358113
                                               email: tja@radstone.co.uk
  Radstone Technology PLC,Water Lane, Towcester, Northants, NN12 6JN, UK.

From MikeMcQuade@connect.com  Tue Feb 25 07:46:13 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Tue Feb 25 07:46:18 PST 1997
Subject: Re: MV1604 and vxMemProbe help
At 04:27 AM 2/25/97 PST, you wrote:
>Submitted-by bf@kayser-threde.de  Tue Feb 25 04:27:32 1997
>Submitted-by: Florian Bittner <bf@kayser-threde.de>
> 

>This code worked for years under VmeExec/pSOS, now I ported the stuff to
>Tornado/VxWorks and PowePC using vxMemProbe to check word locations on the
>VMEbus. Interestingly the code works on the 603, so VMEbus remap and all
>the VME_WINDOW things work fine, but the 604 sometimes returns "hosts",
>i.e. a board was found and the next memory check returns the same type,
>even if nothing is there. Even worse sometimes the task, which intiates the
>vxMemProbe, is suspended and no error message is displayed. The worst case
>leads to a grinding system halt without any indication why. 

I beleive there is a patch from WRS, I put this patch on a 1604 board, and
was able to use vxMemProbe (reads only).

I also found that prior to putting this patch on, the 604 would cause an
exception when I treid to test a VME location, however, the 603 would return
garbage from VME locations where there was no hardware.

Mike.

From zane@eng.kns.com  Tue Feb 25 09:04:03 1997
From: Erik Zane <zane@eng.kns.com>
Date: Tue Feb 25 09:04:05 PST 1997
Subject: Xterm for VxWorks and VX-Windows
I am in the process of attempting a port of xterm to VxWorks for use
with VX-Windows.  Before I go through an extreme amount of work, has
anyone done this?  If not xterm, some other X windows utility that gives
access to the shell would also be sufficient.

-- 
Erik Zane
zane@eng.kns.com
Kulicke & Soffa Industries, Inc.

From bob@seaweed.com  Tue Feb 25 12:50:17 1997
From: bob schulman <bob@seaweed.com>
Date: Tue Feb 25 12:50:19 PST 1997
Subject: Re: Xterm for VxWorks and VX-Windows 
> I am in the process of attempting a port of xterm to VxWorks for use
> with VX-Windows.  Before I go through an extreme amount of work, has
> anyone done this?  If not xterm, some other X windows utility that gives
> access to the shell would also be sufficient.
Seaweed Systems' SeaWind product client-side product includes xterm in
the product. This is a standard part of the product.

You are right, bringing up xterm under VxWorks is alot of work. The best part of
it is when you run into the VxWorks pseudo-tty layer.

bob

From naivar@telomere.lanl.gov  Tue Feb 25 14:35:26 1997
From: Mark Naivar <naivar@telomere.lanl.gov>
Date: Tue Feb 25 14:35:27 PST 1997
Subject: Help with MVME162
Hello all,

I've got a problem with something I thought would be a breeze....

I can't seem to boot VxWorks 5.3 on some new MVME162 boards.  They are the 
MVME162-523A boards (32MHz '040, 8M RAM, SCSI, Ether).

I tried several different methods of downloading the VxWorks image into 
FLASH with no luck (both the serial and the ethernet methods).  The boards 
work fine with the supplied Motorola debug ROMs installed, and seemed to 
download the image and write the FLASH with no errors.  But when I 
rebooted from FLASH....nothing.

So I decided to buy some ROMs and do it "the easy way".....

I peeled off the label of the Motorola ROM and it was a 27C040.  Deciding 
not to go against the flow, I bought some 27C040 ROMs.  The biggest 
problem with these chips is:  they are not erasable.  So I bought a few 
extra "just in case"....

I took the bootrom.hex file as supplied by Wind River and burned it into 
the first ROM.  No good.  I rebuilt the bootrom.hex file and burned it.
No good.  I tried fiddling with the configuration of the BSP.  No good.  
What the heck am I doing wrong here?  There is only one device to 
program so I don't even have to worry about splitting the ROM file up, 
what could I be doing wrong?

Reading the man page was a little disturbing, the information they gave 
in the man page conflicts with the boards we have (like the ref. 
designator for the ROM is not the same...).

Anyway, if anyone out there can help me out, I'd really appreciate it.

-Mark

/-------------------------+--------------------------\
| Mark Naivar             |                          |
| Los Alamos National Lab | (505) 665-2034 (office)  |
| LS-5,  MS M888          | (505) 665-4254 (lab1)    |
| P.O. Box 1663           | (505) 665-6738 (lab2)    |
| Los Alamos, NM 87545    | (505) 667-1321 (FAX)     |
\-------------------------+--------------------------/

From mwbrown@sass1318.sandia.gov  Tue Feb 25 16:02:05 1997
From: mwbrown@sass1318.sandia.gov (Matthew W. K. Brown)
Date: Tue Feb 25 16:02:09 PST 1997
Subject: Re: Help with MVME162

Mark,

This sounds exactly like a problem that a buddy of mine was having with his 
new 162 board.  The Motorola supplied debug ROMs work fine and the 162 
passes all of the self-tests; however, the VxWorks boot ROMs don't seem to 
work.  The situation still isn't resolved (I loaned him my old 162 board 
that boots fine).  We think that there has been an upgrade to the 162 that 
hasn't been communicated to Wind River.  

I just tried phoning my buddy; but he's not in.  As I recall, he finally 
got it to boot; but the serial port doesn't work!  He can rlogin into it.  
I think (but am not sure) that he put the boot parameters into the NVRAM 
using the Motorola debug S/W and then put back in the VxWorks boot ROMs to 
boot it.

Try calling Wind River and see if they made any progress on this (they 
acted as if we were the only ones that had ever seen this).

Good Luck!

-------------------------------------------------------------------------
Matthew Brown, SMTS                             Voice: (505) 844-1160
Sandia National Laboratories                    Fax:   (505) 844-4797
P. O. Box 5800    M/S 0636                      email: mwbrown@sandia.gov
Albuquerque, NM  87185-0636

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 16:26:46 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 16:26:49 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Re: Xterm for VxWorks and VX-Windows

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 18:09:15 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 18:09:17 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Help with MVME162

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 19:27:25 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 19:27:27 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Re: Help with MVME162

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 19:43:06 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 19:43:08 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 21:43:30 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 21:43:32 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 22:13:26 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 22:13:28 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Tue Feb 25 23:03:01 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Tue Feb 25 23:03:02 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From leif.thuresson@tsl.uu.se  Wed Feb 26 01:12:24 1997
From: leif.thuresson@tsl.uu.se (Leif Thuresson)
Date: Wed Feb 26 01:12:26 PST 1997
Subject: RE: Help with MVME162
I copied the boot code to flash on a MVME162-512A a few weeks ago and I got
it working after some tweaking.I suppose you have looked at the tornado
man-page for mv162. You have to load the boot code at an 8 byte offset
and manually type in the first 8 bytes (SP/PC) I have noticed that since
version 5.3 the man page doesn't correspond to a memory dump of the boot ROM I
got with the BSP. If I set the SP/PC to the same values as the BSP ROM I
got it working. Here is a dump of the first 8 bytes of my FLASH.

162-Bug>mm 0xffa00000
FFA00000 0002?
FFA00002 0000?
FFA00004 FF80?
FFA00006 0008?
FFA00008 46FC?
FFA0000A 3700?     

 
Hope this helps,

/Leif
------------------------------------------------------------------
Leif Thuresson				  Tel: 	  +46-18-183860
Uppsala University			  Fax: 	  +46-18-183833
The Svedberg Laboratory 		  E-mail: leif.thuresson@tsl.uu.se
P.O.Box 533, S-751 21 Uppsala, Sweden
                

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 02:43:52 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 02:43:56 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 02:43:52 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 02:43:56 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 02:43:53 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 02:43:58 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From daemon@csg.lbl.gov  Wed Feb 26 04:00:31 1997
From: daemon@csg.lbl.gov
Date: Wed Feb 26 04:00:34 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Wed Feb 26 04:00:29 PST 1997

        Subject: subscribe
        Subject: Re: Tornado, VIO driver, creating files
        Subject: Re: Dual Pentium boards
        Subject: Re: Dual Pentium boards
        Subject: Source for SCSI tape drive use ?

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: subscribe
Date: Tue, 25 Feb 1997 10:45:23 -0500
From: "J. Dean Roberson" <roberson@wrga.saic.com>
Organization: SAIC
Message-ID: <33130913.DCA@wrga.saic.com>
Reply-To: roberson@wrga.saic.com

subscribe

- ------
J. Dean Roberson
roberson@wrga.saic.com
Science Applications International Corporation (SAIC)

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Tornado, VIO driver, creating files
Date: Tue, 25 Feb 1997 14:00:20 -0500
From: Don Bowman <don@pixsci.com>
Organization: Pixel Scientific
Message-ID: <331336C4.4256@pixsci.com>
References: <33126BBB.B63@pixsci.com>
Reply-To: don@pixsci.com

Just to follow up my own post...
Does anyone know the 'flags' argument for windows NT to
wtxOpen (in wtxtcl)? On Unix, its obvious: 0x201 would
be O_CREAT | O_WRONLY. However, on NT, the value for O_CREAT
varies by compiler.

It seems to me the way to write a file is:

 --Host (wtxtcl)
% set handle [wtxOpen -channel 2 "/tmp/file" 0xNNN 0666]

 --Target (windsh)
- -> vfd = open("/vio/2", 2);
- -> write(vfd, data, len)
- -> close(vfd)

 --Host (wtxtcl)
% wtxClose $handle

Does anyone see the flaw in this? (Well, the first is I don't know
what NNN is. I use '1', which means 'O_WRONLY', and touch the file
first so that it exists). However, all I see is:
 'Warning: tgtEvtGet: write to file 3 failed' in my target server
window.

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Dual Pentium boards
Date: Tue, 25 Feb 1997 07:25:28 -0500
From: "richard.price" <richard.price@lsoc114x.ksc.nasa.gov>
Organization: United Space Alliance
Message-ID: <3312DA38.24CD@lsoc114x.ksc.nasa.gov>
References: <199702182206.WAA24278@ziv.me.umn.edu> <330BA69B.5B89@dayna.com> <33125B9C.542D@slonet.org>

Rob Davidson wrote:
> 
> Wes Peters wrote:
> >
> > Ted Morris wrote:
> > > Does anyone know of a vendor selling Dual-Pentium (Pentium Pro) boards
> > > -- that actually will run ~2x faster than one Pentium (preferably
> > > stand-alone)?
> >
> > ASUS has a multiple pentium and pentium pro boards in PC form factor.
> > They are pretty well respected in the PC world, but I wouldn't know
> > about industrial quality.
> >
> > > If such a beast exists, what kind of RAM is required?  The boards
> > > we've checked out use 'off-the-shelf' RAM but I was told that the
> > > performance is only 1.5 to 1.6 times better than one CPU.
> >
> > Standard EDO or FPM SIMMs, I guess.  The ASUS boards also have an
> > L2 cache controller, and use SDRAM for the cache.
> >
> > The performance you get is more dictated by software than hardware.
> > Sun seems to be able to get about 94% speedup per cpu with Solaris
> > 2.5 on SMP SPARCstations.  What kind of performance increase you
> > get with VxWorks probably depends mostly on VxWorks SMP support,
> > and on your ability to partition your tasks into multiple threads.
> >
> > > Any experiences, suggestions, etc., are most welcome.
> >
> > The FreeBSD project has a team working on SMP support for common
> > PC SMP boards and the code is freely available.  See
> >
> >         http://www.freebsd.org/
> >
> > for info.  Try the search engine there.
> 
> Keep an eye on www.ziatech.com for forthcoming information on dual
> Pentium Pro for CompactPCI.
> 
> Rob D.

My experience with dual processors and their ability to do things 2x 
faster has bee disappointing.  The real question is does anybody know of 
any software applications that properly use the dual processors to run 
the app twice as fast.  That is the real challenge!
Good hunting 
RNP

---------------------------

Newsgroups: comp.os.vxworks
Subject: Re: Dual Pentium boards
Date: Tue, 25 Feb 1997 16:45:04 +0000
From: Andy Champ <achamp@axe.rcuk.cca.rockwell.com>
Organization: Rockwell Avionics - Collins
Message-ID: <33131710.4B70@axe.rcuk.cca.rockwell.com>
References: <199702182206.WAA24278@ziv.me.umn.edu> <330BA69B.5B89@dayna.com> <33125B9C.542D@slonet.org> <3312DA38.24CD@lsoc114x.ksc.nasa.gov>

richard.price wrote:
> 
> Rob Davidson wrote:
> >
> > Wes Peters wrote:
> > >
> > > Ted Morris wrote:
> > > > Does anyone know of a vendor selling Dual-Pentium (Pentium Pro) boards
> > > > -- that actually will run ~2x faster than one Pentium (preferably
> > > > stand-alone)?
> > >
> > > ASUS has a multiple pentium and pentium pro boards in PC form factor.
> > > They are pretty well respected in the PC world, but I wouldn't know
> > > about industrial quality.
> > >
> > > > If such a beast exists, what kind of RAM is required?  The boards
> > > > we've checked out use 'off-the-shelf' RAM but I was told that the
> > > > performance is only 1.5 to 1.6 times better than one CPU.
> > >
> > > Standard EDO or FPM SIMMs, I guess.  The ASUS boards also have an
> > > L2 cache controller, and use SDRAM for the cache.
> > >
> > > The performance you get is more dictated by software than hardware.
> > > Sun seems to be able to get about 94% speedup per cpu with Solaris
> > > 2.5 on SMP SPARCstations.  What kind of performance increase you
> > > get with VxWorks probably depends mostly on VxWorks SMP support,
> > > and on your ability to partition your tasks into multiple threads.
> > >
> > > > Any experiences, suggestions, etc., are most welcome.
> > >
> > > The FreeBSD project has a team working on SMP support for common
> > > PC SMP boards and the code is freely available.  See
> > >
> > >         http://www.freebsd.org/
> > >
> > > for info.  Try the search engine there.
> >
> > Keep an eye on www.ziatech.com for forthcoming information on dual
> > Pentium Pro for CompactPCI.
> >
> > Rob D.
> 
> My experience with dual processors and their ability to do things 2x
> faster has bee disappointing.  The real question is does anybody know of
> any software applications that properly use the dual processors to run
> the app twice as fast.  That is the real challenge!
> Good hunting
> RNP

Now there is the real problem.  I can easily compose software which
won't go in the slightest faster given two processors - all you need is
a single execution thread - and it's quite easy to accidentally write
multi-threaded apps that do the same - competing for a common resource,
or waiting for each other to terminate.  To get true double performance
is near as makes no odds impossible, regardless of the processors, OS,
architecture etc - merely adding a second processor provides extra work
for the OS to perform, and this slows the system down even when it is
only running a single task.  *Usually* the second processor helps, but
how much is incredibly variable.  The only time you will get doubled (or
more) performance is if you have a fixed overhead for your system when
idle - for example polling a big comms network - and apps running on it
which are very processor bound.  In that case not all the processor time
of the first processor is available to execute application code, and
thus the second processor can (more than) double the throughput as it is
doing very little except application code.

Rgds

Andy Champ

---------------------------

Newsgroups: comp.os.vxworks
Subject: Source for SCSI tape drive use ?
Date: 14 Feb 1997 18:22:12 GMT
From: davel@tgf.tc.faa.gov (Dave Lonkart)
Organization: FAA Technical Center, Pomona, NJ
Message-ID: <5e2agk$okl@faatcrl.faa.gov>

- -- 

     I was wondering if anyone knew of any source code for writing to a
SCSI tape drive (8mm Exabyte).  Thanks in advance.

- ---
Dave Lonkart
Raytheon Service Support Company
davel@tgf.tc.faa.gov

---------------------------

End of New-News digest
**********************

From intrepid!bellafai@uunet.uu.net  Wed Feb 26 04:39:28 1997
From: Andy Bellafaire <intrepid!bellafai@uunet.uu.net>
Date: Wed Feb 26 04:39:30 PST 1997
Subject: Re: MV1604 and vxMemProbe help

I beleive that the patch to vxMemProbe will eliminate the exception when
non-responding VME addresses are referenced.  Unfortunately, the fix has
caused vxMemProbe to always return an OK status, even when non-responding VME
addresses are referenced.  I can't double check this since someone at Wind
River has seen fit to blow away the patches for Tornado 1.0 FCS Unix.

Have a nice day.

Andy

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 05:27:09 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 05:27:12 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Re: Help with MVME162

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 07:00:33 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 07:00:36 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 07:00:42 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 07:00:45 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From POSTMASTER@a1.wl.corning.com  Wed Feb 26 07:00:48 1997
From: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
Date: Wed Feb 26 07:00:50 PST 1997
Subject: Delivery Failure Report
    ALL-IN-1 was unable to deliver your message dated  to

      _wl::Lucero_WW

          - Recipient has invalid alternate MTS address;

    on node WLBARO

    The subject of the message was :
      Delivery Failure Report

From yake@eng.kns.com  Wed Feb 26 07:16:07 1997
From: Mike Yake <yake@wgsu11.kns.com>
Date: Wed Feb 26 07:16:08 PST 1997
Subject: Unsubscribe

Unsubscribe

From ahw@clalf1.mps.ohio-state.edu  Wed Feb 26 07:44:05 1997
From: Andreas Wolf <ahw@clalf1.mps.ohio-state.edu>
Date: Wed Feb 26 07:44:07 PST 1997
Subject: Re: Delivery Failure Report

HEY!
	Please stop this!!

> Submitted-by POSTMASTER@a1.wl.corning.com  Wed Feb 26 07:00:42 1997
> Submitted-by: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
>  
>     ALL-IN-1 was unable to deliver your message dated  to
> 
>       _wl::Lucero_WW
> 
>           - Recipient has invalid alternate MTS address;
> 
>     on node WLBARO
> 
>     The subject of the message was :
>       Delivery Failure Report
> 

From wjbohnh@sandia.gov  Wed Feb 26 08:21:46 1997
From: wjbohnh@sandia.gov (William J. Bohnhoff)
Date: Wed Feb 26 08:21:48 PST 1997
Subject: unsubscribe
unsubscribe

From matt@vexcel.com  Wed Feb 26 09:29:43 1997
From: Matt Compton* <matt@vexcel.com>
Date: Wed Feb 26 09:29:45 PST 1997
Subject: unsubscribe
unsubscribe

From ddavies@worf.utsci.com  Wed Feb 26 10:20:24 1997
From: ddavies@worf.utsci.com (Douglas Davies)
Date: Wed Feb 26 10:20:27 PST 1997
Subject: Re: Delivery Failure Report
> From root@csg.lbl.gov Wed Feb 26 11:18 MST 1997
> To: vxworks_users@csg.lbl.gov
> Subject: Delivery Failure Report
> 
> Submitted-by POSTMASTER@a1.wl.corning.com  Wed Feb 26 07:00:42 1997
> Submitted-by: Mail Postmaster <POSTMASTER@a1.wl.corning.com>
>  
>     ALL-IN-1 was unable to deliver your message dated  to
> 
>       _wl::Lucero_WW
> 
>           - Recipient has invalid alternate MTS address;
> 
>     on node WLBARO
> 
>     The subject of the message was :
>       Delivery Failure Report

Please, make it stop!!!

From bawilson@llnl.gov  Wed Feb 26 11:00:29 1997
From: Bruce Wilson <bawilson@llnl.gov>
Date: Wed Feb 26 11:00:30 PST 1997
Subject: serial cable for mv1603
Hello MV1603 users:
	Does anyone know how to get a serial cable that fits the
MVME1600-011 baseboard front panel connectors for serial ports 3 and 4?
Our local supplier provided a cable with part number MVME705CBL-004, and it
didn't work.  The sub-miniature-D end would not plug into the -011 serial
port.

--Bruce Wilson          (bawilson@llnl.gov)
U. C. LLNL
Livermore, Calif.

From LUCERO_WW@a1.wl.corning.com  Wed Feb 26 11:18:40 1997
From: "W. Wayne Lucero (910) 397-8178" <LUCERO_WW@a1.wl.corning.com>
Date: Wed Feb 26 11:18:42 PST 1997
Subject: Re: Delivery Failure Report
Believe me...I'm trying!

I sent a request to "vxwexplo-request@lbl.gov" to remove my name from the 
"comp.os.vxworks" newsgroup.  Do you know if this is where I should make such 
request?

Any info. will help.  Sorry for the inconvenience.

From 74043.572@CompuServe.COM  Wed Feb 26 11:25:05 1997
From: Jeff Schmidt <74043.572@CompuServe.COM>
Date: Wed Feb 26 11:25:07 PST 1997
Subject: Passing Arguments To Tasks
Folks, 

Has anyone had any luck passing arguements to tasks. 

 I'm using the taskSpawn() function to create my tasks and am running into some
confusing issues.  The taskSpawn prototype calls for a function with a prototype
such as

int taskname(...)

where the arguement list is an ellipse.  My only experience with ellipses
involves using the tools in stdarg.h to extract the arguements.  The problem is
that the tools in stdarg.h require at least one named arguement which conflicts
with the task prototype required by taskSpawn().

If anyone has had luck and has an example of how to successfully pass arguements
I would appreciate your inputs.

Thanks,
Jeff
74043,572@compuserve.com

From jwc@ssd.ray.com  Wed Feb 26 12:28:34 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Wed Feb 26 12:28:35 PST 1997
Subject: BSP for 1603/1604?
Could some tell me if the BSP for the mvme1604 is the same as the mvme1603?
we bought the 1604 board and pkg and now the hardware folks want the "extra"
slot back...  I just want to know if I have all the right pieces for the change...

Thanks,

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From miket@colmek.com  Wed Feb 26 12:53:40 1997
From: Mike Taylor <miket@colmek.com>
Date: Wed Feb 26 12:53:42 PST 1997
Subject: rpc
I am trying to use RPC to send a message from one Vxworks CPU to another 
Vxworks CPU(Note: a Windows95 PC would be ok to). I could use an example
program. All the examples I have found are for UNIX and I have been 
unsucessful in porting them.

Thanks

From wbrown@csg.lbl.gov  Wed Feb 26 13:03:43 1997
From: wbrown@csg.lbl.gov (Bill Brown)
Date: Wed Feb 26 13:03:44 PST 1997
Subject: Administratrivia and "bounces."

Please be aware that when one of these "bounce-storms" gets going, sending
a message to the whole list will send a message to the uncivilized cite
which is bouncing the messages.  This will result in another bounce message
being sent to everybody, which will result in ..............

If you really feel the need to complain, send your complaint to the
administrative address which is "vxwexplo-request@lbl.gov".  I can't promise
that it will cause me to fix the problem any sooner, since I probably get
the bounces about the same time as you do, but perhaps it will make you feel
better.

BTW - mail to the postmaster at the "problem site" also bounced.  Some days
it don't pay to get out'a bed!

All messages are sent thru a filter before they are forwarded to the list.
Many bad messages are thus eliminated; the problem is that there is an
infinite number of ways for bounce messages to be phrased, so some of them
will get thru.

Happy Wednesday, everybody!

Disclaimer:  Any opinions are my own and have	    |  -bill
    nothing to do with the official policy or the   |   wlbrown@lbl.gov
    management of L.B.N.L, who probably couldn't    |   Berkeley, CA
    care less about employees who play with trains. |   Keeper of the List

From ANTLOGA@whqvax.picker.com  Wed Feb 26 13:26:04 1997
From: ANTLOGA@whqvax.picker.com
Date: Wed Feb 26 13:26:06 PST 1997
Subject: Re: Delivery Failure Report
   STOP THIS,,,, PLEASE !!!!

From swlee@anet.bna.boeing.com  Wed Feb 26 13:51:41 1997
From: "Steve W. Lee" <swlee@anet.bna.boeing.com>
Date: Wed Feb 26 13:51:43 PST 1997
Subject: unsubscribe
     Please remove.
     
     swlee@anet.rockwell.com
     
     Thanks.

From jford@sadira.gb.nrao.edu  Wed Feb 26 14:05:34 1997
From: John Ford <jford@arcturus.gb.nrao.edu>
Date: Wed Feb 26 14:05:36 PST 1997
Subject: Re: Passing Arguments To Tasks

> Has anyone had any luck passing arguements to tasks. 
> 
>  I'm using the taskSpawn() function to create my tasks and am running into some
> confusing issues.  The taskSpawn prototype calls for a function with a prototype
> such as
> 
> int taskname(...)
> 

I do it thusly:

// Main task
static void SynthTask(char * name, int panel, int id, int ieee_id, int msg_Base );

...

int SynthSpawner( char * whichOne )
{

...
  int newSynthMgrTaskId = taskSpawn( desc[i].obj_name,
								   80,
								   VX_FP_TASK,
								   20000,
								   (FUNCPTR)SynthTask,
								   (int)desc[i].obj_name,
								   desc[i].panel_id, i, 
									 desc[i].ieee_id,
									 desc[i].msg_base,
								   5,6,7,8,9); // Unused args

  if( newSynthMgrTaskId == ERROR )
	{
	  status = -1;
	  cerr << "Could not spawn " << desc[i].obj_name << " SYNTH Manager" << endl;
	}
  
  taskDelay(T2SEC);
  return status ;
}

Where SynthSpawner is called from the shell.
Hope this helps.

-- 
John Ford
National Radio Astronomy Observatory
Green Bank, WV 24944-0002
jford@nrao.edu

From cgrames@mdc.com  Wed Feb 26 14:42:45 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Wed Feb 26 14:42:47 PST 1997
Subject:  Passing Arguments To Tasks -Reply
Jeff,

I think you are making it harder than it is.  Look at the synopsis of taskSpawn in the VxWorks
Reference Manual.  There are only two things significant about the taskSpawn call as relates to
argument passing:

1)  The arguments must be integer or represented as integers (i.e., pointers).  So you can pass
characters strings, pointers to structures, etc., but you may not pass floating point values (at least
not by value).

2)  The number of arguments specified in taskSpawn must be ten.  This does NOT mean your
task must be set up to receive ten arguments.  Unused arguments in taskSpawn should be coded
as 0.

Thus, you could have a routine:

	void foo(int junk, char *string)

and call it with

	taskSpawn(NULL,100,VX_FP_TASK,20000,foo,42,"Hello",0,0,0,0,0,0,0,0);

If you do not care about some of the other attributes of the task, such as priority, stack size, etc.,
you may want to consider using sp() instead.  You can find it in the Reference Manual, as well.

Good luck!

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From dit@bach.jhuapl.edu  Wed Feb 26 15:32:37 1997
From: dit@bach.jhuapl.edu (Daryl I. Tewell)
Date: Wed Feb 26 15:32:39 PST 1997
Subject: Re: Passing Arguments To Tasks
Variable argument lists are useful for functions like printf, whose
arguments are not known at compile time.  However, to use the stdarg
macros to retrieve those arguments, you must know the types of the
arguments.  In printf, for instance, these types are specified in the
format string, which is itself an argument to printf.

Determine if your application truly requires a variable argument list.
If so, then you must provide a way for the stdarg macros to determine
the types of the arguments.  If not (and I'm willing to bet that's the
case), you can simply define your task as a function accepting the
types you spawn it with.  Furthermore, the arguments should be ints if
you want portable code (see below).

The VxWorks 5.1 release notes mention that variable arguments for
logMsg and taskSpawn is not portable.  As of 5.1, the prototypes have
changed to pass ten and only ten int parameters to the spawned task.
For many platform-compiler configurations, you can avoid the nuisance
of having to list all ten int parameters (an ugly string of
comma-separated zeros) by defining the symbol __PROTOTYPE_5_0 to get
the older, variable argument prototypes.  This silences lint and may
allow you to pass int arguments if you ever need to.  Beware that you
run the risk of non-portability with this method, and the passing of
non-int arguments may not work at all!  (The passing of any type would
be allowed by ANSI C, but the mechanism by which VxWorks passes
arguments to tasks is beyond the pale.)  To be completely safe, pass
all ten int arguments, and define tasks to receive all ten int
arguments.

Regarding your original question about the lack of a named parameter to
seed the va_start macro, you are correct:  Standard C requires at least
one fixed argument.

-Daryl

From cgrames@mdc.com  Wed Feb 26 15:37:01 1997
From: Charlie Grames <cgrames@mdc.com>
Date: Wed Feb 26 15:37:02 PST 1997
Subject:  serial cable for mv1603 -Reply
>Submitted-by bawilson@llnl.gov  Wed Feb 26 11:00:29 1997
>  Hello MV1603 users:
>	Does anyone know how to get a serial cable that fits the
>MVME1600-011 baseboard front panel connectors for serial ports 3 and 4?
>Our local supplier provided a cable with part number MVME705CBL-004, and it didn't work.  The
>sub-miniature-D end would not plug into the -011 serial port.

Brian,

I am in the process of getting a cable from Motorola that is supposed to be HD26 on one end and
DB25 (female) on the other.  The part number I was given was CA27.  Try throwing that at your
local Motorola sales rep and see what kind of response you get.  I can't make any guarantees
since we don't have ours in house yet.

If you need something custom, you may also want to contact a company like Black Box, which will
give you a quote.  From what I could see, the pinouts on HD26 are identical to those on DB25, and
that is primarily what they need to know.

Charlie Grames
McDonnell Douglas Training & Support Systems
(314) 233-1956
CGrames@mdc.com

From jwc@ssd.ray.com  Wed Feb 26 16:18:54 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Wed Feb 26 16:18:55 PST 1997
Subject: VxWorks, MCOS and such...
I am having some trouble with my Mercury Computer system's supplied
I/F library for VxWorks.

I am using VxWorks 5.3 on the MVME1604 board and MCOS 3.2.0 with the
mc_program package...

Has anyone tried to use the sys_configmc call?  Mine keeps blowing up
and the arguments look correct...

Any suggestions or help would be appreciated, as Mercury, who means well, but
is cautious and overworked, doesn't seem to have TIMELY suggestions...

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

P.S.  The code, compiled for the Sparc (Solaris 2.4) environment, gets through
this just fine.  It pukes in my application, with the by-product of causing
the Sparc to re-boot...  Hence the VxWorks approach (the real target).

<Code Fragment Here>
        /*
         * @ Perform a configmc  to set things up
         */
        sprintf(ClxArgv[0], "-cf");
        sprintf(ClxArgv[1], "%s", ConfigMcFile);
        sprintf(ClxArgv[2], "init");
        ClxArgv[3] = NULL;

        printf("configmc ");
        for (i = 0; ClxArgv[i]; i++)
        {
            printf("%s ", ClxArgv[i]);
        }
        printf("\n");

        rc = sys_configmc(ClxArgv, NULL);
        if (rc)
        {
            err_print(rc, ERR_GET_ALL);
            exit(-1);
        }
<End Code Fragment>

<Begin Results Output>

-> vx_start_dsp "clx_dsp_init_table.dat"
configmc -cf /usr/mercury/etc/z1203.cfg init 
 
data access
Exception current instruction address: 0x00367634
Machine Status Register: 0x0000b030
Data Access Register: 0x6b656420
Condition Register: 0x24400082
Data storage interrupt Register: 0x40000000
 
163248 vxTaskEntry    +60 : shell ()
144d38 shell          +18c: 144d64 ()
144f6c shell          +3c0: execute ()
1450ec execute        +d8 : yyparse ()
179768 yyparse        +7a8: 177698 ()
177810 yystart        +8f8: vx_start_dsp (7fe768)
5bee40 vx_start_dsp   +31c: sys_configmc (5e9a40, 0)
35bbe8 sys_configmc   +38 : pgm_run_program_internal (3f3a28, 5e9a40, 0, ffffffff)
365030 pgm_run_program_internal+3c : pgm_parse_program (3f3a28, 5e9a40, 5e99cc)
364b60 pgm_parse_program+124: pgm_parse_parameters (5e9a40, 0, 3f3a10, 7fdc08, 7fdbd4)
3657d4 pgm_parse_parameters+30c: 367550 (7fdba4, 7fdb94)
shell restarted.
 
->

<End Results Output>

From eknuds@extremenetworks.com  Wed Feb 26 19:39:00 1997
From: Eric Knudstrup <eknuds@extremenetworks.com>
Date: Wed Feb 26 19:39:02 PST 1997
Subject: Cross GCC 2.7.2 and vxWorks...
I have cross compiled GCC 2.7.2 for the i486 target (Linux x86 or 
Solaris Sparc host.)
It ALMOST works except for a critical component, either the WRS 
supplied Intel 100 ethernet driver is failing or the WRS pciLib is 
failing.
From my guess, I would say that the pciLibrary is the one causing the 
problem, as the system seems to fail to even find the card.
Does anyone know of any hitches with using non-WRS generated versions 
of cross-gcc?
Also, how do I create a binary to make the .sym file?

TIA,

Eric

From daemon@csg.lbl.gov  Thu Feb 27 04:00:20 1997
From: daemon@csg.lbl.gov
Date: Thu Feb 27 04:00:22 PST 1997
Subject: comp.os.vxworks newsdigest
Comp.Os.Vxworks Daily Digest    Thu Feb 27 04:00:18 PST 1997

        Subject: Re: TCP port reuse
        Subject: Embedded Web/CORBA/Agent Workshop - Revised CFP

-------------------------------------------------------

Newsgroups: comp.os.vxworks
Subject: Re: TCP port reuse
Date: Wed, 26 Feb 1997 18:47:23 -0500
From: tomkinso@connext.net (Tim Tomkinson)
Organization: Northrop Grumman Corp.
Message-ID: <tomkinso-2602971847230001@pp247.connext.net>
References: <01bc242b$ec319f80$1a03150a@stackc>

In article <01bc242b$ec319f80$1a03150a@stackc>, "Charles J. Stack"
<chuck.stack@bailey.com> wrote:

> I've got a routine that I'm calling from the shell that opens
> a TCP socket, binds, listens, accepts, reads, closes, then returns
> to shell. It works OK the first time I run it after reboot, but subsequent
> invokations fail during bind. So, after socket create and before bind, I
> set socket options to turn off LINGER and turn on REUSEADDR. However, this
> does not help. If I change the port number, it works first time then
> same as above.
> 
> What can I do to be able to re-use a TCP port?
> 
> Are there any utilities to find the status of things like TCP and UDP
> port usage/state?
> 
> Thanks,
> 
> Chuck

Chuck,

I had the same problem, but setting SO_REUSEADDR seemed to fix it:

   int option = 1;
   setsockopt (sock, SOL_SOCKET, SO_REUSEADDR, (char*) &option,
      sizeof (option));

Hope this helps.

Tim Tomkinson
Northrop Grumman Corp.

- -- 
"He who laughs last thinks slowest."

---------------------------

Newsgroups: comp.os.vxworks
Subject: Embedded Web/CORBA/Agent Workshop - Revised CFP
Date: Wed, 26 Feb 1997 22:44:37 -0500
From: blee@cdr.stanford.edu (Burton H. Lee)
Organization: Stanford University
Message-ID: <blee-260297224437@mml-mac-10.stanford.edu>
Followup-To: comp.os.vxworks

                Call for Papers and Participation
                          (Corrected)

                          Workshop on

         Embedded Web/CORBA/Agent/Internet Technologies
                          April 7, 1997
                         Santa Clara, CA

           6th International World Wide Web Conference
                  Sponsored by Stanford University

The Revised Call for Papers (CFP) is available at:

        http://diagnostics.stanford.edu/www6/EWTWorkshopCFP.html

CORRECTION FROM PREVIOUS CFP: Participants in this workshop may register
for Monday, April 7 only, at the one-day workshop rate; you are NOT
required to register for the entire conference. Our apologies for this
error in the original CFP.

The deadline for papers has accordingly been extended to March 12, 1997.

WORKSHOP CHAIRS: Tim Krauskopf, Spyglass, Inc.; Steve Houtchens, Integrated
Systems, Inc.; Burton Lee, Stanford University.

Topics to be covered include:

        Device Connectivity and Communications Architectures
              Real-time Operating System (RTOS) and Embedded Web
Server/Browser
                interfaces
              Embedded Java for Product Web/Internet Access
              Embedded CORBA
              Embedded Agents
              Hybrid Web/CORBA/Agent Architectures and Protocols
              Sensor Connectivity and Architectures

       Hardware Solutions to Device Connectivity
              Java chips and other chips

       Embedded Product Networking Applications and Architectures
              Next Generation Remote Diagnostics of Equipment
              Condition Monitoring
              Real-time Control
              Product Population Monitoring
              Distributed Measurement and Sensing Systems

       Corporate Intranets and the Embedded Web

       Standards for Embedded Web/Internet Technologies
              Impact of Next Generation Web Infrastructure (IP-NG, HTTP-NG)
                on Embedded Web Systems

This workshop is open to all members of the public. Please see
the CFP for Paper Submission and Registration details, including the
registration rate and student/academic pricing.

Extended deadline for submitting papers is March 12, 1997.

Thank you.

- -- 
Burton H. Lee
blee@cdr.stanford.edu

---------------------------

End of New-News digest
**********************

From ANTLOGA@whqvax.picker.com  Thu Feb 27 05:15:20 1997
From: ANTLOGA@whqvax.picker.com
Date: Thu Feb 27 05:15:23 PST 1997
Subject: Re: Delivery Failure Report
If you don't stop this, I'll come after you !!!   >:(

From laksh@pvdsw.amat.com  Thu Feb 27 08:20:01 1997
From: laksh@pvdsw.amat.com (Laksh Karuppiah x33230)
Date: Thu Feb 27 08:20:03 PST 1997
Subject: Registration

Name : Lakshmanan Karuppiah
Company : Applied Materials
tel No : 408-563-3230
fax no : 408 - 563 - 3591
e-mail : laksh@pvdsw.amat.com

Application : 586 based VME board. (Radisys ).
	     : control semi - conductor equipment.

address : 4250 Burton Drive
	MS 2433
	santa clara , CA 95054

From pean@mbari.org  Thu Feb 27 08:21:37 1997
From: Andrew Pearce <pean@mbari.org>
Date: Thu Feb 27 08:21:38 PST 1997
Subject: Re: Help with MVME162
Matthew Brown wrote:

> I just tried phoning my buddy; but he's not in.  As I recall, he finally
> got it to boot; but the serial port doesn't work!  He can rlogin into it.
> I think (but am not sure) that he put the boot parameters into the NVRAM
> using the Motorola debug S/W and then put back in the VxWorks boot ROMs to
> boot it.
> 
> Try calling Wind River and see if they made any progress on this (they
> acted as if we were the only ones that had ever seen this).
> 
> Good Luck!

There is a bug in the 162 tyCoDrv that has been there for some time. I
am
sketchy on the details but the 162-FX (32 MHz) version of the board is
affected. Other variants may be also. The problem is on the transmit 
side and the fix is to write 0x08 to the CR register followed by the 
actual character to be sent. This change is needed each place in the
driver where characters are sent via the dr register. 

#ifdef MVME162FX
    volatile char  *cr = pTyCoDv->cr;
#endif

    if (pTyCoDv->created && tyITx (&pTyCoDv->tyDev, &outChar) == OK)
	{
#ifdef MVME162FX
	*cr = 0x08;
         *cr = outChar;
#else
	*pTyCoDv->dr = outChar;
#endif

Perhaps someone can set me straight on this, but I believe the BSP's for
this board family are written by Motorola not WRS. 

I serched WRS's web site known problem list and could find no mention of
this problem. It continues to frustrate me that simple problems of this
sort are not described in WRS's known problem list.  

-- 
Andrew Pearce                            | email: pean@mbari.org
Monterey Bay Aquarium Research Institute | tel:   (408) 775-1746
7700 Sandholt Rd                         | fax:   (408) 775-1646
Moss Landing, CA 95039                   | URL:  
http://www.mbari.org/~pean 
									
"Coping's easy.  Not pureeing your loved ones, that's the hard part."
Basil Fawlty

From montech@mindspring.com  Thu Feb 27 11:30:49 1997
From: montech <montech@mindspring.com>
Date: Thu Feb 27 11:30:51 PST 1997
Subject: Employment Opportunities
I don't know if this is an appropriate use of this space but ....

I am a technical recruiter in Raleigh, NC. One of my clients, NorTel is =
looking for Vx Works trained people. These are 12-18 month contracts. If =
there is anybody interested in hearing about these opprotunities, please =
contact me by email.

Marcia Havener
Technical Recruiter
montech@mindspring.com

From jwc@ssd.ray.com  Fri Feb 28 10:53:41 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Fri Feb 28 10:53:43 PST 1997
Subject: Supported SCSI Disks
Can someone tell me if there are any pitfalls
to buying a SCSI disk drive to boot VxWorks from?

A suggested list would be ideal (since not SCSI drives
are created equal).  I have had trouble in the past using
Moto Unix with "un-supported" SCSI drives (Moto wants
specific firmware in the drive).

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com

From MikeMcQuade@connect.com  Fri Feb 28 13:02:17 1997
From: Mike McQuade <MikeMcQuade@connect.com>
Date: Fri Feb 28 13:02:19 PST 1997
Subject: Tornado and HP-UX 10.20 questions

All,

Is anyone running Tornado under HP-UX 10.20 ?

if so, is it working well for you ? any problems to report ?

We are looking at upgrading from 9.07 to 10.20 and would like
to get a feel for what lies ahead.

Looking for praises or horror stories.

Thanks In Advance.

Mike McQuade

From jwc@ssd.ray.com  Fri Feb 28 17:03:43 1997
From: Cosgrove <jwc@ssd.ray.com>
Date: Fri Feb 28 17:03:44 PST 1997
Subject: VxWorks, mvme 1604 and Changes...
Hi, Folks;

I am trying to set up a scheme that allows other devices on the VME bus
to generate an interrupt and reference data in the 1604's memory without
corruption of the 1604.

I see the GCSR register as a way to signal the 1604  (the device doesn't
generate VME Interrupts or I wouldn't need this).  Is there anything sacred
about GCSR_GROUP_ADDR of 0xc2? (VxWorks' default...)

The memory access from the bus (I already know about LOCAL_MEM_LOCAL_ADRS & 
USER_RESRERVED_MEM) seems to be controlled by VME_Axx_SLV_SIZE and VME_Axx_SLV_ADRS
(xx ==> 24 or 32).  Are there any "gotcha's" to beware of when changing these?

I have (at third party device vendor's suggestion) started from scratch on this
configuration.  They can't figure why their support package doesn't run when I 
changed a couple of things.  However, they couldn't give me a simple baseline
for their required changes, and my support from them appears to question things
they have never used before....

TIA, All...

Once more, into the breach, I go....

John Cosgrove
Raytheon
(401)842-4167 (desk)
(401)842-3511 (lab)
jwc@ssd.ray.com