Easy 6502
skilldrick.github.com
skilldrick.github.com
Then years later, I was given the task to program toys, all in 6502. I did a Little People Farm, Little People Phone, a musical jumprope and a reading of Goldielocks and the three bears.
I think the 6502 will never die.
According to Western Design Centre's website they're still licensing hundreds of millions 65xx series designs a year, which puts them in the league of MIPS, PPC and x86 in volumes. Don't know if that message is current, though.
It's fun to think that the many years worth of sales of all the 80's home computers most of us associate with C64 adds up to less than a years current sales of an ISA that's closing in on 40 years.
(EDIT: also, for examples of other obscure uses of 65xx cores: Some Amiga models, like the A500, had a 65xx core on the keyboard, in a model with a tiny onchip PROM and a some RAM, that was used as a serial controller)
Did you have any external media available, or just the RAM?
Did the machine not even have a memory of what was on the screen? Because that's usually at least 2K, and that would go a long way.
It was/is the bread and butter of the C64 demo scene.
Not completely true. My company for example develops embedded systems for trains.
These systems can have a lifespan of decades, where they see daily use, and there's no reason for the customers to upgrade, but they might ask a change or some new functionality over the existing system.
Not me personally but I know of a few engineers that every now and then have to roll up their sleeves and write assembly. I would be surprised if this is not somewhat common, for companies mantaining long term systems.
Nice article BTW.
Later moving on to the Motorola 68000 series chips which were great, but just not as fun as working with the 6502. The 6502 was so simple and well designed, writing in assembly was actually productive.
To this day, the best job I've ever had.
Later I wrote a good bit of assembly for demo programs (which frankly sucked). I particularly loved the SID chip (http://en.wikipedia.org/wiki/MOS_Technology_SID).
Anybody remember Impossible Misson? I'm still fond of uttering "Destroy Him, My Robots". I don't think anybody gets the reference anymore though. https://www.youtube.com/watch?v=ginShVeGpGY
Still, love and upvoted you for also having a ZX81 and, like me, typing in insane machine code. Probably felt like travelling back 2 years in time!!!! :)
There was a magazine called 'The Transactor':
http://www.scribd.com/collections/2988621/The-Transactor-Com...
The experience, definitely gave me a leg up later on, as an EE student, where I got to learn x86 ASM as well. The symbolic assemblers were much nicer. Most people would start out with templates where all the various memory segments were already setup. What was crazy was that after a awhile, you got to a point where you could recognize the instructions from looking at the HEX.
It was one of my first introductions to computing, and probably exactly what I needed.
I actually wouldn't mind learning assembly as a pet language :D
I did enjoy it, and even wrote a toy compiler for it.
Worth going through, if you have the time.
What was yours?
I never really learned x86 assembly because I started with some awful Scelbi book.
BTW, I used assembly in a real-world project about two years ago, and one of my cow-orkers was using it yesterday. It's anything but dead.
Richard Haskell is still writing accessible introductory books for Verilog and VHDL. His new books look pretty good, but they came along a bit too late to help me this time.
The last time I checked, which admittedly was almost 10 years ago, microcontrollers with embedded 6502 cores were quite popular with chinese toy manufacturers.
Is there an Android device cheaper than the Raspberry Pi?
I have fond memories of capturing an interrupt and displaying the time in the upper left corner of the screen without blocking the command line. Good times!
(fun and useless trivia about the tape port: you could use your C64 as a very primitive 1-bit sampler by recording the tape input, and play it back by toggling the input to max and down again on every "1"; with some basic run-length encoding you could get a reasonable length sample in memory and still be able to record at a tolerable sample rate to get recognizable output)