📄 form1.s
字号:
signal = 48.testing = 0/ form letter generator/ command sequence/ form proto arg1 arg2.../ where proto is letterrfo: sys signal; 2; int mov $-1,buf mov (sp)+,r2 /arg count tst (sp)+ /skip first arg sub $2,r2 bge 2f mov $default,-(sp)2: mov (sp)+,letter1: sys stat; otfil; buf bec 2f sys creat; otfil; 666 bec cont2: cmpb $'z,otfil+4 beq err3 incb otfil+4 br 1berr3: mov $1,r0 sys write; mes3; 24. sys exitmes3: <cannot open output file\n>otfil: <forma\0>default: <letter\0> .evencont: mov r0,rfo clr rfo+2 jsr pc,initl / set up argument list/ mov $arg,r3 mov $10.,r0 jsr pc,allocate mov r1,(r3)+1: dec r2 blt 1f mov $10.,r0 jsr pc,allocate mov r1,(r3)+ mov (sp)+,r42: movb (r4)+,r0 beq 1b jsr pc,putchar br 2b1: sys time ashc $-7,r0 div $675.,r0 mov $daytab,r2 sub $1461.,r01: sub (r2)+,r0 bge 1b add -(r2),r0 mov r0,-(sp) mov arg,r1 mov montab-daytab(r2),r21: movb (r2)+,r0 beq 1f jsr pc,putchar br 1b1: movb $' ,r0 jsr pc,putchar clr r0 mov (sp),r1 inc r1 div $10.,r0 mov r1,(sp) mov arg,r1 tst r0 beq 1f add $'0,r0 jsr pc,putchar1: mov (sp)+,r0 add $'0,r0 jsr pc,putchar jmp loopdaytab: 31.; 28.; 31.; 30.; 31.; 30.; 31.; 31.; 30.; 31.; 30.; 999.montab: m1; m2; m3; m4; m5; m6; m7; m8; m9; m10; m11; m12m1: <January\0>m2: <February\0>m3: <March\0>m4: <April\0>m5: <May\0>m6: <June\0>m7: <July\0>m8: <August\0>m9: <September\0>m10: <October\0>m11: <November\0>m12: <December\0>buf: .=.+34..=rfo+516.loop: mov $10.,r0 jsr pc,allocate mov r1,opointer jsr pc,allocate mov r1,ipointer jsr pc,allocate mov r1,curly mov $10.,r0 jsr pc,allocate mov r1,scr mov letter,r3 movb $'\{,r0 jsr pc,putchar1: movb (r3)+,r0 beq 1f jsr pc,putchar br 1b1: movb $'\},r0 jsr pc,putchar clr switch tst iflag beq 1f mov $1,tflag jmp interrupt1: jsr pc,scan movb $'\n,r0 jsr r5,putc jsr r5,flushb mov scr,r1 jsr pc,release jsr pc,relarg mov opointer,r1 jsr pc,release mov ipointer,r1 jsr pc,release jsr pc,relcurl jsr pc,flush jsr pc,whead .if testing 4 .endif sys exit
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -