What books and/or courseware should be considered "must read" or definitive on the subject of C64 programming? This question asks about the knowledge that isn't tied up in books. However a sea of C64 programming books and courseware were published that are currently available only via physical media.
I am just getting you started, and I have no first hand knowledge of programming the Commodore 64, but this title right here seemed like a logical starting place:
Commodore 64 Programmer's Reference Guide (Paperback)
Apparently you can buy one for 45 cents:
http://www.amazon.com/Commodore-64-Programmers-Reference-Guide/dp/0672220563
I found this site which had that book and other references listed:
One of the first programs I ever published was for the Commodore 64. It appeared in the back pages of Compute! magazine.
If you're serious about retro dev on a C64, you should source the original hardware. It uses special keyboard combinations for graphics. If you don't care about the graphics part (or you know PEEK
and POKE
really well), then the emulator is fine.
Anyway, to answer your question, the official CBM BASIC manuals are the de facto docs for C64 programming, at least that was the case in 1986 when I last wrote code for it.
I found this: Commodore 64 Documents, including "Commodore 64 Programmer's Reference Guide."
My personal favorite is Machine Language for the Commodore 64, by Jim Butterfield. http://books.google.com/books?id=KU3%5FAAAACAAJ .
Also look at
The Best C64 Ml tutorial collection - http://noname.c64.org/csdb/release/?id=8717 .
Anything from Jim Butterfield. He was pretty much the authority on those old 6502 based CBM machines.
You wouldn't get very far on a C64 without having one of the old 1541 disk drives, and the book for that was "Inside Commodore DOS"
When I used to do 6510 assembly programming, The Anatomy of the Commodore 64 by Angerhausen, Becker, et al. was invaluable to understand how the C64 worked in-depth. h++p://isbn.nu/9780916439002
Using a VIC-20 and Monitor cartridge I learned 6502 assembly from a variety of sources but mostly old mags like Compute! and Byte, and the book Programming and Interfacing the 6502 with Experiments by DeJong http://isbn.nu/0672216515 , which is geared to the KIM-1 but most info applies to any 65xx machine. Some programs will need to be ported to conform to the memory map and I/O of your target machine, but they're simple to do (I was in my early teens with my first computer when I did it which shows it is relatively easy) and the experience will aid in understanding. I don't remember if the VIC-20 Programmer's Reference Guide had any info on assembly or not, but the Commodore 64 Programmer's Reference Guide has the 6510 programmer's model laid out and is enough info to start writing simple programs.