I have been unable to get IDA pro to do a simple disassembly of a flat 16-bit binary (bootloader) file. I'm just getting started, and it seems to be harder than it should be.
There's a simple set of instructions, that do
seg000:7C5D push 7C0h
seg000:7C60 pop ds
seg000:7C61 assume ds:nothing
seg000:7C61 push ds
seg000:7C62 push (offset unk_7C66 - offset loc_7C00)
seg000:7C65 retf
seg000:7C65 ; --------------------------------------------------------------------------
seg000:7C66 unk_7C66 db 88h ; ê ; DATA XREF: seg000:7C62o
Right under push 7c0h; pop ds
it says assume ds:nothing
. retf
actually uses the values in the stack to set the segment and offset. Is there a way to manually enable such analysis? Are there more intelligent disassemblers out there? I'm having trouble following the flow and IDA isn't helping at ALL.