aboutsummaryrefslogtreecommitdiff
path: root/linetab.c
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2024-06-18 06:09:10 -0400
committerB. Watson <urchlay@slackware.uk>2024-06-18 06:09:10 -0400
commit227133e626c6956f850e7d21c93f04882208ffed (patch)
tree883c1d561feea847f025ce79cceeba956b63ad19 /linetab.c
parent9d6be822e814d38ec5eff0ddcc8bc936e7d1b6f2 (diff)
downloadbw-atari8-tools-227133e626c6956f850e7d21c93f04882208ffed.tar.gz
cxrefbas and renumbas: support LIST.
Diffstat (limited to 'linetab.c')
-rw-r--r--linetab.c21
1 files changed, 17 insertions, 4 deletions
diff --git a/linetab.c b/linetab.c
index 5fb0a32..669b1a0 100644
--- a/linetab.c
+++ b/linetab.c
@@ -75,16 +75,15 @@ void computed_msg(unsigned short lineno) {
cmd = "RESTORE"; break;
case CMD_TRAP:
cmd = "TRAP"; break;
- /*
- case CMD_IF:
- cmd = "IF/THEN"; break;
- */
case CMD_ON:
if(on_op == OP_GOSUB)
cmd = "ON/GOSUB";
else
cmd = "ON/GOTO";
break;
+ case CMD_LIST:
+ cmd = "LIST";
+ break;
default: /* should never happen! */
cmd = "???"; break;
}
@@ -99,6 +98,7 @@ CALLBACK(got_var) {
case CMD_GOSUB:
case CMD_RESTORE:
case CMD_TRAP:
+ case CMD_LIST:
computed_msg(lineno);
break;
default:
@@ -150,6 +150,19 @@ CALLBACK(got_exp) {
}
}
break;
+ case CMD_LIST: {
+ switch(last_tok) {
+ case CMD_LIST:
+ case OP_COMMA:
+ if(standalone)
+ add_lineref(lineno, pos + 1);
+ else
+ computed_msg(lineno);
+ break;
+ default:
+ break;
+ }
+ }
default:
break;
}