Hacker Newsnew | past | comments | ask | show | jobs | submit | jdporter's commentslogin

Back in the day, I did quite a bit of programming, professionally, on 6800-family CPUs, mainly 6850 and kin. It was an absolute pleasure to work with. The 6502, by comparison, felt like an absolute nightmare.


How would you compare the 6502 to the 6800? I cut my assembly teeth on the 68000 in the Amiga but always heard plenty about the 6502 due to the C64, but would love more perspective on how it compares to other CPUs.


Not the OP, but I'll give that a shot since I cut my assembly teeth on both of these, the Z80 and the '09 afterwards (and then back the 6502 because of the BBC Micro).

Both are fine processors, the 6502 was technically not quite where the 6800 was but nothing that you couldn't solve using a couple of macros (and a Macro assembler was table stakes for anybody serious enough to go after this stuff and so you rolled your own because buying one was prohibitively expensive).

The 6502 had an edge in available software and books, especially once the Commodore took hold. Community mattered, even back then! The 6800 was laid out much more sensible from an instruction set perspective, the term used is 'orthogonality', if you know the rules you can predict the existence of a particular mnemonic and parameters easily, whereas with the 6502 it was mostly a matter of learning it all by heart. Easy to do because both were tiny in comparison with todays CPUs. I suspect that's where the GP's nightmare comment relates to, the fact that the 6502 always felt like it could have been so much better if they had spent a bit more time on this subject.

The 6800, it's more modern and upgraded brother, the 6809 and the much larger 68000 all were much more logical and predictable. The Z80 became widespread due to - amongst others - Sinclair with the ZX-80 and ZX-81, and Radio Shack using them in their line of TRS-80 micro computers, and a large number of people cut their teeth on those. I had access to them at work (I worked for Tandy on Saturdays, which was the European name for RS) and never found that chip much to my liking, but it was the engine behind the CP/M software environment.

Programming in assembler (or even directly in machine code) is an exercise in abstraction to the point that you have to have a very good memory and to be able to limit the scope of what you are doing to be able to make any progress at all. But it beat the pants of BASIC (the most common alternative on micro computers at the time) in terms of speed and control so if you wanted to do anything serious with those machines that's how you did it.

The 6502 had awesome hardware support in terms of peripherals and the machines you found it in (with the BBC Micro model 'B' as the pinnacle of home computing at the time) and the 6800/6809 had an edge if you wanted to roll your own system from scratch. Various bus based systems (S-100, Eurocards, VME) gave you the option to build systems and to swap out the CPU with something else. The BBC again led the way here by speccing a bus called 'the Tube' (a pun on the London underground) that allowed you to build specialist co-processors that used the original BBC as an I/O processor.


Thank you for such a well-rounded reply. After my initial question I did read down through all the comments, and read a lot more about 6502 vs. 6800. It was a fascinating read.

I completely agree with your comment about "community matters". You could really see this in the demo scene for the C64 (as well as the games programming world).

My friend's older brother had a ZX Spectrum, which I lusted after (mostly for the games). I was still too young to really "get" assembly, and it was only really when I got to the end of high school that I got into it.

BBCs were very rare here in Aus, but I did pore over a magazine column that featured them. I vaguely remember the Tube being mentioned.


How do you program the 6850? I thought that was the UART peripheral chip.


Indeed it is, it may be GP has their numbers mixed up a bit. What's funny is that you say 6850 and I immediately have the pinout in my head and I haven't looked at that chip for a good 40 years :)


The book Willem says he is reading, by Joe Keohane, talks about the benefits of talking to strangers, and calls this "connecting". That is not at all what psychologists mean by "connecting". I talk to people all the time, both familiar and strange, and yet am not connected to anyone, in the latter sense.


Thanks for pointing this out. I purposefully write about "talking" to strangers. But, in the book Jeo Keohane actually goes a long way to have more meaningful, deeper, conversations.

By offering yourself as attentive listener, random strangers that you engage with can feel comfortable enough to share a little more than just smalltalk. The book discusses several cases where folks with very different backgrounds and ideas actually come together, sometimes even forming friendships.

As I am not a psychologist I do not know the accepted definition of "connecting", but I am sure it needs more than just smalltalk. I don't know, I am just a random guy doing a little experiment. :-)


> Your compiled C or C++ program will be very different from the code you wrote

Sorry, you just lost beaucoup credibility points. C is just "high-level assembly language". The output looks exactly like the input, modulo some optimizations by the compiler. Every computer programmer knows this. Or should.


"I am not going to sanitize things just so your precious little Jeighden can locate the latest tweenwave ringtone they ripped off Twitch."


I just realized - the logos of Windows 3.x through 7 look more like flags than they look like windows. I wonder what the reasoning was behind that? I'm sure it has been documented/analyzed somewhere.


looks cool, but D specific. how easy would it be to generalize this?


It's written in D, and it's used to host the D forums, but it's open source, so you can run your own and pick the topics you like.


omg, this is primo java trolling. at least, I think you're being sarcastic...


Maybe. I like to cast a broad net =)


Or, for extra challenge/fun, as a stage play.


Since you can't call it the slashdot effect, obviously...


I don't think they're federated. They don't transparently share data using a common protocol under the hood. They simply link to each other. They're a web.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: