- MIPS R3000
This commit is contained in:
parent
eb9cdca50d
commit
d840190012
|
@ -0,0 +1,9 @@
|
|||
mips_dec C
|
||||
mips_seqo C
|
||||
mips_sts C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,10 @@
|
|||
mips_dec C
|
||||
mips_seqo C
|
||||
mips_sts C
|
||||
mips_dpt C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,9 @@
|
|||
mips_dec C
|
||||
mips_seqo C
|
||||
mips_sts C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,9 @@
|
|||
mips_dec C
|
||||
mips_sts C
|
||||
mips_dpt C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,8 @@
|
|||
mips_dec C
|
||||
mips_dpt C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,7 @@
|
|||
mips_dec C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,9 @@
|
|||
mips_dec C
|
||||
mips_seqo C
|
||||
mips_dpt C
|
||||
timer C
|
||||
rome C
|
||||
romr C
|
||||
romu C
|
||||
roms C
|
||||
sr64_1a C
|
|
@ -0,0 +1,290 @@
|
|||
# Pierre Nguyen Tuong
|
||||
# 19 octobre 1999
|
||||
# Makefile pour l'automate ; verification de l'alu
|
||||
#
|
||||
# Derniere modification : 19 octobre 1999
|
||||
# Version : 1.0
|
||||
#
|
||||
|
||||
|
||||
tests : alu
|
||||
|
||||
alu : add0 add1 add2 add3 add4 add5 addu0 addu1 addu2 addu3 \
|
||||
and0 and1 lhi0 lhi1 nor0 or0 or1 or2 reg0 sle0 \
|
||||
sle1 sle2 sle3 sle4 sle5 sle6 sle7 sll0 sll1 sra0 \
|
||||
sra1 srl0 srl1 sub0 sub1 xor0 xor1 xor2
|
||||
|
||||
|
||||
add0 :
|
||||
@echo "**********************************************************************" >> res_test ; \
|
||||
./go-bench.sh add000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de add et de addi" ; \
|
||||
echo "Test de add et de addi" >> res_test
|
||||
|
||||
add1 :
|
||||
@./go-bench.sh add001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de add et de addi (bis)" ; \
|
||||
echo "Test de add et de addi (bis)" >> res_test
|
||||
|
||||
|
||||
add2 :
|
||||
@./go-bench.sh add002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de add et de addi (bis bis)" ; \
|
||||
echo "Test de add et de addi (bis bis)" >> res_test
|
||||
|
||||
add3 :
|
||||
@./go-bench.sh add003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de add et de addi bis bis bis" ; \
|
||||
echo "Test de add et de addi bis bis bis" >> res_test
|
||||
|
||||
add4 :
|
||||
@./go-bench.sh add004 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sub, loadi, addi" ; \
|
||||
echo "Test de sub, loadi, addi" >> res_test
|
||||
|
||||
add5 :
|
||||
@./go-bench.sh add005 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addi, initialisation des registres avec leurs propres numeros" ; \
|
||||
echo "Test de addi, initialisation des registres avec leurs propres numeros" >> res_test
|
||||
|
||||
addu0 :
|
||||
@./go-bench.sh addu000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui " ; \
|
||||
echo "Test de addui " >> res_test
|
||||
|
||||
addu1 :
|
||||
@./go-bench.sh addu001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui " ; \
|
||||
echo "Test de addui " >> res_test
|
||||
|
||||
addu2 :
|
||||
@./go-bench.sh addu002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, addu" ; \
|
||||
echo "Test de addui, addu" >> res_test
|
||||
|
||||
addu3 :
|
||||
@./go-bench.sh addu003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, addu" ; \
|
||||
echo "Test de addui, addu" >> res_test
|
||||
|
||||
and0 :
|
||||
@./go-bench.sh and000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, seqi, and " ; \
|
||||
echo "Test de addui, seqi, and " >> res_test
|
||||
|
||||
and1 :
|
||||
@./go-bench.sh and001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, loadi, andi " ; \
|
||||
echo "Test de addui, loadi, andi " >> res_test
|
||||
|
||||
lhi0 :
|
||||
@./go-bench.sh lhi000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, lui, sll" ; \
|
||||
echo "Test de addui, lui, sll" >> res_test
|
||||
|
||||
|
||||
lhi1 :
|
||||
@./go-bench.sh lhi001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, lui, sll " ; \
|
||||
echo "Test de addui, lui, sll " >> res_test
|
||||
|
||||
|
||||
nor0 :
|
||||
@./go-bench.sh nor000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, nor " ; \
|
||||
echo "Test de loadi, nor " >> res_test
|
||||
|
||||
or0 :
|
||||
@./go-bench.sh or000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, or " ; \
|
||||
echo "Test de loadi, or " >> res_test
|
||||
|
||||
|
||||
or1 :
|
||||
@./go-bench.sh or001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, or " ; \
|
||||
echo "Test de loadi, or " >> res_test
|
||||
|
||||
|
||||
or2 :
|
||||
@./go-bench.sh or002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, ori, addui " ; \
|
||||
echo "Test de loadi, ori, addui " >> res_test
|
||||
|
||||
|
||||
|
||||
reg0 :
|
||||
@./go-bench.sh or002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de l'addition signee" ; \
|
||||
echo "Test de l'addition signee" >> res_test
|
||||
|
||||
sle0:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de slt " ; \
|
||||
echo "Test de slt " >> res_test
|
||||
|
||||
sle1:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de slt bis" ; \
|
||||
echo "Test de slt bis" >> res_test
|
||||
|
||||
sle2:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, addui, slt " ; \
|
||||
echo "Test de loadi, addui, slt " >> res_test
|
||||
|
||||
sle3:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, addui, slti " ; \
|
||||
echo "Test de loadi, addui, slti " >> res_test
|
||||
|
||||
sle4:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, addui, slt " ; \
|
||||
echo "Test de loadi, addui, slt " >> res_test
|
||||
|
||||
sle5:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, addui, slti " ; \
|
||||
echo "Test de loadi, addui, slti " >> res_test
|
||||
|
||||
sle6:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, addui, sltu " ; \
|
||||
echo "Test de loadi, addui, sltu " >> res_test
|
||||
|
||||
sle7:
|
||||
@./go-bench.sh sle000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, addui, sltu" ; \
|
||||
echo "Test de loadi, addui, sltu" >> res_test
|
||||
|
||||
sll0:
|
||||
@./go-bench.sh sll000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, sllv " ; \
|
||||
echo "Test de addui, sllv " >> res_test
|
||||
|
||||
sll1:
|
||||
@./go-bench.sh sll001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, loadi,sll " ; \
|
||||
echo "Test de addui, loadi,sll " >> res_test
|
||||
|
||||
sra0:
|
||||
@./go-bench.sh sra000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, srav " ; \
|
||||
echo "Test de addui, srav " >> res_test
|
||||
|
||||
sra1:
|
||||
@./go-bench.sh sra001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, sra " ; \
|
||||
echo "Test de addui, sra " >> res_test
|
||||
|
||||
srl0:
|
||||
@./go-bench.sh srl000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, srlv" ; \
|
||||
echo "Test de addui, srlv" >> res_test
|
||||
|
||||
srl1:
|
||||
@./go-bench.sh srl001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addui, srl " ; \
|
||||
echo "Test de addui, srl " >> res_test
|
||||
|
||||
sub0:
|
||||
@./go-bench.sh sub000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de addi, sub " ; \
|
||||
echo "Test de addi, sub " >> res_test
|
||||
|
||||
sub1:
|
||||
@./go-bench.sh sub001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, subu " ; \
|
||||
echo "Test de loadi, subu " >> res_test
|
||||
|
||||
xor0:
|
||||
@./go-bench.sh xor000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, xor " ; \
|
||||
echo "Test de loadi, xor " >> res_test
|
||||
|
||||
xor1:
|
||||
@./go-bench.sh xor001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de loadi, xor " ; \
|
||||
echo "Test de loadi, xor " >> res_test
|
||||
|
||||
xor2:
|
||||
@./go-bench.sh xor002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de slti, xori " ; \
|
||||
echo "Test de slti, xori " >> res_test
|
|
@ -0,0 +1,391 @@
|
|||
# Pierre Nguyen Tuong
|
||||
# 19 octobre 1999
|
||||
# Makefile pour l'automate
|
||||
#
|
||||
# Derniere modification : 19 octobre 1999
|
||||
# Version : 1.0
|
||||
#
|
||||
|
||||
|
||||
tests : bm
|
||||
|
||||
|
||||
bm : beq0 beq1 bgez0 bgez1 bgezal bgtz blez bltz bltzal bne0 bne1 \
|
||||
lhi0 lhi1 jal0 jal1 jalr0 jalr1 lsb0 lsb1 lsb2 lsb3 lsb4 lsb5 lsb6 lsb7 \
|
||||
lsbu0 lsbu1 lsbu2 lsbu3 lsh0 lsh1 lsh2 lsh3 lshu0 lshu1 lsw0 lsw1 sltu0 \
|
||||
sltu1 sltu2 sltu3 sltu4 sltiu0 sltiu1 sltiu2 sltiu3 sltiu4
|
||||
|
||||
|
||||
beq0 :
|
||||
@echo "**************************************************************************" >> res_test ; \
|
||||
./go-bench.sh beq000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de beq 0" >> res_test ; \
|
||||
echo "Test de beq 0"
|
||||
|
||||
beq1 :
|
||||
@./go-bench.sh beq001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de beq 1" >> res_test ; \
|
||||
echo "Test de beq 1"
|
||||
|
||||
bgez0 :
|
||||
@./go-bench.sh bgez000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bgez0" >> res_test ; \
|
||||
echo "Test de bgez0"
|
||||
|
||||
|
||||
bgez1 :
|
||||
@./go-bench.sh bgez001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bgez1" >> res_test ; \
|
||||
echo "Test de bgez1"
|
||||
|
||||
|
||||
bgezal :
|
||||
@./go-bench.sh bgezal000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bgezal" >> res_test ; \
|
||||
echo "Test de bgezal"
|
||||
|
||||
|
||||
bgtz :
|
||||
@./go-bench.sh bgtz000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bgtz" >> res_test ; \
|
||||
echo "Test de bgtz"
|
||||
|
||||
blez :
|
||||
@./go-bench.sh blez000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de blez" >> res_test ; \
|
||||
echo "Test de blez"
|
||||
|
||||
|
||||
bltz :
|
||||
@./go-bench.sh bltz000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bltz" >> res_test ; \
|
||||
echo "Test de bltz"
|
||||
|
||||
|
||||
bltzal :
|
||||
@./go-bench.sh bltzal000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bltzal" >> res_test ; \
|
||||
echo "Test de bltzal"
|
||||
|
||||
|
||||
bne0 :
|
||||
@./go-bench.sh bne000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bne0" >> res_test ; \
|
||||
echo "Test de bne0"
|
||||
|
||||
|
||||
bne1 :
|
||||
@./go-bench.sh bne001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de bne1" >> res_test ; \
|
||||
echo "Test de bne1"
|
||||
|
||||
|
||||
jal0 :
|
||||
@./go-bench.sh jal000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de jal0" >> res_test ; \
|
||||
echo "Test de jal0"
|
||||
|
||||
|
||||
jal1 :
|
||||
@./go-bench.sh jal001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de jal1" >> res_test ; \
|
||||
echo "Test de jal1"
|
||||
|
||||
|
||||
jalr0 :
|
||||
@./go-bench.sh jalr000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de jalr0" >> res_test ; \
|
||||
echo "Test de jalr0"
|
||||
|
||||
|
||||
jalr1 :
|
||||
@./go-bench.sh jalr001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de jalr1" >> res_test ; \
|
||||
echo "Test de jalr1"
|
||||
|
||||
|
||||
lhi0 :
|
||||
@./go-bench.sh lhi000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lhi0" >> res_test ; \
|
||||
echo "Test de lhi0"
|
||||
|
||||
|
||||
lhi1 :
|
||||
@./go-bench.sh lhi001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lhi1" >> res_test ; \
|
||||
echo "Test de lhi1"
|
||||
|
||||
|
||||
lsb0 :
|
||||
@./go-bench.sh lsb000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb0" >> res_test ; \
|
||||
echo "Test de lsb0"
|
||||
|
||||
|
||||
lsb1 :
|
||||
@./go-bench.sh lsb001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb1" >> res_test ; \
|
||||
echo "Test de lsb1"
|
||||
|
||||
|
||||
lsb2 :
|
||||
@./go-bench.sh lsb002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb2" >> res_test ; \
|
||||
echo "Test de lsb2"
|
||||
|
||||
|
||||
lsb3 :
|
||||
@./go-bench.sh lsb003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb3" >> res_test ; \
|
||||
echo "Test de lsb3"
|
||||
|
||||
|
||||
lsb4 :
|
||||
@./go-bench.sh lsb004 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb4" >> res_test ; \
|
||||
echo "Test de lsb4"
|
||||
|
||||
|
||||
lsb5 :
|
||||
@./go-bench.sh lsb005 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb5" >> res_test ; \
|
||||
echo "Test de lsb5"
|
||||
|
||||
|
||||
lsb6 :
|
||||
@./go-bench.sh lsb006 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb6" >> res_test ; \
|
||||
echo "Test de lsb6"
|
||||
|
||||
|
||||
lsb7 :
|
||||
@./go-bench.sh lsb007 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsb7" >> res_test ; \
|
||||
echo "Test de lsb7"
|
||||
|
||||
|
||||
lsbu0 :
|
||||
@./go-bench.sh lsbu000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsbu0" >> res_test ; \
|
||||
echo "Test de lsbu0"
|
||||
|
||||
|
||||
lsbu1 :
|
||||
@./go-bench.sh lsbu001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsbu1" >> res_test ; \
|
||||
echo "Test de lsbu1"
|
||||
|
||||
|
||||
lsbu2 :
|
||||
@./go-bench.sh lsbu002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsbu2" >> res_test ; \
|
||||
echo "Test de lsbu2"
|
||||
|
||||
|
||||
lsbu3 :
|
||||
@./go-bench.sh lsbu003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsbu3" >> res_test ; \
|
||||
echo "Test de lsbu3"
|
||||
|
||||
|
||||
lsh0 :
|
||||
@./go-bench.sh lsh000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsh0" >> res_test ; \
|
||||
echo "Test de lsh0"
|
||||
|
||||
|
||||
lsh1 :
|
||||
@./go-bench.sh lsh001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsh1 " >> res_test ; \
|
||||
echo "Test de lsh1"
|
||||
|
||||
|
||||
lsh2 :
|
||||
@./go-bench.sh lsh002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsh2" >> res_test ; \
|
||||
echo "Test de lsh2"
|
||||
|
||||
|
||||
lsh3 :
|
||||
@./go-bench.sh lsh003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsh3" >> res_test ; \
|
||||
echo "Test de lsh3"
|
||||
|
||||
|
||||
lshu0 :
|
||||
@./go-bench.sh lshu000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lshu0" >> res_test ; \
|
||||
echo "Test de lshu0"
|
||||
|
||||
|
||||
lshu1 :
|
||||
@./go-bench.sh lshu001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lshu1" >> res_test ; \
|
||||
echo "Test de lshu1"
|
||||
|
||||
|
||||
lsw0 :
|
||||
@./go-bench.sh lsw000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsw0" >> res_test ; \
|
||||
echo "Test de lsw0"
|
||||
|
||||
|
||||
lsw1 :
|
||||
@./go-bench.sh lsw001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de lsw1" >> res_test ; \
|
||||
echo "Test de lsw1"
|
||||
|
||||
|
||||
sltu0 :
|
||||
@./go-bench.sh sltu000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltu0" >> res_test ; \
|
||||
echo "Test de sltu0"
|
||||
|
||||
|
||||
sltu1 :
|
||||
@./go-bench.sh sltu001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltu1" >> res_test ; \
|
||||
echo "Test de sltu1"
|
||||
|
||||
|
||||
|
||||
sltu2 :
|
||||
@./go-bench.sh sltu002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltu2" >> res_test ; \
|
||||
echo "Test de sltu2"
|
||||
|
||||
|
||||
sltu3 :
|
||||
@./go-bench.sh sltu003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltu3" >> res_test ; \
|
||||
echo "Test de sltu3"
|
||||
|
||||
|
||||
sltu4 :
|
||||
@./go-bench.sh sltu004 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltu4" >> res_test ; \
|
||||
echo "Test de sltu4"
|
||||
|
||||
|
||||
sltiu0 :
|
||||
@./go-bench.sh sltiu000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltiu0" >> res_test ; \
|
||||
echo "Test de sltiu0"
|
||||
|
||||
|
||||
sltiu1 :
|
||||
@./go-bench.sh sltiu001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltiu1" >> res_test ; \
|
||||
echo "Test de sltiu1"
|
||||
|
||||
|
||||
sltiu2 :
|
||||
@./go-bench.sh sltiu002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltiu2" >> res_test ; \
|
||||
echo "Test de sltiu2"
|
||||
|
||||
|
||||
sltiu3 :
|
||||
@./go-bench.sh sltiu003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltiu3" >> res_test ; \
|
||||
echo "Test de sltiu3"
|
||||
|
||||
|
||||
sltiu4 :
|
||||
@./go-bench.sh sltiu004 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de sltiu4" >> res_test ; \
|
||||
echo "Test de sltiu4"
|
|
@ -0,0 +1,318 @@
|
|||
# Pierre Nguyen Tuong
|
||||
# 19 octobre 1999
|
||||
# Makefile pour l'automate ; verification des exceptions
|
||||
#
|
||||
# Derniere modification : 19 octobre 1999
|
||||
# Version : 1.0
|
||||
#
|
||||
|
||||
|
||||
tests : excp
|
||||
|
||||
excp : exc00 exc01 exc02 exc03 \
|
||||
exc04 exc05 exc06 exc07 \
|
||||
exc08 exc09 exc10 exc11 \
|
||||
exc12 exc13 exc14 exc15 \
|
||||
exc16 exc17 exc18 exc19 \
|
||||
exc20 exc21 exc22 exc23 \
|
||||
exc24
|
||||
|
||||
|
||||
exc00 :
|
||||
@echo "**************************************************************************" >> res_test ; \
|
||||
cp exc000.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc000.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de mauvais alignement de data " >> res_test ; \
|
||||
echo "Test de mauvais alignement de data "
|
||||
|
||||
exc01:
|
||||
@cp exc001.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc001.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de ADES" >> res_test ; \
|
||||
echo "Test de ADES"
|
||||
|
||||
|
||||
exc02:
|
||||
@cp exc002.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc002.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0" >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0"
|
||||
|
||||
|
||||
exc03:
|
||||
@cp exc003.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc003.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0" >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0"
|
||||
|
||||
|
||||
exc04:
|
||||
@cp exc004.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc004.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc004 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0" >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0"
|
||||
|
||||
|
||||
exc05:
|
||||
@cp exc005.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc005.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc005 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0" >> res_test ; \
|
||||
echo "Test d'OVERFLOW de sum de nb >0"
|
||||
|
||||
|
||||
exc06:
|
||||
@cp exc006.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc006.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc006 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " illegal instruction address" >> res_test ; \
|
||||
echo " illegal instruction address"
|
||||
|
||||
|
||||
exc07:
|
||||
@cp exc007.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc007.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc007 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " Test de ADEL" >> res_test ; \
|
||||
echo " Test de ADEL"
|
||||
|
||||
|
||||
exc08:
|
||||
@cp exc008.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc008.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc008 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " Test de ADEL" >> res_test ; \
|
||||
echo " Test de ADEL"
|
||||
|
||||
|
||||
exc09:
|
||||
@cp exc009.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc009.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc009 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " ri (when executing a mfc0)" >> res_test ; \
|
||||
echo " ri (when executing a mfc0)"
|
||||
|
||||
|
||||
exc10:
|
||||
@cp exc010.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc010.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc010 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " ri" >> res_test ; \
|
||||
echo " ri"
|
||||
|
||||
|
||||
exc11:
|
||||
@cp exc011.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc012.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc011 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "adel (when loading a half-word) " >> res_test ; \
|
||||
echo "adel (when loading a half-word) "
|
||||
|
||||
|
||||
exc12:
|
||||
@cp exc012.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc012.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc012 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "ades (when storing a word) " >> res_test ; \
|
||||
echo "ades (when storing a word) "
|
||||
|
||||
|
||||
exc13:
|
||||
@cp exc013.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc013.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc013 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "sleep" >> res_test ; \
|
||||
echo "sleep"
|
||||
|
||||
|
||||
exc14:
|
||||
@cp exc014.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc014.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc014 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " data bus error" >> res_test ; \
|
||||
echo " data bus error"
|
||||
|
||||
|
||||
exc15:
|
||||
@cp exc015.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc015.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc015 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " overflow (when adding positive numbers)" >> res_test ; \
|
||||
echo " overflow (when adding positive numbers)"
|
||||
|
||||
|
||||
exc16:
|
||||
@cp exc016.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc016.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc016 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo " overflow (when adding positive numbers)" >> res_test ; \
|
||||
echo " overflow (when adding positive numbers)"
|
||||
|
||||
|
||||
exc17:
|
||||
@cp exc017.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc017.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc017 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc18:
|
||||
@cp exc018.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc018.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc018 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc19:
|
||||
@cp exc019.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc019.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc019 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc20:
|
||||
@cp exc020.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc020.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc020 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc21:
|
||||
@cp exc021.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc021.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc021 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc22:
|
||||
@cp exc022.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc022.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc022 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc23:
|
||||
@cp exc023.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc023.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc023 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "data bus error" >> res_test ; \
|
||||
echo "data bus error"
|
||||
|
||||
|
||||
exc24:
|
||||
@cp exc024.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp exc024.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh exc024 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "instruction bus error" >> res_test ; \
|
||||
echo "instruction bus error"
|
|
@ -0,0 +1,100 @@
|
|||
# Pierre Nguyen Tuong
|
||||
# 19 octobre 1999
|
||||
# Makefile pour l'automate ; verification des interruptions
|
||||
#
|
||||
# Derniere modification : 19 octobre 1999
|
||||
# Version : 1.0
|
||||
#
|
||||
|
||||
tests : int
|
||||
|
||||
int : it00 it01 it02 it03 \
|
||||
it04 it05 it06
|
||||
|
||||
it00:
|
||||
@echo "**************************************************************************" >> res_test ; \
|
||||
cp it000.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it000.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it000 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test int 00" >> res_test ; \
|
||||
echo "test int 00"
|
||||
|
||||
|
||||
it01:
|
||||
@cp it001.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it001.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it001 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test int 01" >> res_test ; \
|
||||
echo "Test int 01"
|
||||
|
||||
|
||||
it02:
|
||||
@cp it002.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it002.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it002 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de int 02" >> res_test ; \
|
||||
echo "Test de int 02"
|
||||
|
||||
|
||||
it03:
|
||||
@cp it003.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it003.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it003 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de int 03" >> res_test ; \
|
||||
echo "Test de int 03"
|
||||
|
||||
|
||||
it04:
|
||||
@cp it004.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it004.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it004 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de int 04" >> res_test ; \
|
||||
echo "Test de int 04"
|
||||
|
||||
|
||||
|
||||
it05:
|
||||
@cp it005.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it005.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it005 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "Test de int 05" >> res_test ; \
|
||||
echo "Test de int 05"
|
||||
|
||||
|
||||
|
||||
it06:
|
||||
@cp it006.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp it006.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh it006 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test int 06" >> res_test ; \
|
||||
echo "test int 06"
|
||||
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
# Pierre Nguyen Tuong
|
||||
# 19 octobre 1999
|
||||
# Makefile pour l'automate ; verification des misc
|
||||
#
|
||||
# Derniere modification : 19 octobre 1999
|
||||
# Version : 1.0
|
||||
#
|
||||
|
||||
tests : misc
|
||||
|
||||
misc : brk mftc0 mfthi mftlo syscall
|
||||
|
||||
brk:
|
||||
@echo "**************************************************************************" >> res_test ; \
|
||||
cp break_00.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp break_00.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh break_00 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test de break" >> res_test ; \
|
||||
echo "test de break"
|
||||
|
||||
|
||||
|
||||
mftc0:
|
||||
@cp mftc0_00.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp mftc0_00.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh mftc0_00 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test de mftc0" >> res_test ; \
|
||||
echo "test de mftc0"
|
||||
|
||||
|
||||
mfthi:
|
||||
@cp mfthi_00.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp mfthi_00.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh mfthi_00 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test de mfthi" >> res_test ; \
|
||||
echo "test de mfthi"
|
||||
|
||||
|
||||
|
||||
mftlo:
|
||||
@cp mftlo_00.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp mftlo_00.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh mftlo_00 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test de mftlo" >> res_test ; \
|
||||
echo "test de mftlo"
|
||||
|
||||
|
||||
|
||||
syscall:
|
||||
@cp syscall_00.e rome.e ; \
|
||||
mips_asm rome.e rome toto > /dev/null ; \
|
||||
cp syscall_00.u rome.u ; \
|
||||
mips_asm rome.u romu toto > /dev/null ; \
|
||||
./go-bench.sh syscall_00 > tmp_test ; \
|
||||
cat tmp_test ; \
|
||||
cat tmp_test >> res_test ; \
|
||||
echo "test de syscall" >> res_test ; \
|
||||
echo "test de syscall"
|
||||
|
|
@ -0,0 +1,363 @@
|
|||
|
||||
-- description generated by Pat driver
|
||||
|
||||
-- date : Mon May 24 00:00:10 2004
|
||||
-- revision : v109
|
||||
|
||||
-- sequence : mips_cpu
|
||||
|
||||
-- input / output list :
|
||||
in ck B;;
|
||||
in reset B;;
|
||||
in frz B;;
|
||||
in scin B;;
|
||||
in test B;;
|
||||
in vdd B;;
|
||||
in vss B;;
|
||||
out rw B;;
|
||||
out w (0 to 1) B;;
|
||||
out scout B;;
|
||||
inout data (31 downto 0) X;;
|
||||
inout data_adr (31 downto 0) X;;
|
||||
signal mips1.adr_c (31 downto 0) X spy ;;
|
||||
signal mips1.datain_c (31 downto 0) X spy ;;
|
||||
signal mips1.dataout_c (31 downto 0) X spy ;;
|
||||
signal mips1.int_c (5 downto 0) B spy ;;
|
||||
signal mips1.scin_c B spy ;;
|
||||
signal mips1.scout_c B spy ;;
|
||||
signal mips1.test_c B spy ;;
|
||||
signal mips1.reset_c B spy ;;
|
||||
signal mips1.frz_c B spy ;;
|
||||
signal mips1.w_c (0 to 1) B spy ;;
|
||||
signal mips1.rw_c B spy ;;
|
||||
signal mips1.berr_c B spy ;;
|
||||
signal mips1.rw_ctl_c (15 downto 0) B spy ;;
|
||||
signal mips1.frz_ctl_c (15 downto 0) B spy ;;
|
||||
signal mips1.ck_ctl_c B spy ;;
|
||||
signal mips1.ck_dpt_c B spy ;;
|
||||
|
||||
begin
|
||||
|
||||
-- Pattern description :
|
||||
|
||||
-- c r f s t v v r w s d d m m m m m m m m m m m m m m m m
|
||||
-- k e r c e d s w c a a i i i i i i i i i i i i i i i i
|
||||
-- s z i s d s o t t p p p p p p p p p p p p p p p p
|
||||
-- e n t u a a s s s s s s s s s s s s s s s s
|
||||
-- t t _ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
-- a . . . . . . . . . . . . . . . .
|
||||
-- d a d d i s s t r f w r b r f c c
|
||||
-- r d a a n c c e e r _ w e w r k k
|
||||
-- r t t t i o s s z c _ r _ z _ _
|
||||
-- _ a a _ n u t e _ c r c _ c d
|
||||
-- c i o c _ t _ t c _ t c t p
|
||||
-- n u c _ c _ c l t l t
|
||||
-- _ t c c _ l _ _
|
||||
-- c _ c _ c c
|
||||
-- c c
|
||||
|
||||
< 0 ps> : 1 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?3fc00080 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 50000 ps> : 1 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?3fc00080 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 100000 ps> : 0 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?3fc00080 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 150000 ps> : 0 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?3fc00080 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 200000 ps> : 1 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 250000 ps> : 1 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 300000 ps> : 0 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 350000 ps> : 0 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 400000 ps> : 1 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 450000 ps> : 1 1 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?1 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?uuuuuuuu ?00000000 ?00000000 ?uuuuuuuu ?bfc00000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?bfc00004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?bfc00004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?bfc00004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1ec000 ?bfc00000 ?bfc00000 ?3c1ec000 ?bfc00004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?ffffc000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?ffffc000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?ffffc000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?ffffc000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?bfc00008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?bfc00008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?bfc00008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?37de0000 ?bfc00004 ?bfc00004 ?37de0000 ?bfc00008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 1900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 1950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?c0000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?bfc0000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?bfc0000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?bfc0000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00008 ?bfc00008 ?3c010000 ?bfc0000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?bfc00010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?bfc00010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 2900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?bfc00010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 2950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3421ff3c ?bfc0000c ?bfc0000c ?3421ff3c ?bfc00010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?bfc00014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?bfc00014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?bfc00014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816000 ?bfc00010 ?bfc00010 ?40816000 ?bfc00014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 3900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 3950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?0000ff3c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?bfc00018 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?bfc00018 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?bfc00018 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c010000 ?bfc00014 ?bfc00014 ?3c010000 ?bfc00018 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?bfc0001c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?bfc0001c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?bfc0001c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?34210000 ?bfc00018 ?bfc00018 ?34210000 ?bfc0001c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 4900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 4950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?bfc00020 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?bfc00020 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?bfc00020 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?40816800 ?bfc0001c ?bfc0001c ?40816800 ?bfc00020 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?bfc00024 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?bfc00024 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 5900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?bfc00024 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 5950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?3c1a0040 ?bfc00020 ?bfc00020 ?3c1a0040 ?bfc00024 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00000040 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00000040 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00000040 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00000040 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?bfc00028 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?bfc00028 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?bfc00028 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?375a0000 ?bfc00024 ?bfc00024 ?375a0000 ?bfc00028 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 6900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 6950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?bfc0002c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?bfc0002c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?bfc0002c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?42000010 ?bfc00028 ?bfc00028 ?42000010 ?bfc0002c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?bfc00030 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?bfc00030 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?bfc00030 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?03400008 ?bfc0002c ?bfc0002c ?03400008 ?bfc00030 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 7900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 7950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00000000 ?bfc00030 ?bfc00030 ?00000000 ?00400000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00400004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00400004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00400004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2001000a ?00400000 ?00400000 ?2001000a ?00400004 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 8900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 8950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?00400008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?00400008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?00400008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?20020002 ?00400004 ?00400004 ?20020002 ?00400008 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 9900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 9950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?00000002 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?0040000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?0040000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?0040000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00411820 ?00400008 ?00400008 ?00411820 ?0040000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000a ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?00400010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?00400010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 10900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?00400010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 10950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?2005000c ?0040000c ?0040000c ?2005000c ?00400010 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?00400014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?00400014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?00400014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?10a3002f ?00400010 ?00400010 ?10a3002f ?00400014 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 11900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 11950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?0000000c ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12250000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12300000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12350000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100036 ?00400014 ?00400014 ?08100036 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12400000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12450000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12500000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12550000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12600000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?004000d4 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12650000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?004000d4 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12700000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?004000d4 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12750000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?004000d4 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12800000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00000021 ?004000d4 ?004000d4 ?00000021 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12850000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?00000021 ?004000d4 ?004000d4 ?00000021 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 12900000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00000021 ?004000d4 ?004000d4 ?00000021 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 12950000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?00000021 ?004000d4 ?004000d4 ?00000021 ?004000d0 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 13000000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 13050000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
< 13100000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 13150000 ps> : 0 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?00000000 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?0 ?0 ;
|
||||
< 13200000 ps> : 1 0 0 0 0 1 0 ?1 ?00 ?0 ?08100034 ?004000d0 ?004000d0 ?08100034 ?004000d4 ?111111 ?0 ?0 ?0 ?0 ?0 ?00 ?1 ?1 ?0000000000000000 ?1111111111111111 ?1 ?1 ;
|
||||
|
||||
-- Beware : unprocessed patterns
|
||||
|
||||
< 13250000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13300000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13350000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13400000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13450000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13500000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13550000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13600000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13650000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13700000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13750000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13800000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13850000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13900000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 13950000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14000000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14050000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14100000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14150000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14200000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14250000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14300000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14350000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14400000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14450000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14500000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14550000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14600000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14650000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14700000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14750000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14800000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14850000 ps> : 1 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14900000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
< 14950000 ps> : 0 0 0 0 0 1 0 ?* ?** ?* ?******** ?******** ?******** ?******** ?******** ?****** ?* ?* ?* ?* ?* ?** ?* ?* ?**************** ?**************** ?* ?* ;
|
||||
|
||||
end;
|
|
@ -0,0 +1,35 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : add000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # signed addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x000a
|
||||
val2 .equ 0x0002
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
|
||||
addi r1 , r0 , val1
|
||||
addi r2 , r0 , val2
|
||||
add r3 , r2 , r1
|
||||
|
||||
addi r5 , r0 , (val1 + val2)
|
||||
beq r5 ,r3 , good
|
||||
; nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : add001.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # signed addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val .equ 0x0002
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
addi r1 , r0 , val
|
||||
addi r2 , r0 , val
|
||||
add r3 , r2 , r1
|
||||
|
||||
addi r11, r0 , (val + val)
|
||||
beq r11, r3, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : add002.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # signed addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x1000
|
||||
val2 .equ 0xf000
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
addi r11, r0 , val1
|
||||
addi r12, r0 , val2
|
||||
add r13, r12, r11
|
||||
|
||||
addi r6 , r0, (val1 + val2)
|
||||
beq r6 , r13,good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : add003.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # signed addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0xf1c1
|
||||
val2 .equ 0x1112
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
addi r1 , r0 , val1
|
||||
addi r2 , r0 , val2
|
||||
|
||||
addi r3 , r1 , 1
|
||||
addi r4 , r2 , 2
|
||||
add r17, r3 , r4
|
||||
|
||||
lui r29 , (val1 + val2) + 3
|
||||
sra r29, r29, 16
|
||||
|
||||
beq r29,r17, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : add004.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # signed subtraction #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
vai .equ 1
|
||||
limit .equ 7
|
||||
first .equ 10
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
loadi r1 , limit
|
||||
loadi r2 , first
|
||||
|
||||
loop :
|
||||
addi r4,r0,vai
|
||||
sub r2 , r2 ,r4
|
||||
bne r2 , r1,loop
|
||||
nop
|
||||
|
||||
beq r1,r2,good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : add005.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # signed addition #
|
||||
; # each register is initialized with its number #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
increment .equ 1
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
addi r1 , r0 , increment
|
||||
addi r2 , r1 , increment
|
||||
addi r3 , r2 , increment
|
||||
addi r4 , r3 , increment
|
||||
addi r5 , r4 , increment
|
||||
addi r6 , r5 , increment
|
||||
addi r7 , r6 , increment
|
||||
addi r8 , r7 , increment
|
||||
addi r9 , r8 , increment
|
||||
addi r10, r9 , increment
|
||||
addi r11, r10, increment
|
||||
addi r12, r11, increment
|
||||
addi r13, r12, increment
|
||||
addi r14, r13, increment
|
||||
addi r15, r14, increment
|
||||
addi r16, r15, increment
|
||||
addi r17, r16, increment
|
||||
addi r18, r17, increment
|
||||
addi r19, r18, increment
|
||||
addi r20, r19, increment
|
||||
addi r21, r20, increment
|
||||
addi r22, r21, increment
|
||||
addi r23, r22, increment
|
||||
addi r24, r23, increment
|
||||
addi r25, r24, increment
|
||||
addi r26, r25, increment
|
||||
addi r27, r26, increment
|
||||
addi r28, r27, increment
|
||||
addi r29, r28, increment
|
||||
addi r30, r29, increment
|
||||
addi r31, r30, increment
|
||||
|
||||
addi r30, r0, (increment * 31)
|
||||
beq r31 ,r30 , good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : addu000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # unsigned addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
.org 0x00400000
|
||||
const .equ 0x07cb
|
||||
.start init
|
||||
|
||||
init:
|
||||
addiu r13, r0, const
|
||||
addiu r14, r0, const + 1
|
||||
|
||||
bne r14, r13,good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : addu001.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # unsigned addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
.org 0x00400000
|
||||
const .equ 0x34ae
|
||||
.start init
|
||||
|
||||
init:
|
||||
addiu r18, r0, const
|
||||
addiu r17, r0, const
|
||||
|
||||
beq r18, r17,good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : addu002.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # unsigned addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
const .equ 0x1acb
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
addiu r13, r0, const
|
||||
addiu r14, r0, const
|
||||
nop
|
||||
nop
|
||||
nop
|
||||
addu r15, r13, r14
|
||||
|
||||
addiu r30, r0, (const + const)
|
||||
beq r30, r15,good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : addu000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # unsigned addition #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
.org 0x00400000
|
||||
const1 .equ 0x07cb
|
||||
const2 .equ 0xffff07cb
|
||||
.start init
|
||||
|
||||
init:
|
||||
addiu r13, r0, const1
|
||||
addiu r14, r0, const2
|
||||
|
||||
bne r14, r13,bad
|
||||
nop
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : and000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # Test of AND instruction in 4 steps #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
un .equ 1
|
||||
deux .equ 2
|
||||
trois .equ 3
|
||||
mask .equ 0xffff ;mask = -1
|
||||
mask1 .equ 0x00ff ;mask = -1
|
||||
mask2 .equ 0xff00 ;mask = -1
|
||||
|
||||
init:
|
||||
addiu r5 , r0 , mask ;r5 = -1
|
||||
addiu r6 , r0 , un ;r6 = 1
|
||||
|
||||
and r7 , r6 , r5 ;r7 = 1
|
||||
|
||||
bne r6 , r7, bad
|
||||
nop
|
||||
|
||||
addiu r8 , r0 , mask1
|
||||
addiu r3 , r0 , mask2
|
||||
|
||||
and r9 , r3 , r8 ;r9 = 0
|
||||
|
||||
bne r0, r9, bad
|
||||
nop
|
||||
|
||||
addiu r5 , r0 , un ;r5 = 1
|
||||
addiu r6 , r0 , trois ;r6 = 3
|
||||
|
||||
and r8 , r6 , r5 ;r8 = 1
|
||||
|
||||
bne r5,r8, bad
|
||||
nop
|
||||
|
||||
addiu r7 , r0 , deux ;r7 = 2
|
||||
addiu r9 , r0 , trois ;r9 = 3
|
||||
|
||||
and r6 , r9 , r7 ;r6 = 2
|
||||
|
||||
bne r6,r7, bad
|
||||
nop
|
||||
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : and001.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # and immediate #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data1 .equ 0xd6f2
|
||||
data2 .equ 0xc451
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
addiu r6 , r0 , data1 ; r6 = data2
|
||||
andi r7 , r6 , data2 ; r7 = data1 & data2
|
||||
|
||||
loadi r3 , (data1 & data2) ; good if r7 correct
|
||||
bne r3 , r7 , bad
|
||||
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : beq000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x000057a1
|
||||
val2 .equ 0x00000001
|
||||
val3 .equ 0x000057a2
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
loadi r7 , val1
|
||||
loadi r8 , val2
|
||||
addu r9 , r8 , r7
|
||||
|
||||
loadi r10 , val3
|
||||
|
||||
beq r10 , r9 , good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : beq001.u #
|
||||
; # date : nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0xa7a1
|
||||
val2 .equ 0x2339
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
addi r7 ,r0 , val1
|
||||
addi r8 ,r0 , val2
|
||||
addi r9 ,r0 , (val1 - val2)
|
||||
|
||||
sub r10 , r7 , r8
|
||||
|
||||
beq r10 , r9 , good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bgez000.u #
|
||||
; # date : Nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; # tests if it doesn't branch when it's not greater or #
|
||||
; # equal. Then it tests greater #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0xffffffff
|
||||
val2 .equ 0x0000ffff
|
||||
val3 .equ 0x00000001
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
lui r7 , val1
|
||||
addiu r8 , r0 , val2
|
||||
|
||||
or r10 , r7 , r8
|
||||
|
||||
bgez r10 , bad
|
||||
nop
|
||||
|
||||
addiu r9 , r10 , val3
|
||||
bgez r9 , inter
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
|
||||
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
inter: addiu r9 , r9 , val3
|
||||
bgez r9 , good
|
||||
nop
|
||||
j bad
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bgez001.u #
|
||||
; # date : Nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; # test if equal #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
|
||||
val1 .equ 0x000057a1
|
||||
val2 .equ 0x000057a4
|
||||
val3 .equ 0x00000003
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
loadi r7 , val1
|
||||
loadi r8 , val2
|
||||
|
||||
sub r10 , r7 , r8
|
||||
|
||||
bgez r10 , bad
|
||||
nop
|
||||
|
||||
addiu r9 , r10 , val3
|
||||
bgez r9 , good
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
|
||||
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bgezal000.u #
|
||||
; # date : nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # Branch if greater or equal and link #
|
||||
; # We test when it's greater , when it's lower or equal and #
|
||||
; # if it puts pc + 4 in r31 in all cases #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
const .equ 0x00000002
|
||||
val1 .equ 0x00000001
|
||||
val2 .equ 0x00000002
|
||||
val3 .equ 0x00000008
|
||||
mask .equ 0xffffffff
|
||||
mask1 .equ 0x0000ffff
|
||||
|
||||
.org 0x00400000
|
||||
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r23, const
|
||||
loadi r24, (4 * const)
|
||||
|
||||
bgezal r0, mul2
|
||||
nop
|
||||
addiu r1 , r0 , val1
|
||||
bgezal r1 , mul2
|
||||
nop
|
||||
|
||||
lui r1 , mask
|
||||
addiu r16, r0 , mask1
|
||||
or r1 , r1 , r16
|
||||
bgezal r1 , bad
|
||||
addiu r31, r31, val3
|
||||
jr r31
|
||||
beq r24 ,r23, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
mul2 :
|
||||
addu r23, r23, r23
|
||||
jr r31
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bgtz000.u #
|
||||
; # date : Nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; # Branch if register is greater to zero #
|
||||
; # the 3 cases are tested: greater or equal or lower #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val3 .equ 0xffffffff
|
||||
val4 .equ 0x0000ffff
|
||||
val5 .equ 0x00000005
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
lui r11, val3
|
||||
addiu r16, r0 , val4
|
||||
or r11, r11 , r16
|
||||
|
||||
bgtz r0 , bad
|
||||
nop
|
||||
|
||||
bgtz r11 , bad
|
||||
nop
|
||||
|
||||
addiu r10 , r0 , val5
|
||||
bgtz r10 , good
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
|
||||
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : blez000.u #
|
||||
; # date : Nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
mask .equ 0xffffffff
|
||||
mask1 .equ 0x0000ffff
|
||||
val1 .equ 0x00000001
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
loadi r10, val1
|
||||
|
||||
blez r10 , bad
|
||||
nop
|
||||
|
||||
blez r0 , test
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
test :
|
||||
lui r10 , mask
|
||||
addiu r16 , r0 , mask1
|
||||
or r10 , r10 , r16
|
||||
blez r10 , good
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
|
||||
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bltz000.u #
|
||||
; # date : Nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
mask .equ 0xffffffff
|
||||
mask1 .equ 0x0000ffff
|
||||
val1 .equ 0x00000001
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
loadi r10 , val1
|
||||
|
||||
bltz r10 , bad
|
||||
nop
|
||||
|
||||
bltz r0 , bad
|
||||
j test
|
||||
nop
|
||||
|
||||
test :
|
||||
lui r10 , mask
|
||||
addiu r16 , r0 , mask1
|
||||
or r10 , r10 , r16
|
||||
bltz r10 , good
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
|
||||
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bltzal000.u #
|
||||
; # date : Nov 1996 #
|
||||
; # descr. : functional test for dlx #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
mask .equ 0xffffffff
|
||||
mask1 .equ 0x0000fffe
|
||||
mask2 .equ 0x0000ffff
|
||||
const .equ 0x00000002
|
||||
val1 .equ 0x00000001
|
||||
val2 .equ 0x00000008
|
||||
|
||||
.org 0x00400000
|
||||
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r23, const
|
||||
loadi r24, (4 * const)
|
||||
|
||||
lui r1 , mask
|
||||
addiu r16, r0 , mask1
|
||||
or r1 , r1 , r16
|
||||
bltzal r1 , mul2
|
||||
nop
|
||||
|
||||
lui r1 , mask
|
||||
addiu r16, r0 , mask2
|
||||
or r1 , r1 , r16
|
||||
bltzal r1 , mul2
|
||||
nop
|
||||
|
||||
loadi r1 , val1
|
||||
bltzal r1 , bad
|
||||
bltzal r0 , bad
|
||||
addiu r31 , r31 , val2
|
||||
jr r31
|
||||
|
||||
beq r24 , r23 , good
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
mul2 :
|
||||
addu r23 , r23 , r23
|
||||
jr r31
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bne000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x00000001
|
||||
val2 .equ 0x00000002
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
loadi r7 , val1
|
||||
addu r7 , r7 , r7
|
||||
loadi r8 , val2
|
||||
|
||||
|
||||
bne r7 , r8 , bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : bne000.u #
|
||||
; # date : nov 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # conditional branch #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0xa7a1
|
||||
val2 .equ 0x2339
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init :
|
||||
addi r7 ,r0 , val1
|
||||
addi r8 ,r0 , val2
|
||||
addi r9 ,r0 , (val1 - val2)
|
||||
|
||||
sub r10 , r7 , r8
|
||||
|
||||
bne r10 , r9 , bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : break_00.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - break #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
|
||||
val .equ 0x24
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addi r28, r0, val1
|
||||
mfc0 r29, cause
|
||||
nop
|
||||
and r29, r29, r28
|
||||
addi r27, r0, val
|
||||
bne r29, r27, not_good
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addi r31,r31,8
|
||||
jr r31
|
||||
rfe
|
||||
|
||||
not_good:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addi r31,r31,4
|
||||
jr r31
|
||||
rfe
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # #
|
||||
; # file : break_00.u #
|
||||
; # date : Apr 21 1995 #
|
||||
; # descr. : functional test for mips #
|
||||
; # #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # software interrupt : #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # sotware interrupt #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
break 1
|
||||
j bad
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the the trap has been done (r1 must contain #
|
||||
; # the trap number) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
j good ; jump to good if OK
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc000.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data miss alignement #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
val .equ 0x10
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0(r30)
|
||||
sw r28, 4(r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,52 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc100.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data address miss alignment (when loading a word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x40000050 ; word address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load a word at a miss aligned address (data address #
|
||||
; # alignment exception) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lw r2 , 1 (r1 ) ; EXCEPTION (alignement)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
; check that the lw has failed
|
||||
beq r3 ,r2, good ; jump to good if OK
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc000.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - ades #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
val .equ 0x14
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0(r30)
|
||||
sw r28, 4(r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc001.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data address miss alignment (when storing a word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x40000050
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r1 , adr ; word's address in r1
|
||||
loadi r2 , data ; data in r2
|
||||
loadi r3 , data ; same data in r3
|
||||
loadi r4 , data ^ 0xffffffff ; complemented data in r4
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store the word to initialize the memory location #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sw r2, 0 (r1 )
|
||||
sw r2, 4 (r1 )
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store word at a miss aligned address #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sw r4, 1 (r1 ) ; EXCEPTION (alignment)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception, read the memory location #
|
||||
; # and check that the faulty store word has not modified the #
|
||||
; # memory #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
lw r5 , 0 (r1 )
|
||||
bne r5,r3, bad
|
||||
nop
|
||||
lw r5 , 4 (r1 )
|
||||
bne r5,r3, bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc002.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for dlx #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x30
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc002.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0x6234fe80 ; a big positive data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r10, data ; big positive data in r10
|
||||
loadi r11, data ; same data in r11
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # addition generating an overflow #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
add r10, r10, r10 ; EXCEPTION (overflow)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception check that r10 has not #
|
||||
; # been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r10, r11, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc003.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
system_stack .equ 0xC0000000 ; system stack address
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x30
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addi r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc003.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when subtracting from a positive number) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0x52d4aec6 ; a big positive data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r10, data ; big positive data in r10
|
||||
loadi r11, data ; same data in r11
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # substract generating an overflow #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sub r12, r0 , r10
|
||||
sub r10, r12, r10 ; EXCEPTION (overflow)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception check that r10 has not #
|
||||
; # been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
bne r10, r11,bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc004.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x30
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addi r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc004.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding negative numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0xb2305ec0 ; a big negative data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r10, data ; big positive data in r10
|
||||
loadi r11, data ; same data in r11
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # addtion generating an overflow #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
add r10, r10, r10 ; EXCEPTION (overflow)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception check that r10 has not #
|
||||
; # been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
bne r10,r11, bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc005.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x30
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addi r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc005.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when subtracting from a negative number) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0x946e3d0f ; a big negative data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r10, data ; big negative data in r10
|
||||
loadi r11, data ; same data in r11
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # substract generating an overflow #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sub r12, r0 , r10
|
||||
sub r10, r12, r10 ; EXCEPTION (overflow)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception check that r10 has not #
|
||||
; # been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
bne r10,r11, bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc006.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal instruction address (alignment) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
|
||||
val .equ 0x10 ; adel
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address saved by the user in epc #
|
||||
; # can't be used: it's misaligned !! ) => jump at good. #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
;mfc0 r31,epc
|
||||
;nop
|
||||
;addiu r31,r31,4
|
||||
loadi r31, 0x004000d0
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc006.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal instruction address (alignment) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r20, target_adr + 1 ; missaligned address in r20
|
||||
target_adr:
|
||||
jr r20 ; EXCEPTION (alignment)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # jump to good if returned from exception #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc007.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - adel #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x10 ; adel
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
addiu r27,r0,val
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
bne r27,r29, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
j return
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc007.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal instruction address (segment) #
|
||||
; ###--------------------------------------------------------###
|
||||
it_handler .equ 0x80000080
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r20, it_handler
|
||||
jr r20 ; EXCEPTION (segment)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # jump to good if returned from exception #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc008.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - adel #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
val .equ 0x10 ; adel
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc008.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal data address (segment when loading) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0xC000003c ; data adr in system segment
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load a word at a miss segmented address (data address #
|
||||
; # segment exception) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lw r2 , 0 (r1 ) ; EXCEPTION (segment)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
; check that the lw has failed
|
||||
beq r2 ,r3, good ; jump to good if OK
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc009.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - ri (when executing a mfc0) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
val .equ 0x2C ; cpu
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,8
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc009.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal instruction (when executing a mfc0) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0x324f6b71
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r1 , data ; init. r2 with a data
|
||||
loadi r2 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # move SR into r1. This must generate an exception #
|
||||
; # (coprocesseur inaccessible) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
mfc0 r1 , status ; EXCEPTION (privileged)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
; check that the move has failed
|
||||
beq r1 , r2 ,good ; jump to good if OK
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc010.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - ri #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
val .equ 0x2C ; cpu (copro inaccessible..)
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc010.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal instruction (when executing a mtc0) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
new_sr .equ 0x00000000 ; try to set system mode
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , new_sr ; init. r2 with the desired
|
||||
;+value of sr
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # move r1 into sr. This must generate an exception #
|
||||
; # (privileged instruction) #
|
||||
; ###--------------------------------------------------------###
|
||||
loadi r31,back_from_exception
|
||||
mtc0 r1, status ; EXCEPTION (privileged)
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
back_from_exception:
|
||||
loadi r31,good
|
||||
rfe ; EXCEPTION (privileged)
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc011.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - adel (when loading a half-word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
val .equ 0x10 ; adel
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc011.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data address miss alignment (when loading a half-word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x40000050 ; miss aligned word address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r1 , adr ; half word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load a half-word at a miss aligned address (data address #
|
||||
; # alignment exception) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lh r2 , 1 (r1 ) ; EXCEPTION (alignement)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
; check that the lh has failed
|
||||
beq r2 ,r3, good ; jump to good if OK
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc012.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - ades (when storing a word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
val .equ 0x14 ; ades
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc012.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data address miss alignment (storing a half-word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x40000050
|
||||
data .equ 0x616b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r1 , adr ; half word's address in r1
|
||||
loadi r2 , data ; data in r2
|
||||
loadi r3 , data ; same data in r3
|
||||
loadi r4 , data ^ 0xffffffff ; complemented data in r4
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store the word to initialize the memory location #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sw r2, 0 (r1 )
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store half-word at a miss aligned address #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sh r4, 1 (r1 ) ; EXCEPTION (alignment)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception, read the memory #
|
||||
; # location and check that the faulty store word has not #
|
||||
; # modified the memory #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
lw r5 , 0 (r1 )
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # if the read word is correct branch to good #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
bne r5, r3,bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc013.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - sleep #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C
|
||||
|
||||
system_stack .equ 0xC0000000 ; system stack address
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x28 ; ri
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,8
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc013.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - illegal instruction (when executing a sleep) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # Put the processor in SLEEP mode. This must generate an #
|
||||
; # exception (privileged instruction) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
nop
|
||||
sleep ; EXCEPTION (privileged)
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
|
||||
back_from_exception:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc014.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc014.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when loading a word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load a word and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lw r2 , 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,66 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc015.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for dlx #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x30
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc015.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0x7FFFFFFF; a big positive data
|
||||
imd_data .equ 0x6234
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r10, data ; big positive data in r10
|
||||
loadi r11, data ; same data in r11
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # addition generating an overflow #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
addi r10, r10, imd_data ; EXCEPTION (overflow)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception check that r10 has not #
|
||||
; # been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r10, r11, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc016.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding positive numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; arithmetic overflow
|
||||
|
||||
user_prog .equ 0x00400000
|
||||
val .equ 0x30
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addi r28, r0 ,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data address violation ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in epc) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r1,epc
|
||||
nop
|
||||
addiu r1,r1,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r1
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc016.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - overflow (when adding negative numbers) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
data .equ 0xb2305ec0 ; a big negative data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_exception
|
||||
loadi r10, data ; big positive data in r10
|
||||
loadi r11, data ; same data in r11
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # addtion generating an overflow #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
add r10, r10, r10 ; EXCEPTION (overflow)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # after returning from exception check that r10 has not #
|
||||
; # been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
bne r10,r11, bad
|
||||
nop
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc017.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
addu r3 , r0, r2
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,49 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc017.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when storing a word) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store a word and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sw r2, 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # If exception has been trapped, exception handler had #
|
||||
; # copy r2 in r3. #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,60 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc018.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc018.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when loading a half) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load an half and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lh r2 , 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,60 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc019.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc019.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when loading an unsigned half) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load an unsigned half and dbe low (data bus error #
|
||||
; # exception) berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lhu r2 , 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,62 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc020.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
addu r3 , r0 , r2
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,48 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc020.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when storing an half) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store an half and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sh r2, 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # If exception had been trapped, r2 == r3. #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,60 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc021.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc021.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when loading a byte) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load a word and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lb r2 , 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,60 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc022.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc022.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when loading an unsigned bute) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
loadi r3 , data ; init. r3 with the same value
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # load a word and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
lbu r2 , 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,62 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc023.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
val1 .equ 0x3C ; exc mask
|
||||
val .equ 0x1C ; data bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
addiu r28,r0,val1
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
and r29, r29, r28 ; data bus error ?
|
||||
addiu r27,r0,val
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
addu r3 , r0 , r2
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from EXCEPTION) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
restore_return_adr:
|
||||
mfc0 r31,epc
|
||||
nop
|
||||
addiu r31,r31,4
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,49 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc023.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - data bus error (when storing a byte) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; data bus error address
|
||||
data .equ 0x9043ad6b ; data
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r1 , adr ; word's address
|
||||
loadi r2 , data ; init. r2 with a data
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # store a byte and dbe low (data bus error exception) #
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
sb r2, 0 (r1 ) ; EXCEPTION (data bus error)
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # check that the load has faild and the content of the #
|
||||
; # register has not been altered #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
back_from_exception:
|
||||
beq r3 ,r2, good
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,53 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : exc024.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - instruction bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
xcode_mask .equ 0x3C ; exc mask
|
||||
xcode_ibe .equ 0x18 ; instruction bus error
|
||||
|
||||
.org 0x80000080
|
||||
.start it_handler
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
it_handler:
|
||||
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
mfc0 r29,cause
|
||||
nop
|
||||
addiu r28,r0,xcode_mask
|
||||
and r29, r29, r28 ; instruction bus error ?
|
||||
addiu r27,r0,xcode_ibe
|
||||
bne r29,r27, other_causes
|
||||
nop
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
restore_return_adr:
|
||||
j return
|
||||
nop
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
.org 0x800000d0
|
||||
return:
|
||||
rfe
|
||||
jr r31
|
||||
|
||||
.end
|
|
@ -0,0 +1,40 @@
|
|||
|
||||
; ###----------------------------------------------------------------###
|
||||
; # file : exc024.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # exceptions : #
|
||||
; # - instruction bus error #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
adr .equ 0x400000C8 ; bus error address
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31 , good
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # jump at adr and dbe low (instruction bus error exception)#
|
||||
; # berr is driven by mips_dec.vbe... #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
loadi r1, adr
|
||||
jr r1 ; EXCEPTION (instruction bus error)
|
||||
nop
|
||||
|
||||
j bad
|
||||
nop
|
||||
|
||||
.org 0x004000D0
|
||||
good: j good
|
||||
nop
|
||||
.org 0x004000D8
|
||||
bad: j bad
|
||||
nop
|
||||
|
||||
.end
|
|
@ -0,0 +1,25 @@
|
|||
entity foo is
|
||||
port (
|
||||
address : in bit_vector (5 downto 0);
|
||||
e_n : in bit;
|
||||
data : out mux_vector (7 downto 0) bus;
|
||||
vdd : in bit;
|
||||
vss : in bit);
|
||||
end foo;
|
||||
|
||||
architecture VBE of foo is
|
||||
|
||||
signal rom_out : bit_vector (7 downto 0);
|
||||
|
||||
begin
|
||||
|
||||
write_out : block (e_n = '0')
|
||||
begin
|
||||
data <= guarded rom_out;
|
||||
end block;
|
||||
|
||||
with address (5 downto 0) select
|
||||
rom_out <=
|
||||
X"00" when others;
|
||||
|
||||
end;
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
for I in *0*.u
|
||||
do
|
||||
BENCH=`basename $I .u`
|
||||
echo $BENCH
|
||||
./go-bench.sh $BENCH
|
||||
done
|
||||
|
|
@ -0,0 +1,157 @@
|
|||
#!/bin/sh
|
||||
|
||||
LOG_RES=/tmp/res_mips_"$$"
|
||||
LOG_MSG=/tmp/msg_mips_"$$"
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "usage: $0 <bench_file>"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -f $1.u ]; then
|
||||
echo "error: can't find '$1.u'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TOP=$ALLIANCE_TOP
|
||||
MBK_CATA_LIB=.:$TOP/cells/sclib:$TOP/cells/sxlib:$TOP/cells/padlib:$TOP/cells/dplib:$TOP/cells/dp_sxlib
|
||||
MBK_CATA_LIB=$MBK_CATA_LIB:$TOP/cells/fplib:$TOP/cells/rfg:$TOP/cells/dplib:$TOP/cells/rflib
|
||||
MBK_CATA_LIB=$MBK_CATA_LIB:../sce/
|
||||
export MBK_CATA_LIB
|
||||
MBK_IN_LO=vst
|
||||
export MBK_IN_LO
|
||||
|
||||
rm -f $LOG_RES $LOG_MSG
|
||||
|
||||
echo "################# ---- Test de : $1 ---- #################"
|
||||
|
||||
if [ -f $1.e ]; then
|
||||
cp -f $1.e rome.e
|
||||
$TOP/bin/mips_asm rome.e rome foo 1> /dev/null
|
||||
fi
|
||||
|
||||
if [ -f $1.u ]; then
|
||||
cp -f $1.u romu.u
|
||||
$TOP/bin/mips_asm romu.u romu foo 1> /dev/null
|
||||
fi
|
||||
|
||||
|
||||
|
||||
$TOP/bin/asimut -zerodelay -i 0 -bdd -p 100 mips_cpu mips_cpu $1 1> $LOG_MSG 2> $LOG_RES
|
||||
|
||||
#asimut -zerodelay -bdd -p 100 mips_cpu mips_cpu $1 2>$LOG_RES
|
||||
|
||||
#asimut -zerodelay -bdd -p 100 mips_cpu mips_cpu $1
|
||||
|
||||
|
||||
|
||||
grep -i bad $LOG_RES >/dev/null
|
||||
|
||||
#grep -i bad $LOG_RES
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "ERROR !"
|
||||
fi
|
||||
|
||||
|
||||
grep -i good $LOG_RES > /dev/null
|
||||
|
||||
#grep -i good $LOG_RES
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "No error, you're lucky !"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
grep -i "No such file or directory" $LOG_RES > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= By jove ! a file is missing (asimut) ... ============== "
|
||||
grep -i "No such file or directory" $LOG_RES
|
||||
fi
|
||||
|
||||
|
||||
grep -i "No such file or directory" $LOG_MSG > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= By jove ! Il manque un fichier (asimut) ... ============== "
|
||||
grep -i "No such file or directory" $LOG_MSG
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
grep -i "core dump" $LOG_RES > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= core dump (asimut) ... ========= "
|
||||
fi
|
||||
|
||||
grep -i "core dump" $LOG_MSG > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= core dump (asimut) ... ========= "
|
||||
fi
|
||||
|
||||
|
||||
|
||||
grep "Error" $LOG_RES > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= Error (asimut) ... ==== "
|
||||
grep -i "Error" $LOG_RES
|
||||
fi
|
||||
|
||||
grep "Error" $LOG_MSG > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= Error ! (asimut) ... ==== "
|
||||
grep -i "Error" $LOG_MSG
|
||||
fi
|
||||
|
||||
|
||||
|
||||
grep "can't open file" $LOG_RES > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= A file is missing (asimut) ... ========== "
|
||||
grep -i "can't open file" $LOG_RES
|
||||
fi
|
||||
|
||||
grep "can't open file" $LOG_MSG > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
echo "================= A file is missing (asimut) ... ========== "
|
||||
grep -i "can't open file" $LOG_MSG
|
||||
fi
|
||||
|
||||
|
||||
|
||||
grep "exception occured" $LOG_RES > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
grep "exc" $1.u > /dev/null
|
||||
if [ ! $? -eq 0 ] ; then
|
||||
echo "================= Exception (asimut) ... ======== "
|
||||
fi
|
||||
fi
|
||||
|
||||
grep "exception occured" $LOG_MSG > /dev/null
|
||||
|
||||
if [ $? -eq 0 ] ; then
|
||||
grep "exc" $1.u > /dev/null
|
||||
if [ ! $? -eq 0 ] ; then
|
||||
echo "================= Exception (asimut) ... ======== "
|
||||
fi
|
||||
fi
|
||||
|
||||
rm -f toto.vbe
|
||||
rm -f romu.u
|
||||
rm -f rome.e
|
||||
rm -f $LOG_RES
|
||||
rm -f $LOG_MSG
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it000.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # hardware interrupt #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
hardware_it0 .equ 0x00000400
|
||||
hardware_it1 .equ 0x00000800
|
||||
hardware_it2 .equ 0x00001000
|
||||
hardware_it3 .equ 0x00002000
|
||||
hardware_it4 .equ 0x00004000
|
||||
hardware_it5 .equ 0x00008000
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
.org 0x80000080
|
||||
.start handler_body
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
handler_body:
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
loadi r28, hardware_it0
|
||||
mfc0 r29, cause
|
||||
nop
|
||||
and r29, r29, r28 ; hardware interrupt 0 ?
|
||||
bne r29, r28,other_causes
|
||||
nop
|
||||
; ###---------------------------------------------###
|
||||
; # On releve la ligne it #
|
||||
; ###---------------------------------------------###
|
||||
loadi r28, timer_sts
|
||||
sw r0, 0(r28)
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from INTERRUPT) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in r31) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
return:
|
||||
rfe ; return from exception
|
||||
jr r31
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it000.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # decrementation loop (with a hardware interrupt) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
value .equ 0x0008
|
||||
v_sts .equ 0x0001
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_int
|
||||
loadi r1 , timer_0
|
||||
addiu r2 , r0 , value
|
||||
sw r2,0(r1)
|
||||
loadi r1 , timer_sts
|
||||
addiu r2 , r0 , v_sts
|
||||
sw r2, 0(r1)
|
||||
|
||||
addiu r10, r0 , v_sts
|
||||
lui r20, 0xffff
|
||||
addiu r16, r0 , 0xfffa
|
||||
or r20, r16, r20
|
||||
loop:
|
||||
addu r20,r10,r20
|
||||
bne r20,r0, loop
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
back_from_int:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it001.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # hardware interrupt #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
hardware_it0 .equ 0x00000400
|
||||
hardware_it1 .equ 0x00000800
|
||||
hardware_it2 .equ 0x00001000
|
||||
hardware_it3 .equ 0x00002000
|
||||
hardware_it4 .equ 0x00004000
|
||||
hardware_it5 .equ 0x00008000
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
.org 0x80000080
|
||||
.start handler_body
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
handler_body:
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
loadi r28, hardware_it1
|
||||
mfc0 r29, cause
|
||||
nop
|
||||
and r29, r29, r28 ; hardware interrupt 1 ?
|
||||
bne r29, r28,other_causes
|
||||
nop
|
||||
; ###---------------------------------------------###
|
||||
; # On releve la ligne it #
|
||||
; ###---------------------------------------------###
|
||||
loadi r28, timer_sts
|
||||
sw r0, 0(r28)
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from INTERRUPT) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in r31) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
return:
|
||||
rfe ; return from exception
|
||||
jr r31
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it001.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # decrementation loop (with a hardware interrupt) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
value .equ 0x0008
|
||||
v_sts .equ 0x0002
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_int
|
||||
loadi r1 , timer_1
|
||||
addiu r2 , r0 , value
|
||||
sw r2, 0(r1)
|
||||
loadi r1 , timer_sts
|
||||
addiu r2 , r0 , v_sts
|
||||
sw r2, 0(r1)
|
||||
|
||||
addiu r10, r0 , 0x0001
|
||||
lui r20, 0xffff
|
||||
addiu r16, r0, 0xfffb
|
||||
or r20, r20, r16
|
||||
loop:
|
||||
addu r20,r10,r20
|
||||
bne r20,r10, loop
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
back_from_int:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it002.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # hardware interrupt #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
hardware_it0 .equ 0x00000400
|
||||
hardware_it1 .equ 0x00000800
|
||||
hardware_it2 .equ 0x00001000
|
||||
hardware_it3 .equ 0x00002000
|
||||
hardware_it4 .equ 0x00004000
|
||||
hardware_it5 .equ 0x00008000
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
.org 0x80000080
|
||||
.start handler_body
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
handler_body:
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
loadi r28, hardware_it2
|
||||
mfc0 r29, cause
|
||||
nop
|
||||
and r29, r29, r28 ; hardware interrupt 2 ?
|
||||
bne r29, r28,other_causes
|
||||
nop
|
||||
; ###---------------------------------------------###
|
||||
; # On releve la ligne it #
|
||||
; ###---------------------------------------------###
|
||||
loadi r28, timer_sts
|
||||
sw r0, 0(r28)
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from INTERRUPT) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in r31) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
return:
|
||||
rfe ; return from exception
|
||||
jr r31
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it002.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # decrementation loop (with a hardware interrupt) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
value .equ 0x0008
|
||||
v_sts .equ 0x0004
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_int
|
||||
loadi r1 , timer_2
|
||||
addiu r2 , r0 , value
|
||||
sw r2, 0(r1)
|
||||
loadi r1 , timer_sts
|
||||
addiu r2 , r0 , v_sts
|
||||
sw r2, 0(r1)
|
||||
|
||||
addiu r10, r0 , 0x0001
|
||||
lui r20, 0xffff
|
||||
addiu r16, r0, 0xfffa
|
||||
or r20, r20, r16
|
||||
loop:
|
||||
addu r20,r10,r20
|
||||
bne r20,r0, loop
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
back_from_int:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it003.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # hardware interrupt #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
hardware_it0 .equ 0x00000400
|
||||
hardware_it1 .equ 0x00000800
|
||||
hardware_it2 .equ 0x00001000
|
||||
hardware_it3 .equ 0x00002000
|
||||
hardware_it4 .equ 0x00004000
|
||||
hardware_it5 .equ 0x00008000
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
.org 0x80000080
|
||||
.start handler_body
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
handler_body:
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
loadi r28, hardware_it3
|
||||
mfc0 r29, cause
|
||||
nop
|
||||
and r29, r29, r28 ; hardware interrupt 3 ?
|
||||
bne r29, r28,other_causes
|
||||
nop
|
||||
; ###---------------------------------------------###
|
||||
; # On releve la ligne it #
|
||||
; ###---------------------------------------------###
|
||||
loadi r28, timer_sts
|
||||
sw r0, 0(r28)
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from INTERRUPT) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in r31) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
return:
|
||||
rfe ; return from exception
|
||||
jr r31
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
.end
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it003.u #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # decrementation loop (with a hardware interrupt) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
value .equ 0x0008
|
||||
v_sts .equ 0x0008
|
||||
|
||||
.org 0x00400000
|
||||
.start init
|
||||
|
||||
init:
|
||||
loadi r31, back_from_int
|
||||
loadi r1 , timer_3
|
||||
addiu r2 , r0 , value
|
||||
sw r2, 0(r1)
|
||||
loadi r1 , timer_sts
|
||||
addiu r2 , r0 , v_sts
|
||||
sw r2, 0(r1)
|
||||
|
||||
addiu r10, r0 , 0x0001
|
||||
lui r20, 0xffff
|
||||
addiu r16, r0, 0xfffa
|
||||
or r20, r20, r16
|
||||
loop:
|
||||
addu r20,r10,r20
|
||||
bne r20,r0, loop
|
||||
nop
|
||||
j bad
|
||||
nop
|
||||
|
||||
back_from_int:
|
||||
j good
|
||||
nop
|
||||
|
||||
.org 0x004000d0
|
||||
good: j good
|
||||
nop
|
||||
bad: j bad
|
||||
nop
|
||||
.end
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
; ###----------------------------------------------------------------###
|
||||
; # file : it004.s #
|
||||
; # date : Mar 26 1996 #
|
||||
; # descr. : functional test for mips #
|
||||
; ###----------------------------------------------------------------###
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # hardware interrupt #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
hardware_it0 .equ 0x00000400
|
||||
hardware_it1 .equ 0x00000800
|
||||
hardware_it2 .equ 0x00001000
|
||||
hardware_it3 .equ 0x00002000
|
||||
hardware_it4 .equ 0x00004000
|
||||
hardware_it5 .equ 0x00008000
|
||||
|
||||
timer_0 .equ 0x40000100
|
||||
timer_1 .equ 0x40000104
|
||||
timer_2 .equ 0x40000108
|
||||
timer_3 .equ 0x4000010C
|
||||
timer_4 .equ 0x40000110
|
||||
timer_5 .equ 0x40000114
|
||||
timer_rst .equ 0x40000118
|
||||
timer_sts .equ 0x4000011C
|
||||
|
||||
.org 0x80000080
|
||||
.start handler_body
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # interrupt and exception handler #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
handler_body:
|
||||
sw r29, 0 (r30)
|
||||
sw r28, 4 (r30)
|
||||
|
||||
loadi r28, hardware_it4
|
||||
mfc0 r29, cause
|
||||
nop
|
||||
and r29, r29, r28 ; hardware interrupt 4 ?
|
||||
bne r29, r28,other_causes
|
||||
nop
|
||||
; ###---------------------------------------------###
|
||||
; # On releve la ligne it #
|
||||
; ###---------------------------------------------###
|
||||
loadi r28, timer_sts
|
||||
sw r0, 0(r28)
|
||||
|
||||
lw r29, 0 (r30)
|
||||
lw r28, 4 (r30)
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # restore return address before returning (from INTERRUPT) #
|
||||
; # to the user program (address must be saved by the user #
|
||||
; # prior to the EXCEPTION in r31) #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
return:
|
||||
rfe ; return from exception
|
||||
jr r31
|
||||
|
||||
other_causes: j other_causes
|
||||
nop
|
||||
|
||||
; ###--------------------------------------------------------###
|
||||
; # return to the interrupted program #
|
||||
; ###--------------------------------------------------------###
|
||||
|
||||
|
||||
.end
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue