Re: Ghost keys

From: Hans Liss <Hans_at_Liss.pp.se>
Date: Wed, 18 May 2022 18:08:14 +0200
Message-ID: <4bada020-e8d8-5e30-b90a-00a9f9681580_at_Liss.pp.se>
That's weird, I hadn't noticed that. But you're absolutely right, of course.

I found the following comment in the vice 3.5 source. Apparently the C64 
ghosting emulation is supposed to be moved into the common codebase at 
some point:

/* the following code is used to determine all lines connected to one 
given line
    in the keyboard matrix. this must be done to emulate connecting two 
arbitrary
    lines of either port by pressing more than one key on the keyboard 
at once.

    NOTE: the current code solves the matrix "digitally", and then the 
various
          analog side effects are faked into it later. For a really 100% 
correct
          result the matrix should be solved as a 8x8 resistor array, 
including
          modelling the CIA in/output stages as current sources/drains.

    NOTE: the matrix solver itself is generic enough to consider moving 
it into
          the toplevel keyboard emulation later, so it can be used by 
all machines
          with a similar keyboard matrix. (VIC20, C16 ...)
  */

/Hans

On 2022-05-18 16:14, smf wrote:
> Vice emulates ghost keys on the c64, but not the vic 20.
>
> Is this just because it hasn't been emulated? I don't have a vic 20, but
> I wondered if it suffered the same problem as c64.
>
> IE if you press and hold A, then without releasing A press S & with both
> keys held down press D then it prints the characters ASF on screen.
>
>
>
Received on 2022-05-18 19:00:02

Archive generated by hypermail 2.3.0.