Fixing an LAPC-I

A few days ago my almost new (i.e. not quite 25 years old) Roland LAPC-I arrived. It’s essentially a MT-32 synth on a stick. I plugged it into a Pentium board, tried playing some music and… nothing.

Roland LAPC-I

Roland LAPC-I

Was it perhaps not jumpered to respond at the standard 330h port? (The LAPC-I supports base addresses of 330h, 332h, 334h, and 336h). A quick check with DEBUG showed that there certainly was something responding at ports 330h and 331h. The documentation was in agreement—the jumpers were in their default position indicating port 330h.

The synth’s microcontroller (Intel P8098) was slightly warm so there was at least some power. But the MPU-401 interface was clearly misbehaving. Not only was there no sound but software didn’t think there even was any MPU-401 hardware at all. Perhaps trouble with a too fast PC?

I increased the 430HX chipset’s 8-bit I/O recovery time in the BIOS to maximum. I tried slowing down the CPU. It had zero effect. Perhaps the PC was just too new?

I moved the LAPC-I to a 25 MHz 386 board. This particular LAPC-I seems to be a relatively new unit made in August 1992 and the 386 board is from 1990, so there should really be no speed problems. Still no go, the LAPC-I didn’t behave any better in the 386 than it had in the Pentium. Hmm.

Poking around the MPU-401 registers in DEBUG suggested that the board does not respond to reset or really any command, but does present somewhat reasonable-looking status and data ports.

The previous owner said that the card worked when it was retired, but hadn’t been tested recently. What could have gone wrong? Visual inspection of electrolytic capacitors revealed nothing suspicious. No smell of burnt electronics. No obvious mechanical damage, but there was one problem.

It is painfully obvious that the LAPC-I was not designed as a PC adapter card. It really is a MT-32 on an ISA board, and the MT-32 is a synth where the PCB is enclosed in a steel box with well over an inch of space inside. The mechanical design very much reflects that.

When the same PCB was tweaked and placed on an adapter card, Roland ended up with a very “fat” board. The capacitors are sticking out far enough that it’s very difficult to mount the LAPC-I in a slot with another card next to it.

LAPC-I Capacitor Forest

LAPC-I capacitor forest after straightening

And my LAPC-I looked a bit like someone had sat on it. Not recently, since it was very carefully packed for shipping in a giant box with lots of padding. But nearly all the capacitors (electrolytic and ceramic) that stick out of the board were a more or less bent and flattened against the board. Photos of other LAPC-I boards did not show anything similar.

At the same time, it didn’t look like any of the components were damaged and there wasn’t any apparent short. I straightened out the capacitors slightly so that they wouldn’t touch each other or anything else. I continued going over the board, and because it’s a full-length ISA card, there was a lot of surface to cover.

Then I found it. On the reverse side, the long legs of capacitor C33 were bent in such a way that two of them were touching each other and possibly also a pin on a nearby chip (IC22). Easily straightened with needle-nose pliers. I checked for further suspicious bent pins but found none.

Straightened C3 pins (center)

Straightened C3 pins (center)

I booted the 386 again, and… there was the glorious 80s synthesizer sound! Moved the LAPC-I back to the Pentium 430HX board and sure enough, it worked too.

Moral of the story? A LAPC-I board needs to be carefully stored in a protective box. An anti-static bag or even bubble wrap isn’t enough. Also, there’s a lot that can be done with a pair of pliers.

A minor surprise was that Roland was still manufacturing the LAPC-I boards in the second half of 1992. My Roland SCC-1, the successor of the LAPC-I was made in October 1991, almost a year earlier. The MT-32 itself was already 5 years old in 1992 and the SCC-1 (the first Sound Canvas generation) is far superior in sound quality.

And a closing terminology note. The LAPC-I is often called LAPC-1 (‘one’ instead of ‘capital i’) even though the board very clearly says ‘I’. For the LAPC-I packaging and documentation, Roland used a sans serif font which made it difficult to tell ‘I’ from ‘1’, and the successor was called SCC-1 (‘one’) to muddle things up some more. The confusion is so great that even Roland sometimes refers to LAPC-1. For example the manual Roland offers for download is called LAPC-1_OM.pdf… although the text clearly talks about LAPC-I. It’s a very interesting piece of hardware either way.

This entry was posted in PC hardware, Roland. Bookmark the permalink.

12 Responses to Fixing an LAPC-I

  1. rm says:

    Maybe the “I” was meant to be the Roman numeral “one”, rather than a simple “I” as in the letter “i”. If so, the apparent confusion of I vs 1 even by Roland themselves becomes more understandable.

  2. Michal Necasek says:

    No, for two reasons. It seems highly improbable that the LAPC-I (Roman numeral) would go with the MCB-1 breakout box. As far as I know Roland did not use Roman numerals in product names (SCC-1, MCB-1, etc.).

    More importantly, it is apparent that the I stands for IBM. There was also the LAPC-N for NEC PC-98 systems.

  3. Raúl Gutiérrez says:

    Nice card. You wouldn’t believe how many cards from the flea-market come back to life after straightening pins on the reverse side of the card.

  4. Michal Necasek says:

    Now I would 🙂 The thing that I find slightly harder to believe is that anyone would build a card where this would be a problem.

  5. Bill Sorenson says:

    If any of you guys are interested, my PC Music Feature card is on eBay at the moment.

  6. Dave Bliss says:

    I have just found what looks like ROLAND LAPC-I in very nice condition.

    I can remember paying hundreds of pounds for this in the early 90’s to try to make my PC into a music device.

    As far as I know the card should still function no damage showing anywhere.

    Any idea of what this is worth today to a serious computer museum collector?

    let me know.


  7. Michal Necasek says:

    I’d say something in the 150-300 Euro range for a functioning unit, depending on condition and completeness. If you can’t test it then it depends on how much someone is willing to risk buying a dud.

  8. Sean McDonough says:

    >Now I would The thing that I find slightly harder to believe is that anyone would build a card where this would be a problem.

    You’d think they’d at least keep the caps enclosed in a protective casing; you’d still end up with a fat card taking up the space for two slots, but that can be lived with (as evidenced by nowaday’s profusion of double-wide graphics cards).

  9. I’ve got a LAPC-I card, which I bought new when the card was current. So I’ve never had to worry about the sort of problem you’ve had here, but I’ll make a mental note about this, and take care. Thanks for the published info.

    I’ve also seen reference to timing problems when the card is used in faster machines. Remember that the card is 8 bit, and was designed for XT machines. I understand that the computer CAN be too fast for the card. How this might manifest itself I don’t know. I’ve used my card in 286 and 386 machines, and it’s currently working happily in a Pentium-75. This with commercial ‘clever’ software, and with my own not-clever systems using polling of the ports. Never had any problem.

  10. Michal Necasek says:

    I wonder if there might be confusion between timing problems with the ISA card itself vs. the synth on it. Yes, the LAPC-I is an 8-bit card, but it was designed at a time when 286s were common and 386s weren’t exotic. It shouldn’t have too much trouble. But the synth quite possibly will when too much data is sent to it too quickly. At least that’s a common issue with external MT-32 synths when connected to faster PCs.

  11. Hmm, I’ve not checked things in that way. I use the card now both as a midi interface, so that the P-75 can communicate with external modules, mainly a Yamaha MU90r and a Korg NS5R, and also to play midi files directly, as in files specifically set for MT-32. I’ve not noticed any difference in performance. Some of the midi files sent externally (GM) will be much larger than the MT-32 ones, but there are a couple of MT files that are pushing the limits of the card. There are at least a couple of the latter than I’d have to say are up there with the best of all my midi files. Even compared with some of the XG files playing on the Yamaha unit.

    I did however have problems when I was experimenting with FORTH for playback. Using the same code logic that was working happily with other C software, the FORTH routine was NOT playing correctly. Instructions were being lost, repeatedly, and sometimes randomly. I eventually got it all to work by adding delays into the lowest level FORTH ‘words’. The C (full compiler) should have been faster than the FORTH (sort of interpreter). So I’m not sure it was just speed. Maybe just a DIFFERENCE in the timing, so that computer and card were not in correct sync? Still trying to make complete sense of it.


  12. Michal Necasek says:

    Right, the LAPC-I (if you have the extra gear) can be used as a generic MPU-401 style MIDI interface. I have used a SCC-1 for that, that one requires slightly less exotic cabling.

    Anyway, I don’t know just how sensitive the LAPC-I is to a fast sequence of I/O port accesses (if the card is properly designed, it should have no problems). That depends on CPU speed, chipset, BIOS settings, and other factors.

    Compiled C ought to be faster than interpreted FORTH, but that all depends on exactly what instruction sequences the CPU ends up executing in the two cases, and if the MPU-401 programming was really otherwise identical. There should be no “correct sync”, the problem is just when the CPU accesses an I/O card too quickly and the card is not designed to deal with it.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.