Der Zeilenzähler wird zurückgesetzt, wenn die Seitenlänge überschritten wird.
Wenn du EOP abfragst, bleibt Status EOP erhalten, bis du einen WRITE ohne EOP durchführst und wieder am Seitenanfang stehst, also:

77 Eop-Merker pic 9.

move 1 to Eop-Merker.

Schleife.

Read myfile at end goto ende
end-read

if Eop-Merker
write headformat
move zero to Eop-Merker
end-if

write posformat at eop
move 1 to Eop-Merker
end-write

goto Schleife.

Ende.
write feetformat

Das Kopf-Format sollte die DDS-Anweisung SKIPB(1) enthalten, so dass garantiert auf Zeile 1 begonnen wird (oder auch jede andere Startzeile).

EOP wird gemeldet, wenn die OVRFLW-Zeile erreicht bzw. überschritten wird, allerdings nur wenn EOP auch abgefragt wird.
write format : keine EOP, ggf. gelöscht
write format at eop ... : EOP wird abgefragt und ggf. gesetzt
end-write

Die aktuellen Werte stehen in der I-O-FEEDBACK-Area (siehe Handbuch), macht allerdings wenig Sinn, da EOP vollkommen ausreicht.
Ausserdem sollten die OVRFLW-Zeile und die Seitenlänge das Programm nicht interessieren, da ja die PRTF jederzeit geändert oder per OVRPRTF übersteuert werden kann. EOP funktioniert aber immer.