- 08 May, 2022 1 commit
-
-
Rob Swindell authored
If a 4th optional argument is provided, use that as the ini filename for virtual UART/FOSSIL driver settings instead of "sbbsexec.ini". Using this feature requires an updated sbbsexec.dll that supports an ini-filename argument (instead of a directory) to the VDD_LOAD_INI_FILE command. If DOSXTRN fails to execute the passed command-line, _spawnvp() returns -1, log the errno value and description to DOSXTRN.ERR (in the same directory as DOSXTRN.ENV). This will help diagnose issues executing DOS command-lines (e.g. file not found). Upon failure to open/create DOSXTRN.RET, don't prematurely terminate as that would skip a lot of important cleanup.
-
- 28 Apr, 2022 1 commit
-
-
Rob Swindell authored
Some programs (e.g. sbbs.exe v2.30) check for CTS (when configured/enabled for hardware flow control), so reflect the signal (Clear To Send) accurately.
-
- 14 Dec, 2021 1 commit
-
-
Rob Swindell authored
-
- 01 Dec, 2021 2 commits
-
-
Rob Swindell authored
Allow "FOSSIL Only" as a configuration option for external programs in SCFG. This is a much easier method of disabling the virtual UART support in the Virtual UART/FOSSIL device driver (if/when necessary) than editing the sbbsexec.ini file (which is still supported).
-
Rob Swindell authored
Function 0Ch (peek) never worked correctly (character was not returned in AX); I guess nothing uses this function (?). Function 01h (transmit char w/wait) now will set the timeout flag (0x8000) in the AX if the VDD_WRITE function fails (returns value other than 1). Optimize Function 18h (read block) - no need for the extra VDD_STATUS call. Use newly defined FOSSIL macros instead of magic numbers of port status bits. Log the git branch/hash values to the Windows debug log (via sbbsexec.dll).
-
- 30 Nov, 2021 1 commit
-
-
Rob Swindell authored
Yes, you can run 16-bit DOS doors on 64-bit (x64) Windows now. Install NTVDMx64 (http://www.columbia.edu/~em36/ntvdmx64.html, it's not as onerous as it sounds) and re-enable DOS program support in SBBS (i.e. make sure "NO_DOS" is not in your sbbs.ini [bbs] Options value) and voila: DOS doors work. This change adds an empty init routine to sbbsexec.dll since older versions of NTVDM (which NTVDMx64 is based on) required one. Also, the sbbsexec.dll should be located in your Synchronet "exec" directory when using NTVDMx64 (in addition to or instead of your Windows/System32 directory).
-
- 24 Nov, 2021 1 commit
-
-
Rob Swindell authored
As a work around for TradeWars 2 (v11.14 and v11.20) FOSSIL support: This door game would never call the FOSSIL "get received character" function (02h) . But I did notice that it was calling the "Keyboard read" functions. I never implemented the "Keyboard read" functions (figured the door game could read the keyboard itself if it wanted to), but appparently TW2 won't ever read the COM port (using function 02h) unless the Keyboard read function returns AX=0xFFFF (no keyboard data available). So now, I just do that and TW2 works (with FOSSIL I/O). Incremented the revision to 26. Logging the Git branch/hash and other helpful FOSSIL-debug stuff now.
-
- 16 Aug, 2020 1 commit
-
-
Rob Swindell authored
-
- 15 Apr, 2020 1 commit
-
-
rswindell authored
have more than 10 environment variables defined in it. I added no bounds checking or dynamic allocation, so if the file contained more than 10 environment variables (and it has since 2002), other stack memory in DOSXTRN would get over-written (classic buffer overflow). When I recently experimented with adding another environment variable (PCBDIR), all dosxtrn NTVDM instances would crash with a familiar but mysterious error dialog. This bug may have been causing other dosxtrn instances to crash for a long tmie. I also had an arbitrary limit on the number of command-line arguments, 16, with no bounds-checking, so passing a long list of space-separated arguments could also crash DOSXTRN. So I've increased both limits to 32 and added bounds checking. I had to break out the old 16-bit MSVC (v1.52) and an NT2K DDK (and remove the 64-bit int stuff from gen_defs.h) to get this thing to build. But here it is. Updated again after all these years. Who'd a thunk.
-
- 24 Jul, 2018 1 commit
-
-
rswindell authored
Most of the copyright years in the source code were misleading (the date of most recent publish was actually later) and all were unnecessary. I've been removing copyright years piecemeal, for a long time, but I decided it was time to just perform a bulk search and (mostly) replace. In some cases, I left old copyright years on files that either are not used (and soon to be removed) or obsolete and unlikely to ever be touched again (e.g. Win9x FOSSIL VXD). Some of the runtime binaries still contain copyright years and those were updated to 2018.
-
- 28 Oct, 2006 1 commit
-
-
rswindell authored
If the sbbsexec.dll (VDD) load from the exec dir fails, load without a path specified (e.g .from \windows\System32\). Do not specify an init function, apparently not supported by Vista - RegisterModule() fails with AX=1 when an InitFunc is specified.
-
- 20 Jun, 2006 1 commit
-
-
rswindell authored
and virtual UART VDD. Use FOSSIL function constant macros from fossdefs.h.
-
- 25 May, 2006 2 commits
- 20 May, 2006 1 commit
-
-
rswindell authored
potential forced yield. This "tames" BRE down to single-digit CPU utilization!
-
- 16 May, 2006 1 commit
-
-
rswindell authored
(the "exec" directory) - used if there's no sbbsexec.ini in the current working directory (e.g. xtrn/somedoor).
-
- 12 May, 2006 2 commits
- 10 May, 2006 2 commits
- 05 May, 2006 4 commits
-
-
rswindell authored
block returned in function 0x1b.
-
rswindell authored
-
rswindell authored
-
rswindell authored
arguments. Returns revision in FOSSIL information block (FOSSIL function 0x1b). Uses new fossdefs.h to fix "baud_rate" field value in information block and size of information block (was +1 due to padding).
-
- 04 May, 2006 1 commit
-
-
rswindell authored
This may make some obscure FOSSIL programs (e.g. door games) work that previously would not recognize the Synchronet FOSSIL driver. (Inspired by Deuce).
-
- 03 May, 2006 1 commit
-
-
deuce authored
define HACKERY to actually use it. (Note, SEG:OFFSET may be backwards/broken here...)
-
- 05 Sep, 2005 1 commit
-
-
deuce authored
Consider doing the same for all .h files. Consider the meaning of sanity.
-
- 16 Sep, 2001 1 commit
-
-
rswindell authored
-
- 21 Jul, 2001 1 commit
-
-
rswindell authored
-
- 20 Jul, 2001 1 commit
-
-
rswindell authored
Added support for naughty FOSSIL programs (e.g. IceEdit and OOII) that call the int14h ISR directly rather than issue an interrupt.
-
- 19 Jul, 2001 1 commit
-
-
rswindell authored
Added intelligent yielding for FOSSIL and DOS I/O programs that poll for input (eliminates CPU hogging).
-
- 18 Jul, 2001 1 commit
-
-
rswindell authored
Eliminated unused code.
-
- 10 Oct, 2000 1 commit
-
-
rswindell authored
-