' problem with palettes 1 ' Soleil dim camera(1,1) as integer ' 0 = Position, 1 = Velocity global grid(63,63) as integer ' Main setgfxplane SCROLL_B palettes soleil_pallette,0,0,16 loadtiles soleil_tiles,16,0 for i=0 to 127 grid(rnd(63),rnd(63)) = rnd(3)+1 next render 0,0,20,14 render 0,0,20,14 ' ****************************************************************************************************** setgfxplane SCROLL_A pallettes fondf_pal,1,0,16 ' problem with palettes 1 ; 16 couleurs loadtiles fondf,32,16 ' image d'une taille de 64*32 (64/8=8 et 32/8=4) donc 8*4 = 32 tiles ; Drawtilesinc 16,0,0,8,4 ' 64/8 = 8 ; 32/8 = 4 ; 8*4 = 32 Tiles (0 à 31) ' ****************************************************************************************************** chti=addsprite(4,3) ' 4 sprites de haut sur 3 sprites de large (1 sprite = 8*8 pixel) 'palettes soleil_pallette,1,0,16 pallettes chti_pal,2,0,16 ' palette 1 ; 16 couleurs loadtiles chti,12,552 ' image d'une taille de 24*32 donc 3*4 = 12 tiles ; propsprite chti,552,2 ' 536 = tile vram offset ; palette 2 xplayer=160:movesprite chti,xplayer,250 ' ****************************************************************************************************** while 1 Drawtilesinc 16,0,0,8,4 ' 64/8 = 8 ; 32/8 = 4 ; 8*4 = 32 Tiles (0 à 31) joypad = joypad(0) camera(0,1) = (joypad.3-joypad.2)*12 camera(1,1) = (joypad.1-joypad.0)*12 camera(0,0)+= camera(0,1) camera(1,0)+= camera(1,1) cx = divide(camera(0,0),16) cy = divide(camera(1,0),16) render cx ,cy,cx ,cy+13 render cx+20,cy,cx+20,cy+13 render cx,cy ,cx+20,cy render cx,cy+14,cx+20,cy+14 scroll left,camera(0,1) scroll up,camera(1,1) sleep 1 wend ' Divide declare function divide(x as integer, d as integer) if x < 32768 then return x/d else return -1-((0-x)/d) endif end function ' Render declare sub render(x1 as integer, y1 as integer, x2 as integer, y2 as integer) for x=x1 to x2 for y=y1 to y2 if x > 63 or y > 63 then drawtiles tile_map,4,x*2,y*2,2,2 else drawtiles tile_map,grid(x,y)*4,x*2,y*2,2,2 endif next next exit sub end sub ' **** DATA **** fondf_pal: DATAINT $000E,$02E0,$0EE0,$0E00,$0000,$0EEE,$0AAA,$0666 DATAINT $00EE,$0088,$0CCA,$0080,$08CE,$028E,$002E,$0866 ' Picture size 64*32 fondf: DATALONG $00000000 ' Tile #0 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 ' Tile #1 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $11111111 ' Tile #2 DATALONG $11111111 DATALONG $11111111 DATALONG $11111111 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11111111 ' Tile #3 DATALONG $11111111 DATALONG $11111111 DATALONG $11111111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $22222222 ' Tile #4 DATALONG $22222222 DATALONG $22222222 DATALONG $22222222 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22222222 ' Tile #5 DATALONG $22222222 DATALONG $22222222 DATALONG $22222222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $33333333 ' Tile #6 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33333333 ' Tile #7 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00000000 ' Tile #8 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 ' Tile #9 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $04444555 DATALONG $04444555 DATALONG $11110000 ' Tile #10 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $56666777 DATALONG $56666777 DATALONG $00001111 ' Tile #11 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $78888999 DATALONG $78888999 DATALONG $22220000 ' Tile #12 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $9AAAABBB DATALONG $9AAAABBB DATALONG $00002222 ' Tile #13 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $BCCCCDDD DATALONG $BCCCCDDD DATALONG $33330000 ' Tile #14 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $DEEEE000 DATALONG $DEEEE000 DATALONG $00003333 ' Tile #15 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00000000 ' Tile #16 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $04444555 ' Tile #17 DATALONG $04444555 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $56666777 ' Tile #18 DATALONG $56666777 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $78888999 ' Tile #19 DATALONG $78888999 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $9AAAABBB ' Tile #20 DATALONG $9AAAABBB DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $BCCCCDDD ' Tile #21 DATALONG $BCCCCDDD DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $DEEEE000 ' Tile #22 DATALONG $DEEEE000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $00003333 ' Tile #23 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $00000000 ' Tile #24 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 ' Tile #25 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $00000000 DATALONG $11110000 ' Tile #26 DATALONG $11110000 DATALONG $11110000 DATALONG $11110000 DATALONG $11111111 DATALONG $11111111 DATALONG $11111111 DATALONG $11111111 DATALONG $00001111 ' Tile #27 DATALONG $00001111 DATALONG $00001111 DATALONG $00001111 DATALONG $11111111 DATALONG $11111111 DATALONG $11111111 DATALONG $11111111 DATALONG $22220000 ' Tile #28 DATALONG $22220000 DATALONG $22220000 DATALONG $22220000 DATALONG $22222222 DATALONG $22222222 DATALONG $22222222 DATALONG $22222222 DATALONG $00002222 ' Tile #29 DATALONG $00002222 DATALONG $00002222 DATALONG $00002222 DATALONG $22222222 DATALONG $22222222 DATALONG $22222222 DATALONG $22222222 DATALONG $33330000 ' Tile #30 DATALONG $33330000 DATALONG $33330000 DATALONG $33330000 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $00003333 ' Tile #31 DATALONG $00003333 DATALONG $00003333 DATALONG $00003333 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 chti_pal: DATAINT $0E0E,$0000,$0A00,$0E44,$0EAA,$004A,$04AE,$0EEE DATAINT $006E,$0000,$0000,$0000,$0000,$0000,$0000,$0000 chti: 'tiledata_sprite: DATALONG $00000000 ' Tile #0 DATALONG $00000000 DATALONG $00011111 DATALONG $00123233 DATALONG $01232333 DATALONG $01223233 DATALONG $01232333 DATALONG $01223233 DATALONG $01232333 ' Tile #1 DATALONG $01223233 DATALONG $01231111 DATALONG $01111111 DATALONG $01555155 DATALONG $01555166 DATALONG $01555166 DATALONG $01555166 DATALONG $01555166 ' Tile #2 DATALONG $00155166 DATALONG $00011111 DATALONG $00000122 DATALONG $00000122 DATALONG $00000122 DATALONG $00000122 DATALONG $00000122 DATALONG $00000122 ' Tile #3 DATALONG $00000122 DATALONG $00000122 DATALONG $00000111 DATALONG $00000155 DATALONG $00000155 DATALONG $00000111 DATALONG $00000000 DATALONG $00000000 ' Tile #4 DATALONG $00000000 DATALONG $11111111 DATALONG $33344444 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $33333333 DATALONG $33331111 ' Tile #5 DATALONG $11112333 DATALONG $22222223 DATALONG $11111111 DATALONG $55555555 DATALONG $66666666 DATALONG $77116677 DATALONG $77116677 DATALONG $66666666 ' Tile #6 DATALONG $66111166 DATALONG $11111111 DATALONG $22222222 DATALONG $32333333 DATALONG $23333333 DATALONG $32333333 DATALONG $23333333 DATALONG $32333333 ' Tile #7 DATALONG $23333333 DATALONG $32333333 DATALONG $11111111 DATALONG $85888881 DATALONG $58588881 DATALONG $11111111 DATALONG $00000000 DATALONG $00000000 ' Tile #8 DATALONG $00000000 DATALONG $10000000 DATALONG $41000000 DATALONG $34100000 DATALONG $33410000 DATALONG $33410000 DATALONG $31110000 DATALONG $13441000 ' Tile #9 DATALONG $34333100 DATALONG $33333310 DATALONG $11111110 DATALONG $55551000 DATALONG $66661000 DATALONG $11661000 DATALONG $11661000 DATALONG $66661000 ' Tile #10 DATALONG $66661000 DATALONG $11111000 DATALONG $23100000 DATALONG $34100000 DATALONG $34100000 DATALONG $34100000 DATALONG $34100000 DATALONG $34100000 ' Tile #11 DATALONG $34100000 DATALONG $34100000 DATALONG $11100000 DATALONG $58100000 DATALONG $58100000 DATALONG $11100000 DATALONG $00000000 ' Map tile_map: data 0, 1 data 2, 3 ' Data soleil_pallette: dataint $04CA,$06AA,$04CA,$08EE,$0466,$0664,$04A6,$0EEE dataint $026A,$068A,$0468,$0000,$0000,$0000,$0000,$0000 soleil_tiles: datalong $21232232 datalong $32323222 datalong $23212232 datalong $22222323 datalong $32323232 datalong $22322122 datalong $23233232 datalong $32322323 datalong $23223212 datalong $22232323 datalong $23221232 datalong $32322222 datalong $23232323 datalong $22122322 datalong $23233232 datalong $32322323 datalong $32322323 datalong $23233232 datalong $22122322 datalong $23232323 datalong $32322222 datalong $23221232 datalong $22232323 datalong $23223212 datalong $32322323 datalong $23233232 datalong $22322122 datalong $32323232 datalong $22222323 datalong $23212232 datalong $32323222 datalong $21232232 datalong $22222245 datalong $55522225 datalong $25655252 datalong $22626546 datalong $22562645 datalong $55555644 datalong $52335542 datalong $25623452 datalong $25222555 datalong $24225364 datalong $46553252 datalong $55432642 datalong $54426542 datalong $54325445 datalong $44265455 datalong $34254542 datalong $22562452 datalong $25646456 datalong $52364456 datalong $65236546 datalong $24523645 datalong $26452254 datalong $22264554 datalong $22226645 datalong $24654455 datalong $23644632 datalong $22446326 datalong $62443265 datalong $66462652 datalong $56455562 datalong $45554622 datalong $55462222 datalong $25555555 datalong $51333333 datalong $53777777 datalong $51333333 datalong $51344343 datalong $51333333 datalong $51343443 datalong $51333333 datalong $55555552 datalong $33333315 datalong $77777735 datalong $33333315 datalong $34344315 datalong $33333315 datalong $34434315 datalong $33333315 datalong $58888888 datalong $65555555 datalong $66666644 datalong $26666649 datalong $22262249 datalong $2622224A datalong $22226264 datalong $22222226 datalong $88888885 datalong $55555556 datalong $44666666 datalong $94666662 datalong $94226222 datalong $A4222262 datalong $46262222 datalong $62222222 datalong $22222555 datalong $22625333 datalong $62253AAA datalong $2253A44A datalong $25434444 datalong $25434444 datalong $5A493444 datalong $4A949333 datalong $55522222 datalong $33352622 datalong $AAA35226 datalong $A44A3522 datalong $44443452 datalong $44443452 datalong $444394A5 datalong $333949A4 datalong $4A99A999 datalong $4A919AAA datalong $54911999 datalong $54A91111 datalong $654A9999 datalong $2654AAAA datalong $22654444 datalong $22265555 datalong $999A99A4 datalong $AAA919A4 datalong $99911945 datalong $11119A45 datalong $9999A456 datalong $AAAA4562 datalong $44445622 datalong $55556222