Line 1... |
Line 1... |
/* Print Z80 and R800 instructions
|
/* Print Z80 and R800 instructions
|
Copyright 2005, 2007 Free Software Foundation, Inc.
|
Copyright 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
Contributed by Arnold Metselaar <arnold_m@operamail.com>
|
Contributed by Arnold Metselaar <arnold_m@operamail.com>
|
|
|
This file is part of the GNU opcodes library.
|
This file is part of the GNU opcodes library.
|
|
|
This library is free software; you can redistribute it and/or modify
|
This library is free software; you can redistribute it and/or modify
|
Line 126... |
Line 126... |
|
|
static int
|
static int
|
prt_rr_nn (struct buffer *buf, disassemble_info * info, char *txt)
|
prt_rr_nn (struct buffer *buf, disassemble_info * info, char *txt)
|
{
|
{
|
char mytxt[TXTSIZ];
|
char mytxt[TXTSIZ];
|
|
int rr;
|
|
|
snprintf (mytxt, TXTSIZ, txt, rr_str[(buf->data[0] >> 4) & 3]);
|
rr = (buf->data[buf->n_fetch - 1] >> 4) & 3;
|
|
snprintf (mytxt, TXTSIZ, txt, rr_str[rr]);
|
return prt_nn (buf, info, mytxt);
|
return prt_nn (buf, info, mytxt);
|
}
|
}
|
|
|
static int
|
static int
|
prt_rr (struct buffer *buf, disassemble_info * info, char *txt)
|
prt_rr (struct buffer *buf, disassemble_info * info, char *txt)
|
Line 295... |
Line 297... |
{ 0x46, 0xFF, prt, "im 0" },
|
{ 0x46, 0xFF, prt, "im 0" },
|
{ 0x47, 0xFF, prt, "ld i,a" },
|
{ 0x47, 0xFF, prt, "ld i,a" },
|
{ 0x4A, 0xCF, prt_rr, "adc hl," },
|
{ 0x4A, 0xCF, prt_rr, "adc hl," },
|
{ 0x4B, 0xCF, prt_rr_nn, "ld %s,(0x%%04x)" },
|
{ 0x4B, 0xCF, prt_rr_nn, "ld %s,(0x%%04x)" },
|
{ 0x4D, 0xFF, prt, "reti" },
|
{ 0x4D, 0xFF, prt, "reti" },
|
|
{ 0x4F, 0xFF, prt, "ld r,a" },
|
{ 0x56, 0xFF, prt, "im 1" },
|
{ 0x56, 0xFF, prt, "im 1" },
|
{ 0x57, 0xFF, prt, "ld a,i" },
|
{ 0x57, 0xFF, prt, "ld a,i" },
|
{ 0x5E, 0xFF, prt, "im 2" },
|
{ 0x5E, 0xFF, prt, "im 2" },
|
|
{ 0x5F, 0xFF, prt, "ld a,r" },
|
{ 0x67, 0xFF, prt, "rrd" },
|
{ 0x67, 0xFF, prt, "rrd" },
|
{ 0x6F, 0xFF, prt, "rld" },
|
{ 0x6F, 0xFF, prt, "rld" },
|
{ 0xA0, 0xE4, cis, "" },
|
{ 0xA0, 0xE4, cis, "" },
|
{ 0xC3, 0xFF, prt, "muluw hl,bc" },
|
{ 0xC3, 0xFF, prt, "muluw hl,bc" },
|
{ 0xC5, 0xE7, prt_r, "mulub a,%s" },
|
{ 0xC5, 0xE7, prt_r, "mulub a,%s" },
|