diff --git a/Nasal/screen.nas b/Nasal/screen.nas
index 562d6ff04..dd523270d 100644
--- a/Nasal/screen.nas
+++ b/Nasal/screen.nas
@@ -88,8 +88,8 @@ var window = {
 		m.skiptimer = 0;
 		m.dialog = nil;
 		m.namenode = props.Node.new({ "dialog-name": m.name });
-		setlistener("/sim/startup/xsize", func { m._redraw_() });
-		setlistener("/sim/startup/ysize", func { m._redraw_() });
+		setlistener("/sim/startup/xsize", func m._redraw_());
+		setlistener("/sim/startup/ysize", func m._redraw_());
 		return m;
 	},
 	write : func(msg, r = nil, g = nil, b = nil, a = nil) {
@@ -186,6 +186,7 @@ var window = {
 #
 #     var dpy = screen.display.new(20, 10);    # x/y coordinate
 #     dpy.setcolor(1, 0, 1);                   # magenta (default: white)
+#     dpy.setfont("SANS_12B");                 # see $FG_ROOT/gui/styles/*.xml
 #
 #     dpy.add("/position/latitude-deg", "/position/longitude-deg");
 #     dpy.add(props.globals.getNode("/orientation").getChildren());
@@ -197,7 +198,6 @@ var window = {
 #
 #     dpy.interval = 0;                        # update every frame
 #     dpy.format = "%.3g";                     # max. 3 digits fractional part
-#     dpy.font = "SANS_12B";                   # see $FG_ROOT/gui/styles/*.xml
 #     dpy.redraw();                            # pick up new settings
 #
 #
@@ -231,6 +231,8 @@ var display = {
 		m.name = "__screen_display_" ~ (display.id += 1) ~ "__";
 		m.base = props.globals.getNode("/sim/gui/dialogs/property-display-" ~ display.id, 1);
 		m.namenode = props.Node.new({ "dialog-name": m.name });
+		setlistener("/sim/startup/xsize", func m.redraw());
+		setlistener("/sim/startup/ysize", func m.redraw());
 		m.reset();
 		return m;
 	},
@@ -293,11 +295,11 @@ var display = {
 		me.open();
 	},
 	add : func(p...) {
-		foreach (PROP; var n; props.nodeList(p)) {
+		foreach (nextprop; var n; props.nodeList(p)) {
 			var path = n.getPath();
 			foreach (var e; me.entries) {
 				if (e.node.getPath() == path)
-					continue PROP;
+					continue nextprop;
 				e.parent = e.node;
 				e.tag = me.nameof(e.node);
 			}
@@ -365,10 +367,11 @@ var display = {
 var listener = {};
 var log = nil;
 var property_display = nil;
+var controls = nil;
 
 _setlistener("/sim/signals/nasal-dir-initialized", func {
 	property_display = display.new(5, -25);
-	listener["display"] = setlistener("/sim/gui/dialogs/property-browser/selected", func(n) {
+	listener.display = setlistener("/sim/gui/dialogs/property-browser/selected", func(n) {
 		var n = n.getValue();
 		if (n != "" and getprop("/devices/status/keyboard/shift")) {
 			if (getprop("/devices/status/keyboard/ctrl"))
@@ -492,18 +495,18 @@ _setlistener("/sim/signals/nasal-dir-initialized", func {
 	}
 
 	var m = "/sim/messages/";
-	listener["atc"] = setlistener(m ~ "atc",
+	listener.atc = setlistener(m ~ "atc",
 			func(n) map("atc",      n.getValue(), 0.7, 1.0, 0.7));
-	listener["approach"] = setlistener(m ~ "approach",
+	listener.approach = setlistener(m ~ "approach",
 			func(n) map("approach", n.getValue(), 0.7, 1.0, 0.7));
-	listener["ground"] = setlistener(m ~ "ground",
+	listener.ground = setlistener(m ~ "ground",
 			func(n) map("ground",   n.getValue(), 0.7, 1.0, 0.7));
 
-	listener["pilot"] = setlistener(m ~ "pilot",
+	listener.pilot = setlistener(m ~ "pilot",
 			func(n) map("pilot",    n.getValue(), 1.0, 0.8, 0.0));
-	listener["copilot"] = setlistener(m ~ "copilot",
+	listener.copilot = setlistener(m ~ "copilot",
 			func(n) map("copilot",  n.getValue(), 1.0, 1.0, 1.0));
-	listener["ai-plane"] = setlistener(m ~ "ai-plane",
+	listener.ai_plane = setlistener(m ~ "ai-plane",
 			func(n) map("ai-plane", n.getValue(), 0.9, 0.4, 0.2));
 });