3 ms·
X86/ARM Emulator
- beagle3 14y agoLooking at the screenshots reminds me of days when low level debuggers were common and useful. pfix and pfix 86 plus (of which google can find no more than 2 mentions for me!) .. Turbo Debugger was ok too. I miss the easy low level access that those tools gave me -- when I had to choose between source level debugging and low level debugging, I chose the low level ones. Partly because it was much easier to reason about the low level parts (no C++ virtual inheritance and template proliferation craziness, libraries were smaller and simpler), but mostly because they were so much faster and gave a complete picture. Nowadays, you get no choice - gdb for low level debugging is awful, and the MS debuggers aren't much better.
- conductor 14y agoFor Windows there is OllyDBG [1], it is simply the best (with tons of plugins and scripts) for user-mode assembly debugging, but doesn't work in kernel-mode. [1] - http://ollydbg.de/ http://ollydbg.de/
- beagle3 14y agoThanks. It's been a while since I've done low level windows - SoftICE was still usable then (barely, but usable. It was Win2K driver development on an Athlon 800Mhz...) For anyone interested, a quick google of OllyDbg for linux leads to this list: http://ubuntuforums.org/showthread.php?t=608123&highlight=ollydbg http://ubuntuforums.org/showthread.php?t=608123&highligh...
- rwmj 14y agoWhy not just use qemu?
- fekberg 14y agoFor educational purposes it seems.
- daniel-cussen 14y agoAnd redundancy. Suppose you find qemu has a bug or constraint that's specific to you alone, and useless for your purposes. What do you do then? Write your own OR use an emulator that might not have that bug or constraint.
- Two9A 14y agoFor the same reason I wrote DSemu and jsGB: an educational experience. I only half-expected to get an emulation to the state where it would emulate commercial games and/or professional demos; the main motivation was to understand how a system works by simulating it, and to gain experience at multiple levels of the architecture at once. Writing a system emulator in JS/HTML5 is a great way to learn the system being emulated, how to quickly and efficiently read assembly and/or opcodes for the processor under emulation, and acts as an introduction to HTML5 with it.
- djhworld 14y agoI'm currently re-learning how a computer works under the hood and implementing my own little emulators after forgetting everything from university/school. I plan to write a GB emulator too one day. I'm a Java programmer by day job but I find it dull so this is my "hobby" at the moment