Close
0%
0%

UltiPET Commodore PET Replica

A modern re-creation of the Commodore PET, using all new parts and offering modern connectivity with USB, VGA/HDMI, and more

Public Chat
Similar projects worth following
0 followers
The UltiPET Commodore PET replica is an open source re-creation of the different Commodore PET models built from 1977 to 1986. I features a faster CPU, greatly extended graphics capabilities with colour, sprites, hires, and more. A dual SID and a DAC extend the PET's beeper audio capabilities. Serial IEC allows connecting the C64 floppies, but SD-Card support is also built-in. USB keyboard and mouse can be used as well. SPI (3.3V and 5V), as well as I2C and dual RS232 serial are included extra I/O, and an expansion bus allows using select Apple II, RC2014, or C64 expansion cards.

Technology is based on the W65C816 clocked at 13.5MHz, fast RAM, and an FPGA for memory mapping and video, while the rest of the I/O is classical VIA, PIA, and UART technology (although an I/O version based on an FPGA is in testing).

It is based on all new parts in 2026, and allows on one side re-creating the feeling of the beginning days of the computer revolution, but also reach into modern times!

The project has three variants:

  • The Micro-PET: a PCB that clones a Commodore PET, and adds modern features like SD-Card, USB, DAC audio, Network support, and colour VGA video output
  • The Ulti-PET: a Micro-PET-core-based PCB with many many new features like Dual-SID, I2C, RS232 / TTL UARTs, fast serial IEC, Joysticks,, ...
  • The Micro-CPU: The CPU and modern tech part of the Micro-PET (SD-Card, USB, DAC audio, Network, VGA video) as CPU for the CS/A bus.

All are based on the same technology and the same set of core features:

  • Commodore 3032 / 4032 / 8032 / 8296 with options menu to select at boot

    • Boot-menu to select different PET versions to run
    • 40 col character display
    • 80 col character display
    • 8296 memory map emulation
    • IEEE488 interface (via PETIO board)
    • Tape connector (pin, via PETIO board)
    • PET graphics or business keyboard, or alternatively a C64 keyboard, a USB keyboard can be used as well
  • Improved system design:

    • 512k video RAM, 512k fast RAM accessible using banks on the W65816 CPU
    • boot from an SPI Flash ROM
    • up to 13.5 MHz mode (via configuration register)
    • VGA Colour video output (RGBI in 720x576 in 50Hz or 720x480 in 60Hz)
    • Write protection for the PET ROMs once copied to RAM
    • lower 32k RAM mappable from all of the 512k fast RAM
  • Improved Video output:

    • Multiple colour modes (Colour-PET, C128-VDC-compatible, Multicolour)
    • Colour Hires graphics mode
    • Sprites
    • Modifyable character set
    • 40/80 column switchable character width
    • Flexible timing, with up to 72 lines and 96 characters per line
    • multiple video pages mappable to $8000 video mem address
  • Audio output:

    • PET beeper :-)
    • DMA engine to play audio samples on stereo DAC sound output
    • Dual-SID
    • Audio mixer and small audio amp (Ulti-PET only)

    Other extensions are built-into the UltiPET, or can be added on the UltraBus as extra cards:

    • Dual RS232 interface
    • Fast serial IEC bus (like in the C128)
    • Both IEEE488 and IEC bus are capable of being used as device for another computer (ATNA capability)
    • Simpler and more versatile system bus (using the Ultra-BUS backplane:
      • CS/A bus (my standard)
      • Some Apple-II bus compatibility
      • RC2014 bus connectors
    • Built-in Userport extensions, like Joystick ports

    • 1
      Notes on building

      The project contains three options:

      - single UltiPET board with everything included and expandable via bus

      - single MicroPET board with just a PET replica, and only bare minimum extensions

      - UtraBUS + UltraCPU + PETIO board with great expandability using the bus board

      All three require SMD soldering, with partially very fine pitch. Newest boards even include BGA or difficult to solder VQFN packages due to availability reasons. Therefore, at least these should be installed by a PCB house, while the rest can be either installed by a PCB house or soldered manually. 

      JLCPCB production files (gerbers, BOM, CPL) are typically included, not all for 100% of the parts but it is getting more and more with every revision.

      For details see the github repository.

    View all instructions

    Enjoy this project?

    Share

    Discussions

    Does this project spark your interest?

    Become a member to follow this project and never miss any updates