Add des opcode

This commit is contained in:
Stefan Rueger
2024-07-18 19:04:29 +01:00
parent e73e5de097
commit c8ffcfcbec
3 changed files with 10 additions and 0 deletions

View File

@@ -346,6 +346,7 @@ int disasm_init(const AVRPART *p) {
Register_Opcode(cpc_Callback, "0000 01rd dddd rrrr", OPCODE_cpc);
Register_Opcode(cpi_Callback, "0011 KKKK dddd KKKK", OPCODE_cpi);
Register_Opcode(cpse_Callback, "0001 00rd dddd rrrr", OPCODE_cpse);
Register_Opcode(des_Callback, "1001 0100 KKKK 1011", OPCODE_des);
Register_Opcode(dec_Callback, "1001 010d dddd 1010", OPCODE_dec);
Register_Opcode(eicall_Callback, "1001 0101 0001 1001", OPCODE_eicall);
Register_Opcode(eijmp_Callback, "1001 0100 0001 1001", OPCODE_eijmp);

View File

@@ -156,6 +156,10 @@ static void Operation_s(AVR_opcode mnemo) {
snprintf(cx->dis_comment, 255, "0x%02x = %d", (1 << Bit), (1 << Bit));
}
static void Operation_K(AVR_opcode mnemo) {
snprintf(cx->dis_code, 255, "%-7s %d", avr_opcodes[mnemo].opcode, RK);
}
static void Operation_k(AVR_opcode mnemo, int Position, const char *Pseudocode) {
int Offset;
int Target;
@@ -404,6 +408,10 @@ CALLBACK(dec_Callback) {
Operation_Rd(mnemo);
}
CALLBACK(des_Callback) {
Operation_K(mnemo);
}
CALLBACK(eicall_Callback) {
Operation_Simple(mnemo);
}

View File

@@ -103,6 +103,7 @@ void cpc_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void cpi_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void cpse_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void dec_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void des_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void eicall_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void eijmp_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);
void elpm1_Callback(const char *Bitstream, int Position, AVR_opcode mnemo);