📄 uio.s
字号:
/ fortran to UNIX IO/.globl read..globl write..globl seek..globl seek0..globl open..globl creat..globl close..globl errno.indir = 0/ integer function read(f, a, n)/ integer f, n/ logical*1 a(n)/ same as Cread.: temp rval4p; 2 / f i4i2 lvalp; 4 / a rval4p; 6 / n i4i2 .+2 mov (sp)+,9f+4 mov (sp)+,9f+2 mov (sp)+,r0 sys indir; 9f br ret.data9: sys read; ..; ...text/ integer function read(f, a, n)/ integer f, n/ logical*1 a(n)/ same as Cwrite.: temp rval4p; 2 / f i4i2 lvalp; 4 / a rval4p; 6 / n i4i2 .+2 mov (sp)+,9f+4 mov (sp)+,9f+2 mov (sp)+,r0 sys indir; 9f br ret.data9: sys write; ..; ...text/ integer function seek(f, o, b)/ integer f, o, b/ same as Cseek.: temp rval4p; 2 / f i4i2 rval4p; 4 / o i4i2 rval4p; 6 / b i4i2 .+2 mov (sp)+,9f+4 mov (sp)+,9f+2 mov (sp)+,r0 sys indir; 9f br ret/ integer function seek0(f, n)/ integer f, n/ same as seek(f, n, 0)/ but with 24 bit `n'seek0.: temp rval4p; 2 / f i4i2 rval4p; 4 / n .+2 mov (sp)+,r0 mov (sp),r1 bic $!777,(sp) ashc $-9.,r0 mov r1,9f+2 mov $3,9f+4 mov 2(sp),r0 sys indir; 9f / to block mov (sp)+,9f+2 mov $1,9f+4 mov (sp)+,r0 sys indir; 9f / to byte within block br ret.data9: sys seek; ..; ...text/ integer function open(a, m)/ logical*1 a(n)/ integer m/ same as C, name is ` ' terminatedopen.: temp lvalp; 2 / a rval4p; 4 / m i4i2 .+2 mov (sp)+,9f+4 mov (sp)+,r0 mov r0,9f+21: cmpb (r0)+,$' / bne 1b clrb -(r0) sys indir; 9f br ret.data9: sys open; ..; ...text/ integer function creat(a, m)/ logical*1 a(n)/ integer m/ same as C, name is ` ' terminatedcreat.: temp lvalp; 2 / a rval4p; 4 / m i4i2 .+2 mov (sp)+,9f+4 mov (sp)+,r0 mov r0,9f+21: cmpb (r0)+,$' / bne 1b clrb -(r0) sys indir; 9f br ret.data9: sys creat; ..; ...text/ integer function close(f)/ integer f/ same as Cclose.: temp rval4p; 2 / f i4i2 .+2 mov (sp)+,r0 sys closeret: bec 1f mov r0,error mov $-1,r01: mov r0,temp+2 sxt temp jmp retrn/ error = errno/ returns last error numbererrno.: temp .+2 mov error,r0 br ret.globl temp.globl retrn.globl rval4p.globl lvalp.globl i4i2.bsserror: .=.+2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -