FPGA Retrocomputer: Return To Moncky

Part of the reason that retrocomputers are still so popular despite their obsolescence is that it’s possible to understand the entire inner workings of a computer like this, from the transistors all the way up to the software. Comparatively, it will likely be a long time (if ever) before anyone is building a modern computer from discrete components. To illustrate this point, plenty of 8-bit computers are available to either restore from original 80s hardware or to build from kits. And if you’d like to get even deeper into the weeds you can design your own computer including the instruction set completely from the ground up using an FPGA.

This project, called the Moncky project, is a step above the usual 8-bit computer builds as it is actually a 16-bit computer. It is built around an Arty Spartan-7 FPGA dev board running around 20 MHz and has access to 2 x 128 kB dual-port RAM for memory. To access the outside world there is a VGA output, PS/2 capability, SPI, and uses an SD card as a hard drive. This project really shines in the software, though, as the project creator [Kris Demuynck] builds everything from scratch in order to illustrate how everything works for educational purposes, and is currently working on implementing a C compiler to make programming the computer easier.

All of the project files, as well as all of the code, are available on the project’s GitHub page if you’d like to follow along or build on this homebrew 16-bit computer. It’s actually the third iteration of this computer, with the Moncky-1 and Moncky-2 being used to develop the more basic building blocks for this computer. While it’s not the first 16-bit computer we’ve seen implemented on an FPGA, it is one of the few that builds its own RISC instruction set and associated software rather than cloning a known existing processor. We’ve also seen some interesting x86 implementations on an FPGA as well.

Thanks to [koen-ieee] for the tip!

Original Commodore 64 ad

Love Letter To Commodore 64 Ads Takes Us Down Memory Lane

If you shop, you can get a pretty nice laptop for around $595. Maybe not the top of the line, but still pretty nice with multiple cores, a large hard drive, and a big color screen. But in the 1980s, the Commodore 64 bragged that for $595, they’d give you more than anyone else at twice the price. After all, 64K of RAM! Graphics with 16 whole colors! [Lunduke] dug up a bunch of these ads and has some thoughts on them and we really enjoyed the trip down memory lane.

If you look at other contemporary computers, they did cost more although sometimes it wasn’t a fair comparison. The TRS80 III, for example, cost $999 with 16K of RAM but it also had its own monitor — not color, though.

It is amazing to think that we’ve gone from where 16K was a reasonable amount of RAM in a personal computer to where it isn’t even worth having a flash drive with that capacity. We also can’t help but note that while computing power per dollar is through the roof now, computers aren’t actually that much more fun. We enjoyed interfacing a teletype to our 1802 ELF and working out a 300 baud modem for our TRS-80. Sure, we didn’t have Skyrim or HD movies, but we still have fun.

If you want to relive these exciting days, it is easy enough to build your own C64 with varying degrees of fidelity. It is trivial to emulate the thing on any kind of modern hardware, too.

Thousands Of Discrete MOSFETs Make Up This Compact CPU-Less Computer

How long has it been since a computer could boast about the fact that it contained 2,500 transistors? Probably close to half a century now, at a guess. So in a world with a couple of billion transistors per chip, is a 2,500-transistor computer really something to brag about? Yes. Yes, it is.

The CPU-less computer, called the TraNOR by its creator [Dennis Kuschel], is an elaboration on his previous MyNOR, another CPU-less machine that used a single NOR-gate made of discrete transistors as the core of its arithmetic-logic unit (ALU). Despite its architectural simplicity, MyNOR was capable of some pretty respectable performance, and even managed to play a decent game of Tetris. TraNOR, on the other hand, is much more complicated, mainly due to the fact that instead of relying on 74HC-series chips, [Dennis] built every single gate on the machine from discrete MOSFETs. The only chips on the four stacked PCBs are a trio of memory chips; we don’t fault him at all for the decision not to build the memory — he may be dedicated, but even art has its limits. And TraNOR is indeed a work of art — the video below shows the beautiful board layouts, with seemingly endless arrays of SMD transistors all neatly arranged and carefully soldered. And extra points for using Wintergatan’s marble machine melody as the soundtrack, too.

As much as we loved the original, TraNOR is really something special. Not only is it beautiful, but it’s functional — it’s even backward-compatible with MyNOR’s custom software. Hats off to [Dennis] for pulling off another wonderful build, and for sharing it with us.

Continue reading “Thousands Of Discrete MOSFETs Make Up This Compact CPU-Less Computer”

Ello Is A Tiny Computer With A C — Interpreter?

When we talk about a retrocomputer, it’s our normal practice to start with the hardware. But with [KnivD]’s ELLO 1A while the hardware is interesting enough it’s not the stand-out feature. We are all used to microcomputers with a BASIC interpreter, but how many have we seen with a C interpreter? The way C works simply doesn’t lend itself to anything but a compiler and linker, so even with a pared-down version of the language it still represents a significant feat to create a working interpreter.

The hardware centres around a PIC32MX, and has onboard SD card, VGA, sound, and a PS/2 keyboard port. The PCB is a clever design allowing construction with either through-hole or surface-mount components to allow maximum accessibility for less advanced solderers. Full information can be found on the project’s website, but sadly for those wanting an easy life only the PCB is as yet available for purchase.

We’re privileged to see a huge array of retrocomputing projects here at Hackaday, but while they’re all impressive pieces of work it’s rare for one to produce something truly unexpected. This C interpreter certainly isn’t something we’ve seen before, so we’re intrigued to see what projects develop around it.

An Arduino With A Floppy Drive

For many of us the passing of the floppy disk is unlamented, but there remains a corps of experimenters for whom the classic removable storage format still holds some fascination. The interface for a floppy drive might have required some complexity back in the days of 8-bit microcomputers, but even for today’s less accomplished microcontrollers it’s a surprisingly straightforward hardware prospect. [David Hansel] shows us this in style, with a floppy interface, software library, and even a rudimentary DOS, for the humble Arduino Uno.

The library provides functions to allow low level work with floppy disks, to read them sector by sector. In addition it incorporates the FatFS library for MS-DOS FAT file-level access, and finally theĀ ArduDOS environment which allows browsing of files on a floppy. The pictures show a 3.5″ drive, but it also supports 5.25″ units and both DD and HD drives. We can see that it will be extremely useful to anyone working with retrocomputer software who is trying to retrieve old disks, and we look forward to seeing it incorporated in some retrocomputer projects.

Of course, Arduino owners needn’t have all the fun when it comes to floppy disks, the Raspberry Pi gets a look-in too.

4-bit Retrocomputer Emulator Gets Custom PCB

It might be fair to suspect that most people who are considered digital natives have very little to no clue about what is actually going on inside their smartphones, tablets, and computers. To be fair, it is not easy to understand how modern CPUs work but this was different at the beginning of the 80s when personal computers just started to become popular. People who grew up back then might have a much better understanding of computer basics thanks to computer education systems. The Busch 2090 Microtronic Computer System released in 1981 in Germany was one of these devices teaching people the basics of programming and machine language. It was also [Michael Wessel]’s first computer and even though he is still in proud possession of the original he just recently recreated it using an Arduino.

The original Microtronic was sold under the catchy slogan “Hobby of the future which has already begun!” Of course, the specs of the 4-bit, 500 kHz TMS 1600 inside the Microtronic seem laughable compared to modern microcontrollers, but it did run a virtual environment that taught more than the native assembly. He points out though that the instruction manual was exceptionally well written and is still highly effective in teaching students the basics of computer programming.

Already, a couple of years back he wrote an Arduino-based Microtronic emulator. In his new project, he got around to extending the functionality and creating a custom PCB for the device. The whole thing is based on ATMega 2560 Pro Mini including an SD card module for file storage, an LCD display, and a whole bunch of pushbuttons. He also added an RTC module and a speaker to recreate some of the original functions like programming a digital clock or composing melodies. The device can also serve as an emulator of the cassette interface of the original Microtronic that allowed to save programs with a whopping data rate of 14 baud.

He has certainly done a great job of preserving this beautiful piece of retro-tech for the future. Instead of an Arduino, retro computers can also be emulated on an FPGA or just take the original hardware and extend it with a Raspberry Pi.

Surfing The Web With 7400 Logic

We see more computers built from logic gates than you might expect. However, most of them are really more demonstration computers and can’t do much of what you’d consider essential today. No so with [Alastair Hewitt’s] Novasaur. Although built using 34 TLL chips (and a few memory and analog chips, too, along with one PAL), it boasts some impressive features:

  • Dual Processor CPU/GPU (Harvard Architecture).
  • 33 MHz dot clock, 16.5 MHz data path, 8.25 MHz per processor (~3.5 CPU MIPs)
  • 256k ROM: 96k ALU, 64k native program, 64k cold storage, 32k fonts.
  • 128/512k RAM: 1-7 banks of 64k user, 60k display, 4k system.
  • 76 ALU functions including multiply/divide, system, and math functions.
  • Bitmapped Graphics: Hi-res mode up to 416×240 with 8 colors and 4 dithering patterns. Lo-res mode up to 208×160 with 256 colors, double-buffered.
  • Text Mode: 8 colors FG/BG, 256 line buffer, up to 104×60 using 8×8 glyphs, 80×36, and 64×48 rows usingĀ  8×16 glyphs.
  • Audio: 4 voice wavetable synthesis, ADSR, 8-bit DAC, 8Hz-4.8kHz.
  • PS2 Keyboard: Native interface built-in.
  • RS232 Serial Port: Full duplex, RTS/CTS flow control, 9600 baud.
  • Expansion Port: 7 addressable 8-bit register ports, 4 interrupt flags

Continue reading “Surfing The Web With 7400 Logic”