Known Bugs
==========

There are probably plenty of bugs I don't know about, though I think
that the CPU emulation is good as long as you stick to legal, documented
opcodes. Here's a few problems I know about...

The CAPS LOCK key has to be pressed twice to ``do the right thing'' in
the emulator.  This is because the X server's handling of the CAPS LOCK
key is stateful.

The keyboard emulation still has problems where key/shifted key
character pairs on the BBC Micro keyboard are not the same as those the
keyboard in use with the emulator.

The mark/space ratio for flashing teletext is a guess.  I haven't a clue
what it really is.

The emulator possibly only works on pseudo-colour X displays.  I haven't
tried it on any others.

The MODE 7 screen emulation flickers because it updates the whole screen
when it changes, rather than just the changed bits, but I haven't worked
out a suitable way to optimise that yet.  The reason it works this way
is because of the handling of double height characters -- the context
of each line may change because of a change in the line above it.

The code for re-initialising the screen when a snapshot has been loaded
is quite horrid and is probably the source of a number of bugs.  It needs
more thought and work.

There are numerous places where I don't know how the emulator should
handle a given situation.  These are usually documented in the code,
but will cause a fatal error if encountered.

The cursor isn't implemented for bitmapped modes.

Untraced scan lines don't appear black (as they should in, say, MODE 6 with
the background set to blue).

Handling of mixed case in filenames is incomplete.  If a filename is mixed
case on the disk, it's exact name must be used in any command for loading
or running it.

Colour map handling isn't perfect and can go wrong some times.

Not exactly a bug -- more of a feature, really.  Although you don't hear
anything, the emulator still does all that's necessary from the programming
point of view to make sounds.  This means that there will be delays in
programs that play sounds before they continue.  The emulator hasn't crashed,
honest :-)
