VOGONS


The Soundblaster DSP project

Topic actions

Reply 40 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
Pierre32 wrote on 2022-09-25, 22:54:

So to clarify, for the dummies... this means I can switch my SB16 to a non-bugged DSP version?

I've confirmed it works on a CT1740 card. Not guaranteed to work on newer SB16. I'm going to try a CT2230 next and I will report back

Reply 41 of 1053, by Pierre32

User metadata
Rank Oldbie
Rank
Oldbie

Cool! I have a CT1740. Here's an interesting thing though - our cards have different socketed chips.

CT1740.jpg
Filename
CT1740.jpg
File size
166.55 KiB
Views
1506 views
File license
Public domain
maxtherabbit wrote on 2022-09-25, 19:21:

20220925_142444.jpg

Reply 42 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
Pierre32 wrote on 2022-09-26, 01:10:

Cool! I have a CT1740. Here's an interesting thing though - our cards have different socketed chips.

CT1740.jpg

maxtherabbit wrote on 2022-09-25, 19:21:

20220925_142444.jpg

I had to add the socket for the DSP myself. The chip was soldered directly to the PCB from the factory just like yours

Reply 43 of 1053, by Horun

User metadata
Rank l33t++
Rank
l33t++

I have a CT-1770 (nearly identical to 1740 but scsi not ide) with dsp 4.11 and would like to down grade to 4.05. Now maybe I can 😁
My 1770 has a socket for ASP/CSP chip like pierre's (not soldered smd) so a bit less room to work with but do-able I think.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 45 of 1053, by Horun

User metadata
Rank l33t++
Rank
l33t++
maxtherabbit wrote on 2022-09-26, 01:19:

It is doable. My CT2230 also has CSP socket and I made it fit. Had to file down the outside of the PLCC-44 socket just a fuzz for clearance

Curious what programmer you used. My TL866 does not list 80c52 but does 87c52. Wondering if P87C52EBAA SIGNETICS would work ok.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 46 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
Horun wrote on 2022-09-26, 03:58:
maxtherabbit wrote on 2022-09-26, 01:19:

It is doable. My CT2230 also has CSP socket and I made it fit. Had to file down the outside of the PLCC-44 socket just a fuzz for clearance

Curious what programmer you used. My TL866 does not list 80c52 but does 87c52. Wondering if P87C52EBAA SIGNETICS would work ok.

I used a TL866 as well. 80C52 is a mask ROM - 87C52 (EPROM) should be fine, I used a 89C52 (EEPROM)

Reply 47 of 1053, by appiah4

User metadata
Rank l33t++
Rank
l33t++

The major issue here is desoldering/soldering the SMD components 🙁

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 48 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
appiah4 wrote on 2022-09-26, 13:13:

The major issue here is desoldering/soldering the SMD components 🙁

removing the DSP is a cinch with hot air, I hand soldered the socket after cutting away the plastic in the center - wasn't too bad at all

Reply 49 of 1053, by appiah4

User metadata
Rank l33t++
Rank
l33t++
maxtherabbit wrote on 2022-09-26, 13:20:
appiah4 wrote on 2022-09-26, 13:13:

The major issue here is desoldering/soldering the SMD components 🙁

removing the DSP is a cinch with hot air, I hand soldered the socket after cutting away the plastic in the center - wasn't too bad at all

I'm sure it's easy with the right tools and some skills. I only have a $5 soldering pen 🤣

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 51 of 1053, by rasz_pl

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote on 2022-09-25, 19:21:

it works! burned the decrypted binary to a AT89C52
20220925_142444.jpg

👍
Who is knowledgeable about SB firmware internals enough to be up for Fixing the Roland CM-500 Vibrato Bug type of operation? Definitely @LABS is up there BLASTERBOARD : A new SB 2.0-compatible ISA sound card, he was able to reimplement sb 2.0 in atmega from scratch (source code included in https://github.com/labs-lv/blasterboard)

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 52 of 1053, by Thermalwrong

User metadata
Rank Oldbie
Rank
Oldbie
appiah4 wrote on 2022-09-26, 14:16:
maxtherabbit wrote on 2022-09-26, 13:20:
appiah4 wrote on 2022-09-26, 13:13:

The major issue here is desoldering/soldering the SMD components 🙁

removing the DSP is a cinch with hot air, I hand soldered the socket after cutting away the plastic in the center - wasn't too bad at all

I'm sure it's easy with the right tools and some skills. I only have a $5 soldering pen 🤣

It's possible to do with Chipquik SMD1NL / bismuth solder and a regular soldering iron: https://www.youtube.com/watch?v=FTQqjggeklo
Not easy, but possible.

You just put some flux on the chip's legs, solder on the low-melt solder until you've got blobs of solder on all 4 sides. Then go around them a couple of times and the chip should fall off.
Once it's off, you do have to clean up the low-melt solder with solder wick or cotton buds / tissue, but then the pads should all be intact and clean to use when soldering the chip back on.
Soldering PLCC chips is something I don't find easy, it's probably better to put a socket on there but you'd need a fine point soldering iron tip to not melt bits of the socket when soldering down the legs. I have done this, melting some parts of the socket's base and it doesn't affect operation as long as there are no solder bridges.

Removal is somewhat easier with a hot air machine, though I still prefer to hand solder when putting things back.

Reply 53 of 1053, by Tiido

User metadata
Rank l33t
Rank
l33t

This is pretty nice, I will attempt to de-bug few of my SB16 this way once I get some suitable 805x chips ~

As far as SBpro support goes, it likely is impossible to get Stereo support as it is a function of the mixer chip and the "stereo flag" does not work in SB16 mixer nor does it have DAC and digital sound bus going to it either, but the rest may be doable if there's enough space left in the "DSP" ROM.

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 54 of 1053, by Horun

User metadata
Rank l33t++
Rank
l33t++
maxtherabbit wrote on 2022-09-26, 12:33:

I used a TL866 as well. 80C52 is a mask ROM - 87C52 (EPROM) should be fine, I used a 89C52 (EEPROM)

Thanks ! I see some plcc44 Atmel 89c52 on fleebay like the ones in your picture (duh I should have looked closer ;p) for about same as those 87c52's, they are local here in USA so will order a few.
If only my solder skills were as good as yours I would be a bit more enthusiastic 😀

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 55 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

Frankly hand soldering the PLCC chip directly to the board is easier IMO, if we were at a point where a truly bug free binary was available I wouldn't have bothered with the sockets

Reply 56 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote on 2022-09-26, 15:16:

Ok so it seems to work fine on the CT2230 as well. Havent tested the MPU-401 yet but all digital audio and OPL working fine

Update on this - the downgraded CT2230 plays MIDI just fine and bug free. However, the mod broke digital sound on Duke Nukem 2. The CT2230 with DSP 4.05 freezes at the first gunshot in the attract loop (tried on two different systems) while the same card with DSP 4.11 plays it perfectly.

Reply 58 of 1053, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
rasz_pl wrote on 2022-10-04, 03:45:

That could very well fix it, but the point is a genuine SB16 *should* have no problem playing the game unmodified, and the mod breaks it (only on the CT2230, the modified CT1740 still plays duke2 perfectly - I suspect the issue is the CT1747 bus interface)

Reply 59 of 1053, by SaxxonPike

User metadata
Rank Member
Rank
Member

I realize this thread has been dormant for some time, but it also seemed like the correct place to mention I've started work on reversing the Sound Blaster 16 DSP code posted here. Thanks to the forum members for posting the decrypted dumps, and Tube Time for getting things started with the SB 2.0 DSP. I've already found quite a few undocumented features so far. My main goal is to hit the 4.05, 4.11 and 4.13 firmwares available to see what's different.

Ultimately, I'd love to get my hands on the 4.16, but I imagine that would have to be dumped in a very different way given it's only ever found in a fully integrated solution.

Anyway, here's the work in progress. There's not much and only CTL files for a disassembler called D52 (which when combined with the CTL, will produce a source file that has labels and registers named)

https://github.com/SaxxonPike/sb-dsp-firmware

When I've completed this, I'm going to write up more on the undocumented registers, and perhaps also take a look at what that might mean for patches to DosBox. I'd also like to better understand the ASP-SB connection, but I currently lack a card that has ASP installed. (I used to have one, and traded it, oops.)

Sound device guides:
Sound Blaster
Aztech
OPL3-SA