* device/lib/Makefile.in: remove abspath for PORTDIR, introduced in
[fw/sdcc] / src / z80 / mappings.i
index 60267bd0c829a4480ba3447c9d5c6b182e3a3f08..43d29afbb726fe089754411a2395c5ca127c33c1 100644 (file)
@@ -7,6 +7,7 @@ static const ASM_MAPPING _asxxxx_gb_mapping[] = {
     { "functionlabeldef", "%s:" },
     { "*hl", "(hl)" },
     { "di", "di" },
+    { "ei", "ei" },
     { "ldahli", "ld a,(hl+)" },
     { "ldahlsp", "lda hl,%d(sp)" },
     { "ldaspsp", "lda sp,%d(sp)" },
@@ -35,6 +36,12 @@ static const ASM_MAPPING _asxxxx_gb_mapping[] = {
       "\tpush de\n"
       "\tpush hl"
     },
+    { "popa", 
+      "pop hl\n"
+      "\tpop de\n"
+      "\tpop bc\n"
+      "\tpop af"
+    },
     { "adjustsp", "lda sp,-%d(sp)" },
     { "fileprelude", "" },
     { "profileenter",
@@ -54,10 +61,11 @@ static const ASM_MAPPING _asxxxx_z80_mapping[] = {
     { "areacode", ".area _%s" },
     { "areadata", ".area _%s" },
     { "areahome", ".area _%s" },
-    { "*ixx", "%d(ix)" },
-    { "*iyx", "%d(iy)" },
+    { "*ixx", "%d (ix)" },
+    { "*iyx", "%d (iy)" },
     { "*hl", "(hl)" },
     { "di", "di" },
+    { "ei", "ei" },
     { "ldahli", 
                "ld a,(hl)\n"
                "\tinc\thl" },
@@ -93,7 +101,15 @@ static const ASM_MAPPING _asxxxx_z80_mapping[] = {
                "push af\n"
                "\tpush\tbc\n"
                "\tpush\tde\n"
-               "\tpush\thl"
+               "\tpush\thl\n"
+               "\tpush\tiy"
+    },
+    { "popa",
+               "pop iy\n"
+               "\tpop\thl\n"
+               "\tpop\tde\n"
+               "\tpop\tbc\n"
+               "\tpop\taf"
     },
     { "adjustsp", "lda sp,-%d(sp)" },
     { "profileenter",
@@ -172,7 +188,14 @@ static const ASM_MAPPING _rgbds_gb_mapping[] = {
       "\tpush de\n"
       "\tpush hl"
     },
+    { "popa", 
+      "pop hl\n"
+      "\tpop de\n"
+      "\tpop bc\n"
+      "\tpop af"
+    },
     { "di", "di" },
+    { "ei", "ei" },
     { "adjustsp", "add sp,-%d" },
     { "enter", "" },
     { "enterx", "add sp,-%d"
@@ -257,7 +280,14 @@ static const ASM_MAPPING _isas_gb_mapping[] = {
       "\tpush de\n"
       "\tpush hl"
     },
+    { "popa", 
+      "pop hl\n"
+      "\tpop de\n"
+      "\tpop bc\n"
+      "\tpop af"
+    },
     { "di", "di" },
+    { "ei", "ei" },
     { "adjustsp", "add sp,-%d" },
     { "enter", "" },
     { "enterx", "add sp,-%d"
@@ -335,6 +365,7 @@ static const ASM_MAPPING _z80asm_z80_mapping[] = {
     { "*iyx", "(iy%+d)" },
     { "*hl", "(hl)" },
     { "di", "di" },
+    { "ei", "ei" },
     { "ldahli", 
                "ld a,(hl)\n"
                "\tinc\thl" },
@@ -370,7 +401,15 @@ static const ASM_MAPPING _z80asm_z80_mapping[] = {
                "push af\n"
                "\tpush\tbc\n"
                "\tpush\tde\n"
-               "\tpush\thl"
+               "\tpush\thl\n"
+               "\tpush\tiy"
+    },
+    { "popa", 
+               "pop\tiy\n"
+               "\tpop\thl\n"
+               "\tpop\tde\n"
+               "\tpop\tbc\n"
+               "\tpop\taf"
     },
     { "adjustsp", "lda sp,(sp%+d)" },
     { "profileenter",