Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07425 Misc. Minor Always Sep 18, 2019, 04:56 Sep 23, 2019, 02:50
Tester stevebourg View Status Public Platform MAME (Self-compiled)
Assigned To R. Belmont Resolution Fixed OS Linux (64-bit)
Status [?] Resolved Driver mac.cpp
Version 0.213 Fixed in Version 0.214 Build 64-bit
Summary MESS-specific 07425: macplus: Option/Command key positions swapped (U.S. PC keyboard)
Description The bottom leftmost key on a U.S. standard keyboard is Ctrl, with an Alt key to the right of Ctrl, but still left of the space bar. On a macplus system, the bottom leftmost key should be Option, with the Command key to the right of Option, but still left of the space bar. The actual experience is that Command maps to Ctrl (leftmost key) and Option maps to Alt (right of Ctrl) - creating an experience with the positions of the Options and Command keys swapped, relative to the original Mac keyboard experience. The Key Caps application that comes with Mac OS confirms this swap-like behavior. They keyboard layout illustrated by Key Caps for a macplus system indicates the emulation of a M0110 keyboard. This experience follows into other applications on the emulated system.
Steps To Reproduce Boot MacOS 6.0.8 on a macplus system. Open Key Caps application and press Ctrl and Alt keys on a PC keyboard. Compare visual aid with actual keyboard (e.g. https://deskthority.net/viewtopic.php?t=1067)
Additional Information
Flags
Regression Version
Affected Sets / Systems macplus
Attached Files
 
Relationships
There are no relationship linked to this issue.
Notes
1
User avatar
No.16950
stevebourg
Tester
Sep 23, 2019, 02:48
The 0.214GIT change did not achieve left positional Option/Command mapping to a bottom-left pair of keys on the host keyboard. Key mapping in current 0.214GIT
PORT_BIT(0x0080, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Command") PORT_CODE(KEYCODE_RALT)
PORT_BIT(0x0400, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Option") PORT_CODE(KEYCODE_LALT) PORT_CHAR(UCHAR_SHIFT_2)

Tested Working:
PORT_BIT(0x0080, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Command") PORT_CODE(KEYCODE_LALT)
PORT_BIT(0x0400, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Option") PORT_CODE(KEYCODE_LCONTROL)

Because some Classic Macintosh keyboards have a "Control" key, it might be better to map the Option to KEYCODE_LWIN, but my testing shows that LWIN does not activate/map without holding Shift before pressing the Windows key. LWIN would have to correctly map to the Windows key instead of the Shift-Windows.

Please re-open this issue and implement one of the recommendations (slight bias for a LWIN mapping to Option, with no Shift required).