Index: /applications/editors/josm/plugins/seachart/jicons/examples.xml
===================================================================
--- /applications/editors/josm/plugins/seachart/jicons/examples.xml	(revision 35085)
+++ /applications/editors/josm/plugins/seachart/jicons/examples.xml	(revision 35086)
@@ -7,10 +7,14 @@
     <tag k="seamark:topmark:shape" v="cylinder" />
   </icon>
-  <icon width="100" height="100" scale="0.25" file="green_pillar" format="SVG" >
-    <tag k="seamark:type" v="buoy_lateral" />
-    <tag k="seamark:buoy_lateral:shape" v="pillar" />
-    <tag k="seamark:buoy_lateral:colour" v="green" />
-    <tag k="seamark:topmark:colour" v="green" />
-    <tag k="seamark:topmark:shape" v="cone, point up" />
+  <icon width="1000" height="200" scale="1.0" file="waverider" format="SVG" >
+    <tag k="seamark:type" v="buoy_special_purpose" />
+    <tag k="seamark:buoy_special_purpose:shape" v="spherical" />
+    <tag k="seamark:buoy_special_purpose:colour" v="yellow" />
+    <tag k="seamark:buoy_special_purpose:purpose" v="odas" />
+    <tag k="seamark:light:colour" v="yellow" />
+    <tag k="seamark:light:character" v="Fl" />
+    <tag k="seamark:light:group" v="5" />
+    <tag k="seamark:light:period" v="20" />
+    <tag k="seamark:name" v="Hornsea Waverider" />
   </icon>
   <icon width="200" height="200" scale="0.5" file="hib" format="PNG" >
Index: /applications/editors/josm/plugins/seachart/src/render/Rules.java
===================================================================
--- /applications/editors/josm/plugins/seachart/src/render/Rules.java	(revision 35085)
+++ /applications/editors/josm/plugins/seachart/src/render/Rules.java	(revision 35086)
@@ -1038,4 +1038,5 @@
 			}
 			Signals.addSignals();
+            addName(15, new Font("Arial", Font.BOLD, 40), new Delta(Handle.BL, AffineTransform.getTranslateInstance(60, -50)));
 		}
 	}
@@ -1340,10 +1341,10 @@
 						Renderer.lineVector(new LineStyle(Color.black, 10, new float[] { 40, 40 }, null));
 						if (Renderer.zoom >= 15)
-							Renderer.lineText("(covers)", new Font("Arial", Font.PLAIN, 60), Color.black, 80);
+							Renderer.lineText("(covers)", new Font("Arial", Font.PLAIN, 40), Color.black, 80);
 					} else {
 						Renderer.lineVector(new LineStyle(Color.black, 10, null, null));
 					}
 					if (Renderer.zoom >= 15)
-						Renderer.lineText("Training Wall", new Font("Arial", Font.PLAIN, 60), Color.black, -30);
+						Renderer.lineText("Training Wall", new Font("Arial", Font.PLAIN, 40), Color.black, -30);
 					break;
 				case SLC_SWAY:
Index: /applications/editors/josm/plugins/seachart/src/render/Signals.java
===================================================================
--- /applications/editors/josm/plugins/seachart/src/render/Signals.java	(revision 35085)
+++ /applications/editors/josm/plugins/seachart/src/render/Signals.java	(revision 35086)
@@ -208,27 +208,29 @@
 			CatRTB cat = (CatRTB) getAttEnum(Obj.RTPBCN, Att.CATRTB);
 			String wal = getAttStr(Obj.RTPBCN, Att.RADWAL);
-			switch (cat) {
-			case RTB_RAMK:
-				bstr += " Ramark";
-				break;
-			case RTB_RACN:
-				bstr += " Racon";
-				String astr = getAttStr(Obj.RTPBCN, Att.SIGGRP);
-				if (!astr.isEmpty()) {
-					bstr += "(" + astr + ")";
-				}
-				Double per = (Double) getAttVal(Obj.RTPBCN, Att.SIGPER);
-				Double mxr = (Double) getAttVal(Obj.RTPBCN, Att.VALMXR);
-				if ((per != null) || (mxr != null)) {
-					bstr += (astr.isEmpty() ? " " : "");
-					if (per != null)
-						bstr += (per != 0) ? per.toString() + "s" : "";
-					if (mxr != null)
-						bstr += (mxr != 0) ? mxr.toString() + "M" : "";
-				}
-				break;
-			default:
-				break;
-			}
+            if ((cat == CatRTB.RTB_RAMK) || (cat == CatRTB.RTB_RACN)) {
+                switch (cat) {
+                case RTB_RAMK:
+                    bstr += " Ramark";
+                    break;
+                case RTB_RACN:
+                    bstr += " Racon";
+                    break;
+                default:
+                    break;
+                }
+                String astr = getAttStr(Obj.RTPBCN, Att.SIGGRP);
+                if (!astr.isEmpty()) {
+                    bstr += "(" + astr + ")";
+                }
+                Double per = (Double) getAttVal(Obj.RTPBCN, Att.SIGPER);
+                Double mxr = (Double) getAttVal(Obj.RTPBCN, Att.VALMXR);
+                if ((per != null) || (mxr != null)) {
+                    bstr += (astr.isEmpty() ? " " : "");
+                    if (per != null)
+                        bstr += (per != 0) ? per.toString() + "s" : "";
+                    if (mxr != null)
+                        bstr += (mxr != 0) ? mxr.toString() + "M" : "";
+                }
+            }
 			if (!wal.isEmpty()) {
 				switch (wal) {
