https://github.com/fragglet/vanilla-utilities
Doom engine DOS utilities
https://github.com/fragglet/vanilla-utilities
Last synced: 9 months ago
JSON representation
Doom engine DOS utilities
- Host: GitHub
- URL: https://github.com/fragglet/vanilla-utilities
- Owner: fragglet
- License: gpl-2.0
- Created: 2019-11-28T02:30:36.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-10-02T02:11:44.000Z (over 1 year ago)
- Last Synced: 2025-04-06T08:11:38.738Z (9 months ago)
- Language: C
- Homepage: https://www.doomworld.com/forum/topic/110970-the-vanilla-utilities/
- Size: 764 KB
- Stars: 22
- Watchers: 6
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: COPYING.GPL1
Awesome Lists containing this project
README

# The Vanilla Utilities
This is a collection of DOS utilities for interacting with Doom's external
driver APIs. Specifically it includes improved versions of Doom's network
drivers (IPXSETUP and SERSETUP) along with APIs for the
[network](https://doomwiki.org/wiki/Doom_networking_component#External_drivers),
[control](https://doomwiki.org/wiki/External_control_driver), and
[statistics](https://doomwiki.org/wiki/Statistics_driver) interfaces.
Design principles here are:
* **Composability** - it is possible to combine multiple tools and use them
together.
* **Reusability** - the codebase has clearly-defined APIs for interacting
with Doom's command line interfaces, so that making new tools is
straightforward.
## Utilities
* **udpsetup** - network driver for Internet play over the UDP protocol.
Multiple network stacks are supported including Winsock1, Winsock2 and the
DOS MSClient stack. The protocol is the same as DOSbox's IPXNET protocol,
so it can connect to DOSbox servers and play against emulated machines.
[Example video](https://www.youtube.com/watch?v=1PLXPSP7ZBE); see
[UDPSETUP-HOWTO](UDPSETUP-HOWTO.md) for more information.
* **ipxsetup** - bugfixed and expanded version of the driver originally shipped
with Doom. Supports the extensions from [xttl's version](https://github.com/AXDOOMER/ipxsetup_xttl)
with further enhancements (not all players need specify the -dup or -player
parameters).
* **sersetup** - bugfixed and expanded version of the serial/modem driver
originally included with Doom. Supports background answering, which allows the
game to launch before the incoming call is received.
* **parsetup** - parallel port network driver, derived from
[the version from the idgames archive](https://www.doomworld.com/idgames/utils/serial/psetup11).
Performance has been significantly improved.
* **sirsetup** - driver for running over a half-duplex serial infrared (SIR)
link (aka IrDA), as commonly found on many late '90s laptops.
* **metanet** - networking driver that combines other networking drivers
into a packet forwarding network. This allows you, for example, to build a
a four player game from daisy-chaining null-modem cables.
See [METANET-HOWTO](METANET-HOWTO.md) for more information.
* **solo-net** - null/standalone network driver that starts a network game
without any real connection. Replicates the `-solo-net` parameter found in
many Doom source ports.
* **analogjs** - PC joystick driver with analog control that is more precise
than Doom's built in joystick support.
* **replay** - demo replay tool that uses the external control API, so that
demos can be "continued" by recording a new demo from an old one.
* **statdump** - external statistics driver that can write a text summary.
* **vcommit** - adapter that converts a Doom network driver into a 3D Realms
*COMMIT* driver, as used for *Duke Nukem 3D*, *Blood*, *Shadow Warrior*
and various other games. This means that all of the above network drivers
can also be used with those games.
[Example video](https://youtu.be/4L5wVLp5wVE).
* **vrottcom** - adapter that converts a Doom network driver into a *Rise
of the Triad* ROTTCOM driver. This means that all of the above network
drivers can also be used with ROTT.