Date : Mon, 12 Feb 1996 22:43:37 +0000 (GMT)
From : Tom Seddon <T.W.Seddon@...>
Subject: The BBC's Logical, Well-Documented and Non-Perverse Keyboard
As you might have guessed I've got the keyboard working. My problem was
that when a CA2 int was being genmerated on the keyboard column scan,
because the IER was ddisabling CA2 the bit wasn't being set in the IFR.
I've now moved my if{}s around and it works great. I claim the prize for
most complete system VIA implementation :-) (since I have input latching
as well)
Unfortunately SHIFT doesn't work but I'm going to sort that out (I think
the SHIFT key is generating an interrupt or something).
Now, I have another problem. My virtual BBC is now about 33% slower than
a real BBC, on a 486dx2-80. After I've done the obvious optimisations
(update VIA clocks every X cycles, that sort of thing), if the speed
isn't up to scratch what do people suggest?
1. Leave it 'as is'--ie slow?
2. Go as far as I can with 'C'?
3. Convert it all/bits of it to asm? I think I'd have to convert the
whole lot, or nothing; as I'm using djgpp and go32 I'd have to use the
GNU assembler and its icky 680x0-style 80x86 syntax. Don't get me wrong,
I think the 680x0 family is infinitely better (especially the assembly
language), but when I'm in front of a PC I just cannot bring myself to
put the destination second!
I'd be interested to hear your views on this.
--Tom, happy at last ;-)
PS Checking through my old e-mail I noticed that James Fidell's signature
states he now works at netcom--so what's happening to the list? In fact,
what's happened to James himself?! Are you out there...
. ** Tom Seddon ** .
/ \ E-mail: T.W.Seddon@... / \
/(o)\ /(o)\
/=====\ Call out GANDHU and be happy /=====\
/ \ / \
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^