A$$EMBLE IT!
Chapter
1: INTRODUCTION, AND ABOUT ASSEMBLERS
Introduction
The
main purpose for this web site is to produce legal future reference for
those people who would like to be involved with assembly programming
side
of the C64. This documentation differs through various assembly
coding
techniques, commands, etc. By reading through this documentation, you
should
soon end up creating cool, exciting and possibly crazy programs in no
time.
Later on in this documentation, you will learn how to create your own
games,
that involve moving sprites, animating background objects, playing SID
music, adding scores, etc. Hopefully you should be able to understand
assembly
programming in approximately one or two months. Oh and you'll be having
a go at making a C64 game in no time.
What is an Assembler?
An
assembler is a programming language that allows you to program in a
different
way, compared to the BASIC programming language. BASIC is a very easy
programming
language, but assembly language is more professional and it can do a
lot
more enhanced techniques. Many demo programmers, such as Civitas (The
demo
group which I'm in) use an assembler, which creates cool demos, effects
etc.
What type of
Assemblers are there?
Various C64/Cross assemblers
may differ, as different commands are used, but they all do build up
the same
routines when assembled to your Commodore 64. You write a program
listing in an assembler, and then you
need
to assemble it before you create a runnable file and test your file.
There
are different types of assemblers, which have their own features. The
assemblers
are as follows:
What is a
Cross Assembler?
A cross assembler is a PC version of a normal 6502
assembler. It is a small executable compiler program, which will
assemble and compile text files (which use the assembly instruction
code) into a chosen assembled program. Basically a cross assembler can
convert all text assembly commands to a 6502 program for any machine
that supports this level of programming. Unlike normal Commodore 64
assemblers, a cross assembler has better limitations than a normal
Commodore 64 assembler, like Turbo Assembler. Cross assemblers can also
import source binary files, i.e. additional C64 graphics, music, data,
etc. Usually by using a command like .INCBIN or .BINARY or !BIN. You can
also link more than one source file to your assembled production
Assemblers for the Commodore 64
- 6510+
Assembler by Dave Weaver (A little bit like BASIC, except that you can
assemble your own programs as well)
- Code
Suck Monitor by Polunus/Science 541 (M/C Montor based assembler)
- Action
Replay MK 6 Cartridge by Datel Electronics (M/C Monitor)
- Professional
Assembler by ???? (Kind of similar to turbo assembler)
- Ass
Blaster
V3.0 by Zeldin/Cascade (An advanced assembler with a user-friendly
interface)
- Turbo
Assembler Vx by Omicron
- ASM
Monitor by Raistlin/Excess (Oldie, and like 6510+)
- Smartmon
(M/C Monitor)
- JC-ASS
(Assembler by JC/Xakk)
Cross
assemblers/compilers for the PC to the Commodore 64 (Links to original sources)
Some
recommended PC-cross platform software to use for developing all kinds
of things
This part gives you
recommended cross platform software for use on your PC for developing
all kinds of things, from graphics to music, and also for linking and
compression, etc.
- CharPad V2.0 -
Charset and game
background building software by Subchrist Software
- Cuneiform - Charset
editor by Scrapdog
- SpritePad V1.6 -
Sprite Editor by Subchrist Software
- 7Up Editor - Sprite
Editor by Mirage
- GangED
- Converts graphics from PC to
Commodore 64 by The Gang
- CONGO - Converts graphics
from PC to
Commodore 64 by ????
- Timanthes -
Bitmap Graphics (Painting
Program) by Focus
- 0xPaint - Bitmap Graphics
(Painting
program) by Fairlight
- Project One -
Bitmap Graphics by Resource
- Goat Tracker V2.xx - C64
music composing utility on your PC by Lasse Óorni
- CBMCombine - Linking utility
by Albert Pasi Ojala, updated by iAN CooG/Hokuto Force
- PuCrunch -
High speed cruncher. Fast
decrunching by Albert Pasi Ojala
- Exomizer V2.xx -
Cruncher, but has
more capable abilities compared to PuCrunch by Magnus Lind
- ALZ64 -
Cruncher, compresses better
than Exomizer but extra programming knowledge is required. Very slow
decompression and messy as well. By Kabuto
- D64 Editor -
Transfer your .prg file
into a .D64 by Almighty64
- Star
Commander Software - Must
be outside windows to use this program for converting .D64/.PRG files
to your commodore 64 disk drive. (XE1541 required). By Joe Forster/STA