42 lines
		
	
	
	
		
			480 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
	
		
			480 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
.sect .text; .sect .rom; .sect .data; .sect .bss
 | 
						|
.sect .text
 | 
						|
sem = 53
 | 
						|
.define	_semctl
 | 
						|
.define	_semget
 | 
						|
.define	_semop
 | 
						|
 | 
						|
_semop:
 | 
						|
	.data2 0x0000
 | 
						|
	pushl	12(ap)
 | 
						|
	pushl	8(ap)
 | 
						|
	pushl	4(ap)
 | 
						|
	pushl	$2
 | 
						|
	calls	$4,Isys1
 | 
						|
	ret
 | 
						|
 | 
						|
_semctl:
 | 
						|
	.data2 0x0000
 | 
						|
	pushl	16(ap)
 | 
						|
	pushl	12(ap)
 | 
						|
	pushl	8(ap)
 | 
						|
	pushl	4(ap)
 | 
						|
	pushl	$1
 | 
						|
	calls	$5,Isys1
 | 
						|
	ret
 | 
						|
 | 
						|
_semget:
 | 
						|
	.data2 0x0000
 | 
						|
	pushl	12(ap)
 | 
						|
	pushl	8(ap)
 | 
						|
	pushl	4(ap)
 | 
						|
	pushl	$0
 | 
						|
	calls	$4,Isys1
 | 
						|
	ret
 | 
						|
 | 
						|
Isys1:
 | 
						|
	.data2 0x0000
 | 
						|
	chmk	$sem
 | 
						|
	bcc	1f
 | 
						|
	jmp	cerror
 | 
						|
1:
 | 
						|
	ret
 |