If you are having problems animating the background, then here is an easy way to do it. - you need some loop based counter (goes from 0-3, loops at 4) - leave the last two bits on the each tile blank. - ex. 1st = %00000000 2nd = %00000100 3rd = %00001000 4th = %00001100 ; and so on - to make this work, in the tilemap routine, where you draw the tiles, you get the tile ID from the map and load it into register B > ld b,(hl) ld a,(map_animation_offset) ; from 0-3 add a,b ; a = animated tile > - remember that each tile requires 4 sprites (4 frames of animation) so space them out