3 Billion Devices And A Sega Genesis Run Java

A few years ago, [Mike]’s friend gave him an old Sega Genesis with the very cool and somewhat rare SegaCD drive attached. The SegaCD gave him an idea – while it’s not easy to burn a cartridge and play homebrew games on a real Genesis console, everyone has a CD burner somewhere. [Mike] began writing his demo and then realized adding Java would be easy on the 68000. The result is Java on three billion devices and a Sega Genesis.

This project is built around Java Grinder a Java byte code compiler that will compile classes, factories, and all the horrible Java design.design.pattern.pattern.patterns() into assembly language. Already, there are a lot of platforms supported by Java Grinder, including the Commodore 64, the TI99, and thanks to some work from [Joe Davisson], the Apple IIgs

With a byte code compiler, an assembler, and an API for the Sega-specific hardware, [Mike] set about building his demo. Since this was a Sega, it needed the ‘SEGA’ sound at the start. [Mike] ended up recording his voice saying ‘JAVA!’ This plays through the Z80 on the Genesis.

The complete demo – viewable in its emulated format below – has everything you would expect from a proper demo. Starfields, dancing sprites, and even a Mandelbrot pattern make it into the three-minute long demo.

Continue reading “3 Billion Devices And A Sega Genesis Run Java”

Laser Cutting Bathymetric Maps

Bathymetry is the underwater equivalent to topography. And with the right map data, you can make some amazing 3D laser cut maps that feature both land masses — and the details under the sea. [Logan] just learned how to do this, and is sharing his knowledge with us.

[Logan] holds the typical hacker belief: The best way to learn something is just to start the project and figure it out as you go. Which also makes him an excellent candidate for helping others to learn what not to do. His goal of the project was to create a visually stunning map of Vancouver that helps to emphasize the depth of the ocean just off the coast.

To do this he obtained bathymetry data from the Fisheries and Oceans of Canada, and city map data from Open Street Map, a service we’re very familiar with that has provided data for many cool hacks, like this Runner’s GPS unit. The tricky part now is combining the data in order to laser it.

Continue reading “Laser Cutting Bathymetric Maps”

USB Volume Control

If you buy expensive computer speakers, they often have a volume knob you can mount somewhere on your desk so you aren’t dependent on the onboard volume control. [Kris S] decided to build his own version of the remote volume control. Not surprisingly, it uses an Arduino-compatible Digispark board and a rotary controller. The Digispark (that [Kris S] bought for $2) is compatible with the Adafruit Trinket. This is key because the Trinket libraries are what make it easy to send media keys over the USB (using the HID interface) to control the volume.

Really, though, the best part of the build is the good looking knob made out of a pill bottle (see the video below). The micro Digispark is small enough to fit in the lid of the pill bottle, and some wax and pellets add some heft to the volume control. Continue reading “USB Volume Control”

Control Your HTPC With Scavenged IR Parts

If you’ve built yourself a home theater PC, one of your highest priorities is probably coming up with a convenient control solution. The easiest way to do this is to simply use something like a wireless keyboard and mouse. But, that’s not very conducive to an enjoyable home theater experience, and it feels pretty clunky. However, if you’ve got the right components lying around, [Sebastian Goscik] has instructions and an Arduino sketch that will let you control your HTPC with any IR remote control.

There are a number of ways you could control your HTPC, and we’ve featured more than one build specifically for controlling XBMC over the years. Unfortunately, most of those methods require that you spend your hard earned money (which is better spent on popcorn). [Sebastian’s] setup can be replicated with things you probably have on hand: an Arduino, an IR remote, and a scavenged IR receiver. The IR receiver can be found in many devices, like old stereos or TVs that themselves were controlled via an IR remote.

It starts with an Arduino Sketch that lets you can see on the serial monitor what code is being generated by the button presses on your remote. These are then scripted to perform any task or function you like when those buttons are pushed. The most obvious use here is simple directional control for selecting your movies, but much more complex tasks are possible. Maybe someone can program a T9 script to type using the number buttons on most remotes?

Hackaday Links: November 22, 2015

There’s a new documentary series on Al Jazeera called Rebel Geeks that looks at the people who make the stuff everyone uses. The latest 25-minute part of the series is with [Massimo], chief of the arduino.cc camp. Upcoming episodes include Twitter co-creator [Evan Henshaw-Plath] and people in the Madrid government who are trying to build a direct democracy for the city on the Internet.

Despite being a WiFi device, the ESP8266 is surprisingly great at being an Internet of Thing. The only problem is the range. No worries; you can use the ESP as a WiFi repeater that will get you about 0.5km further for each additional repeater node. Power is of course required, but you can stuff everything inside a cell phone charger.

I’ve said it before and I’ll say it again: the most common use for the Raspberry Pi is a vintage console emulator. Now there’s a Kickstarter for a dedicated tabletop Raspi emulation case that actually looks good.

Pogo pins are the go-to solution for putting firmware on hundreds of boards. These tiny spring-loaded pins give you a programming rig that’s easy to attach and detach without any soldering whatsoever. [Tom] needed to program a few dozen boards in a short amount of time, didn’t have any pogo pins, and didn’t want to solder a header to each board. The solution? Pull the pins out of a female header. It works in a pinch, but you probably want a better solution for a more permanent setup.

Half of building a PCB is getting parts and pinouts right. [Josef] is working on a tool to at least semi-automate the importing of pinout tables from datasheets into KiCad. This is a very, very hard problem, and if it’s half right half the time, that’s a tremendous accomplishment.

Last summer, [Voja] wrote something for the blog on building enclosures from FR4. Over on Hackaday.io he’s working on a project, and it’s time for that project to get an enclosure. The results are amazing and leave us wondering why we don’t see this technique more often.

Inferno OS On Raspberry Pi

Unix isn’t the only operating system that came out of Bell Labs. In an effort to decouple hardware from user interfaces over a network, Bell also developed an OS named Plan 9 (named after the famously bad Ed Wood movie).  While Plan 9 is still in use, it never got the momentum that Unix did. In 1996, Bell Labs (now AT&T) decided to shift its focus to Inferno, an operating system  that was meant to challenge Java as a cross-platform virtual machine environment. Now LynxLine Labs has ported Inferno to the Raspberry Pi.

Not only did they do the work, they documented it in 26 labs if you want to follow along. Or, you can just head over to the project page and get the results along with updates (judging from the commit log, the project is under active development).

Continue reading “Inferno OS On Raspberry Pi”

The First Radio Sets: A Spark Gap And A Coherer

[Ashish] let us know about his experiments in recreating the earliest type of radio set: a spark-gap transmitter and iron-filings coherer. He goes through the historical development of the kit in great detail, so we’re just going to skip that part. Go read it yourself!

Instead, we’re going to tease you with the coolest part of the rig: the coherer. In [Ashish]’s build, it’s a piece of tubing with some iron filings between two bolts. When a sufficiently strong EM wave hits the filings, they stick together and bridge the gap between the bolts, allowing electricity to flow and light up an LED, for instance. You can see this in [Ashish]’s video below the break, along with kmore discussion of that coherer.

Continue reading “The First Radio Sets: A Spark Gap And A Coherer”