diff --git a/src/jtag/interface.h b/src/jtag/interface.h
index db0dfb700b42ab2af669373817d9213d5ba9e400..cc6ba42d4d953e101e5a97e7e44abd7f4f013e05 100644
--- a/src/jtag/interface.h
+++ b/src/jtag/interface.h
@@ -169,6 +169,8 @@ tap_state_t tap_state_by_name(const char *name);
 
 /// Allow switching between old and new TMS tables. @see tap_get_tms_path
 void tap_use_new_tms_table(bool use_new);
+/// @returns True if new TMS table is active; false otherwise.
+bool tap_uses_new_tms_table(void);
 
 #ifdef _DEBUG_JTAG_IO_
 /**
diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c
index de4173e47075cf3dc056e27f87ab23863e2818f1..89b9044937534849cd52359233675c6d6520058d 100644
--- a/src/jtag/jtag.c
+++ b/src/jtag/jtag.c
@@ -3227,6 +3227,10 @@ void tap_use_new_tms_table(bool use_new)
 {
 	tms_seqs = use_new ? &short_tms_seqs : &old_tms_seqs;
 }
+bool tap_uses_new_tms_table(void)
+{
+	return tms_seqs == &short_tms_seqs;
+}
 
 static int handle_tms_sequence_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
 {
@@ -3246,7 +3250,8 @@ static int handle_tms_sequence_command(struct command_context_s *cmd_ctx, char *
 		tap_use_new_tms_table(use_new_table);
 	}
 
-	command_print(cmd_ctx, "tms sequence is  %s", (tms_seqs==&short_tms_seqs) ? "short": "long");
+	command_print(cmd_ctx, "tms sequence is  %s",
+			tap_uses_new_tms_table() ? "short": "long");
 
 	return ERROR_OK;
 }