The MOS Technology 6502 was one of the more popular processors of the 1980s. It ran the Commodore 64, the NES in a modified form, and a whole bunch of other hardware, too. By modern standards, it’s barely fit to run a calculator, but no matter – [Nick Bild] built a VR game that runs on the retro CPU anyway!
[Nick]’s project is built on his 6502 computer, the Vectron 64. Being a breadboard build, it’s easy to modify things and add additional hardware, and that’s precisely what he did. The VR system uses two 320 x 240 LCD screens, one for each eye. These are controlled over SPI, but the humble 6502 simply doesn’t have the speed to clock out enough bits fast enough for a video game. Instead, additional hardware is added to generate pulses to run the screens. There’s a bunch of other neat hacks as well that help make the game playable, like overclocking the CPU to 1.75 MHz and drawing common elements to both screens at the same time.
To test out the VR system, [Nick] coded a basic Asteroids VR game. It’s not really practical to demonstrate the game without the hardware, but we’d love to try it out. There’s something compelling about a low-resolution VR game with 8-bit graphics, and we hope to see the concept further developed in future.
More grunt would make this project even more capable, and for that, a 6502 running at 20MHz could come in handy. Video after the break.
[Thanks to Fred Gimble for the tip!]
Continue reading “VR On The 6502”
Sometimes the urge strikes to get busy coding for an old retro system, but unfortunately the bar to entry can be high. There’s a need to find a workable compiler, let alone trying to figure out how to load code onto original vintage hardware. It doesn’t have to be so hard, though. The team at [HeatSync Labs] built an Atari 2600 development station so hackerspace members can simply rock up and get to work.
With this rig, development is a multi-step process. A paper manual is on hand to provide detail of how to code for the Atari. An IBM PC is then on hand to allow the budding developer to code in assembly. This text file is then compiled into an Atari ROM, which is then passed through a special utility to convert it to an audio file. This is to allow it to be used with a Starpath Supercharger, which allows games to be loaded onto the Atari via cassette tape, or in this case, raw digital audio. By playing the audio file on the PC, connected to the Supercharger cartridge, it’s possible to run arbitrary code on the Atari 2600.
Programming in 6502 assembly isn’t the easiest mountain to climb for an absolute novice, but experienced coders will likely appreciate the no-fuss development environment. It makes for an easy gateway into the world of retro console programming, and there’s nothing like the fun of seeing your code running on original hardware.
We love a good story of retro development – like this tale of fixing a 37-year-old bug in an Apple II game. Video after the break.
Continue reading “Get Coding With This Atari 2600 Development Suite”
Over the years we’ve seen a number of homebrew 6502 computers assembled with little more than a breadboard, a sack full of jumper wires, and an otherworldly patience that would make a Buddhist Monk jealous. Anyone who takes the time to assemble a fully functional computer on a half-dozen breadboards lined up on their workbench will always be a superstar in our book.
While we’re still too lazy to attempt one of these builds ourselves, we have to admit that the Vectron 64 by [Nick Bild] looks dangerously close to something you might be able to pull off within a reasonable amount of time. It’s still an incredible amount of work, but compared to some of the other projects we’ve seen, this one manages to keep the part count relatively low thanks to the use of a simple 16×2 LCD for output and user input provided by a PS/2 keyboard. You won’t be playing Prince of Persia on it, but at least you might be able to finish it in a weekend.
The computer is clocked at 1 MHz, and features 32KB RAM
along with 32KB EEPROM. That should be enough for anyone. [Nick] also points out he tried to use era-appropriate 7400 series ICs wherever possible, so no worries about historical revisionism here. If you’re looking for a design that somebody could have potentially knocked together back in the 1970s, this one would get you fairly close.
The astute reader might notice there’s no removable media in this build, and may be wondering how one loads programs. For that, [Nick] allowed himself a bit of modern convenience and came up with a scheme that allows an Arduino (or similar microcontroller) to connect up to the computer’s 28C256-15 EEPROM. With a Python script running on your “real” computer, you can write a new ROM image directly to the chip. He’s included the source code for a simple program which will write whatever you type on the keyboard out on the LCD, which should give you a good framework for writing additional software.
If you’re looking for a bigger challenge, don’t worry. We’ve covered 6502 breadboard computers that will make your eyes water. Incidentally, this isn’t the first time we’ve seen a similar LCD used for one of these computers, so looks like there’s no shame in sneaking in modern parts where it makes sense.
We are very familiar with retrocomputers, and if you want you too can build a computer that could have been made in the late ’70s on a breadboard. Just grab your CPU of choice, add some RAM, some ROM, a ton of jumper wires, and give it some way to talk to the outside world. The problem with the computers inspired by yesteryear is that they all, inexplicably, use through-hole parts. If only someone used the small QFP parts instead of the big chonkin’ PDIPs, we could have really small retrocomputers. That’s exactly what [NotArtyom] did, and he managed to come up with a wearable 6502 watch.
The system design for this 6502-based watch is fairly standard for what you would find in any other retrocomputer. There’s a PLCC 6502, 32k of SRAM, 16k of ROM, and a PLLC’d 6522 for a bit of IO. There are a few peripherals hanging off the 6522, and since this thing is a watch the most important is a real time clock. There’s also a Nokia LCD and a 20-pin Commodore keyboard connector.
Software-wise, most of the ROM is dedicated to G’Mon, a generic monitor that can view and modify memory. There’s also EhBasic, and a kernel to handle the RTC, keyboard, and display.
Whether or not this is a useful smartwatch isn’t the question; this is one of the first retrocomputer projects we’ve seen that lean into the non-PDIP versions of these classic chips. This is a bit surprising, because you can still buy these parts, PDIP or not, new from the usual vendors. If nothing else, it’s a demonstration of what can be done with modern IC packages.
Normally when we bring you news of a retrocomputing design, it will centre around a single processor. At its heart will be a 6502, a Z80, or perhaps a 6809. There will be a host of support chips, some memory as RAM or ROM, and a bunch of interfaces. [Erturk Kocalar]’s RetroShield project for the Arduino Mega breaks all of those rules, because it supports all three of those classic processors, has no support chips, no memory, and no external interfaces beyond the shield connection to the Mega. What on earth is going on!
A closer look reveals that the project is a set of shields that use the Mega’s power to emulate all the support chips and peripherals you’d have seen on the original hardware. And while it would be impressive to have a single board with support for all three CPUs, in fact there is a PCB for each one. But that makes it no less interesting a project for those with an interest in 8-bit processors, because the focus becomes the software rather than a quest to find out-of-production silicon.
So far there is some limited demo software, and his website goes into some detail on the interfacing and code required. The Arduino can only clock the 8-bit CPU at 95kHz in software which may sound a bit low to those familiar with 1980s home computers, but it’s best to think of this as an experimentation platform and give up dreams of playing Elite. An exciting prospect comes in giving the 8-bit machine access to Arduino shields, if improbable hardware is your bag.
If this has captured your interest, you might also wish to take a look at the $4 Z80 single board computer which has a similar ethos.
Imagine you’re time-warped back to 1979 and tasked with constructing a personal computer. Could you do it? [RadicalBrad] thinks he can, and his 6502-based “Super VIC” build looks like it’s off to a great retrocomputing start.
Most emulations of old hardware these days go the FPGA route, and while we respect those projects immensely, there’s something to be said for applying a highly artificial constraint at the outset of a project. [RadicalBrad] chose to design like it’s 1979, and limited his ode to the machines of his youth to the 6502 CPU and logic and RAM chips available before 1980. The computer will support NTSC video output and 4-channels of 8-bit sound. No circuit boards will be used – everything is to be assembled on solderless breadboards. So far he has 48 (!) of them ganged together, which sounds like an enormous amount of space to work with, but he still found things crowded enough that some of the DIP bodies were trimmed a bit to fit more closely on the breadboards. The SRAM posed a problem, though, in that the 512K chips he wanted were not available in DIPs. To stay faithful to the constraints, he soldered the SOJ-packaged RAM chips into 40-PIN DIP headers – all 25 chips! We can’t recall a PC of the era sporting 12 megabytes of RAM, but no matter – it’s too cool not to love.
[RadicalBrad] has his work cut out for him, and this could take years to finish. We’re keen to follow his progress and can’t wait till it boots for the first time. Until it does, we’ll just gaze upon such discrete computing wonders as this almost-as-simple-as-possible computer, or even this delightfully noisy adder for a relay computer.
Join us Wednesday at noon Pacific time for the Home Machine Shop Hack Chat!
Even if you haven’t been here for very long, you’ll probably recognize Quinn Dunki as Hackaday’s resident consulting machinist. Quinn recently did a great series of articles on the “King of Machine Tools”, the lathe, covering everything from the history of precision machine tools to making your first chips. She’s documented the entire process of procuring and setting up a new lathe, pointing out all the potential pitfalls the budding home machinist may face. You can get a much deeper dive into her machining adventures on her YouTube channel, Blondihacks.
Flinging hot metal chips around is hardly all Quinn has accomplished, though. Long before her foray into machine tools, there was Veronica, a scratch-built 6502 machine Quinn created as an homage to the machines that launched her into a life of writing software. We’ve featured Veronica on our pages a couple of times, and she’s always made quite a hit.
Please join us for this Hack Chat, where we’ll discuss:
- How developing software and machining are alike, and how they differ;
- How social networks have changed the perception of machining;
- Best practices for getting started in machining; and
- Are there any new machine tool purchases in the pipeline?
You are, of course, encouraged to add your own questions to the discussion. You can do that by leaving a comment on the Home Machine Shop Hack Chat and we’ll put that in the queue for the Hack Chat discussion.
Our Hack Chats are live community events on the Hackaday.io Hack Chat group messaging. This week we’ll be sitting down on Wednesday, March 20, at noon, Pacific time. If time zones have got you down, we have a handy time zone converter.
Click that speech bubble to the right, and you’ll be taken directly to the Hack Chat group on Hackaday.io. You don’t have to wait until Wednesday; join whenever you want and you can see what the community is talking about.