One thing you can do that is should work across all simulators is to create a signal that holds an ascii string, and then change the radix of that signal to ascii in the simulation window:
reg [8*8-1:0] mytextsignal;
always@(state) begin
case(state)
S_IDLE : mytextsignal = " S_IDLE";
S_START: mytextsignal = " S_START";
S_STOP: mytextsignal = " S_STOP";
default: mytextsignal = " UNKNOWN";
endcase
end
It should show up as readable text in the waveform viewer.