Jump to content

Commodore Programming Question

Recommended Posts

I am writing a story and I want to be accurate so I am asking you hardcore Commodore fans a question. Does anyone know what is the make and model of computer used by companies back in the day to produce commercial software for the Commodore 64. My character is a programmer and I want to make sure I credit the right machine.

Link to comment
Share on other sites

A Commodore 64 is a computer, not a console. Commodore 64 games were written on a Commodore 64. Nowadays, people use modern PCs with emulators and special editing software.


Hope this helps. :)

Edited by Link6415
Link to comment
Share on other sites

Yes, at least for smaller and mid sized firms. Bigger companies tended to cross develop already in the early-mid 80's, e.g. on a VAX or some other mini computer. Perhaps also IBM PC or higher end CP/M computers for mid sized solutions, but I'm not so sure about that. So it depends what kind of programmer your character is. If he/she mostly is a bedroom programmer who submits their work to a publisher, the C64 itself with a 1541 disk drive would be quite appropriate. A developer working inhouse at a major publisher - and I'm not entirely sure how many did, as even companies like EA and Activision tended to obtain licenses from smaller developers rather than have programmers filling up the payroll - might have a bigger system.

Link to comment
Share on other sites

There have been development machines that have showed up over the years from Activision (and others) where they took the C64 motherboard out, put it in a big metal case, and had a kind of homebrew RAM expansion wired to it.


I think most companies used the C64 itself... and probably a REU and homebrew REU-like device. In the early days, there was a guy in charge of development tools, and it was up to him to engineer something for all the programmers to use.


You can always ask David Crane directly, or many others from that era. They are accessible.

Edited by R.Cade
Link to comment
Share on other sites

I remember a few commercial offerings in the business product arena which appeared to have been compiled or obfuscated BASIC. Sorry, I cannot recall the names, but there was one book-keeping application and just about every bloody BBS program I ever ran across.


BASIC 2.0 on the Commodore 64 is pretty fast and powerful, especially when combined with ML support routines.

Link to comment
Share on other sites

Some companies also used compiled Forth (perhaps more common on other computers than Commodore's) but yes; machine code, compiled or regular BASIC seems to have been the most common choices.


I suppose cross development may have been more common for companies working on multiple systems at the same time, e.g. releasing several ports of a game. While usually only fragments of graphics data etc could be shared without reworking the format, it might have had an additional benefit beyond storage solutions and possible backup solutions.

Link to comment
Share on other sites

The main advantage has always been that you avoid spannering the source code during assembly; people like John Harris were cross assembling on the Atari 8-bit in the late 1970s using two of the same machine if memory serves.


For the purposes of the OP, it would depend on what the programmer was writing, when the story is set, if they're freelance or working in house...

Link to comment
Share on other sites

Several programmers programmed C-64 and Atari 8-bit games on an Apple II.

Yup, i forget which game but someone found the receive software for a cross dev rig buried in a 1983 release. By 1984 Imagine in the UK were using 68000-based Sage minicomputers too and, when we get to the late-ish 1980s, DOS boxes, Amstrad PCW word processors, Atari STs or Amigas start turning up. Even us amateurs were using Amigas to run Dasm, a second C64 with a transfer cable or whatever we could cobble together.

Link to comment
Share on other sites

As part of his Thimbleweed Park development blog discussions, in the "Friday Questions" section, I once asked Mr. Ron Gilbert about the programming environment used during the hay day of the C=64. He was kind of enough to respond in great detail in the Thimbleweed Park Podcast the following week.

Essentially, he said that development at LucasFilms was done mostly in UNIX machines. I believe David Fox mentions in the same answer a SUN workstation and using Emacs.

Thus, a game would be developed in Assembly Language (or later on, SCUMM scripting), using a host of custom tools; then cross-compiled into 6502 object code. No loading and saving was done in the C=64 on floppy discs at all; the host machine handled all file management, cross-compilation, and serial transfer of the object code to the C=64. The latter was largely used to test and debug.

Thimbleweed Park Podcast - Episode #19 - 08/28/2015: Starts @ 20:33 (Question from "DZ-Jay")


One of the most interesting things mentioned in that podcast is that, instead of using an emulator like we do nowadays, they had a parallel connection to the C=64 itself and the debugger was run from the host machine, which could halt the 6502 processor and allow them to examine any part of the memory, alter anything necessary, and step through code flow -- all from the UNIX workstation!

Mr. Gilbert specifically states that he cannot speak for other contemporaries, since his experience is mostly from Lucasfilms, but I suspect that it was the same or similar on other large organizations.

I do agree with Carlsson and TMR above in that, for your purpose, it depends on the story character's work environment: a lone "home-brewer" or one working on a small mom-and-pop shop would most definitely program on the C=64 himself; while a programmer on a larger organization would most likely have used a mini-computer or some other workstation.


Which only leaves one question, were those programs written in Assembly?

Most definitely. This is attested by Mr. Gilbert, as well as many other of his contemporaries. There were some games created in BASIC, but most commercial (and virtually every classic Commodore 64 game we remember, though certainly not all) was written in Assembly Language.

@Classic Pac, do let us know when your story is out. I'd be interested in reading it. :)




P.S. I applaud your use of "Assembly." Please make sure to maintain that in your story: the programming language is "Assembly," the tool used to compile the source into object code is the "Assembler." ;)

Edited by DZ-Jay
  • Like 2
Link to comment
Share on other sites

  • 4 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...