awesome-dos icon indicating copy to clipboard operation
awesome-dos copied to clipboard

Add SBEMU and VSBHDA (Sound Blaster emulators for DOS on modern PCs)

Open volkertb opened this issue 1 year ago • 5 comments

…DOS)

volkertb avatar Dec 31 '23 12:12 volkertb

Instead of "Tutorials and programming resources", the better place for these additions are the "Development tools". It is also okay to create a separate subcategory for them like in this example (at the bottom):

## Development tools
- [bcc - Bruce's Compiler](https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos/pkg-html/bcc.html) - Bruce's C compiler is a simple C compiler that produces 8086 assembler for tiny/small memory models.
- [DJGPP](http://www.delorie.com/djgpp/) - DJ Delorie's complete 32-bit C/C++ development environment for Intel 80386. Used for Quake.
- [Open Watcom](https://web.archive.org/web/20220627162043/http://www.openwatcom.org/) - Formerly commercial C/C++ development environment for 16- and 32-bit DOS and
  Windows. The current official version is 1.9. A GitHub fork is also available. Used for Doom I-II, Warcraft I-II, Duke Nukem 3D, Full Throttle, Dark Forces and Retro City Rampage.
  - The [documentation](https://web.archive.org/web/20220630162351/http://www.openwatcom.org/doc.php) is very valuable in order to understand working with both version 1.9 and the V2 fork.
  - [Arch Wiki page](https://wiki.archlinux.org/index.php/Open_Watcom)
- [Open Watcom V2](https://github.com/open-watcom/open-watcom-v2) - GitHub fork which is actively maintained and is
  ported to 64-bit Windows and Linux.
- [Turbo C 2.01](http://www.doshaven.eu/wp-content/uploads/2014/08/tc201.zip) - C IDE and compiler from Borland first released in 1987.
- [Turbo C++ 1.01](http://www.doshaven.eu/wp-content/uploads/2014/08/tcpp101.zip) - C++ IDE and compiler from Borland released in 1991.
- [DIV Games Studio 2](https://archive.org/details/div2_iso) - IDE to develop DOS games in 2d, mode 7 and 3d. Released in 1998.
  - [Online version.](http://js.mikedx.co.uk/DIV1.html)
- [T3X](https://t3x.org/t3x/#t3x7) - A small, portable, procedural, block-structured, recursive, almost typeless, and to some degree object-oriented programming language by Nils M. Holm.
- [SmallerC](https://github.com/alexfru/SmallerC.git) - Portable self-hosting C compiler capable of producing executables for a number of platforms, including real and protected mode DOS programs, by Alexei A. Frounze.
- [Small-C Toolkit](https://github.com/humbertocsjr/Small-C.git) - A self-hosting Small-C Compiler Toolkit for DOS(8086) with: K&R C Compiler, Make, Linker, Assembler. First released in 1982 by Jim E. Hendrix.

### Memory managers
- [386MAX](https://github.com/sudleyplace/386MAX) - Memory manager for DOS PCs with 386 or higher CPUs, [released by Qualitas company in 1992](https://winworldpc.com/product/386max/6x). Source code was released in June 2022 on GitHub with GPL-3.0 license.

### Scripting languages and interpreters for DOS
- [DOjS](https://github.com/SuperIlu/DOjS) - JavaScript programming environment for MS-DOS, FreeDOS or any DOS-based Windows (like 95, 98, ME).
- [Lua for DOS](https://archive.org/details/lua5.3.5) - Online demo of Lua 5.3.5, compiled for MS-DOS on the Intel 80486 processor.
- [Micropython for FreeDOS](https://github.com/pohmelie/micropython-freedos) - FreeDOS ad-hoc module for [micropython](https://github.com/micropython/micropython).
- [perldos](https://perldoc.perl.org/perldos) - Perl for DOS.
- [PythonD](http://www.caddit.net/pythond/) - Python for DOS, including multi-threading, networking and OpenGL.

### Sound card emulators
- [SBEMU](https://github.com/crazii/SBEMU) - A TSR that emulates Sound Blaster and OPL3 in pure DOS using modern PCI-based (onboard and add-in card) sound cards. Supports both real mode and protected mode games!
- [VSBHDA](https://github.com/Baron-von-Riedesel/VSBHDA) - A fork of SBEMU (see above), which also aims to offer Sound Blaster emulation for modern PC hardware, in both real mode and protected mode games.

balintkissdev avatar Jan 03 '24 21:01 balintkissdev

@balintkissdev Technically, these aren't development tools either. Or at least, that's not their primary purpose. Their primary purpose is to allow modern PCs to run DOS bare-metal, while supporting sound even in DOS games that required Sound Blaster and/or Adlib compatibility to play back anything better than beeps through the internal speaker.

So these are tools for end-users (notably retro gamers), not developers.

So yeah, a separate category might indeed be even better, as you already suggested. :+1:

volkertb avatar Jan 03 '24 23:01 volkertb

I updated it. I created both a separate category and a subcategory below that.

Please let me know what you think. Feel free to immediately merge it if you're okay with this. Thanks. :slightly_smiling_face:

volkertb avatar Jan 04 '24 00:01 volkertb

So these are tools for end-users (notably retro gamers), not developers.

Ooooooh, I didn't know about that.

The categories you made are good, they are okay for me.

balintkissdev avatar Jan 07 '24 15:01 balintkissdev

CI error for missing item for the new categories in the Table of Content.

14:1 ToC missing item for "Drivers and emulators" remark-lint:awesome-toc

I'm sorry, current CI is a pain because it isn't set up to automatically run for PRs without me authorising, so I will going to change that when I have the time.

balintkissdev avatar Jan 07 '24 15:01 balintkissdev