You need a logic analiser, loads of cheap ones on ebay. Once you capture a program loop you can load it onto your simulator and step through it, if its function is not obvious. Program the analiser to ignore that loop and repeat untill you have them all. The whole process is suprisingly easy if your source is not too big.
oops my reply went too early i had not finished so this is just continue of previos.
ok, i believe it. i thought maybe step through the real program in PAUMON with real feedback
*BUT*
my brain lapse/over active imagination/etc I see your point, the paulmonis not going to be doing any translation for me and certainly not clearing a path to all the I/O , i guess my hopes for paulmon (monitor) were too high
run
have the
:( alas another project i am working on
have built
*will* be
which company
well i am trying to do this hobby style so probably will not progress to that point sorry to put a wrench in your potential windfall earnibngs :)
I've started a bit down the path you suggest already. I printed out data sheets for all the onboard ICs for quick reference to what the inputs and outputs should look like. i started on creating a schematic/circuit diagram for the micro-board for understanding and easy lookup of interconnections.
i have dis-asembled the ROM code with a dis52 from the 8052 web site and i also used another dasmx130 that someone suggested but i get two different dis-assembles ?
one treats the (02096f) in the first 3 bytes as a (long jump to
096F) where the other disassembles the (02096f) into something else like this ...
so that can not be a good sign , and leads to confusion so i suppose i will need to hand dis-asemble aways and confirm which dis-assembler is more accurate.
Looking at some used books on 8051 by MacKenzie and others
I ran into quite a number of problems of that sort in APPLE II assembly code where whatever system generated the code would intersperse defined constants with the generated code. The disassembler would try to disassemble string constants and debugging data (such as function names, etc.) and would then miss the first instruction of the next function.
Sometimes you may have to look at instructions such as LJMP 096F and make sure that the bytes at 096F really are executable code.
It's little things like that which make disassembling and reverse engineering a non-trivial excercise. Which is OK by me as it paid the bills for almost half a year back in the '80s.
If you have copied the rom then get an emulator and load the code. Then run step by step to know where it is going.
If you wish you can provide me a munged email id and I will send you the emulator, (freeware) which will show the ram, rom etc and you can see what happens at each step.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.