Hello Lars,
Thank you for your comments.
I agree that .DSTART would be more efficient. I'll try to understand LARS;TVBROT. The problem is if you create a tight loop for the interrupts the system locks up. The HALT sequence we tried didn't improve things. Using CONSO works better, it seems to have enough slack built in to allow for F1 to work in a KNIGHT TV terminal.
The problem that I found is in the code. I drew a point at decimal location (400,400). Then setting the scale to x2, I wrote a square of 100 x 100 decimal size. So, the square should, by my understanding, go from decimal location (400,400) to (600,600). In practice, the square was smaller, ignoring the scale factor, and was far to the left of (400,400).
As for the characters, I gave the system 4 x 18-bit word, with SIXBIT characters for Hello world. The SIXBIT space is the same value as Escape, 00(8) as space, so I replaced space with an underscore. I added an escape athte end. So, irrespective of the encoding, I should get out 11 characters - but I'm getting many more than this. And the characters weren't drawn from the point at (400,400), but again tp the left.