📄 roff2.s
字号:
/// roff2 -- runoffcasead: jsr pc,rbreak inc ad rts pc rts pccasebr: jsr pc,rbreak rts pccasecc: jsr pc,skipcont jsr pc,getchar cmp r0,$'\n beq 1f movb r0,cc1: mov r0,ch rts pccasece: jsr pc,rbreak jsr r5,number; 0 jsr pc,min mov r0,ce jsr pc,need rts pccaseds: jsr pc,rbreak mov $2,ls rts pccasefi: jsr pc,rbreak inc fi rts pccasein: jsr pc,rbreak jsr r5,number; in jsr pc,min mov r0,in mov r0,un rts pccaseix: jsr r5,number; in jsr pc,min mov r0,in rts pccaseli: jsr r5,number; 0 mov r0,-(sp)1: dec (sp) blt 1f jsr pc,flushi clr nlflg jsr pc,text br 1b1: tst (sp)+ rts pccasell: jsr r5,number; ll jsr pc,min mov r0,ll rts pccasels: jsr pc,rbreak jsr pc,skipcont jsr pc,getchar cmp r0,$'\n bne 1f mov ls1,ls rts pc1: mov r0,ch jsr r5,number1; ls dec r0 jsr pc,min inc r0 mov r0,ls mov r0,ls1 rts pccasena: jsr pc,rbreak clr ad rts pccasene: jsr r5,number; 0 jsr pc,min jsr pc,need rts pccasenf: jsr pc,rbreak clr fi rts pccasepa:casebp: jsr pc,rbreak jsr pc,eject jsr pc,skipcont tst nlflg bne 1f jsr r5,number; pn jsr pc,min mov r0,pn1: rts pccasebl: jsr pc,rbreak jsr r5,number; 0 jsr pc,min mov r0,-(sp) jsr pc,need21: dec (sp) blt 1f mov $' ,r0 jsr pc,storeline jsr pc,rbreak br 1b1: tst (sp)+ rts pccasepl: jsr r5,number; pl mov r0,pl jsr pc,topbot rts pccasesk: jsr r5,number; 0 jsr pc,min mov r0,skip rts pccasesp: jsr pc,rbreak jsr r5,number; 0 jsr r5,nlines; nline rts pccasess: jsr pc,rbreak mov $1,ls rts pccasetr: jsr pc,skipcont1: jsr pc,getchar cmp r0,$'\n beq 1f mov r0,r1 jsr pc,getchar cmp r0,$'\n bne 2f mov $' ,r02: movb r0,trtab(r1) br 1b1: rts pccaseta: mov $tabtab,r11: jsr r5,number; 0 jsr pc,min dec r0 ble 1f movb r0,(r1)+ br 1b1: clrb (r1)+ rts pccaseti: jsr pc,rbreak jsr r5,number; in jsr pc,min mov r0,un rts pccaseul: jsr r5,number; 0 jsr pc,min mov r0,ul rts pccaseun: jsr r5,number; 0 sub in,r0 neg r0 jsr pc,min mov r0,un rts pccasehx: tst hx beq 1f clr hx br 2f1: inc hx2: jsr pc,topbot rts pccasehe: jsr r5,headin; ehead mov ehead,ohead rts pccasefo: jsr r5,headin; efoot mov efoot,ofoot rts pccaseeh: jsr r5,headin; ehead rts pccaseoh: jsr r5,headin; ohead rts pccaseef: jsr r5,headin; efoot rts pccaseof: jsr r5,headin; ofoot rts pccasem1: jsr r5,number; ma1 jsr pc,min mov r0,ma1 br 1fcasem2: jsr r5,number; ma2 jsr pc,min mov r0,ma2 br 1fcasem3: jsr r5,number; ma3 jsr pc,min mov r0,ma3 br 1fcasem4: jsr r5,number; ma4 jsr pc,min mov r0,ma41: jsr pc,topbot rts pccasehc: jsr pc,skipcont jsr pc,getchar cmp r0,$'\n bne 1f movb $200,r01: mov r0,ohc rts pccasetc: jsr pc,skipcont jsr pc,getchar cmp r0,$'\n bne 1f mov $' ,r01: mov r0,tabc rts pccasehy: jsr r5,number; 0 mov r0,hyf rts pccasen1: jsr pc,rbreak mov $1,numbmod br 1fcasen2: jsr pc,rbreak mov $2,numbmod1: clr nn jsr r5,number; 0 tst r0 ble 1f mov r0,lnumber rts pc1: clr numbmod rts pccasenn: jsr r5,number; 0 jsr pc,min mov r0,nn rts pccaseni: jsr r5,number; ni jsr pc,min mov r0,ni rts pccasejo: jsr r5,number; 0 mov r0,jfomod rts pccasear: clr ro rts pccasero: inc ro rts pccasenx: jsr pc,skipcont jsr r5,getname; nextf inc nx jsr pc,nextfile inc nlflg clr ip mov $ilist,ilistp rts pccasepo: jsr pc,rbreak jsr r5,number; po jsr pc,min mov r0,po rts pccasede: tst ip bne 5f jsr pc,skipcont jsr r5,getname; bname clr skp mov $contab,r1 clr -(sp)1: mov (r1)+,(sp) beq 2f bic $100000,(sp) cmp bname,(sp) bne 3f2: bis $100000,bname mov nextb,(r1) mov bname,-(r1) br 4f3: cmp (r1)+,$-1 bne 1b inc skp4: tst (r1)+ jsr pc,copyb tst (sp)+5: rts pccaseig: inc skp jsr pc,copyb rts pccasemk: jsr pc,rbreak mov $002,r0 /stx jsr pc,putchar rts pc
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -