.psect .prog. rline: jsr r0,__csav sub $4,sp mov $sbuf,-2(r5) .3: jsr pc,getchar mov r0,-4(r5) cmp r0,$12 beq .2 tst -4(r5) bgt .4 jsr pc,onhup br .5 .4: mov -2(r5),r0 inc -2(r5) movb -4(r5),(r0) .5: br .3 .2: mov -2(r5),r0 inc -2(r5) clrb (r0) .1: jmp __cret pboard: jsr r0,__csav sub $12,sp clr -10(r5) clr -2(r5) mov $10,-4(r5) .10: mov -4(r5),r0 dec -4(r5) tst r0 beq .7 tst mantom beq .77777 tst mfmt beq .11 .77777: mov -4(r5),(sp) add $61,(sp) jsr pc,sputchar br .12 .11: mov $70,(sp) sub -4(r5),(sp) jsr pc,sputchar .12: mov $40,(sp) jsr pc,sputchar inc -10(r5) mov $10,-6(r5) .14: mov -6(r5),r0 dec -6(r5) tst r0 beq .13 inc -10(r5) mov $40,(sp) jsr pc,sputchar mov -2(r5),r0 inc -2(r5) asl r0 add $board,r0 mov (r0),-12(r5) beq .15 .psect .strn. .16: .byte 153 .byte 161 .byte 162 .byte 142 .byte 156 .byte 160 .byte 40 .byte 120 .byte 116 .byte 102 .byte 122 .byte 121 .byte 113 .byte 0 .psect .prog. mov $.16,r0 add -12(r5),r0 movb 6(r0),r0 mov r0,(sp) jsr pc,sputchar br .17 .15: bit -10(r5),$1 beq .20 mov $52,(sp) jsr pc,sputchar br .21 .20: mov $55,(sp) jsr pc,sputchar .21: .17: br .14 .13: mov $12,(sp) jsr pc,sputchar tst intrp bne .6 .22: br .10 .7: tst mfmt beq .23 .psect .strn. .24: .byte 12 .byte 40 .byte 40 .byte 40 .byte 141 .byte 40 .byte 142 .byte 40 .byte 143 .byte 40 .byte 144 .byte 40 .byte 145 .byte 40 .byte 146 .byte 40 .byte 147 .byte 40 .byte 150 .byte 0 .psect .prog. mov $.24,(sp) jsr pc,printf br .25 .23: .psect .strn. .26: .byte 12 .byte 40 .byte 40 .byte 40 .byte 161 .byte 40 .byte 161 .byte 40 .byte 161 .byte 40 .byte 161 .byte 40 .byte 153 .byte 40 .byte 153 .byte 40 .byte 153 .byte 40 .byte 153 .byte 12 .byte 40 .byte 40 .byte 40 .byte 162 .byte 40 .byte 156 .byte 40 .byte 142 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 142 .byte 40 .byte 156 .byte 40 .byte 162 .byte 0 .psect .prog. mov $.26,(sp) jsr pc,printf .25: .psect .strn. .27: .byte 12 .byte 0 .psect .prog. mov $.27,(sp) jsr pc,printf .6: jmp __cret out1: jsr r0,__csav .psect .strn. .31: .byte 45 .byte 144 .byte 56 .byte 40 .byte 0 .psect .prog. mov moveno,(sp) mov $.31,-(sp) jsr pc,printf tst (sp)+ tst mantom beq .32 .psect .strn. .33: .byte 56 .byte 56 .byte 56 .byte 40 .byte 0 .psect .prog. mov $.33,(sp) jsr pc,printf .32: mov 12(r5),(sp) jsr pc,out mov $12,(sp) jsr pc,sputchar .30: jmp __cret out: jsr r0,__csav sub $10,sp mov $10,-(sp) mov 12(r5),-(sp) .globl asr_i jsr pc,asr_i cmp (sp)+,(sp)+ mov r0,-2(r5) mov 12(r5),r0 bic $177400,r0 mov r0,-4(r5) tst mfmt beq .35 mov -2(r5),(sp) jsr pc,algco mov -4(r5),(sp) jsr pc,algco br .34 .35: tst mantom beq .77776 mov 12(r5),(sp) jsr pc,bmove br .77775 .77776: mov 12(r5),(sp) jsr pc,wmove .77775: clr r0 mov r0,-10(r5) mov r0,-6(r5) mov amp,r0 mov -2(r0),r0 br .37 .40: .41: mov -4(r5),r0 asl r0 add $board,r0 mov (r0),r0 mov r0,(sp) jsr pc,stdp .42: mov $57,(sp) jsr pc,sputchar mov -2(r5),(sp) jsr pc,stdb mov amp,r0 tst -4(r0) beq .43 mov $170,(sp) jsr pc,sputchar mov amp,r0 mov -4(r0),(sp) jsr pc,stdp mov $57,(sp) jsr pc,sputchar br .44 .43: mov $55,(sp) jsr pc,sputchar .44: mov -4(r5),(sp) jsr pc,stdb br .36 .45: mov $157,(sp) jsr pc,sputchar mov $55,(sp) jsr pc,sputchar .46: mov $157,(sp) jsr pc,sputchar mov $55,(sp) jsr pc,sputchar mov $157,(sp) jsr pc,sputchar br .36 .47: mov $1,-6(r5) mov $160,(sp) jsr pc,sputchar br .42 .50: mov $1,-10(r5) mov $160,(sp) jsr pc,sputchar br .42 .37: cmp r0,$5 bhi .36 asl r0 jmp *.77774(r0) .77774: .word .40 .word .41 .word .46 .word .45 .word .47 .word .50 .36: tst -10(r5) beq .51 mov $50,(sp) jsr pc,sputchar mov $161,(sp) jsr pc,sputchar mov $51,(sp) jsr pc,sputchar .51: tst -6(r5) beq .52 mov $145,(sp) jsr pc,sputchar mov $160,(sp) jsr pc,sputchar .52: jsr pc,check tst r0 beq .53 mov $53,(sp) jsr pc,sputchar .53: tst mantom beq .77773 jsr pc,bremove br .77772 .77773: jsr pc,wremove .77772: .34: jmp __cret stdp: jsr r0,__csav tst 12(r5) bge .55 mov 12(r5),r0 neg r0 mov r0,12(r5) .55: .psect .strn. .56: .byte 160 .byte 160 .byte 156 .byte 142 .byte 162 .byte 161 .byte 153 .byte 0 .psect .prog. mov $.56,r0 add 12(r5),r0 movb (r0),r0 mov r0,12(r5) mov 12(r5),(sp) jsr pc,sputchar .54: jmp __cret stdb: jsr r0,__csav sub $4,sp mov $10,-(sp) mov 12(r5),-(sp) .globl div_i jsr pc,div_i cmp (sp)+,(sp)+ mov r0,-2(r5) mov $10,-(sp) mov 12(r5),-(sp) .globl mod_i jsr pc,mod_i cmp (sp)+,(sp)+ mov r0,-4(r5) cmp r0,$4 bge .60 mov $161,(sp) jsr pc,sputchar br .61 .60: mov $153,(sp) jsr pc,sputchar mov $7,r0 sub -4(r5),r0 mov r0,-4(r5) .61: .psect .strn. .62: .byte 162 .byte 156 .byte 142 .byte 0 .byte 0 .psect .prog. mov $.62,r0 add -4(r5),r0 movb (r0),r0 mov r0,-4(r5) tst -4(r5) beq .63 mov -4(r5),(sp) jsr pc,sputchar .63: tst mantom beq .77771 mov -2(r5),(sp) add $61,(sp) br .77770 .77771: mov $70,(sp) sub -2(r5),(sp) .77770: jsr pc,sputchar .57: jmp __cret algco: jsr r0,__csav mov $10,-(sp) mov 12(r5),-(sp) .globl mod_i jsr pc,mod_i cmp (sp)+,(sp)+ mov r0,(sp) add $141,(sp) jsr pc,sputchar mov $70,(sp) mov $10,-(sp) mov 12(r5),-(sp) .globl div_i jsr pc,div_i cmp (sp)+,(sp)+ sub r0,(sp) jsr pc,sputchar .64: jmp __cret sputchar: jsr r0,__csav mov 12(r5),r0 br .67 .70: .73: mov $40,(sp) jsr pc,sputchar .72: mov $10,-(sp) mov column,-(sp) .globl mod_i jsr pc,mod_i cmp (sp)+,(sp)+ tst r0 bne .73 .71: br .65 .74: clr column br .66 .75: inc column br .66 .67: sub $11,r0 cmp r0,$1 bhi .75 asl r0 jmp *.77767(r0) .77767: .word .70 .word .74 .66: mov 12(r5),(sp) jsr pc,putchar .65: jmp __cret prtime: jsr r0,__csav .psect .strn. .77: .byte 164 .byte 151 .byte 155 .byte 145 .byte 40 .byte 75 .byte 40 .byte 45 .byte 144 .byte 57 .byte 45 .byte 144 .byte 12 .byte 0 .psect .prog. mov 14(r5),(sp) mov 12(r5),-(sp) mov $.77,-(sp) jsr pc,printf cmp (sp)+,(sp)+ .76: jmp __cret score1: jsr r0,__csav tst intrp bne .100 .101: tst mantom bne .102 cmp moveno,$12 bge .103 mov $40,(sp) jsr pc,sputchar br .104 .103: mov $12,-(sp) mov moveno,-(sp) .globl div_i jsr pc,div_i cmp (sp)+,(sp)+ mov r0,(sp) add $60,(sp) jsr pc,sputchar .104: mov $12,-(sp) mov moveno,-(sp) .globl mod_i jsr pc,mod_i cmp (sp)+,(sp)+ mov r0,(sp) add $60,(sp) jsr pc,sputchar mov $56,(sp) jsr pc,sputchar mov $40,(sp) jsr pc,sputchar br .105 .102: .107: cmp column,$24 bge .106 mov $40,(sp) jsr pc,sputchar br .107 .106: .105: mov 12(r5),(sp) jsr pc,out tst mantom beq .110 mov $12,(sp) jsr pc,sputchar .110: .100: jmp __cret score: jsr r0,__csav tst -(sp) mov $12,(sp) jsr pc,sputchar mov amp,-2(r5) .113: mov amp,r0 cmp -2(r0),$177777 beq .112 tst mantom beq .77766 jsr pc,wremove br .77765 .77766: jsr pc,bremove .77765: jsr pc,decrem br .113 .112: mov -2(r5),(sp) mov $score1,-(sp) jsr pc,posit tst (sp)+ mov $12,(sp) jsr pc,sputchar .111: jmp __cret .globl posit .globl decrem .globl score .globl score1 .globl prtime .globl putchar .globl wremove .globl bremove .globl check .globl stdb .globl stdp .globl wmove .globl bmove .globl algco .globl out .globl out1 .globl printf .globl sputchar .globl pboard .globl onhup .globl getchar .globl rline .globl sbuf .globl ambuf .globl lmbuf .globl board .globl dir .globl ipval .globl pval .globl edge .globl column .globl wkpos .globl bkpos .globl eppos .globl flag .globl depth .globl mfmt .globl ivalue .globl value .globl ply .globl mantom .globl lastmov .globl sbufp .globl amp .globl lmp .globl abmove .globl game .globl gval .globl moveno .globl intrp .globl matflg .globl manflg .globl bookp .globl bookf .globl mdepth .globl qdepth .globl testf .globl clktim .globl control .globl bheur .globl wheur .globl center .globl attacv .globl __csav .globl __cret .psect .prog. .even .psect .data. .even .psect .mwcn. .even .psect .prof. .even