Date : Tue, 01 Dec 2009 02:34:20 +0000
From : kevin@... (Kevin Bracey)
Subject: Tube - I/O processor memory questions
Jonathan Graham Harston wrote:
> Kevin Bracey wrote:
>
>> Exactly what memory is available on the I/O processor for a language
>> running on the language processor?
>>
>
> None. A language is only allowed to use memory in the language
> processor. It is absolutely forbidden to use any other memory.
>
Says who? All the docs I've seen state unambiguously that the I/O
OSHWM-HIMEM area is normally available for the user or language. It was
only the below-OSHWM areas where there seemed to be any doubt.
Who do you think has the rights to that area?
Clearly there are some heavy *-Commands that splat the area, as normal;
and there's the printer buffer than came with the copro that use that
area, but that's semi-apologetic about it and says it should only be
used if you're not using the I/O RAM. The clear implication being that
you may well be:
"This buffer uses RAM in the I/O processor between &4000 and &8000 and
should not be used where your own application makes use of this area of
I/O memory."
I've certainly not seen any suggestion that anyone else has gained more
rights to it than the language/user.
>
> If you are transient code running in the I/O processor, use the
> memory locations allocated and documented as available for such use
> - &A8 to &AF.
>
Aha, so that's intended for general third party service code use?
Where's that documented? The references I've seen just have it down as
for "operating system scratch space" or the like.
Kevin