diff --git a/mach/i80/.distr b/mach/i80/.distr index c7de8c947..27c608429 100644 --- a/mach/i80/.distr +++ b/mach/i80/.distr @@ -1,11 +1,8 @@ Action as -cg +ncg dl -libbc -libcc libem -libpc -libsys -liboc -libm2 +libend +libmon +mach_params diff --git a/mach/i80/Action b/mach/i80/Action index 07e95abe7..a13944d20 100644 --- a/mach/i80/Action +++ b/mach/i80/Action @@ -2,29 +2,17 @@ name "Intel 8080 assembler" dir as end name "Intel 8080 code generator" -dir cg +dir ncg end name "Intel 8080 download programs" dir dl end -name "Intel 8080 Basic library" -dir libbc -end -name "Intel 8080 Occam library" -dir liboc -end -name "Intel 8080 C libraries" -dir libcc -end name "Intel 8080 EM library" dir libem end -name "Intel 8080 Pascal library" -dir libpc +name "Intel 8080 etext,edata,end library" +dir libend end name "Intel 8080 System library" -dir libsys -end -name "Intel 8080 Modula-2 library" -dir libm2 +dir libmon end diff --git a/mach/i80/libem/.distr b/mach/i80/libem/.distr index e862ca95b..d2b4f2884 100644 --- a/mach/i80/libem/.distr +++ b/mach/i80/libem/.distr @@ -1,5 +1,2 @@ LIST -Makefile -compmodule -end.s libem_s.a diff --git a/mach/i80/libend/.distr b/mach/i80/libend/.distr new file mode 100644 index 000000000..b48ec8483 --- /dev/null +++ b/mach/i80/libend/.distr @@ -0,0 +1,2 @@ +LIST +end_s.a diff --git a/mach/i80/libend/LIST b/mach/i80/libend/LIST new file mode 100644 index 000000000..2efbd3eb2 --- /dev/null +++ b/mach/i80/libend/LIST @@ -0,0 +1,5 @@ +end_s.a +edata.s +em_end.s +end.s +etext.s diff --git a/mach/i80/libend/edata.s b/mach/i80/libend/edata.s new file mode 100644 index 000000000..a742b6f11 --- /dev/null +++ b/mach/i80/libend/edata.s @@ -0,0 +1,7 @@ +.sect .text +.sect .rom +.sect .data +.sect .bss +.define _edata +.sect .data +_edata: diff --git a/mach/i80/libend/em_end.s b/mach/i80/libend/em_end.s new file mode 100644 index 000000000..6848f6642 --- /dev/null +++ b/mach/i80/libend/em_end.s @@ -0,0 +1,14 @@ +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .end ! only for declaration of _end, __end and endbss. +.define endtext,enddata,endbss,__end + + .sect .text +endtext: + .sect .data +enddata: + .sect .end +__end: +endbss: diff --git a/mach/i80/libend/end.s b/mach/i80/libend/end.s new file mode 100644 index 000000000..93a1e6e00 --- /dev/null +++ b/mach/i80/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: diff --git a/mach/i80/libend/etext.s b/mach/i80/libend/etext.s new file mode 100644 index 000000000..6651ca96e --- /dev/null +++ b/mach/i80/libend/etext.s @@ -0,0 +1,7 @@ +.sect .text +.sect .rom +.sect .data +.sect .bss +.define _etext +.sect .text +_etext: diff --git a/mach/i80/libmon/.distr b/mach/i80/libmon/.distr index 9f7ea7495..90063c137 100644 --- a/mach/i80/libmon/.distr +++ b/mach/i80/libmon/.distr @@ -1,7 +1,5 @@ LIST -Makefile -compmodule README -libsys_s.a +libmon_s.a char.nas.s head_em.s diff --git a/mach/i80/libmon/LIST b/mach/i80/libmon/LIST index 8d90b2534..33161472d 100644 --- a/mach/i80/libmon/LIST +++ b/mach/i80/libmon/LIST @@ -1,4 +1,4 @@ -libsys_s.a +libmon_s.a mon.s trp.s inn2.s diff --git a/mach/i80/libmon/README b/mach/i80/libmon/README index e47567458..59f9fd2f7 100644 --- a/mach/i80/libmon/README +++ b/mach/i80/libmon/README @@ -2,5 +2,5 @@ This library should contain one of the files char.her.s, that has routines getchar and putchar for the MC-CPM, and char.nas.s, that has the same routines for the Nascom. The default is char.her.s. -The file char.nas.s is presented in this directory and not included -in the libarary. +The file char.nas.s resides in this directory and is not included +in the library. diff --git a/mach/i80/mach_params b/mach/i80/mach_params new file mode 100644 index 000000000..90a6d101e --- /dev/null +++ b/mach/i80/mach_params @@ -0,0 +1,4 @@ +MACH=i80 +SUF=o +ASAR=aal +RANLIB=: diff --git a/mach/i86/.distr b/mach/i86/.distr index f5bb7d81e..f0b0ad227 100644 --- a/mach/i86/.distr +++ b/mach/i86/.distr @@ -1,12 +1,9 @@ Action cv -libbc -libcc libem -libpc +libend libsys as -liboc libfp ncg -libm2 +mach_params diff --git a/mach/i86/Action b/mach/i86/Action index 137796719..14beb6e1c 100644 --- a/mach/i86/Action +++ b/mach/i86/Action @@ -4,30 +4,18 @@ end name "Intel 8086 backend" dir ncg end -name "Intel 8086 C libraries" -dir libcc -end name "Intel 8086 EM library" dir libem end -name "Intel 8086 Pascal library" -dir libpc -end -name "Intel 8086 PC/IX systemcall library" -dir libsys -end -name "Intel 8086 Basic library" -dir libbc -end -name "Intel 8086 Occam library" -dir liboc -end -name "Intel 8086 conversion program from ack.out --> PC/IX a.out" -dir cv +name "Intel 8086 etext,edata,end library" +dir libend end name "Intel 8086 floating point library" dir libfp end -name "Intel 8086 Modula-2 library" -dir libm2 +name "Intel 8086 PC/IX systemcall library" +dir libsys +end +name "Intel 8086 conversion program from ack.out --> PC/IX a.out" +dir cv end diff --git a/mach/i86/libem/.distr b/mach/i86/libem/.distr index e862ca95b..d2b4f2884 100644 --- a/mach/i86/libem/.distr +++ b/mach/i86/libem/.distr @@ -1,5 +1,2 @@ LIST -Makefile -compmodule -end.s libem_s.a diff --git a/mach/i86/libem/print.s b/mach/i86/libem/print.s index 09f12ed37..00737adb7 100644 --- a/mach/i86/libem/print.s +++ b/mach/i86/libem/print.s @@ -39,7 +39,7 @@ printc: push ax push bx push ax - call _write + call __write pop bx pop bx pop bx diff --git a/mach/i86/libem/strhp.s b/mach/i86/libem/strhp.s index 55c1ed3ab..d0460248e 100644 --- a/mach/i86/libem/strhp.s +++ b/mach/i86/libem/strhp.s @@ -13,7 +13,7 @@ and ax,~0777 push bx push ax - call _brk + call __brk pop cx pop bx cmp ax,-1 diff --git a/mach/i86/libem/trp.s b/mach/i86/libem/trp.s index 412b0a370..c6f0fc0b5 100644 --- a/mach/i86/libem/trp.s +++ b/mach/i86/libem/trp.s @@ -18,4 +18,4 @@ call .stop .stop: - int 3 + jmp __exit diff --git a/mach/i86/libend/.distr b/mach/i86/libend/.distr new file mode 100644 index 000000000..b48ec8483 --- /dev/null +++ b/mach/i86/libend/.distr @@ -0,0 +1,2 @@ +LIST +end_s.a diff --git a/mach/i86/libend/LIST b/mach/i86/libend/LIST new file mode 100644 index 000000000..2efbd3eb2 --- /dev/null +++ b/mach/i86/libend/LIST @@ -0,0 +1,5 @@ +end_s.a +edata.s +em_end.s +end.s +etext.s diff --git a/mach/i86/libend/edata.s b/mach/i86/libend/edata.s new file mode 100644 index 000000000..a742b6f11 --- /dev/null +++ b/mach/i86/libend/edata.s @@ -0,0 +1,7 @@ +.sect .text +.sect .rom +.sect .data +.sect .bss +.define _edata +.sect .data +_edata: diff --git a/mach/i86/libend/em_end.s b/mach/i86/libend/em_end.s new file mode 100644 index 000000000..6848f6642 --- /dev/null +++ b/mach/i86/libend/em_end.s @@ -0,0 +1,14 @@ +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .end ! only for declaration of _end, __end and endbss. +.define endtext,enddata,endbss,__end + + .sect .text +endtext: + .sect .data +enddata: + .sect .end +__end: +endbss: diff --git a/mach/i86/libend/end.s b/mach/i86/libend/end.s new file mode 100644 index 000000000..93a1e6e00 --- /dev/null +++ b/mach/i86/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: diff --git a/mach/i86/libend/etext.s b/mach/i86/libend/etext.s new file mode 100644 index 000000000..6651ca96e --- /dev/null +++ b/mach/i86/libend/etext.s @@ -0,0 +1,7 @@ +.sect .text +.sect .rom +.sect .data +.sect .bss +.define _etext +.sect .text +_etext: diff --git a/mach/i86/libfp/.distr b/mach/i86/libfp/.distr index deec15c04..8f5939461 100644 --- a/mach/i86/libfp/.distr +++ b/mach/i86/libfp/.distr @@ -1,2 +1 @@ -Makefile byte_order.h diff --git a/mach/i86/libsys/.distr b/mach/i86/libsys/.distr index c6828c513..5f4d84d7d 100644 --- a/mach/i86/libsys/.distr +++ b/mach/i86/libsys/.distr @@ -1,5 +1,3 @@ LIST -Makefile -compmodule libmon_s.a head_em.s diff --git a/mach/i86/mach_params b/mach/i86/mach_params new file mode 100644 index 000000000..7bda99b8f --- /dev/null +++ b/mach/i86/mach_params @@ -0,0 +1,4 @@ +MACH=i86 +SUF=o +ASAR=aal +RANLIB=: