Date : Mon, 05 Jan 2015 16:57:51 +0000
From : etljwk@... (John Kenyon)
Subject: Serial console active at power-on
On 04/01/2015 16:23, J.G.Harston wrote:
> nicola giacobbe wrote:
>> but since I want to remove the keyboard
> If you remove the keyboard a BBC will hang as it "sees" that both the
> Ctrl and Shift keys are being pressed, and what happens if both the Ctrl
> and Shift keys are being pressed? I wrote the "Null Keyboard" ROM module
> to get around this:
>
> http://mdfs.net/Software/BBC/SROM/Modules/
>
> On RESET it detects if there is no keyboard, then intercepts KEYV so
> that when the Shift and Ctrl keys are tested it returns "Not Pressed".
> Of course, if there is no keyboard, then the BBC also "sees" that all
> the keyboard links are made, so does a Shift-Break. If you have no
> filing system then you could either modify NullKeyboard and add OSBYTE
> 255,247,0:OSBYTE 3,1:OSBYTE 2,1 or put a !BOOT file in a ROMFS ROM. (See
> http://mdfs.net/System/ROMs/SROM/ROMFiler)
>
> Or, you could be even cleverer and put a Serial Tube client in ROM
> configured to connect to a Serial Host on startup, so the BBC
> effectively becomes a second processor to the remote (controlling)
> computer. Not only does this give you console in/console out via the
> serial port, but also filing system access to the remote computer. See
> http://mdfs.net/Software/Tube/Serial Note: I don't think I've tested it
> with no keyboard, so I may have to do a few tweeks to it.
>
Why don't you tell the Beeb that there's no key being pressed.
http://www.cyberspice.org.uk/blog/2011/04/27/the-bbc-model-b-microcomputer-keyboard-how-it-works/
indicates that a BBC B keyboard is a device which requires 9 output
lines and a single input line (CA2).
Given that TTL tends to float towards 1, all you have to do is tie the
CA2 pin to ground and the keyboard will never report a single keypress,
and the keyboard scanning problem goes away. The only downside is that
you can't set the "Break acts as shift break" option link, but if your
end application runs out of a language ROM, that isn't a big deal anyway.
If I were doing this I'd crimp a short length of wire onto to contacts
and stick them in the appropriate holes of a molex shell.
/John