diff options
author | Pixel <> | 2001-04-16 01:01:29 +0000 |
---|---|---|
committer | Pixel <> | 2001-04-16 01:01:29 +0000 |
commit | c9ad75bd7d192a3c21402de7d0de3bfb907ed842 (patch) | |
tree | 7f890926a1b35f2ef84c2db10d7bfe3cd0dab275 /lib | |
parent | 3704103d814f827a3a7a2f9a9152f2e8e88bb88b (diff) |
asm
Diffstat (limited to 'lib')
-rw-r--r-- | lib/assembler.c | 3 | ||||
-rw-r--r-- | lib/instructions.txt | 32 |
2 files changed, 17 insertions, 18 deletions
diff --git a/lib/assembler.c b/lib/assembler.c index 79fcbce..dec26e8 100644 --- a/lib/assembler.c +++ b/lib/assembler.c @@ -1371,8 +1371,7 @@ static void evaluate_pattern(_TableauVariable * it, expression_t * e) m = m->left; if (m->string) { if (m->type) { - if (strcmp(m->name, "I") || strcmp(m->string, "O") - || strcmp(m->string, "o")) { + if (strcmp(m->name, "I") || strcmp(m->string, "O")) { exception(1, _("Unknow constant type in the meta language")); } tv = 0; diff --git a/lib/instructions.txt b/lib/instructions.txt index d93edba..8b04e1b 100644 --- a/lib/instructions.txt +++ b/lib/instructions.txt @@ -9,7 +9,7 @@ Pr:R0;R1;R2;R3;R4;R5;R6;R7;R8;R9;R10;R11;R12;R13;R14;R15;R16;R17;R18;R19;R20;R21 # Pattern des adressages # .O = Adresse absolue (relogée) -# .o = Adresse relative à l'instruction en cours (ex: Label, Label + 2, __current__ + 4) +# .O = Adresse relative à l'instruction en cours (ex: Label, Label + 2, __current__ + 4) Pm:regop=.Pr;.I=.O;[regop=.Pr;.I=.O[regop=.Pr # bits 3 - 2 @@ -94,24 +94,24 @@ I:NOP;op=0x9 # 10 test1 && !test2 == !(!test1 || test2) # 11 test1 || !test2 == !(!test1 && test2) -I:JE c1=.Pr,c2=.Pr,.I=.o;op=0xb;e=0x0 -I:JNE c1=.Pr,c2=.Pr,.I=.o;op=0xb;e=0x1 -I:JL c1=.Pr,c2=.Pr,.I=.o;op=0xb;e=0x2 -I:JLE c1=.Pr,c2=.Pr,.I=.o;op=0xb;e=0x3 -I:JG c2=.Pr,c1=.Pr,.I=.o;op=0xb;e=0x2 -I:JGE c2=.Pr,c1=.Pr,.I=.o;op=0xb;e=0x3 +I:JE c1=.Pr,c2=.Pr,.I=.O;op=0xa;e=0x0 +I:JNE c1=.Pr,c2=.Pr,.I=.O;op=0xa;e=0x1 +I:JL c1=.Pr,c2=.Pr,.I=.O;op=0xa;e=0x2 +I:JLE c1=.Pr,c2=.Pr,.I=.O;op=0xa;e=0x3 +I:JG c2=.Pr,c1=.Pr,.I=.O;op=0xa;e=0x2 +I:JGE c2=.Pr,c1=.Pr,.I=.O;op=0xa;e=0x3 -I:JO .I=.o;op=0xb;e=0x10 -I:JZ .I=.o;op=0xb;e=0x14 -I:JS .I=.o;op=0xb;e=0x18 -I:JP .I=.o;op=0xb;e=0x1c +I:JO .I=.O;op=0xa;e=0x10 +I:JZ .I=.O;op=0xa;e=0x14 +I:JS .I=.O;op=0xa;e=0x18 +I:JP .I=.O;op=0xa;e=0x1c -I:JNO .I=.o;op=0xb;e=0x30 -I:JNZ .I=.o;op=0xb;e=0x34 -I:JNS .I=.o;op=0xb;e=0x38 -I:JNP .I=.o;op=0xb;e=0x3c +I:JNO .I=.O;op=0xa;e=0x30 +I:JNZ .I=.O;op=0xa;e=0x34 +I:JNS .I=.O;op=0xa;e=0x38 +I:JNP .I=.O;op=0xa;e=0x3c -I:JMP .I=.o;op=0x0d;e=0x2 +I:JMP .I=.O;op=0x0c;e=0x2 I:HALT;op=0x7f I:RESET;op=0x7f;e=1 |