From 50b2d9f4b8111fe6969609c4da66e42cb421621d Mon Sep 17 00:00:00 2001 From: ceriel Date: Wed, 28 Jan 1987 15:06:28 +0000 Subject: [PATCH] Initial revision --- mach/i80/libmon/compmodule | 4 +++ mach/i80/libmon/head_em.s | 53 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100755 mach/i80/libmon/compmodule create mode 100644 mach/i80/libmon/head_em.s diff --git a/mach/i80/libmon/compmodule b/mach/i80/libmon/compmodule new file mode 100755 index 000000000..2e87032ca --- /dev/null +++ b/mach/i80/libmon/compmodule @@ -0,0 +1,4 @@ +if i80 -c $1 1>&2 +then echo `basename $1 $2`.o +else exit 1 +fi diff --git a/mach/i80/libmon/head_em.s b/mach/i80/libmon/head_em.s new file mode 100644 index 000000000..b4b3b2d63 --- /dev/null +++ b/mach/i80/libmon/head_em.s @@ -0,0 +1,53 @@ +.define hol0, argv, envp, begbss +.define .ignmask,.reghp,.trapproc,.fra +.define .retadr,.retadr1,.areg,.bcreg,.tmp1 +.define block1, block2, block3 +.define .stop +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text + +.sect .text + lxi h,0x1000 ! stack will grow from 0x1000 downwards + sphl + lxi h,begbss ! clear bss + lxi d,endbss-begbss + mvi c,0 + +2: mov m,c + inx h + dcx d + mov a,e + ora d + jnz 2b + + lxi h,envp ! call main + push h + lxi h,argv + push h + lxi h,0 + push h + call _m_a_i_n +.stop: jmp 0xfb52 + +.sect .bss +begbss: +.trapproc: .space 2 +.ignmask: .space 2 +.sect .data +hol0: .space 8 +.reghp: .data2 endbss +argv: .data2 0 +envp: .data2 0 +.retadr: .space 2 ! used to save return address +.retadr1: .space 2 ! reserve +.bcreg: .space 2 ! used to save localbase +.areg: .space 1 +.tmp1: .space 2 +.fra: .space 8 ! 8 bytes function return area +block1: .space 4 ! used by 32 bits divide and +block2: .space 4 ! multiply routines +block3: .space 4 + -- 2.34.1