From 010cedaaef3e1b2d465f52ed11394fbc3003ce50 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Sat, 10 May 2025 05:45:13 -0400 Subject: update man page. --- marsond.8 | 39 ++++++++++++++++++++++++++++++++------- marsond.rst | 37 +++++++++++++++++++++++++++++++------ 2 files changed, 63 insertions(+), 13 deletions(-) diff --git a/marsond.8 b/marsond.8 index 48d3eaf..f457aca 100644 --- a/marsond.8 +++ b/marsond.8 @@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. -.TH "MARSOND" 8 "2025-05-09" "0.3.0" "Urchlay's Stuff" +.TH "MARSOND" 8 "2025-05-10" "0.3.0" "Urchlay's Stuff" .SH NAME marsond \- Fix Enter key timing on Marson/USBLink/MT606-1 PS/2-USB adaptors .SH SYNOPSIS @@ -126,6 +126,7 @@ the primary group of the user it\(aqs running as. Normally you won\(aqt have to set this. .UNINDENT .SH NOTES +.SS Hardware .sp The problem happens with any SDL application (SDL1 or SDL2), as well as other graphics libraries. It happens regardless of what PS/2 @@ -144,9 +145,28 @@ the back, the model number is "MT606\-1". It looks like: .UNINDENT .UNINDENT .sp -I\(aqm not sure if any other USB keyboard adaptors are affected. If you -have the problem on some other adaptor, and \fBmarsond\fP fixes it, -please contact me so I can add support for it in the future. +Confusingly enough, in \fBlsusb\fP(8) output, it shows up as: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ lsusb | grep 04b4:0101 +Bus 003 Device 006: ID 04b4:0101 Cypress Semiconductor Corp. Keyboard/Hub +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +The Bus and Device numbers may be different for you, it\(aqs the ID and +name that are important. +.sp +I\(aqm not sure if any other USB keyboard adaptors are affected. If +you have the problem on some other adaptor, try it with \fBmarsond\fP\&. +Use the \fB\-k\fP option to set the \fI/dev/input/by\-id\fP name of the device, +and run the daemon manually. If this fixes it please contact me so I +can add support for your adaptor in the future. +.SS Implementation .sp \fBmarsond\fP uses the Linux kernel\(aqs \fBuinput\fP layer to "grab" the keyboard, create a new virtual keyboard device, and pass events from @@ -156,8 +176,10 @@ before delivering it. .sp This should work with everything that uses the keyboard. It definitely does, with SDL 1 and 2 running under X (and SDL 1 on the console, -too). I don\(aqt use Wayland, so I haven\(aqt tested it there. If you do, -please contact me and let me know if it works for you. +too). It should also work with Wayland, though I don\(aqt use Wayland, +so I haven\(aqt tested it there. If you do, please contact me and let me +know whether or not it works for you. +.SS Startup .sp \fBmarsond\fP must be run as root. At startup, it does these things as root: @@ -176,9 +198,12 @@ avoid slow response on a loaded system. After doing the above, root access is no longer needed, so it will drop privileges and run as the \fInobody\fP user by default (but see \fBENVIRONMENT\fP if you need a different user). +.SS Misc .sp While \fBmarsond\fP is running, "xinput \-\-list" will show an input -device called "marson virtual keyboard". +device called "marson virtual keyboard". Confusingly enough, it will +show up as both a pointer and a keyboard. This doesn\(aqt seem to hurt +anything, but it looks weird, doesn\(aqt it? .SH LIMITATIONS .sp Only one MT\-606\-1 device is supported, out of the box. This shouldn\(aqt diff --git a/marsond.rst b/marsond.rst index ce0e102..e094d44 100644 --- a/marsond.rst +++ b/marsond.rst @@ -102,6 +102,9 @@ MARSOND_GROUP NOTES ===== +Hardware +-------- + The problem happens with any SDL application (SDL1 or SDL2), as well as other graphics libraries. It happens regardless of what PS/2 keyboard you have plugged in, what computer you have the adaptor @@ -116,9 +119,22 @@ the back, the model number is "MT606-1". It looks like: https://slackware.uk/~urchlay/sdl-usblink-hack/marson-back.jpg -I'm not sure if any other USB keyboard adaptors are affected. If you -have the problem on some other adaptor, and **marsond** fixes it, -please contact me so I can add support for it in the future. +Confusingly enough, in **lsusb**\(8) output, it shows up as:: + + $ lsusb | grep 04b4:0101 + Bus 003 Device 006: ID 04b4:0101 Cypress Semiconductor Corp. Keyboard/Hub + +The Bus and Device numbers may be different for you, it's the ID and +name that are important. + +I'm not sure if any other USB keyboard adaptors are affected. If +you have the problem on some other adaptor, try it with **marsond**. +Use the **-k** option to set the */dev/input/by-id* name of the device, +and run the daemon manually. If this fixes it please contact me so I +can add support for your adaptor in the future. + +Implementation +-------------- **marsond** uses the Linux kernel's **uinput** layer to "grab" the keyboard, create a new virtual keyboard device, and pass events from @@ -128,8 +144,12 @@ before delivering it. This should work with everything that uses the keyboard. It definitely does, with SDL 1 and 2 running under X (and SDL 1 on the console, -too). I don't use Wayland, so I haven't tested it there. If you do, -please contact me and let me know if it works for you. +too). It should also work with Wayland, though I don't use Wayland, +so I haven't tested it there. If you do, please contact me and let me +know whether or not it works for you. + +Startup +------- **marsond** must be run as root. At startup, it does these things as root: @@ -147,8 +167,13 @@ After doing the above, root access is no longer needed, so it will drop privileges and run as the *nobody* user by default (but see **ENVIRONMENT** if you need a different user). +Misc +---- + While **marsond** is running, "xinput --list" will show an input -device called "marson virtual keyboard". +device called "marson virtual keyboard". Confusingly enough, it will +show up as both a pointer and a keyboard. This doesn't seem to hurt +anything, but it looks weird, doesn't it? LIMITATIONS =========== -- cgit v1.2.3