If you are interested in Commodore 64 or Commodore 128 literature and live near Minneapolis, the Hennepin County Library has several of these books and magazines available. A complete list can be found below.
||Lou Sander's Gold Mine: Game Tips for Commodore Users
by Louis F. Sander (1990)
ISBN 0830683232 / 0830633235
Library: GV1469.15 .S26 1990 / Internet Archive
More details available in this post.
||Electronic projects for your Commodore 64 and 128
by John Iovine (1989)
ISBN 0830604839 / 0830693831
Library: TK9969 .I58 1989 / Internet Archive
||Commodore 64 BASIC Programming with Technical Applications
by Vincent Kassab (1985)
Library: QA76.8.C64 K38 1985
On the front inside cover of the local library book a note reads: “This book is a gift to the Minneapolis Public Library from Jordan Trust Fund”.
In addition to discussions about general programming for somewhat technical purposes and electronics hardware interfacing, the book contains a section about 2D and 3D graphics programming using the Super Expander 64 cartridge with its extra commands like GRAPHIC, COLOR, LOCATE, DRAW, CIRCLE, SCNCLR and CHAR.
||Advanced Commodore 128 graphics and sound programming
by Stan Krute
ISBN 083060930X / 0830686304
Library: QA76.8.C645 K78 1988 / Internet Archive
||The elementary Commodore-64
by William B. Sanders (1983)
ISBN 0835917029 / 088190001X
Library: QA76.8.C64 S26 1983 / Internet Archive
This is a friendly introductory text but with lots of details on how to program in BASIC and use the Commodore 64 in general. It includes discussions about peripheral hardware, additional books and software such as the C-64 WEDGE (a.k.a. DOS Wedge). The author had access to a prototype of the Commodore 64 for an early start on mastering the machine. Cartoonish pen sketches in abundance by Martin Cannon also help to keep things interesting.
||Lou Sander's tips and tricks for Commodore computers
by Louis F. Sander (1989)
ISBN 0830691928 / 0830631925
Library: QA76.8.C64 S257 1989 / Internet Archive
||COMPUTE!'s Data File Handler for the Commodore 64
by Blaine D. Standage et al. (1985)
Library: QA76.8.C64 S718 1985 / Internet Archive
||The easy guide to your Commodore 64
by Joseph Kascmer (1983)
Library: QA76.8.C64 K37 1983 / Internet Archive
||The Commodore 128 Subroutine Library
by David D. Busch (1986)
Library: QA76.8.C645 B87 1986 / QA76.8.C645 B88 1986 / Internet Archive
||COMPUTE!'s Beginner's Guide to Commodore 64 Sound
by John Heilborn (1984)
Library: MT723 .H44 1984 / Internet Archive
The local copy of this book was apparently donated to the Minneapolis Public Library by the John G. Hinderer Trust Fund, as suggested by a note on the front inside cover.
||Moving Graphics: Alien Invaders (Write your own program)
by Marcus Milton (1985)
ISBN 0531034917 / 086313209X
Library: QA76.8.C64 M577 1985 / GV1469.2.M45 1985
With its colorful pages and illustrations, this book is intended for a juvenile audience. It is part of the “Write your own program” series of fun programming books. This particular book in the series explains how to program graphics that have movement, which allows the reader to implement a simple game similar to the classic Space Invaders. BASIC code is provided for both Commodore 64 and Apple IIe computers, and the complete source-code listing for each version is only about 150 lines long, including the game logic, on-screen text, sound effects and data for sprites (or instead “shape tables” in the case of the Apple version). The book's Invaders game is also noted on Gamebase64. Other book titles in the series include:
- “Beginning BASIC: Space Journey” by Gary Marshall (ISBN 0863132065 / 0531034828),
- “Graphics: Hangman” by Mike Duck (ISBN 0531034836),
- “Creating a Database: Adventure Game” by Steve Rodgers and Marcus Milton (ISBN 0863132081 / 0531034909),
- “Adventure Programs for Your Microcomputer” by Jenny Tyler and Les Howarth (ISBN 0860207412), which is not specifically for the Commodore although VIC 20 code changes are included, with an official PDF version that was made available by Usborne Publishing,
- “Fantasy Games for Your Microcomputer” by Les Howarth and Cheryl Evans (ISBN 1851230319 / 0516370316 / 0860208354 / 0860208346), also with its official PDF e-book made available by the publisher Usborne,
- “Sound: Synthesizer” (a.k.a. “Micro Sound: Synthesizer”) by Henry Waldock and Robin Betts (ISBN 0531170128), and
- “Advanced Graphics: Haunted House” (ISBN 0531170136) or sometimes called “Computer Animation: Haunted House” (ISBN 0863133029), both titles also by Marcus Milton.
||Let's Learn BASIC: A Kids' Introduction to BASIC Programming on the Commodore 64
by Ben Shneiderman (1984)
Library: QA76.8.C64 S53 1984
This book teaches the reader to become a competent novice in BASIC programming and requires no advanced mathematical skills (only simple arithmetic). It was written for an audience of around eight year olds (third graders) to fourteen year olds (ninth graders), but it does not exclude any adults. The book contains many black-and-white photos and happy hand-drawn pictures (by True Kelley), often depicting kids. In addition to this book that is customized especially for users of Commodore 64 machines, the author also wrote almost identical titles customized for ATARI home computers, IBM personal computers and the Apple II series computers. Furthermore, there are sections called Differences Among Computers that compare the way things work on all these machines and also the Timex/Sinclair, TI 99/4A and TRS-80 microcomputer.
||An Introduction to the Commodore 64: Adventures in Programming
by Nevin B. Scrimshaw and James Vogel (1983)
Library: QA76.8.C64 S37 1983
The book illustrates and explains a wide range of programming concepts and features of the Commodore 64 using clear examples in BASIC. The occasional cartoon-style sketch by N. Scrantz Lersch also keeps the mood lighthearted. The reader is occasionally referred to the Commodore User's Guide for details instead of things being included in the book itself, but overall it is a good introductory text that explains the BASIC acronym (Beginner's All-purpose Symbolic Instruction Code) and even includes an example of a nested subroutine before moving on to topics of number theory, sound and sprites. The appendix contains several charts, memory maps and other useful bits of information; of particular note is the chart showing ratings (graded as excellent, fair or poor) for combinations of character and background screen colors, as well as the chart showing sprite positions relative to the screen borders. (A similar sprite positioning chart and color combination chart can also be found in the Commodore 64 Programmer's Reference Guide.)
||Commodore 64 Computing
by Ian Robertson Sinclair (1983)
ISBN 0131523147 / 0131523066
Library: QA76.8.C64 S55 1983
This book was written to be a less technical (plain English) guide to BASIC programming on the Commodore 64 and is aimed at the absolute beginner. That being said, many of the more advanced topics are also covered; it is not a dumbed-down book, instead, things are just explained in such a way so that anybody can understand it. The book starts by describing how to connect the machine with a TV, cassette recorder and disk system, how to correctly tune the TV channel, use the keyboard and cartridges, load and save data, and similar basic tasks. The topics move at a fast pace (yet easily understandable), such that, despite being a thinner book, a lot of ground is covered. Early on the book starts to cover the programming topics. Code listings are printed as they would appear on screen, although the graphical symbols that represent the so-called non-printable characters in such listings are explained using the more-readable C.T. Standard (as pioneered by the Computing Today magazine). Graphics using character strings and sprites are covered, as well as generating sound. Techniques for debugging your BASIC programs are also explained, using the RUN, STOP, CONT and GOTO commands. Even some of the less-used keywords like FRE are explained, as well as the basics of accessing machine code with SYS and USR. The final appendix compares the differences between the Commodore 64's standard BASIC from MICROSOFT and the BASIC dialect found on the Acorn Atom and Sinclair ZX series machines. Overall this is a good and relatively extensive introductory text.
||The Tool Kit Series, Commodore 64 Edition
by Ted Buchholz and Dave Dusthimer (1984)
Library: QA76.8.C64 B83 1984 / QA76.8.C64 B82 1984
This book teaches the reader how to program the Commodore 64 by using subroutines as the basic building blocks (or “tools”) for creating larger programs. Although the finer grained components are also explained (for example the individual commands, statements and BASIC syntax), the idea is rather to focus on functional subroutines of roughly 5 to 15 lines of code each as a modular approach to learn programming. By the end of the book, the reader should be able to write games using text-based graphical characters and sound.
Interestingly, a program called Maze Maker also appears in this book, which is essentially a “
PRINT CHR$(109.5+RND(1));” loop. It is, for all practical purposes, identical to the program of the more recent book by Nick Montfort and others, which is titled “
10 PRINT CHR$(205.5+RND(1)); : GOTO 10” (see 10print.org or ISBN 0262018462). Montfort's book has an entire chapter dealing with variants of this maze generator program, but unfortunately the version from The Tool Kit Series is not mentioned!
||COMPUTE!'s Commodore Sixty Four & 128 Collection
Library: QA76.8.C64 C665 1985 / Internet Archive
According to a note on the front inside cover, the local library's copy of the book was apparently made possible by a donation from Herman Fredrick Bommelman.
COMPUTE!'s Commodore 64 and 128 Collection contains an extensive and impressive selection of programs and knowledge that appeared in various other COMPUTE! Publications, such as in many issues of COMPUTE! magazine and COMPUTE! Gazette, as well as from COMPUTE!'s Machine Language Routines for the Commodore 64 and COMPUTE!'s Second Book of Commodore 64 Games. The book has information about capabilities and limitations of the Commodore 64, Commodore 128, peripheral ports, Commodore BASIC, CP/M Plus, and about debugging BASIC programs.
The book contains Ultrafont+ that originally appeared in the July 1984 Gazette; however, a newer version of Ultrafont+ can be found in the September 1986 Gazette with bug fixes and enhancements that include compatibility with The Construction Set (by Fred Karg from the December 1985 Gazette). Ultrafont+ is an improved version of an earlier program, simply called Ultrafont that appeared in COMPUTE!'s First Book of Commodore 64 Sound and Graphics (circa 1983).
Additional programs being included are TurboDisk (improves the Commodore 1541 disk speed for most BASIC and machine-language programs, while retaining reliability and compatibility with regular saving and the DOS Wedge), UnNEW (undoing an accidental NEW command), Foolproof INPUT (a replacement for the built-in INPUT command to accept characters like comma, colon and quotation marks), NoZap (an auto-saver), 64 Freeze (to pause programs), Trap 'Em (a simple game similar to Snake games like the Blockade arcade classic), and Sprite Magic (a sprite editor).
MLX (the Machine Language Entry Program, version 2.02) and the Automatic Proofreader (for BASIC program entry), both by Charles Brannon, are found in appendices and can be used to assist with the validation of other code listings when they are entered by keyboard.
||The Commodore Programmer's Challenge: 50 Challenging Problems to Test Your Programming Skills — with Solutions in BASIC, Pascal, and C
by Steven Chen (1987)
Library: QA76.8.C64 C45 1987
As indicated by its subtitle, this book provides many programming problems (as exercises) and example solutions for each exercise; each solution is given in BASIC, Pascal and the C language. The language dialects being used targets the Commodore 64 computer using Commodore's built-in BASIC, Oxford Pascal by Limbic Systems and the Super-C compiler from Abacus Software (written in the book just as “Super C”, without the hyphen). The bulk of the book is filled with code listings for the example solutions.
||Top-Down Assembly Language Programming for Your VIC-20 and Commodore 64
by Ken Skier (1984)
Library: QA76.8.V5 S55 1984 / Internet Archive
||Exploring Artificial Intelligence on Your Commodore 64
by Tim Hartnell (1985, 1984)
Library: Q336.H37 1985b
The book has a feeling of being practical, theoretical and philosophical in about equal amounts. If you have any interest in the subject of artificial intelligence, this book can keep you busy for days or weeks, especially if you intend to explore the numerous references to other literature and academic works. The book includes programs like TICTAC, SYLLOGY, SNICKERS, BLOCKWORLD, DOCTOR, TRANSLATE, HANSHAN, SPURT, X-SPURT, CHIP-CHOICE, SELFLEARN and MULTI-SELF-LEARN. The topics discussed include logic gates, programs that learn and reason, search trees, understanding of natural language, human-computer conversational interactions, machine translation, random poem generation, expert systems and self-learning systems. It is rather fascinating to see what is possible with even just the processing power of a Commodore 64 machine. I also found the clarity of expressing logic in an earlier-generation structured language like BASIC (in contrast with more recent object-oriented languages like C++ or C#), as well as the relative compactness of the code, rather enlightening.
||Music and Sound for the Commodore 64
by Bill L. Behrendt (1983)
ISBN 0136070949 / 0136071023
Library: MT723 .B4 1983 / ML1092.B43 1983
The book explains the fundamentals of sound and music, and how the various data registers of the Commodore's Sound Interface Device (SID) chip can be used to synthesize these audio sensations. Program listings are provided for a music editor, sequencer, and to generate sound effects like explosions, bells, audio Lissajous, trumpet sounds, fake Morse code, musical chords, composing semi-random chord sequences and more. The DEF and FN keywords are used often in code listings to define and use numeric functions. Recipes for register setup of many ready-made sounds can be found in Appendix B, such as for escaping steam, squeaky pulley, low beep, broom sweep, struck metal, beetle horn, busy signal, snare drum, ray gun, ting-thud, space beeps and a busy signal.
In addition to the books above, the following Commodore-related magazines are available.
Please let me know if you find anything that is missing from the list.