open-source-ideas / ideas

💡 Looking for inspiration for your next open source project? Or perhaps you've got a brilliant idea you can't wait to share with others? Open Source Ideas is a community built specifically for this! 👋
6.56k stars 221 forks source link

x86 interpreter/debugger that shows the state of the stack and registers graphically #146

Open Kreijstal opened 5 years ago

Kreijstal commented 5 years ago

Project description

[Describe the project the best you can. Give any background information or link to resources that are necessary to understand the problem it is intended to solve. The more you elaborate on your idea, the easier it is to accomplish.]

Imagine a x86 debugger but with a visual gui that shows you the state of the registers on every instruction, the use case for this is for teaching people about how x86 asm works, not necessarily making a fully functional x86 interpreter, that would be really hard. Although if you wanted to you could try aim for that.

There would be a table with registers, and a scrollable stack, for the byte values you would probably see all the possible interpretations: ASCII, hex, dec

Relevant Technology

[Write what technology is relevant. What language, what platform, any particular library/framework/existing project it is based on?]

Well you would have to know a lot about UX and UI and then apply your asm knowledge into that. http://wwwi10.lrr.in.tum.de/~jasmin/ https://github.com/copy/v86 https://software.intel.com/en-us/articles/intel-sdm The question is which asm flavour to favour, I would lean toward NASM, but that could be done at your leisure.

Complexity and required time

[Please only tick off one box in each category by changing [ ] to [x]. The labels on the project will then be updated by the maintainers as soon as possible.]

Complexity

Required time (ETA)

cch123 commented 5 years ago

https://github.com/cch123/asm-cli-rust

Kreijstal commented 5 years ago

@cch123

https://github.com/cch123/asm-cli-rust

h-how do I make

cch123 commented 5 years ago

@Kreijstal ,I'll release one for Mac OS. if your os is not macOS, you may need to build your own.

cch123 commented 5 years ago

https://github.com/cch123/asm-cli-rust/releases/tag/1.0.0

FredrikAugust commented 5 years ago

Hopper has this.

FredrikAugust commented 5 years ago

And gdb with peda/pwndbg/other improvement frameworks and radare2.