Home » RBC Forums » General Discussion » Simple80, a low-cost, glue-less CP/M Ready Z80 SBC
Simple80, a low-cost, glue-less CP/M Ready Z80 SBC [message #6319] |
Sat, 18 May 2019 21:35  |
plasmo
Messages: 916 Registered: March 2017 Location: New Mexico, USA
|
Senior Member |
|
|
This is yet another Z80 SBC. It is inspired by my observation that several eBay vendors are offering homebrew kits quite cheaply. The one that got my attention is this eBay item: https://www.ebay.com/itm/Z80-CPU-PIO-Kit-Z84C0020PEC-Z84C400 6PEC-HM628128-W27C512-74LS32-74HC00-74HC138/113067844658 which is a Z80/SIO/RAM/ROM kit with few TTL logic for $6.99. I bought the kit only to realize the seller had made a mistake and sent me a PIO instead of a SIO-0. Other than that, all the parts are functional. I communicated with the seller and worked out a even simpler and cheaper Z80 kit, https://www.ebay.com/itm/Simple80-Z80-CPU-SIO-Homebrew-IC-Ki t/113735638336 for $6. Bought two kits and designed the Simple80 as documented here: https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:simple80
What I want to achieve is a low cost Z80 SBC that's CP/M ready and with expansion buses. My experiences with buying parts on eBay have been generally favorable and I believe functioning, low-cost Z80 kits can be found on eBay such that a CP/M-ready Z80 should be possible for about $20 of part cost.
Received the kits today. Plug them into Simple80, both kits work fine. Cost breakdown:
* Simple80 Z80 Kit, $6 + $6 shipping,
* 7.37MHz oscillator $1,
* IDE44 adapter $2 (free shipping),
* PC boards from JLCPCB $14 (economy shipping) for 5 boards or $3 per set of boards,
* CF disk $2,
* Resistors, capacitors, connectors, IC sockets $??
$20 seems an achievable goal.
Bill
|
|
|
|
Re: Simple80, a low-cost, glue-less CP/M Ready Z80 SBC [message #6331 is a reply to message #6330] |
Sun, 19 May 2019 18:22   |
plasmo
Messages: 916 Registered: March 2017 Location: New Mexico, USA
|
Senior Member |
|
|
The SimpleCF occupies I/O space 0x80 to 0xBF, so I can certainly define 0x90 as the base address for SimpleCF. The primitive decoding scheme of Simple80 & SimpleCF means it won't be compatible with RC2014. My thought here is finding a simple & cheap path to get a CP/M capable Z80 running. Later the parts can be reused for more sophisticated Z80 systems.
Simple80 is really a distraction from the original glue-less design based on KIO, https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=378&start=0& Returning to KIO is probably a better choice for bit-banging SD disk and DS1302 RTC since KIO includes a PIO. In fact I have a KIO-based design (K80) being fabricated in JLCPCB right now. Currently it is not a simple design, but I hope to reduce it down to Simple80 equivalent but with RTC and SD disk. Simple80 can only run to 7.37MHz, limited by the SIO. KIO is spec'd to 12.5MHz and I've build enough of them to know it can in fact reliably run to 24MHz.
This particular seller of Simple80 Z80 kit also sell a kit with KIO, https://www.ebay.com/itm/Z80-IC-Chipset-CPU-KIO-SRAM-EPROM-8 255-8251-Kit-PLCC-Version/113467460260 He seems pretty flexible about creating new kit for new design, so once I have a working KIO-based design, I think I can get the seller to create a kit for it. I think it would be exciting to have an I/O-rich, fast, cheap, CP/M & FUZIX capable Z80 SBC for hobbyists.
Bill
|
|
|
|
|
|
|
|
|
|
|
Re: Simple80, a low-cost, glue-less CP/M Ready Z80 SBC [message #6694 is a reply to message #6667] |
Sun, 20 October 2019 08:59   |
plasmo
Messages: 916 Registered: March 2017 Location: New Mexico, USA
|
Senior Member |
|
|
Alan,
I've done what I can with the video prototype for now so I'm working on modifying a Simple80 board according to your engineering changes. I cut traces to pin 2 and 30 of the RAM, connect pin 1 to SIO-25 (DTRB), pin 2 to SIO-17 (RTSA), and pin 30 to SIO-24 (RTSB), then I bent out the leg of SIO-35 (CE) and tie to Z80-5 (A15). I assembled the system.asm and burn it into W27C512 and applied power. I got this with CF disk inserted:
Simple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
Simple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
Simple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
Simple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
...repeating forever......
Or if I powered with CF disk removed, I got this:
Simple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
þSimple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
þSimple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
þSimple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
þSimple 80 CP/M ROM 0.18
Formatting RAMdisc
Modified board detected
Initializing CF adapter
CF card not detected
CP/M 2.2 (C) 1979 Digital Research
Then the console freeze, no CP/M prompt. I suspect I need to insert CPM.RAW into the EPROM starting from some location?
Bill
|
|
|
|
|
|
Re: Simple80, a low-cost, glue-less CP/M Ready Z80 SBC [message #6699 is a reply to message #6698] |
Sun, 20 October 2019 17:15   |
etchedpixels
Messages: 333 Registered: October 2015
|
Senior Member |
|
|
Not quite. The ROM has various bootstrap code and vectors at 0000-00FF, then 0100-D9FF are currently the ROM file system. DA00-DBFF is the boot code, then CP/M follows then the BIOS and above the BIOS at the very top of memory is a chunk of code that is copied from ROM into each bank. That code because it is identical everywhere can turn the ROM back on, turn the RAM off, read a byte that may differ from RAM and reverse the process. It's not pretty but if you read the BIOS sources for do_get_rom all should be 'clear' (and ignore the comment about the RAM pulling down - that's obsolete .. and wrong)
F: is the RAM drive (still limited to the 60K or so as I've not yet done the code to do a big RAMdisc on 512K RAM)
I've pushed what should be the right code to github, it got in a bit of a mess with stuff not being committed and then things that didn't work out getting added on top but I've only emulator tested it. I think I am giving up on SD card - it's too hairy with the reuse of the lines, plus it means I don't have enough SIO input bits to add a joystick 
0.18 that you have also eats CF file systems so be warned. 0.19 fixed that, the current one is 0.22, which should work with the A15 change and aso fixes the fact we keep re-initializing the CF card each time we SELDSK it.
I don't know why you get the Bdos E without a CF card. That's weird. If you still see it in 0.22 let me know. I can't reproduce it here with the emulation but can try it on hardware, especially now I have some old Intel flash chips for the board and I'm not having to use EPROM erasers!
Lots of fun. I miss the days when computer magazines actually involved cunning rewiring tricks and extra chips on bits of veroboard or stacked on top of one another.
Alan
|
|
|
Re: Simple80, a low-cost, glue-less CP/M Ready Z80 SBC [message #6700 is a reply to message #6699] |
Mon, 21 October 2019 04:07   |
plasmo
Messages: 916 Registered: March 2017 Location: New Mexico, USA
|
Senior Member |
|
|
OK, I downloaded v022 of system.asm as well as cpm.raw. Assembled system.asm and combined with cpm.raw. Power up with CF disk:
Simple 80 CP/M ROM 0.22
Formatting RAMdisc
Modified board detected
Initializing CF adapter
CP/M 2.2 (C) 1979 Digital Research
E>dir
E: DDT COM : MBASIC COM : STAT COM : XMODEM COM
E: PIP COM
E>dir f:
No file
E>pip f:=*.*[v]
COPYING
DDT.COM
MBASIC.COM
STAT.COM
XMODEM.COM
PIP.COM
E>dir f:
F: DDT COM : MBASIC COM : STAT COM : XMODEM COM
F: PIP COM
E>
Power up without CF disk:
E>Simple 80 CP/M ROM 0.22
Formatting RAMdisc
Modified board detected
Initializing CF adapter
CF card not detected
CP/M 2.2 (C) 1979 Digital Research
E>dir
E: DDT COM : MBASIC COM : STAT COM : XMODEM COM
E: PIP COM
E>dir f:
No file
E>pip f:=*.*[v]
COPYING
DDT.COM
MBASIC.COM
STAT.COM
XMODEM.COM
PIP.COM
E>dir f:
F: DDT COM : MBASIC COM : STAT COM : XMODEM COM
F: PIP COM
MBASIC.COM executes the ASCII Mandelbrot correctly.
XMODEM does not work, however. What version of XMODEM is this?
Bill
PS, I'm pretty good at kludging, even had a series of prototypes with the prefix of "Franken-", e.g. Franken-GPS, which is a combination of salvaged boards and new board all wired into an existing product. Much to my regret some of the prototypes lasted many years and required my attention because I'm the only one can fix it.
|
|
|
|
|
|
|
|
Re: Simple80, a low-cost, glue-less CP/M Ready Z80 SBC [message #9190 is a reply to message #6706] |
Sat, 09 October 2021 17:56  |
plasmo
Messages: 916 Registered: March 2017 Location: New Mexico, USA
|
Senior Member |
|
|
Read an interesting post by norwestrzh on overclocking Grant Searle's Z80 to 20MHz where 10MHz SIO is running to 20MHz. ( https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=636&start=0& ) So, I tried overclocking experiments on Simple80 which has no glue logic just 55nS RAM, 45nS ROM, 20MHz Z80 and 10MHz SIO running at 7.37MHz. The 7.37MHz clock is replaced with 29.4912MHz clock, serial port changed to 460800 and turned on the power...nothing. OK, changed the clock to 22MHz and I saw the power-on sign-on message on the scope except the baud rate is 345600, not a standard baud. Try another board and still nothing at 29.5MHz but same sign-on output at 22MHz. Try Simple80 rev1 where CF circuitry is incorporated on the motherboard. ( https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:simple80r1 ) Got something at 29.5MHz! But it hung waiting CF to respond. Changed to faster CF disk (SanDisk 256Meg) and it signed on successfully! Loading file at 460800 is blazing fast, but it had intermittent data corruption, so I raised voltage to 5.25V and it is working fine. Using XMODEM I uploaded and installed CP/M into the fast CF disk and ran zexall.com. It ran in 25 minutes.
So the take away is Z80 and SIO can be overclock to 29.5MHz. I knew 20MHz Z80 runs reliably at 29.5MHz, but having 10MHz SIO run up to 29.5MHz is pretty cool.
Bill
|
|
|
Current Time: Mon Mar 24 23:17:35 PDT 2025
Total time taken to generate the page: 0.03723 seconds
|