diff --git a/harness/mame/run.sh b/harness/mame/run.sh index a4510cf..2bc936f 100755 --- a/harness/mame/run.sh +++ b/harness/mame/run.sh @@ -8,8 +8,8 @@ # ./run.sh headless [N] no window; dump frame N (default 600) into this directory # ./run.sh stub faithful, plus an opt-in stand-in for the level-0 # keyboard-port test fixture -> reaches level 1 -# ./run.sh tablet skip + VSXXX-AB tablet: interactive GUI with ABSOLUTE -# pointing (the cursor follows the host pointer) +# ./run.sh mouse skip + VSXXX-AA mouse: the *faithful* pointing device. +# The tablet is the default; this sets VT1200_MOUSE=1 # ./run.sh -- # # Reboot the running machine with Shift+F3 (MAME's UI_RESET_MACHINE; plain F3 is a @@ -30,11 +30,12 @@ # It is NOT a keyboard model: that test checks only the byte *count* and never # compares the content, so the bytes are arbitrary. It stands in for an # unknown test fixture, and it is opt-in so the default stays honest. -# tablet selects the VSXXX-AB tablet instead of the mouse (VT1200_TABLET=1). It is -# ABSOLUTE: the host pointer position maps directly to where the cursor is, -# rather than being integrated from deltas, and it does not grab the pointer. -# The mouse stays the default device. Compose it with any mode by setting the -# variable yourself, e.g. VT1200_TABLET=1 ./run.sh skip +# mouse forces the VSXXX-AA mouse (VT1200_MOUSE=1) -- the *faithful* pointing device, +# since the real terminal almost certainly has a mouse. The DEFAULT is the +# VSXXX-AB tablet: it is ABSOLUTE, so the host pointer position maps directly +# to where the cursor is rather than being integrated from deltas, and it does +# not grab the pointer. That default is a deliberate divergence -- see the +# divergences table in harness/mame/README.md. # # Modes other than 'headless' open a window at real speed, so you can watch. @@ -85,13 +86,11 @@ case "$MODE" in "$MAME" vt1200 "${COMMON[@]}" -window "$@" ;; - tablet) - # the useful combination: the OS is only reachable through the skip gate, and - # the tablet gives absolute pointing, so the cursor follows the host pointer - # positionally instead of through relative deltas. The OS distinguishes tablet - # from mouse by the device-code nibble in its "T" self-test reply, and then - # frames 5-byte absolute reports (3-byte relative for the mouse). - exec env VT1200_SKIP_LEVEL1=1 VT1200_TABLET=1 \ + mouse) + # force the faithful VSXXX-AA mouse. The tablet is the default (absolute + # pointing), so this is the opt-out. Both need the lightgun options in COMMON + # for the host pointer to reach them. + exec env VT1200_SKIP_LEVEL1=1 VT1200_MOUSE=1 \ "$MAME" vt1200 "${COMMON[@]}" -window "$@" ;;