Roland CR78 not writing to RAM - Page 1
Forum section: electronics / repair

author: Audiorepair
author_rank: Frequent Contributor
timestamp: November 17, 2020, 07:26:25 pm
content: This is a very old drum machine.It is all working except the programming part, where you write your own rhythms to RAM.The write to RAM I believe is triggered by an Interrupt, which can be seen on the schematic as pin6 on the top of the 8048 processor, and marked INT.This Interrrupt signal is present when a Write is asked for, but nothing actually happens.There is no activity from the (NOT) RD or WR pins 8 & 10 EVER that I can see.Even at bootup, neither RD or WR show anything at all.It seems the machine works normally without use of the RD and WR functions, I have lifted these pins from the sockets, and it still goes Bosh, Tish, on it's pre-programmed patterns, it just won't record any custom data.With these pins lifted, there is still no activity I have managed to spot on these pins from bootup onwards.So I kind of suspect the processor, but am unsure whether something else might be preventing the RD WR pins activating.Is it at all likely that a processor might go faulty by losing these two pins?The 8048 processor has Mask ROM on board, there are programmed substitutes available on the Interweb at significant cost.I took this punt once before on a different product that also had what I thought was a Mask Rom Processor failure, but lost the bet, so am a little more cautious now.Full service manual here:http://www.synthfool.com/docs/Roland/Roland_CR78_Service_Notes_BW_medium.pdfPSEN and ALE are present, by the way.

author: m k
author_rank: Super Contributor
timestamp: November 18, 2020, 12:49:15 pm
content: ROM is always on and selected by _PSEN, _RD and _WR are for RAM only.RAM CE2 is from reset so ok, _CE1 is from a decoder.So if _PSEN is up then ROM is not inuse.If _CE1 from the decoder is low when _PSEN is up then RAM can be used.

author: Audiorepair
author_rank: Frequent Contributor
timestamp: November 18, 2020, 01:14:24 pm
content: Quote from: m k on November 18, 2020, 12:49:15 pmHi, this is quite unusual in that when the machine is in playback mode, Port1's 8 pins 12 - 19 are inactive, so the whole RAM/ROM circuit is not running at all.When switched into Program mode, Port 8 becomes active, but is just static data, nothing changes.An Interrupt signal is supposed to Poll Port 2 pins 35-38 to read the status of switches, then I guess should activate the _CE1 via the decoder, as well as activate the WR and or RD pins to write to the RAM.Nothing at all happens when an Interrupt signal goes into pin 6.Here is a photo of one of the Port 1 pins. There are steps in the waveform around 1.3v, I assume this is the tri-state inactive level, and is OK?When Port 1 is inactive during playback, each of the 8 pins are held at this same 1.3v level.To clarify, by Playback mode I mean when it is just being used as a preset drum machine with set rhythms - it doesn't need the ROM or RAM to achieve this, though if you remove the ROM, (EPROM), the machine won't work at all, so it must need the ROM to boot. (This EPROM is in addition to the Mask Rom present on the processor which seems to be what drives the machine in Playback)Edit: Zoomed out image of Port1 data added. Is this OK or showing the problem?

author: m k
author_rank: Super Contributor
timestamp: November 18, 2020, 07:28:34 pm
content: Don't expect that I understand anything about the machine, I'm just watching pictures.Tri-state of that thing is also very unknown.It's up and down anyway so it's not stuck.Playback can be ok, MCU knows that the storage is empty.If _WR is not even tried then something must block the whole process since the machine doesn't know that something is broken and should try writing.MCS-48 and uPD manuals are saying that INT is actually active low.Is it going down?_INT is not alone, it is enabled by the decoder.So if _INT can happen then decoder is at least partially operational.

author: Audiorepair
author_rank: Frequent Contributor
timestamp: November 19, 2020, 12:24:31 pm
content: Quote from: m k on November 18, 2020, 07:28:34 pmFunny, the datasheets do say that Int is active low, but the service manual clearly states the opposite, and the flowchart printed agrees too.I'v'e had a look at the circuit and I also agree, and there is a short positive Int pulse. Weird.Anyway, I think I may have found the problem, or at least A problem.The decoder carrying the switch data looks to be locked high on the dataline carrying the position of the Instrument switch.So the Int routine first looks at the status of these switches, to see where to store the data, and which Instrument you are writing, but I guess if it can't see any instrument data at all it can't actually do anything meaningful, so it does nothing.The Instrument switch actually has 2 wafers, and it does select the appropriate Instrument when you are programing, but the second wafer switches Port Data to detect the Instrument selected when you are trying to write to RAM, so it took me a while to suspect the Instrument switch circuitry.Thanks!