	GET	hdr.support


	AREA	|!!!Module$$Header|, CODE, READONLY

	IMPORT	swi_handler
	IMPORT	|Image$$RO$$Limit|


	&	0
	&	init
	&	0
	&	0
	&	title
	&	help
	&	0
	&	&9FFC0
	&	swi
	&	swilist
	&	0
	&	0
help	=	"MDWOpt",9,9,"0.03 (20 Apr 1999)",0
title
swilist	=	"MDWOpt",0
	=	"InitArgs",0
	=	"ReadArgs",0
	=	"ParseCommandString",0
	=	"AddLongOption",0
	=	"ReconstituteCommandString",0
	=	0
	ALIGN

init	STMFD	sp!,{r7-r11,lr}
 [ :DEF: __RELOCATE__
	LDR	r0,=swi_handler
	LDR	r1,=|Image$$RO$$Limit|
	CMP	r0,r1
	BLLO	__RelocCode_Call
 ]
	MOV	r0,#6
	MOV	r3,#RMA_block
	SWI	XOS_Module
	STRVC	r2,[r12]
	LDMFD	sp!,{r7-r11,pc}

 [ :DEF: __RELOCATE__
	IMPORT	__RelocCode
__RelocCode_Call
	ADR	r0,|!!!Module$$Header$$Base|+&30
	LDMDB	r0!,{r1-r8}
	STMDB	r13!,{r1-r8,r14}
	LDMDB	r0!,{r1-r4}
	STMDB	r13!,{r1-r4}
	BL	__RelocCode
	ADR	r0,|!!!Module$$Header$$Base|
	LDMIA	r13!,{r1-r4}
	STMIA	r0!,{r1-r4}
	LDMIA	r13!,{r1-r8}
	STMIA	r0!,{r1-r8}
	LDMIA	r13!,{pc}^
 ]

swi	STMFD	sp!,{r0-r9,lr}
	MOV	sl,sp,LSR #20
	MOV	sl,sl,LSL #20
	LDR	v1,[sl]
	MOV	a1,r11
	MOV	a2,sp
	LDR	a3,[r12]
	MOV	fp,#0
	STR	a3,[sl]
	BL	swi_handler
	STR	v1,[sl]
	MOVS	ip,a1
	LDMFD	sp!,{r0-r9,lr}
	BICEQS	pc,lr,#1<<28
	MOV	r0,ip
	ORRS	pc,lr,#1<<28


	END
