Question about awk - create a user-defined variable

Hi, guys,
The content of file is below from <UNIX� Shells by Example Fourth Edition>):

My code is below:

gawk -F'[ :]' ' { OFS = "****"; $3 = "(904)"; $8 = $5 + $6 + $7; print } ' lab3.data

The result is below:

So, where is the $1? Why is the variable $8 located at the wired position?

When I tried this in AWK, it is all fine.

It works fine with awk and gawk. Could be a terminal issue.

I'd bet there's a (windows originated?) <CR> (<carriage return>, ^M, 0x0D) char at the end of each line...