Date : Tue, 06 Jan 2015 23:46:48 +0000
From : jgh@... (J.G.Harston)
Subject: Serial console active at power-on
John Kenyon wrote:
> J.G.Harston wrote:
>> Even better, create a *service* ROM that configures the serial port,
>> then just allows the MOS to continue on to entering BASIC normally
>> instead of bombing out of the startup sequence halfway through.
>
> I'm with you on that one, but my concern was about the dodgy re-entry
> qualities of the BBC OS.
A sideways ROM service routine can make almost whatever OS calls it
wants to. The API has defined entry and exit conditions, there's
certainly no problems with calling OSBYTE from a service handler. The
only problem with calling a filing system call from a service handler
/called/ /at/ /reset/ is that you have no guarantee that there is filing
system present until service call 3 has gone past, and until a language
has been entered you have no guarantee that an error handler has been
set up.
You certainly should not bomb out of the reset sequence halfway through
and force yourself into a language selection, as then everything in the
reset sequence from that point onwards is skipped. Just let the MOS
enter the language as normal. If you want to force a specific language
to be entered, then set the LanguageEnteredOnReset OSBYTE to the
language ROM you want to be entered.
> but trying to run a file system command whilst handling an FSCV routine
> could
> end in tears.)
Well, if you're handling FSCV, you're also handling the rest of the
filing system calls, so you - the filing system handler - know what
you're doing.
--
J.G.Harston - jgh@... - mdfs.net/jgh