When I was a kid, the first personal computer I owned was about as far down on the food chain as you could get: the lowly Timex Sinclair 1000, aka the ZX-81. No color, no sound, no keyboard (well, it had one of those pathetic membrane keyboards), 16K of memory. But what it lacked in power or features it made up for in approachability, and in having a very active community of people making stuff for it.
We later replaced it with the ill-fated TS 2068, which added 64K of memory, color, and sound (and loaded programs a bit faster from tape), but suffered from not having much in the way of a support culture. It was a bastardized version of the far more widely-used ZX Spectrum — why didn't they just bring that to the United States? I wondered. Then Dad started bringing home his "luggable" Panasonic PC clone, and both Sinclairs ended up in the attic for keeps.
But one thing I did do with both of those primitive little machines was write video games. They weren't very good (hey, I was twelve), but they were mine. The sense of accomplishment that came from producing something from nothing had no parallel with anything else in my experience.
One game I made was Amoeba, where you controlled a protozoan — running around a field gobbling up nutrients, and trying not to run afoul of parasites. Half Pac-Man, half Centipede. I spent more time working on the animated skits that ran between game boards than I did the game itself. Another game I wrote, the name of which I don't recall (I think it was just called Robot — how creative), was a fairly ambitious crossbreed of the old arcade game Space Zap with some aspects of Donkey Kong 3 (no, really) shoehorned into it.
Both games were written on the 2068, in BASIC, but used some nifty optimizations available there. The 2068 let you define custom character sets, which made it possible to create sprites out of one or more characters that could be moved around the screen pretty quickly. Writing an arcade game in BASIC suddenly wasn't out of the question, especially given how intimidating assembler was. My brother, ever the ambitious one, got his hands on an assembler environment for the 2068. He got most of the way through writing an Asteroids clone in machine language — complete with its own built-in sprite handling — before bailing for other pastures.
When the PC came along, we struggled for a bit more with BASIC — and a BASIC compiler my father had picked up — before switching to Borland's Turbo Pascal. I loved it: Pascal was easy enough for me to learn, compiled to native machine code, and opened up possibilities for programming that weren't visible through BASIC's prison bars. But most of my game programming there came to naught, in big part because I didn't have good ideas for what constituted a playable game. Soon I shelved that hobby entirely.
Somehow, the tapes for Amoeba and my other games went missing. If I'd had the sense to hang onto them, I'd bounce them to audio files and see about getting them running again in an emulator. For old times' sake ... and as a reminder of how limits should be seen a spur to creativity, not a constraint of it.