kickc/src/test/ref/examples/crunching/test-exomizer.sym

30 lines
1.2 KiB
Plaintext

const byte* CRUNCHED_SPRITE[] = kickasm( uses SPRITE) {{ .modify MemExomizer(false, true) {
.pc = SPRITE
.var pic = LoadPicture("sprite.png", List().add($000000, $ffffff))
.for (var y=0; y<21; y++)
.for (var x=0;x<3; x++)
.byte pic.getSinglecolorByte(x,y)
}
CRUNCHED_SPRITE_END:
}}
const nomodify byte* DEFAULT_SCREEN = (byte*) 1024
const byte* EXOMIZER[] = kickasm {{ .const EXO_LITERAL_SEQUENCES_USED = true
.const EXO_ZP_BASE = $02
.const EXO_DECRUNCH_TABLE = $0200
#import "exomizer_decrunch.asm"
}}
const nomodify byte GREEN = 5
const nomodify word OFFSET_SPRITE_PTRS = $3f8
const byte OFFSET_STRUCT_MOS6569_VICII_SPRITES_ENABLE = $15
const nomodify byte* SPRITE = (byte*) 8192
const nomodify byte* SPRITES_COLOR = (byte*) 53287
const nomodify byte* SPRITES_PTR = DEFAULT_SCREEN+OFFSET_SPRITE_PTRS
const nomodify byte* SPRITES_XPOS = (byte*) 53248
const nomodify byte* SPRITES_YPOS = (byte*) 53249
const nomodify struct MOS6569_VICII* VICII = (struct MOS6569_VICII*) 53248
void main()
byte main::toSpritePtr1_return
const byte main::toSpritePtr1_return#0 toSpritePtr1_return = (byte)(word)SPRITE/$40
byte* main::toSpritePtr1_sprite