38 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
4a6316e58a fix warnings on const char * discards qualifiers 2018-07-24 12:22:10 +08:00
Nguyen Anh Quynh
9c7a094b58 add Ethereum VM architecture 2018-03-31 17:29:22 +08:00
Priit Laes
cc4ace75cc cstool: Add cortexm support (#1100) 2018-03-20 08:52:33 +08:00
Nguyen Anh Quynh
94134fd045 cstool: align assembly output 2017-10-25 01:03:24 +08:00
Wolfgang Schwotzer
e8d1f1d4d2 M680X: Target ready for pull request (#1034)
* Added new M680X target. Supports M6800/1/2/3/9, HD6301

* M680X: Reformat for coding guide lines. Set alphabetical order in HACK.TXT

* M680X: Prepare for python binding. Move cs_m680x, m680x_insn to m680x_info. Chec
> k cpu type, no default.

* M680X: Add python bindings. Added python tests.

* M680X: Added cpu types to usage message.

* cstool: Avoid segfault for invalid <arch+mode>.

* Make test_m680x.c/test_m680x.py output comparable (diff params: -bu). Keep xprint.py untouched.

* M680X: Update CMake/make for m680x support. Update .gitignore.

* M680X: Reduce compiler warnings.

* M680X: Reduce compiler warnings.

* M680X: Reduce compiler warnings.

* M680X: Make test_m680x.c/test_m680x.py output comparable (diff params: -bu).

* M680X: Add ocaml bindings and tests.

* M680X: Add java bindings and tests.

* M680X: Added tests for all indexed addressing modes. C/Python/Ocaml

* M680X: Naming, use page1 for PAGE1 instructions (without prefix).

* M680X: Naming, use page1 for PAGE1 instructions (without prefix).

* M680X: Used M680X_FIRST_OP_IN_MNEM in tests C/python/java/ocaml.

* M680X: Added access property to cs_m680x_op.

* M680X: Added operand size.

* M680X: Remove compiler warnings.

* M680X: Added READ/WRITE access property per operator.

* M680X: Make reg_inherent_hdlr independent of CPU type.

* M680X: Add HD6309 support + bug fixes

* M680X: Remove errors and warning.

* M680X: Add Bcc/LBcc to group BRAREL (relative branch).

* M680X: Add group JUMP to BVS/BVC/LBVS/LBVC. Remove BRAREL from BRN/LBRN.

* M680X: Remove LBRN from group BRAREL.

* M680X: Refactored cpu_type initialization for better readability.

* M680X: Add two operands for insn having two reg. in mnemonic. e.g. ABX.

* M680X: Remove typo in cstool.c

* M680X: Some format improvements in changed_regs.

* M680X: Remove insn id string list from tests (C/python/java/ocaml).

* M680X: SEXW, set access of reg. D to WRITE.

* M680X: Sort changed_regs in increasing m680x_insn order.

* M680X: Add M68HC11 support + Reduced from two to one INDEXED operand.

* M680X: cstool, also write '(in mnemonic)' for second reg. operand.

* M680X: Add BRN/LBRN to group JUMP and BRAREL.

* M680X: For Bcc/LBcc/BRSET/BRCLR set reg. CC to read access.

* M680X: Correctly print negative immediate values with option CS_OPT_UNSIGNED.

* M680X: Rename some instruction handlers.

* M680X: Add M68HC05 support.

* M680X: Dont print prefix '<' for direct addr. mode.

* M680X: Add M68HC08 support + resorted tables + bug fixes.

* M680X: Add Freescale HCS08 support.

* M680X: Changed group names, avoid spaces.

* M680X: Refactoring, rename addessing mode handlers.

* M680X: indexed addr. mode, changed pre/post inc-/decrement representation.

* M680X: Rename some M6809/HD6309 specific functions.

* M680X: Add CPU12 (68HC12/HCS12) support.

* M680X: Correctly display illegal instruction as FCB .

* M680X: bugfix: BRA/BRN/BSR/LBRA/LBRN/LBSR does not read CC reg.

* M680X: bugfix: Correctly check for sufficient code size for M6809 indexed addressing.

* M680X: Better support for changing insn id within handler for addessing mode.

* M680X: Remove warnings.

* M680X: In set_changed_regs_read_write_counts use own access_mode.

* M680X: Split cpu specific tables into separate *.inc files.

* M680X: Remove warnings.

* M680X: Removed address_mode. Addressing mode is available in operand.type

* M680X: Bugfix: BSET/BCLR/BRSET/BRCLR correct read/modify CC reg.

* M680X: Remove register TMP1. It is first visible in CPU12X.

* M680X: Performance improvement + bug fixes.

* M680X: Performance improvement, make cpu_tables const static.

* M680X: Simplify operand decoding by using two handlers.

* M680X: Replace M680X_OP_INDEX by M680X_OP_CONSTANT + bugfix in java/python/ocaml bindings.

* M680X: Format with astyle.

* M680X: Update documentation.

* M680X: Corrected author for m680x specific files.

* M680X: Make max. number of architectures single source.
2017-10-21 21:44:36 +08:00
Ruslan Kabatsayev
41f765f1f5 cstool: Separate instruction bytes by spaces (#1009) 2017-09-06 20:35:19 +07:00
Nguyen Anh Quynh
819dd2231e cstool: fix #975 2017-07-26 23:22:46 +08:00
Nguyen Anh Quynh
589585ecc1 cstool: some cleanup 2017-07-04 16:04:53 +08:00
Sergi Àlvarez i Capilla
8561f15d66 Refactor cstool to use getopt -100LOC (#953)
* Refactor cstool to use getopt -100LOC

* Add getopt.h for portability

* Do not use os-specific separators in include paths
2017-07-04 15:55:46 +08:00
radare
7a4567612c Honor CS_OPT_UNSIGNED on x86 and add cstool -u (#945) 2017-06-16 02:13:28 +08:00
Nguyen Anh Quynh
c768fa919f cstool: support arm64be 2017-04-25 21:33:26 +08:00
Fotis Loukos
e963a1e17c Added cstool support for tms320c64x 2017-04-17 11:58:29 +03:00
Nguyen Anh Quynh
bd20ee1f75 cstool: fix mips64 mode 2017-04-11 09:45:55 +08:00
Nguyen Anh Quynh
bb6e792f03 cstool: support armbe mode 2017-03-10 20:30:55 +08:00
Ben Cheney
19b89432eb Fix build under VS2012 (i.e. MSC_VER = 1700)
cstool.c currently imports inttypes.h, which breaks
building on older Visual Studio versions (I've been
testing 2012). This commit removes the explicit include
of inttypes.h, which is already handled in platform.h
(which is included by capstone.h). A define for the
function strtoull (used by cstool) has also been added
to platform.h for the case where MSC_VER <= 1700.

I don't know what effect this will have on OS X builds
as I'm unable to test on that platform.

Also, cstool.c doesn't need to include stdio.h
because it's already included by capstone.h.
2016-12-21 11:00:25 +08:00
Nguyen Anh Quynh
c9a2148b05 cstool: print out insn groups 2016-11-05 00:47:14 +08:00
Nguyen Anh Quynh
008a840a56 cstool: use switch 2016-11-05 00:43:22 +08:00
Nguyen Anh Quynh
bdf1b97a51 cstool: remove its version 2016-11-04 23:57:52 +08:00
Nguyen Anh Quynh
835042587f cleanup 2016-10-28 16:12:05 +08:00
Nguyen Anh Quynh
0a6b074929 Merge branch 'next' of https://github.com/echotyh/capstone into echotyh-next 2016-10-28 16:04:52 +08:00
YUHANG TANG
1d7dcad473 cstool: delete tab 2016-10-28 15:32:50 +08:00
YUHANG TANG
5e0a15521b cstool: add m68k and change cstool_x86 2016-10-27 12:12:59 +08:00
Nguyen Anh Quynh
1e5a48535c add CS_VERSION_{MAJOR, MINOR, EXTRA} 2016-10-25 14:29:21 +08:00
Nguyen Anh Quynh
0382c90220 cstool: cleanup 2016-10-22 23:38:35 +08:00
Nguyen Anh Quynh
8922eca702 cstool: print out core version 2016-10-21 17:34:31 +08:00
Nguyen Anh Quynh
c194aeeab4 cstool: cleanup 2016-10-21 16:57:23 +08:00
YUHANG TANG
f811b77140 cstool: convert space to tab 2016-10-21 16:57:09 +08:00
YUHANG TANG
6423e59f25 Delete platform.h and fix wrong identation. 2016-10-21 16:56:43 +08:00
YUHANG TANG
97c5c098bb cstool version 2 2016-10-21 16:56:00 +08:00
YUHANG TANG
c6705984c0 cstool: version 2 could print all debug information for all arch. 2016-10-21 16:55:48 +08:00
YUHANG TANG
bb66912b28 cstool : print all debug information for all arch. 2016-10-21 16:55:28 +08:00
YUHANG TANG
089893ed98 cstool: add x86 debug information 2016-10-21 16:55:09 +08:00
Nguyen Anh Quynh
c5e661cbb8 cstool: compile with CMake using CMakeLists.txt in root dir 2016-10-11 23:24:44 +08:00
Nguyen Anh Quynh
d971fde0e8 cstool: initialize i in preprocess(). this fixes compilation issue for MSVC 2016-10-11 16:56:20 +08:00
Nguyen Anh Quynh
d360b8bb17 cstool: align assembly code for x86 2016-10-11 16:19:27 +08:00
Nguyen Anh Quynh
54d351ef48 cstool: compile for next branch 2016-10-11 00:04:46 +08:00
Nguyen Anh Quynh
d823a3ad4e cstool: add VERSION and reformat to use tabs for indentation 2016-10-11 00:01:57 +08:00
echotyh
07337a708d cstool 1.0 (#788)
* first cstool -- Segmentation fault: 11

* Modify the format of output.

* Preprocess the input from user. The result of converting looks right but the disassembly is not unsatisfactory.

* Skip the character not in set A = {'a'~'f','A'~'F','0'~'9'}.
i Please enter the commit message for your changes. Lines starting

* delete cstool binary

* using isxdigit() to tests for any hexadecimal-digit character

* write README

* final version 1.0 for cstool
2016-10-10 23:54:25 +08:00