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

📄 ctrl.s

📁 操作系统SunOS 4.1.3版本的源码
💻 S
字号:
        .data        .asciz  "@(#)ctrl.s 1.1 92/07/30 Copyr 1984 Sun Micro"        .even        .text				|       Copyright (c) 1984 by Sun Microsystems, Inc.#	attack(int)## list pieces controlling a square.globl	_attack.globl	_dir, _board.globl	_attacvnone	= 12345uleft	= 04040uright	= 04004dleft	= 00440dright	= 00404left	= 00040right	= 00004up	= 04000down	= 00400u2r1	= 06004u1r2	= 04006d1r2	= 00406d2r1	= 00604d2l1	= 00640d1l2	= 00460u1l2	= 04060u2l1	= 06040# r0 -> d0# r1 -> d1# r4 -> a4# r5 -> a5atmp = a0dtmp = d2_attack:	movw	sp@(6),d0		| mov	2(sp),r0	aslw	#1,d0			| asl	r0	extl	d0			|	for future use	movl	#_attacv,a4		| mov	$_attacv,r4	jsr	patt			| jsr	r5,patt	.word	u2r1, -15*2, 2, -2	jsr	patt			| jsr	r5,patt	.word	u1r2, -6*2, 2, -2	jsr	patt			| jsr	r5,patt	.word	d2r1, 17*2, 2, -2	jsr	patt			| jsr	r5,patt	.word	d2l1, 15*2, 2, -2	jsr	patt			| jsr	r5,patt	.word	d1l2, 6*2, 2, -2	jsr	patt			| jsr	r5,patt	.word	u1l2, -10*2, 2, -2	jsr	patt			| jsr	r5,patt	.word	u2l1, -17*2, 2, -2	jsr	satt			| jsr	r5,satt	.word	uleft, -9*2, 1, 3, -3, 5, -5	jsr	satt			| jsr	r5,satt	.word	uright, -7*2, 1, 3, -3, 5, -5	jsr	satt			| jsr	r5,satt	.word	dleft, 7*2, -1, 3, -3, 5, -5	jsr	satt			| jsr	r5,satt	.word	dright, 9*2, -1, 3, -3, 5, -5	jsr	satt			| jsr	r5,satt	.word	up, -8*2, none, 4, -4, 5, -5	jsr	satt			| jsr	r5,satt	.word	left, -1*2, none, 4, -4, 5, -5	jsr	satt			| jsr	r5,satt	.word	right, 1*2, none, 4, -4, 5, -5	jsr	satt			| jsr	r5,satt	.word	down, 8*2, none, 4, -4, 5, -5	clrw	a4@+			| clr	(r4)+	rts				| rts	pcpatt:	movl	sp@,a5			|	implicit in pdp-11 jsr	movl	d0,atmp			|	ok, because did extl on d0	addl	#_dir,atmp	movw	atmp@,dtmp	andw	a5@+,dtmp		| bit	(r5)+,_dir(r0)	bne	1f			| bne	1f	movw	d0,d1			| mov	r0,r1	addw	a5@+,d1			| add	(r5)+,r1	jsr	look			| jsr	pc,look	jsr	look			| jsr	pc,look	movl	a5,sp@	rts				| rts	r51:	addw	#6,a5			| add	$6,r5	movl	a5,sp@	rts				| rts	r5satt:	movl	sp@,a5			|	implicit in pdp-11 jsr	movl	a5,sp@-			| mov	r5,-(sp)	movl	d0, atmp		|	ok, because did extl on d0	addl	#_dir,atmp	movw	atmp@,dtmp	andw	a5@+,dtmp		| bit	r5@+,_dir(r0)	bne	1f			| bne	1f	movw	d0,d1			| mov	r0,r1	addw	a5@+,d1			| add	(r5)+,r1	jsr	look			| jsr	pc,look		/ pawn	movw	d0,d1			| mov	r0,r12:	movl	sp@,a5			| mov	(sp),r5	extl	d1	movl	d1,atmp	addl	#_dir,atmp	movw	atmp@,dtmp	andw	a5@+,dtmp		| bit	(r5)+,_dir(r1)	bne	1f			| bne	1f	addw	a5@+,d1			| add	(r5)+,r1		extl	d1	movl	d1,atmp	addl	#_board,atmp	tstw	atmp@			| tst	_board(r1)	beq	2b			| beq	2b	tstw	a5@+			| tst	(r5)+	movl	a4,sp@-			| mov	r4,-(sp)	jsr	look			| jsr	pc,look	jsr	look			| jsr	pc,look	jsr	look			| jsr	pc,look	jsr	look			| jsr	pc,look	cmpl	sp@+,a4			| cmp	(sp)+,r4	bne	2b			| bne	2b1:	movl	sp@+,a5			| mov	(sp)+,r5	addl	#14,a5			| add	$14.,r5	movl	a5,sp@	rts				| rts	r5look:	extl	d1	movl	d1,atmp	addl	#_board,atmp	movw	atmp@,dtmp	cmpw	a5@+,dtmp		| cmp	(r5)+,_board(r1)	bne	1f			| bne	1f	movw	a5@(-2),a4@+		| mov	-2(r5),(r4)+1:	rts				| rts	pc

⌨️ 快捷键说明

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