ソースを参照

new installation mechanism

ceriel 33 年 前
コミット
d3e307c276

+ 2 - 0
mach/pdp/libend/.distr

@@ -0,0 +1,2 @@
+LIST
+end_s.a

+ 5 - 0
mach/pdp/libend/LIST

@@ -0,0 +1,5 @@
+end_s.a
+edata.s
+em_end.s
+end.s
+etext.s

+ 9 - 0
mach/pdp/libend/edata.s

@@ -0,0 +1,9 @@
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+.define	_edata
+.sect .data
+	.align 4
+	.sect .data
+_edata:

+ 22 - 0
mach/pdp/libend/em_end.s

@@ -0,0 +1,22 @@
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+.define	endtext,enddata,endbss,__end
+.sect .text
+	.align 4
+.sect .rom
+	.align 4
+.sect .data
+	.align 4
+.sect .bss
+	.align 4
+.sect .end ! only for declaration of _end, __end and endbss.
+
+	.sect .text
+endtext:
+	.sect .data
+enddata:
+	.sect .end
+__end:
+endbss:

+ 7 - 0
mach/pdp/libend/end.s

@@ -0,0 +1,7 @@
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+.define	_end
+.sect .end ! only for declaration of _end, __end and endbss.
+_end:

+ 9 - 0
mach/pdp/libend/etext.s

@@ -0,0 +1,9 @@
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+.define	_etext
+.sect .text
+	.align 4
+	.sect .text
+_etext:

+ 1 - 2
mach/pdp/libsys/.distr

@@ -1,5 +1,4 @@
 LIST
-Makefile
-compmodule
 libmon_s.a
 sys.h
+head_em.s

+ 75 - 0
mach/pdp/libsys/head_em.s

@@ -0,0 +1,75 @@
+#
+.sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
+.define  LINO_AD,FILN_AD
+.define  ERANGE,ESET,EHEAP,EILLINS,ECASE
+.define  hol0,trppc~,trpim~,reghp~,.limhp
+! $Header$
+
+#define float 1
+#define hardfp 1
+
+LINO_AD = 0
+FILN_AD = 4
+
+ERANGE  = 1
+ESET    = 2
+EFOVFL  = 4
+EFUNFL  = 5
+EFDIVZ  = 7
+EFUND   = 011
+ECONV   = 012
+EHEAP   = 021
+EILLINS = 022
+ECASE   = 024
+
+#ifdef float
+#ifndef hardfp
+!	sys     060;.data2 4,fptrap	/ if not commented it will appear as undefined
+#endif
+	sys     060;.data2 010,sig8
+	ldfps   $07600
+#endif
+	mov     2(sp),r0
+	clr     -2(r0)
+	mov     sp,r0
+	sub     $4,sp
+	mov     4(sp),(sp)
+	tst     (r0)+
+	mov     r0,2(sp)
+1:
+	tst     (r0)+
+	bne     1b
+	cmp     r0,*2(sp)
+	blo     1f
+	tst     -(r0)
+1:
+	mov     r0,4(sp)
+	jsr     pc,__m_a_i_n
+! next two lines for as long as tail needs printf
+!	mov     r0,-(sp)
+!	jsr     pc,*$_exit
+	sys     1
+
+	.sect .data
+hol0:   .data2 0,0     ! line no
+	.data2 0,0     ! file
+trppc~: .data2 0
+trpim~: .data2 0
+reghp~: .data2 _end
+.limhp: .data2 _end
+
+	.sect .text
+sig8:
+#ifdef float
+	mov     r0,-(sp)
+	stst    r0
+	mov     1f(r0),-(sp)
+	jsr     pc,trp~
+	sys     060;.data2 010,sig8
+	mov     (sp)+,r0
+	rti
+
+	.sect .data
+1:      .data2 EILLINS, EILLINS, EFDIVZ, ECONV, EFOVFL, EFUNFL, EFUND, EILLINS
+	.sect .text
+#endif