ROM emulator, super fast loader, MIDI Host/Device and Internet interface cartridge for the Commodore 64 & 128, based on the Teensy 4.1
Design by Travis S/Sensorium (e-mail)
If you have thoughts/input on this project, questions, or features you'd like to see, please consider yourself invited to the TeensyROM Discord Server
Update: The TeensyROM now has a 3D printable case! A big thank you to those who contributed. See details and pictures here
I chose the Teensy 4.1 for this project to take advantage of all its external interface capabilities (USB Host & Device, SD card, Ethernet). I also wanted to use its many IO pins to do "direct" interfacing so it can be largely software defined.
The HW was designed with medium skilled solder skills in mind. If you feel it's too advanced to build yourself, I usually have some units for sale or can refer you to others that sell them fully assembled & tested.
- TeensyROM Features
- Links to detailed documentation
- Demo Videos
- Hardware/PCB Design
- Compatibility
- Inspiration
- Pictures/screen captures
![]() |
![]() |
---|
- USB thumb Drive
- SD card
- Teensy Internal Flash Memory
- Transfer directly from PC
- C# Windows app included
- See supported file details here
- Play your SID with a USB MIDI keyboard!
- Use with popular software such as Cynthcart, Station64 etc, or the included MIDI2SID app
- Supports all regular MIDI messages in and out
- Can use your C64 to play a MIDI sound capable device.
- Sequential, Datel/Siel, Passport/Sentech, and Namesoft MIDI cartridges emulated
- Use a USB Hub for multiple instruments+thumb drive access
- Stream .SID or .MIDI files from a modern computer directly to your Commodore machine SID chip!
- Play MIDI files out of your PC into C64 apps such as Cynthcart or the MIDI2SID app
- Play .SID files out of your PC using the ASID MIDI protocol to hear any SID file on original hardware.
- Connect to your favorite C64/128 Telnet BBS!
- Use with released software such as CCGMS, StrikeTerm2014, DesTerm128, etc
- Swiftlink cartridge + 38.4k modem emulation
- Send AT commands from terminal software to configure the Ethernet connection
- Sets C64 system time from internet
- Just drop the .hex file on an SD card or USB drive, no need for extra software to update.
- Startup, Ethernet, timezone, etc retained after power down.
- Usage Documents
- SW Release notes/developnment
- Hardware & PCB Related
- This YouTube Playlist contains all the latest TeensyROM demo videos, such as:
- Real-time video/audio capture of menu navigation and loading/running/emulating various programs/cartridges
- Demo using Cynthcart and Datel MIDI emulation to play with a USB keyboard
- MIDI ASID Demo: Stream .SID & .MIDI files directly to your C64/SID
- Web Browser and internet file download demo
- TeensyROM compatability has been fully validated on many different NTSC and PAL machines: C64, C64C, SX-64, and C128
Component selection was done using parts large enough (SOIC and 0805s at the smallest) that any soldering enthusiast should be able to assemble themselves. Since high volume production isn't necessarily the vision for this device, 2 sided SMT was used to reduce the PCB size while still accommodating larger IC packages.
A note about overclocking The Teensy 4.1 is slightly "overclocked" to 816MHz from FW in this design. Per the app, external cooling is not required for this speed. However, in abundance of caution, a heatsink is specified in the BOM for this project. In addition, the temperature can be read on the setup screen of the main TeensyROM app. The max spec is 95C, and there is a panic shutdown at 90C. In my experience, even on a warm day running for hours with no heatsink, the temp doesn't excede 75C.
- Heather S: Loving wife, continuous encourager
- Paul D aka Digitalman: Thought provoker, promoter, Maker, and tester extraordinaire
- Stefan Wessels: Cartridge case design
- MetalHexx: Big picture ideas, Remote launch utility, case support
- Giants with tall shoulders: SID/SIDEKick, KungFu Flash, VICE Team
![]() |
![]() |
---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
See the media folder for more pics, videos, and oscilloscope shots.