Hi  Paul,
I had this problem with a variable-length record file once and using debug
I found a block without the -1 (FFFFh) terminator. I patched the block
at where I thought the -1 was supposed to be, and wallah, it was ok.
You should be able to do this with a spoolfile.
 
             FILE   x=Oxxxxxx.out.hpspool;copy
             debug   map *x
 
   Use the dv command to find the bad block (you can use fcopy beforehand
   to give you an idea of where the block is)
   When you find the block and where the terminator should be, just use
                       MV   xxxx.yyyyyyyy,1,,$FFFF0000
    then           UNMAP 1
                        C
    The spool file should then be able to print.
 
You will probably get better solutions, but if you dont, dont hesitate to write
back.
 
Cheers, Tad.