Commit graph

123 commits

Author SHA1 Message Date
pancake
bea860681b Make include files C++11 friendly 2014-04-11 10:26:25 +02:00
pancake
2397c956c9 Use R2_ as unique header guard prefix 2014-03-27 16:34:17 +01:00
pancake
d3af1ea077 Fix #723 - header guards conforming to C standards 2014-03-27 02:32:26 +01:00
Fedor Sakharov
08aca601b1 cr16: Initial support for CR16. 2014-03-21 21:03:17 +04:00
pancake
784a1d2a72 Import radare2-capstone asm/anal plugins 2014-03-07 04:15:45 +01:00
pancake
bb7958342b Deprecate RPair API and ?k. Use SDB and integrate it with 'k' 2014-03-07 01:26:11 +01:00
Fedor Sakharov
8db329d5c6 h8300: Initial commit. 2014-02-26 19:46:13 +01:00
condret
ca1644eaea add 6502-disassembler + make asm.snes shared 2014-02-24 17:24:51 +01:00
pancake
2c676570a9 Merge branch 'master' 2014-02-06 00:27:08 +01:00
pancake
9a099e9e9e Add RAsmPlugins->cpus and handle it in rasm2 -L <arch> 2014-02-06 00:26:17 +01:00
Ilya V. Matveychikov
969ea9b7c2 TMS320: move c55plus under the TMS320 namespace
Sorry for the huge patch, but there is nothing special. We just move
asm/arch/c55plus into the asm/arch/tms320 and add some wrappers to use
existing code base under the new namespace.

Also, we've implement TMS320 anal module that supports now c55+ only. To
be continued...
2014-02-06 01:19:23 +04:00
Ilya V. Matveychikov
1db5c446a9 Add TMS320 disassembly engine
This patch adds TMS320 DSP family processors disassembly engine. It's
purpose to add support for the all the families processors but as for
now the only one of them is supported (C55X).
2014-02-05 12:14:06 +01:00
condret
cfdb0ebea1 Add basic whitespace support #592 2014-02-02 23:56:58 +01:00
condret
9825896e7c Add support for Malbolge disasm and analysis 2014-01-28 11:21:17 +01:00
pancake
ad430f0d52 Add simple nios2 analysis plugin (colors!) 2014-01-15 22:44:14 +01:00
pancake
933dc0ef6d Add NIOS CPU disasm support (from gnu binutils) 2014-01-15 12:31:57 +01:00
pancake
9f0d7e44d3 Fix some issues reported by coverity 2014-01-15 01:56:28 +01:00
pancake
230efd1f05 Rename {RAsmRAnal}Op inst_len and length to size 2013-12-06 05:04:17 +01:00
pancake
d49b56dc3a RAnalPlugin now have .license and uses the same .bits like in RAsm 2013-12-05 18:41:13 +01:00
pancake
7d70f79755 Fix #399 - Add .license to all plugins 2013-12-02 04:44:26 +01:00
Fedor Sakharov
1a72cdec24 Initial commit for EFI Byte Code (EBC) disassembler. 2013-12-02 01:25:54 +01:00
condret
c949e467a0 Add SNES disassembler 2013-11-29 17:30:58 +01:00
Adam Pridgen
a5ad388eb5 Cleaned up how the pd command process input. Added support for setting [len] [asm.arch] [bits] for all pd commands. 2013-11-22 08:45:13 -06:00
condret
38bd1d9271 add gb support 2013-11-14 23:36:43 +01:00
pancake
daddfcc7b6 Fix warnings and mdisassemble signature 2013-08-15 17:33:41 +02:00
pancake
2cbce80f2f Add __cplusplus extern "C" boilerplate everywhere 2013-06-18 12:09:23 +02:00
pancake
ef781cbadd New flag rasm2 -c CPU. pointer hints, fix analysis of x86-16 jmps
Add ahp (pointer hints)
Add rasm2 -c flag to select cpu (wip for arm)
rasm2 -e toggles instead of setting
Fix analysis of absolute jumps in x86-16
Push and pops are now magenta \o/
2013-06-17 03:26:48 +02:00
pancake
d6de30eba4 More R_LIB_VERSION and initial r_asm_set_cpu() dummy api 2013-06-15 02:56:25 +02:00
pancake
bc0104563b Initial support for runtime versioned libraries
- This check will ensure you are running the latest r2 version.
2013-06-14 02:51:33 +02:00
th0rpe
a42e574954 Initial import of the c55+ disassembler (by th0rpe) 2013-05-15 16:11:15 +02:00
pancake
f52fdf762f Fix armthumb disasm, 64bit inc/dec on x86, syscall in r_asm
- rasm2 -k to select kernel like ragg2 does
- rasm2 -k linux -b32 'mov eax, $sys.write'
- Implement x86-64bit INC and DEC
- Add x86-8 and x86-64 bit calling conventions in r_syscall
2013-04-22 01:09:27 +02:00
pancake
5285d1bdea Break ABI. r_asm_disassemble's length is now 'int' 2013-04-09 22:54:04 +02:00
pancake
189e5553cc Initial 8051 disasm and ihex:// io plugin 2013-04-09 20:05:36 +02:00
pancake
766563cc6e Big endian for arm.winedbg and addn randomart in rax2 -k
r_asm: Add support for big endian arm.winedbg
rax2: Add -k randomart to rax2, -k is now -B
rax2: Handle multiple flags on a single argument
rax2: update manpage
2013-02-13 01:20:42 +01:00
pancake
7a0da18725 Add r_bin.rar plugin, per-section arch/bits, fix in S=
Add Sa to set/get per-section arch and bits configuration
Cache io->section and core->io->section to speed up the Sa
Update r_sys_arch*
Add dummy plugin in asm/rar
Fix lines of S=
2012-11-30 01:06:30 +01:00
pancake
8ea25c4a46 Use RNum in RAsm, fixes for segoff and better disasm
Reference of RNum in RAsm (use flags in 'wa/pa'!)
Use RNum in x86.nz plugin
Rename scr.segoff to asm.segoff
Fixes for segmented addressing resolution
Honor lineswidth in disasm
Remove rabin2 -p flag in help and manpage
Fix disasm.c loop for small blocksizes and invalid ops
2012-11-16 01:34:26 +01:00
Alexander
2c5cd9b32d Initial implementation of i8080 analyser. 2012-10-29 20:51:45 +00:00
Alexander
278a24126e Initial implementation of i8080 disassembler. 2012-10-29 20:51:40 +00:00
pancake
83cfbb2236 Add initial ARC code analysis module (branches)
ELF parser setups the proper ARC asm and anal
Fix segfault in the GNU ARC disassembler
2012-09-23 17:33:19 +02:00
pancake
807c8a4088 Initial import of the ARC disassembler from binutils 2012-09-22 21:03:01 +02:00
pancake
f75817ee6c Initial work on supporting payloaded opcodes
Basic classes support for dalvik (rabin2 -C, ic*)
2012-08-22 18:02:23 +02:00
Roi Martin (@nibble_ds)
059594e7a9 Add new ARM disassembler plugin based on winedbg (arm_winedbg) 2012-08-07 22:17:14 +02:00
Anton Kochkov
e075a18b56 Types cleanups 2012-07-22 12:01:39 +04:00
pancake
3f21f734aa * Added dcpu16 assembler/disassembler in r_asm 2012-06-21 15:13:42 +02:00
pancake
c443abcf87 * Add experimental r2-bindings/node-ffi
- Requires valabind from tip
  - Some ABI changes to get dynamic langs happy
2012-06-05 17:50:12 +02:00
pancake
42a2e92fec * Added m68 disassembler and code analysis
- m68k assembler pending to fix some license issues with author
* Added z80 assembler and disassembler
  - still not integrated with the plugin
* Software licenses sucks
2012-02-02 01:06:22 +01:00
pancake
630143ce2d * Fix att disassembler for udis86
* add r_asm_setup()
* Add better api for nodejs r_asm
2011-11-24 00:06:26 -05:00
pancake
e0fc376dab * Fix some t-*.sh scripts (rollback)
* Initial working version of shellcodes inside r_egg
  $ ragg2 -i x86.osx.binsh -b 64 -k osx -f mach064 -o a.out
  ragg2 -L : list all plugins
  ragg2 -i <shellcode-plugin> : select shellcode
  ragg2 -r : show raw bytes
  ragg2 -x : execute -- fails :(
* Use r_lib in r_egg
  - User defined shellcode plugins can now be loaded on runtime
* Fix append_bytes in r_egg api
* Implement r_egg option_{get|set}
* Use working shellcode for x86.osx.binsh example (64bit)
* Update pkgconfig templates
* Add -D flag to rasm2 (show hex and asm)

--HG--
rename : libr/egg/p/x86_osx_binsh.c => libr/egg/p/egg_x86_osx_binsh.c
2011-11-13 04:08:08 +01:00
pancake
0f271a8bac * Added api to get opcode descriptions
- r_asm now depends on r_db (uses r_pair aka sdb)
  - r_asm_describe()
  - install opcode descriptions
  - Use ?d to get description of opcode (uses asm.arch)
* Add 'fl' command to get length of flag
* Fix some warnings in anal.sparc plugin
* Add new assembler directives
  - .int8 (alias of .byte)
  - .int16 (alias of .short)
  - .int32 and .int64
* Fix memory leak in r_core_disasm()
* Add accessors for RAnalFcn.{refs,xrefs,vars,bbs}
  - Updated bindings
2011-11-12 01:52:31 +01:00
pancake
a43068bde0 * brainfuck debugger is finally usable
- Added breakpoint and code analysis plugins for bf
  - *mem++ != mem[0]++
  - Full register get/set support
  - Support for step and continue-until-syscall
  - Work in progress breakpoint support
* Added bfvm_reset() hooked to plugin->kill
* Enhacements in r_core and r_debug for better debugger support
  - Added plugin->step_over delegate
2011-10-09 04:15:32 +02:00