English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   support.Hardware (https://eab.abime.net/forumdisplay.php?f=20)
-   -   Connecting a real c64 SID to the amiga (https://eab.abime.net/showthread.php?t=109035)

Bruce Abbott 09 December 2021 06:57

Quote:

Originally Posted by Marce (Post 1520794)
btw,

The commodore Amiga should have built in a SID chip from scratch
or at least since 1987 when the A500 was out

And a YM2149 too, right? Oh and while you're about it, better put an Adlib and OPL chip in there too!

No. The reason we have so much awesome Amiga music is that it didn't have old 8 bit sound chips in it.

Quote:

together with paula there would have been 7 audio channels
4 for music and 3 for sid sound effects
The video games would have been different and much better in sound
and not all the crap created which you choose between audio effects or music
But that still wouldn't have been enough for Amiga fans. Some new sound chip would come out for the PC, or a game would be ported from MSX, and SID wouldn't cut it. Better to keep things simple and encourage developers to squeeze more out of Paula than just do lazy ports.

Quote:

We would also have had a perfect emulation in a 020 of the commodore 64, today is not very possible unless you have a 040/40mhz or 060/50 since the SID emulation waste lot of cpu time
The C128 had a perfect emulation of the C64. As a result 99% of games played on it were C64 games, because why bother making a C128 specific version?

But today it's different. We already have a vast library of Amiga software, and many of us are interested in playing with other sound chips without having to change platforms. So now is the right time to think about adding them to the Amiga.

Quote:

now is late for that, it does not make sense for me get into complications when something is not standard nobody is going to create good software
Most players support plugins, and many emulators are open source now so adding real hardware sound to them shouldn't be difficult. Games being ported from other platforms may run better and more 'accurately', so there is an incentive to make use of extra sound hardware when present. There are plenty of ways to add the hardware without 'complications' - the only problem is deciding which way is best for you.

Quote:

Originally Posted by pandy71
Perhaps it will be easier to do some systematic approach.

Is there any SID for non-Zorro Amiga models?
Is there any possibility to create some SID extension for non-Zorro Amiga models?
Clock Port feasibility?
IDE Port feasibility?
other ideas?


The A1200 is a bit of a conundrum because while it has several interface options, they might already be taken up by something else. IDE port probably has a hard drive or two on it, PCMCIA might have a network card or CF Card plugged in, clockport might have an RTC or other device in it. I am leaning towards the clock port because it is spare on many machines, expanders are available, and it has most of the signals required. You just need one more address line and +12V - which can easily be applied via separate jumper wires.

For a solution that works on any Amiga you could use the parallel port. One of the printer control lines would be toggled to indicate address or data, and the other two used for chip selection. With the SID you might need a latch to hold the address, while the YM2149 already uses a multiplexed bus so it doesn't need separate address lines (just 1 line for address/data muxing). The circuit would need to be externally powered, perhaps via the disk drive port or using an external power supply. The box could also be used to pass through the Amiga's stereo sound output while mixing SID/AY sound in with it.

Lisko 09 December 2021 13:01

Quote:

Originally Posted by Bruce Abbott (Post 1520979)
But today it's different. We already have a vast library of Amiga software, and many of us are interested in playing with other sound chips without having to change platforms. So now is the right time to think about adding them to the Amiga.

It has already been done in the late 90s, early 2000s. The amiga version of the catweasel has the option of connecting a sid chip to the clockport and playsid library can make use of it. We could RE that part of the catweasel and already have the software to play with it.

pandy71 09 December 2021 21:51

Quote:

Originally Posted by Bruce Abbott (Post 1520979)
The A1200 is a bit of a conundrum because while it has several interface options, they might already be taken up by something else. IDE port probably has a hard drive or two on it, PCMCIA might have a network card or CF Card plugged in, clockport might have an RTC or other device in it. I am leaning towards the clock port because it is spare on many machines, expanders are available, and it has most of the signals required. You just need one more address line and +12V - which can easily be applied via separate jumper wires.

For a solution that works on any Amiga you could use the parallel port. One of the printer control lines would be toggled to indicate address or data, and the other two used for chip selection. With the SID you might need a latch to hold the address, while the YM2149 already uses a multiplexed bus so it doesn't need separate address lines (just 1 line for address/data muxing). The circuit would need to be externally powered, perhaps via the disk drive port or using an external power supply. The box could also be used to pass through the Amiga's stereo sound output while mixing SID/AY sound in with it.

Ok, lets remove IDE port from list (it was my fault to put this stupid idea that confuse so many forum users) - for maximum compatibility parallel port seem to be best but it may be unable to provide sufficient timing when advanced SID use is on mind - perhaps best is to use some form of autonomous synthesizer with for example small uC (AVR? STM32?) to control SID (other chips? provide additional PCM?) and use serial (MIDI?) or parallel port as control bus - such synthesizer could use different 8 bit chips (SID, AY, SAA, TI, 1 bit ZX etc) so satisfy expectation of any unhappy Amiga user...

And +12V can be produced from +5V so no additional power line required (modern DC/DC boost regulators can be made audio friendly).

But to be honest i see lot of Amiga users unhappy because they use parallel port for audio sampler, printer, SD card, Ethernet card, video digitizer etc... :laughing

Lisko 12 December 2021 22:11

Hi, I found this:
Code:

https://github.com/atbrask/RealSIDShield
Basically it's an easy to use arduino shield for connecting a SID. It communicates via serial and on the github there is a python script that decodes a .sid file and plays it thru the sid chip. As the communication happens via serial it could be possible to connect it to the amiga and there have a program that emulates the c64 cpu, like playsid library does, and send the music to the sid on the serial port. You gurus think that the standard amiga serial port is enough to sustain the bitrate for the sid chip? I will try to assemble one of those and start experimentation asap.

Solo Kazuki 13 December 2021 14:02

Quote:

Originally Posted by pandy71 (Post 1520937)
Are you familiar with concept of the piggyback?

Sadly, Yes. My last Amiga (before this which I have now) was one big sandwich in tower box. Since that I'm not consider this option as good idea.

Quote:

Originally Posted by pandy71 (Post 1520937)
As SID require PCB anyway then adding passtrough IDE connector looks to me pretty obvious - of course there are concerns raised by Daedalus associated with some IDE extensions/buffers but still for plain A1200 with only single IDE HDD connected this is neat point (IDE port) where data bus is available and some address lines also provided.

And what if someone want use two devices? I had HDD and DVD-RW, so removing one was big problem because I was using them.

Bruce Abbott 15 December 2021 21:46

Quote:

Originally Posted by Lisko (Post 1521571)
You gurus think that the standard amiga serial port is enough to sustain the bitrate for the sid chip? I will try to assemble one of those and start experimentation asap.

That Arduino shield runs at 115200 baud, which is ~11kB/s. Most of the time it would only be sending bytes, which the Amiga shouldn't have any problem with at that speed.

One interesting aspect of the design is that it uses a latch to multiplex the SID address and data coming from the ATmega MCU. Apart from the SID clock only 3 control signals are required, so it might also be possible to control this shield directly from the Amiga's parallel port.

pandy71 16 December 2021 21:56

Quote:

Originally Posted by Solo Kazuki (Post 1521644)
Sadly, Yes. My last Amiga (before this which I have now) was one big sandwich in tower box. Since that I'm not consider this option as good idea.

Then you need Zorro slots - this is only way to avoid "sandwich".

Quote:

Originally Posted by Solo Kazuki (Post 1521644)
And what if someone want use two devices? I had HDD and DVD-RW, so removing one was big problem because I was using them.

Buffered IDE splitter?

pandy71 16 December 2021 21:57

Quote:

Originally Posted by Bruce Abbott (Post 1522021)
That Arduino shield runs at 115200 baud, which is ~11kB/s. Most of the time it would only be sending bytes, which the Amiga shouldn't have any problem with at that speed.

One interesting aspect of the design is that it uses a latch to multiplex the SID address and data coming from the ATmega MCU. Apart from the SID clock only 3 control signals are required, so it might also be possible to control this shield directly from the Amiga's parallel port.

technically this can be sufficient to control MCU by some form of primitives and MCU can control SID precisely with possibility to use advance tricks same as on C64.

Solo Kazuki 17 December 2021 10:07

Quote:

Originally Posted by pandy71 (Post 1522199)
Buffered IDE splitter?

Are You sure It would be compatible with all of them? Not to mention You must "steal" some transfer and addresses to handle such device. Clockport is way better option, because it's designed for various extensions.
Moreover I have two SIDBlasters (one with 6581R4AR and one with 8580R5) and it's in size similar to RTC unit. So it might be very small device just to clockport.

I'm wondering if 2SID or even 3SID interface would be much bigger.

Lisko 22 December 2021 12:43

Quote:

Originally Posted by Bruce Abbott (Post 1522021)
That Arduino shield runs at 115200 baud, which is ~11kB/s. Most of the time it would only be sending bytes, which the Amiga shouldn't have any problem with at that speed.

One interesting aspect of the design is that it uses a latch to multiplex the SID address and data coming from the ATmega MCU. Apart from the SID clock only 3 control signals are required, so it might also be possible to control this shield directly from the Amiga's parallel port.

Yes, but on the Amiga I don't have coding experience so for now I prefer sticking with the MCU design and feed it over the serial port. I'm planning to make some boards to start experimenting, if someone is interested and want to help or carry over the Amiga's software development would be very appreciated. This will not be a commercial project at all so I'm thinking to release all under gpl2.

pandy71 22 December 2021 22:03

Quote:

Originally Posted by Solo Kazuki (Post 1522239)
Are You sure It would be compatible with all of them? Not to mention You must "steal" some transfer and addresses to handle such device. Clockport is way better option, because it's designed for various extensions.
Moreover I have two SIDBlasters (one with 6581R4AR and one with 8580R5) and it's in size similar to RTC unit. So it might be very small device just to clockport.

I'm wondering if 2SID or even 3SID interface would be much bigger.

Well... clock port is similar hack to my proposal IDE hack - there is only one difference - clock port is 8 bit where IDE port is 16 bit that's all...

of course you can use clock port or even add missing components to the PCB and make clock port 16 bit...

Personally i would rather prefer external solution with interface (USB? Serial?) so SID can be hooked not only to Amiga but also for example to the PC (unused serial port on 8520 can be used to deal with Amiga UART limitations).


All times are GMT +2. The time now is 20:26.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.04825 seconds with 11 queries