Friday, September 20, 2019

The Enduring Popularity of the 6502 - CommanderX16

There are many 6502 related projects ongoing.  Just search the web and you will not be lacking for interesting material.

The particular 6502 project I find most interesting is one dreamed up by David Murray, the 8-bit guy.  He and a few other experts in different disciplines from hardware and software to art production are actively designing and prototyping a modern 6502 version of what could be called a spiritual successor to the Commodore PET, the VIC-20, and the ever popular Commodore 64.  They call it the CommanderX16.

This computer is based on the 65c02 processor (still available!) and the hope is that it will run at 8MHz (8x faster than an original Commodore computer) and it will run a version of Commodore BASIC.  It will also have updated graphics and sound hardware and expansion slots!

Here is a link to their Facebook group to find out more!

Wednesday, September 26, 2018

Father of the Personal Computer -- Chuck Peddle?

I always thought that Alan Kay is the father of personal computer.  Some people think it is Steve Wozniak.  Just listen to this interview with Chuck Peddle, the designer of the 6502 processor at MOS and Commodore and you may change your mind.  He also talks about BASIC and Bill Gates.  He touches on so many really interesting things.  You may not think the same way again about computer history.

Click to go to and listen to this interview.

The truth "from a certain point of view." -- Obi-Wan Kenobi   ;-)

Thursday, September 20, 2018

A Brother from Another Mother

I hope my readers will indulge me while a take a quick detour into one of my favorite things; Programmable calculators.

As a gentle prologue to machine language programming I don't think you can do better than one of the old programmable calculators.  In my youth the very first thing I learned to program was my father's HP-67 calculator.  I still have one today.  Me and my brother Ernie both had TI-57 calculators and we had a good time with these, trying to cram something interesting into 49 steps of program memory.  ;-)

My personal HP-67.

If you look at the Commodore MOS KIM-1 it sort of looks like a giant calculator.

The HP-67 is a small computer, and like the KIM-1 it even has its own permanent program storage in a form of a magnetic card reader.  It has it's own language that resembles assembly language, but it is like an assembly language with training wheels.

Like the assembly language coder, the HP-67 programmer needs to deal with registers, with conserving space, with storing and retrieving values.  Many ideas are represented.  There is even a way to jump indirectly using a value in a register.

Here is some 6502 assembly code:

LDA #$c0
ADC #$c4

For comparison here is some HP-67 code.

F? 3

The user is insulated from certain kinds of problems such as programs accidentally overwriting themselves because the programs can only change values in the registers.  So there is program memory (224 instructions) and there is data memory (26 registers).

The programmer is also introduced to LIFO stack concepts.

The quality of documentation that came with these calculators put programming within the reach of most people.

Wednesday, September 12, 2018

Virtual 6502 web site

I found this cool website which has a 6502 emulator, an assembler and a disassembler.  What a cool free resource.

Check it out!

Tuesday, September 11, 2018

Microchess 6502 source code

Microchess is the first game ever published for a home computer back in the 1970s.  It was written for the Commodore MOS KIM-1 single board computer by Peter Jennings (no, not that Peter Jennings!) and when you bought a copy all you got was a manual with the machine code listing in hexadecimal.  To play you needed to punch those numbers in by hand.  Yes, really!  The good news was that the KIM-1 had a cassette interface.  ;-)

I found the assembly language source code online!  Yay!

Friday, September 7, 2018

The Edit, Cookies, Debug Cycle

Yes, you read that right!

Back in the day, when I used to write business software for the Apple II computer (and the IBM PC, let's forget I said that) we used to use the Applesoft BASIC Compiler from Microsoft.

Typically I would print out the program listing, or part of it.  Go away and mark it up, planning what I was going to do next.  Then I would sit down and make my edits using the Applesoft interpreter and run the compiler.

This was a disk-based compiler, before microcomputers had enough memory to hold the code, the compiler and everything else in memory.  That meant that the compile was really, really slow.

So when you start the compiler it reads a line of code and displays it on the screen, and then you hear the floppy drive do its grinding sounds.  Rrrrr, rrrr,  rrrrrrrr,  rr.  Swish, swish, swish.  Repeat.

Each line of code was 3 or 4 seconds to compile, and when it was finally done with that it had to do a second pass to finish compiling.

It took a half hour to compile the code.  I can't say I really minded so much because this was an ideal time for some coffee and cookies (Keebler fudge covered cookies).  Or I would watch TV with my boss and we would talk politics.

Then once the program was compiled it would get tested, and the cycle would repeat.

Thursday, September 6, 2018

Why Does the 6502 Matter?

Arguably the MOS 6502 processor was really no better than Motorola 6800 that was its direct predecessor, and why would you buy the most important part of your computer from a calculator chip company like MOS Technologies instead of a more stable company like Motorola?

The answer is clear.  $25  The 6502 was merely 1/6th the cost of a Motorola 6800.

Think about it.  Without this low price, Steve Wozniak would not have produced the Apple I and Apple II computers as we know them, and Commodore could not have produced the PET, VIC-20, C64, etc.  The Atari VCS and Nintendo NES would never have existed.

The home computer market would have evolved more slowly and in a completely different direction.