The days of poking, peeking and hoping my tape/disk drive didn't just die on me are long since departed - and rightly so. Even the most basic PC operating system's tools often wipe the floor with anything that came with the old 8-bit computers.
I wanted a cross-assembler solution, just as I'd used for the ZX Spectrum some time before. What would I need for coding for a C64 on a modern PC?
Basic Requirements
There are some basic tools we will need to edit, assemble and run our C64 programs. I'd recommend:-
- Notepad++ - Text Editor, has syntax highlighting for assembly files, free!
- dasm - cross-assembler that supports 6502/6510 CPU instruction generation
- VICE - C64 emulator
Naturally, you might have a preferred editor for source code, and by all means use it! However, for our purposes, Notepad++ will do just fine.
A 6502 Assembly Reference
Don't panic! You don't need to understand all of this immediately - but it will come in extremely handy later: a complete 6502 instruction reference.
Just keep it handy (i.e. bookmark it!) for when we need to discuss the details.
A Really Good C64 / VIC II Guide
I used this to learn the basics - and it rocks:
Also this:
So, in that case (you may be wondering) why blog about this at all?
Well...
Those are great links for anyone who ever dabbled in 8-bit machines in the past. But it occurred to me whilst reading much of the stuff that:
A lot of assumptions are made.
It makes sense, since those articles are aimed at enthusiasts. But I know at least one person who never tried this stuff before, but has an interest in playing about with it - perhaps a more comprehensive guide is required?
There is no cohesive "project" being built.
A great tactic when constructing a tutorial is to produce - over the course of all the units in said tutorial - a complete project, application or game, that pulls together all the ideas presented. Neither of these (still great!) introductions really do this.
Sometimes, clarity is lacking.
There were several moments when I read sections in those articles that I got lost. That is, I needed to constantly refer back to previous chapters, and read the passages again. This is not necessarily a bad thing in itself, but I've always found that learning coding techniques comes more naturally when you can simply refer to your own notes - or even better, code - to recap on what you have learned thus far.
So! I realised... perhaps I should record my own experience somewhere... Maybe... perhaps... in a blog?
Huzzah!
No comments:
Post a Comment