Thread View: comp.sys.transputer
2 messages
2 total messages
Started by MALENT%finabo.earn
Wed, 17 Aug 1988 14:50
Problems loading transputer networks .....
Author: MALENT%finabo.earn
Date: Wed, 17 Aug 1988 14:50
Date: Wed, 17 Aug 1988 14:50
37 lines
2031 bytes
2031 bytes
Hello, I hope someone could help
I am developing Occam programs under D700C (beta 2 release)
and I have some interesting problems running my Occam
programs.
When I load a network of Transputers (T212 or T800) the
programs run randomly and I get a lot of error-flags set. When
I use the network debugger to see what went wrong, the
instructionpointer is way out of bounds. This is true for
every processor but the first in the network. I did a lot of
work trying to figure out what was wrong with my program, and
I also tried to run small simple programs but they acted the
same way. Only the first processor was running ok, all others
acted randomly.
When I studied the program I noticed that the entry point of
the program was different for the first processor, it was
higher. The memory map for every processor in the network is
obtained by running the Config-Info utility. That was also
what it supposed to be according to "Software Tools", chapter
6 "Loading transputer networks" (minimum code load point).
The I tried to include a dummy BYTE arry, so big that all
processors had the same entry point. And suprise, suprise it
worked. Funny (?).
Now, when I fixed the bug in the program, it put me to wonder
WHY. Is it the compiler, linker or loader ??????
Is there anyone who could give an answer.
Thanks Tor-E Malen
Re: Problems loading transputer networks .....
Author: davidj
Date: Tue, 06 Sep 1988 06:58
Date: Tue, 06 Sep 1988 06:58
20 lines
1532 bytes
1532 bytes
To: MALENT%finabo.earn@NSS.CS.UCL.AC.UK Subject: Re: Problems loading transputer networks ..... Newsgroups: comp.sys.transputer In-Reply-To: <8808170650.AA23442@uk.ac.ox.prg> Organization: CERN European Laboratory for Particle Physics, CH-1211 Geneva, Switzerland Cc: Bcc: If you mean 'the first processor has a higher entry point than the others...' then is this the processor that TDS is running on ? If it is then this explains why the entry pointis higher. TDS runs on the 'root' processor and in rev-c of TDS occupies the low end of memory (i.e.) on chip memory and upwards. So that your program will be loaded above this. Other processors in the network don't have to worry about tds, so the program can start low down in mem. In rev-d of TDS, the TDS code occupies the high end of the transputer memory i.e. on a 2-mbyte card it sits up near 200000. I don't really know why padding your program with a byte array mafe it work, but perhaps you were overwriting some of the code in the unpadded version, and all you did was hit the byte array in the the padded one ?????? Dave Jeffery
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads