Previous 199869 Revisions Next

r34037 Wednesday 24th December, 2014 at 00:24:41 UTC by David Haywood
arcompact (nw)
[src/emu/cpu/arcompact]arcompact.h arcompact_execute.c arcompactdasm_ops.c

trunk/src/emu/cpu/arcompact/arcompact.h
r242548r242549
151151   ARCOMPACT_RETTYPE arcompact_handle04_02(OPS_32);
152152   ARCOMPACT_RETTYPE arcompact_handle04_03(OPS_32);
153153//   ARCOMPACT_RETTYPE arcompact_handle04_04(OPS_32);
154   ARCOMPACT_RETTYPE arcompact_handle04_05(OPS_32);
154//   ARCOMPACT_RETTYPE arcompact_handle04_05(OPS_32);
155155//   ARCOMPACT_RETTYPE arcompact_handle04_06(OPS_32);
156156//   ARCOMPACT_RETTYPE arcompact_handle04_07(OPS_32);
157157   ARCOMPACT_RETTYPE arcompact_handle04_08(OPS_32);
r242548r242549
168168   ARCOMPACT_RETTYPE arcompact_handle04_13(OPS_32);
169169   ARCOMPACT_RETTYPE arcompact_handle04_14(OPS_32);
170170   ARCOMPACT_RETTYPE arcompact_handle04_15(OPS_32);
171   ARCOMPACT_RETTYPE arcompact_handle04_16(OPS_32);
171//   ARCOMPACT_RETTYPE arcompact_handle04_16(OPS_32);
172172   ARCOMPACT_RETTYPE arcompact_handle04_17(OPS_32);
173173   ARCOMPACT_RETTYPE arcompact_handle04_18(OPS_32);
174174   ARCOMPACT_RETTYPE arcompact_handle04_19(OPS_32);
r242548r242549
192192   ARCOMPACT_RETTYPE arcompact_handle04_2f_05(OPS_32);
193193   ARCOMPACT_RETTYPE arcompact_handle04_2f_06(OPS_32);
194194   ARCOMPACT_RETTYPE arcompact_handle04_2f_07(OPS_32);
195   ARCOMPACT_RETTYPE arcompact_handle04_2f_08(OPS_32);
195//   ARCOMPACT_RETTYPE arcompact_handle04_2f_08(OPS_32);
196196   ARCOMPACT_RETTYPE arcompact_handle04_2f_09(OPS_32);
197197   ARCOMPACT_RETTYPE arcompact_handle04_2f_0a(OPS_32);
198198   ARCOMPACT_RETTYPE arcompact_handle04_2f_0b(OPS_32);
r242548r242549
210210   ARCOMPACT_RETTYPE arcompact_handle04_35(OPS_32);
211211   ARCOMPACT_RETTYPE arcompact_handle04_36(OPS_32);
212212   ARCOMPACT_RETTYPE arcompact_handle04_37(OPS_32);
213   ARCOMPACT_RETTYPE arcompact_handle05_00(OPS_32);
214   ARCOMPACT_RETTYPE arcompact_handle05_01(OPS_32);
213   //ARCOMPACT_RETTYPE arcompact_handle05_00(OPS_32);
214   //ARCOMPACT_RETTYPE arcompact_handle05_01(OPS_32);
215215   ARCOMPACT_RETTYPE arcompact_handle05_02(OPS_32);
216216   ARCOMPACT_RETTYPE arcompact_handle05_03(OPS_32);
217217   ARCOMPACT_RETTYPE arcompact_handle05_04(OPS_32);
r242548r242549
768768
769769   ARCOMPACT_HANDLER04_TYPE_PM(04_00);
770770   ARCOMPACT_HANDLER04_TYPE_PM(04_04);
771   ARCOMPACT_HANDLER04_TYPE_PM(04_05);
771772   ARCOMPACT_HANDLER04_TYPE_PM(04_06);
772773   ARCOMPACT_HANDLER04_TYPE_PM(04_07);
773774   ARCOMPACT_HANDLER04_TYPE_PM(04_0a);
774775   ARCOMPACT_HANDLER04_TYPE_PM(04_0f);
776   ARCOMPACT_HANDLER04_TYPE_PM(04_16);
775777   ARCOMPACT_HANDLER04_TYPE_PM(04_20);
776778
779   ARCOMPACT_HANDLER04_TYPE_PM(04_2f_08);
780
781   ARCOMPACT_HANDLER04_TYPE_PM(05_00);
782   ARCOMPACT_HANDLER04_TYPE_PM(05_01);
783
784
777785private:
778786   address_space_config m_program_config;
779787
trunk/src/emu/cpu/arcompact/arcompact_execute.c
r242548r242549
11091109{
11101110   int size = 4;
11111111   // Branch Unconditionally Far
1112   arcompact_log("unimplemented B %08x", op);
1112   INT32 address = (op & 0x07fe0000) >> 17;
1113   address |= ((op & 0x0000ffc0) >> 6) << 10;
1114   address |= ((op & 0x0000000f) >> 0) << 20;
1115   if (address & 0x800000) address = -0x800000 + (address & 0x7fffff);
1116   int n = (op & 0x00000020) >> 5; op &= ~0x00000020;
1117//   int res =  (op & 0x00000010) >> 4; op &= ~0x00000010; // should be set to 0
1118
1119   UINT32 realaddress = PC_ALIGNED32 + (address * 2);
1120
1121   if (n)
1122   {
1123      m_delayactive = 1;
1124      m_delayjump = realaddress;
1125      m_delaylinks = 0; // don't link
1126   }
1127   else
1128   {
1129   //   m_regs[REG_BLINK] = m_pc + (size >> 0);  // don't link
1130      return realaddress;
1131   }
1132
1133
11131134   return m_pc + (size>>0);
11141135
11151136}
r242548r242549
12591280   return m_pc + (size>>0);
12601281}
12611282
1262ARCOMPACT_RETTYPE arcompact_device::arcompact_handle01_01_00_02(OPS_32)  { return arcompact_01_01_00_helper( PARAMS, "BRLT"); }
1283ARCOMPACT_RETTYPE arcompact_device::arcompact_handle01_01_00_02(OPS_32) // regiter - register BRLT
1284{
1285   BR_REGREG_SETUP
1286
1287   // BRLT  (signed operation)
1288   if ((INT32)b < (INT32)c)
1289   {
1290      BR_TAKEJUMP
1291   }
1292   
1293   return m_pc + (size>>0);
1294
1295}
12631296ARCOMPACT_RETTYPE arcompact_device::arcompact_handle01_01_00_03(OPS_32) // register - register BRGE
12641297{
12651298   BR_REGREG_SETUP
r242548r242549
16741707
16751708   }
16761709
1677   arcompact_log("unimplemented %s %08x", optext, op);
1710   arcompact_log("unimplemented %s %08x (04 type helper)", optext, op);
16781711
16791712   return m_pc + (size>>0);
16801713}
r242548r242549
17201753   /* todo: is the limm, limm syntax valid? (it's pointless.) */ \
17211754   /* todo: if areg = LIMM then there is no result (but since that register can never be read, I guess it doesn't matter if we store it there anyway?) */ \
17221755
1756#define SETUP_HANDLE04_0x_P01 \
1757   int size = 4; \
1758   UINT32 limm = 0; \
1759/*   int got_limm = 0; */ \
1760    \
1761   COMMON32_GET_breg; \
1762   COMMON32_GET_F; \
1763   COMMON32_GET_u6; \
1764   COMMON32_GET_areg; \
1765   \
1766   UINT32 b, c; \
1767   \
1768   /* is having b as LIMM valid here? LIMM vs. fixed u6 value makes no sense */ \
1769   if (breg == LIMM_REG) \
1770   { \
1771      GET_LIMM_32; \
1772      size = 8; \
1773/*      got_limm = 1; */ \
1774      b = limm; \
1775   } \
1776   else \
1777   { \
1778      b = m_regs[breg]; \
1779   } \
1780    \
1781    c = u; \
1782   \
1783   /* todo: if areg = LIMM then there is no result (but since that register can never be read, I guess it doesn't matter if we store it there anyway?) */ \
17231784
17241785
1786
17251787ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_00_p00(OPS_32)
17261788{
17271789   SETUP_HANDLE04_0x_P00
r242548r242549
17381800
17391801ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_00_p01(OPS_32)
17401802{
1741   int size = 4;
1742   UINT32 limm = 0;
1743//   int got_limm = 0;
1803   SETUP_HANDLE04_0x_P01
17441804
1745   COMMON32_GET_breg;
1746   COMMON32_GET_F;
1747   COMMON32_GET_u6
1748   COMMON32_GET_areg
1749
1750   UINT32 b, c;
1751
1752   // is having b as LIMM valid here? LIMM vs. fixed u6 value makes no sense
1753   if (breg == LIMM_REG)
1754   {
1755      GET_LIMM_32;
1756      size = 8;
1757//      got_limm = 1;
1758      b = limm;
1759   }
1760   else
1761   {
1762      b = m_regs[breg];
1763   }
1764
1765   c = u;
1766
1767   // todo: if areg = LIMM then there is no result (but since that register can never be read, I guess it doesn't matter if we store it there anyway?)
17681805   m_regs[areg] = b + c;
17691806
17701807   if (F)
r242548r242549
18291866
18301867ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_04_p01(OPS_32)
18311868{
1832   int size = 4;
1833   UINT32 limm = 0;
1834//   int got_limm = 0;
1835
1836   COMMON32_GET_breg;
1837   COMMON32_GET_F;
1838   COMMON32_GET_u6
1839   COMMON32_GET_areg
1840
1841   UINT32 b, c;
1842
1843   // is having b as LIMM valid here? LIMM vs. fixed u6 value makes no sense
1844   if (breg == LIMM_REG)
1845   {
1846      GET_LIMM_32;
1847      size = 8;
1848//      got_limm = 1;
1849      b = limm;
1850   }
1851   else
1852   {
1853      b = m_regs[breg];
1854   }
1855
1856   c = u;
1857
1858   // todo: if areg = LIMM then there is no result (but since that register can never be read, I guess it doesn't matter if we store it there anyway?)
1869   SETUP_HANDLE04_0x_P01
18591870   m_regs[areg] = b & c;
18601871
18611872   if (F)
r242548r242549
18881899}
18891900
18901901
1891ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_05(OPS_32) 
1902// OR
1903ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_05_p00(OPS_32)
18921904{
1893   return arcompact_handle04_helper(PARAMS, opcodes_04[0x05], /*"OR"*/ 0,0);
1905   SETUP_HANDLE04_0x_P00
1906
1907   m_regs[areg] = b | c;
1908
1909   if (F)
1910   {
1911      arcompact_fatal("arcompact_handle04_05_p00 (OR) (F set)\n"); // not yet supported
1912   }
1913
1914   return m_pc + (size >> 0);
18941915}
18951916
1917ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_05_p01(OPS_32)
1918{
1919   int size = 4;
1920   arcompact_fatal("arcompact_handle04_05_p01 (OR)\n");
1921   return m_pc + (size >> 0);
1922}
18961923
1924ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_05_p10(OPS_32)
1925{
1926   int size = 4;
1927   arcompact_fatal("arcompact_handle04_05_p10 (OR)\n");
1928   return m_pc + (size >> 0);
1929}
1930
1931ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_05_p11_m0(OPS_32)
1932{
1933   int size = 4;
1934   arcompact_fatal("arcompact_handle04_05_p11_m0 (OR)\n");
1935   return m_pc + (size >> 0);
1936}
1937
1938ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_05_p11_m1(OPS_32)
1939{
1940   int size = 4;
1941   arcompact_fatal("arcompact_handle04_05_p11_m1 (OR)\n");
1942   return m_pc + (size >> 0);
1943}
1944
18971945// Bitwise AND Operation with Inverted Source
18981946ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_06_p00(OPS_32) // BIC
18991947{
r242548r242549
19501998
19511999ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_07_p01(OPS_32)
19522000{
1953   int size = 4;
1954   UINT32 limm = 0;
1955//   int got_limm = 0;
1956
1957   COMMON32_GET_breg;
1958   COMMON32_GET_F;
1959   COMMON32_GET_u6
1960   COMMON32_GET_areg
1961
1962   UINT32 b, c;
1963
1964   // is having b as LIMM valid here? LIMM vs. fixed u6 value makes no sense
1965   if (breg == LIMM_REG)
1966   {
1967      GET_LIMM_32;
1968      size = 8;
1969//      got_limm = 1;
1970      b = limm;
1971   }
1972   else
1973   {
1974      b = m_regs[breg];
1975   }
1976
1977   c = u;
1978
1979   // todo: if areg = LIMM then there is no result (but since that register can never be read, I guess it doesn't matter if we store it there anyway?)
2001   SETUP_HANDLE04_0x_P01
19802002   m_regs[areg] = b ^ c;
19812003
19822004   if (F)
r242548r242549
22082230   return arcompact_handle04_helper(PARAMS, opcodes_04[0x15], /*"ADD2"*/ 0,0);
22092231}
22102232
2211ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_16(OPS_32) 
2212{
2213   return arcompact_handle04_helper(PARAMS, opcodes_04[0x16], /*"ADD3"*/ 0,0);
2233
2234ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_16_p00(OPS_32) // ADD3
2235{
2236   int size = 4;
2237   arcompact_fatal("arcompact_handle04_16_p00 (ADD3)\n");
2238
2239   return m_pc + (size >> 0);
22142240}
22152241
2242ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_16_p01(OPS_32)
2243{
2244   SETUP_HANDLE04_0x_P01
2245
2246   m_regs[areg] = b + (c << 3); // c = u
2247
2248   if (F)
2249   {
2250      arcompact_fatal("arcompact_handle04_16_p01 (ADD3) (F set)\n"); // not yet supported
2251   }
2252
2253   return m_pc + (size >> 0);
2254}
2255
2256ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_16_p10(OPS_32)
2257{
2258   int size = 4;
2259   arcompact_fatal("arcompact_handle04_16_p10 (ADD3)\n");
2260   return m_pc + (size >> 0);
2261}
2262
2263ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_16_p11_m0(OPS_32)
2264{
2265   int size = 4;
2266   arcompact_fatal("arcompact_handle04_16_p11_m0 (ADD3)\n");
2267   return m_pc + (size >> 0);
2268}
2269
2270ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_16_p11_m1(OPS_32)
2271{
2272   int size = 4;
2273   arcompact_fatal("arcompact_handle04_16_p11_m1 (ADD3)\n");
2274   return m_pc + (size >> 0);
2275}
2276
22162277ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_17(OPS_32) 
22172278{
22182279   return arcompact_handle04_helper(PARAMS, opcodes_04[0x17], /*"SUB1"*/ 0,0);
r242548r242549
25572618}
25582619
25592620
2621#define SETUP_HANDLE04_2f_0x_P00 \
2622   int size = 4; \
2623   UINT32 limm = 0; \
2624   \
2625   COMMON32_GET_breg; \
2626   COMMON32_GET_F; \
2627   COMMON32_GET_creg; \
2628   \
2629   UINT32 c; \
2630   \
2631   if (creg == LIMM_REG) \
2632   { \
2633      GET_LIMM_32; \
2634      size = 8; \
2635      c = limm; \
2636   } \
2637   else \
2638   { \
2639      c = m_regs[creg]; \
2640   } \
2641   /* todo: is the limm, limm syntax valid? (it's pointless.) */ \
2642   /* todo: if breg = LIMM then there is no result (but since that register can never be read, I guess it doesn't matter if we store it there anyway?) */ \
2643
2644
2645
25602646ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_00(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "ASL"); } // ASL
25612647ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_01(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "ASR"); } // ASR
25622648ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_02(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "LSR"); } // LSR
r242548r242549
25652651ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_05(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "SEXB"); } // SEXB
25662652ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_06(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "SEXW"); } // SEXW
25672653ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_07(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "EXTB"); } // EXTB
2568ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_08(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "EXTW"); } // EXTW
2654
2655
2656// EXTW b <- c  or  EXTW  b <- limm   or EXTW  limm <- c (no result)  or EXTW  limm, limm (invalid?)
2657ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_08_p00(OPS_32) // note 'b' destination for 04_2f_08_xx group
2658{
2659   SETUP_HANDLE04_2f_0x_P00;
2660   
2661   m_regs[breg] = c & 0x0000ffff;
2662   if (F)
2663   {
2664      arcompact_fatal("arcompact_handle04_2f_08_p00 (EXTW) (F set)\n"); // not yet supported
2665   }
2666
2667   return m_pc + (size >> 0);
2668}
2669
2670ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_08_p01(OPS_32)
2671{
2672   int size = 4;
2673   arcompact_fatal("arcompact_handle04_2f_08_p01 (EXTW)\n");
2674   return m_pc + (size >> 0);
2675}
2676
2677ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_08_p10(OPS_32)
2678{
2679   int size = 4;
2680   arcompact_fatal("illegal 04_2f_08_p10 (EXTW)\n"); // illegal mode because 'S' bits have already been used for opcode select
2681   return m_pc + (size >> 0);
2682}
2683
2684ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_08_p11_m0(OPS_32)
2685{
2686   int size = 4;
2687   arcompact_fatal("arcompact_handle04_2f_08_p11_m0 (EXTW)\n");  // illegal mode because 'Q' bits have already been used for opcode select
2688   return m_pc + (size >> 0);
2689}
2690
2691ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_08_p11_m1(OPS_32)
2692{
2693   int size = 4;
2694   arcompact_fatal("arcompact_handle04_2f_08_p11_m1 (EXTW)\n");  // illegal mode because 'Q' bits have already been used for opcode select
2695   return m_pc + (size >> 0);
2696}
2697
2698
25692699ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_09(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "ABS"); } // ABS
25702700ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_0a(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "NOT"); } // NOT
25712701ARCOMPACT_RETTYPE arcompact_device::arcompact_handle04_2f_0b(OPS_32)  { return arcompact_handle04_2f_helper(PARAMS, "RCL"); } // RLC
r242548r242549
26372767
26382768
26392769
2640ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_00(OPS_32)  { return arcompact_handle04_helper(PARAMS, "ASL", 0,0); }
2641ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_01(OPS_32)  { return arcompact_handle04_helper(PARAMS, "LSR", 0,0); }
2770
2771ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_00_p00(OPS_32) // ASL
2772{
2773   SETUP_HANDLE04_0x_P00
2774
2775   m_regs[areg] = b << (c&0x1f); // c = c
2776
2777   if (F)
2778   {
2779      arcompact_fatal("arcompact_handle05_00_p00 (ASL) (F set)\n"); // not yet supported
2780   }
2781
2782   return m_pc + (size >> 0);
2783}
2784
2785ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_00_p01(OPS_32)
2786{
2787   int size = 4;
2788   arcompact_fatal("arcompact_handle05_00_p01 (ASL)\n");
2789   return m_pc + (size >> 0);
2790}
2791
2792ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_00_p10(OPS_32)
2793{
2794   int size = 4;
2795   arcompact_fatal("arcompact_handle05_00_p10 (ASL)\n");
2796   return m_pc + (size >> 0);
2797}
2798
2799ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_00_p11_m0(OPS_32)
2800{
2801   int size = 4;
2802   arcompact_fatal("arcompact_handle05_00_p11_m0 (ASL)\n");
2803   return m_pc + (size >> 0);
2804}
2805
2806ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_00_p11_m1(OPS_32)
2807{
2808   int size = 4;
2809   arcompact_fatal("arcompact_handle05_00_p11_m1 (ASL)\n");
2810   return m_pc + (size >> 0);
2811}
2812
2813
2814
2815
2816ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_01_p00(OPS_32)
2817{
2818   int size = 4;
2819   arcompact_fatal("arcompact_handle05_01_p00 (LSR)\n");
2820   return m_pc + (size >> 0);
2821}
2822
2823ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_01_p01(OPS_32)
2824{
2825   SETUP_HANDLE04_0x_P01
2826
2827   m_regs[areg] = b >> (c&0x1f); // c = u
2828
2829   if (F)
2830   {
2831      arcompact_fatal("arcompact_handle05_01_p01 (LSR) (F set)\n"); // not yet supported
2832   }
2833
2834   return m_pc + (size >> 0);
2835}
2836
2837ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_01_p10(OPS_32)
2838{
2839   int size = 4;
2840   arcompact_fatal("arcompact_handle05_01_p10 (LSR)\n");
2841   return m_pc + (size >> 0);
2842}
2843
2844ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_01_p11_m0(OPS_32)
2845{
2846   int size = 4;
2847   arcompact_fatal("arcompact_handle05_01_p11_m0 (LSR)\n");
2848   return m_pc + (size >> 0);
2849}
2850
2851ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_01_p11_m1(OPS_32)
2852{
2853   int size = 4;
2854   arcompact_fatal("arcompact_handle05_01_p11_m1 (LSR)\n");
2855   return m_pc + (size >> 0);
2856}
2857
2858
26422859ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_02(OPS_32)  { return arcompact_handle04_helper(PARAMS, "ASR", 0,0); }
26432860ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_03(OPS_32)  { return arcompact_handle04_helper(PARAMS, "ROR", 0,0); }
26442861ARCOMPACT_RETTYPE arcompact_device::arcompact_handle05_04(OPS_32)  { return arcompact_handle04_helper(PARAMS, "MUL64", 2,0); } // special
trunk/src/emu/cpu/arcompact/arcompactdasm_ops.c
r242548r242549
11611161int arcompact_handle04_2f_05_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "SEXB"); } // SEXB
11621162int arcompact_handle04_2f_06_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "SEXW"); } // SEXW
11631163int arcompact_handle04_2f_07_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "EXTB"); } // EXTB
1164
11641165int arcompact_handle04_2f_08_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "EXTW"); } // EXTW
1166
1167
11651168int arcompact_handle04_2f_09_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "ABS"); } // ABS
11661169int arcompact_handle04_2f_0a_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "NOT"); } // NOT
11671170int arcompact_handle04_2f_0b_dasm(DASM_OPS_32)  { return arcompact_handle04_2f_helper_dasm(DASM_PARAMS, "RCL"); } // RLC


Previous 199869 Revisions Next


© 1997-2024 The MAME Team