ZX81 driving a SID 6581

Any discussions related to the creation of new hardware or software for the ZX80 or ZX81
User avatar
Andy Rea
Posts: 1606
Joined: Fri May 09, 2008 2:48 pm
Location: Planet Earth
Contact:

Re: ZX81 driving a SID 6581

Post by Andy Rea »

/Mreq, without /RD or /WR ??? that is a bad idea....

Andy
what's that Smell.... smells like fresh flux and solder fumes...
crankorgan
Posts: 163
Joined: Thu Oct 20, 2011 12:53 am

Re: ZX81 driving a SID 6581

Post by crankorgan »

I used the 74HC251 with my BBUM but in that case the Memory Chip has the WR signal. What I don't understand is how the signal comes out of nowhere and then stops. A few minutes later it starts again and then stops!
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: ZX81 driving a SID 6581

Post by sirmorris »

It could be that your SID is being hit with a constant trickle of data then every minute or so the data being received are such that the SID starts singing.

Are you positive that it's a burst of data a minute apart? Do you have a logic probe, sniffer or analyser? I have the latter two pieces of kit and they come highly recommended.

A scope on the SID's !CS line will show something of what is happening.

C
crankorgan
Posts: 163
Joined: Thu Oct 20, 2011 12:53 am

Re: ZX81 driving a SID 6581

Post by crankorgan »

SirMorris,
I collect 465 and B dual trace Tektronix Scopes. It might be a leaky buffer chip. I got my scope hooked up and I am about to re-hook just the address buffer and leds.

With the ZX81 just sitting still the Address and Data Latches start the LEDS flickering. The SID plays a series of noises then it stops and the LEDS stop changing. I removed all circuit from my Memory Backed up RAM/BUFFER. I put a scope on the output of the 74HC251 pin 6 (This Pin through a diode turns off the ROM). After a few minutes the Ghost does it's thing.
I then removed the BBUM?buffer and put a connector on the ZX81 and scoped out the MREQ signal and it was OK! Now I have the BBUM/Buffer back on with the buffer chip that was on the MREQ line removed. Now the MREQ only goes to the 74HC251 chip along with A13 A14 A15.
The MREQ line had a BUFFER on it that is not being used. Maybe that was loading down or injecting a signal on the MREQ line.

Ghost Buster
sirmorris
Posts: 2811
Joined: Thu May 08, 2008 5:45 pm

Re: ZX81 driving a SID 6581

Post by sirmorris »

I have a 465B but it got wet in the shed :( I'm drying it out but I don't have high hopes :cry:
crankorgan
Posts: 163
Joined: Thu Oct 20, 2011 12:53 am

Re: ZX81 driving a SID 6581

Post by crankorgan »

Sir Morris,
Use a hair dryer on it! Don't got too hot! Blow it out with a shop vac in reverse using the crevice tool. One of my 465B units has a digital voltmeter on top. The shipping is more than the scope. Sometimes I am the only bidder on Ebay. It is the type scope I had when I made the big money.

I had the 74HC251 wired to come on at 8-16K and 32-40K. I redid it for 8-16K only. The ghost seems to be gone!
crankorgan
Posts: 163
Joined: Thu Oct 20, 2011 12:53 am

Re: ZX81 driving a SID 6581

Post by crankorgan »

Well I got rid of the ghost! I have no idea why having the 74HC251 turn on at 8K to 16K and 32K to 40K if a Poke is hit. Turning off the 32K to 40K killed the ghost. In any event I got the circuit working. Is it worth it? Some of the sounds of the SID make my one ear BUZZ. I am old and so are my ears. The experiment in my opinion is not worth the effort! I used a 74HC251 to produce a positive going pulse Pulse for the Latches. The Data Latch is a transparent 74HC373 and the Address Latch is a 74HC273 positive edge triggered latch. The addresses settle down before the Data. That's why I used two types of latches. The Pulse from the 74HC251 triggers the 74HC273 Address latch on it's way up! On the way down it allows the 72HC373 to put out Data after it has settled. A different decoded signal might let you use different latches. I used what was already on the BBUM/Buffer. Finally the /CS signal comes from a 74121 that is triggered by the latch signal. I used a 10K resistor and a .001uf cap for the time constant. The output of the 74121 is a 6us negative going pulse to the /CS of the SID. On my proto board I used the +15 volts into a 12 volt regulator. The SID needs +5 and +12. I used a common ground from the ZX81 to the Proto. I did not use the +5 on the proto. That comes from the ZX81.

Onto next Nightmare!
User avatar
yerzmyey
Posts: 1240
Joined: Thu May 15, 2008 10:11 am
Location: Rubber Planet
Contact:

Re: ZX81 driving a SID 6581

Post by yerzmyey »

Well, I wasn't around while this discussion, but a similar conversation took a place on World of Spectrum:
http://www.worldofspectrum.org/forums/s ... hp?t=31856
Maybe it could be helpful somehow, although related to ZX Spectrum.

While the discussion it appeared that to play on Spectrum music from C64 it's actually required to emulate entire C64 environment - plugging the SID itself isn't enough at all.

The subject was related with 3 issues:
- emulating SID on AY
They do it on Atari XL/XE (with their POKEY) and it sounds well:
http://mister_beep.republika.pl/SID_music_on_ATARI_XL.mp3
but it's because they have actually the same CPU, so huge 'environment's emulation part is skipped)

- playing SID songs only by sending notes/frequencies to AY (no SID's sound - just music itself)
It has been done on Amstrad's models of Spectrum, as far as I know, and on Sam Coupe.
http://simonowen.com/sam/sidplay/

- playing SID file by a SID chip plugged into ZX.
http://www.youtube.com/watch?v=Z1MKvA46 ... re=related

In my humble opinion shooting with registers from 'registers dump' would be a good way, but as far as I know it takes huge amounts of memory (for instance, from AY it could be a file about 256Kb or so).

Anyway. It seems like plugging a SID into ZX Spectrum to play C64 songs means to make _almost_ a C64 hardware-emulator in a form of a card added into ZX Spectrum.
Which has been done (although it's still not 'totally finished' yet).
http://zxbyte.ru/sid_blaster_en.htm
Image


Some other related links:
http://www.youtube.com/watch?v=DXqqPr61BCQ
http://zx.pk.ru/showthread.php?t=14289
http://zx.pk.ru/showthread.php?t=17561
IN NIHILUM REVERTERIS - a big text-adventure game for ZX81: http://tiny.pl/g2m6m
"MONOCHROME" issue 5 - (Spring 2014) free paper/PDF magazine about ZX81: http://tiny.pl/q2m44
ZX81 COMPETITIONS 2007/2009: http://zx81.republika.pl/
User avatar
stefano
Posts: 542
Joined: Tue Dec 11, 2012 9:24 am
Contact:

Re: ZX81 driving a SID 6581

Post by stefano »

I found this thread while looking for information on SID to extend the z88dk libraries.
I'm actually on a basic shim to call the SID on the C128 with the same syntax used for the YM PSG.
It is, as said, a very basic function interface.. not the best way to drive the SID really but it will help the portability (programmers can always extend the code adding target specific tricks).
I hear very low frequencies, by using the formula hz/0.0596. Is the SID clocked at a different speed on the C128 ?
Post Reply