Subj : docs/v322_new.md exec/CLAUDE.md exec/load/shell_lib.js exec/sdos.jstex To : Git commit to main/sbbs/master From : Rob Swindell (on Debian Linux) Date : Fri Sep 18 2026 23:52:57 https://gitlab.synchro.net/main/sbbs/-/commit/669776215efcee5cee623b2e Modified Files: docs/v322_new.md exec/CLAUDE.md exec/load/shell_lib.js exec/sdos.js Removed Files: text/menu/sdos/files.asc mail.asc root.asc Log Message: sdos.js: act much more like MS-DOS 5 COMMAND.COM Rewrite the DOS Shell's JavaScript port (9451e26955, analyzed-11-alert, 2026-06-23) around a virtual read-only drive C:. The BBS functions are programs in C:\, C:\FILES and C:\MAIL, and doors appear as C:\DOORS\
\.EXE (with ~1-style 8.3 names for long codes). Programs are found the way COMMAND.COM finds them: current directory, then each PATH directory, .COM then .EXE then .BAT, or by relative or absolute path, with or without the extension. Command lines parse like DOS too (CD.., CD\MAIL, DIR/W, ECHO.). DIR listings are now generated rather than read from menu files, in the DOS 5 layout with MM-DD-YY dates regardless of the user's date format, and support wildcards and the /W /B /S /O /L /P /A switches (plus the DIRCMD variable). The text/menu/sdos/*.asc files are no longer used and are removed. Also emulated: SET/PATH/PROMPT (with $-codes) on a per-session environment, ECHO (ON/OFF), TYPE, VER, VOL, DATE/TIME, CLS, BREAK, VERIFY, CHCP, REM, PAUSE, LH, /? usage for every command, HELP.EXE, AUTOEXEC.BAT (a minimal batch interpreter), nested COMMAND and COMMAND /C, and DOS's own errors for writes to a read-only disk (DEL, COPY, REN, MD, RD, redirection) and for other drives. Fixes from the previous port: MAIL CONFIG ran user settings instead of the message scan configuration, DOWNLOAD listed the user-to-user file area instead of the current one, LIST ignored its file spec, and OPEN with an unknown code threw a JavaScript error. The session's directory, environment and history now survive the shell restart after SETUP, and the boot banner appears only once per session. shell_lib.js: view_file_info() and view_files() accept an optional filespec, used instead of prompting for one. Co-Authored-By: Claude Opus 5 (1M context) --- SBBSecho 3.37-Linux * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705) .