Sebastian Lederer's Tridora System Is a Ground-Up Pascal-Native Microcomputer on an FPGA

Using a completely custom instruction set architecture, Tridora delivers a Pascal-native microcomputing environment.

Gareth Halfacree
2 months ago β€’ FPGAs / Retro Tech

Developer Sebastian Lederer has developed a ground-up custom microprocessor, running on an FPGA, for a Pascal-native computer: the Tridora System.

"Tridora is a homebrew CPU written in Verilog and a matching software environment, including a Pascal compiler and assembler," Lederer explains of the project. "Everything was created from the ground up (except soldering stuff). Everything is as simple as possible while still being reasonably useful. Everything is open source, so you can read, understand and modify the whole system, hardware and software."

A vision of a past that could have been: Tridora System is a ground-up custom microprocessor tailored for Pascal. (πŸ“Ή: Sebastian Lederer)

The Tridora's CPU is a fully-custom and surprisingly compact design, written in just 500 lines of Verilog hardware description language. Running at 83MHz, using an Digilent Arty-A7 FPGA development board as its host, the CPU core processes at four clocks per instruction β€” and is, as Lederer admits, "compatible with nothing," using as it does a completely original instruction set architecture.

That, of course, means that no existing software will run on the CPU β€” which brings in the other part of the Tridora System, a Pascal compiler written for the core. This, Lederer says, takes up around 9,000 lines of code, is capable of compiling itself, and comes with native editor, compiler, and assembler, meaning development can take place on-device β€” though there's also a cross-compilation environment too.

In addition to everything in the Wirth Pascal standard library, and some things from TurboPascal, Tridora's software includes graphics functions. (πŸ“Ή: Sebastian Lederer)

"[The] compiler does its own Pascal dialect," Lederer explains, referring to a programming language developed by Niklaus Wirth and first released in 1970 and which lost out to BASIC in the home computing market of the 1980s, "with some restrictions and some extensions." These extensions include support for arbitrary length strings, some features taken from Borland TurboPascal 3.0's standard library, graphics functions, and non-standard file handling "because the standard sucks," Lederer says.

The project is documented in full on Lederer's GitLab repository, where the source code is published under the permissive BSD three-clause license; demos showcasing its capabilities include Conway's Game of Life, an image viewer, a Mandlebrot set visualizer, and a screensaver-like line animation. Digilent Arty-A7-35T owners can download a build for their boards, while those without suitable hardware can try the system in emulation.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles