Index: trunk/minix/lib/i386/rts/Makedepend-ack
===================================================================
--- trunk/minix/lib/i386/rts/Makedepend-ack	(revision 9)
+++ 	(revision )
@@ -1,10 +1,0 @@
-depend-ack:
-	rm .depend-ack
-	touch .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' __sigreturn.s | sed -e 's:^\(.\):../../obj-ack//./i386/rts/\1:' >> .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' _ipc.s | sed -e 's:^\(.\):../../obj-ack//./i386/rts/\1:' >> .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' _ipcnew.s | sed -e 's:^\(.\):../../obj-ack//./i386/rts/\1:' >> .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' brksize.s | sed -e 's:^\(.\):../../obj-ack//./i386/rts/\1:' >> .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' crtso.s | sed -e 's:^\(.\):../../obj-ack/\1:' >> .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' m2rtso.s | sed -e 's:^\(.\):../../obj-ack/\1:' >> .depend-ack
-	mkdep 'cc -O -D_MINIX -D_POSIX_SOURCE -E' prtso.s | sed -e 's:^\(.\):../../obj-ack/\1:' >> .depend-ack
Index: trunk/minix/lib/i386/rts/Makedepend-gnu
===================================================================
--- trunk/minix/lib/i386/rts/Makedepend-gnu	(revision 9)
+++ 	(revision )
@@ -1,10 +1,0 @@
-depend-gnu:
-	rm .depend-gnu
-	touch .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' __sigreturn.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/./i386/rts/\1:' >> .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' _ipc.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/./i386/rts/\1:' >> .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' _ipcnew.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/./i386/rts/\1:' >> .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' brksize.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/./i386/rts/\1:' >> .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' crtso.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/\1:' >> .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' m2rtso.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/\1:' >> .depend-gnu
-	mkdep 'gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I.' prtso.s | sed -e '/<built-in>/d' -e '/<command line>/d' -e 's:^\(.\):../../obj-gnu/\1:' >> .depend-gnu
Index: trunk/minix/lib/i386/rts/Makefile
===================================================================
--- trunk/minix/lib/i386/rts/Makefile	(revision 9)
+++ 	(revision )
@@ -1,113 +1,0 @@
-#Generated from ./i386/rts/Makefile.in
-all: all-ack
-
-all-ack:
-all-gnu:
-
-makefiles: Makefile
-Makedepend-ack Makedepend-gnu: 
-	sh ../../generate.sh ./i386/rts ../../obj-ack/ ../../obj-gnu
-
-Makefile: Makefile.in Makedepend-ack Makedepend-gnu
-	sh ../../generate.sh ./i386/rts ../../obj-ack/ ../../obj-gnu
-	@echo
-	@echo *Attention*
-	@echo Makefile is regenerated... rerun command to see changes
-	@echo *Attention*
-	@echo
-
-depend: depend-ack
-all-ack: ../../obj-ack//libc.a
-
-../../obj-ack//libc.a: ../../obj-ack//libc.a(__sigreturn.o)
-../../obj-ack//libc.a: ../../obj-ack//libc.a(_ipc.o)
-../../obj-ack//libc.a: ../../obj-ack//libc.a(_ipcnew.o)
-../../obj-ack//libc.a: ../../obj-ack//libc.a(brksize.o)
-
-../../obj-ack//libc.a:
-	ar cr ../../obj-ack//libc.a ../../obj-ack//./i386/rts/*.o
-	rm ../../obj-ack//./i386/rts/*.o
-
-../../obj-ack//libc.a(__sigreturn.o): __sigreturn.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/__sigreturn.o __sigreturn.s
-../../obj-ack//libc.a(_ipc.o): _ipc.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/_ipc.o _ipc.s
-../../obj-ack//libc.a(_ipcnew.o): _ipcnew.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/_ipcnew.o _ipcnew.s
-../../obj-ack//libc.a(brksize.o): brksize.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/brksize.o brksize.s
-
-all-gnu: ../../obj-gnu/libc.a
-
-../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/__sigreturn.o
-../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/_ipc.o
-../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/_ipcnew.o
-../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/brksize.o
-
-../../obj-gnu/libc.a:
-	gar cr ../../obj-gnu/libc.a $?
-
-../../obj-gnu/./i386/rts/__sigreturn.o: __sigreturn.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. __sigreturn.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/__sigreturn.s.gnu || true
-	gas -o ../../obj-gnu/./i386/rts/__sigreturn.o ../../obj-gnu/./i386/rts/__sigreturn.s.gnu
-
-../../obj-gnu/./i386/rts/_ipc.o: _ipc.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. _ipc.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/_ipc.s.gnu || true
-	gas -o ../../obj-gnu/./i386/rts/_ipc.o ../../obj-gnu/./i386/rts/_ipc.s.gnu
-
-../../obj-gnu/./i386/rts/_ipcnew.o: _ipcnew.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. _ipcnew.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/_ipcnew.s.gnu || true
-	gas -o ../../obj-gnu/./i386/rts/_ipcnew.o ../../obj-gnu/./i386/rts/_ipcnew.s.gnu
-
-../../obj-gnu/./i386/rts/brksize.o: brksize.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. brksize.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/brksize.s.gnu || true
-	gas -o ../../obj-gnu/./i386/rts/brksize.o ../../obj-gnu/./i386/rts/brksize.s.gnu
-
-
-
-all-ack: ../../obj-ack//crtso.o
-
-../../obj-ack//crtso.o: crtso.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//crtso.o crtso.s
-
-all-gnu: ../../obj-gnu/crtso.o
-
-../../obj-gnu/crtso.o: crtso.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. crtso.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/crtso.s.gnu || true
-	gas -o ../../obj-gnu/crtso.o ../../obj-gnu/./i386/rts/crtso.s.gnu
-
-
-all-ack: ../../obj-ack//m2rtso.o
-
-../../obj-ack//m2rtso.o: m2rtso.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//m2rtso.o m2rtso.s
-
-all-gnu: ../../obj-gnu/m2rtso.o
-
-../../obj-gnu/m2rtso.o: m2rtso.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. m2rtso.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/m2rtso.s.gnu || true
-	gas -o ../../obj-gnu/m2rtso.o ../../obj-gnu/./i386/rts/m2rtso.s.gnu
-
-
-all-ack: ../../obj-ack//prtso.o
-
-../../obj-ack//prtso.o: prtso.s
-	cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//prtso.o prtso.s
-
-all-gnu: ../../obj-gnu/prtso.o
-
-../../obj-gnu/prtso.o: prtso.s
-	gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. prtso.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/prtso.s.gnu || true
-	gas -o ../../obj-gnu/prtso.o ../../obj-gnu/./i386/rts/prtso.s.gnu
-
-
-
-clean::
-	rm -f ../../obj-ack//./i386/rts/*
-	rm -f ../../obj-gnu/./i386/rts/*
-
-include Makedepend-ack
-include .depend-ack
-
-include Makedepend-gnu
-include .depend-gnu
Index: trunk/minix/lib/i386/rts/Makefile.in
===================================================================
--- trunk/minix/lib/i386/rts/Makefile.in	(revision 9)
+++ 	(revision )
@@ -1,18 +1,0 @@
-# Makefile for lib/i386/rts.
-
-CFLAGS="-O -D_MINIX -D_POSIX_SOURCE"
-
-LIBRARIES=libc
-
-libc_FILES=" \
-	__sigreturn.s \
-	_ipc.s \
-	_ipcnew.s \
-	brksize.s"
-	
-STARTFILES="\
-	crtso.s \
-	m2rtso.s \
-	prtso.s"
-
-TYPE=both
Index: trunk/minix/lib/i386/rts/__sigreturn.s
===================================================================
--- trunk/minix/lib/i386/rts/__sigreturn.s	(revision 9)
+++ 	(revision )
@@ -1,10 +1,0 @@
-! This routine is the low-level code for returning from signals.  
-! It calls __sigreturn, which is the normal "system call" routine.
-! Both ___sigreturn and __sigreturn are needed.
-.sect .text; .sect .rom; .sect .data; .sect .bss
-.sect .text
-.define ___sigreturn
-.extern __sigreturn
-___sigreturn:
-	add esp, 16
-	jmp __sigreturn
Index: trunk/minix/lib/i386/rts/_ipc.s
===================================================================
--- trunk/minix/lib/i386/rts/_ipc.s	(revision 9)
+++ 	(revision )
@@ -1,79 +1,0 @@
-.sect .text; .sect .rom; .sect .data; .sect .bss
-.define __echo, __notify, __send, __receive, __sendrec 
-
-! See src/kernel/ipc.h for C definitions
-SEND = 1
-RECEIVE = 2
-SENDREC = 3 
-NOTIFY = 4
-ECHO = 8
-SYSVEC = 33			! trap to kernel 
-
-SRC_DST = 8			! source/ destination process 
-ECHO_MESS = 8			! echo doesn't have SRC_DST 
-MESSAGE = 12			! message pointer 
-
-!*========================================================================*
-!                           IPC assembly routines			  *
-!*========================================================================*
-! all message passing routines save ebp, but destroy eax and ecx.
-.define __echo, __notify, __send, __receive, __sendrec 
-.sect .text
-__send:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! eax = dest-src
-	mov	ebx, MESSAGE(ebp)	! ebx = message pointer
-	mov	ecx, SEND		! _send(dest, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__receive:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! eax = dest-src
-	mov	ebx, MESSAGE(ebp)	! ebx = message pointer
-	mov	ecx, RECEIVE		! _receive(src, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__sendrec:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! eax = dest-src
-	mov	ebx, MESSAGE(ebp)	! ebx = message pointer
-	mov	ecx, SENDREC		! _sendrec(srcdest, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__notify:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! ebx = destination 
-	mov	ecx, NOTIFY		! _notify(srcdst)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__echo:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	ebx, ECHO_MESS(ebp)	! ebx = message pointer
-	mov	ecx, ECHO		! _echo(srcdest, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
Index: trunk/minix/lib/i386/rts/_ipcnew.s
===================================================================
--- trunk/minix/lib/i386/rts/_ipcnew.s	(revision 9)
+++ 	(revision )
@@ -1,75 +1,0 @@
-.sect .text; .sect .rom; .sect .data; .sect .bss
-.define __ipc_request, __ipc_reply, __ipc_notify, __ipc_receive
-
-! See src/kernel/ipc.h for C definitions.
-IPC_REQUEST = 16		! each gets a distinct bit
-IPC_REPLY = 32
-IPC_NOTIFY = 64
-IPC_RECEIVE = 128
-
-SYSVEC = 33			! trap to kernel 
-
-! Offsets of arguments relative to stack pointer.
-SRC_DST = 8			! source/ destination process 
-SEND_MSG = 12			! message pointer for sending 
-EVENT_SET = 12			! notification event set 
-RECV_MSG = 16			! message pointer for receiving 
-
-
-!*========================================================================*
-!                           IPC assembly routines			  *
-!*========================================================================*
-! all message passing routines save ebp, but destroy eax, ecx, and edx.
-.define __ipc_request, __ipc_reply, __ipc_notify, __ipc_receive
-.sect .text
-
-__ipc_request:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! eax = destination
-	mov	ebx, SEND_MSG(ebp)	! ebx = message pointer
-	mov	ecx, IPC_REQUEST	! _ipc_request(dst, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__ipc_reply:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! eax = destination
-	mov	ebx, SEND_MSG(ebp)	! ebx = message pointer
-	mov	ecx, IPC_REPLY		! _ipc_reply(dst, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__ipc_receive:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! eax = source
-	mov	edx, EVENT_SET(ebp)	! ebx = event set
-	mov	ebx, RCV_MSG(ebp)	! ebx = message pointer
-	mov	ecx, IPC_RECEIVE	! _ipc_receive(src, events, ptr)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-__ipc_notify:
-	push	ebp
-	mov	ebp, esp
-	push	ebx
-	mov	eax, SRC_DST(ebp)	! ebx = destination 
-	mov	edx, EVENT_SET(ebp)	! edx = event set 
-	mov	ecx, IPC_NOTIFY		! _ipc_notify(dst, events)
-	int	SYSVEC			! trap to the kernel
-	pop	ebx
-	pop	ebp
-	ret
-
-
Index: trunk/minix/lib/i386/rts/brksize.s
===================================================================
--- trunk/minix/lib/i386/rts/brksize.s	(revision 9)
+++ 	(revision )
@@ -1,5 +1,0 @@
-.sect .text; .sect .rom; .sect .data; .sect .bss
-.define __brksize
-.sect .data
-.extern endbss, __brksize
-__brksize: .data4 endbss
Index: trunk/minix/lib/i386/rts/crtso.s
===================================================================
--- trunk/minix/lib/i386/rts/crtso.s	(revision 9)
+++ 	(revision )
@@ -1,72 +1,0 @@
-! This is the C run-time start-off routine.  It's job is to take the
-! arguments as put on the stack by EXEC, and to parse them and set them up the
-! way _main expects them.
-! It also initializes _environ when this variable isn't defined by the
-! programmer.  The detection of whether _environ belong to us is rather
-! simplistic.  We simply check for some magic value, but there is no other
-! way.
-
-.sect .text; .sect .rom; .sect .data; .sect .bss
-
-.define begtext, begdata, begbss
-.sect .text
-begtext:
-.sect .rom
-begrom:
-.sect .data
-begdata:
-.sect .bss
-begbss:
-
-.define crtso, __penviron, __penvp, __fpu_present
-.extern _main, _exit
-.sect .text
-crtso:
-	xor     ebp, ebp		! clear for backtrace of core files
-	mov     eax, (esp)		! argc
-	lea     edx, 4(esp)		! argv
-	lea     ecx, 8(esp)(eax*4)	! envp
-
-	! Test if environ is in the initialized data area and is set to our
-	! magic number.  If so then it is not redefined by the user.
-	mov	ebx, _environ
-	cmp	ebx, __edata		! within initialized data?
-	jae	0f
-	testb	bl, 3			! aligned?
-	jnz	0f
-	cmp	(ebx), 0x53535353	! is it our _environ?
-	jne	0f
-	mov	(__penviron), ebx	! _penviron = &environ;
-0:	mov	ebx, (__penviron)
-	mov	(ebx), ecx		! *_penviron = envp;
-
-	push	ecx			! push envp
-	push	edx			! push argv
-	push	eax			! push argc
-
-	! Test the EM bit of the MSW to determine if an FPU is present and
-	! set __fpu_present if one is found.
-	smsw	ax
-	testb	al, 0x4			! EM bit in MSW
-	setz	(__fpu_present)		! True if not set
-
-	call	_main			! main(argc, argv, envp)
-
-	push	eax			! push exit status
-	call	_exit
-
-	hlt				! force a trap if exit fails
-
-.sect .rom
-	.data4	0			! Separate I&D: *NULL == 0
-					! Also keeps the first string in the
-					! program from appearing at location 0!
-.sect .data
-__penviron:
-	.data4	__penvp			! Pointer to environ, or hidden pointer
-
-.sect .bss
-	.comm	__penvp, 4		! Hidden environment vector
-	.comm	__fpu_present, 4	! FPU present flag
-
-.extern endtext				! Force loading of end labels.
Index: trunk/minix/lib/i386/rts/m2rtso.s
===================================================================
--- trunk/minix/lib/i386/rts/m2rtso.s	(revision 9)
+++ 	(revision )
@@ -1,67 +1,0 @@
-! This is the Modula-2 run-time start-off routine.  It's job is to take the
-! arguments as put on the stack by EXEC, and to parse them and set them up the
-! way _m_a_i_n expects them.
-
-.sect .text; .sect .rom; .sect .data; .sect .bss
-
-.define begtext, begdata, begbss
-.sect .text
-begtext:
-.sect .rom
-begrom:
-.sect .data
-begdata:
-.sect .bss
-begbss:
-
-.define m2rtso, hol0, __penviron, __penvp, __fpu_present
-.sect .text
-m2rtso:
-	xor	ebp, ebp		! clear for backtrace of core files
-	mov	eax, (esp)		! argc
-	lea	edx, 4(esp)		! argv
-	lea	ecx, 8(esp)(eax*4)	! envp
-
-	! Test if environ is in the initialized data area and is set to our
-	! magic number.  If so then it is not redefined by the user.
-	mov	ebx, _environ
-	cmp	ebx, __edata		! within initialized data?
-	jae	0f
-	testb	bl, 3			! aligned?
-	jnz	0f
-	cmp	(ebx), 0x53535353	! is it our environ?
-	jne	0f
-	mov	(__penviron), ebx	! _penviron = &environ;
-0:	mov	ebx, (__penviron)
-	mov	(ebx), ecx		! *_penviron = envp;
-
-	push	ecx			! push envp
-	push	edx			! push argv
-	push	eax			! push argc
-
-	! Test the EM bit of the MSW to determine if an FPU is present and
-	! set __fpu_present if one is found.
-	smsw	ax
-	testb	al, 0x4			! EM bit in MSW
-	setz	(__fpu_present)		! True if not set
-
-	call	__m_a_i_n		! run Modula-2 program
-
-	push	eax			! push exit status
-	call	__exit
-
-	hlt				! force a trap if exit fails
-
-.sect .rom
-	.data4	0			! Separate I&D: *NULL == 0
-					! Also keeps the first string in the
-					! program from appearing at location 0!
-.sect .data
-__penviron:
-	.data4	__penvp			! Pointer to environ, or hidden pointer
-
-.sect .bss
-	.comm	__penvp, 4		! Hidden environment vector
-	.comm	__fpu_present, 4	! FPU present flag
-
-.extern endtext				! Force loading of end labels.
Index: trunk/minix/lib/i386/rts/prtso.s
===================================================================
--- trunk/minix/lib/i386/rts/prtso.s	(revision 9)
+++ 	(revision )
@@ -1,69 +1,0 @@
-! This is the Pascal run-time start-off routine.  It's job is to take the
-! arguments as put on the stack by EXEC, and to parse them and set them up the
-! way _m_a_i_n expects them.
-
-.sect .text; .sect .rom; .sect .data; .sect .bss
-
-.define begtext, begdata, begbss
-.sect .text
-begtext:
-.sect .rom
-begrom:
-.sect .data
-begdata:
-.sect .bss
-begbss:
-
-.define prtso, hol0, __penviron, __penvp, __fpu_present
-.sect .text
-prtso:
-	xor	ebp, ebp		! clear for backtrace of core files
-	mov	eax, (esp)		! argc
-	lea	edx, 4(esp)		! argv
-	lea	ecx, 8(esp)(eax*4)	! envp
-
-	! Test if environ is in the initialized data area and is set to our
-	! magic number.  If so then it is not redefined by the user.
-	mov	ebx, _environ
-	cmp	ebx, __edata		! within initialized data?
-	jae	0f
-	testb	bl, 3			! aligned?
-	jnz	0f
-	cmp	(ebx), 0x53535353	! is it our environ?
-	jne	0f
-	mov	(__penviron), ebx	! _penviron = &environ;
-0:	mov	ebx, (__penviron)
-	mov	(ebx), ecx		! *_penviron = envp;
-
-	push	ecx			! push envp
-	push	edx			! push argv
-	push	eax			! push argc
-
-	! Test the EM bit of the MSW to determine if an FPU is present and
-	! set __fpu_present if one is found.
-	smsw	ax
-	testb	al, 0x4			! EM bit in MSW
-	setz	(__fpu_present)		! True if not set
-
-	mov	(.ignmask), 56
-
-	call	__m_a_i_n		! Run Pascal program
-
-	push	eax			! push exit status
-	call	__exit
-
-	hlt				! force a trap if exit fails
-
-.sect .rom
-	.data4	0			! Separate I&D: *NULL == 0
-					! Also keeps the first string in the
-					! program from appearing at location 0!
-.sect .data
-__penviron:
-	.data4	__penvp			! Pointer to environ, or hidden pointer
-
-.sect .bss
-	.comm	__penvp, 4		! Hidden environment vector
-	.comm	__fpu_present, 4	! FPU present flag
-
-.extern endtext				! Force loading of end labels.
