Fiddling with the ap2000, I was able to get the printer to have the moving block by changing this line in upd7810.cpp, there was quite a bit of change between 219 and 220 in upd7810 that seemed to make it stop working. I have no idea what this breaks, but at least it shows activity.

It just puts that line back to the way it was in 219.

Unfortunately, it still doesn't seem to get any data.

Code
git diff src/devices/cpu/upd7810/upd7810.cpp
diff --git a/src/devices/cpu/upd7810/upd7810.cpp b/src/devices/cpu/upd7810/upd7810.cpp
index bd459b2f141..25ac83fa794 100644
--- a/src/devices/cpu/upd7810/upd7810.cpp
+++ b/src/devices/cpu/upd7810/upd7810.cpp
@@ -749,7 +749,8 @@ void upd7810_device::upd7810_take_irq()
        int irqline = 0;
 
        /* global interrupt disable? */
-       if (0 == IFF && !(IRR & INTNMI))
+        if (0 == IFF)
+//     if (0 == IFF && !(IRR & INTNMI))
                return;
 
        /* check the interrupts in priority sequence */