Racing The Beam On An ATtiny

For the last thirty or so years, the demoscene community has been stretching what is possible on computer systems with carefully crafted assembly and weird graphical tricks. What’s more impressive is hand-crafted assembly code pushing the boundaries of what is possible using a microcontroller. Especially small microcontrollers. In what is probably the most impressive demo we’ve seen use this particular chip, [AtomicZombie] is bouncing boing balls on an ATtiny85. It’s an impressive bit of assembly work, and the video is some of the most impressive stuff we’ve ever seen on a microcontroller this small.

First, the hardware. This is just about the simplest circuit you can build with an ATtiny85. There’s an ISP header, a VGA port with a few resistors, a 1/8″ audio jack driven by a transistor, and most importantly, a 40MHz crystal. Yes, this ATtiny is running far faster than the official spec allows, but it works.

The firmware for this build is entirely assembly, but surprisingly not that much assembly. It’s even less if you exclude the hundred or so lines of definitions for the Boing balls.

The resulting code spits out VGA at 204×240 resolution and sixty frames per second. These are eight color sprites, with Alpha, and there’s four-channel sound. This is, as far as we’re aware, the limit of what an ATtiny can do, and an excellent example of what you can do if you buckle down and write some really tight assembly.

Continue reading “Racing The Beam On An ATtiny”

Don’t Mess With Texas – The TI-99/4A Megademo

The demoscene is a hotbed of masterful assembly programming, particularly when it comes to platforms long forgotten by the passage of technology and time. There’s a certain thrill to be had in wringing every last drop of performance out of old silicon, particularly if it’s in a less popular machine. It’s that mindset that created Don’t Mess With Texas – a glorious megademo running on the TI-99/4A.

Entered in the oldskool demo contest at Syncrony 2017, the demo took out the win for [DESiRE], a group primarily known for demos on the Amiga – a far more popular platform in the scene. The demo even includes a Boing Ball effect as a cheeky nod to their roots. Like any good megademo, the different personalities and tastes brings a huge variety of effects to the show – there’s a great take on vintage shooters a la Wolfenstein in there too. [jmph] shared a few more details on the development process over on pouet.net.

The TI-99/4A wasn’t the easiest machine to develop for. It’s got a 16-bit CPU hamstrung by an 8-bit bus, and only 256 bytes of general purpose RAM. Despite the group’s best attempts, the common 32K RAM expansion present in the floppy drive controller is a requirement to run the demo. Just to make things harder, the in-built BASIC is too slow for any real use and there’s no function to allow the use of in-line assembly instructions. The group had to resort to a cartridge-based assembler to get the job done.

In the machine’s favour, it has a great sound chip put to brilliant use – the demo’s soundtrack will take you right back to the glory days of chiptune. It’s also got strong graphics capabilities for the era on par with, if not better than, the Commodore 64. The video subsystem in the TI works so hard that it’s the only DIP in the machine that gets a heatsink! The demo does a great job of pushing the machine to its limits in this regard.

If you’re suddenly feeling a strong attraction to the TI-99/4A, don’t worry – it’s got a cult following all its own. You can even find USB adapters & IDE controllers if you want to build a fully loaded rig, or play a stunning port of Flappy Bird if that tickles your fancy.

[Thanks to Gregg for the tip!]

Hackaday Links: December 25th, 2016

You should be watching the Doctor Who Christmas special right now. Does anyone know when the Resturant at the End of the Universe spinoff is airing?

We have a contest going on right now. It’s the 1 kB Challenge, a contest that challenges you to do the most with a kilobyte of machine code. The deadline is January 5th, so get cracking.

A few years ago, [Kwabena] created the OpenMV, a Python-powered machine vision module that doesn’t require a separate computer. It’s awesome, and we’re going to have his talk from the Hackaday SuperConference up shortly. Now the OpenMV is getting an upgrade. The upgrades include an ARM Cortex M7, more RAM, more heap for less money. Here’s a link to preorder.

There ain’t no demoscene party like an Amtrak demoscene party because an Amtrak demoscene party lasts ten hours.

E-paper displays are fancy, cool, and low-power. Putting them in a project, however, is difficult. You need to acquire these display modules, and this has usually been a pain. Now Eink has a web shop where you can peruse and purchase epaper display modules and drivers.

[Kris] built a pair of STM32L4 dev boards that are easily programmed in the Arduino IDE. Now he’s putting these boards up on Kickstarter. The prices are reasonable – $15 for the smaller of the pair, and $25 for the bigger one. Remember, kids: ARM is the future, at least until RISC-V takes over.

This is how you do holiday greeting cards.

Didn’t get what you want for Christmas?  Don’t worry, Amazon still has A Million Random Digits with 100,000 Normal Deviates in stock. It’s also available on audible dot com. Sometimes we don’t have time to sit down and read a million random digits but with audible dot com, you can listen to a million random digits in audio book format. That’s audible dot com please give us money.

northkoreaThis is the last Hackaday Links post of the year, which means it’s time for one of our most cherished traditions: reviewing our readership in North Korea.

It’s been a banner year for Hackaday in the Democratic People’s Republic of North Korea. The readership has exploded in 2016, with a gain of nearly 300%. To put that in perspective, in 2015 we had thirty-six views from North Korea across every page on Hackaday. In 2016, that number increased to one hundred and forty.

That’s a phenomenal increase and a yearly growth that is unheard of in the publishing industry. We’d like to tip our hat to all our North Korean reader, and we’re looking forward to serving you in 2017.

128 LEDs, 5 Buttons, IR Comm, And A Few Hours: What Could You Create?

When the second band had played its last encore, before the legendary DJ took the stage, a cadre of hardware hackers climbed three steps with a twinkle in their eyes and glowing electronics in their hands. I’m surprised and relieved that the nugget of excitement that first led me to twiddle a byte in a microcontroller is still alive, and this moment — this crossroads of hacker family — stirred that molten hot center of adventure in everyone.

The badge hacking demoscene is a welcoming one. No blinking pixel is too simple, and no half-implemented idea falls short of impressing everyone because they prove the creativity, effort, and courage of each who got up to share their creation. How could we ever get together as a community and not do this?

It was after midnight before we began the demoparty. I somehow managed to come to the Hackaday | Belgrade conference without a USB webcam to use as a top-down camera. I also didn’t line up someone to record with a camera until minutes before. Please forgive our technical difficulties — we first tried to use a laptop webcam to project to the bigscreen. When that failed, focusing on the badges because tough for our ad-hoc camera operator. This video is a hack, but I think it’s worth looking past its tech problems.

The crowd gathered as close to the stage as possible and there was electricity in the audience as the wiles of the day were explained. Join me after the break for a brief rundown of each demo, along with a timestamp to find it in the video.

Continue reading “128 LEDs, 5 Buttons, IR Comm, And A Few Hours: What Could You Create?”

That’s Life…on A Hackaday Badge

Our Hackaday Chief [Mike] sent me an e-mail the other day with a link to the Belgrade Hackaday Badge simulator. He clearly wanted me to enter something into the demo scene competition. The good news is that because of the simulator, you didn’t have to leave your desk to participate. The bad news is that I had very little time left at the end of the month, so I wanted to do something appealing but it had to be fairly easy to roll out. I wound up doing a very quick project but it had a few fine points that I thought I’d share. The end goal was to have an interesting display of Conway’s game of life on the badge.

By the way, there was a completely different project with the same goal by [Jeremias] on Hackaday.io. As far as I know, this was just the result of two people setting out to do the same thing. You’ll see the user interface is a good bit different, so you might see which you prefer.

If you haven’t seen it, the real badge is below. The emulator, of course, just runs as a window on your PC. For those that will be at the conference, or just want to program closer to the actual hardware, there is now a preconfigured MPLABX framework  for the PIC18LF25K50 and the bootloader/kernel running on this badge.

Continue reading “That’s Life…on A Hackaday Badge”

Hack The Hackaday Demoscene From Your Own Home

We are just two weeks away from the Hackaday | Belgrade conference, and tickets have completely sold out. That means you can’t get your hands on one of these sweet hardware badges, but you can still take home some prizes for pulling off a gnarly hack with the badge firmware.

What we’re talking about is the Hackaday Belgrade Badge Demoscene – which includes a surrogate presenter program for anyone who wants to send in their own code for the device. You have two weeks to work on and submit your code — and we’ve made it really easy for anyone who has a working knowledge of C.

The day of the conference we will download all entries, and have a surrogate at the conference load it onto their badge and present it on your behalf. There is a separate pool of prizes for online entries, so hackers not at the con will win. And of course we’ll be celebrating the awesome demos with some posts on the front page.

No Hardware Needed

Badge emulator scrolling the word "Hackaday"
Badge emulator scrolling the word “Hackaday”

Hack in C for Abstracted Bliss or Be Hardcore:

You can use the emulator shown here to write your code for this badge. It comes with a set of basic functions that abstracts away the low-level hardware functions, and launches a demo window on your computer to test out your code. Check out this barebones C framework to get started.

For those that want more control, we have published the official assembly code that the badges will ship with (including a user manual). We’ll be squashing bugs right up to the day of the con). You can alter and compile this code yourself, or just start from scratch using the design spec if you prefer to travel the hardcore bit-monkey path.

Either way, you have an 8×16 display and 4 buttons to work with. Exercise your creativity and amaze us by doing a lot on a rather modest canvas. That’s what demoscene is all about.

How to Enter

Entry is easy, just start a project on Hackaday.io and submit it to the Belgrade Badge Demoscene contest using the “Submit Project To…” menu on your project page. You need to upload .C and .H files, or a precompiled .HEX to the file hosting part of your project page by Saturday, April 9th.

That’s the extent of the requirements. But it would be super fun if you recorded the software emulator playing your demo for all to see. The easiest way to do this is to record a video of your computer screen using your smartphone. Good luck to all!

It’s Alive! — Badge For Hackaday Belgrade

Hackaday Belgrade — our first ever conference in Europe — is coming up fast. One of the really exciting things for me is the hardware badge which [Voja Antonic] designed for the conference. He’s done a great job with hardware choices and I think we’ve hit the sweet spot for badge hacking. Let’s jump into the hardware and firmware details after the break.

Get your ticket now for ten hours of talks and workshops, evening concerts, and of course badge hacking the entire time. Earlybird sales close Monday. We’re still in the process of going through talk proposals but we’ll publish a post next week announcing all of the speakers.

Continue reading “It’s Alive! — Badge For Hackaday Belgrade”