diff options
Diffstat (limited to 'src/devices/cpu/mips/mips3dsm.cpp')
-rw-r--r-- | src/devices/cpu/mips/mips3dsm.cpp | 84 |
1 files changed, 42 insertions, 42 deletions
diff --git a/src/devices/cpu/mips/mips3dsm.cpp b/src/devices/cpu/mips/mips3dsm.cpp index 0eca3d73c54..8c9442f05ff 100644 --- a/src/devices/cpu/mips/mips3dsm.cpp +++ b/src/devices/cpu/mips/mips3dsm.cpp @@ -101,7 +101,7 @@ static const char *const ccreg[4][32] = CODE CODE ***************************************************************************/ -static inline char *signed_16bit(INT16 val) +static inline char *signed_16bit(int16_t val) { static char temp[10]; if (val < 0) @@ -111,11 +111,11 @@ static inline char *signed_16bit(INT16 val) return temp; } -static UINT32 dasm_cop0(UINT32 pc, UINT32 op, char *buffer) +static uint32_t dasm_cop0(uint32_t pc, uint32_t op, char *buffer) { int rt = (op >> 16) & 31; int rd = (op >> 11) & 31; - UINT32 flags = 0; + uint32_t flags = 0; switch ((op >> 21) & 31) { @@ -128,8 +128,8 @@ static UINT32 dasm_cop0(UINT32 pc, UINT32 op, char *buffer) case 0x08: /* BC */ switch (rt) { - case 0x00: sprintf(buffer, "bc0f $%08x", pc + 4 + ((INT16)op << 2)); break; - case 0x01: sprintf(buffer, "bc0t $%08x", pc + 4 + ((INT16)op << 2)); break; + case 0x00: sprintf(buffer, "bc0f $%08x", pc + 4 + ((int16_t)op << 2)); break; + case 0x01: sprintf(buffer, "bc0t $%08x", pc + 4 + ((int16_t)op << 2)); break; case 0x02: sprintf(buffer, "bc0fl [invalid]"); break; case 0x03: sprintf(buffer, "bc0tl [invalid]"); break; default: sprintf(buffer, "dc.l $%08x [invalid]", op); break; @@ -167,7 +167,7 @@ static UINT32 dasm_cop0(UINT32 pc, UINT32 op, char *buffer) return flags; } -static UINT32 dasm_cop1(UINT32 pc, UINT32 op, char *buffer) +static uint32_t dasm_cop1(uint32_t pc, uint32_t op, char *buffer) { static const char *const format_table[] = { @@ -180,7 +180,7 @@ static UINT32 dasm_cop1(UINT32 pc, UINT32 op, char *buffer) int fd = (op >> 6) & 31; int rt = (op >> 16) & 31; int rd = (op >> 11) & 31; - UINT32 flags = 0; + uint32_t flags = 0; switch ((op >> 21) & 31) { @@ -193,10 +193,10 @@ static UINT32 dasm_cop1(UINT32 pc, UINT32 op, char *buffer) case 0x08: /* BC */ switch (rt & 3) { - case 0x00: sprintf(buffer, "bc1f $%08x,%d", pc + 4 + ((INT16)op << 2), (op >> 18) & 7); break; - case 0x01: sprintf(buffer, "bc1t $%08x,%d", pc + 4 + ((INT16)op << 2), (op >> 18) & 7); break; - case 0x02: sprintf(buffer, "bc1fl $%08x,%d", pc + 4 + ((INT16)op << 2), (op >> 18) & 7); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; - case 0x03: sprintf(buffer, "bc1tl $%08x,%d", pc + 4 + ((INT16)op << 2), (op >> 18) & 7); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; + case 0x00: sprintf(buffer, "bc1f $%08x,%d", pc + 4 + ((int16_t)op << 2), (op >> 18) & 7); break; + case 0x01: sprintf(buffer, "bc1t $%08x,%d", pc + 4 + ((int16_t)op << 2), (op >> 18) & 7); break; + case 0x02: sprintf(buffer, "bc1fl $%08x,%d", pc + 4 + ((int16_t)op << 2), (op >> 18) & 7); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; + case 0x03: sprintf(buffer, "bc1tl $%08x,%d", pc + 4 + ((int16_t)op << 2), (op >> 18) & 7); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; } break; default: /* COP */ @@ -250,7 +250,7 @@ static UINT32 dasm_cop1(UINT32 pc, UINT32 op, char *buffer) return flags; } -static UINT32 dasm_cop1x(UINT32 pc, UINT32 op, char *buffer) +static uint32_t dasm_cop1x(uint32_t pc, uint32_t op, char *buffer) { static const char *const format3_table[] = { @@ -264,7 +264,7 @@ static UINT32 dasm_cop1x(UINT32 pc, UINT32 op, char *buffer) int rs = (op >> 21) & 31; int rt = (op >> 16) & 31; int rd = (op >> 11) & 31; - UINT32 flags = 0; + uint32_t flags = 0; switch (op & 0x3f) { @@ -310,11 +310,11 @@ static UINT32 dasm_cop1x(UINT32 pc, UINT32 op, char *buffer) return flags; } -static UINT32 dasm_cop2(UINT32 pc, UINT32 op, char *buffer) +static uint32_t dasm_cop2(uint32_t pc, uint32_t op, char *buffer) { int rt = (op >> 16) & 31; int rd = (op >> 11) & 31; - UINT32 flags = 0; + uint32_t flags = 0; switch ((op >> 21) & 31) { @@ -327,8 +327,8 @@ static UINT32 dasm_cop2(UINT32 pc, UINT32 op, char *buffer) case 0x08: /* BC */ switch (rt) { - case 0x00: sprintf(buffer, "bc2f $%08x", pc + 4 + ((INT16)op << 2)); break; - case 0x01: sprintf(buffer, "bc2t $%08x", pc + 4 + ((INT16)op << 2)); break; + case 0x00: sprintf(buffer, "bc2f $%08x", pc + 4 + ((int16_t)op << 2)); break; + case 0x01: sprintf(buffer, "bc2t $%08x", pc + 4 + ((int16_t)op << 2)); break; case 0x02: sprintf(buffer, "bc2fl [invalid]"); break; case 0x03: sprintf(buffer, "bc2tl [invalid]"); break; default: sprintf(buffer, "dc.l $%08x [invalid]", op); break; @@ -357,13 +357,13 @@ static UINT32 dasm_cop2(UINT32 pc, UINT32 op, char *buffer) return flags; } -unsigned dasmmips3(char *buffer, unsigned pc, UINT32 op) +unsigned dasmmips3(char *buffer, unsigned pc, uint32_t op) { int rs = (op >> 21) & 31; int rt = (op >> 16) & 31; int rd = (op >> 11) & 31; int shift = (op >> 6) & 31; - UINT32 flags = 0; + uint32_t flags = 0; switch (op >> 26) { @@ -441,20 +441,20 @@ unsigned dasmmips3(char *buffer, unsigned pc, UINT32 op) case 0x01: /* REGIMM */ switch ((op >> 16) & 31) { - case 0x00: sprintf(buffer, "bltz %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); break; - case 0x01: sprintf(buffer, "bgez %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); break; - case 0x02: sprintf(buffer, "bltzl %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); break; - case 0x03: sprintf(buffer, "bgezl %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); break; + case 0x00: sprintf(buffer, "bltz %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); break; + case 0x01: sprintf(buffer, "bgez %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); break; + case 0x02: sprintf(buffer, "bltzl %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); break; + case 0x03: sprintf(buffer, "bgezl %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); break; case 0x08: sprintf(buffer, "tgei %s,%s", reg[rs], signed_16bit(op)); flags = DASMFLAG_STEP_OVER; break; case 0x09: sprintf(buffer, "tgeiu %s,%s", reg[rs], signed_16bit(op)); flags = DASMFLAG_STEP_OVER; break; case 0x0a: sprintf(buffer, "tlti %s,%s", reg[rs], signed_16bit(op)); flags = DASMFLAG_STEP_OVER; break; case 0x0b: sprintf(buffer, "tltiu %s,%s", reg[rs], signed_16bit(op)); flags = DASMFLAG_STEP_OVER; break; case 0x0c: sprintf(buffer, "teqi %s,%s", reg[rs], signed_16bit(op)); flags = DASMFLAG_STEP_OVER; break; case 0x0e: sprintf(buffer, "tnei %s,%s", reg[rs], signed_16bit(op)); flags = DASMFLAG_STEP_OVER; break; - case 0x10: sprintf(buffer, "bltzal %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; - case 0x11: sprintf(buffer, "bgezal %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; - case 0x12: sprintf(buffer, "bltzall %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; - case 0x13: sprintf(buffer, "bgezall %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; + case 0x10: sprintf(buffer, "bltzal %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; + case 0x11: sprintf(buffer, "bgezal %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; + case 0x12: sprintf(buffer, "bltzall %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; + case 0x13: sprintf(buffer, "bgezall %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; default: sprintf(buffer, "dc.l $%08x [invalid]", op); break; } break; @@ -462,29 +462,29 @@ unsigned dasmmips3(char *buffer, unsigned pc, UINT32 op) case 0x02: sprintf(buffer, "j $%08x", (pc & 0xf0000000) | ((op & 0x03ffffff) << 2)); break; case 0x03: sprintf(buffer, "jal $%08x", (pc & 0xf0000000) | ((op & 0x03ffffff) << 2)); flags = DASMFLAG_STEP_OVER | DASMFLAG_STEP_OVER_EXTRA(1); break; case 0x04: if (rs == 0 && rt == 0) - sprintf(buffer, "b $%08x", pc + 4 + ((INT16)op << 2)); + sprintf(buffer, "b $%08x", pc + 4 + ((int16_t)op << 2)); else - sprintf(buffer, "beq %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((INT16)op << 2)); + sprintf(buffer, "beq %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((int16_t)op << 2)); break; - case 0x05: sprintf(buffer, "bne %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((INT16)op << 2));break; - case 0x06: sprintf(buffer, "blez %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); break; - case 0x07: sprintf(buffer, "bgtz %s,$%08x", reg[rs], pc + 4 + ((INT16)op << 2)); break; + case 0x05: sprintf(buffer, "bne %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((int16_t)op << 2));break; + case 0x06: sprintf(buffer, "blez %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); break; + case 0x07: sprintf(buffer, "bgtz %s,$%08x", reg[rs], pc + 4 + ((int16_t)op << 2)); break; case 0x08: sprintf(buffer, "addi %s,%s,%s", reg[rt], reg[rs], signed_16bit(op)); break; case 0x09: sprintf(buffer, "addiu %s,%s,%s", reg[rt], reg[rs], signed_16bit(op)); break; case 0x0a: sprintf(buffer, "slti %s,%s,%s", reg[rt], reg[rs], signed_16bit(op)); break; case 0x0b: sprintf(buffer, "sltiu %s,%s,%s", reg[rt], reg[rs], signed_16bit(op)); break; - case 0x0c: sprintf(buffer, "andi %s,%s,$%04x", reg[rt], reg[rs], (UINT16)op); break; - case 0x0d: sprintf(buffer, "ori %s,%s,$%04x", reg[rt], reg[rs], (UINT16)op); break; - case 0x0e: sprintf(buffer, "xori %s,%s,$%04x", reg[rt], reg[rs], (UINT16)op); break; - case 0x0f: sprintf(buffer, "lui %s,$%04x", reg[rt], (UINT16)op); break; + case 0x0c: sprintf(buffer, "andi %s,%s,$%04x", reg[rt], reg[rs], (uint16_t)op); break; + case 0x0d: sprintf(buffer, "ori %s,%s,$%04x", reg[rt], reg[rs], (uint16_t)op); break; + case 0x0e: sprintf(buffer, "xori %s,%s,$%04x", reg[rt], reg[rs], (uint16_t)op); break; + case 0x0f: sprintf(buffer, "lui %s,$%04x", reg[rt], (uint16_t)op); break; case 0x10: flags = dasm_cop0(pc, op, buffer); break; case 0x11: flags = dasm_cop1(pc, op, buffer); break; case 0x12: flags = dasm_cop2(pc, op, buffer); break; case 0x13: flags = dasm_cop1x(pc, op, buffer); break; - case 0x14: sprintf(buffer, "beql %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((INT16)op << 2));break; - case 0x15: sprintf(buffer, "bnel %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((INT16)op << 2));break; - case 0x16: sprintf(buffer, "blezl %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((INT16)op << 2));break; - case 0x17: sprintf(buffer, "bgtzl %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((INT16)op << 2));break; + case 0x14: sprintf(buffer, "beql %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((int16_t)op << 2));break; + case 0x15: sprintf(buffer, "bnel %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((int16_t)op << 2));break; + case 0x16: sprintf(buffer, "blezl %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((int16_t)op << 2));break; + case 0x17: sprintf(buffer, "bgtzl %s,%s,$%08x", reg[rs], reg[rt], pc + 4 + ((int16_t)op << 2));break; case 0x18: sprintf(buffer, "daddi %s,%s,%s", reg[rt], reg[rs], signed_16bit(op)); break; case 0x19: sprintf(buffer, "daddiu %s,%s,%s", reg[rt], reg[rs], signed_16bit(op)); break; case 0x1a: sprintf(buffer, "ldl %s,%s(%s)", reg[rt], signed_16bit(op), reg[rs]); break; @@ -538,7 +538,7 @@ unsigned dasmmips3(char *buffer, unsigned pc, UINT32 op) CPU_DISASSEMBLE( mips3be ) { - UINT32 op = *(UINT32 *)oprom; + uint32_t op = *(uint32_t *)oprom; op = big_endianize_int32(op); return dasmmips3(buffer, pc, op); } @@ -546,7 +546,7 @@ CPU_DISASSEMBLE( mips3be ) CPU_DISASSEMBLE( mips3le ) { - UINT32 op = *(UINT32 *)oprom; + uint32_t op = *(uint32_t *)oprom; op = little_endianize_int32(op); return dasmmips3(buffer, pc, op); } |