📄 signal.s
字号:
/ C library -- signal/ signal(n, 0); /* default action on signal(n) *// signal(n, odd); /* ignore signal(n) *// signal(n, label); /* goto label on signal(n) *// returns old label, only one level.rtt = 6signal = 48..globl _signal, cerror_signal: mov r5,-(sp) mov sp,r5 mov 4(r5),r1 cmp r1,$NSIG bhis 2f mov 6(r5),r0 mov r1,0f asl r1 mov dvect(r1),-(sp) mov r0,dvect(r1) mov r0,0f+2 beq 1f bit $1,r0 bne 1f asl r1 asl r1 add $tvect,r1 mov r1,0f+21: sys 0; 9f bes 3f bit $1,r0 beq 1f mov r0,(sp)1: mov (sp)+,r0 mov (sp)+,r5 rts pc2: mov $22.,r0 / EINVAL clr -(sp)3: tst (sp)+ jmp cerrorNSIG = 0tvect: mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+1 mov r0,-(sp); mov dvect+[NSIG*2],r0; br 1f; NSIG=NSIG+11: mov r1,-(sp) mov r2,-(sp) mov r3,-(sp) mov r4,-(sp) jsr pc,(r0) mov (sp)+,r4 mov (sp)+,r3 mov (sp)+,r2 mov (sp)+,r1 mov (sp)+,r0 rtt.data9: sys signal; 0:..; ...bssdvect: .=.+[NSIG*2]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -