CPU emulator in web browser (Arm/Mips/X86/Sparc)
alexaltea.github.io
alexaltea.github.io
xadd eax, edx
loop -3
implements the Fibonacci series in two machine instructions (notice eax and edx have 514229, 832040 in them after you run the example, the 29th and 30th Fibonacci numbers). I first saw that in a book a friend got me for christmas; a hard copy of this site: https://www.xorpd.net/pages/xchg_rax/snip_00.htmlAlso, I have to apologize for the many bugs the demos have at the moment (annoying editor, missing features), I intended to post a Shown HN post at a later point in time. During the next days I will be taking care of these matters. By the way, these demos rely in Capstone.js/Keystone.js to assemble/disassemble machine code (if anyone is interested, similar demos can be found at https://phi.nz/).
https://github.com/ozaki-r/arm-js
http://biged.github.io/arm-js/arm-js.html
^ The latter link is a demo; click "Boot" in the upper left.
On the other side: this CPU emulator is written using high-level JavaScript, and I think some of its control flow is implemented using exception handling, whereas compiling Unicorn to asm.js will get reconstituted in modern broswers back to reasonable native code (and qemu is designed to be fast). I don't think it is clear cut which is faster.
(I would do a benchmark, but for my use case I actually am working with interpreted JS, which is massively different, and I had already evaluated that Unicorn.js wasn't flexible enough for my intent, so it is more of a curiosity than a question I would spend time to answer myself.)
Indeed, performance is not clear and probably depends a lot on the browser's JavaScript engine. I will try to find that out in the future with some benchmark.
This is based on the Unicorn emulator (open source): https://github.com/unicorn-engine/unicorn
1) find SPARC systems
2) find what you need to do to initialize all components on a SPARC system
I'd love to write an OS for a SPARC machine one dayIn case by "find" you mean "where are SPARCs still being used"... It is something of a niche, but all our missions in the European Space Agency use LEON processors; a design based on SPARC [1].
And since you mentioned OSes, usually it is either bare-metal stuff or RTEMS [2].
[1] https://en.wikipedia.org/wiki/LEON [2] https://www.rtems.org/
[1] Search for "SPARC" in http://www.downloads.netgear.com/files/GDC/RND2110/Duov1_NV+....
[1] http://www.art.net/~hopkins/Don/unix-haters/slowlaris/worst-...
Couldn't they extend Qemu, or there was a reason for making a separate project?
would like to know more about unicorn as well.
And 68000 :-)
1. Is there any way to run SGI/IRIX and some IRIX software?
2. Would a simple IRIX Software run on BSD/MIPS? I heard they are quite similar.
This project seems to be discontinued: https://www.vanheusden.com/miep/
They claim to be able to have an emulator, but as far as I know, expensive as f.... http://www.vhware.co.il/
Any other ideas?