Go to the list of seismic processes.
Go to SIOSEIS introduction.
Program dutil is a 1980s program (before GUIs) to snoop around disk files.
After executing the program and entering a file name, all commands are entered as
a two letter command name followed by the number of bytes. e.g. he means help
37>dutil
Enter the disk file pathname.
2000_line7.jsf.sgy
The file is opened on unit 8
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
he
DUTIL help: dutil is a disk file "utility" program that allows you to examine a file.
The command format is a 2 letter code followed by the number of things to do.
he = help
rd = read n bytes
dr = dump n REAL*4 words
da = dump n ASCII characters
de = dump n EBCDIC characters
dz = dump n HEX bytes
di = dump n INTEGER*2 words
dl = dump n INTEGER*4 words
dm = dump n IBM REAL*4 words
dd = dump n DOUBLE PRECISION words
dv = dump n VAX (DEC) words
dw = dump n VAX (DEC) DOUBLE PRECISION words
d1 = dump n 16 bit floating point words
po = position to byte n in the file
pw = position to 32 bit word n.
qu = quit = return to the operating system
s1 = swap n 16 bit integers
s3 = swap n 32 bit integers
s6 = swap n 64 bit integers
co = complement n INTEGER*2 words
wr = write n bytes to the current unit
op = open another file on a new unit
cu = change unit numbers to unit n
rk = reads nbytes from the keyboard (tty)
ad = returns the current disk byte address.
fz = returns the file size.
e.g. rd 512 means read 512 bytes
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
The rd n command reads n bytes into a buffer in memory.
Subsequent commands such as dump and byte swap operate on the memory buffer.
To examine a SEGY file you must know the SEGY file structure.
3200 bytes - EBCDIC or ASCII
400 bytes - 2 byte integers in big-endian (Intel machines are little-endian).
240 byte - mixture of 2 byte and four byte integers in big-endian byte order.
n bytes - data where n is in trace header short integer 58
240 byte - mixture of 2 byte and four byte integers in big-endian byte order.
n bytes - data where n is in trace header short integer 58
240 byte - mixture of 2 byte and four byte integers in big-endian byte order.
n bytes - data where n is in trace header short integer 58
e.g.
37>dutil
Enter the disk file pathname.
2000_line7.jsf.sgy # open the file
The file is opened on unit 8
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
rd 3200 # read 3200 bytes
Read 3200 bytes
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
da 80 # Dump the first 80
# bytes in ASCII (1 card).
�@�@���@��`��@@@@@@@@@@@@@@����
@@��@@@@@@@@@@@@@@@@@@��@�@�@@@@@@@ # it's not ASCII,
# it must be EBCDIC
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
de 80 # Dump 80 bytes in EBCDIC
C 1 CLIENT UCSD-SIO COMPANY
IGPP CREW NO 0
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
rd 400 # read the binary header
Read 400 bytes
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
s1 200 # swap bytes on 200 short integers
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
di 20 # dump the first 20 short integers
0 0 0 1 0 1 1 0 46 46
4340 0 5 0 1 0 20 150 20 0
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
rd 240 # read the trace header
Read 240 bytes
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
s3 60 # byte swap 60 32 bit words (240 bytes)
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
dl 60 # dump 60 long integers
1 1 192721 1 0
0 0 65536 0 0
514 514 0 0 0
45205 45205 -65480464 -53712327 17335599
-53712327 17335599 131072 0 0
0 0 218103808 4340 3014656
65536 133072 983040020 65536 0
0 0 0 0 131989675
524324 2162690 262144 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
dr 60 # dump 60 reals
0.140130E-44 0.140130E-44 0.270060E-39 0.140130E-44 0.00000
0.00000 0.00000 0.918355E-40 0.00000 0.00000
0.720267E-42 0.720267E-42 0.00000 0.00000 0.00000
0.633457E-40 0.633457E-40 -0.317452E+37 -0.849106E+37 0.250748E-37
-0.849106E+37 0.250748E-37 0.183671E-39 0.00000 0.00000
0.00000 0.00000 0.394430E-30 0.608164E-41 0.422443E-38
0.918355E-40 0.186474E-39 0.115967E-02 0.918355E-40 0.00000
0.00000 0.00000 0.00000 0.00000 0.334032E-33
0.734734E-39 0.303057E-38 0.367342E-39 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000 0.00000
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
s3 60 # byte swap back to original byte order
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
s1 120 # byte swap 120 short words (240 bytes)
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
di 120 # dump 120 short integers
0 1 0 1 2 -3887 0 1 0 0
0 0 0 0 1 0 0 0 0 0
0 514 0 514 0 0 0 0 0 0
0 -20331 0 -20331 -1000 -10000 -820 27193 264 -31441
-820 27193 264 -31441 2 0 0 0 0 0
0 0 0 0 3328 0 0 4340 46 0
1 0 2 2000 15000 20 1 0 0 0
0 0 0 0 0 0 0 0 2014 171
8 36 33 2 4 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
Enter an option: he, rd, dr, da, de, dz, di, dl, dm, dd, dv,
dw, d1, po, pw, qu, s1, s3, s6, co, wr, op, cu, rk, ad, fz
qu # quit dutil
38>
Note that the binary header signifies that the file format is SEGY Rev 1
Note that trace header bytes 69-70 (short word 35) is -1000, which means the water depth
in bytes 61-64 (long integer 16) is to be divided by 1000. 45205/1000. = 45.205
Note that bytes 215-216 (short word 108) is the SEGY Rev 1 deep water delay scalar.
Go to the list of seismic processes.
Go to SIOSEIS introduction.