On the left is the HOST connector, this is an 8pin mini-DIN female socket into which a HOST specific cable is plugged. The cable interfaces the SharpKey to either a mouse or keyboard port on a particular host, ie. Sharp MZ-2800.
On the right is the PS/2 connector, this is a 6pin mini-DIN female socket into which a PS/2 keyboard or PS/2 mouse is plugged. This socket is hot-swappable so it is possible to unplug a device and re-insert it whilst the interface is powered on. Plugging a different device of the same type is possible but changing from a keyboard to a mouse/vis-a-viz is not possible as it would require the HOST cable to be changed as well (ie. if the HOST side is connected to the keyboard input of a Sharp X68000 and the PS2 side to a PS/2 Keyboard, you would need to change the HOST side to a X68000 mouse cable if you wanted to connect a PS/2 Mouse).
LED State | Occurrence | Description |
---|---|---|
On | During power up | Lights for 1 second then turns off. This indicates normal power up and initialisation successful. |
Normal use | PS/2 Keyboard or mouse not connected, Bluetooth device not paired. | |
Off | During power up | Device failure. |
Normal use | Device running normally. | |
Pulsing | Normal use | LED lights briefly on each keyboard key pressed. |
WiFi Selection | LED pulses 1 flash per 0.5 seconds when the WiFi key is being pressed for more than 2 seconds and the SharpKey indicates configured WiFi Client/Access Point mode selected. | |
LED Pulses 1 flash per 0.25 seconds when the WiFi key is being pressed for more than 5 seconds and the SharpKey indicates default parameter Access Point mode selected. | ||
Bluetooth Pairing | LED Pulses 1 flash per 0.125 seconds when the WiFi key is being pressed for more than 10 seconds and Bluetooth Pairing mode selected. | |
NVS Reset | LED Pulses 1 long flash per second when the WiFi key is being pressed for more than 15 seconds and NVS Reset is selected. |
Time Switch Depressed | LED | Feature |
---|---|---|
1 second | Off. | Cancel any selected feature, ie. WiFi mode or Bluetooth pairing. |
2 key presses in 1 second | SharpKey reboots and LED will light until a key is pressed or mouse moved. | Reboot SharpKey. Used if you need to reboot the SharpKey, for example, changing from PS/2 to Bluetooth after disconnecting PS/2 device. |
2 - 4 seconds | Flashes 2 times per second. | Select configured WiFi mode, Access Point or Client. |
5 - 9 seconds | Flashes 4 times per second. | Select default parameter WiFi Access Point mode. |
10 - 14 seconds | Flashes 8 times per second. | Select Bluetooth Pairing mode. |
15 - 19 seconds | Flashes one long pulse per second. | Select NVS Reset mode (clear all settings and restore to factory mode). |
See the relevant section for more information on accessing and using the different features.
NB. Bluetooth will only be enabled when no PS/2 device is connected.
Once the cables have been connected, power on your machine and use the PS/2 keyboard/mouse or Bluetooth keyboard/mouse as normal. If any keyboard keys do no map correctly to the host keys, you can use the IoT web interface to add key mappings as required.NB. Bluetooth devices require pairing and once paired, on power up, may take a few seconds to connect. When using Bluetooth at power up, wake the bluetooth devices up by repeatedly hitting the shift key or shaking the mouse, this is necessary as the device will be in sleep mode and the SharpKey wont be able to connect.
- 2-5 seconds it will flash twice per second which indicates WiFi Enable Mode is selected if you release the switch.
- 5-10 seconds it will flash 4 time per second indicating Default WiFi Mode is selected if you release the switch.
- 10-15 seconds it will flash 8 times per second indicating Bluetooth Pairing Mode selected if you release the switch.
Release the switch after 10 seconds and the SharpKey will enter pairing mode and connect with any HID devices it finds in Pairing mode. The SharpKey stays in pairing mode for 60 seconds during which time it will pair with as many HID devices it finds.
Device authentication (PIN entry) has been programmatically disabled for the SharpKey as it has no means to display a pairing PIN. This method generally works well for most BLE and BT Classic devices but should your device require a PIN which cannot be disabled, after about 10 seconds the Blue LED will start flashing with 3 long pulses, repeated every second. If you see the LED flashing then enter the PIN code '1234' on your keyboard and press ENTER. If the LED continues to flash, repeat the PIN entry until it pairs and the LED stops flashing. On future power cycles of the SharpKey it will be necessary to shake or wake your bluetooth device so that it reconnects. This can be achieved by pressing the Shift key repeatedly on your keyboard or moving your mouse. If the bluetooth devices isnt woken, the SharpKey wont be able to see it and connect. It can take 1-10 seconds to reconnect depending on your device and range from the SharpKey (the further the distance the longer it may take due to the ESP32 Bluetooth transceiver not being very powerful).- Wyse KB-3926 UK Layout
- Generic OADG109 Japanese Layout
- Sanwa SKB-L1 Japanese Layout
- Perixx Periboard 810 UK Layout
- OMOTON K8508 UK Layout
There exists however an edge case of a key not working or not working the way it should for an individual user, also other users may find their regional (country) keyboards not working well and these shortcomings needs to be addressed by the user who has more hands on experience. To this end, the SharpKey can be configured to map any PS/2 code or code combinations into a key sequence expected by the active host. Bluetooth scancodes are internally mapped to PS/2 scancodes so all keyboard type (PS/2 or Bluetooth) mapping is performed using PS/2 codes.
In order to make changes the SharpKey is equipped with an in-built web server using WiFi technology and can be configured in Access Point mode (you connect your WiFi device to the SharpKey) or Client mode where the SharpKey uses stored credentials to connect with your home network router. To access the web interface, the SharpKey needs to enable the wifi Access Point or Client transceiver. This is done via the WiFi/BT Config switch. There are two WiFi modes, Access Point and Client:- Access Point is where the SharpKey acts as a WiFi router and you search via your computer/phone wifi settings for the WiFi network: sharpkey and connect using the password: sharpkey. The SSID and password can be changed in the configuration but should you forget your changes, pressing the WiFi/BT switch for more than 5 seconds will force the SharpKey to enter Access Point mode using the aforementioned defaults.
- Client mode is where the SharpKey connects to your home network, details of which must be pre-entered into the SharpKey via the Access Point mode. Once set, each time the SharpKey enters WiFi mode it will automatically try to connect to your router, using DHCP (your router allocates it an address) or with a fixed address you provide.
The steps for accessing each of the modes can be seen in the table below.
Mode | How to Access | Description |
---|---|---|
Access Point mode. Initial setup or by forcing default mode. |
Initial factory setup, pressing the WiFi switch for 5-10 seconds will enter WiFi Access Point mode. If a bad configuration has been made or you have a network change, press the WiFi switch for 5-10 seconds to load default parameters and enter Access Point mode. | Search on your computer or phone WiFi settings menu for the network:sharpkey. Connect with this network and enter the password:sharpkey. After successful connection, open a web browser and enter in the address bar: http://192.168.4.1 - you will now be able to access the SharpKey and configure the WiFi via WiFi Manager. |
Access Point mode. | Once the SharpKey has been configured and you selected AP Mode in the WiFi Manager, pressing the WiFi switch for 2-5 seconds will enter Access Point mode. | This mode is where you have selected Access Point mode via the WiFi Manager menu in the browser configuration. You can change the network name (SSID), password and IP address range to suit your requirements. In this mode you will always connect to the SharpKey by joining its network in the WiFi settings menu of your computer or phone and access the configuration web page using the settings you provided. |
Client (also called Station) mode. | Once the SharpKey has been configured and you selected Client Mode in the WiFi Manager, pressing the WiFi switch for 2-5 seconds will enter Client mode. | This mode allows the SharpKey to connect with your network via WiFi login to your router. During the initial connection in Access Point mode, under the WiFi Manager menu, select and setup Client mode with your router credentials. Once configured, everytime you enable WiFi the SharpKey will connect to your router and be accessible by an allocated IP address on your network or a fixed IP address you entered in the WiFi Manager menu. |
Parameter | Value |
---|---|
SSID (network name) | sharpkey |
Password | sharpkey |
Access Point IP address | 192.168.4.1 |
Router address | 192.168.4.1 |
DHCP assigned IP range | 192.168.4.2 - 192.168.4.254 |
If you decide to use Access Point mode, you can leave it configured with the defaults, or change them with the Configure WiFi panel below.
Option | Description |
---|---|
WiFi Mode | Select the type of mode required, in this instance click on Access Point. |
SSID | This is the network name you will see on your computer or phone when you go to the Wifi settings menu and scan for available networks. Either leave it as default or change to a meaningful name. |
Password | This is the password your computer or phone will request when you choose to join the network identified by SSID. |
IP Address | This is the IP address range the SharpKey will use for its DHCP server which allocates any connecting clients requesting an address. This value should end with a .1 which is assigned to the SharpKey and the DHCP server will allocate addresses xxx.xxx.xxx.2 - 254 to a connecting client. |
Netmask | This is the network mask used for filtering and masking IP addresses. Unless you are network savvy, always set this address to 255.255.255.0. |
Gateway | This is the gateway a computer or phone needs to route network requests. This should be the same as IP Address as the SharpKey doesnt perform routing. |
Option | Description |
---|---|
WiFi Mode | Select the type of mode required, in this instance click on Client. |
SSID | This is the network name you want the SharpKey to join with in order to establish a connection with your home network. |
Password | This is the password the SharpKey will provide to your router to authenticate itself and establish a connection. |
DHCP Mode | This specifies wether you want your router to provide all network information (Enabled) or you will manually provide it (Disabled). |
The panel will appear as indicated below:
Option | Description |
---|---|
IP Address | This is the address the SharpKey will use for itself on your home network. You will connect to the SharpKey using this address in your browser, ie. http://<IP Address>. |
Netmask | This is the filter and masking parameter in order for your SharpKey to occupy parts of a subnet. Unless your network savvy, enter 255.255.255.0 |
Gateway | This is the IP address of the device on your network which acts as a gateway to the internet/intranet. The SharpKey is not internet aware so enter the same value as the IP Address above. |
The updated panel will appear as indicated below:
- a Version Information panel which shows the firmware modules installed along with their version number and the disk filesystem version. This information can be used for feature verification or fault tracking/raising a support ticket and also to view versions to see if an update pack offers newer software or fixes.
- an ESP32 Partitions panel which shows the layout of the NVS Flash RAM on the ESP32 SoC which powers the SharpKey. The information of interest is the Partion Names: ota_0, ota_1 and filesys. The SharpKey uses a fault tolerant update system in a round robin method. If the current firmware is running on partition ota_0 then any updates will be placed onto ota_1. After update, should the SharpKey fail to boot an automatic rollback is performed and the SharpKey will reboot off ota_0. This is not the case for the filesystem filesys, if an update fails then the filesystem may be corrupted and the web interface will fail to work. In this case an external programming probe needs to be connected to the SharpKey in order to reflash the filesystem. This is a rare occurrence and only happens due to software bugs or power outages.
- a Firmware Upload panel which allows you to select a new firmware file and upload it into the SharpKey.
- a File Pack Upload panel which allows you to select a new filesystem image file and upload it into the SharpKey.
In order to upgrade the firmware, click on the Select file button in the Firmware Upload panel and choose a stored or downloaded firmware image. Validation will occur before programming so if you choose the wrong image, the SharpKey will refuse to update. Validation will also check the version and block the update if the version chosen is the same as the current firmware. Once selected, the panel will update as follows:
- to add a column, click the green + symbol and a blank line will appear on the row below the +. All values will be set to disabled and require completion to become active.
- to delete a single row, click the red - symbol ON the row you wish to delete.
- to delete multiple rows, click on the Tick Box to the right of each row to be deleted. When one or more tick boxes are ticked, the blue Delete button will be made active, press Delete and the rows will be removed.
- to swap TWO rows, click the Tick Box to the right of each row, TWO rows only should be ticked. Once two rows have been ticked, the blue Swap button will be made active, press Swap and the rows will be swapped.
- to save the keymap (make it active on next reboot), once you have made data changes the blue Save button will be made active, click on it to save the changes.
- once changes have been made, the blue Reload button will be made active, clicking this button at any time will discard all changes and reload the keymap.
Messages will be displayed in the status box just above the buttons, this is where errors will be reported if any occur.
Please see the sections below for more specific keymap detail. MZ-2500 Keyboard Map.
Row D7 D6 D5 D4 D3 D2 D1 D0
----------------------------------------------------------------------------------
0 F8 F7 F6 F5 F4 F3 F2 F1
1 KP - KP + KP . KP , KP 9 KP 8 F1O F9
2 KP 7 KP 6 KP 5 KP 4 KP 3 KP 2 KP 1 KP 0
3 BREAK RIGHT LEFT DOWN UP RETURN SPACE TAB
4 G F E D C B A / ?
5 O N M L K J I H
6 W V U T S R Q P
7 , < . > _ YEN | ^ 'Âż Z Âż Y X Âż
8 7 ' 6 & 5 % 4 $ 3 # 2 " 1 ! 0
9 [ { @ ` - = ; + : * 9 ) 8 (
10 KP / KP * ESC BACKSPACE INST/DEL CLR/HOME COPY ] }
11 CTRL KANA SHIFT LOCK GRAPH
12 KJ2 KJ1
13 HELP ARGO
Col 0 1 2 3 4 5 6 7 8 9 10 11 12 13
--------------------------------------------------------------------------------------------------------------------------------------
D0 F1 F9 KP 0 TAB / ? H P X 0 8 ( ] } GRAPH KJ1 ARGO
D1 F2 F10 KP 1 SPACE A I Q Y 1 ! 9 ) COPY LOCK KJ2 HELP
D2 F3 KP 8 KP 2 RETURN B J R Z 2 " : * CLR/HOME SHIFT
D3 F4 KP 9 KP 3 UP C K S ^ 'Âż 3 # ; + INST/DEL KANA
D4 F5 KP , KP 4 DOWN D L T YEN | 4 $ - = BACKSPACE CTRL
D5 F6 KP . KP 5 LEFT E M U _ 5 % @ ` ESC
D6 F7 KP + KP 6 RIGHT F N V . > 6 & [ { KP *
D7 F8 KP - KP 7 BREAK G O W , < 7 ' KP /
ie. Make Row 1 = 0x01, Make Key 1 = 0x80 - Using the MZ-2500 matrix map below, this combination would see the KeyPad Minus key being pressed on the output matrix which is sent to the MZ-2500 as keyboard input, the MZ-2500 would then react by detecting and acting on a KeyPad Minus key being pressed.
In the mapping table, for the matrix Row and Key values, a set bit = 1 and a reset bit = 0 which is the inverse of the actual MZ-2500/MZ-2800 keyboard matrix state but makes understanding and configuration easier. If the Row is set to 255 (0xFF), which is a marker value indicating an unused parameter, then that particular entry is ignored. The following table describes each configurable parameter forming a single key map.Parameter | Description |
---|---|
PS/2 KeyCode | This is the raw PS/2 Keyboard Code for any given key excluding E0/E1 or Break modifiers which are reflected in the PS/2 Control Key flag. |
PS/2 Control Key | This is the control keys to be matched for any given PS/2 KeyCode. They include SHIFT, CTRL, CAPS, ALT, ALTGR, GUI, FUNC and BREAK (not break key but key break or release). |
For Keyboard | This is a flag to specify a particular PS/2 or Bluetooth keyboard model(s) to which this map will be active if the connected keyboard matches. |
For Host Model | This is a flag to specify a model or set of models the key map is active for. The MZ-2500 can emulate an MZ-80B, MZ-2000 and MZ-2500 and the MZ-2800 can emulate an MZ-2500 or MZ-2800. |
Make Row 1 | This is the row in the MZ-2500/MZ-2800 keyboard matrix to activate when the defined PS/2 KeyCode matches. |
Make Key 1 | This is the column in the MZ-2500/MZ-2800 keyboard matrix which will be activated for a matching PS/2 KeyCode. |
Make Row 2 | Same as Make Row 1, second row activation if required. 0xFF = disabled. |
Make Key 2 | Same as Make Key 1. |
Make Row 3 | Same as Make Row 1, third row activation if required. 0xFF = disabled. |
Make Key 3 | Same as Make Key 1. |
Break Row 1 | This is the row in the MZ-2500/MZ-2800 keyboard matrix to be de-activated, if set, when the defined PS/2 KeyCode matches. |
Break Key 1 | This is the column in the MZ-2500/MZ-2800 keyboard matrix which will be de-activated when PS/2 KeyCode matches. |
Break Row 2 | Same as Break Row 1, second row to be de-activeted if required. oxFF = disabled. |
Break Key 2 | Same as Break Key 1. |
Modifier Key | Value | Modifier Key | Value | Modifier Key | Value | Modifier Key | Value |
---|---|---|---|---|---|---|---|
SHIFT | 0x01 | CTRL | 0x02 | CAPS | 0x04 | ALT | 0x08 |
ALTGR | 0x10 | GUI | 0x20 | FUNC | 0x40 | BREAK | 0x80 |
Keyboard Model | Value | Keyboard Model | Value | Keyboard Model | Value | Keyboard Model | Value |
---|---|---|---|---|---|---|---|
UK WYSE KB3926 | 0x01 | JAPAN OADG109 | 0x02 | JAPAN Sanwa SKB-L1 | 0x04 | Keyboard 4 | 0x08 |
Keyboard 5 | 0x10 | Keyboard 6 | 0x20 | UK Periboard 810 (BT) | 0x40 | UK OMOTON K8508 (BT) | 0x80 |
Host Model | Value | Host Model | Value | Host Model | Value | KHost Model | Value |
---|---|---|---|---|---|---|---|
MZ80B | 0x01 | MZ2000 | 0x02 | MZ2500 | 0x04 | MZ2800 | 0x08 |
Default Mapping Table
MZ-2500 Key | MZ-2800 Key | PS/2 Key | Description | PS/2 Keyboard |
---|---|---|---|---|
LOCK | LOCK* | Caps Lock | Shifts and locks upper/lower case characters. Press once to lock upper case, LED light comes on, press again to release and return to lower case characters. | Wyse KB-3926 |
HELP | HELP* | F11 | HELP functionality | Â |
BREAK | BREAK* | Pause | BREAK key. PS/2 normally use CTRL+BREAK to generate a BREAK but the MZ-2500 requires SHIFT+BREAK which doesnt yield BREAK, thus a mapping is created for SHIFT+PAUSE (which is also the same key as BREAK) to create an MZ-2500 BREAK. | Â |
COPY | COPY* | F12 | COPY functionality | Â |
CLR | CLR* | Shift+Home | Clear screen | Â |
HOME | HOME* | Home | Set cursor to 0,0 position ie. HOME. | Â |
INST | INST* | Insert | Insert characters at cursor position. | Â |
DEL | DEL* | Delete | Delete characters from cursor position. | Â |
ARGO | ARGO | Print Screen | ARGO functionality. ie. Bring up applets menu in BASIC v2 | Â |
GRAPH | GRAPH | Left GUI | Change to Graphics character entry. | Â |
Yen | Yen | |\ | Insert a Yen symbol | Â |
KANA | KANA | Right GUI | Select KANA functionality. | Â |
KJ1 Sentence | KJ1 Sentence | Left ALT | KJ1 functionality | Â |
KJ2 Transform | KJ2 Transform | Right ALT | KJ2 functionality | Â |
 | PREVIOUS* | PGDN | Previous Key |  |
 | CANCEL* | Right CTRL | Cancel Key |  |
 | SF1 |  | Special Function 1 | Not yet mapped |
 | SF2 |  | Special Function 2 | Not yet mapped |
 | SF3 |  | Special Function 3 | Not yet mapped |
 | SF4 |  | Special Function 4 | Not yet mapped |
* = Written in Japanese on the MZ-2800.
All other keys are as per the symbol on the PS/2 keyboard. The Num Lock key toggles the keypad between numeric and cursor functions. The keyboard mapping passes through modifier keys unless there is an exact map, ie. SHIFT. Thus key combinations not catered for in the mapping table may work, ie. SHIFT+KANA, albeit you can always edit the map via the web interface above.
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
TENKEY | KIN | REP | GRPH | CAPS | KANA | SFT | CTRL |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
---|---|---|---|---|---|---|---|---|
BYTE1 | Q | W | E | A | D | Z | X | C |
BYTE2 | 7 | 4 | 1 | 8 | 2 | 9 | 6 | 3 |
BYTE3 | ESC | 1 | - | + | * | HTAB | SP | RET |
Parameter | Description |
---|---|
PS/2 KeyCode | This is the raw PS/2 Keyboard Code for any given key excluding E0/E1 or Break modifiers which are reflected in the PS/2 Control Key flag. |
PS/2 Control Key | This is the control keys to be matched for any given PS/2 KeyCode. They include SHIFT, CTRL, CAPS, KANA, GRAPH, GUI, FUNC and BREAK (not break key but key break or release). |
For Keyboard | This is a flag to specify a particular PS/2 or Bluetooth keyboard model(s) to which this map will be active if the connected keyboard matches. |
For Host Model | This is a flag to specify a model or set of models the key map is active for. The X1 came in 3 main releases, the Original series, Turbo and TurboZ series. |
X1 Mode | This is a flag which specifies the keyboard mode, for an X1 it has 2 modes, a Mode A which is standard operation and Mode B which is gaming mode. |
X1 KeyCode1 | This parameter, in Mode A, specifies the actual Key Code the Sharp X1 expects for normal keyboard input. In Mode B this parameter specifies Byte 1 of the 24bit word, each bit within specifies a specific key being pressed. |
X1 KeyCode2 | This parameter, in Mode B, specifies Byte 2 of the 24bit word, each bit within specifies a specific key being pressed. |
X1 Control Key | This parameter, in Mode A, specifies the keyboard modifiers, ie. SHIFT, which are being activated along with the keycode. In Mode B this parameter specifies Byte 3 of the 24bit word, each bit within specifies a specific key being pressed. |
Modifier Key | Value | Modifier Key | Value | Modifier Key | Value | Modifier Key | Value |
---|---|---|---|---|---|---|---|
SHIFT | 0x01 | CTRL | 0x02 | CAPS | 0x04 | KANA | 0x08 |
GRAPH | 0x10 | GUI | 0x20 | FUNC | 0x40 | BREAK | 0x80 |
Keyboard Model | Value | Keyboard Model | Value | Keyboard Model | Value | Keyboard Model | Value |
---|---|---|---|---|---|---|---|
UK WYSE KB3926 | 0x01 | JAPAN OADG109 | 0x02 | JAPAN Sanwa SKB-L1 | 0x04 | Keyboard 4 | 0x08 |
Keyboard 5 | 0x10 | Keyboard 6 | 0x20 | UK Periboard 810 (BT) | 0x40 | UK OMOTON K8508 (BT) | 0x80 |
Host Model | Value | Host Model | Value | Host Model | Value | Host Model | Value |
---|---|---|---|---|---|---|---|
Sharp X1 Original | 0x01 | Sharp X1 Turbo | 0x02 | Sharp X1 TurboZ | 0x04 |
Mode | Value | Mode | Value |
---|---|---|---|
Mode A | 0x01 | Mode B | 0x02 |
Modifier Key | Value | Modifier Key | Value | Modifier Key | Value | Modifier Key | Value |
---|---|---|---|---|---|---|---|
SHIFT | 0x01 | CTRL | 0x02 | CAPS | 0x04 | KANA | 0x08 |
GRAPH | 0x10 | GUI | 0x20 | FUNC | 0x40 | BREAK | 0x80 |
Default Mapping Table
X1 Key | PS/2 Key | Description |
---|---|---|
XFER | F10 | Actuate XFER key |
HELP | F11 | Actuate HELP key |
COPY | F12 | Actuate COPY key |
Roll Up | PGUP | Actuate Roll Up key |
Roll Down | PGDN | Actuate Roll Down key |
CLR | SHIFT + HOME | Actuate CLR key |
ARGO | PRTSCR | Actuate ARGO key |
BREAK | PAUSE | Actuate BREAK key |
GRAPH | LeftGUI | Actuate GRAPH key |
KJ1 Sentence | LeftALT | Actuate KJ1 key |
KJ2 Transform | RightALT | Actuate KJ2 key |
KANA | RightGUI | Actuate KANA key |
All other keys are as per the symbol on the PS/2 keyboard. The Num Lock key toggles the keypad between numeric and cursor functions. The keyboard mapping passes through modifier keys unless there is an exact map, ie. SHIFT. Thus key combinations not catered for in the mapping table may work, ie. SHIFT+KANA, albeit you can always edit the map via the web interface above.
X68000 Scan Codes
,---. ,---. ,-------------------, ,-------------------. ,-----------. ,---------------.
| 61| | 62| | 63| 64| 65| 66| 67| | 68| 69| 6A| 6B| 6C| | 5A| 5B| 5C| | 5D| 52| 53| 54|
`---' `---' `-------------------' `-------------------' `-----------' `---------------'
,-----------------------------------------------------------. ,-----------. ,---------------.
| 01| 02| 03| 04| 05| 06| 07| 08| 09| 0A| 0B| 0C| 0D| 0E| 0F| | 36| 5E| 37| | 3F| 40| 41| 42|
|-----------------------------------------------------------| |------------ |---------------|
| 10 | 11| 12| 13| 14| 15| 16| 17| 18| 19| 1A| 1B| 1C| | | 38| 39| 3A| | 43| 44| 45| 46|
|------------------------------------------------------. 1D | `---=====---' |---------------|
| 71 | 1E| 1F| 20| 21| 2l| 23| 24| 25| 26| 27| 28| 29| | ___| 3C|___ | 47| 48| 49| 4A|
|-----------------------------------------------------------| | 3B|---| 3D| |-----------|---|
| 70 | 2A| 2B| 2C| 2D| 2E| 2F| 30| 31| 32| 33| 34| 70 | `---| 3E|---' | 4B| 4C| 4D| |
`-----------------------------------------------------------| .---=====---. |-----------| 4E|
| 5F| 55 | 56 | 35 | 57 | 58 | 59 | 60| | 72 | 73 | | 4F| 50| 51| |
`---------------------------------------------' `-----------' `---------------'
Parameter | Description |
---|---|
PS/2 KeyCode | This is the raw PS/2 Keyboard Code for any given key excluding E0/E1 or Break modifiers which are reflected in the PS/2 Control Key flag. |
PS/2 Control Key | This is the control keys to be matched for any given PS/2 KeyCode. They include SHIFT, CTRL, CAPS, ALT, ALTGR, GUI, FUNC and BREAK (not break key but key break or release). |
For Keyboard | This is a flag to specify a particular PS/2 or Bluetooth keyboard model(s) to which this map will be active if the connected keyboard matches. |
For Host Model | This is a flag to specify a model or set of models the key map is active for. The MZ-2500 can emulate an MZ-80B, MZ-2000 and MZ-2500 and the MZ-2800 can emulate an MZ-2500 or MZ-2800. |
X68K KeyCode | This parameter represents the key value to be sent to the X68000 when the PS/2 KeyCode + PS/2 Control Key are matched. |
X68K Control Key | This parameter represents the control keys which are sent to the X68000 when the PS/2 KeyCode + PS/2 Control Key are matched. |
Modifier Key | Value | Modifier Key | Value | Modifier Key | Value | Modifier Key | Value |
---|---|---|---|---|---|---|---|
SHIFT | 0x01 | CTRL | 0x02 | CAPS | 0x04 | KANA | 0x08 |
GRAPH | 0x10 | GUI | 0x20 | FUNC | 0x40 | BREAK | 0x80 |
Keyboard Model | Value | Keyboard Model | Value | Keyboard Model | Value | Keyboard Model | Value |
---|---|---|---|---|---|---|---|
UK WYSE KB3926 | 0x01 | JAPAN OADG109 | 0x02 | JAPAN Sanwa SKB-L1 | 0x04 | Keyboard 4 | 0x08 |
Keyboard 5 | 0x10 | Keyboard 6 | 0x20 | UK Periboard 810 (BT) | 0x40 | UK OMOTON K8508 (BT) | 0x80 |
Host Model | Value | Host Model | Value | Host Model | Value | Host Model | Value |
---|---|---|---|---|---|---|---|
X68000 Original | 0x01 | ACE | 0x02 | Expert | 0x04 | Super | 0x08 |
Pro | 0x10 | XVI | 0x20 | Compact | 0x40 | 68030 | 0x80 |
Modifier Key | Value | Modifier Key | Value | Modifier Key | Value | Modifier Key | Value |
---|---|---|---|---|---|---|---|
SHIFT | 0x80 | RELEASESHIFT | 0x40 | SHIFT | 0x01 |
X68000 Key | PS/2 Key | Description |
---|---|---|
Hiragana | RightCtrl + F1 | Actuates Hiragana key |
Full Width | RightCtrl + F2 | Actuates FullWidth key |
Katakana | RightCtrl + F3 | Actuates Katakana key |
Romaji | RightCtrl + F4 | Actuates Romaji key |
Tranpose | RightCtrl + F5 | Actuates Transpose key |
Symbol | RightCtrl + F6 | Actuates Symbol key |
CodeInput | RightCtrl + F7 | Actuates CodeInput key |
Copy | RightCtrl + F9 | Actuates Copy key |
Help | RightCtrl + F10 | Actuates Help key |
OPT.1 | F11 | Actuates OPT.1 key |
OPT.2 | F12 | Actuates OPT.2 key |
BREAK | SHIFT + PAUSE | Actuates BREAK key |
XF1 | LeftGUI | Actuates XF1 key |
XF2 | LeftALT | Actuates XF2 key |
XF3 | RightALT | Actuates XF3 key |
XF4 | RightGUI | Actuates XF4 key |
XF5 | MENU | Actuates XF5 key |
UNDO | END | Actuates UNDO key |
Roll Up | PGUP | Actuates Roll Up key |
Roll Down | PGDN | Actuates Roll Down key |
CLR | SHIFT + HOME | Actuates CLR key |
All other keys are as per the symbol on the PS/2 keyboard. The Num Lock key toggles the keypad between numeric and cursor functions. The keyboard mapping passes through modifier keys unless there is an exact map, ie. SHIFT. Thus key combinations not catered for in the mapping table may work, ie. SHIFT+KANA, albeit you can always edit the map via the web interface above.
Active Host | Hot Key | Persisted | Feature |
---|---|---|---|
All | SHIFT+CTRL+ESC+ 1 | Yes | Select Keyboard Model UK KB-3926 |
All | SHIFT+CTRL+ESC+ 2 | Yes | Select Keyboard Model JAPAN OADG109 |
All | SHIFT+CTRL+ESC+ 3 | Yes | Select Keyboard Model JAPAN Sanwa SKB-L1 |
All | SHIFT+CTRL+ESC+ 4 | Yes | Select Keyboard Model Keyboard_4 |
All | SHIFT+CTRL+ESC+ 5 | Yes | Select Keyboard Model Keyboard_5 |
All | SHIFT+CTRL+ESC+ 6 | Yes | Select Keyboard Model Keyboard_6 |
All | SHIFT+CTRL+ESC+ 7 | Yes | Select Keyboard Model UK Periboard 810 (Bluetooth) |
All | SHIFT+CTRL+ESC+ 8 | Yes | Select Keyboard Model UK OMOTON K8508 (Bluetooth) |
All | SHIFT+CTRL+ESC+ 0 | Yes | Select STANDARD Map Keyboard |
MZ-2500 | SHIFT+CTRL+ESC+KeyPad 1 | Yes | Select keymap for an MZ-2500 |
MZ-2800 | SHIFT+CTRL+ESC+KeyPad 1 | Yes | Select keymap for an MZ-2800 |
MZ-2500 | SHIFT+CTRL+ESC+KeyPad 2 | Yes | Select keymap for an MZ-2000 |
MZ-2500 | SHIFT+CTRL+ESC+KeyPad 3 | Yes | Select keymap for an MZ-80B |
X1 | SHIFT+CTRL+ESC+KeyPad 1 | Yes | Select keymap for an Original X1 |
X1 | SHIFT+CTRL+ESC+KeyPad 2 | Yes | Select keymap for a Turbo X1 |
X1 | SHIFT+CTRL+ESC+KeyPad 3 | Yes | Select keymap for a TurboZ X1 |
X1 | SHIFT+CTRL+ESC+KeyPad 0 | Yes | Select keymap for a all models, ie. any X1 model key map will become active. |
X1 | SHIFT+CTRL+ESC+KeyPad 7 | No | Switch to keyboard Mode A |
X1 | SHIFT+CTRL+ESC+KeyPad 9 | No | Switch to keyboard Mode B |
X68000 | SHIFT+CTRL+ESC+KeyPad 1 | Yes | Select Original Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 2 | Yes | Select ACE Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 3 | Yes | Select Expert Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 4 | Yes | Select Pro Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 5 | Yes | Select Super Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 6 | Yes | Select XVI Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 7 | Yes | Select Compact Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 8 | Yes | Select 68030 Model X68000 key map |
X68000 | SHIFT+CTRL+ESC+KeyPad 0 | Yes | Select key map for all models, ie. any X68000 model key map will become active. |
Mode | Key Press | Time Period | LED State | Description |
---|---|---|---|---|
Host Scaling | Middle Scroll Key | 1 second | Mode activated, 1 rapid blink. Current setting is indicated by 1 blink per value every 1.5 seconds, valid range 0-4, so a setting of 1 will see 1 blink every 1.5 seconds. |
This mode allows the user to change the interpolated resolution seen by the host. Basically a divider ranging from 1/1, 1/2, 1/3, 1/4, 1/5 is used to reduce the PS/2 movement count. This results in a slower mouse movement. |
PS/2 Resolution | Middle Scroll Key | 2 seconds | Mode activated, 2 rapid blinks. Current setting is indicated by 1 blink per value every 2.5 seconds, valid range 1,2,4,8 counts/mm. |
This mode allows the user to change the PS/2 mouse resolution or sensitivity, ie. how many counts it makes per mm of movement. |
- A Mouse Host Configuration panel - this is used to configure host side mouse parameters.
- A Mouse PS/2 Configuration panel - this is used to configure PS/2 side mouse parameters.
- PS/2 Mouse Scaling - This feature can scale the movement data sent by the mouse. If set to 1:1, no scaling occurs, if set to 2:1 then the movement data is multiplied by 2 resultion in the mouse movement been more rapid and travels further.
- PS/2 Mouse Resolution - This feature sets the accuracy of the mouse data as the mouse moves 1mm. The most inaccurate value is 1 c/mm, ie. 1 division value per mm, the most accurate is 8 c/mm, ie, 8 division values per mm.
- PS/2 Mouse Sampling Rate - This feature sets the accuracy of the mouse by transmitting more data per second regarding it's movement. The Sharp protocol requires a continous transmission of data every 20ms which equates to a sampling rate of 50/s, so a PS/2 sampling rate of 60/s is considered the optimal value.
NB: The Mouse Configuration menu will be displayed when the SharpKey is primarily used as a mouse, ie. the Host cable connects to a Host mouse port. If the Host is keyboard and mouse capable over one cable then both the host keyboard map and mouse configuration menu will appear in the side-menu bar.
No commercial use to be made of this design or any hardware/firmware component without express permission from the author. This condition overrides any rights afforded by the GNU GPL 3 license.
The source files are distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.