RP2014 Zed Pro - It works!

504 views
Skip to first unread message

Andrew Herron

unread,
Jun 2, 2022, 4:16:53 PM6/2/22
to RC2014-Z80
Hi all,

I'm a newbie to the Group and to building hardware too so my RC2014 Zed Pro kit was a bit of a leap in the dark to say the least. But after removing the ESP8266 Wifi Module (the bus voltage went down to 1.8v with that module in a slot... that needs further investigation) and installing PuTTY on my Rpi I powered up from the barrel jack and pressed the back planes reset button and I saw the RomWBW Boot screen and was in the boot loader - Yay!

So the basics are working nicely. My Compact Flash module doesn't eeem to be listed on the boot screen so that needs investigation? I assumed that would get auto detected? But maybe I need to configure something to make that happen?

I have another question about the Compact Flash Module - will it be able to access a MicroSD card in a Compact Flash adapter?

Anyway I am super excited to have a mostly working RC2014 :-)

Best

Andy

Dylan Hall

unread,
Jun 2, 2022, 10:02:10 PM6/2/22
to rc201...@googlegroups.com
Hi Andrew, I've done some superficial testing with a SD card -> CF adapter a while back (https://www.aliexpress.com/item/32992600962.html).

Using the RC2014 CF module the adapter was detected but reported an implausible size and I wasn't able to make it work.
I then tried the same adapter in the PPIDE module and that worked. 

Dylan


--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/ecab4877-6078-409b-b735-31931abebeedn%40googlegroups.com.

Andrew Herron

unread,
Jun 18, 2022, 12:22:57 PM6/18/22
to RC2014-Z80
Quick - update on my EP8266 Module... the problem seems to have been that the 3v3 regulator had blown. Removing the regulator was a challenge as its a surface mount component. In the end I used low temperature SMD de-soldering alloy and this worked like magic! You simply drag solder the alloy across the pads and the component just floats off. The alloy remain molten at a low temp for a few secs after you remove the iron and so its possible to remove it from the board easily in that state. Then it was just a matter of cleaning the pads up by removing the allow with copper braid, re-tinning the pads with solder and soldering in the replacement. On power up now the ESP8266 onboard LED flashed briefly when power was connected so I knew the board was 'alive'.

I am now completing the configuration by following Spencers guide and have the two on-board Red/Green LED's flashing on TX/RX. Putty so far is not communicating with ESP8266 but I think that is just a Telnet config issue.

Andy

Wayne Warthen

unread,
Jun 18, 2022, 7:49:01 PM6/18/22
to RC2014-Z80
On Thursday, June 2, 2022 at 1:16:53 PM UTC-7 totall...@gmail.com wrote:
So the basics are working nicely. My Compact Flash module doesn't eeem to be listed on the boot screen so that needs investigation? I assumed that would get auto detected? But maybe I need to configure something to make that happen?

The CompactFlash module should be detected automatically by RomWBW (assuming a CF card is inserted).  The CompactFlash module is known to be finnicky.  You can try different CF cards and try relocating the module as close as possible to the CPU module on the bus.  There are several threads of discussion about this in this forum -- you'll just need to search for them.

-Wayne

Andrew Herron

unread,
Jun 19, 2022, 5:35:52 AM6/19/22
to RC2014-Z80
Wayne - I have a new 4gb CF Card arriving today and will see if that works. Thanks to both you & Dylan for help with this.

Andy

Andrew Herron

unread,
Jun 20, 2022, 12:56:36 PM6/20/22
to RC2014-Z80
Should a brand new 4gb CF Card be detected or will it only be if it has a valid file system on it?

Andy

On Sunday, June 19, 2022 at 12:49:01 AM UTC+1 wwar...@gmail.com wrote:

Wayne Warthen

unread,
Jun 20, 2022, 4:56:14 PM6/20/22
to RC2014-Z80
On Monday, June 20, 2022 at 9:56:36 AM UTC-7 totall...@gmail.com wrote:
Should a brand new 4gb CF Card be detected or will it only be if it has a valid file system on it?

Yes, RomWBW will detect and display a boot message with the size of the CF card regardless of it's content.  You should see something like this:

IDE: IO=0x80 MODE=MK4
IDE0: 8-BIT LBA BLOCKS=0x00773800 SIZE=3815MB
IDE1: NO MEDIA


If you don't see anything similar to the above, you should probably search this forum for past threads about this.

Thanks,

Wayne

 

Andrew Herron

unread,
Jun 24, 2022, 10:18:58 AM6/24/22
to RC2014-Z80
Wayne - I see the following in the terminal after a reset;

IDE: IO=0x10 MODE=RC
IDE0: NO MEDIA
IDE1: NO MEDIA

I will search the forum as you suggested.

Andy

Wayne Warthen

unread,
Jun 24, 2022, 1:20:36 PM6/24/22
to RC2014-Z80
On Friday, June 24, 2022 at 7:18:58 AM UTC-7 totall...@gmail.com wrote:
Wayne - I see the following in the terminal after a reset;

IDE: IO=0x10 MODE=RC
IDE0: NO MEDIA
IDE1: NO MEDIA

Yeah, that is what you would see if 1) there is no CF Card inserted, or 2) there is a hardware issue between the CPU board and the CF board.

I will search the forum as you suggested.

Yes, there is a lot of good information on this topic if you search for it.

Of course, you should also carefully check your board construction for any issues.

Thanks,

Wayne 

Andrew Herron

unread,
Jun 27, 2022, 11:59:48 AM6/27/22
to RC2014-Z80
I now have the IDE Module installed and CF Card reader connected to the 40pin connector. Both my original RomWBW card and a new one that Spencer kindly sent me in case my original card was faulty, work. So the problem is with the CF Storage Module clearly.

Thanks

Andy

Wayne Warthen

unread,
Jun 27, 2022, 4:14:59 PM6/27/22
to RC2014-Z80
On Monday, June 27, 2022 at 8:59:48 AM UTC-7 totall...@gmail.com wrote:
I now have the IDE Module installed and CF Card reader connected to the 40pin connector. Both my original RomWBW card and a new one that Spencer kindly sent me in case my original card was faulty, work. So the problem is with the CF Storage Module clearly.

Glad it's working now.

-Wayne 

Laszlo Szolnoki

unread,
Jul 2, 2022, 7:42:50 AM7/2/22
to RC2014-Z80
I also struggled with the CF card for a while. I couldn't understand why only certain cards were accepted as CF media by romwbw. I was uncomfortable with hardware addressing from the beginning. In the 80's I learned that addressing should be unique and noise in chip selection should be minimized. So I went back to the roots and built a PAL clock synchronous address decoder with A7-A3, /IORQ, /M1, /RD, /WR. I also buffered the data bus. In addition I realized, that the ide driver accept only a part of the CF card signatures. I modified this part of ide.asm and now I can use a variety of CF cards. The system is quite stable. If anybody is interested in details, simply let me know.
Cheers
Laszlo

cfcard.jpg


; DETERMINE IF CF DEVICE
LD HL,HB_WRKBUF ; FIRST WORD OF IDENTIFY DATA HAS CF FLAG
;==================================================================================================
#IF (IDETRACE >= 3)
CALL IDE_PRTPREFIX
PRTS(" DETECT CF SIGNATURE $")
#ENDIF
INC HL
LD A,(HL) ; 2ND BYTE OF MARKER IS $84
#IF (IDETRACE >= 3)
CALL IDE_PRTPREFIX
PRTS(" SIGNATURE LOW BYTE=$")
CALL PC_SPACE
CALL PRTHEXBYTE
#ENDIF
CP $84 ; COMPARE
LD A,$8A
JR Z,IDE_INITDEV02 ; IF NO MATCH, NOT CF
LD A,(HL)
CP $04 ; 2ND BYTE OF MARKER IS $04
JR Z,IDE_INITDEV01
LD A,(HL)
CP $00 ; 2ND BYTE OF MARKER IS $00
JR NZ,IDE_INITDEV1 ; NOT CF
IDE_INITDEV01:
DEC HL
LD A,(HL)
#IF (IDETRACE >= 3)
CALL IDE_PRTPREFIX
PRTS(" SIGNATURE HIGH BYTE=$")
CALL PC_SPACE
CALL PRTHEXBYTE
#ENDIF
AND $40
CP $40
#IF (IDETRACE >= 3)
CALL PC_SPACE
CALL PRTHEXBYTE
#ENDIF
JR Z,IDE_INITDEVCF ; IS CF
JR IDE_INITDEV1 ; NOT CFC
IDE_INITDEV02:
DEC HL
CP (HL) ; FIRST BYTE MUST BE $8A IF CF
#IF (IDETRACE >= 3)
CALL PC_SPACE
CALL PRTHEXBYTE
#ENDIF
JR NZ,IDE_INITDEV1 ; NOT CF
IDE_INITDEVCF:
#IF (IDETRACE >= 3)
CALL IDE_PRTPREFIX
PRTS(" CF DEVICE FOUND$")
CALL PC_SPACE
CALL PRTHEXBYTE
#ENDIF
SET 0,(IY+IDE_MED) ; SET FLAGS BIT FOR CF MEDIA
;==================================================================================================
;
IDE_INITDEV1:
; DETERMINE IF LBA CAPABLE

Phillip Stevens

unread,
Jul 2, 2022, 8:35:49 AM7/2/22
to RC2014-Z80
Laslo wrote:
 The system is quite stable. If anybody is interested in details, simply let me know.
Cheers
Laszlo

Very nice looking board Laszlo.
I'm sure that people would love to see the schematics. I know I would.

Without wanting to be the Trademark Police, as its been over three years since this conversation came up, its worth mentioning...

"Designed for RC2014" is the preferred way to mark personal PCBs, to avoid confusion with Spencer's RC2014 original boards.
He wrote some guidelines on the use of "Designed for RC2014" here, buried deep in the Group History.

Cheers, Phillip
 
cfcard.jpg

Tadeusz Pycio

unread,
Jul 2, 2022, 12:47:42 PM7/2/22
to RC2014-Z80
I can see that not only I had problems with CF cards. A similar module is already in production. :)

CF-Card1.png
cf-card.pdf

Wayne Warthen

unread,
Jul 2, 2022, 3:31:46 PM7/2/22
to RC2014-Z80
Hi  Laszlo,

On Saturday, July 2, 2022 at 4:42:50 AM UTC-7 lgszo...@gmail.com wrote:
I also struggled with the CF card for a while. I couldn't understand why only certain cards were accepted as CF media by romwbw. I was uncomfortable with hardware addressing from the beginning. In the 80's I learned that addressing should be unique and noise in chip selection should be minimized. So I went back to the roots and built a PAL clock synchronous address decoder with A7-A3, /IORQ, /M1, /RD, /WR. I also buffered the data bus. In addition I realized, that the ide driver accept only a part of the CF card signatures. I modified this part of ide.asm and now I can use a variety of CF cards. The system is quite stable. If anybody is interested in details, simply let me know.

Thanks for finding this.  I now see the place in the CompactFlash Specification that details the alternate values for Word 0 of the Identify Device command.  I will incorporate this in the RomWBW IDE  and PPIDE drivers.  FWIW, the detection of a CF Card does not affect the operation of RomWBW at all, it is purely a display thing.

Thanks,

Wayne

Laszlo Szolnoki

unread,
Jul 3, 2022, 9:11:27 AM7/3/22
to RC2014-Z80
Hi Phillip,
I am sorry for not taking care of trademark issues. It was not my intention to violate any rules. (By the way, even after following the link, I didn't find any clear instructions on how to handle custom designs for the RC2014 platform). The board was not intended for the public at first. I am doing some rework before making the design files available. This board was created with EaseEDA, but I basically use EAGLE.  
I have attached the schematics and PLD code for simulation and programming. The primary and secondary addresses are set to 10H and 20H respectively. After fixing a problem with the clock, my system runs quite stable at 7.37 MHz.
I needed a reliable solution to transfer files from an openSUSE host to the RC2014 system for testing. I did not manage to implement file transfer via the serial interface. This part of my project is now working sufficiently so that I can concentrate on my main goal, which is to handle floppies from Robotron PCs. I have connected 2 floppy drives (3.5" and 5.25"). Now I start to delve into the depths of the floppy driver. Keep fingers crossed for my success!
Cheers
Laszlo

CFDUALDECCLK.PLD
Unbuffered_CF_Card.pdf
Unbuffered_CF_Card.pdf

Laszlo Szolnoki

unread,
Jul 3, 2022, 9:28:57 AM7/3/22
to RC2014-Z80
Hi Wayne,
Wayne, I love romWBW! No complaints at all! When I was trying to understand the problem, I came across this topic.
By the way, is it possible to run 2 CF cards in parallel? I think it should be possible, but I haven't figured out the right configuration for such a system.

So far I'm working with the RomWBW v3.0.1 package. With an openSuse Linux host it worked right away. Now I tried to use the snapshot. Unfortunately I get an error message. Do you have any advice how to fix this?
Thanks
Laszlo

../../Tools/Linux/zxcc ../../Tools/cpm/bin80//Z80ASM -chario/MF
+ ../../Tools/Linux/zxcc ../../Tools/cpm/bin80//Z80ASM -chario/MF

Z80ASM Copyright (C) 1983-86 by SLR Systems Rel. 1.32 #AB1234

 chario/MF
End of file Pass 1
End of file Pass 2
 0 Error(s) Detected. 128 Program Bytes.
 28 Symbols Detected.


../../Tools/Linux/zxcc ../../Tools/cpm/bin80//Z80ASM -move/MF
+ ../../Tools/Linux/zxcc ../../Tools/cpm/bin80//Z80ASM -move/MF
zxcc: Cannot locate bios.bin

                            make[2]: *** [../../Tools/Makefile.inc:98: move.rel] Fehler 1
make[2]: Verzeichnis „/home/laszlo/zilog/romwbw/RomWBW-SnapShot/Source/CPM3“ wird verlassen
make[1]: *** [Makefile:59: zpmbios3] Fehler 2
make[1]: Verzeichnis „/home/laszlo/zilog/romwbw/RomWBW-SnapShot/Source/CPM3“ wird verlassen
make: *** [../Tools/Makefile.inc:136: all] Fehler 2

Phillip Stevens

unread,
Jul 3, 2022, 9:43:04 AM7/3/22
to RC2014-Z80
László wrote:
Hi Phillip,
I am sorry for not taking care of trademark issues. It was not my intention to violate any rules. (By the way, even after following the link, I didn't find any clear instructions on how to handle custom designs for the RC2014 platform). The board was not intended for the public at first. I am doing some rework before making the design files available.
Without wanting to be the Trademark Police, as its been over three years since this conversation came up, its worth mentioning...

"Designed for RC2014" is the preferred way to mark personal PCBs, to avoid confusion with Spencer's RC2014 original boards. He wrote some guidelines on the use of "Designed for RC2014" here, buried deep in the Group History.

László, no problem.  I guess Spencer is down from the new RC2014 Towers, and may comment. But when you release your new PCB just mark “Designed for RC2014” or similar, so it is clear it’s not a copy. But Spencer’s not making an issue out of it, and I kind of regret even mentioning it.
Cheers Phillip

Wayne Warthen

unread,
Jul 3, 2022, 9:53:40 AM7/3/22
to RC2014-Z80
On Sunday, July 3, 2022 at 6:28:57 AM UTC-7 lgszo...@gmail.com wrote:
By the way, is it possible to run 2 CF cards in parallel? I think it should be possible, but I haven't figured out the right configuration for such a system.

Yes, definitely.  RomWBW proves for both a master and a slave on each IDE interface.  Are you talking about a master/slave setup or two separate IDE interfaces?  If you are talking about 2 interfaces, you will need to add the second interfaces configuration to the config file.  I can help with that if needed.  I use multiple CF Cards in other platforms all the time.  I don't do it on RC2014 because the standard CF adapter only supports a single (primary) card.  However, it should just work.

So far I'm working with the RomWBW v3.0.1 package. With an openSuse Linux host it worked right away. Now I tried to use the snapshot. Unfortunately I get an error message. Do you have any advice how to fix this?

Typically has to do with variations in the different Linux distributions.  Can you capture the entire make output to a file for me and send it along?  Feel free to use my direct email at wwar...@gmail.com if you like.  The snapshot code is definitely best at this point, so I want to get that working for you.  Did you make sure to install both the libncurses and srecord packages?  The failure message indicates something went wrong earlier in the process, so it is hard to tell exactly what the problem is from that.

Thanks,

Wayne

Laszlo Szolnoki

unread,
Jul 3, 2022, 10:44:53 AM7/3/22
to RC2014-Z80
Wayne, 
I'm not really familiar with the IDE master/slave stuff. I am using the CF card that I mentioned in my earlier post on address 10H. I would like to connect a second card with address 20H to the same bus. I thought this could be done by changing the configuration file RCZ80_std.asm. But this did not work for me. And honestly I have no clue how to proceed. I would be very grateful for your help.

IDEENABLE    .EQU    TRUE     ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM)
IDETRACE    .EQU    1        ; IDE: TRACE LEVEL (0=NO,1=ERRORS,2=ALL)
IDECNT        .EQU    1        ; IDE: NUMBER OF IDE INTERFACES TO DETECT (1-3), 2 DRIVES EACH
IDE0MODE    .EQU    IDEMODE_RC
IDE0BASE    .EQU    $10
;IDE1MODE    .EQU    IDEMODE_RC    ; IDE 1: DRIVER MODE: IDEMODE_[DIO|DIDE|MK4|RC]
;IDE1BASE    .EQU    $20        ; IDE 1: IO BASE ADDRESS
;IDE2MODE    .EQU    IDEMODE_RC    ; IDE 2: DRIVER MODE: IDEMODE_[DIO|DIDE|MK4|RC]
;IDE2BASE    .EQU    $00        ; IDE 2: IO BASE ADDRESS


 I looked up the packages you mentioned. libncurses was already installed, now I added srecord too. No change. Regarding the make output, I need to look into, how to get all messages in one file. I'll come back to you as soon as I have everything together. 
Thanks 
Laszlo

Spencer Owen

unread,
Jul 3, 2022, 2:02:01 PM7/3/22
to rc201...@googlegroups.com
Hi Phillip, László,

It's been a super busy weekend here, so although I spotted this when the email came through earlier, I haven't had a chance to respond yet.

Yes, "RC2014" is a trademark which I own.  If a "RC2014 CF Module" was available then people would assume that it is one of my products, which it is not, and would be in breach of the trademark agreement.  As Phillip points out, a lot of people use Designed for RC2014, so something like "CF Module Designed For RC2014", or "RC2014 Compatible CF Module" would be absolutely fine.

Of course, if people are making their own boards for personal use, and not selling them, giving them away, or making the designs available on any other site, then that is totally fine too.

Hope that makes sense sense, but feel free to give me a shout if you want anything clarified.

Thanks

Spencer

--
You received this message because you are subscribed to the Google Groups "RC2014-Z80" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rc2014-z80+...@googlegroups.com.

Laszlo Szolnoki

unread,
Jul 3, 2022, 2:07:51 PM7/3/22
to rc201...@googlegroups.com
Don‘t worry! Now everything is clear. I‘ll use the designed for wording.
Take care!

You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/DGMJNdVuo3Q/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/CAO93PtcryhO_xUneLvSQZrFHfT8opdNRaKQBkoHDdM1M23rxUg%40mail.gmail.com.

Wayne Warthen

unread,
Jul 3, 2022, 2:43:45 PM7/3/22
to RC2014-Z80
Hi Laszlo,

On Sunday, July 3, 2022 at 7:44:53 AM UTC-7 lgszo...@gmail.com wrote:
I'm not really familiar with the IDE master/slave stuff. I am using the CF card that I mentioned in my earlier post on address 10H. I would like to connect a second card with address 20H to the same bus. I thought this could be done by changing the configuration file RCZ80_std.asm. But this did not work for me. And honestly I have no clue how to proceed. I would be very grateful for your help.

So, what you are doing is adding an additional IDE interface.  Each one will have a single (Master) card.  This is fine.  You will need to ensure that RCZ80_std.asm contains the following lines:

IDEENABLE       .SET    TRUE            ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM)
IDECNT          .SET    2               ; IDE: NUMBER OF IDE INTERFACES TO DETECT (1-3), 2 DRIVES EACH
IDE1MODE        .SET    IDEMODE_RC      ; IDE 1: DRIVER MODE: IDEMODE_[DIO|DIDE|MK4|RC]
IDE1BASE        .SET    $20             ; IDE 1: IO BASE ADDRESS
 
 I looked up the packages you mentioned. libncurses was already installed, now I added srecord too. No change. Regarding the make output, I need to look into, how to get all messages in one file. I'll come back to you as soon as I have everything together. 

Great.  I'll take a look when you can get that to me.

Thanks,

Wayne

Wayne Warthen

unread,
Jul 3, 2022, 6:24:33 PM7/3/22
to RC2014-Z80
On Sunday, July 3, 2022 at 11:43:45 AM UTC-7 Wayne Warthen wrote:
 I looked up the packages you mentioned. libncurses was already installed, now I added srecord too. No change. Regarding the make output, I need to look into, how to get all messages in one file. I'll come back to you as soon as I have everything together. 

Great.  I'll take a look when you can get that to me.

For anyone else following this build issue, Laszlo provided me with a log of his build.  Turns out that make on openSuse did not like the syntax in one line of a Makefile.  A minor change to that line seems to have resolved the problem.  I am checking in that change to the dev branch of the repo right now.

Thanks,

Wayne

Tadeusz Pycio

unread,
Jul 19, 2022, 4:06:14 AM7/19/22
to RC2014-Z80
Changing the module to a buffered one enabled me to run an SD to CF adapter that didn't want to work in CF and IDE modules!

IMG_1.jpg

Phillip Stevens

unread,
Jul 21, 2022, 11:59:20 PM7/21/22
to RC2014-Z80
Tadeusz Pycio wrote:
Changing the module to a buffered one enabled me to run an SD to CF adapter that didn't want to work in CF and IDE modules!

I'm intrigued that this SD->CF adapter module is not working with the IDE Hard Drive Module.
So I just purchased one so I can get to the bottom of why it is not working.

As far as I know both the RomWBW IDE drivers and the z88dk RC2014 IDE drivers (used in CP/M-IDE) comply to the PIO Mode 0, and they don't take shortcuts from the standard.
So, perhaps the SD to CF adapter has taken a shortcut somewhere and doesn't fully support the PATA ATA-1 Mode 0?

Which code were you using where you found that it doesn't work?
Will be an interesting experiment to debug.

Cheers, Phillip

Tadeusz Pycio

unread,
Jul 22, 2022, 3:06:04 AM7/22/22
to RC2014-Z80
Hi Phillip,
I used RomWBW. If I remember correctly, using this adapter blocked it from starting. I have a PPI PLCC version of the IDE module, which is also interesting, the SD to IDE adapter (44 pin) works fine there. Tomorrow when I get home I will describe exactly what the symptoms are. Someone wrote me that the same looking SD to CF adapter works (I have a miniSD to CF).
Reply all
Reply to author
Forward
0 new messages