
*****************************************************************************
*                                                                           *
* Famicon CPU G65SC802 / G65SC816 InstructionSet                            *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            *
* Compiled by Carnivore/BeerMacht on 23-Aug-92 using BeerMon V0.43          *
*                                                                           *
* updated 02/Feb/1993 by Infernal Byte Systems, INC.                        *
* some minor bugs corrected & added just a valid SASM © 1993 by IBS header  *
*                                                                           *
* FreeWare!                                                                 *
*                                                                           *
*****************************************************************************

	heap O=32k

	hrom				;just a little example for hirom
	*=$400000			;assembly...

	sep	#$30			;a,x,y:8bit
	adc	#$12
	adc	$12
	adc	$12,x
	adc	($12)
	adc	($12,x)
	adc	($12),y
	adc	[$12]
	adc	[$12],y
	adc	$1234
	adc	$1234,x
	adc	$1234,y
	adc	$123456
	adc	$123456,x
	adc	$12,s
	adc	($12,s),y
	and	#$12
	and	$12
	and	$12,x
	and	($12)
	and	($12,x)
	and	($12),y
	and	[$12]
	and	[$12],y
	and	$1234
	and	$1234,x
	and	$1234,y
	and	$123456
	and	$123456,x
	and	$12,s
	and	($12,s),y
	asl	a
	asl	$12
	asl	$12,x
	asl	$1234
	asl	$1234,x
	bit	#$12
	bit	$12
	bit	$12,x
	bit	$1234
	bit	$1234,x
	cmp	#$12
	cmp	$12
	cmp	$12,x
	cmp	($12)
	cmp	($12,x)
	cmp	($12),y
	cmp	[$12]
	cmp	[$12],y
	cmp	$1234
	cmp	$1234,x
	cmp	$1234,y
	cmp	$123456
	cmp	$123456,x
	cmp	$12,s
	cmp	($12,s),y
	cpx	#$12
	cpx	$12
	cpx	$1234
	cpy	#$12
	cpy	$12
	cpy	$1234
	dec	a
	dec	$12
	dec	$12,x
	dec	$1234
	dec	$1234,x
	eor	#$12
	eor	$12
	eor	$12,x
	eor	($12)
	eor	($12,x)
	eor	($12),y
	eor	[$12]
	eor	[$12],y
	eor	$1234
	eor	$1234,x
	eor	$1234,y
	eor	$123456
	eor	$123456,x
	eor	$12,s
	eor	($12,s),y
	inc	a
	inc	$12
	inc	$12,x
	inc	$1234
	inc	$1234,x
	lda	#$12
	lda	$12
	lda	$12,x
	lda	($12)
	lda	($12,x)
	lda	($12),y
	lda	[$12]
	lda	[$12],y
	lda	$1234
	lda	$1234,x
	lda	$1234,y
	lda	$123456
	lda	$123456,x
	lda	$12,s
	lda	($12,s),y
	ldx	#$12
	ldx	$12
	ldx	$12,y
	ldx	$1234
	ldx	$1234,y
	ldy	#$12
	ldy	$12
	ldy	$12,x
	ldy	$1234
	ldy	$1234,x
	lsr	$12
	lsr	$12,x
	lsr	$1234
	lsr	$1234,x
	ora	#$12
	ora	$12
	ora	$12,x
	ora	($12)
	ora	($12,x)
	ora	($12),y
	ora	[$12]
	ora	[$12],y
	ora	$1234
	ora	$1234,x
	ora	$1234,y
	ora	$123456
	ora	$123456,x
	ora	$12,s
	ora	($12,s),y
	rol	a
	rol	$12
	rol	$12,x
	rol	$1234
	rol	$1234,x
	ror	a
	ror	$12
	ror	$12,x
	ror	$1234
	ror	$1234,x
	sbc	#$12
	sbc	$12
	sbc	$12,x
	sbc	($12)
	sbc	($12,x)
	sbc	($12),y
	sbc	[$12]
	sbc	[$12],y
	sbc	$1234
	sbc	$1234,x
	sbc	$1234,y
	sbc	$123456
	sbc	$123456,x
	sbc	$12,s
	sbc	($12,s),y
	sta	$12
	sta	$12,x
	sta	($12)
	sta	($12,x)
	sta	($12),y
	sta	[$12]
	sta	[$12],y
	sta	$1234
	sta	$1234,x
	sta	$1234,y
	sta	$123456
	sta	$123456,x
	sta	$12,s
	sta	($12,s),y
	stx	$12
	stx	$12,y
	stx	$1234
	sty	$12
	sty	$12,x
	sty	$1234
	stz	$12
	stz	$12,x
	stz	$1234
	stz	$1234,x
	trb	$12
	trb	$1234
	tsb	$12
	tsb	$1234
	rep	#$30			;a,x,y:16bit
	adc	#$1234
	and	#$1234
	bit	#$1234
	cmp	#$1234
	cpx	#$1234
	cpy	#$1234
	eor	#$1234
	lda	#$1234
	ldx	#$1234
	ldy	#$1234
	ora	#$1234
	sbc	#$1234
	sep	#$30			;a,x,y:8bit
	bcc	$4001e5
	bcs	$4001e5
	beq	$4001e5
	bmi	$4001e5
	bne	$4001e5
	bpl	$4001e5
	bra	$4001e5
	bvc	$4001e5
	bvs	$4001e5
	clc
	cld
	cli
	clv
	dex
	dey
	inx
	iny
	nop
	pea	$1234
	pei	($12)
	per	$400205
	pha
	phb
	phd
	phk
	php
	phx
	phy
	pla
	plb
	pld
	plp
	plx
	ply
	sec
	sed
	sei
	tax
	tay
	tcd
	tdc
	tsc
	tsx
	txa
	txs
	txy
	tya
	xce
	brk	#$12
	brl	$400225
	cop	#$12
	jmp	($1234)
	jmp	$1234
	jmp	($1234,x)
	jml	($1234)
	jml	$123456
	jsl	$123456
	jsr	$1234
	jsr	($1234,x)
	mvn	#$12,#$34
	mvp	#$12,#$34
	rep	#$30
	rti
	rtl
	rts
	sep	#$30			;a,x,y:8bit
	stp
	wai
	xba
