84 lines
		
	
	
	
		
			973 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
	
		
			973 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
.define EARRAY,ERANGE,EILLINS,EILLSIZE,ECASE,EMON,EHEAP
 | 
						|
.define hol0,trapproc,trpim,argv,hp,.reghp,envp,begbss,ignmask
 | 
						|
.define savebc,savede,savehl,saveix,saveaf,saveiy,ebadmon
 | 
						|
.sect .text
 | 
						|
.sect .rom
 | 
						|
.sect .data
 | 
						|
.sect .bss
 | 
						|
.sect .text
 | 
						|
   EARRAY = 0
 | 
						|
   ERANGE = 1
 | 
						|
   EHEAP = 17
 | 
						|
   EILLINS=18
 | 
						|
   EILLSIZE=19
 | 
						|
   ECASE=20
 | 
						|
   EMON=25
 | 
						|
   ebadmon=25
 | 
						|
 | 
						|
 | 
						|
.sect .text
 | 
						|
 | 
						|
				! clear .sect .bss
 | 
						|
	ld sp,0x7ffe		!address of fbase
 | 
						|
	ld de,endbss
 | 
						|
	ld h,d
 | 
						|
	ld l,e
 | 
						|
	ld bc,begbss
 | 
						|
	sbc hl,bc
 | 
						|
	ld a,h
 | 
						|
	or l
 | 
						|
	jr z,1f
 | 
						|
2:
 | 
						|
	xor a
 | 
						|
	ld (de),a
 | 
						|
	dec de
 | 
						|
	dec hl
 | 
						|
	ld a,h
 | 
						|
	or l
 | 
						|
	jr nz,2b
 | 
						|
1:				! hl == 0
 | 
						|
 | 
						|
	ld bc,envp
 | 
						|
	push bc
 | 
						|
	ld bc,argv
 | 
						|
	push bc
 | 
						|
	ld bc,1
 | 
						|
	push bc
 | 
						|
	call __m_a_i_n
 | 
						|
 | 
						|
	jp 0x20
 | 
						|
 | 
						|
.sect .bss
 | 
						|
begbss:
 | 
						|
.sect .data
 | 
						|
hol0:
 | 
						|
	.data2 0,0
 | 
						|
	.data2 0,0
 | 
						|
saveaf:
 | 
						|
	.data2 0
 | 
						|
savebc:
 | 
						|
	.data2 0
 | 
						|
savede:
 | 
						|
	.data2 0
 | 
						|
savehl:
 | 
						|
	.data2 0
 | 
						|
saveix:
 | 
						|
	.data2 0
 | 
						|
saveiy:
 | 
						|
	.data2 0
 | 
						|
ignmask:
 | 
						|
	.data2 0
 | 
						|
hp:
 | 
						|
	.data2 0
 | 
						|
trapproc:
 | 
						|
	.data2 0
 | 
						|
trpim:
 | 
						|
	.data2 0
 | 
						|
argv:
 | 
						|
	.data2 3f
 | 
						|
envp:
 | 
						|
	.data2 0
 | 
						|
3:
 | 
						|
	.asciz 'PROGRAM'
 | 
						|
.reghp:
 | 
						|
	.data2 endbss
 |