1 /* radare - LGPL - Copyright 2012-2018 - Alexander */
2 
3 #include <r_types.h>
4 #include <r_util.h>
5 #include <r_lib.h>
6 #include <r_asm.h>
7 #include "../arch/i8080/i8080dis.c"
8 
do_disassemble(RAsm * a,RAsmOp * op,const ut8 * buf,int len)9 static int do_disassemble(RAsm *a, RAsmOp *op, const ut8 *buf, int len) {
10 	int dlen = i8080_disasm (buf, r_strbuf_get (&op->buf_asm), len);
11 	return op->size = R_MAX (0, dlen);
12 }
13 
14 RAsmPlugin r_asm_plugin_i8080 = {
15 	.name = "i8080",
16 	.desc = "Intel 8080 CPU",
17 	.arch = "i8080",
18 	.license = "BSD",
19 	.bits = 8,
20 	.endian = R_SYS_ENDIAN_NONE,
21 	.disassemble = &do_disassemble
22 };
23 
24 #ifndef R2_PLUGIN_INCORE
25 R_API RLibStruct radare_plugin = {
26 	.type = R_LIB_TYPE_ASM,
27 	.data = &r_asm_plugin_i8080,
28 	.version = R2_VERSION
29 };
30 #endif
31