Date : Wed, 15 Aug 2012 21:05:53 +0100
From : splodge@... (Richard Gellman)
Subject: Fwd: Re: Programatically "reset" a Beeb?
On 15/08/2012 20:59, J.G.Harston wrote:
> Bear in mind that this does not reset the BBC, it jumps to the BBC's
> reset
> code. No hardware will be reset, it will be in whatever state it was in
> before the reset code was entered. The only hardware that will get
> reset
> will be hardware that is reset from software.
>
> Some firmware expects hardware to be in a hardware reset state when the
> reset code is executed, and uses the fact that hardware is not in a
> reset state to conclude that the hardware is absent, and disables
> itself.
> A classic example if NFS. If you jump to !-4 while there is network
> activity, the ADLC is not in a post-reset state, and NFS disables
> itself
> as the ADLC not being in a recognised post-reset state declares that
> the
> ADLC is absent.
>
> Also, a Tube client processor won't be reset. Usually, the client will
> be waiting for an OSCLI acknowledge when the host does JMP (-4) and
> the next thing the client will receive is the Tube startup sequence:
> the host will wait for the client to send a series of characters to
> print, then the client waits for an acknowledge. The host will be
> sat waiting for the client to sent the startup text, while the client
> will be waiting for the host to send the OSCLI acknowledgement.
>
> I usually prompt the user to press Ctrl-Break:
>
> LDA #&7F:STA&FE4E
> JSR PrText:EQUS "Press Ctrl-Break":BRK
> JSR OSRDCH:JMP (&FFFC)
>
This is not a problem. The machine in question will be for display/play
purposes so not only will it not have a network interface going on, but
it is preferable for everything to be automatic rather than requiring
unfamiliar user interaction (I know it's only a simple thing, but even
the tiniest request puts people off who aren't familiar).
Similarly, while there *is* a co-processor installed (the machine is
actually a Master 512) it will be disabled unless explicitly required
(for demonstration), in which case the whole "go to beeb mode" will not
come into play.
-- Richard