September 12, 2012 – TRS-80 on FPGA – Thoughts?

Michael, a site visitor, has some experience with FPGA’s and is wondering if anyone out there in the Interwebs would be interested in building a new Model III or 4 (i.e., real Z-80, real RAM, fpga for glue logic, rom, serial port, video & keyboard, and a floppy disk emulator). Please sound off in the comments.


  1. Hi Ira, Michael, et al.

    There is already code available to emulate the M1,3,4 completely on several of the
    commonly available Altera/Xilinx dev boards.

    Check out:

    Using an off-the-shelf dev board keeps the costs down, and is easy to port
    to new boards as they become available.

    The minimig (Amiga FPGA implementation) is a case in point.
    Minimig has a *real* 68000 cpu, board cost is relatively high.
    Other enterprising users have ported it to the Altera DE1 board
    and used a soft-68K cpu.


  2. If Michael really wants a true Z80 he might want to consider using one of the eZ80 chips. They come in a variety of configurations and are essentially SoC’s. They even have video, keyboard, USB and Ethernet implemented on one of the chips and can run in native Z80 mode or a higher level mode akin to protected mode.

  3. Hi all,

    Happy to hear someone’s already done the work to port to an FPGA. I’ve built a custom cpu and surrounding computer system and it takes time…

    Just one thing. I went to the pacedev site there were relatively few threads though I did find an indirect reference to the TRS80. When I tried to download the pacdev doc on one of the sticky threads, I couldn’t because I wasn’t registered. And registration’s been disabled.

    Leslie, have you tried the pacedev trs80 implementation? I have a relatively high powered new Xilinx board and would love to try it.


  4. Hi Michael,

    >And registration’s been disabled.

    Use the “Contact Us” button on the front page of the pacedev site to contact “tcdev”(site owner) directly regarding membership and access to the SVN code base.

    I’ve tried the Model 1 code on Altera DE1/DE2 boards.
    Currently supports Level1/Level2/SYSTEM80(PMC-80 in USA I think)/LNW80, 48K RAM, LE18 Hires board, etc. etc.

    Code base is usually in a contstant state of flux :o)

    Happy to help you get it working.
    What board do you have?


  5. I think it’s a great idea. I’m designing something very similar. It uses a Z-80 RAM80 (Z84C50) at 10MHz, a CPLD for glue, an FPGA for DMA, video, etc. It will have 1MB of DRAM and a 74LS612 memory manager. One of the memory maps will be TRS-80 mapped peripherals and ROM so it will be Model III and 4 compatible. The rest of the time it will run a UZI-80 with CP/M compatibility layer. That will allow a unix-like environment that will launch CP/M programs. If things work out well, I could even have the loader put it into TRS-80 mode to launch TRS-80 files from the unix file system. That would be way cool.


Leave a Comment.