Screen characters are formed by a collection of 8 bytes, 256 bytes apart from each other. One simple way is to have a "character map" of 768 bytes (32x24) in memory to store the characters at each screen location, then the colour attributes would not matter.
Viewing post in How to Write Spectrum Games comments
I was gonna make the collision system in my game work by detecting the tile graphics themselves and their positions. (for example, a dude moves if there is 8 pixels of space next to him, and can't move any further if there is a brick tile right next to him without any space inbetween)
I would need to see some code example to know how to make it.