Add original unix v6

This commit is contained in:
memnoth
2018-01-27 22:35:41 +09:00
commit 2c7099ee50
664 changed files with 106254 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
.globl pow, _pow
.globl log, exp
_pow:
mov r5,-(sp)
mov sp,r5
movf 4(r5),fr0
movf 12.(r5),fr1
jsr pc,pow
mov (sp)+,r5
rts pc
pow:
/ 0^0~ is 0
tstf fr0
cfcc
bne 1f
tstf fr1
cfcc
beq bad
rts pc
1:
/ -^i is +^i fixed sign
bpl 1f
movf fr1,-(sp)
modf $one,fr1
cfcc
bne bad1
movf (sp)+,fr1
absf fr0
jsr pc,1f
bes bad
movf fr1,-(sp)
modf $half,fr1
cfcc
beq 2f
negf fr0
2:
movf (sp)+,fr1
rts pc
1:
jsr pc,log
bes 1f
mulf fr1,fr0
jsr pc,exp
1:
rts pc
bad1:
movf (sp)+,fr1
bad:
sec
rts pc
one = 40200
half = 40000