more work

This commit is contained in:
Oliver Lehmann 2009-08-28 18:29:11 +00:00
parent bdf77b3e29
commit 25894a99f0
7 changed files with 181 additions and 4 deletions

View File

@ -1,13 +1,9 @@
atof.o atof.s ASM
cnvt.o cnvt.c C
decimal.o decimal.s ASM
doprnt.o doprnt.c C
ecvt.o ecvt.s ASM
fltioc.o fltioc.c C
goodmagic.o goodmagic.c C
pow10.o pow10.s ASM
readsym.o readsym.c C
setret.o setret.s ASM
stfl.o ???
swap.o swap.c C
symscan.o symscan.c C

View File

@ -165,3 +165,7 @@ toupper.o toupper.c C
ffltioc.o ffltioc.c C
length.o length.c C
__callex.o __callex.c C
setret.o setret.s ASM
decimal.o decimal.s ASM
readsym.o readsym.c C
goodmagic.o goodmagic.c C

View File

@ -2,3 +2,4 @@ execvp.o /z/src/libc/orig_obj/execvp.o differ: char 6, line 1
malloc.o /z/src/libc/orig_obj/malloc.o differ: char 5, line 1
nlist.o /z/src/libc/orig_obj/nlist.o differ: char 5, line 1
length.o
readsym.o

View File

@ -0,0 +1,80 @@
! @[$] decimal.s 2.1 09/12/83 11:22:59 - 87wega3.2 !
decimal module
global
__deciml procedure
entry
ldl rr0,rr4
subl rr2,rr2
ldl rr4,rr2
ldk r6,#1
testl rr0
jr z,L3
L1:
srll rr0,#1
jr nc,L2
addb rh4,rl6
dab rh4
adcb rl3,rh6
dab rl3
adcb rh3,rl5
dab rh3
adcb rl2,rh5
dab rl2
adcb rh2,rl4
dab rh2
testl rr0
jr z,L3
L2:
addb rl6,rl6
dab rl6
adcb rh6,rh6
dab rh6
adcb rl5,rl5
dab rl5
adcb rh5,rh5
dab rh5
adcb rl4,rl4
dab rl4
jr L1
L3:
ld r6,r7
ldb rl0,#%30
rrdb rl0,rh4
ldb @r6,rl0
rrdb rl0,rh4
dec r6,#1
ldb @r6,rl0
rrdb rl0,rl3
dec r6,#1
ldb @r6,rl0
rrdb rl0,rl3
dec r6,#1
ldb @r6,rl0
rrdb rl0,rh3
dec r6,#1
ldb @r6,rl0
rrdb rl0,rh3
dec r6,#1
ldb @r6,rl0
rrdb rl0,rl2
dec r6,#1
ldb @r6,rl0
rrdb rl0,rl2
dec r6,#1
ldb @r6,rl0
rrdb rl0,rh2
dec r6,#1
ldb @r6,rl0
rrdb rl0,rh2
dec r6,#1
ldb @r6,rl0
ldb rl0,#%30
ldk r1,#10
cpirb rl0,@r6,r1,nz
dec r6,#1
ld r2,r6
ret
end __deciml
end decimal

View File

@ -0,0 +1,39 @@
/* @[$] goodmagic.c 2.1 09/12/83 11:24:52 - 87wega3.2 */
#include <s.out.h>
int swap_flg;
int magics[10] = {
0x0000,
N_MAGIC1,N_MAGIC3,N_MAGIC4,
S_MAGIC1,S_MAGIC3,S_MAGIC4,
X_MAGIC1,X_MAGIC3,X_MAGIC4
};
int
goodmagic(magic)
int magic;
{
register int i;
swap_flg=0x0000;
foo0:
magics[0]=(unsigned)magic;
i=10;
foo1:
i--;
if(magic!=magics[i])
goto foo1;
if(i)
goto foo2;
magic=swap(magic);
if(!swap_flg++)
goto foo0;
foo2:
if(i)
goto foo3;
swap_flg=0x0000;
foo3:
return(i);
}

View File

@ -0,0 +1,28 @@
/* @[$] readsym.c 2.2 09/12/83 11:29:50 - 87wega3.2 */
#include <stdio.h>
#include <s.out.h>
readsym(sym, stream)
struct {
struct s_nlist bol;
char extra[128];
} *sym;
FILE *stream;
{
register long foo1;
register int foo2;
if(fread(sym,14,1,stream)!=1)
return(0xffff);
if((*sym->bol.sn_name)&128)
return(0);
foo1 = ((*sym->bol.sn_name)&127)-8;
if(fread(sym,14,foo1,stream) == foo1)
return(foo1);
return();
}

View File

@ -0,0 +1,29 @@
! @[$] setret.s 2.1 09/12/83 11:30:27 - 87wega3.2 !
setret module
global
_setret procedure
entry
ld r2,r7
ld r7,@r15
ldm @r2,r7,#9
clr r2
ret
end _setret
_saveret procedure
entry
ldm %0002(r7),r8,#6
ret
end _saveret
_longret procedure
entry
ld r3,r7
ld r2,r6
ldm r7,@r3,#9
ld @r15,r7
ret
end _longret
end setret