Subject: Re: mop loadaddr and SCB
To: Mats O Jansson <maja@celsiustech.se>
From: Bertram Barth <bertram@ifib.uni-karlsruhe.de>
List: port-vax
Date: 04/02/1997 16:11:29
> > It might be that my problems with mopboot/LANCE/if_le.c on 3100/76
> > (crashes with SCB2NDINT) are related to the fact that mopboot when
> > loaded at addr 0x00 overwrites SCB located at 0x6800.
[...]
> Hmm, this is my second answer to this message.
> 
> It might be srt0.s that is causing trouble. I don't have the latest source
> available, but isn't the whole move of the code from one place to another
> done with a single movc5? The length parameters to movc5 is of size word.
> So movc5 can't move chunks larger than 64k. But if the size (text+data+bss)
> is larger the whole program will not be moved. And whole bss might not be
> zeroed out. But since the length parameter in is mod 64k some strange 
> behaviour can be expected... (the same code exists in start.s). 

I think the way i asked my question was misleading, sorry.

the problem is not the relocation of the boot/mopboot image but in
the mchk exception raised when trying to rarp and net-load the kernel. 
It seems that are parity problems between lance and cpu, that's why 
this mchk exception with code 0x11 is raised.

Since SCB is already overwritten by/with the boot image, the machine
crashes because of the garbage found in SCB. I just wanted to try/check
if the "builtin" SCB handles this exception more gracefully, thus i
wanted to load the boot image to another address so that SCB isn't
clobbered.

Ciao,
	bertram