diff options
-rw-r--r-- | listbas.c | 25 |
1 files changed, 23 insertions, 2 deletions
@@ -404,6 +404,19 @@ void print_ata_chr(unsigned char c) { } } +void print_mixed_case(const char *name) { + char c; + + if(*name == ' ') + outchr(*name++); + outchr(*name++); + while(( c = *name++)) { + if(c >= 'A' && c <= 'Z') + c |= 0x20; + outchr(c); + } +} + void print_string(unsigned int pos, unsigned int len) { inv = 0; if(color) color_on(color_op); @@ -435,7 +448,12 @@ CALLBACK(print_cmd) { fprintf(outfh, "(bad cmd token $%02x) ", tok); badtok = 1; } else { - fprintf(outfh, "%s ", name); + if(bas_type == B_BXL || bas_type == B_BXE) { + print_mixed_case(name); + outchr(' '); + } else { + fprintf(outfh, "%s ", name); + } } if(color) color_off(); } @@ -529,7 +547,10 @@ CALLBACK(print_op) { fprintf(outfh, "(bad op token $%02x)", tok); badtok = 1; } else { - fprintf(outfh, "%s", name); + if(bas_type == B_BXL || bas_type == B_BXE) + print_mixed_case(name); + else + fprintf(outfh, "%s", name); } if(color) color_off(); } |