Changes
PicoCPC
,/* News */
[[Rodrik Studio]] announced its PicoCPC expansion card, which was is created with the help of [[FreddyV]] (the author of the [https://github.com/FreddyVRetro/ISA-PicoMEM PicoMEM ISA card for IBM PC]).
[[File:PicoCPC proto2proto.jpegjpg|600px]] [[File:Modular PicoCPC.jpg|600px]]
<br> == Architecture == The PicoCPC use a Pico2, connected via multiplexor. This let enough pin to add an I2S DAC, MicroSD and some more control signals. The Final PicoCPC board will be really different, with soldered RP2350BDirectly soldered. No 5V pin go to the pico. We use some 1 buffer, 1 level shifter, 3 multiplexers. We write to the CPC with 3.3V, we use 5V to the CPC only to drive some signal like A15 for C3 memory mode and IOReq to disable intern floppy. We prefer to have somerthing between the Pico and the CPC, as even if 5V work now, there is no guarantee that the boards will work after some years of intensive usage.It is really better to be carefull.
The board can decode any I/O port and of course RAM/ROM cycles. As it use a Pico2, its RAM is doubled vs Pico1 and it can access a 8MB PSRAM as well.
There is no external ROM, so the microntroller access the emulated RAM/ROM and USB/MicroSD at the same time: Direct write from the uSD to the CPC emulated RAM at 3MB/s (For example).
The PicoCPC is clocked at 366Mhz. So it is not as powerful as the [[RSF3]] clocked at 480Mhz. But it is more powerful than the [[M4 Board]] clocked at 168Mhz. [https://www.spinpoint.org/2015/10/23/cortex-m4-board/ Source]
<br>
=== Multiplexers ===
The "Secret" of the PicoMEM/PicoCPC is its multiplexers. [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/picocpc/msg249997/#msg249997 Source]
It allow to limint the number of I/O needed and act as a Voltage converter at the same time.
The Pi Pico allow to have multiple PIO core, plus the main core working together in parallel,so the PIO manage the Multiplexer, reconstruct the Address, while CPU core detect and manage the Control signals, Read in advance the High part of the address to jupt to the correct code.
(IO MEM Read or Write, Bank number)
So, when the Main core is in the correct code section, it can read directly the full Address from the PIO.
The PicoCPC use only 12 I/O to manage all the address, Data and Control signals. We can add 2 pin only to control the multiplexer.
Then, the CPC bus is "manipulated" Via ROMDIS, RAMDIS, RD, A15, IOREQ (Pico Output)
With this way to do, it is possible to be almost as fast with multiplexing that without.
<br>
* Reset button
C3 mode to arrive in the next hardware release (update 09/04/2025: C3 mode works perfectly fine). And much more for the final hardware release: vocal synthesizer, cpr cartridges, usbmouse, wifi, nfc, ... The Pimoroni hardware is also being evaluated. [[File:Pimoroni Picocpc.jpg|600px]]
<br>
What’s still missing:
*Loading and unloading ROMs from BASIC
*Copying files between SD and floppy disk
*"The HDD part isn’t great; binaries that load other binaries won’t work. In the end, I could only put a few games on it."
<br>
== Links ==
* [https://youtu.be/jfOszwaVW7w PicoCPC project presentation - 16/01/2025]
* [https://youtu.be/ysX8sibAoNk PicoCPC project update - 07/03/2025]