VOGONS


First post, by keenerb

User metadata
Rank Oldbie
Rank
Oldbie

Forgive me if this is an absurd question.

I've seen Commodore 64 FPGA emulators, and a basic Intel/8088 FPGA implementation as well. Would a decent FPGA have the horsepower necessary to run Adlib/Soundblaster emulation? Would it be able to interface with the ISA bus over GPIO pins?

Reply 2 of 15, by keenerb

User metadata
Rank Oldbie
Rank
Oldbie

The FPGAs I was looking at are generally programmed over serial; it could even be possible to program it in-machine if you included an interface in the design, or attached it to an on-board serial controller...

Reply 3 of 15, by mrau

User metadata
Rank Oldbie
Rank
Oldbie

probably so, but what is there to do - you may mix, you may resample or amp, even midi is kinda optional (easier with additional circuit anyway, i think); almost anything but signal conversion is optional;

Reply 4 of 15, by jxhicks

User metadata
Rank Newbie
Rank
Newbie

I remember seeing this a while back https://www.youtube.com/watch?v=i9vEKyJScYw. OPL3 in FPGA.

I think the only limiting factor is the size of the FPGA (so money basically). That being said, there is one project board being developed right now called the MiSter which has a working version of the ao486 core which emulates a 486 PC with VGA and Sound Blaster. I believe that board costs under $200 US. If a board of that size/price can contain an entire PC with sound, surely just doing the sound card could be done on a much smaller/cheaper FPGA.

Reply 5 of 15, by Kubik

User metadata
Rank Member
Rank
Member

Well... from what I have heard, emulating SID is pretty difficult because there's a lot of analog stuff involved. That would be at least one sound chip that's difficult to emulate in FPGA 😀

Reply 6 of 15, by Jo22

User metadata
Rank l33t++
Rank
l33t++
Kubik wrote:

Well... from what I have heard, emulating SID is pretty difficult because there's a lot of analog stuff involved.
That would be at least one sound chip that's difficult to emulate in FPGA 😀

I wonder: Since SIDs are pretty old and lowly integrated, why has no one making 1:1 replicas yet ?
By all these fans beeing out there, DIE shots must be available somewhere.
And if size is not a limiting factor, a printed circuit could do as well as silicon chip.
I'm thinking of something like that "Z80 on Glass" from 2002.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 7 of 15, by Jepael

User metadata
Rank Oldbie
Rank
Oldbie
keenerb wrote:

Forgive me if this is an absurd question.

I've seen Commodore 64 FPGA emulators, and a basic Intel/8088 FPGA implementation as well. Would a decent FPGA have the horsepower necessary to run Adlib/Soundblaster emulation? Would it be able to interface with the ISA bus over GPIO pins?

I've brought this idea up as well, and I've been dreaming of OPL3 FPGA sitting on ISA (but OPL3 FPGA is already done). There has never been much interest. Basically, an FPGA sitting on ISA bus could be anything, any sound card, any video card, or multitude of all those at the same time, or SD card slot that looks like IDE to PC. Given that backpanel has enough space for all connectors that is. It could even upconvert MDA to DVI or whatnot at the same time, and sound output would not be limited to analog but could be digital SPDIF. Imagine the possibilites of also sniffing the bus to make more accurate CPU emulators.

The problem is mainly that the hardware design for a single ISA card with FPGA is not easy. You have to level convert between 5V TTL signals on ISA and 3.3V signals on FPGA, and large enough FPGAs tend to be in huge BGA packages not soldered on by a hobbyists for prototyping any more. It can be done with an array of discrete logic chips, or maybe a CPLD that is also a programmable logic chip. It just needs a ton of FPGA IO pins just to connect to ISA bus.

I'm not that familiar with writing VHDL or other hardware description language but I've been toying around with this idea. As there are a lot of FPGA hobbyist boards, a simple solution might be a ISA board that has the voltage level conversion and then has a header for connecting an existing FPGA module such as as Saanlima Pipistrello or Zybo.

So those are the reasons that it's much easier to just write the whole PC to run inside the FPGA, as you don't need much external hardware.

Midi uart is also very simple to do with FPGA, no need to have external hardware for that.

Reply 8 of 15, by Kubik

User metadata
Rank Member
Rank
Member
Jo22 wrote:
I wonder: Since SIDs are pretty old and lowly integrated, why has no one making 1:1 replicas yet ? By all these fans beeing out […]
Show full quote
Kubik wrote:

Well... from what I have heard, emulating SID is pretty difficult because there's a lot of analog stuff involved.
That would be at least one sound chip that's difficult to emulate in FPGA 😀

I wonder: Since SIDs are pretty old and lowly integrated, why has no one making 1:1 replicas yet ?
By all these fans beeing out there, DIE shots must be available somewhere.
And if size is not a limiting factor, a printed circuit could do as well as silicon chip.
I'm thinking of something like that "Z80 on Glass" from 2002.

SID die shots are available (google) and I recall someone is/was working on reverse engineering the chip, but making a replica probably isn't that easy and would require major investment. So far, SIDs are available for price that's probably below of what would a new SID cost.

Reply 10 of 15, by jxhicks

User metadata
Rank Newbie
Rank
Newbie

There are a couple of FPGA boards out there with full C64 cores (MiST and Chameleon 64) but I don't know how accurate the SID implementation is. I have a MiST board and the C64 sounds fine to me, but I don't have a real C64 to compare it to.

Reply 11 of 15, by Scali

User metadata
Rank l33t
Rank
l33t

I think part of the 'charm' of the SID, especially the 6581 models, is a direct result of the manufacturing technology.
Since the chip is largely analog, the circuit directly affects how the chip sounds. Poor consistency in manufacturing meant that individual 6581s can vary quite a bit in sound.
The 8580 was built on newer, more consistent process, and as a result the chips are far more consistent. Also, because the filters now actually sound as they were originally intended, there's a big difference with the 6581s (which sound much darker and 'muffled'). Also, Commodore made the huge mistake of fixing the DC offset bug. A bug that was exploited to use the 6581 as a cheap 4-bit DAC, since the volume register could control the DC offset directly.
The 8580 has virtually no DC offset, so samples played with this technique are barely audible. People tend to mod the C64 to create a DC offset externally, so samples work as intended again on 8580.

Anyway, there's no telling what a SID will sound like when manufactured on a modern process.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 12 of 15, by Imperious

User metadata
Rank Oldbie
Rank
Oldbie

There are already 2 FPGA SID replacements out there. One is a continuation of the nano-swinsid
https://www.facebook.com/swinsidultimate/

The other is FPGASID, which will be stereo (twin sids), going into production early 2018

http://www.fpgasid.de/

Atari 2600, TI994a, Vic20, c64, ZX Spectrum 128, Amstrad CPC464, Atari 65XE, Commodore Plus/4, Amiga 500
PC's from XT 8088, 486, Pentium MMX, K6, Athlon, P3, P4, 775, to current Ryzen 5600x.

Reply 13 of 15, by newold86

User metadata
Rank Newbie
Rank
Newbie
Jepael wrote:

The problem is mainly that the hardware design for a single ISA card with FPGA is not easy. You have to level convert between 5V TTL signals on ISA and 3.3V signals on FPGA, and large enough FPGAs tend to be in huge BGA packages not soldered on by a hobbyists for prototyping any more. It can be done with an array of discrete logic chips, or maybe a CPLD that is also a programmable logic chip. It just needs a ton of FPGA IO pins just to connect to ISA bus.

Actually, nothing extremely difficult, have done this a few times... One of my projects - http://www.vcfed.org/forum/showthread.php?464 … 2366#post482366

Reply 14 of 15, by Jepael

User metadata
Rank Oldbie
Rank
Oldbie

That is quite neat. I have to investigate your work further.

Also, if you have any suggestions for a good FPGA starter board (up to 200 euros) I'd be interested to hear your opinions.

Reply 15 of 15, by newold86

User metadata
Rank Newbie
Rank
Newbie
Jepael wrote:

Also, if you have any suggestions for a good FPGA starter board (up to 200 euros) I'd be interested to hear your opinions.

To be honest, it's usually impossible to answer such questions 😀 without further clarification...

Really depends on what do you need - more connectors (which ones ?), lights, GPIOs, on-board memory and other resources... I would say almost any EUR200 board from reputable company (e.g. Terrasic for Altera) allows you to do A LOT (unless you have some very specific need)...

Just a note of warning - I have seen very inexpensive boards from China with a number of nice features, but the quality was terrible. I think the last thing you need during a learning stage - to waste a lot of time investigating why your design is not working, and discover later that it was due a faulty board...