Boot-To-BASIC Box Packs A Killer Graphics Engine

In the early days of the home computer era, many machines would natively boot into a BASIC interpreter. This was a great way to teach programming to the masses. However on most platforms the graphics routines were incredibly slow, and this greatly limited what could be achieved. In 2020 such limitations are a thing of the past, with the Color Maximite 2. (Video, embedded below.)

The Color Maximite 2 is a computer based around the STM32H743IIT6 microcontroller, packing a Cortex-M7 32-bit RISC core with the Chrom-ART graphics accelerator. Running at 480MHz it’s got plenty of grunt, allowing it to deliver vibrant graphics to the screen reminiscent of the very best of the 16-bit console era. The Maximite 2 combines this chip alongside a BASIC interpreter complete with efficient graphics routines. This allows for the development of games with fast and smooth movement, with plenty of huge sprites and detailed backgrounds.

[cTrix] does a great job of demonstrating the machine, designed by [Geoff Graham] and [Peter Mather]. Putting the computer through its paces with a series of demos, it shows off the impressive visual and audio capabilities of the hardware. It serves as an excellent spiritual successor to BlitzBASIC from back in the Amiga days. Particularly enjoyable is seeing a BASIC interpreter that adds syntax highlighting – making parsing the code far easier on the eyes!

We’d love to see this become an off-the-shelf kit, as it’s clear the platform has a lot to offer the retro hobbyist. It’s certainly come a long way from the original Maximite of nearly a decade ago. Video after the break.

Continue reading “Boot-To-BASIC Box Packs A Killer Graphics Engine”

Stealing RAM For A Microcontroller From A TFT Display

PC users with long memories will recall the days when the one-megabyte barrier was  a significant problem, and the various tricks of extended and expanded memory used to mitigate it. One of them was to install a driver that mapped surplus graphics card memory as system memory when the display was in DOS text mode, and it was this that was brought to mind when we read about [Frank D]’s microcontroller implementation of Conway’s Game Of Life.

The components were those he had to hand; an STM32F030F4P6 and an RM68130 176 × 220 TFT board. The STM is not the most powerful of chips, with only 16 kB of Flash and 4 kB of RAM. The display has enough on-board memory to support 18 bits of colour information, but when it is running in eight-colour mode it only uses three of them. The 15 bits that remain are thus available to be used for other purposes, and though the arcane format in which they are read required some understanding they could be used to provide a very useful extra 38720 bytes of RAM for the microcontroller just as once happened with those DOS PC graphics cards of old. Interestingly, the same technique should work with other similar displays.

Though this isn’t a new technique by any means we can’t recall seeing it used in a microcontroller project such as this one before. We’ve brought you many Games of Life though, as well as marking John Conway’s passing earlier this year.

Continue reading “Stealing RAM For A Microcontroller From A TFT Display”

Thea Flowers – Creating A Sega-Inspired Hardware Synthesizer From The Ground Up

For those who grew up with video games, the legendary sounds of consoles past are an instant nostalgia hit. [Thea Flowers] first got her hands on a gamepad playing Sonic the Hedgehog, so the sounds of the Sega Genesis hold a special place in her heart. Decades later, this inspired the creation of Genesynth, a hardware synth inspired by the classic console. The journey of developing this hardware formed the basis of [Thea]’s enlightening Supercon talk.

[Thea’s] first begins by exploring why the Genesis sound is so unique. The Sega console slotted neatly into a time period where the company sought to do something more than simple subtractive synthesis, but before it was possible to use full-waveform audio at an affordable price point. In collaboration with Yamaha, the YM2612 FM synthesis chip was built, a cost-reduced sound engine similar to that in the famous DX7 synthesizer of the 1980s. This gave the Genesis abilities far beyond the basic bleeps and bloops of other consoles at the time, and [Thea] decided it simply had to be built into a dedicated hardware synth.

Continue reading “Thea Flowers – Creating A Sega-Inspired Hardware Synthesizer From The Ground Up”

Logic And EEPROMs Bring VGA To Life, Sans Microcontroller

For whatever reason, the Video Graphics Array standard seems to attract a lot of hardware hacks. Most of them tend to center around tricking a microcontroller into generating the signals needed to send images to a VGA monitor. We love those hacks, but this one takes a different tack – a microcontroller-free VGA display that uses only simple logic chips and EEPROMs.

When we first spied this project, [PH4Nz] had not yet shared his schematics and code, but has since posted everything on GitHub. His original description was enough to whet our appetite, though. He starts with a 27.175-MHz clock and divides that by 4 with a 74HCT163, which has the effect of expanding the 160×240 pixels image stored in one of the EEPROMs to 640×480. Two 8-bit counters keep track of horizontal and vertical positions, while the other EEPROM takes care of generating the Hsync and Vsync signals. It’s all quite hackish, but it works. [PH4Nz] tells us that the whole thing is in support of a larger project: an 8-bit computer made from logic chips. We’re looking forward to seeing that one too.

This isn’t the first microcontroller-less VGA project we’ve seen, of course. Here’s a similar one also based on EEPROMs, and one with TTL logic chips. And we still love VGA on a microcontroller such as the ESP32; after all, there’s more than one way to hack.

Thanks to [John U] for the tip.

Fast LED Matrix Graphics For The ESP32

Many of you will have experimented with driving displays from your microcontroller projects, and for most people that will mean pretty simple status information for which you’d use standard libraries and not care much about their performance. If however any of you have had the need for quickly-updating graphics such as video or game content, you may have found that simpler software solutions aren’t fast enough. If you are an ESP32 user then, [Louis Beaudoin] may have some good news for you, because he has ported the SmartMatrix library to that platform. We’ve seen his demo in action, and the results as can be seen in the video below the break are certainly impressive.

In case you are wondering what the SmartMatrix library is, it’s an LED matrix library for the Teensy. [Louis]’s port can be found on GitHub, and as he was explaining to us over a beer at our Cambridge bring-a-hack, it takes extensive advantage of the ESP32’s DMA capabilities. Making microcontrollers talk with any sort of speed to a display is evidently a hot topic at the moment, [Radomir Dopieralski]’s talk at our Dublin Unconference a few weeks ago addressed the same topic.

We have to admit a soft spot for LED panels here at Hackaday, and given the ESP32’s power we look forward to writing up the expected projects that will come our way using this library.

Continue reading “Fast LED Matrix Graphics For The ESP32”

ETextile Spring Break Tackles Signal Blocking, Audio Generation, And Radio Transmissions

Finding a killer application for e-textiles is the realm of the hacker and within that realm, anything goes. Whether it’s protecting your digital privacy with signal shielding, generating audio with a wearable BeagleBone or 555 timer, or making your favorite garment into an antenna, the eTextile Spring Break is testing out ways to combine electronics and fabric.

You may be asking yourself “What are e-textiles good for?”. Well, that’s an excellent question and likely the most common one facing the industry today. I’m afraid I won’t be able to give a definitive answer. As an e-textile practitioner, I too am constantly posing this question to myself. There’s an inherently personal nature to fabric worn on the body and to our electronic devices that makes this answer elusive. Instead of trying to fabricate some narrow definition, what I offer is a look at topics of interest, material experimentation, and technical exploration through the lens of a week-long event held recently in New York called eTextile Spring Break.

Continue reading “ETextile Spring Break Tackles Signal Blocking, Audio Generation, And Radio Transmissions”

Solving Mazes With Graphics Cards

What if we told you that you are likely to have more computers than you think? And we are not talking about things that are computers while not looking like one, like most modern cars or certain lightbulbs. We are talking about the powerful machines hiding in your desktop computer called ‘graphics card’. In the ordinary gaming rig graphics cards that are much more powerful than the machine they’re built into are a common occurrence. In his tutorial [Viktor Chlumský] demonstrates how to harness your GPU’s power to solve a maze.

Software that runs on a GPU is called a shader. In this example a shader is shown that finds the way through a maze. We also get to catch a glimpse at the limitations that make this field of software special: [Viktor]’s solution has to work with only four variables, because all information is stored in the red, green, blue and alpha channels of an image. The alpha channel represents the boundaries of the maze. Red and green channels are used to broadcast waves from the beginning and end points of the maze. Where these two waves meet is the shortest solution, a value which is captured through the blue channel.

Despite having tons of cores and large memory, programming shaders feels a lot like working on microcontrollers. See for yourself in the maze solving walk through below.

Continue reading “Solving Mazes With Graphics Cards”