NefMoto

Technical => Reverse Engineering => Topic started by: stuartdean on August 26, 2019, 07:17:02 AM



Title: IDA Pro for C166 - hobby user, best starter route.
Post by: stuartdean on August 26, 2019, 07:17:02 AM
Hi, This is really a newbie query - so there might be a better area (or trash-can),
I am going to try to get to grips with the TTBAM.bin at an assembler level, to try and have multiple MAP switches and really take my mind off gardening and clearly out the conservatory and den in this UK heat - instead of just changing tunerpro stuff and running me7logger.

So... I downloaded the Keil ARM C166 user guide, data sheet and instruction set and have started reading through some of the documentation to fast-track read up about the processor, in order to get some basic knowledge. 

The experts on this forum say to use IDA Pro,  but isn't this like about 1500 GBP?  Pretty sure the "free for personal use" version doesn't support the C166.

I have had a quick look at the infineon uVision IDE and Disassembler and free HxD hex editor to process the C166 Bin.  Is it possible to use these free tools to have a play and learn about the ECU, or do I really need to get a copy of the IDA Pro full version?

Incidentally,  the Infineon documentation covers multiple derivatives of the C166 family.  Are there specific versions I should be focusing on, or is just a general knowledge of the family good enough for a starting point?


Thanks


Title: Re: IDA Pro for C166 - hobby user, best starter route.
Post by: d3irb on August 26, 2019, 09:09:16 AM
The experts on this forum say to use IDA Pro,  but isn't this like about 1500 GBP?  Pretty sure the "free for personal use" version doesn't support the C166.

I have had a quick look at the infineon uVision IDE and Disassembler and free HxD hex editor to process the C166 Bin.  Is it possible to use these free tools to have a play and learn about the ECU, or do I really need to get a copy of the IDA Pro full version?

Incidentally,  the Infineon documentation covers multiple derivatives of the C166 family.  Are there specific versions I should be focusing on, or is just a general knowledge of the family good enough for a starting point?

General knowledge is fine to start - the memory/peripheral map between CPUs is going to be the main thing that will matter in disassembly and you'll probably look that up as reference each time you go to load a new BIN.

Highly recommended you "source" IDA from somewhere - yes, it's expensive, but there's no competition right now. Ghidra has a TriCore module now thanks to a very dedicated user from the community (I wonder if they are on here?), but no C166 yet.

You would have to be very hardcore to get uVision to be useful for you. IDA is really the way to go.


Title: Re: IDA Pro for C166 - hobby user, best starter route.
Post by: Blazius on August 26, 2019, 09:11:42 AM

Highly recommended you "source" IDA from somewhere - yes, it's expensive, but there's no competition right now. Ghidra has a TriCore module now thanks to a very dedicated user from the community (I wonder if they are on here?), but no C166 yet.



Yep, only tricore for Ghidra yet. If I remember right, there was a thread about c166 here , but I dont know if its happening or even if there are people working on it. It'd be quite nice.


Title: Re: IDA Pro for C166 - hobby user, best starter route.
Post by: stuartdean on August 29, 2019, 03:04:11 PM
Thanks for replying,
 The IDA documentation does say you can purchase a IDA Starter edition version and write your own extra processor dissemblers - has someone written one of those Plug-Ins perhaps?  This is well past my practical knowledge, I am just enjoying 20 pages a night of the 500 page C166 user manual :D