mirror of
https://github.com/irmen/prog8.git
synced 2024-11-19 11:32:17 +00:00
62 lines
1.1 KiB
Plaintext
62 lines
1.1 KiB
Plaintext
%output basic ; create a c-64 program with basic SYS to() launch it
|
|
|
|
%import "c64lib.ill"
|
|
|
|
~ main
|
|
{
|
|
var .str greeting = "hello world!\r12345678 is a big number.\r"
|
|
var .strp p_greeting = "hello world!\r12345678 is a big number.\r"
|
|
const .word BORDER = $d020
|
|
|
|
start:
|
|
c64scr.print_pimmediate() ; this prints the pstring immediately following it
|
|
%asm {
|
|
.strp "hello-pimmediate!{cr}"
|
|
}
|
|
|
|
c64scr.print_byte_decimal0 (19)
|
|
c64.CHROUT (13)
|
|
c64scr.print_byte_decimal (19)
|
|
c64.CHROUT (13)
|
|
|
|
|
|
c64scr.print_word_decimal0 ($0102)
|
|
c64.CHROUT (13)
|
|
c64scr.print_word_decimal ($0102)
|
|
c64.CHROUT (13)
|
|
return
|
|
|
|
start2:
|
|
global2.make_screen_black()
|
|
c64.CLEARSCR()
|
|
c64scr.print_string(greeting)
|
|
c64scr.print_pstring(p_greeting)
|
|
c64scr.print_byte_decimal(0)
|
|
c64scr.print_byte_hex(0, 0)
|
|
c64.CHROUT(13)
|
|
c64scr.print_byte_decimal(13)
|
|
c64scr.print_byte_hex(0, 13)
|
|
c64.CHROUT(13)
|
|
c64scr.print_byte_decimal(255)
|
|
c64scr.print_byte_hex(0, 254)
|
|
c64scr.print_byte_hex(0, 129)
|
|
c64.CHROUT(13)
|
|
|
|
c64.CHROUT(13)
|
|
c64scr.print_word_decimal($0100)
|
|
c64.CHROUT(13)
|
|
return
|
|
|
|
|
|
}
|
|
|
|
~ global2 {
|
|
|
|
make_screen_black:
|
|
c64.EXTCOL = 0
|
|
c64.BGCOL0 = 0
|
|
c64.COLOR = 3
|
|
return
|
|
|
|
}
|