55 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.\" $Header$
 | 
						|
.TH 6800_AS 1
 | 
						|
.ad
 | 
						|
.SH NAME
 | 
						|
6800_as \- assembler for Motorola 6800
 | 
						|
.SH SYNOPSIS
 | 
						|
/usr/em/lib/6800_as [options] argument ...
 | 
						|
.SH DESCRIPTION
 | 
						|
This assembler is made with the general framework
 | 
						|
described in \fIuni_ass\fP(6).
 | 
						|
.SH SYNTAX
 | 
						|
.IP registers
 | 
						|
The 6800 has two accumulator registers, A and B. An instruction that refers
 | 
						|
to accumulator A, has an "a" as last character. In the same way a "b" means
 | 
						|
that the instruction uses B as accumulator.
 | 
						|
.IP "addressing modes"
 | 
						|
.nf
 | 
						|
.ta 8n 16n 24n 32n 40n 48n
 | 
						|
syntax		meaning (name)
 | 
						|
 | 
						|
#expr		with cpx, ldx, lds a 2-byte value,
 | 
						|
		otherwise a 1-byte value (immediate)
 | 
						|
 | 
						|
<expr		1-byte address.  Not allowed with:
 | 
						|
		asl, asr, clr, com, dec, inc, lsl, lsr,
 | 
						|
		neg, rol, ror, tst (base page direct)
 | 
						|
 | 
						|
expr		2-byte address (extended direct)
 | 
						|
 | 
						|
expr, x		1-byte expr + contents of x
 | 
						|
		yields address (indexed)
 | 
						|
.fi
 | 
						|
.SH "SEE ALSO"
 | 
						|
uni_ass(6),
 | 
						|
ack(1),
 | 
						|
.br
 | 
						|
A. Osborne, 6800 programming for logic design,
 | 
						|
Adam Osborne and Associates Inc., 1977
 | 
						|
.SH EXAMPLE
 | 
						|
An example of Motorola 6800 assembly code.
 | 
						|
.sp 2
 | 
						|
.nf
 | 
						|
.ta 8n 16n 32n 40n 48n 56n 64n
 | 
						|
	.data
 | 
						|
	val:	0
 | 
						|
	.text
 | 
						|
		ldx	<val
 | 
						|
		com	val, x
 | 
						|
		bhs	someplace	! branch on carry clear
 | 
						|
		sta	<val
 | 
						|
		adda	#18		! add 18 to accumulator A
 | 
						|
.fi
 | 
						|
.SH BUGS
 | 
						|
You have to specify whether an address fits in one byte
 | 
						|
with the token \fI<\fP. It should be done automatically.
 |