Maltese Cross 6502 Assembly Language

Back in those early days — when I was a little kid in the start of the ’80s — we had a computer. It was an Apple ][+. It was a fine computer, if a little expensive, but I cut my computer chops typing in programs from Nibble magazine. I learned AppleSoft BASIC and all that.

Cut to college, second semester of my sophomore year I took computer science 101. It was fun and easy since I had already done my share of programming. I still had the Apple ][+ back home, and that summer I set out to teach myself assembly language programming.

Wow, what a weird and crazy thing to do, but it totally taught me how computers work. Assembly language is the most basic form of programming you can do. It’s coding in the instructions for the microprocessor using the language of the microprocessor itself.

It’s the ultimate in terms of control, but it’s a very slow and tedious process. In C or other high level languages, there are constructs for most activities. But in assembly you have to write everything from scratch — for example, there are no For loops, you have to construct the loop entirely step by step.

That summer — which I think would be the summer of 1992 — I setup about writing my own word processor in 6502 assembly language for my Apple ][+, which was ancient even at that point.

The 6502 microprocessor, which ran at 1 MHz, was the brains of the ][+ (read: two-plus). I had a program called the MicroSPARC Assembler (later called MindCraft). The Assembler was essentially the equivalent of an IDE for assembly language. IDE may be stretching it a bit, but it had a debugger and some other nice features for writing assembly code.

Well, that’s an old story, and it’s a strange one. Assembly code is an alien tongue — but fortunately not as alien as, say, Lisp. But what got me thinking about all this 6502 stuff is a link I saw over on Waxy to 6502asm.com. It’s a 6502 assembler built in JavaScript, and accessible via the web. There are some pre-written programs if you want to just glance at the code to see what it looks like. It’ll even allow you to compile and run the programs as well.

I don’t think I have any source listings of my assembly word processor anymore, but if you’re feeling adventurous you might want to enter the 6502asm.com coding competition.

And if you’re really serious about 6502 assembly, you can purchase(!) a copy of the Assembler from the above link and run it on an Apple emulator. The Assembler originally cost $50 a copy, but they’re selling it off that website for download for $10. That’s a damn shame. Why they’d still want to charge for the software is beyond me. Put it out in the public domain, and a lot more people will tinker with it.

The lesson to be learned here is that if you want to learn computers, you have to speak their language.

Maltese Cross Leave a comment

(Required)

(Required, but not displayed)



Creative Commons License
This weblog is licensed under a Creative Commons License.
Validation: XHTML 1.0CSS 2.1Atom 1.0

manufactured environments

This is a blog about technology, music, vinyl, turntables and more.

Blog Feed: Recent Entries
Archives: 2000 to 2008
About: Daniel Stout
Classic Entries
The Tag Cloud
Contact


my other blogs

Manufactured Fotos is a collection of my photography.

Manufactured Podcasts is a podcast featuring poetry and PDFcasts.

monthly archives