File:  [CSRG BSD Unix] / 40BSD / cmd / px / 20con.s
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:12:53 2018 UTC (8 years, 1 month ago) by root
Branches: MAIN, BSD
CVS tags: HEAD, BSD40
BSD 4.0

#
# Copyright (c) 1979 Regents of the University of California
#
# char sccsid[] = "@(#)20con.s 4.1 10/10/80";
#
# CONOPS
#
_CON1:
	cvtbw	(r10)+,-(sp)
	jmp	(r8)
_CON14:
	cvtbl	(r10)+,-(sp)
	jmp	(r8)
_CON2:
	incl	r10
	movw	(r10)+,-(sp)
	jmp	(r8)
_CON24:
	incl	r10
	cvtwl	(r10)+,-(sp)
	jmp	(r8)
_CON4:
	incl	r10
	pushl	(r10)+
	jmp	(r8)
_CON8:
	incl	r10
	movd	(r10)+,-(sp)
	jmp	(r8)
_CON:
	cvtbl	(r10)+,r0
	bneq	l2001
	movzwl	(r10)+,r0	#r0 has length to be moved
l2001:
	movl	r10,r1		#r1 has addr of data to be moved
	movl	r0,r2		#r2 has length of stack space
	blbc	r2,l2002
	incl	r2
l2002:
	subl2	r2,sp		#allocate stack space
	addl2	r2,r10		#advance over data
	movc5	r0,(r1),$0,r2,(sp)   #move string to stack
	jmp	(r8)
_LVCON:
	cvtbl	(r10)+,r0	#r0 has literal string length
	bneq	l2003
	movzwl	(r10)+,r0
l2003:
	pushl	r10		#address of literal
	addl2	r0,r10		#jump over literal
	jmp	(r8)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.