Has anyone got any example code for a tile based isometric engine? I've looked around, but could only find C++ examples (and I only know VB).

I've got a basic engine running, it BitBlt's the map and everything is in place perfectly, but I'm not really sure how to scroll them - I know I do it like a normal tile game, by BitBlt-ing the tiles as it moves, but I don't know how to program all the code for the offset and the scrolling code.

I want my maps to be diamond shaped on screen, so if you get to the edge of a map it has to scroll diagonally... I know this will probably be harder than to make a square shaped map (with jagged map edges), but I'd prefer it this way.

Any help here would be appreciated!

Thanks,

-Git