logoalt Hacker News

cbm-vic-20today at 10:58 AM2 repliesview on HN

The C64 had a good game library. While the C64 does have a cartridge and tape deck port, most games were sold on floppy disks. The C64 does not auto-boot disks, so when you turn on the power switch, you are immediately met with a BASIC "Ready." prompt. You have to type in a magic incantation to start the program on the disk

    LOAD "*",8,1
The curious will wonder what else can be done in BASIC? Or what if you don't have any games you want to play? It usually starts from there. This generation of Commodore computers has an excellent beginner's programming guide [0] in the box. Want to change the colors on the screen, or make a sound? The manual shows you what values to POKE into memory to make that happen.

The Programmers' Reference Guide [1] has a good introduction to assembly and machine language, if you want to go deeper.

[0] https://archive.org/details/Commodore_64_Users_Guide_1982_Co...

[1] https://archive.org/details/Commodore_64_Programmers_Referen...

[2] https://archive.org/details/commodore-1541-disk-drive-users-...


Replies

bitwizetoday at 1:06 PM

There's another thing about the Commodore computers that is really special. The binaries for disk and tape games consisted of the machine code for the game, along with a stub BASIC program to jump into it (typically one line with a SYS command).

Meaning that the entire computer, and all its capabilities and speed, was available from within BASIC.

This was true of many home computers of the era, and even of the IBM PC if you were willing to struggle a bit, but it was emphatically not true of all of them: the TI-99/4A, for instance, had a nerfed BASIC that was not only very slow, it also prevented access to any of the system's facilities outside of the commands BASIC provided. This probably had a lot to do with its unusual memory architecture, in which only 128 words of RAM were provided to the CPU and all BASIC memory was accessed indirectly through the video chip.

But yeah, aside from cartridge-based games, every program on the C64 was a BASIC program, just one that was mostly a machine-code memory image.

show 1 reply
jdw64today at 11:05 AM

I'm looking through the user guide (0 link), and it's pretty interesting. It's fascinating how the structure is laid out in a way that lets you grasp how everything works all at once.