Having the output layer be an 8-bit character representation though is very clever, rather than a softmax layer with each node being the relative probability of a given character. That probably lowers the number of free parameters you have to train, which probably speeds up training and can help prevent overfitting. I'm interested in knowing what the true success rate is with this approach as it seems clever.
Btw, what's your loss function on the output layer?