PicoCalcTRS - TRS-80 Model 3 Emulator

Hi,

I created a new firmware for our beloved PicoCalc with pico2 board : PicoCalcTRS, a TRS-80 Model 3 Emulator.
It is based on the amazing work of @BlairLeduc for the Hardware Abstraction Layer.
It also use the core TRS-80 emulator SDLTRS.

Current firmware status and functionality:

  • Model III ROM boot works from SD and embedded fallback.

  • Disk drives :0 and :1 are integrated.

  • LDOS/TRSDOS/BASIC core workflows are working in current on-device tests.

  • The firmware artifact is PicoCalcTRS.uf2.

  • SD-card ROM lookup uses /TRS80/ROMS.

  • SD-card disk lookup uses /TRS80/DISKS.

  • Startup includes a disk file picker for attaching images to D0 and D1, including none.

  • Disk image filenames are not special-cased; the picker attaches whichever listed image the user selects.

  • PicoCalc Esc maps to TRS BREAK; PicoCalc BRK (Shift+Esc) maps to the TRS reset button.

  • The SDL timing shim uses Pico SDK time so the Z80 throttle path can target real Model III speed.

  • Standard Model III cassette-port game sound is wired to the PicoCalc PWM audio driver, with rate-limited updates for timing-heavy games such as SCARFMAN.

  • Optional PCM-backed disk motor/track SFX is available with F4; F5 mutes audio.

Firmware, source code and necessary files are here : Releases · JeanPCordeiro/PicoCalcTRS · GitHub

Feel free to play with it !

9 Likes

:star_struck:

Thank you so very much for this ultra cool project! The Model III and I go way back.

Is this for Pico 1 or Pico 2?

Sorry, i dont precise : actually it’s for a pico 2.

As soon as I can I try a build for pico 1 and leave news here

Great! I have a Pico 2. I used to have a TRS-80 model 1. Looking forward to trying this firmware!

I’d love to use this, but I have only a Pico 1. (Though I am starting to consider buying a Pico 2W to replace it, given the number of projects here that seem to need it.)

That said, I also have an actual TRS-80 Model III motherboard (and working Model I), so there’s no huge hurry on this. :slight_smile:

I’ve got it:

Works well, and lots of fun. Thank you.

3 Likes

Back in the mid '80s, I had a Model I with two disk drives and an LP IV (Centronics 737) printer. I took this to a school that I went to at Fort Gordon, GA, in 1986. We had a deadly heat wave go through the region, and my wife was pregnant - so she went to her mother’s place half way through my schooling. I had my computer set up in the third bedroom (tiny mobile home, so tiny bedroom.)

I was using my computer for typing letters, short stories and other things. The word processor that I used was Michael Shrayer’s Electric Pencil. Well, I found it again:

The .DSK file (on a bootable TRSDOS disk) is here: http://cpmarchives.classiccmp.org/trs80/Software/Model%20III/Electric%20Pencil%20v2.0z%20(1981)(Michael%20Shrayer)[DSK].zip

The file is in the CPM Archives at: \home\nathanael\DiskStation\web\cpm\trs80\Software (tagged to the TRS-80 Model 3 collection.

Very cool, Jean, thanks again for my “new” TRS-80 Model III (although I’ve had a few Model Is, I never got a Model III, until now.):wink:

4 Likes

Very happy that this little project pleased you !
I’m now working on an Oric-1/Atmos emulator :wink:

1 Like

This project has been quiet for about 6 months now. I wanted to play some Model III games, so I forked the repo and make some quick fixes/improvements. I just thought I could contribute and carry the torch a little further.

Fixes

  • No more display flicker. The screen redraws only the characters that changed, on the second core.
  • No more audio clicks at the end of each game sound or disk sound, and no pop at power-on.
  • The keyboard no longer stalls the emulator. Fast scrolling used to make it fall behind real time; it no longer does.
  • Model III special characters (codes 0xC0–0xFF: card suits, Greek letters, math and line-drawing symbols) now display correctly instead of as block graphics.
  • SD card reliability, from the updated picocalc-text-starter drivers: the firmware now waits properly for a busy card and skips deleted directory entries.

Improvements

  • Faster: the emulator now uses about 26% of the CPU, down from 38–86%. It runs from SRAM, and the LCD is drawn on the second core.
  • New font: 5×16 characters based on the Model III character ROM, on a white phosphor screen.

4 Likes