<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Tue, 01 Dec 2009 23:55:22 +0000
From   : kevin@... (Kevin Bracey)
Subject: Tube - I/O processor memory questions

Sprow wrote:
> In article <4B159074.2060002@...>,
>    Kevin Bracey <kevin@...> wrote:
>   
>> is there some definite 
>> cue that this is a Break-derived entry?
>>     
>
> Entry is with C=0 for reset triggered start (hard/soft/power on).
>          with C=1 for start due to *FX142
> when your service handler matches the command it should start the language
> using OSByte 142, not just calling the language entry point!
>   
Pah! As if I'd do that. I'm Captain Tube(R). I don't touch a host BBC 
unless it's to grobble in its spare RAM. I might deign to let it carry 
my VDU output, I guess. But I'm definitely not letting it execute my 
language. We all know it was only ever intended to be an I/O processor.
> Not sure if that carry distinction makes it across the Tube though.
>   
Doesn't seem to, sadly. Experiments show C set in both cases on the 
Tube. I think we can count that as a cunning hack, rather than a proper 
API. Not found it in my manuals either.

And even if it had worked, I bet it wouldn't have held up for the 
distinction between *RUNning and restarting after Break. The Tube seems 
to try to re-enter the last thing you *RAN (*RUNned?) after a Break; not 
something I've seen documented.

It may be time to reverse-engineer EDIT a bit more, to find their 
solution. It did seem a little complex, and I didn't quite get to the 
bottom of it.

At the minute I tend to get a "Bad name" or "Bad string" error on Break 
under my banner, which is inelegant, but not the end of the world. Just 
Ctrl-Break to recover on a BBC (its default BRK handler halts), or on 
the 6502 2nd Proc or Master it drops to the Supervisor prompt, giving 
you a couple more options.

Kevin
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>