I'm assuming that you can blit out of a portion of the bitmap?
When you load your character bitmap, set up a struct something like this
Code:
#define NUM_DIRECTIONS 4
#define NUM_POSES 4
struct character_anim {
int x, y, w, h;
} anim[NUM_DIRECTIONS][NUM_POSES];
You'll be repeating the centre pose, by drawing 1, 2, 3, 2
When you're actually moving, add this
Code:
if((key [KEY_LEFT]) && (key [KEY_R])) {
pose = ( pose + 1 ) % NUM_POSES;
dirn = 0;
x-=2;
}
When you've moved, simply blit out from anim[dirn][pose]