changeset 1312:9ab3f6781202

Allow adding .w or .b to select just the low word or byte of a register in a 68K debugger print command
author Michael Pavone <pavone@retrodev.com>
date Fri, 31 Mar 2017 19:11:04 -0700
parents 26bdbf1f7e33
children b27d7bf1107e
files debug.c
diffstat 1 files changed, 14 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/debug.c	Fri Mar 31 19:07:04 2017 -0700
+++ b/debug.c	Fri Mar 31 19:11:04 2017 -0700
@@ -108,8 +108,22 @@
 	}
 	if (param[0] == 'd' && param[1] >= '0' && param[1] <= '7') {
 		value = context->dregs[param[1]-'0'];
+		if (param[2] == '.') {
+			if (param[3] == 'w') {
+				value &= 0xFFFF;
+			} else if (param[3] == 'b') {
+				value &= 0xFF;
+			}
+		}
 	} else if (param[0] == 'a' && param[1] >= '0' && param[1] <= '7') {
 		value = context->aregs[param[1]-'0'];
+		if (param[2] == '.') {
+			if (param[3] == 'w') {
+				value &= 0xFFFF;
+			} else if (param[3] == 'b') {
+				value &= 0xFF;
+			}
+		}
 	} else if (param[0] == 'S' && param[1] == 'R') {
 		value = (context->status << 8);
 		for (int flag = 0; flag < 5; flag++) {