Hmm. Is this sbcs thing really safe at all? Just because a character set translation gives a particular mapping for 0x00-0xff in that order why is it guaranteed that it will for any other ordering of bytes?
e.g. invent a mapping which does "0xff <end>" -> "0xff" but "0xff 0xf1" -> "0x42". I'd be surprised if a mapping between two real charsets does *not* exist which does something like this, given the range of extremely weird and wonderful charsets out there.