programs, you must use either a program to do this, or write for yourself a BASIC program that "allows" you to write machine language.
The most common methods used to write machine language programs are assembler programs. These packages allow you to write machine language instructions in a standardized mnemonic format, which makes the machine language program a lot more readable than a stream of numbers! Let's review: A program that allows you to write machine language programs in mnemonic format is called an assembler. Incidentally, a program that displays a machine language program in mnemonic format is called a disassembler. Available for your Commodore 64 is a machine language monitor cartridge (with assembler/disassembler, etc.) made by Commodore:
The 64MON cartridge available from your local dealer, is a program that allows you to escape from the world of CBM BASIC, into the land of machine language. It can display the contents of the internal registers in the 6510 microprocessor, and it allows you to display portions of memory, and change them on the screen, using the screen editor. It also has a built-in assembler and disassembler, as well as many other features that allow you to write and edit machine language programs easily. You don't HAVE to use an assembler to write machine language, but the task is considerably easier with it. If you wish to write machine language programs, it is strongly suggested that you purchase an assembler of some sort. Without an assembler you will probably have to "POKE" the machine language program into memory, which is totally unadvisable. This manual will give its examples in the format that 64MON uses, from now on. Nearly all assembler formats are the same, therefore the machine language examples shown will almost certainly be compatible with any assembler. But before explaining any of the other features of 64MON, the hexadecimal numbering system must be explained.
Hexadecimal notation is used by most machine language programmers when they talk about a number or address in a machine language program.
Some assemblers let you refer to addresses and numbers in decimal (base 10), binary (base 2), or even octal (base 8) as well as hexadecimal
|This page has been created by Sami Rautiainen.|
|Read the small print.||Last updated July 10, 2002.|