diff --git a/pub/itest/p2d.f2t b/pub/itest/p2d.f2t
new file mode 100755
index 0000000000000000000000000000000000000000..ce0262ce50aa2cfc10d8bedd6b40eb68f80c63ac
--- /dev/null
+++ b/pub/itest/p2d.f2t
@@ -0,0 +1,6 @@
+#!/usr/bin/env frida
+fl grid40x20
+gt+
+p
+gp! ~/P.ps
+qui
diff --git a/pub/plot/ps_plotter.cpp b/pub/plot/ps_plotter.cpp
index eb2acfcf957662470adeb87ab45cf36a19ddb4ca..65b8f3d1999b2ba5fc2f2b2f962f41d69115d94a 100644
--- a/pub/plot/ps_plotter.cpp
+++ b/pub/plot/ps_plotter.cpp
@@ -221,7 +221,7 @@ namespace {
 
     string ps_colorscale()
     {
-        return "%TODO colorscale\n";
+        return "pop %TODO colorscale\n";
     }
 
     string ps_slice_header(
diff --git a/pub/share/wups17a.ps b/pub/share/wups17a.ps
index a3947befcfa8eac4d7e616cd0822826b79f2a6d3..676d3805802dee3b14858f4de6a21ecdbcfa9c0e 100644
--- a/pub/share/wups17a.ps
+++ b/pub/share/wups17a.ps
@@ -690,7 +690,7 @@ WuGdict17a begin
    black
    } def
 /BoxBackground {
-   0 0 10 10 boxit gsave setboxbackgroundcolor fill grestore
+   0 10 0 10 rect gsave setboxbackgroundcolor fill grestore
 } def
 /setboxbackgroundcolor { white } def
 
@@ -1232,8 +1232,7 @@ WuGdict17a begin
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 /t2d {
-    icCol
-    { fill } execRectangle3
+    icCol rect fill
     black
 } def
 
@@ -1338,17 +1337,19 @@ WuGdict17a begin
 %%  Boxes
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-/boxLLHH { % xl yl xh yh | - %%% INCOMPATIBLE with boxit, contains cp
-   4 copy 8 copy
-   pop pop np mv
-   3 1 roll pop pop li
-   li pop pop
-   4 1 roll exch li pop pop
+/rect { % xl xh yl yh | - [path -> rectangle]
+   ym /qqyh x def
+   ym /qqyl x def
+   xm /qqxh x def
+   xm /qqxl x def
+   np
+   qqxl qqyl mv
+   qqxh qqyl li
+   qqxh qqyh li
+   qqxl qqyh li
    cp
    } def
-/execOval2 { %  xl xh yl yh dr { proc } | -
-   gsave
-   6 1 roll
+/oval { %  xl xh yl yh dr | - [path -> oval]
    fm /qqdr x def
    ym /qqyh x def
    ym /qqyl x def
@@ -1363,35 +1364,7 @@ WuGdict17a begin
    qqxh qqdr sub qqyl qqdr add qqdr 0 -90 arcn
    qqxl qqdr add qqyl li
    qqxl qqdr add qqyl qqdr add qqdr -90 -180 arcn
-   cp exec grestore
-   } def
-/execRectangle3 { % xl xh yl yh {proc} | -
-   5 1 roll
-   gsave
-   ym /qqyh x def
-   ym /qqyl x def
-   xm /qqxh x def
-   xm /qqxl x def
-   np
-   qqxl qqyl mv
-   qqxh qqyl li
-   qqxh qqyh li
-   qqxl qqyh li
-   cp exec grestore
-   } def
-/coordRectangle { % xl xh yl yh (all in plot coords) {proc} | -
-   5 1 roll
-   gsave
-   /qqyh x def
-   /qqyl x def
-   /qqxh x def
-   /qqxl x def
-   np
-   qqxl xm qqyl ym mv
-   qqxh xm qqyl ym li
-   qqxh xm qqyh ym li
-   qqxl xm qqyh ym li
-   cp exec grestore
+   cp
    } def
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%