• xtrn/syncarcade/README.md

    From Rob Swindell (on Windows@VERT to Git commit to main/sbbs/m on Tue Jul 21 01:41:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/8d453c6c0fa09c578975b080
    Added Files:
    xtrn/syncarcade/README.md getcore.js install-xtrn.ini lobby.js names.json syncretro.example.ini
    Log Message:
    xtrn/syncarcade: arcade cabinets as a SyncRetro console (MAME 2003-Plus)

    A third SyncRetro console, and -- as M3_MULTICORE.md predicted for a plain gamepad machine -- it needed no C of its own: an arcade control panel is a stick, a coin slot and a start button, which IS a RetroPad. Coin on
    Backspace (SELECT), start on Enter (START), joystick on WASD/arrows.

    The core was chosen by measurement, not reputation. Probed against MAME 2010 (MAME 0.139) as well:

    - MAME 2003-Plus hands vertical games over UPRIGHT (Pac-Man, Galaga, Dig
    Dug, Donkey Kong all 224x288 portrait, SET_ROTATION 0), so the door needs
    no rotate path at all; MAME 2010 hands the same games over SIDEWAYS and
    asks the frontend for 270 degrees;
    - 270 romsets loaded on 2003-Plus with zero crashes, against a reproducible
    access violation in 2010 (stack entirely inside the core);
    - 2010 also fails a forward-slash content path on Windows;
    - 2003-Plus saves high scores natively and simulates a 4-way stick, both of
    which this door wants; 2010 does neither and has no save states.

    MAME 0.139 has more drivers, but what it adds over 0.78 is overwhelmingly
    1990s titles -- exactly what a terminal cannot serve. Of 216 romsets that loaded, 208 are under 200k pixels a frame and half are Pac-Man sized; the
    only ones above are vector games (Battlezone, Tempest at 1024x768), which
    want a spinner besides and are called out in the ini as things to hide.

    Ships shared_saves (the score you set is the score the next caller has to beat), a names.json of 34 classics so the picker reads "Ms. Pac-Man" rather than "mspacman", and an [options] section pinning skip_disclaimer and skip_warnings so a player is not made to sit through MAME's legal screens.

    Romsets are the sysop's, unshipped, and version-specific: 2003-Plus is built
    on MAME 0.78 and a newer set partly mismatches (216 of 272 loaded from a 2011-era collection). README.md documents which failures a romset manager
    can rebuild and which are simply games 0.78 never had.

    The core's licence is the MAME licence, not the GPL, and restricts
    commercial redistribution -- getcore.js downloads it at the sysop's
    prompting rather than anything here redistributing it.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows@VERT to Git commit to main/sbbs/m on Tue Jul 21 01:41:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/e81fb58e5d5e2b5b2cbb3f9c
    Modified Files:
    xtrn/syncarcade/README.md
    Log Message:
    xtrn/syncarcade: warn that pruning a parent romset breaks its clones

    Hiding a romset by moving it out of roms/ looks like housekeeping and is a trap: a clone loads its graphics ROMs and PROMs out of its PARENT's zip, and the parent is frequently the entry that looks most redundant. Moving puckman.zip aside -- "Pac-Man (Japan)" and "Pac-Man" being obviously the same game -- silently breaks pacman.zip, which is the Midway clone of it. MAME does not search sub-directories of the ROM path either, so relegating one to a sub-directory is exactly as fatal as deleting it.

    Nothing can warn about this at run time: the parent/clone relationship is in MAME's driver tables, invisible to both the lobby and the door, so the game stays in the picker and the player is told only that the content is wrong for this core.

    Document [roms] exclude as the way to drop a menu entry while leaving the file where MAME can still reach it, and cross-reference it from the romsets section.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows@VERT to Git commit to main/sbbs/m on Tue Jul 21 01:41:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/2c2f8a8b29bac2702a96b8fa
    Modified Files:
    xtrn/syncarcade/README.md
    Log Message:
    xtrn/syncarcade: record the measured dirty-rect hit rate

    Measured in active play over SyncTERM: 80-90% of frames patched rather than repainted on Pac-Man and Frogger, 20-30% on Galaga. The spread is the games and not a defect -- a static maze with a few sprites crossing it is the best case, while Galaga moves an entire formation at once and most of its frames correctly fall back to a whole frame.

    Worth having written down: "it depends on the game" is unfalsifiable, and these two numbers give the next person a range to sanity-check a change against.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian L@VERT to Git commit to main/sbbs/m on Tue Jul 28 21:54:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/9690b2ac37355a6b8e5d4a7f
    Modified Files:
    xtrn/syncarcade/README.md
    Log Message:
    syncarcade: the README named keys the second stick no longer uses

    A twin-stick cabinet's second stick moved from I / K to P / ; when player 2
    was given a panel of his own, because I J K L became his joystick. The
    README still told a player to reach for I and K, which now move a second
    player nobody is playing.

    Pause moved off Space in the same change and the README still named it
    there, which is worse than stale: Space is now player 1's button, so a
    player following the door keys line shoots instead of pausing. Say why, so
    the next reader does not put it back.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian L@VERT to Git commit to main/sbbs/m on Sun Aug 2 23:32:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b41c76de89da6bb4554c9bba
    Modified Files:
    xtrn/syncarcade/README.md xtrn/syncivision/README.md xtrn/syncnes/README.md
    Log Message:
    syncarcade: say how and when to enable saved games, and stop contradicting

    The cabinet section promised that a private cabinet's game "resumes where
    you left off" and then, three paragraphs later, said saved games are off
    for every romset. A sysop reading it in order acted on the first half,
    switched to a private cabinet, quit a game and found nothing waiting.

    The private cabinet's real and immediate value is stated instead: the high score table is yours, on every romset, today -- nobody else's session overwrites it. Saving is presented as the separate thing it is, with the games.local.ini stanza spelled out rather than deferred to a cross
    reference, and with the verification a sysop should actually perform
    before trusting a driver: enable it, play, quit, confirm the marker
    appears, confirm the game continues, then keep playing and watch the
    machine, because a broken restore does not announce itself.

    The quoted cabinet block was two releases of wording out of date. It and
    the marker example now match what the lobby renders. The cartridge
    consoles gain the marker's description too, which nothing documented.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net