Closed PASAf closed 6 years ago
Hey! There were some missing instructions (obviosuly) that I forgot to add in the decoding switch/case. I've fixed that. The executable is now properly disassembling and a c++ code can be generated from it. Some of the instructions don't have a c++ implementation in the xenonCpu.h but it's not a big deal to write it. Let me see what can I do :) Would be cool to get the project to actualy start in the host app. The changes are at #f3b2e77078e0152565b69f4706c215452507fa28
Basicaly, for missing instructions a new function in xenonCPU.h has to be created to match that matches the nubmer of arguments in the actual instructions. For the instruction description it's best just to google it. Here are often pseudo codes how the instructions work as well as detail implementations:
http://math-atlas.sourceforge.net/devel/assembly/vector_simd_pem.ppc.2005AUG23.pdf
All instructions should be now accounted for
I've tried it on one xex I'm particularly interested in, and it tells me in output that instruction decoding fails at address xxxxxx, after that no instructions decoded (even in next functions).
Screenshot: http://i.imgur.com/k6DOJRd.png Here is the XEX: http://www.mediafire.com/file/8s9gr9v4d3c4zjh/Default.xex
Good tool, big work, thanks for that.