Paul Gardner-Stephen and MEGA, museum of electronic games and art, just announced the MEGA65. It is a modern day 8-bit computer. It is compatible enough with the C64 to run old ROMs and programs, while it supports modern interfaces such as SD-cards, Ethernet and more.
The project is open source and available on github. Right now you can download an FPGA bitstream, the VHDL source and some bootstrapping programs. The plans are to build a physical machine with a proper 8-bit look and feel. That is something that I really am looking forward to.
The SigRok project produces open source software for interfacing various types of measurement devices such as logic analyzers, oscilloscopes and more. The target is to provide cross platform software that words on Linux, OS X Windows, Android and more for measuring, visualizing and analyzing.
Here’s a quick overview of the protocols that are decoded:
The TPIU (Trace Port Interface Unit) is a stream formatter and multiplexer that combines data from several sources into one stream. It is used inside an ARM-based microcontroller or SoC to combine ITM and ETM trace output into a single port.
ARM ITM (Instrumentation Trace Macroblock) allows tracing of software events, and also with the help of DWT (Debug, Watchpoint and Trace) the tracing of exceptions and data watchpoints. It also supports periodic sampling of PC values.
ARM ETM (Embedded Trace Macroblock) allows tracing of every instruction executed on the CPU. Currently only ETM version 3 (the newest version, present in Cortex-M3 and other ARMv7-m) is supported.
The end result is that you can run traces and use sigrok to perform low level debugging. Awesome!
When working with retro computers, you sooner or stumble upon aged disk media. Unfortunately data is lost. Various solution exists such as gotek, C64FC or custom hacks.
However, when encountering old, unreadable disks, there is still hope. The problem is that magnetization is lost over time, but by measuring it at greater accuracy, it is possible to retrieve and recreate the information.
KryoFlux is a USB-based device designed specifically for the reliability and precision needed to acquire reliable low-level reads suitable for software preservation. This is the official hardware developed by The Software Preservation Society, an authority in authentic floppy disk imaging and preservation.
This is a Windows only tip, so I’ve not played much with it. However, Embrio does look like a perfect experimentation kit. Take an Arduino, connect your peripherals and draw the solution. It even lets you work in a live mode, getting immediate feedback to your changes.
The whole embrio site is filled with tutorials for common setups. For instance, how to use a breadboard, buttons distance sensors, servos, PWM and more. There are also examples combining these skills into large projects.
The basic version is free, while a perpetual license with all features unlocked costs USD 50.
I recently wrote about the Nyuzi Processor, referring a Phoronix article. Commenter Timothy Miller was kind enough to point out that the source article fails to recognize Jeff Bush as the author of the Nyuzi Processor.
Visiting his github page, reveals a set of interesting project, including another CPU design, RotorCPU, as well as an experimental, albeit old, x86 operating system. All in all, a nice set of repos to browse through.
A GPGPU is a graphical processing unit, but with adaptations to make it possible to use it for general purpose computing as well. For those of you who followed Intel’s Larrabee project – that is a GPGPU. Intel’s project was stopped before it reached the market. Not an open source project, the Nyuzi Processor, implements a similar architecture.
The project is quite impressive. It features a pipeline vector FPU, multiprocess support, an L1/L2 cache hierarchy. It also comes with a LLVM-based C++ toolchain, software libraries and test benches and can be synthesized.
Check out the github page for instructions, the full Verilog source and all the associated tooling.