summaryrefslogtreecommitdiffstatshomepage
path: root/scripts/src
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2020-07-01 02:23:16 +1000
committer Vas Crabb <vas@vastheman.com>2020-07-01 02:37:55 +1000
commit802de3995db875fcc09c912b0ff40fb74a5ffda3 (patch)
treebe547782be0d90bc86c9212cb921248cdc9be231 /scripts/src
parent706c599f7356b1749626e10cc6ef150c78a30064 (diff)
Slotified Mac 128k/512k/512ke/Plus keyboard port.
Available keyboards are us (M0110, U.S.), gb (M0110B, British), fr (M0110F, French), pad (M0120F, numeric keypad with passthrough port) and plus (M0110A, U.S. with integrated numeric keypad). The mac128k, mac512k and mac512ke drivers default to the numeric keypad with the U.S. keyboard connected to the passthrough port; the macplus driver defaults to the U.S. keyboard with integrated numeric keypad. Note that the numeric keypad may seem strange. Four of the operators work as cursor arrows if you don't hold shift. There is a comma on one of the keys, but by the time System 6 was released, Apple had decided an equals sign was more useful, so that's what it will produces on newer system versions. The U.S. keyboard with integrated numeric keypad emulates these aspects of the stand-alone keypad - pressing the operator keys on the keypad sends fake shit key down/up events, and using the arrow keys while holding shift will produces operator characters rather than selecting text. The ISO layout keyboards (M0110B and M0110F) produce different scan codes to the ANSI keyboards (M0110 and M0110A) but they don't report a different identification byte. To use an ISO keyboard, you must open the Keyboard control panel and change the layout to International (and change it back to Domestic if you switch back to an ANSI keyboard). This doesn't actually work at the moment due to issues with 6522 VIA emulation, but it will work with macplus sys603 if applied on top of revision 963a2c166d080e78e6de7fe432ed7944c59a6083. -----------------------------------------------------------------------
Diffstat (limited to 'scripts/src')
-rw-r--r--scripts/src/bus.lua16
1 files changed, 16 insertions, 0 deletions
diff --git a/scripts/src/bus.lua b/scripts/src/bus.lua
index ec18e2f7d8e..620330d6395 100644
--- a/scripts/src/bus.lua
+++ b/scripts/src/bus.lua
@@ -3509,6 +3509,22 @@ end
---------------------------------------------------
--
+--@src/devices/bus/mackbd/mackbd.h,BUSES["MACKBD"] = true
+---------------------------------------------------
+
+if (BUSES["MACKBD"]~=null) then
+ files {
+ MAME_DIR .. "src/devices/bus/mackbd/keyboard.cpp",
+ MAME_DIR .. "src/devices/bus/mackbd/keyboard.h",
+ MAME_DIR .. "src/devices/bus/mackbd/mackbd.cpp",
+ MAME_DIR .. "src/devices/bus/mackbd/mackbd.h",
+ MAME_DIR .. "src/devices/bus/mackbd/pluskbd.cpp",
+ MAME_DIR .. "src/devices/bus/mackbd/pluskbd.h",
+ }
+end
+
+---------------------------------------------------
+--
--@src/devices/bus/macpds/macpds.h,BUSES["MACPDS"] = true
---------------------------------------------------
if (BUSES["MACPDS"]~=null) then