Commit graph

2312 commits

Author SHA1 Message Date
Ahmed Samy 02e6c14e12 x86: add MSR API via reg API (#755)
Writing / reading to model specific registers should be as easy as
calling a function, it's a bit stupid to write shell code and run them
just to write/read to a MSR, and even worse, you need more than just a
shellcode to read...

So, add a special register ID called UC_X86_REG_MSR, which should be
passed to uc_reg_write()/uc_reg_read() as the register ID, and then a
data structure which is uc_x86_msr (12 bytes), as the value (always), where:
	Byte	Value		Size
	0	MSR ID		4
	4       MSR val		8
2017-02-24 21:37:19 +08:00
Nguyen Anh Quynh f3ada41b99 fix the last fix that crashes samples 2017-02-24 20:34:52 +08:00
Nguyen Anh Quynh 7c29558a95 msvc: fix a warning in qemu/exec.c when merging master to msvc 2017-02-24 19:29:55 +08:00
Nguyen Anh Quynh 6ea39f7d5a merge msvc with master 2017-02-24 10:39:36 +08:00
radare 8acd6d47c9 Properly honor UNICORN_HAS_ (#757)
* Properly honor UNICORN_HAS_

* Oops missed that
2017-02-24 10:00:36 +08:00
Nguyen Anh Quynh 8f488a101c Makefile: clean remove library *.{a,def} 2017-02-23 20:57:14 +08:00
Nguyen Anh Quynh ed7e19e1b7 fix ChangeLog 2017-02-23 20:50:36 +08:00
Nguyen Anh Quynh e7ecbf7889 m68k: fix a compilation warning 2017-02-23 20:34:17 +08:00
Nguyen Anh Quynh 714cf2c609 arm: fix a warning 2017-02-23 20:32:09 +08:00
Nguyen Anh Quynh f3f2a4d7a9 prepare for v1.0 2017-02-23 20:17:02 +08:00
fG! d5870ff47d Update unicorn.h (#753)
Make it clear that only very few instructions can be hooked
2017-02-21 10:22:17 +08:00
Nguyen Anh Quynh 736d9857d2 recover some ELF symbols for building on Arm, PPC, Sparc & S390. issue #752 2017-02-20 15:16:50 +08:00
Chris Eagle a03e908611 Fix initial state of segment registers (#751)
* Remove glib from samples makefile

* changes to 16 bit segment registers needs to update segment base as well as segment selector

* change how x86 segment registers are set in 16-bit mode

* more appropriate solution to initial state of x86 segment registers in 16-bit mode

* remove commented lines
2017-02-09 23:49:54 +08:00
Chris Eagle f05984961b Fix 16-bit address computations (#747)
* Remove glib from samples makefile

* changes to 16 bit segment registers needs to update segment base as well as segment selector

* change how x86 segment registers are set in 16-bit mode
2017-02-08 09:37:41 +08:00
vardyh 7f9251511e MSVC port (vardyh) (#746)
* unicorn: use waitable timer to implement usleep() on Windows

Signed-off-by: vardyh <vardyh.dev@gmail.com>

* atomic: implement barrier() for msvc

Signed-off-by: vardyh <vardyh.dev@gmail.com>
2017-02-07 21:31:35 +08:00
Sascha Schirra eb4dc61c66 Updated ruby bindings (#744)
* added methods for uc_context_save, uc_context_restore

* added test for context_save

* changed version of the lib
2017-01-29 08:13:17 +08:00
hedger 89d536df5a Fixed build script for *BSD (#743) 2017-01-29 08:12:38 +08:00
Nguyen Anh Quynh c961e1a4d5 bump package name to 1.0-rc3 2017-01-25 22:01:54 +08:00
xorstream 3151604d4d Changes to reduce size of libs (#741)
* Fix for MIPS issue.

* Sparc support added.

* M68K support added.

* Arm support ported.

* Fix issue with VS2015 shlobj.h file

* Arm issue fix.

* Finalise MSVC port.

* Changes to reduce size of libs
2017-01-25 20:59:32 +08:00
Nguyen Anh Quynh 1d73d72c69 typo 2017-01-25 12:03:09 +08:00
Nguyen Anh Quynh 7854bf9e57 typo 2017-01-25 12:02:41 +08:00
Nguyen Anh Quynh b616115df1 update ChangeLog 2017-01-25 12:00:18 +08:00
Parker Thompson 053ecd7bf4 Added ARM coproc registers (#684)
* Added ARM coproc registers

* Added regression test for vfp
2017-01-25 11:56:19 +08:00
Nguyen Anh Quynh 2853b4b1cd msvc: do not distribute private header files 2017-01-25 09:09:13 +08:00
Nguyen Anh Quynh ef52d9a9d1 cleanup qemu/include/qemu/module.h 2017-01-25 00:20:08 +08:00
Nguyen Anh Quynh 978b803d04 update docs for MSVC port 2017-01-24 23:20:19 +08:00
xorstream 2a941e3efb Finalise MSVC port (#739)
* Fix for MIPS issue.

* Sparc support added.

* M68K support added.

* Arm support ported.

* Fix issue with VS2015 shlobj.h file

* Arm issue fix.

* Finalise MSVC port.
2017-01-24 22:09:33 +08:00
xorstream e08d1bf7c6 Arm issue fix. (#738)
* Fix for MIPS issue.

* Sparc support added.

* M68K support added.

* Arm support ported.

* Fix issue with VS2015 shlobj.h file

* Arm issue fix.
2017-01-24 17:45:01 +08:00
Nguyen Anh Quynh a735576dd3 python: support uc_mem_regions() API 2017-01-24 12:47:27 +08:00
xorstream 8e45102b43 Arm support ported. (#736)
* Fix for MIPS issue.

* Sparc support added.

* M68K support added.

* Arm support ported.

* Fix issue with VS2015 shlobj.h file
2017-01-23 23:30:57 +08:00
Nguyen Anh Quynh fabe682d87 update .gitignore 2017-01-23 21:54:48 +08:00
Nguyen Anh Quynh 590d1d06e0 update msvc\.gitignore 2017-01-23 21:30:15 +08:00
xorstream 2695a0ffe8 M68K support added. (#735)
* Fix for MIPS issue.

* Sparc support added.

* M68K support added.
2017-01-23 14:40:02 +08:00
xorstream a40921ce32 Sparc support added. (#734)
* Fix for MIPS issue.

* Sparc support added.
2017-01-23 13:29:41 +08:00
xorstream 69ae8f7987 Fix for MIPS issue. (#733) 2017-01-23 12:39:34 +08:00
Nguyen Anh Quynh 2ecbe89cc1 cleanup Sparc unused code 2017-01-23 12:34:00 +08:00
Nguyen Anh Quynh e4c7c3dbe4 cleanup Sparc unused code 2017-01-23 12:33:39 +08:00
Nguyen Anh Quynh 0680b85920 cleanup Monitor related code 2017-01-23 10:07:01 +08:00
Nguyen Anh Quynh 81b8a685be cleanup 2017-01-23 10:06:49 +08:00
Nguyen Anh Quynh 3b470ffce2 fix appveyor after renaming msvc.sln 2017-01-23 09:18:57 +08:00
xorstream cbd0e6056c Fixed some conflicts 2017-01-23 11:35:00 +11:00
xorstream 19a6dc948f Merge remote-tracking branch 'unicorn-engine/msvc' into msvc 2017-01-23 11:14:32 +11:00
Nguyen Anh Quynh 55d472c62c cleanup Monitor related code 2017-01-23 00:53:31 +08:00
Nguyen Anh Quynh b3faed1df9 cleanup 2017-01-23 00:30:13 +08:00
Nguyen Anh Quynh ce35b4e381 make.sh: compile before copy autogen files for msvc_update_genfiles 2017-01-23 00:04:55 +08:00
Nguyen Anh Quynh 0c55648dee make.sh: build_linux32() appends, but does not overwrite UNICORN_QEMU_FLAGS 2017-01-22 23:53:28 +08:00
Nguyen Anh Quynh a95fdbc5aa cleanup qemu/include/exec/memory.h 2017-01-22 23:21:47 +08:00
Nguyen Anh Quynh 5de0785a1b cleanup qemu/memory.c 2017-01-22 23:07:17 +08:00
xorstream c8d1287e10 gitignore seems to have an undisclosed conflict?! fixed here. 2017-01-23 01:13:13 +11:00
xorstream 724c765028 Merging with current msvc 2 2017-01-23 01:07:50 +11:00