; 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 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 c64.CHROUT('A') A='\f' X=A A='\b' X=A A='\n' X=A A='\r' X=A A='\t' A='0' c64.CHROUT('0') c64.CHROUT('1') c64.CHROUT('2') XY = hello c64util.print_string() goto c64.CHROUT('!') return } ~ global2 { make_screen_black c64.EXTCOL = c64.BGCOL0 = 0 c64.COLOR = 3 Y = true return }