fenugrec / nissutils

49 stars 15 forks source link

Ghidra Utilities suggestion #17

Closed dschultzca closed 8 months ago

dschultzca commented 8 months ago

Maybe you can add check boxes for the options in the mode you wish to use. For a ROM partially defined and adding registers after the fact, just select that option. I had to commented out the bits I didn't need which thru exceptions.

def mode_basic():
    device_base = askChoice("CPU memory blocks", "Select device type", devlist, devlist[0])
    #create_memblocks(device_base)
    #create_vectors(device_base, None)
    create_ioregs(device_base)
fenugrec commented 8 months ago

Hi, Do you mean something like showing just one list of checkboxes at the beginning instead of the yes/no dialogs?

Fancy seeing you here, what are you working on ?

dschultzca commented 8 months ago

I was thinking after you select the mode, then a checkbox for the options:

I had a few minutes so I thought I'd load my ROM in Ghirda to see how it works and compares to IDA. The script they provide to convert IDA data to XML to ingest into Ghirda fails for me :-(

fenugrec commented 8 months ago

I was thinking after you select the mode, then a checkbox for the options:

I like the idea. New user doesn't know that there are dlg boxes coming up next, and cannot guess what choices will be available. I'm just not sure how to do that; the python bindings are less documented than java, and neither are really my specialty, so I would ideally have to find an existing plugin that has similar UI operation.

I had a few minutes so I thought I'd load my ROM in Ghirda to see how it works and compares to IDA. The script they provide to convert IDA data to XML to ingest into Ghirda fails for me :-(

Hm, that's annoying... I haven't done that migration often, I may have just done an 'export db as .idc script' and then sledgehammered that with sed into a ton of commands that the py interpreter can digest.

dschultzca commented 8 months ago

I was trying to avoid the IDC to PY/Java with their plugin. I opened an issue, we'll see where that goes.

dschultzca commented 8 months ago

If this helps: https://github.com/ghidraninja/ghidra_scripts/wiki/Python-Scripting-Cheat-Sheet

fenugrec commented 8 months ago

@dschultzca , just pushed a new version of the script, hopefully more intuitive. Let me know how it works for you