⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bgen.s

📁 unix v7是最后一个广泛发布的研究型UNIX版本
💻 S
字号:
/ generate moves.globl	_bgen.globl	_pval, _board, _dir.globl	_flag, _lmp, _bkpos.globl	_eppos.globl	_valueuleft	= 04040uright	= 04004dleft	= 00440dright	= 00404left	= 00040right	= 00004up	= 04000down	= 00400u2r1	= 06004u1r2	= 04006d1r2	= 00406d2r1	= 00604d2l1	= 00640d1l2	= 00460u1l2	= 04060u2l1	= 06040rank2	= 00200rank7	= 02000_bgen:	mov	$_dir+126.,r4	mov	$_board+126.,r3	mov	_lmp,r2	mov	$63.,r10:	mov	(r3),r0	ble	1f	asl	r0	jmp	*2f-2(r0)2:	pawn	knight	bishop	rook	queen	kingpawn:	bit	$dleft,(r4)	bne	2f	tst	2*7.(r3)	bge	3f	jsr	r5,btry; 0; 7.*23:	mov	r1,r0	add	$7,r0	cmp	r0,_eppos	bne	2f	jsr	r5,btry; 0; -1*22:	bit	$dright,(r4)	bne	2f	tst	9.*2(r3)	bge	3f	jsr	r5,btry; 0; 2*9.3:	mov	r1,r0	add	$9,r0	cmp	r0,_eppos	bne	2f	jsr	r5,btry; 0; 2*12:	tst	2*8.(r3)	bne	1f	jsr	r5,btry; 0; 2*8.	bit	$rank7,(r4)	beq	1f	tst	2*16.(r3)	bne	1f	jsr	r5,btry; 0; 16.*2	br	1fknight:	jsr	r5,btry; u2r1; -15.*2	jsr	r5,btry; u1r2; -6.*2	jsr	r5,btry; d1r2; 10.*2	jsr	r5,btry; d2r1; 17.*2	jsr	r5,btry; d2l1; 15.*2	jsr	r5,btry; d1l2; 6.*2	jsr	r5,btry; u1l2; -10.*2	jsr	r5,btry; u2l1; -17.*2	br	1f1:	cmp	-(r4),-(r3)	dec	r1	bpl	0b	mov	r2,_lmp	rts	pcbishop:	jsr	r5,bslide; uleft; -9.*2	jsr	r5,bslide; uright; -7.*2	jsr	r5,bslide; dleft; 7.*2	jsr	r5,bslide; dright; 9.*2	br	1brook:	jsr	r5,bslide; up; -8.*2	jsr	r5,bslide; down; 8.*2	jsr	r5,bslide; left; -1.*2.	jsr	r5,bslide; right; 1.*2	br	1bqueen:	jsr	r5,bslide; uleft; -9.*2	jsr	r5,bslide; uright; -7.*2	jsr	r5,bslide; dleft; 7.*2	jsr	r5,bslide; dright; 9.*2	jsr	r5,bslide; up; -8.*2	jsr	r5,bslide; left; -1.*2	jsr	r5,bslide; right; 1.*2	jsr	r5,bslide; down; 8.*2	br	1bking:	jsr	r5,btry; uleft; -9.*2	jsr	r5,btry; uright; -7.*2	jsr	r5,btry; dleft; 7.*2	jsr	r5,btry; dright; 9.*2	jsr	r5,btry; up; -8.*2	jsr	r5,btry; left; -1.*2	jsr	r5,btry; right; 1.*2	jsr	r5,btry; down; 8.*2	br	1bbtry:	bit	(r5)+,(r4)	bne	1f	mov	r3,r0	add	(r5),r0	mov	(r0),r0	bgt	1f	asl	r0	mov	_pval+12.(r0),(r2)	sub	_value,(r2)+	mov	(r5)+,r0	asr	r0	add	r1,r0	movb	r0,(r2)+	movb	r1,(r2)+	rts	r51:	tst	(r5)+	rts	r5bslide:	mov	r4,-(sp)	mov	r3,-(sp)1:	bit	(r5)+,(r4)	bne	1f	add	(r5),r3	add	(r5),r4	mov	(r3),r0	bgt	1f	blt	2f	clr	(r2)	sub	_value,(r2)+	mov	r3,r0	sub	$_board,r0	asr	r0	movb	r0,(r2)+	movb	r1,(r2)+	tst	-(r5)	br	1b2:	asl	r0	mov	_pval+12.(r0),(r2)	sub	_value,(r2)+	mov	r3,r0	sub	$_board,r0	asr	r0	movb	r0,(r2)+	movb	r1,(r2)+1:	tst	(r5)+	mov	(sp)+,r3	mov	(sp)+,r4	rts	r5

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -