Commodore 128 Informations techniques

Naviguer en ligne ou télécharger Informations techniques pour PC/postes de travail Commodore 128. Commodore 128 System information Manuel d'utilisatio

  • Télécharger
  • Ajouter à mon manuel
  • Imprimer
  • Page
    / 11
  • Table des matières
  • MARQUE LIVRES
  • Noté. / 5. Basé sur avis des utilisateurs
Vue de la page 0
Commodore 128 assembly programming
Innehåll[göm]
1 Introduction
2 Documentation
3 Assemblers
4 Memory management
5 VIC features and bugs
6 VIC graphics and character programming
7 VIC sprite programming
8 Sound and SID chip version
9 Kernal
10 RS-232
11 Return from interrupt
12 Keyboard
13 2 MHz mode
14 Z80 CPU
15 80-column mode
16 BASIC incompatibilities
17 Incompatibilities between real C64 and C128 in C64 mode
Introduction
Have you programmed in assembly on the Commodore 64? Are you interested in learning how to program in
assembly on the Commodore 128? If the answer to these questions is yes, this is the page for you. If you
haven't programmed in assembly on the Commodore 64, I can recommend the book Machine Language for the
Commodore 64 and Other Commodore Computers by Jim Butterfield , which contains prerequisites for
understanding this page.
This page gives an overview of the differences between C64 and C128 when programming in assembly. I have
focused particularly on issues that are poorly described or not described at all in books about the Commodore
128 that I have read. Since this page is only intended as an overview, it does not contain enough information for
being able to program the Commodore 128 in assembly. I recommend that you read this page together with the
book "Commodore 128 Programmer's Reference Guide" to get a complete description of how to program the
Commodore 128 in assembly. I have read the German translation of the book (called "Das C128 Buch"). The
book "Das C128 Buch" contains a lot of obvious errors (many of them may be problems in the translation from
English to German) but it is still very good and comprehensive (869 pages). Since most things are the same on
the Commodore 64 and the Commodore 128, the book is valuable even if you just want to program on the
Commodore 64. For example, there is an interesting example on how to program a split-screen on the
Commodore 64 using raster interrupts. That example also contains a scrolling text.
Another book that I recommend is "Mapping the Commodore 128". It is a book that describes what every routine
in the ROM does and what every memory location in the RAM is used for, which makes it extremely good as a
reference book (but it is not good for reading from beginning to end). The book consists of 689 pages.
As you read this page, you will probably notice that one major difference between the Commodore 64 and the
Commodore 128 is that on the Commodore 128, the BASIC interpreter and the Kernal write to various registers
when interrupts occur so if you write directly to these registers, the values will be overwritten the next time an
interrupt occurs. Because of this, you either have to write to shadow registers instead of to real registers or you
have to disable the BASIC interpreter and the Kernal from writing to these registers (this disabling will cause
limitations to the BASIC functionality).
Unless stated otherwise, all information on this page applies only to the Commodore 128 in Commodore 128
mode (the default mode of the C128).
If you want system information about your Commodore 128, you can use the program "SYSTEM INFO R5A" that I
have implemented. It can be found
in this archive file . It gives you information about for example ROM
versions, VDC chip version, the amount of VDC RAM and the version of the SID chip (6581 or 8580).
If you have any comments on this page, you are welcome to write to me. Register at
the forum and send me
(Commodorianen) a private message.
Vue de la page 0
1 2 3 4 5 6 ... 10 11

Résumé du contenu

Page 1 - Introduction

Commodore 128 assembly programmingInnehåll[göm]1 Introduction2 Documentation3 Assemblers4 Memory management5 VIC features and bugs6 VIC graphics and c

Page 2 - Memory management

It is possible to use the VDC chip in C64 mode on a C128 but this is not a trivial task since the Kernal in the C64does not support using the VDC chip

Page 3 - VIC features and bugs

the C128 in C64 mode makes it appear as if the computer has crashed since the screen will go blank or will befilled with garbage. The other VIC addres

Page 4

Documentation"Commodore 128 Programmer's Reference Guide" This is an invaluable book if you want to learn how toprogram in assembly on

Page 5 - Sound and SID chip version

For the Commodore 64, the register at address $0001 is used to decide which ROMs that should be switched inand which ROMs that should be switched out.

Page 6 - Return from interrupt

revision of the 8564-VIC chip. The bug also to a certain degree exists with the 6567-VIC chip in the C64 butthere it is much less visible. Another bug

Page 7 - 2 MHz mode

For both the Commodore 64 and the Commodore 128, the colour RAM occupies the area from address $D800 to$DBE7. However, the Commodore 128 has as mentio

Page 8

The same 39 Kernal calls as on the Commodore 64 are also available on the Commodore 128. A few of thesecalls differ from the calls made on the Commodo

Page 9 - 80-column mode

On the Commodore 64, address $00CB is used to read which key that has been pressed for most keys on thekeyboard. On the Commodore 128, it is instead a

Page 10 - BASIC incompatibilities

Unfortunately, the 8564-VIC chip cannot handle a clock frequency of 2 MHz, which results in garbage on thescreen. It may therefore be a good idea to b

Page 11

but it is connected to ground so this means that you can't get interrupts to the Z80 when pressing RESTORE orfrom CIA #2. Furthermore, the I/O po

Commentaires sur ces manuels

Pas de commentaire