I download Garmin MXT 5.00.30 ASN ,run on my WinCE6.0 PNA ,but it can not get card id , i try some ids, for example 1111111111,0000000000, not work. so , i used ida to parse it. it used sub_10F0D8 to get CARDID ,stored into an int var. I saw it's code for a whole day, realize sub_10F0D8 used sub_10EAB4 to get card name , store in FileName, check it is not empty or "\Garmin\" , then add "\Vol:", used it for CreateFile and DeviceIoControl to get card id.Unfortunately, such name can not get any in my PNA. I write progarm can check this on you PNA , it work for wince6 ,perhaps not run on wince5You can download it [Only registered and activated users can see links. ] here.
so fix
.text:0010F130 BL wcscat to BL wcscpy
and fix
.rdata:003ACCBC 5C 00 56 00+s_Vol unicode 0, <\Vol:>,0
to
.rdata:003ACCBC 5C 00 56 00+s_Vol unicode 0, <DSK2:>,0
you can see card id under device id on garmin about.
And then , i move garmin into NANDFLASH, it also work
Detail Fix as follow
1. use sdcard to confirm "DISK2:" can get card id on you PNA
2. on 0x00FE530 , change four byte in red rectangle to 3A 57 08 EB
[Only registered and activated users can see links. ]
3. on 0x39BCBC, fix to 44 00 53 00 4B 00 32 00 , and if your PNA can get card id at "DSK3:" , fix to 44 00 53 00 4B 00 33 00 , and so on.
These no test on more PNA.
Bookmarks