Page 1 of 2

8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:08 am
by thorr
Since the XT has 8-bit slots, can we eventually get support for 8-bit sound cards? These would be the ones I would want:

Sound Blaster 2.0 with CMS for Game Blaster support (or the CMS/Game Blaster could be separate like ao486)
MPU-401 MIDI (can be taken from ao486)

The addition of these would really help make this core shine and provide lots of configurable options for games of the time. Thanks for your consideration.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:57 am
by spark2k06
thorr wrote: Sat Nov 12, 2022 6:08 am Sound Blaster 2.0 with CMS for Game Blaster support (or the CMS/Game Blaster could be separate like ao486)
MPU-401 MIDI (can be taken from ao486)
It sounds interesting but it is not a priority for me. It's good to have this topic here for discussion or if anyone wants to contribute to its development.

However, I suggest you put it as a suggestion here, in case I change my mind in the future, or in case someone else develops it... so that it doesn't get lost:

https://github.com/MiSTer-devel/PCXT_MiSTer/issues

Edit: There are also other things that can be interesting, like an RTC based for example on the DS12885... what you have to find also are the modules that implement it, otherwise the development becomes uphill.

I know that what you suggest part of it could be obtained from ao486.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 8:19 am
by thorr
Thanks! I opened an issue for the sound cards and the RTC. The CMS/Game Blaster and MPU/401 are already done in ao486, so maybe those would not take much effort to port.

I found Sound Blaster 2.0 code: https://opencores.org/projects/ao486 https://github.com/alfikpl/ao486
It states the FM Synthesis is not fully working. Maybe the existing Adlib code in the PCXT core can be combined with the digital sound from the above Sound Blaster 2.0 code.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 4:50 pm
by Malor
edit: nevermind, I misread, this comment was kind of a waste of everyone's time.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:01 pm
by thisisamigaspeaking
Would be nice to have. How many games are CGA + Sound Blaster? I hope to see EGA in this core at some point.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:08 pm
by breiztiger
I think ega is more at related (1984 with first ibm at)

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:16 pm
by thisisamigaspeaking
breiztiger wrote: Sat Nov 12, 2022 6:08 pm I think ega is more at related (1984 with first ibm at)
Sound Blaster didn't come out until 1989, CMS 1987. By that time EGA was fairly common on XT clones, and there were many ATs and AT clones out there, even 386s and VGA. How many games made in 1989 even supported CGA (I don't know the answer)?

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:33 pm
by dmckean
Everything overlapped because of this era being full of clones and XTs still being made into the 90s.

EGA would be nice but we will run into the issue of the CPU not being fast enough or games that use 80286 or 80186 specific instructions. This core is never going to be able to run everything.

There is currently no EGA implementation in FPGA so someone would need to write such a thing and it's quite a bit more complex than MGA/CGA/Tandy graphics.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:36 pm
by thisisamigaspeaking
Indeed. So that's why my question is how many games from 1989 onward support Sound Blaster and CGA and will run on a machine of this core's clock speed.

edit: Sound Blaster 2.0 which OP requested came out in 1991

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:48 pm
by spark2k06
At least for me, I have no intention of supporting more advanced graphics than MDA, CGA and Tandy, honestly it doesn't make sense in this core, it already fits more in one based on 286+ or directly in the current one we have from ao486.

The Hercules graphics would be more interesting for this core, but would have to be developed from scratch.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 6:56 pm
by thisisamigaspeaking
spark2k06 wrote: Sat Nov 12, 2022 6:48 pm At least for me, I have no intention of supporting more advanced graphics than CGA and Tandy, honestly it doesn't make sense in this core, it already fits more in one based on 286+ or directly in the current one we have from ao486.

The Hercules graphics would be more interesting for this core, but would have to be developed from scratch.
Hercules is very interesting.

320x200x16 EGA doesn't seem a lot different from 320x200x16 Tandy in the cross section of games that support it or their target CPU speed but I am not sure about that. 640x350x16 is a whole other thing and there were very few games that ran in that. Shareware mostly.

My point is not that EGA should be included, but that OP requested Sound Blaster 2.0 from 1991. I'm wondering how many games from 1991 onward would work with CGA (or Tandy I guess) and Sound Blaster and work with this core's clock speed. I don't know the answer, just wondering.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 7:00 pm
by spark2k06
thisisamigaspeaking wrote: Sat Nov 12, 2022 6:56 pm My point is not that EGA should be included, but that OP requested Sound Blaster 2.0 from 1991. I'm wondering how many games from 1991 onward would work with CGA (or Tandy I guess) and Sound Blaster and work with this core's clock speed. I don't know the answer, just wondering.
I don't know either, maybe someone can answer that question for us. As I said, Sound Blaster is also not in my top priorities... but anyone with enough skills can contribute of course :-)

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 7:03 pm
by dmckean
thisisamigaspeaking wrote: Sat Nov 12, 2022 6:36 pm Indeed. So that's why my question is how many games from 1989 onward support Sound Blaster and CGA and will run on a machine of this core's clock speed.

edit: Sound Blaster 2.0 which OP requested came out in 1991
Probably more than we think since so many games supported odd combinations of hardware. Plus what is being asked here will only take several hours of someone's time since they're already implemented elsewhere.

Implementing EGA, 20286 or its supporting hardware are huge asks that will take months or maybe even a year of someone's time.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 7:14 pm
by thisisamigaspeaking
spark2k06 wrote: Sat Nov 12, 2022 7:00 pm
thisisamigaspeaking wrote: Sat Nov 12, 2022 6:56 pm My point is not that EGA should be included, but that OP requested Sound Blaster 2.0 from 1991. I'm wondering how many games from 1991 onward would work with CGA (or Tandy I guess) and Sound Blaster and work with this core's clock speed. I don't know the answer, just wondering.
I don't know either, maybe someone can answer that question for us. As I said, Sound Blaster is also not in my top priorities... but anyone with enough skills can contribute of course :-)
If I had the knowledge I would definitely be interested in making Hercules graphics (or EGA).
dmckean wrote: Sat Nov 12, 2022 7:03 pm
thisisamigaspeaking wrote: Sat Nov 12, 2022 6:36 pm Indeed. So that's why my question is how many games from 1989 onward support Sound Blaster and CGA and will run on a machine of this core's clock speed.

edit: Sound Blaster 2.0 which OP requested came out in 1991
Probably more than we think since so many games supported odd combinations of hardware. Plus what is being asked here will only take several hours of someone's time since they're already implemented elsewhere.

Implementing EGA, 20286 or its supporting hardware are huge asks that will take months or maybe even a year of someone's time.
I guess I underestimated the complexity of EGA compared to CGA or Hercules, or the complexity of implementing things for FPGA. It's pretty much unrelated to the 286 though, EGA was always an 8-bit card and quickly found its way to XT clones.

EGA being too much work aside, I think if a 1991 card makes sense for this core at least in theory, EGA does too. I won't harp on that any more though, I wasn't expecting anyone to do it. Maybe someone will eventually or it can be done with AI years from now.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 7:24 pm
by dmckean
All the Sound Blasters before the Sound Blaster Pro are really similar to each other, they just use different sound chips. You could upgrade from one to the other by swapping out chips at the time.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 8:42 pm
by thorr
I am primarily thinking of Sierra games that support lots of graphics and sound combinations. Many of these games should work great on this core with SB 2.0 such as Space Quest 3. I agree that EGA is not necessary since Tandy graphics are provided, and Hercules which was very common on XT's would be awesome. If EGA can be an option someday, then cool, or even VGA since 8-bit VGA cards existed. I think Paradise VGA cards might have been 8-bit. Basically, if there was an 8-bit card, then it is not a stretch to think about supporting it someday. However, keeping this core's hardware in line with the slower PC specs of the games makes sense too.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 8:54 pm
by Malor
I think maybe a Soundblaster 1 would make the most sense for the XT core.

Re: 8-bit Sound Cards

Posted: Sat Nov 12, 2022 10:20 pm
by bbond007
spark2k06 wrote: Sat Nov 12, 2022 6:48 pm The Hercules graphics would be more interesting for this core, but would have to be developed from scratch.
Hercules adapters were great for doing desktop publishing back in the day on a cheap MDA monitor. Ignore the amber color and the resolution was like a fancy MAC.

MCGA might also be interesting. It is basically just CGA with 64K RAM (vs 16K) and two additional modes:
  • 640×480 monochrome (Mode 11h)
  • 320×200 in 256 colors (from a palette of 262,144) (Mode 13h)
https://en.wikipedia.org/wiki/Multi-Col ... hics_Array

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 12:49 am
by thorr
I would support that idea, even though it was specific to some IBM chipsets and not an actual 8-bit card, but I think it might be easier and possibly make more sense just to go with a basic 8-bit VGA card that would support 320x200x256 and 640x480x16, and EGA modes: https://en.wikipedia.org/wiki/Video_Graphics_Array
Here is a forum topic regarding an FPGA VGA 8-bit card: https://www.eevblog.com/forum/fpga/fpga ... -computer/

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 1:19 am
by bbond007
thorr wrote: Sun Nov 13, 2022 12:49 am I would support that idea, even though it was specific to some IBM chipsets and not an actual 8-bit card, but I think it might be easier and possibly make more sense just to go with a basic 8-bit VGA card that would support 320x200x256 and 640x480x16, and EGA modes:
I'd argue its not easier... MCGA is like two modes, maybe one we care about(13h), so that is 48K more VRAM and the palette registers...

13h 320x200-8bit indexed mode is really optimal for the 8088 as it works best with structures <= 64K combined with the simplicity of programming that mode made it very a commonly used mode. Probably the most...

VGA has all of EGA, weird funky modes, needs more VRAM, etc...

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 1:47 am
by thorr
As long as the FPGA code for it already exists somewhere, then it probably is easier to just add 13h like you said. That mode alone is the main thing I would be interested in for 256 colors capability with this core.

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 3:08 am
by spark2k06
Since I started this core I have been clear about one thing. I am not going to develop and maintain BIOSes, but use original and OpenSource ones (which I don't want to modify or maintain).

MCGA is simple, but they require new BIOS functions, which in principle, the first IBM PS/2 have, but this BIOS will not work on this core for many reasons.

EGA/VGA requires an additional BIOS to support it, even if I can find it, the work required to implement it is too great for the real benefit in this core.

In any case, they are implementations that make more sense in a 286+ or directly in the ao486.

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 4:50 am
by thorr
The original BIOS support and getting everything perfect and cycle accurate is one of the main things I love about this core. I am happy with the direction it is taking and wouldn't want to corrupt it for one off requests.

I hope this can be done for each generation of CPU. I love ao486, but I hope it gets replaced some day with the same development compatibility mentality as PCXT.

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 5:46 am
by thorr
Here is a start for the PC-486 core: https://www.ebay.com.my/itm/255751421800 Which developer should we buy this for and send to? :D Too bad it is an AMD chip.

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 5:49 am
by spark2k06
thorr wrote: Sun Nov 13, 2022 5:46 am Here is a start for the PC-486 core: https://www.ebay.com.my/itm/255751421800 Which developer should we buy this for and send to?
I think that a developer will need much more than this to start... and it is, a lot of motivation :lol:

Re: 8-bit Sound Cards

Posted: Sun Nov 13, 2022 5:54 am
by thorr
Wow! Maybe this one (Intel 486 SX in Verilog): https://dspace.mit.edu/handle/1721.1/79470 I am not sure if the PDF contains all the Verilog needed, but if it does, then awesome! :)

Edit: Looking through it, it is not a completely finished CPU. However, maybe Mr. Adam Chen would like to develop the PC-486 core for the MiSTer. :-)

Edit 2: Just having some fun, but I don't want to derail the main discussion topic of sound cards, so I will just leave this last comment. I think PCem source code is the best place to look for how to implement these CPU's and someone who can read that and translate it to Verilog could really get it to work. It would take a ton of time and motivation, unless a tool could be written to translate the source code to Verilog automatically somehow.

Now back to our regularly scheduled program... How about that easy CMS/Game Blaster implementation? :lol: https://www.youtube.com/watch?v=n6Hx188_LDw

Re: 8-bit Sound Cards

Posted: Thu Nov 24, 2022 2:38 pm
by spark2k06
In the latest release I just sent out, we have C/MS Audio available:

viewtopic.php?p=64467#p64467

PCXT_20221124.jpg
PCXT_20221124.jpg (130.21 KiB) Viewed 3292 times
Which is very interesting especially because it is stereo, unlike Adlib and its OPL2:

Adlib Audio mono - Monkey Island

C/MS Audio stereo - Monkey Island

Re: 8-bit Sound Cards

Posted: Thu Nov 24, 2022 3:25 pm
by thisisamigaspeaking
That's great, definitely a good addition to the core. Interesting that AdLib sounds a lot better even though mono.

Re: 8-bit Sound Cards

Posted: Thu Nov 24, 2022 4:23 pm
by thorr
Thank you so much! This is awesome!!!

Re: 8-bit Sound Cards

Posted: Thu Nov 24, 2022 4:50 pm
by Newsdee
Wow! Good job!

CM/S is so interesting to me... sure it sounds more bloopy but that's to be expected.