Jump to content



1

[ASM] Official labels and default cartridge header


1 reply to this topic

#1 newcoleco OFFLINE  

newcoleco

    Stargunner

  • 1,053 posts

Posted Thu May 12, 2011 9:25 AM

View PostColecoFan1981, on Mon May 9, 2011 3:39 AM, said:

How do code this ASM to make a longer title, one on two or three lines? For example: "PRESENTS NINTENDO'S DONKEY KONG" (on two lines)?

~Ben

Attached File  cv labels and default cartridge header.zip   6.7K   43 downloads
Note : This file can be used as a template for those who like to code from scratch and would like to use the ColecoVision BIOS calls in their projects.

Description : I've made a zip file with the essential labels for getting started (sort of) with CV asm coding. It's just 3 versions of the same thing : a list of the official labels from the Coleco Industries documentation and a default Coleco cartridge header ready to be modified by you. There is 3 versions of the same file because I've tried 3 different Z80 assemblers and none of them can compile the same source code because they use different syntax and keywords. Anyway, hope you someone find this useful.

Z80 assemblers used : tniasm, pasmo, sjasm

Note: I've tried KAsm, a Z80 assembler written in Java, but I can't find a way to make it generates files that start at $8000 instead of $0000, except if I modify the source code or cut the first 32KB of void manually which is annoying. :(

As usual, let me know if you find this useful by leaving a comment and "rating this topic".

And for those who just want to see a list of labels...

AMERICA @ $0069
    AMERICA value (in decimal) is either 60 (NTSC) or 50 (PAL)
ASCII_TABLE @ $006A
    ASCII_TABLE is the pointer to where the uppercase ASCII pattern starts.
NUMBER_TABLE @ $006C
    NUMBER_TABLE is the pointer to the numbers 0-9 font, not the entire ASCII font.

DECLSN @ $0190
    Decrement low nibble (in UTILITY)
DECMSN @ $019B
    Decrement high nibble (in UTILITY)
MSNTOLSN @ $01A6
    Copy high nibble to low nibble (in UTILITY)
ADD816 @ $01B1
    Add signed 8bit value A to 16bit. HL := HL + A
LEAVE_EFFECT @ $01D5
    Called by a special sound effect function when done
PX_TO_PTRN_POS @ $07E8
    Pixel to pattern plane position
PUT_FRAME @ $080B
    Copy a block of names to VRAM
GET_BKGRND @ $0898
    Copy a block of names from VRAM to RAM
CALC_OFFSET @ $08C0
    Returns DE := offset for the coordinates (E,D) for a 32x24 chars screen.

And so on, there are many more official Coleco BIOS symbols and calls you can use.

Edited by newcoleco, Thu May 12, 2011 9:55 AM.


#2 youki OFFLINE  

youki

    Stargunner

  • 1,077 posts

Posted Thu May 12, 2011 12:31 PM

all what you post in programming section is always very interresting! +1 ;)




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users