RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8323 is a reply to message #8321] Wed, 17 February 2021 11:25 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
One thing I noticed was that CLK on the Z280 was bouncing between 14.8 and 3.686 MHz. I saw that /RESET floats quite a lot when not pulled down by the reset supervisor, so I gave it a 10K pullup to 5V. CLK is now steady at 3.686 MHz and the reset button still causes it to pull down to 0V. I still can't get the prompt from zserldr.bin though, despite setting flow control to 'none'. When loading zserldr.bin I see TXD LED light up very briefly and RDX LED does not light.

Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8324 is a reply to message #8323] Wed, 17 February 2021 12:08 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Clock (pin_21 of RC2014 connector, or pin_43 of CPLD, or pin_47 of Z280) will start off at 3.68MHz, but once reset is negated and processor initialized, the clock should be 14.7MHz. This is the clock that is divided down to generate the 1.84MHz for the serial baud clock, so if your clock is 3.68MHz, the serial port is 28800.

Something is not right with the reset. MCP130 comes with several different flavors and the pin assignments are different. Some MCP130 does not have internal pull up resistor. The one I use has internal 4.7K pull up. My part is MCP130-450DI/TO. MCP130-485 can work with higher supply voltage, but make sure it is DI/TO.
Bill
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8330 is a reply to message #8324] Thu, 18 February 2021 13:15 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
Hah of course I had the HI not the DI version of the MCP310. I was able to turn it 90 degrees clockwise to match the expected pinout. Now /RST seems fine and CLK is 14.7 MHz. CLK doesn't look good though, it's hardly what I'd call a squarewave.

Still doesn't work.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8332 is a reply to message #8330] Thu, 18 February 2021 17:57 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
I'm puzzled why your 14.7MHz clock is not clean. It is generated from 29.5MHz by Z280 so it should be a nice-looking square wave. The fact it is 14.7MHz means the CPLD has generated the correct value for the Bus Timing and Initialization and Z280 should be in UART bootstrap mode.

Hmmm, do this for me: instead of setting your TeraTerm console to 115200 Odd parity, set it to 115200 Even parity; power up ZZRCC in serial bootstrap mode and press a key on your keyboard. This will transmit a character to Z280's serial port, but with the wrong parity. You should see the LED on CP2102 USB-serial adapter silkscreened with 'RXD' turn red and stays red until next reset. This means Z280 is in serial bootstrap mode and has just received a character with bad parity and therefore responded with the error condition. If the 'RXD' LED does not turn red, Z280 is not in serial bootstrap mode.

Could you post detailed pictures of your board both the component side as well as the solder side?

Bill

Edit: Assuming Z280 is in UART bootstrap mode and is receiving data correctly, the next question is whether the RAM is working properly. You are using AS6C4008 (512Kx8) RAM, right?

[Updated on: Thu, 18 February 2021 18:02]

Report message to a moderator

Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8333 is a reply to message #8332] Fri, 19 February 2021 05:33 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
I'm not able to get the RXD LED to light with the incorrect parity setting.

There IS a way the setup works, at least to get the serial bootstrap loaded: set the USB power jumper, remove the barrel jack plug, and plug the USB serial adapter in backwards! I 'discovered' this by accident last night. It should be impossible for this to work, but through some luck of current source and sinks it must power the CPU and bounce the rails in such a way that serial actually works.

This isn't all that helpful in diagnosing the issue, but I thought I'd mention it. At this point I suspect the CPLD, since it was from ebay and has lasered-on markings, and these days half the stuff sold there is counterfeit. Only reasonable thing I can think of it maybe I need to check the 'erase' option when programming? I checked 'write' and 'verify', and Quartus II said it was successful.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8334 is a reply to message #8333] Fri, 19 February 2021 06:55 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
!!! You are saying that you can actually load ZRSERLDR.BIN and get this sign-on message by reversing the serial connector? !!!
ZZRCC Loader v0.1
Change serial port to 115200 N81
Auto start at 0xB400


That's shocking to say the least!

Are T7 and T12 connected? T7 and T12 are the two pairs of jumpers at the end of RC2014 bus close to the CF interface. My thought was the serial receive data are not getting to the Z280, but your comment about connecting the serial adapter in reverse changed everything.

Bill

PS, no need to erase the CPLD. You are doing it right by program then verify. CPLD may be re-branded, but if the programmer recognize it, it is most likely working.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8335 is a reply to message #8334] Fri, 19 February 2021 08:15 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
Yes, inexplicably it works with the serial adapter connected upside-down. It won't go beyond that step, presumably as the CPLD isn't getting any power.

I don't have T7 or T12 set as I don't have the card in an RC2014 bus. They're only needed to put RX and TX on the RC2014 bus right?
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8336 is a reply to message #8335] Sat, 20 February 2021 06:47 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
quarterturn wrote on Fri, 19 February 2021 09:15
Yes, inexplicably it works with the serial adapter connected upside-down. It won't go beyond that step, presumably as the CPLD isn't getting any power.
That's too weird!

CPLD does played a role in that weird case because CPLD generated the proper value on Z280 data bus at reset to enable serial bootstrapping. This weird case does show that serial bootstrap data reached Z280 and successfully stored in RAM to execute.

The question now is why serial bootstrap data did not reach Z280 in normal case. Have you trace the serial input signal from pin 3 of serial port connector through R7 to pin 48 of Z280?

I like you to double check that R5 is not populated, R6 and R7 are 100 ohm, and R9 is 1.8K.

Bill

PS, Like you've said, jumpers T7 and T12 are for putting Rx and Tx signals on RC2014 bus. They are not needed right now.

[Updated on: Sat, 20 February 2021 06:48]

Report message to a moderator

Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8337 is a reply to message #8336] Sat, 20 February 2021 10:16 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
Pin 3 through R7 has good continuity to pin 48 of the Z280. All three of the serial resistors measure to be correct values. R5 is not populated. Here are some board photos:

/forum/index.php?t=getfile&id=1989&private=0
/forum/index.php?t=getfile&id=1988&private=0
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8338 is a reply to message #8337] Sat, 20 February 2021 16:29 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Your board assembly looks great. I don't see any issue. I like the way you built up a SIP resistor from individual resistors.

You've mentioned that 14.7MHz clock does not look 'right'. Can you expand on that comment? Have you look at the output of the 29.5MHz oscillator?

I want to reduce as many components as possible, so have you tried to serial boot without the CF disk? You can serial bootstrap and load ZZRMon without the CF disk.

Hook up a scope to MREQ (RC2014 bus pin 23); while in serial bootstrap, press a key on your keyboard and you should see MREQ goes low for about 140nS per keystroke. This indicates Z280 has received a character from its UART and stored it in RAM. MREQ marks the RAM write access.

If all failed, I'm happy to take a look at your board, no charge. Ship it to me at your expense and I'll fix it and ship it back to you at my expense.

Bill
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8339 is a reply to message #8338] Sat, 20 February 2021 18:33 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
The 29.5 MHz output looks pretty good. There's some ringing on the edges, but not much, and it may look that way due to my use of a clip-on ground and not a nicer ground-probe. I'll upload a picture of the 14.7 MHz clock so you can see what I mean.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8340 is a reply to message #8338] Sun, 21 February 2021 05:33 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
Here's CLK at the pin on the Z280:

/forum/index.php?t=getfile&id=1990&private=0
  • Attachment: 1365-1024.jpg
    (Size: 317.96KB, Downloaded 938 times)
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8341 is a reply to message #8338] Sun, 21 February 2021 09:18 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
Looking at the ZZRCC in 'correctly powered' mode, MREQ jumps around between 460.8 KHz and 1.3 MHz, evenually settling down to 460.8 KHz. This is while having no data sent, TX and RX are just sitting at 5V.

In 'wrongly powered' mode, positive-going pulses can be seen on MREQ with each keystroke.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8342 is a reply to message #8341] Sun, 21 February 2021 10:39 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
The 14.7MHz may be OK. I would check to see how the scope is grounded.

The "correctly powered" mode is all wrong. MREQ should not be active at all when in serial bootstrapping mode. So you are probably right about the CPLD--it is not putting out the correct values when reset is negated so Z280 is not entering serial bootstrap mode.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8343 is a reply to message #8342] Sun, 21 February 2021 10:52 Go to previous messageGo to next message
quarterturn is currently offline  quarterturn
Messages: 86
Registered: April 2018
Member
The same ground connection shows the 24.491 MHz oscillator with a little bit of ringing/overshoot. Maybe a few picofarads to ground would clean it up more.

I only have two EPM7032S and they both behave the same way. They're from ebay, so who knows. I have 10 EPM7064S coming from China... eventually.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8480 is a reply to message #8145] Tue, 20 April 2021 13:10 Go to previous messageGo to next message
borutk is currently offline  borutk
Messages: 34
Registered: November 2015
Member
Plasmo, could you dump your CF card in a file and add that to wiki?
I have built the ZZRCC but i have problems getting the board to boot the serial loader,
maybe because on linux i have minicom, where file upload is only x, y, z modem and ascii.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8481 is a reply to message #8480] Tue, 20 April 2021 14:55 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
borutk wrote on Tue, 20 April 2021 14:10
Plasmo, could you dump your CF card in a file and add that to wiki?
I have built the ZZRCC but i have problems getting the board to boot the serial loader,
maybe because on linux i have minicom, where file upload is only x, y, z modem and ascii.
Mincom under Linux has no ability to send binary files? Egad, I wish I've known about this earlier, it completely mess up the serial bootstrap method, at least under Linux.

The alternative is burn a CF image, but without serial bootstrap backdoor it is difficult to customerize the image.

ROMWBW has been ported to ZZRCC, so you can download ROMWBW and build the image for ZZRCC and copy it to your CF disk. I don't have Linux, so I can't help you with the step-by-step instruction.

I need to experiment more with read and write CF image and find a solution around the lack of serial bootstrapping...
Bill
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8482 is a reply to message #8481] Tue, 20 April 2021 16:56 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
I played with Win32DiskImager a bit and see it has a "read" function which can save a CF disk image into a file. So here is a reasonable alternative to serial bootstrap method of boot CF disk:
Attached is the the baseline ROMWBW image generated for 64MB or bigger CF disk. unzipped to hd1024_zzr_combo.img and use your Linux tool to copy it to your CF disk. With the serial bootstrap jumper installed, you should be able to boot into version 0.5 of ZZRCC monitor. type 'b4' in monitor prompt and it should boot into ROMWBW.

If that works for you, then I should be able to upgrade the baseline CF image with different version of ZZRCC monitor, save it with Win32DiskImager and make the upgraded CF image available on ZZRCC homepage. The reason for these gyrations is because the software supporting ROMWBW is still evolving and I didn't want to ask Wayne Warthen to release different version of ROMWBW for every little modifications to ZZRCC monitor which has nothing to do with ROMWBW itself. So the approach is start off with a baseline CF image, make change to ZZRCC monitor as needed and then make a request for new ROMWBW release once the software is stable.

Bill
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8483 is a reply to message #8482] Wed, 21 April 2021 01:32 Go to previous messageGo to next message
borutk is currently offline  borutk
Messages: 34
Registered: November 2015
Member
Yes, this works well. I had to change the oscillator to 14.7MHz, since 29.9MHz seemes to have been too fast.
It boots into ROMWBW, so i would really appreciate a more expanded image, with a CPM2.2.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8484 is a reply to message #8483] Wed, 21 April 2021 07:09 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Good to know you are successful getting the CF image to boot. The image you have already has CPM2.2 under ROMWBW (type 'c' after 'b4' command to boot CPM2.2 in ROMWBW). The revised ZZRCC I mentioned in earlier post was to make my own version of CPM compatible with ROMWBW's CPM which has 1024 directories. Wayne Warthen successfully ported ROMWBW just last week, so I need to update several software to be compatible and update the documentation as well. It is a bit chaotic right now.

Bill

PS, if you have hardware handshake capability on you USB-serial adapter and mincom software, you should use ROMWBW version of CPM. It is a more flexible and better supported implementation. The only benefit of my implementation of CPM is its simplicity thus its ability to do file transfer without hardware handshake.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8485 is a reply to message #8484] Thu, 22 April 2021 00:49 Go to previous messageGo to next message
borutk is currently offline  borutk
Messages: 34
Registered: November 2015
Member
What do you use for batch transfer of files between PC and CPM?
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8486 is a reply to message #8485] Thu, 22 April 2021 04:45 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
For the DOS environment there is arj.exe to compress multiple files into a single file; XMODEM it to CPM and use unarj.com in CPM to un-compress. I don't know if there are equivalent to arj.exe in Linux environment.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8487 is a reply to message #8486] Thu, 22 April 2021 21:53 Go to previous messageGo to next message
rwiker is currently offline  rwiker
Messages: 14
Registered: February 2016
Junior Member
Quick not about minicom: it is possible to add new protocols. In particular, you can define a protocol that uses "/bin/cat" to transfer binary data.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8488 is a reply to message #8487] Fri, 23 April 2021 09:59 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
If you have something that runs on the micro, and understands .HEX format, it can "load" a program, that comes over a serial connection, into the micro memory. With CP/M 2.2, you can then use the "save" built-in function to write that loaded image to "disk" as a .COM file. The only trick is to slow down the "/bin/cat" execution sufficiently so that the micro can keep up with the (probably *MUCH* faster) LINUX/UNIX system. I use a program that I call "HXIN" that runs on my Z80's, and then a monstrosity, that I call "trickle", to slow the Linux transfer down (i.e. "trickle <whatever>.hex > /dev/ttyUSBx"), where ttyUSBx is the console on the Z80. A kludge, but it works. I call it "crude but effective".

[Updated on: Fri, 23 April 2021 10:00]

Report message to a moderator

Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8489 is a reply to message #8488] Fri, 23 April 2021 17:28 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Roger,
The process you described is literally how I install the first CP/M program (XMODEM) on a new CF disk to bootstrap a new CP/M CF disk.  The ZZRCC monitor is located on 0xB000-BFFF, below CP/M and above most CP/M applications.  XMODEM.COM is first converted to Intel Hex file with 0x100 offset; the monitor has an Intel Hex file load function that loads CP/M to high memory and XMODEM.HEX to low memory; executes program at CP/M BIOS entry point to boot CP/M; then do a "save 17 xmodem.com" to create first file on the CF disk.  XMODEM then transfers the rest of CPM files to the CF disk.

I have a TeraTerm macro that automates the process and installs CP/M files plus Hitech C and Zork123 in about 6 minutes. It is not as fast as using Win32DiskImager to copy image to a new CF disk, but it does exercise many functions of ZZRCC. It remains part of the test suite for checking out a newly created ZZRCC.

Bill
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #8494 is a reply to message #8489] Sat, 24 April 2021 10:41 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Well, there ya' go, Bill!! *grin* It's a proven process to bootstrap a (Z80) system. Not pretty, but it works! As I say, "crude but effective!"
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #9794 is a reply to message #8494] Sun, 27 February 2022 22:54 Go to previous messageGo to next message
borutk is currently offline  borutk
Messages: 34
Registered: November 2015
Member
Bill,

Did you have any progress with ROMWBW and ZZRCC?
If you do have a newer CF image i would appreciate it.
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #9796 is a reply to message #9794] Mon, 28 February 2022 06:15 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
It has been a while and I've lost track of where you are with respect to ZZRCC. Were you able to get it work with Linux and do file transfer? ROMWBW should work well with ZZRCC. There is a current discussion on Google Group about ZZRCC and ROMWBW here. I believe the original poster is using Linux.
https://groups.google.com/g/retro-comp/c/V4UORGpFW5k
Bill
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #9801 is a reply to message #9796] Wed, 02 March 2022 09:18 Go to previous messageGo to next message
borutk is currently offline  borutk
Messages: 34
Registered: November 2015
Member
I could transfer the image you posted to a CF card and boot to CP/M. I didn't do any transfer to the system.
But if there is a newer version of ROMWBW i would like to update. Also if you could post information how the CF card format
looks (which part is where) i could probably change parts of it.

br,
Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #9806 is a reply to message #9801] Thu, 03 March 2022 15:23 Go to previous messageGo to next message
Wayne W is currently offline  Wayne W
Messages: 385
Registered: October 2015
Location: Fallbrook, California, US...
Senior Member
Hi Borut,

The current dev branch of RomWBW includes a ready-to-run CF Card image for ZZRCC. This image can simply be written to the start of a CF Card. This image will boot from ZZRCC -- it includes all the bootstrap stuff. You can find RomWBW development snapshot builds at the RomWBW GitHub releases page at https://github.com/wwarthen/RomWBW/releases. Download the "RomWBW-SnapShot-Package.zip" file from the Assets of the latest development build. Within the Binary directory in that zip file, you will find "hd1024_zzr_combo.img". This is the image file that you can write to your ZZRCC CF Card.

Let me know how you do.

Thanks,

Wayne

[Updated on: Thu, 03 March 2022 15:24]

Report message to a moderator

Re: ZZRCC, Z280+RAM+CPLD+CFdisk, replacing ZZ80CF. [message #9808 is a reply to message #9806] Tue, 08 March 2022 00:36 Go to previous message
borutk is currently offline  borutk
Messages: 34
Registered: November 2015
Member
Thanks guys, i did manage to upgrade the version of disk image.

Best regards,
Bo/
Previous Topic: KiCAD footprint Molex drive power connector?
Next Topic: 74LS688 vs 74LS521


Current Time: Sat Mar 15 20:56:00 PDT 2025

Total time taken to generate the page: 0.00820 seconds