; source IL file ; these are comments output prg,sys ; create a c-64 program with basic SYS call to launch it ; clobberzp restore ; clobber over the zp memory normally used by basic/kernel rom, frees up more zp import "c64lib" ; searched in several locations and with .ill file extension added ~ main { memory screen2 = $0401 memory screen3 = $0402 memory .word screenw = $0500 ; ascii to petscii, 0 terminated var .text hello = "hello everyone out there." ; ascii to petscii, with length as first byte var .ptext hellopascalstr = "Hello!\0x00\x01\x02d ag\0x01." ; ascii to screen codes, 0 terminated var .stext hello_screen = "Hello!\n guys123." ; ascii to screen codes, length as first byte var .pstext hellopascal_screen = "Hello! \n." var .text hello2 = "@@\f\b\n\r\t@@" start call global2.make_screen_black A='?' [$d020] = '?' [$d021] = '?' [$d022] = '?' [$d023] = 'q' c64.BGCOL0 = 'a' screen2 = 'a' screen3 = 'a' screenw = '2' A='?' X='?' Y='?' A='\002' X=A A='\xf2' X=A A='A' call c64.CHROUT ;(A) call c64.CHROUT ;(char=66) A='\f' X=A A='\b' X=A A='\n' X=A A='\r' X=A A='\t' X=A call c64.CHROUT ;(foo=A) A='0' call c64.CHROUT ;('0') A='1' call c64.CHROUT ;(49) A='2' call c64.CHROUT XY = hello call c64util.print_string A='!' go c64.CHROUT return } ~ global2 { make_screen_black c64.EXTCOL = c64.BGCOL0 = 0 c64.COLOR = 3 Y = true return }