Error in debug mode 1 display
C0 (ASCII 0x00-0x1F) control characters are displayed in debug mode as follows:
0x00: ^@ | 0x01: ^A | 0x02: ^B | 0x03: ^C | 0x04: ^D | 0x05: ^E | 0x06: ^F | 0x07: ^G |
0x08: ^H | 0x09: ^I | 0x0A: ^J | 0x0B: ^K | 0x0C: ^L | 0x0D: ^M | 0x0E: ^N | 0x0F: ^O |
0x10: ^P | 0x11: ^Q | 0x12: ^R | 0x13: ^S | 0x14: ^T | 0x15: ^U | 0x16: ^V | 0x17: ^W |
0x18: ^X | 0x19: ^Y | 0x1A: ^Z | 0x1B: ^[ | 0x1C: ^\ | 0x1D: ^] | 0x1E: ^^ | 0x1F: ^_ |
cf. Displaying all received characters
It's expected behavior that ESC(0x1B) is displayed as '^['.
I am using TeraTerm 4.106 to display the output of a CP/M 2.2 SBC.
In a program I send esc,"c" (hard reset) to TT. In debug mode 1 I get 'esc[c' shown on the debug screen (the left square bracket seems to have been added) but debug mode 2 I get 1B 63 hex which is correct. Similarly if my program writes esc,"[30m" to TT, in mode 1 I see 'esc[[30m' (double left bracket) on the debug screen but in mode 2 I get 1B 5B 33 30 6D which is correct.
I have checked with a stand-alone program that my code is not sending extra [ characters so confirming that TT mode 2 display is correct.