90 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
#ifdef lword
 | 
						|
#define word 4
 | 
						|
#define	wrd	#4
 | 
						|
#define wmu #2
 | 
						|
#define und	#-0x80000000
 | 
						|
#define ad	add.l
 | 
						|
#define	an	and.l
 | 
						|
#define	asle	asl.l
 | 
						|
#define	asri	asr.l
 | 
						|
#define cl clr.l
 | 
						|
#define	comp	cmp.l
 | 
						|
#define	exor	eor.l
 | 
						|
#define extend	!
 | 
						|
#define	inor	or.l
 | 
						|
#define	lsle	lsl.l
 | 
						|
#define	lsri	lsr.l
 | 
						|
#define nega	neg.l
 | 
						|
#define mov move.l
 | 
						|
#define	nt	not.l
 | 
						|
#define	rotl	rol.l
 | 
						|
#define	rotr	ror.l
 | 
						|
#define	subt	sub.l
 | 
						|
#define testen tst.l
 | 
						|
#define l0 16
 | 
						|
#define l1 20
 | 
						|
#define l2 24
 | 
						|
#define l3 28
 | 
						|
#define l_1 -4
 | 
						|
#define l_2 -8
 | 
						|
#define l_3 -12
 | 
						|
#define l_4 -16
 | 
						|
#define l_5 -20
 | 
						|
#define l_6 -24
 | 
						|
#define l_7 -28
 | 
						|
#define l_8 -32
 | 
						|
#define checksize cmp.l #4,d0 ; beq 4f ; cmp.l #8,d0 ; bne 9f ; bsr no8bar ; \
 | 
						|
9: bra e_oddz
 | 
						|
#else
 | 
						|
#define word 2
 | 
						|
#define	wrd	#2
 | 
						|
#define wmu #1
 | 
						|
#define und	#-0x8000
 | 
						|
#define ad	add.w
 | 
						|
#define	an	and.w
 | 
						|
#define	asle	asl.w
 | 
						|
#define	asri	asr.w
 | 
						|
#define cl clr.w
 | 
						|
#define	comp	cmp.w
 | 
						|
#define	exor	eor.w
 | 
						|
#define extend	ext.l
 | 
						|
#define	inor	or.w
 | 
						|
#define	lsle	lsl.w
 | 
						|
#define	lsri	lsr.w
 | 
						|
#define nega	neg.w
 | 
						|
#define mov move.w
 | 
						|
#define	nt	not.w
 | 
						|
#define	rotl	rol.w
 | 
						|
#define	rotr	ror.w
 | 
						|
#define	subt	sub.w
 | 
						|
#define testen tst.w
 | 
						|
#define l0 16
 | 
						|
#define l1 18
 | 
						|
#define l2 20
 | 
						|
#define l3 22
 | 
						|
#define l_1 -2
 | 
						|
#define l_2 -4
 | 
						|
#define l_3 -6
 | 
						|
#define l_4 -8
 | 
						|
#define l_5 -10
 | 
						|
#define l_6 -12
 | 
						|
#define l_7 -14
 | 
						|
#define l_8 -16
 | 
						|
#define checksize cmp.w #2,d0 ; beq 2f ; cmp.w #4,d0 ; beq 4f ; bra e_oddz
 | 
						|
#endif
 | 
						|
#define  adroff move.b	(a3)+,(a5) ;	move.b	(a3)+,1(a5)
 | 
						|
#define	claimstack	tst.b	-1024(sp)
 | 
						|
#define	locptr	cmp.l	topstack,a0 ;\
 | 
						|
		bhi	7f ;\
 | 
						|
		cmp.l	sp,a0 ;\
 | 
						|
		bcc	6f  
 | 
						|
#define	heaptr	cmp.l	hp,a0 ;\
 | 
						|
		bhi	7f ;\
 | 
						|
		cmp.l	tblmax,a0 ;\
 | 
						|
		bcc	6f
 | 
						|
#define	extptr	cmp.l	globmax,a0 ;\
 | 
						|
		bcc	7f ;\
 | 
						|
		cmp.l	a6,a0 ;\
 | 
						|
		bcc	6f 
 | 
						|
#define checkfsize cmp.w #4,d0 ; beq 4f ; cmp.w #8,d0 ; beq 8f ; bra e_oddz
 | 
						|
 |