https://gitlab.synchro.net/main/sbbs/-/commit/d476ada4c173be266baff6f4
Added Files:
src/doors/syncduke/.gitignore CMakeLists.txt README.md build.sh src/doors/syncduke/compat/SDL.h src/doors/syncduke/syncduke.h syncduke_config.c syncduke_door.c syncduke_game.c syncduke_input.c syncduke_io.c syncduke_plat.c syncduke_stubs.c src/doors/syncduke/tests/save_load_test.sh test_keymap.c xtrn/syncduke/.gitignore install-xtrn.ini syncduke.example.ini
Modified Files:
src/doors/syncduke/Engine/src/draw.c draw.h engine.c unix_compat.h src/doors/syncduke/Game/src/actors.c config.c duke3d.h game.c gamedef.c global.c menues.c player.c premap.c src/doors/syncduke/SEAM.md
Log Message:
syncduke: headless door shim -- single-player Duke Nukem 3D over a BBS terminal
Replace Chocolate Duke3D's SDL video/input/timer back end with a headless shim (syncduke_*.c/h) that captures the Build engine's 8-bit framebuffer and renders it to the user's terminal via termgfx -- auto-selecting JPEG XL (on SyncTERM), sixel, or the text/block fallback (so even a no-sixel terminal like conhost works), with F4 to cycle tiers and DSR-ack auto-depth pacing.
Includes the 64-bit (LP64) port of the vendored engine (CON VM + renderer pointer widening), DOOR32.SYS client-socket I/O, the SyncDOOM-style control scheme + mouse steering + Controls Help, per-user save/config dirs (-home), 64-bit-safe save/load, the build script + installer + example config, and a keymap unit test.
v1 is SINGLE-PLAYER ONLY (no multiplayer/lobby/audio yet), shareware Episode 1. See README.md / SEAM.md.
Co-Authored-By: Claude Opus 4.8 <
noreply@anthropic.com>
--- SBBSecho 3.37-Linux
* Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)