noise_char working seemingly properly now, needs some more testing before
complete implementation