Programmable RAM/ROM/Video/FDC card for the PAL-2

183 views
Skip to first unread message

Eduardo Casino

unread,
Jul 14, 2025, 1:58:19 PMJul 14
to PAL 6502 computer
Hi folks,

I've completed a PAL-2 version of my PicoW-based card. It has some nice features and others will be added via firmware updates:
  • Can emulate RAM and/or ROM at any address of the PAL-2 memory map and with byte granularity so you can individually enable, disable, mark as RW or RO each and every byte of the 64K address space. It can also take over the PAL-2 system RAM and ROM, so it can be used as a diagnostic tool.
  • A default memory map and data are stored in the Pico flash memory and it is available at boot time.
  • Runs a configuration web server with a RESTish API so you can configure and read or write all or any part of memory contents over Wifi and on the fly.
  • The board is powered by the PAL-2, but it can also be dual powered by the PAL and the USB port. This is useful, for example, if you are developing a boot ROM: you can power off the PAL, modify the boot program over wifi and turn it on again to test your changes.
  • It emulates an MTU K-1008 Visable Memory Card. It can be mapped to the same addresses as the real one (and change that mapping while running) and gives configurable composite NTSC or PAL output through the RCA connector. VGA output is planned but unimplemented at the moment.
  • Emulates an K-1013 floppy disk controller with up to four disks, reading and writing to disk images into the SD card. Tested with CP/M-65 (https://github.com/davidgiven/cpm65#kim-1-with-k-1013-fdc-notes) and work-in-progress, reverse engineered CODOS v1 (https://github.com/eduardocasino/mtu-misc)
A config utility, memcfg, is provided to setup the board and facilitate the communication with the REST API. This is an overview of its functionality. Please see the README file (https://github.com/eduardocasino/kim-1-programmable-memory-card/tree/main/tools) for detailed usage instructions:
  • Generate configuration files ready to be flashed into the Pico: WiFi parameters, video format and default memory map and contents.
  • Get or modify the memory map.
  • Read memory contents and generate output in different formats: hexdump, Intel hex, binary, prg and raw. The raw format is how the Pico stores the memory map. Each memory address contains a 16 bit integer. The least significant byte is the content and the most significant one is a bitmap that indicates if the memory is enabled or disabled and writeable or read-only.
  • Write memory contents from file or command line. The file formats supported are Intel hex, binary, prg and raw. Also, binary and raw data can be specified as a string from the command line.
  • Modify the base address for the K-1008 emulation
Everything is available at my GitHub repository: https://github.com/eduardocasino/kim-1-programmable-memory-card/

pal_2_expansion.jpg
Pico_Bender.jpg
Pico_CODOS.jpg

IMPORTANT NOTE

The PAL-2 behaves differently from the KIM-1 when the #DECEN signal goes high.

On the KIM-1, this signal disables all internal address decoding, allowing an expansion card to take over. However, on the PAL-2, the signal is wire-ORed with the 8K0 enable output of the first decoder, so it effectively has no impact.

To enable expansion card functionality, a simple modification must be performed on the PAL-2:
  • Cut the trace that connects pin K of the Application connector to pin 12 of U6, and the trace connecting pin 12 of U8 to ground.
  • Solder a wire from pin K of the Application connector to pin 12 of U8.
  • Solder a 3.9kΩ resistor from pin 12 of U8 to any ground point on the board.


Cheers,
Eduardo

Hans Otten

unread,
Jul 15, 2025, 5:45:27 AMJul 15
to PAL 6502 computer
Thank you Eduardo!

This may boost interest in the fabulous PAL-2.

Easy to build since it is all through hole and available components. 

If you want to learn about the Micro Technology Unlimited (MTU) cards that are emulated, the K-1013 and K-1008 are well documented on my (recently renewed)  MTU pages at Micro Technology Unlimited – Retro Computing

There are long! threads on forum64.de (in English) about the replica K-1013 and replcia K-1008 and the KIM-1 replica  and CODOS reverse engineering by Eduardo

Any interest in building this card? Is there a demand for kits?

Hans

Neil Andretti

unread,
Jul 15, 2025, 6:51:54 AMJul 15
to PAL 6502 computer
This is absolutely amazing! 
Liu, could you produce it and sell Kits? This would make things a lit easier for us ;)

John Kennedy

unread,
Jul 15, 2025, 11:02:10 AMJul 15
to PAL 6502 computer
A kit would definitely be nice.

GN Liu

unread,
Jul 15, 2025, 10:38:03 PMJul 15
to PAL 6502 computer
Thanks Eduardo for making such a great kit, I think this is a must have expansion!

Nils,
Eduardo gave me permission to produce this kit, and I’ll be adding it to my store ASAP.

Liu

Eduardo Casino

unread,
Jul 30, 2025, 2:53:01 PMJul 30
to PAL 6502 computer
I've upgraded the firmware and the memcfg tool. It is now possible to perform the following operations over WiFi:
  • Transfer files between your PC and the SD card, as well as list, copy, rename, and delete files on the SD card (via the new "file" command).
  • Mount and unmount images, and save the current mount map as the default for booting (via the new "mount" command).
Cheers,
Eduardo

Luciano Veronese

unread,
Jul 31, 2025, 3:35:11 AMJul 31
to PAL 6502 computer
Hello Eduardo and thanks for this great addon. I am assembling your KIM-1 replica. It's not clear to me if this awesome board is just for PAL-2 or it works also with your KIM-1
Thanks
Luciano

Eduardo Casino

unread,
Jul 31, 2025, 4:03:56 AMJul 31
to PAL 6502 computer
Hi Luciano,

Thre is a KIM-1 version, but it is SMD, so it is a bit more complicated to build, specially if you don't have experience with surface mounted soldering. It is in the same repository.

You'll also need an MTU backplane, either this simple, passive, one: https://github.com/eduardocasino/kim-1-mtu-expansion-card
or this buffered one: https://github.com/eduardocasino/kim-1-mtu-motherboard

The simpler one works perfectly well and it is the better option if you already have (or plan to build or buy) a Corsham's style IO card like this one: https://retro-spy.com/product/kim-1-i-o-board/  (Disclaimer: I'm not affiliated in any way)

The buffered one is a complete solution. You can choose between thre daughter boards: one with an RS-232 connector for the terminal, another with USB-C or a third one with WiFi (the last two also have some SMD components) You have the details on the Github repo.
 
Ciao,
Eduardo

Hans Otten

unread,
Jul 31, 2025, 7:02:28 AMJul 31
to PAL 6502 computer
Since the PAL-2 is in essence a KIM-1 with application and expansion connectors, with the DECODE ENABLE hardware patch applied, it may be possible to design a connector between KIM-1 22-pin edge connector and the PAL-2 connector on this card? This would make this easy to build board accessible to the KIM-1 (replica, there are many now)  owners.

Eduardo Casino

unread,
Jul 31, 2025, 7:37:29 AMJul 31
to PAL 6502 computer
Yes, sure, that would be a simple 1 to 1 connector. I may also design a through-hole version for the KIM-1.

Eduardo Casino

unread,
Jul 31, 2025, 6:11:18 PMJul 31
to PAL 6502 computer
Any thoughts before sending the board to fabrication?

pal-2-kim-adapter.png
kim-1-with-pal-2.png

GN Liu

unread,
Jul 31, 2025, 8:06:45 PMJul 31
to PAL 6502 computer
Simple and beautiful in my eyes.

Adolfo Fernandez

unread,
Aug 1, 2025, 10:15:43 AMAug 1
to PAL 6502 computer
Yes, beautiful

Hans Otten

unread,
Aug 1, 2025, 10:43:16 AMAug 1
to PAL 6502 computer
awesome! this way only one board is necessary for PAL 2 and KIM-1.
KIM-1 users can add this simple connector. 
And any other PAL 2 extensions to appear can be used on a KIM-1 this way. 

Eduardo Casino

unread,
Aug 2, 2025, 3:59:53 AMAug 2
to PAL 6502 computer
I'm having a hard time finding a 2×22 right-angle female connector for the adapter. On the usual low-cost platforms, they only offer 2×20 to 2×24, and on specialized sites, it's either unavailable or requires a minimum order of 500 units. Any leads?

Thanks,
Eduardo

Eduardo Casino

unread,
Aug 2, 2025, 4:45:12 AMAug 2
to PAL 6502 computer
Sorry, it was a case of late-night blindness. Found it at least on DigiKey, probably available elsewhere too.

GN Liu

unread,
Aug 2, 2025, 4:47:57 AMAug 2
to PAL 6502 computer
I can put them on shelf in August.

Best,
Liu

Hans Otten

unread,
Aug 2, 2025, 4:48:20 AMAug 2
to PAL 6502 computer
Yea, sometimes hard to find. In emergencies you can take for example a 40 pin and saw off the unwanted part. and file off the rough end. 

Eduardo Casino

unread,
Aug 2, 2025, 4:57:38 AMAug 2
to PAL 6502 computer
Thanks, Liu. I’ll probably go with Hans’ sawed 40x2 trick for testing, but it’s nice to have options for sourcing the BOM.

GN Liu

unread,
Aug 2, 2025, 5:10:11 AMAug 2
to PAL 6502 computer
It’s currently my children’s summer vacation, so my schedule isn’t very consistent.
 
I will prepare and put this cool expansion and its related components (daughter boards) on the shelf this month.

Eduardo Casino

unread,
Aug 2, 2025, 5:45:54 AMAug 2
to PAL 6502 computer
Great news, thanks!

Hans Otten

unread,
Aug 2, 2025, 6:47:29 AMAug 2
to PAL 6502 computer
Indeed, great news!

Eduardo Casino

unread,
Aug 28, 2025, 12:13:35 PMAug 28
to PAL 6502 computer
I've finished the KIM-1 adapter for the PAL-2 version and it works great :)

pico_card_with_adapter.jpg

Now working on the firmware to finally enable the VGA output.

Cheers,
Eduardo

GN Liu

unread,
Aug 29, 2025, 9:42:32 AMAug 29
to PAL 6502 computer
Thanks Eduardo! 

Now all parts are ready, I'll put them into production.

Best,
Liu
Reply all
Reply to author
Forward
0 new messages