techcompliant / TC

8 stars 0 forks source link

CTRL+x return 24 that is not defined in keyboard spec #12

Open orlof opened 8 years ago

orlof commented 8 years ago

...same kind of problems with all other CTRL combinations.

I think some of the "old" emulators returned just 'x' with hwi (A=1) and then you had to query with hwi (A=2) whether CTRL was also down.

NOTE: SHIFT works similarly, but of course SHIFT+a will return 'A' instead of 'a'.

There were also other implementations e.g. CTRL and SHIFT were also returned as separate keys with hwi (A=1).

techcompliant commented 8 years ago

Can you confirm what is expected to be in the buffer after a Ctrl + Key?

orlof commented 8 years ago

Two choices (up to you to choose):

  1. Buffer contains only KEY (CTRL is NOT added to the buffer and DCPU developer must check the CTRL state separately with interrupt 2: CHECK_KEY)
  2. Buffer contains CTRL and KEY (this option is more versatile, as it allows DCPU developer to either use CTRL from buffer or act just as in option 1 by discarding the CTRL from the buffer)

Other emulators used to choose one of these options.

(edit) Anyway, keys should be added to buffer at key down -event.

paultech commented 8 years ago

@andyleap @alfie275 What's our decision here?

paultech commented 7 years ago

@andyleap Re-ping after changes to keyboard. Status?

andyleap commented 7 years ago

Spec completed, still need to implement