103 return !memcmp(
buf,
"SEGA", 4);
179 for (
i = 0;
i < 64;
i++) {
181 case 0:
name =
"SSP";
break;
182 case 1:
name =
"Reset";
break;
183 case 2:
name =
"BusErr";
break;
184 case 3:
name =
"AdrErr";
break;
185 case 4:
name =
"InvOpCode";
break;
186 case 5:
name =
"DivBy0";
break;
187 case 6:
name =
"Check";
break;
188 case 7:
name =
"TrapV";
break;
189 case 8:
name =
"GPF";
break;
190 case 9:
name =
"Trace";
break;
191 case 10:
name =
"Reserv0";
break;
192 case 11:
name =
"Reserv1";
break;
193 case 12:
name =
"Reserv2";
break;
194 case 13:
name =
"Reserv3";
break;
195 case 14:
name =
"Reserv4";
break;
196 case 15:
name =
"BadInt";
break;
197 case 16:
name =
"Reserv10";
break;
198 case 17:
name =
"Reserv11";
break;
199 case 18:
name =
"Reserv12";
break;
200 case 19:
name =
"Reserv13";
break;
201 case 20:
name =
"Reserv14";
break;
202 case 21:
name =
"Reserv15";
break;
203 case 22:
name =
"Reserv16";
break;
204 case 23:
name =
"Reserv17";
break;
205 case 24:
name =
"BadIRQ";
break;
206 case 25:
name =
"IRQ1";
break;
207 case 26:
name =
"EXT";
break;
208 case 27:
name =
"IRQ3";
break;
209 case 28:
name =
"HBLANK";
break;
210 case 29:
name =
"IRQ5";
break;
211 case 30:
name =
"VBLANK";
break;
212 case 31:
name =
"IRQ7";
break;
213 case 32:
name =
"Trap0";
break;
214 case 33:
name =
"Trap1";
break;
215 case 34:
name =
"Trap2";
break;
216 case 35:
name =
"Trap3";
break;
217 case 36:
name =
"Trap4";
break;
218 case 37:
name =
"Trap5";
break;
219 case 38:
name =
"Trap6";
break;
220 case 39:
name =
"Trap7";
break;
221 case 40:
name =
"Trap8";
break;
222 case 41:
name =
"Trap9";
break;
223 case 42:
name =
"Trap10";
break;
224 case 43:
name =
"Trap11";
break;
225 case 44:
name =
"Trap12";
break;
226 case 45:
name =
"Trap13";
break;
227 case 46:
name =
"Trap14";
break;
228 case 47:
name =
"Trap15";
break;
229 case 48:
name =
"Reserv30";
break;
230 case 49:
name =
"Reserv31";
break;
231 case 50:
name =
"Reserv32";
break;
232 case 51:
name =
"Reserv33";
break;
233 case 52:
name =
"Reserv34";
break;
234 case 53:
name =
"Reserv35";
break;
235 case 54:
name =
"Reserv36";
break;
236 case 55:
name =
"Reserv37";
break;
237 case 56:
name =
"Reserv38";
break;
238 case 57:
name =
"Reserv39";
break;
239 case 58:
name =
"Reserv3A";
break;
240 case 59:
name =
"Reserv3B";
break;
241 case 60:
name =
"Reserv3C";
break;
242 case 61:
name =
"Reserv3D";
break;
243 case 62:
name =
"Reserv3E";
break;
244 case 63:
name =
"Reserv3F";
break;
247 if (
name && vtable[
i]) {
306 eprintf(
"ERR: binfile too small!\n");
324 .desc =
"SEGA Genesis/Megadrive",
339 #ifndef RZ_PLUGIN_INCORE
RZ_API RZ_OWN RzList * rz_bin_file_strings(RZ_NONNULL RzBinFile *bf, size_t min_length, bool raw_strings)
Generates a RzList struct containing RzBinString from a given RzBinFile.
RZ_API void rz_bin_symbol_free(RzBinSymbol *sym)
RZ_API RZ_OWN RzList * rz_bin_maps_of_file_sections(RZ_NONNULL RzBinFile *binfile)
Create a list of RzBinMap from RzBinSections queried from the given file.
static bool load_buffer(RzBinFile *bf, RzBinObject *obj, RzBuffer *b, Sdb *sdb)
static void showstr(const char *str, const ut8 *s, int len)
static RzList * symbols(RzBinFile *bf)
static void addsym(RzList *ret, const char *name, ut64 addr)
static RzList * strings(RzBinFile *bf)
RZ_API RzLibStruct rizin_plugin
static bool check_buffer(RzBuffer *b)
static RzBinInfo * info(RzBinFile *bf)
static ut64 baddr(RzBinFile *bf)
struct gen_vect SMD_Vectors
static RzList * entries(RzBinFile *bf)
static RzList * sections(RzBinFile *bf)
struct gen_hdr SMD_Header
RzBinPlugin rz_bin_plugin_smd
RZ_API void Ht_() free(HtName_(Ht) *ht)
RZ_API RZ_OWN RzList * rz_list_newf(RzListFree f)
Returns a new initialized RzList pointer and sets the free method.
RZ_API RZ_OWN RzList * rz_list_new(void)
Returns a new initialized RzList pointer (free method is not initialized)
RZ_API RZ_BORROW RzListIter * rz_list_append(RZ_NONNULL RzList *list, void *data)
Appends at the end of the list a new element.
return strdup("=SP r13\n" "=LR r14\n" "=PC r15\n" "=A0 r0\n" "=A1 r1\n" "=A2 r2\n" "=A3 r3\n" "=ZF zf\n" "=SF nf\n" "=OF vf\n" "=CF cf\n" "=SN or0\n" "gpr lr .32 56 0\n" "gpr pc .32 60 0\n" "gpr cpsr .32 64 0 ____tfiae_________________qvczn\n" "gpr or0 .32 68 0\n" "gpr tf .1 64.5 0 thumb\n" "gpr ef .1 64.9 0 endian\n" "gpr jf .1 64.24 0 java\n" "gpr qf .1 64.27 0 sticky_overflow\n" "gpr vf .1 64.28 0 overflow\n" "gpr cf .1 64.29 0 carry\n" "gpr zf .1 64.30 0 zero\n" "gpr nf .1 64.31 0 negative\n" "gpr itc .4 64.10 0 if_then_count\n" "gpr gef .4 64.16 0 great_or_equal\n" "gpr r0 .32 0 0\n" "gpr r1 .32 4 0\n" "gpr r2 .32 8 0\n" "gpr r3 .32 12 0\n" "gpr r4 .32 16 0\n" "gpr r5 .32 20 0\n" "gpr r6 .32 24 0\n" "gpr r7 .32 28 0\n" "gpr r8 .32 32 0\n" "gpr r9 .32 36 0\n" "gpr r10 .32 40 0\n" "gpr r11 .32 44 0\n" "gpr r12 .32 48 0\n" "gpr r13 .32 52 0\n" "gpr r14 .32 56 0\n" "gpr r15 .32 60 0\n" "gpr r16 .32 64 0\n" "gpr r17 .32 68 0\n")
RZ_API st64 rz_buf_read_at(RZ_NONNULL RzBuffer *b, ut64 addr, RZ_NONNULL RZ_OUT ut8 *buf, ut64 len)
Read len bytes of the buffer at the specified address.
RZ_API ut64 rz_buf_size(RZ_NONNULL RzBuffer *b)
Return the size of the buffer.
static ut32 rz_read_be32(const void *src)
void(* RzListFree)(void *ptr)
RZ_API char * rz_str_ndup(RZ_NULLABLE const char *ptr, int len)
Create new copy of string ptr limited to size len.
static struct sockaddr static addrlen static backlog const void msg
XX curplugin == o->plugin.
ut64(WINAPI *w32_GetEnabledXStateFeatures)()