JEFF,
The fix is in DRTSCN.M68 in the BLDSCR: routine.
Find the following, and add in the PUSH D6 and POP D6 indicated by
the arrows below. Assemble it. Place it in the proper account
[DRT270.OVR] and all should work well.
BLDSCR:
...
...
; A6 => After OLH in original field.
;
53$: MOV A6, D6 ; Save starting address of copy.
MOV A3, A6 ; Index the original field start.
ADDW FL.BSZ(A6), A6 ; Index the end of the field.
XCH D6, A6 ; Get into proper registers.
SUB A6, D6 ; Compute size of move.
BEQ 57$ ; Nothing to move.
SUB #1, D6 ; Adjust for DBF loop.
SAVE A2, A3 ; Save registers.
MOV A2, A3 ; Index the new field.
MOV A6, A2 ; Save index.
-> PUSH D6 ; Save for count [JAJ]
TOOLBX TBX$IDXOLH ; Index the rest of the field.
-> POP D6 ; Restore for count [JAJ]
55$: MOVB (A2)+, (A6)+ ; Copy a byte.
DBF D6, 55$ ; Get all the bytes.
REST A2, A3 ; Restore registers.
57$: ADDW FL.BSZ(A2), A2 ; Bump to next field.