#: 18192 S12/OS9/68000 (OSK)
27-May-93 02:54:31
Sb: #18182-#68k bus errors
Fm: Chris Hann (Mass UK) 100064,1431
To: Chris Hann (Mass UK) 100064,1431 (X)
OK... I'll have a go at answering this myself (having read the '040
manuals and run a few tests).
When an access error occurs on the '040 it creates a type 7 stack
frame on the supervisor stack, this contains the PC at the error,
the CCR, the effective address, the 'broken pipe' information
(pending accesses in the pipeline at the error) and some other
stuff.
The processor then disables tracing and vectors to the access error
according to the vector in the vector table which is located
according to the VBR (since you need to be in supervisor state to
see this I can't tell exactly where it goes yet). OS-9 then finds
some space puts it's address in a5 and stacks the registers. It then
does some other stuff including overwriting the stack frame with the
register set (already stored at a5 remember) and some other stuff.
In the process it overwrites the really interesting bit ( the
effective address, at tleast I presume that is the access address
that went wrong ). It then drops you back into user mode and jumps
to your service routine leaving only the register set to work from
and without supervisor mode access.
I find this a little irritating (given that I'm correct). I'd like
to think I am wrong, however I cant reconcile the contents of the
supervisor stack with the '040 manual. There is too much data there
for it to be any other trap stack frame and all the registers have
changed, the manual says nothing about copying them to (a5)+ so I am
left to presume that OS-9 has deliberately hamstrung my ability to
find out which bit of hardware has temporarily bitten the dust.
AAAAAGH...
Obviously I could be more pleased, especially since this is a
specific port to the '040. Radstone say that they ship it in and
ship it out. Microware say not us mate we supply it to Radstone and
it's their lookout from then on.
Am I wrong or what??
Got any suggestions?
Thanks people.
Chann (mister slightly irritated 1993).
There is 1 Reply.
|