Subject: Re: Booter
To: None <briggs@cray-ymp.acm.stuorg.vt.edu>
From: Matias Giovannini <MGiovann@getinfo.org.ar>
List: macbsd-development
Date: 05/03/1994 17:37:15
In Regards to your letter <199405030043.UAA12466@cray-ymp.acm.stuorg.vt.edu>:
> Well, I've pounded on this a bit more... It looks like it's dying in a
> loop that looks something like this:
>
> move.l from, A0 ; This is something like 16MB of 20MB machine
> move.l to, A1 ; This is zero.
> move.l len, D0 ; This is 0x39000 or something close ;-)
>
> @again:
> move.l (A0)+, (A1)+
> subq.l #1, D0
> bne @again
>
> The values all look alright (after all, it works on my SE/30 ;-).
> As far as I can tell, it's dying somewhere near the beginning.
> Right above that, it ORs 0x700 into the status register to knock
> off any interrupts. We *are* writing over the vector table, so if
> we were getting some exception, we'd be rather hosed, but I can't
> see how that's happening. Then again, I can't see how it's not
> happening. I don't think I'm getting as far as the "jmp (A0)" that
> follows the loop. I've tried making that group of pages non-cacheable
> by modifying the page tables.
Have you checked out the processor mode? Having a privilege violation
without the exception vector properly set up is something I wouldn't
try late night at home... =)
----
Matias Giovannini -- Buenos Aires, Argentina
MGiovann@getinfo.org.ar
------------------------------------------------------------------------------