I've been working on this small demo, which now implements a complicated collision testing routine based on colour tests applied around a moving frog (of an odd shape), relative to the pond it travels around, which is also of un-uniform shape. I've not successfully made an assembly routine which does the checks and alters the values accordingly along with a second assembly routine to update the coordinates around the frog. Some setting up is done using some BASIC fill routines to make the pond look more like a pond.
(http://www.cpcwiki.eu/forum/demos/frog-pond-collision-test-demo/?action=dlattach;attach=25756;image)