>I removed the chr(66) for the PC_RESET in textreport.txt and change the printout to this.print(), everything works perfectly.
The PC_RESET, I understand, but I don't quite understand why This.PrintLine() would produce an additional line. Do you explicitly include a new-line symbol, like chr(13) + chr(10)? You should not do this; if you do, the class can't keep track of line and column positions (for example, a new page, with the corresponding methods GroupHeader(), GroupFooter(), PageHeader(), will be issued automatically once a certain number of lines are printed). Instead, to advance an additional line, you should use This.PrintLine().
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)