Monday, March 31, 2008

完美破解Garmin Mobile XT导航新版 4.10.80,原版地图无漂移。

步骤:1.下载Garmin Mobile XT 4.10.80 台*湾版: http://www.garmin.com/tw/download/TW_MAINWEB_UPGRADE/GarminMobileXT_4_10_80_S60_TW.exe      
        2.下载Garmin Mobile XT导航软件S60V3:文件名称: http://www.garmin.com/tw/download/TW_MAINWEB_UPGRADE/GMobileXT_S60.exe
          
        3.下载原版地图:http://219.142.87.83/mapupgrade/map_daluban_3x-6x_6.rar请用迅雷下!

安装:1.N95选择数据传送,将主程序GarminMobileXT_4_10_80_S60_TW.exe解压缩,然后把Garmin文件夹System文件夹复制到储存卡根目录中。
         2.将GMobileXT_S60.exe 解压缩,将Garmin\Apps\Symbian\Res\中的三个文件复制,全部覆盖替换手机储存卡Garmin\Apps\Symbian\Res\中的两个文件,再将Garmin Mobile XT 4.10.80 _S60_TW.exe中的Garmin\Apps\Symbian\Res\的两个文件再次覆盖手机储存卡Garmin\Apps\Symbian\Res\中的两个文件。
       3.将手机储存卡Garmin\Apps\Symbian\Res\中gmsup 文件用记事本打开,进行编辑。
                原文:[SYMBIAN]
                           LOCAL_VER=TAIWAN
                           PANORAMIO_PHOTOS_SPRT=1

               修改为:[SYMBIAN]
                            LOCAL_VER=CHINA
                            PANORAMIO_PHOTOS_SPRT=1

                 并保存

            

         4.把地图文件解压后的GMAPSUPP.IMG和GMAPBMAP.IMG都复制到Garmin文件夹下。将下载的插件gmapprom解压后的文件:gmapprom.img复制到Garmin文件夹下。
         5.将N95选择PC套件,在文件管理器中找到 E:\Garmin\GarminMobileXT.SIS 点击安装。
         6. 打开安装好的程序GMobileXT,首次开启时要先设置一些选项,设置:简体中文-普通话-公制-提示(否)-地图使用地    区(大*陆地区).设置好后到主画面会搜寻GPS装置,先点取消,然后去设定 > 关于 > 把ID记下,退出软件.
         7.再将N95选择数据传输,在电脑上开启 garmin_kgen.exe ,把刚才的ID打上后,Generate,将得到注册码复制并贴在记事本上,然后存为SW.UNL,再放到手机储存卡Garmin文件夹中,注意:此时不能关闭garmin_kgen.exe ,或者将ID注册码删除。
         8.Map 选择279,点Map 下的Generate,把出来的解锁码贴上记事本。
         9.Map 改为33,再点Map 下的Generate,把出来的解锁码再贴上先前已贴上解锁码的后面,不要留空也不要另起行。
        存为GMAPSUPP.UNL,放到手机储存卡Garmin文件夹就可以解锁了。

   
        10.将N95选择PC套件,软件会自动启动破解,就OK了。

注意:打开软件后要设置:  工具--数据管理--地图。按Mapsource选择一下详图
要钩选 China City Navigator OF V6.0   。同时将其他的地图的钩去掉。



保存在手机里的文件SW.UNL和GMAPSUPP.UNL这两个文件的属性,要在电脑上的文件夹把隐藏属性打开,检查下是不是有.txt  如果是,把.txt删去就可以了。










两个破解文件只能根据自己的手机序列号产生的ID做出来,一个手机只能有一个ID,也只能有两个破解文件。
否则破解不会成功


 

Friday, March 21, 2008

[转]零成本自己动手换字库!从此刷机不用怕

本帖出自pdafans,转载请注明!!

 

其实因为刷机失败造成的不开机等现象都是因为引导信息出现浑沦或者错误导致的,不是真正的字库物理损坏,只好通过本文介绍的方法就可以自己动手恢复.觉得对大家很有用,也让歼商没有可乘之机,几乎是零成本的代价和动辄数百上千的维修费比起来,还是很明显的.
本人英语水平差,但是还是希望翻译出来给英文水平比我还差但又很需要这些资料的xd们看
有什么翻译不准确和欠妥的地方,大家踊跃指出.....感谢leixu给大家提供链接.
另外需要说明的是,刷机刷死的机子大可试试看,但是我不负任何责任的哦.也不关leixu的事.
因为本人Atom暂时没有变成可爱的砖头,故无法动手亲自实验。见谅。
不过可以看一下成功的例子:http://bbs.pdafans.com/viewthread.php?tid=485266&pid=5195095&page=3&extra=page%3D4#pid5195095
====================================================================================
建议:
有朋友反映这个LTP的接口没有办法搞到
其实不然,从电路图中可以看出其实很简单,只要到附件的电子市场上就可以买到
原料:LTP接口(并口,貌似有公母之分,如图是电脑端的接口,买可以对得上的就可以了)一个,100欧姆的电阻4个.一共不到10元.

按照电路图连接.
重点:连接ppc主板的时候,如果没有那个连接器,可直接把线焊在主板上....嘿嘿.这样更加保险,不存在接触不良的问题.
=============我是可爱的分割线,以下是正文======================
恢复 BootLoader被刷死的手册 Rover G5, Orsio n725, O2 Atom, O2 Atom Exec, HP6815 – 已测试 . (可能 68xx series也通用)
症状:
不开机也进不了BootLoader.
(大多是因为从存储卡刷机后造成的)
连接充电器.
如果放进电池并且连接充电器,设备的LED可以亮
如果取出电池连接充电器,LED闪烁
那就仅有一个方法可以恢复bootloader
用JTAG重新写PXA272的flash memory(应该就是字库)
这个程序(过程)由两部分组成.
硬件(重写字库用到的数据线)和软件(重写字库)
硬件部分:
Atom Exec, Rover G5, Orsio n725, O2 Atom, O2 Atom Exec的JTAG插脚引线图:
O2 Atom (非 Exec) 只有内部引线..位于相机键的附近.
恢复 BootLoader被刷死的手册 Rover G5, Orsio n725, O2 Atom, O2 Atom Exec, HP6815 – 已测试 . (可能 68xx series也通用)
© Copyright to Alex_Beda & 1stMASTER
PDA-HACK.NET Team  http://pda-hack.net
If our article has helped you, you can donate the Web Money
WMID 378286389551
for WMZ: Z396747110007
for WME: E114645323227
for WMR: R351032339900
Thanks to all who helped.
Thanks to Winterice for the technical assistance and moral support.
Thanks to ant 125 for useful information
Thanks to Allbest, deniska.75, Borozavr, Erke for moral support.
//广告和感谢的话就不翻译了/
症状:
不开机也进不了BootLoader.
(大多是因为从存储卡刷机后造成的)
连接充电器.
如果放进电池并且连接充电器,设备的LED可以亮
如果取出电池连接充电器,LED闪烁
那就仅有一个方法可以恢复bootloader
用JTAG重新写PXA272的flash memory(应该就是字库)
这个程序(过程)由两部分组成.
硬件(重写字库用到的数据线)和软件(重写字库)
硬件部分:
Atom Exec, Rover G5, Orsio n725, O2 Atom, O2 Atom Exec的JTAG插脚引线图:
O2 Atom (非 Exec) 只有内部引线..位于相机键的附近.

这些引线大多在机子的内部,要连接它们你就必须打开机子,
有些引线露在外面,在sim卡插槽附近
所有的引线都是处于工作状态的.
对于内部的引线,你需要这样的一个连接器.



PC的LPT连接器.

线长大约35-40cm
这是对于外露的引脚的连接器
由5.25"软驱接口制作的连接器
[img] [/img]


这个是为了固定连接器做的东东,你也可以用其他东西代替.



软件部分:.
http://wiki.xda-developers.com/uploads/RepairBootLoader.zip
附上的程序是 JFlashmm,
1.打开 giveio。 (应该是为驱动数据线并传输数据做的准备)
2.如果是O2 Atom (非 exec), 那就可以跳过第3步。
3.删除JFlash_MM文件夹中的ebo_a.nb0,把O2 Atom的rom中的eboot.nb0文件复制到JFlash_MM文件夹中 ,并重命名为 ebo_a.nb0.

(大家注意用MD5验证工具验证一下自己的eboot.nb0,如果结果是:107515e8ab201b9b5b34b698c392b358  就没有问题了。)
4.按住micro 键 (在sim卡插槽旁边,电池压住的那个开关). 然后连接LPT 连接器,

例如:帖个胶布在那个开关上面就可以了.
LPT 连接器的接地口要接地(用这个的一个夹子接地)

连接 PC的LPT接口.
连接充电器
红色的LED充电指示灯会闪一下.
如果LED不闪,
检查一下.micro 键是否按住.
检查一下是否固定住引线的连接器.
安装附上的giveio驱动.(记得要默认安装,不要动其他的选项)
现在你可以恢复 BootLoader了.
BootLoader 需要恢复的地方有两个
需要从地址0和3f400的地址启动
在jflash_mm文件夹下面有个start.bat的文件
start.bat文件里面有:
jflashmm pxa27x32 ebo_a.nb0 P 0 PAR
jflashmm pxa27x32 ebo_a.nb0 P 3F40000 PAR
所以文件ebo_a.nb0  将刷新这两个地方:
地址0 和 地址3f40000, 数据要被传送到并口
执行 start.bat, 一切顺利的话 ,说明你正确连接数据线了,
如果没有正确连接的话会有以下提示:
JFLASH Version 5.01.007
COPYRIGHT (C) 2000 - 2003 Intel Corporation

PLATFORM SELECTION:
Processor=             PXA27x
Development System=    Mainstone
Data Version=          1.00.001

Couldn't access giveio device  

如果连接成功,程序开始检测处理器.
如果屏幕提示信息"file *.DAT not find", 按软启键.
程序将询问你: «bla-bla-bla» Y/N? 按Y
显示如下:
________________________________________
JFLASH Version 5.01.007
COPYRIGHT (C) 2000 - 2003 Intel Corporation
PLATFORM SELECTION
Processor= PXA27x
Development System= Mainstone
Data Version= 1.00.002
PXA27x revision ??
Found flash type: 28F256L18B
Unlocking block at address 0
Erasing block at address 0
Unlocking block at address 10000
Erasing block at address 10000
Unlocking block at address 20000
Erasing block at address 20000
Unlocking block at address 30000
Erasing block at address 30000
Unlocking block at address 40000
Erasing block at address 40000
Starting programming
Using BUFFER programming mode...
Writing flash at hex address 3fe80, 99.85% done
Programming done
Starting Verify
Verifying flash at hex address 3ff68, 99.94% done
Verification successful!
________________________________________
刷新地址3f4000的时候可能要多花一些时间.
你可以断开充电器和数据线.
进入 bootloader :
按相机键, 放入电池并软启t.
如果没有问题的话, bootloader 已经可以正常运行了.
现在,像平时刷机一样 (几乎都要做的事情)
把机子连接到电脑上
运行刷机程序
必须重新刷机
如果没有问题的话,刷机程序会
写入.Operation system
再写入bootloader
再写入 ExtROM, 但是,可能在6 %的时候卡住了!!!!
断开USB数据线 ,硬起!!!
机子是肯定可以打开的了, 开始校准屏幕等等.
然后在一次运行刷机软件就可以了~


Sunday, February 17, 2008

N93i刷机!!!!

 版本是V11.0.009的……好古老……用这么古老的ROM不是我等的风范,直接用NSS刷~
一看居然新版是V30.0.013而且验证通过~刷之

N93i之后的目标是……N82……收集所有金属成分的NOKIA N Series....

N93i_Flashing_1

刷机完成……

N93i_Flashing_2

忘了后续……
由于没有注意这个手机的CODE是伟大的东南亚区的……导致我刷完机器之后进去只能选择英语、马来语、印尼语中的一种……

在无比郁闷中我选择了Phoenix改CODE重新刷

可新问题出现了:Vista没法安装Diego...于是果断打开虚拟机,在虚拟机里刷……

N93i_VM_Flash


这回改成了0540942的HK版……不过HK的简体看上去比较别扭……

Monday, January 21, 2008

LD-3W室内定位…



诺基亚LD-3W太强大了…室内都能搜到7颗星,并且连接至少3颗定位…别的不多说,看截图…
此蓝牙GPS采用Sirf Star III芯片,BL-5C电池…待机各种长…现在就缺地图了…考完试整…

Saturday, January 19, 2008

人生中第一次进局子…--因为被骗了…

被骗了2828…就是因为想要N93i…自责啊…这件破事弄得我考试不得安宁…
我别的也不多说,那个叫岳鹏博的人,自己乖乖的等着被铐吧…

Thursday, January 10, 2008

罪孽啊…离考试不到十天居然开始想买个二手手机…

天啊…我是怎么了…
只是因为一时冲动,这个念头就下不去了…有台1G亚太N95卖2800,卖的人说因为解决不了在运行第三方软件自动重启的问题所以自刀到2800…我颇有自信的告诉卖家我应该能解决,让他帮我留货…后来又歪门邪道发现N93i是双头手机…又有WIFI禁不住好看的诱惑…这回仍然是2800,没有任何问题…就是需要动作快…北京面交…
天啊…到底该要哪个…到底该怎么办…
迷茫中又看了P800W,3000以内小刀…诱惑啊…可是800的U太慢…还没手上的9000快…又不是双128存储器…唯独就是因为有导航…这个当时就弃了…于是转向1.02版iPhone…
不行,寒假一定要收一台

Tuesday, January 08, 2008

UNIX操作系统考试终了……

今天最大的新闻当属这个了吧。

其次是我去调查了一下发生在昨天早晨的我们学校女生宿舍失火的事情。其中包含昨天晚上班里的女同学在现场拍的照片……据说因为超级冷而且十分慌张,所以拍摄得极不清晰。

20080107124 

起火的宿舍位于顶层,还殃及了周围的两个寝室。

据调查,事故起因是由于一考研女生刷夜复习,早晨4点多时临时出门。而后台灯倾倒,引燃被褥起火(八成用的是卤素灯)

该寝室8个人有6个人准备考研……结果一起火所有人的备考资料全变灰……20080108_039

这个是今天上午我从寝室拍的照片,可以看到起火的房间窗户已经用木板封住……等到下午的时候,就已经安装好了新的玻璃窗了。

Sunday, December 23, 2007

数据结构:关于哈夫曼树的建立以及哈夫曼编码

请求一件事……如果你是北邮的学生……请别抄了…………都抄一样的我的作业怎么办?

//Huffman EnCoding....DATA STRUCTURE, by ss1271@SIE,BUPT

#include<stdio.h>
#include<string.h>
#include<malloc.h>
#include<limits.h>
#include<stdlib.h>

typedef struct
 {
   unsigned int weight;
   unsigned int parent,lchild,rchild;
 }HTNode,*HuffmanTree; // 动态分配数组存储赫夫曼树
 
typedef char **HuffmanCode; // 动态分配数组存储赫夫曼编码表

 int min(HuffmanTree t,int i)
 {
   int j,flag;
   unsigned int k=UINT_MAX; // 取k为不小于可能的值
   for(j=1;j<=i;j++)
     if(t[j].weight<k&&t[j].parent==0)
       k=t[j].weight,flag=j;
   t[flag].parent=1;
   return flag;
 }


 void select(HuffmanTree t,int i,int &s1,int &s2)// s1为最小的两个值中序号小的那个
 {
   int j;
   s1=min(t,i);
   s2=min(t,i);
   if(s1>s2)
   {
     j=s1;
     s1=s2;
     s2=j;
   }
 }


void HuffmanCoding(HuffmanTree &HT,HuffmanCode &HC,int *w,int n)
 {
   int m,i,s1,s2,start;
   unsigned c,f;
   HuffmanTree p;
   char *cd;
   if(n<=1)
     return;
   m=2*n-1;
   HT=(HuffmanTree)malloc((m+1)*sizeof(HTNode));
   for(p=HT+1,i=1;i<=n;++i,++p,++w)
   {
     (*p).weight=*w;
     (*p).parent=0;
     (*p).lchild=0;
     (*p).rchild=0;
   }
   for(;i<=m;++i,++p)
     (*p).parent=0;
   for(i=n+1;i<=m;++i)
   {
     select(HT,i-1,s1,s2);
     HT[s1].parent=HT[s2].parent=i;
     HT[i].lchild=s1;
     HT[i].rchild=s2;
     HT[i].weight=HT[s1].weight+HT[s2].weight;
   }
   //从叶子到根逆向求每个字符的哈夫曼编码
   HC=(HuffmanCode)malloc((n+1)*sizeof(char*));
   cd=(char*)malloc(n*sizeof(char));
   cd[n-1]='\0';
   for(i=1;i<=n;i++)
   {
     start=n-1;
     for(c=i,f=HT[i].parent;f!=0;c=f,f=HT[f].parent)
       if(HT[f].lchild==c)
  cd[--start]='0';
       else
  cd[--start]='1';
     HC[i]=(char*)malloc((n-start)*sizeof(char));
     strcpy(HC[i],&cd[start]);
   }
   free(cd);
 }
 void main()
 {
 printf("Huffman Tree Creating & Huffman Encoding, by ss1271.\n");
 HuffmanTree HT;
 HuffmanCode HC;
    int *w,n,i;
    printf("请输入权值的个数(需要大于1):");
    scanf("%d",&n);
    w=(int*)malloc(n*sizeof(int));
    printf("请依次输入%d个权值(整型,每输入完成一个请回车确认):\n",n);
    for(i=0;i<=n-1;i++)
      scanf("%d",w+i);
    HuffmanCoding(HT,HC,w,n);
    printf("哈夫曼编码结果为:\n");
    for(i=1;i<=n;i++)
      puts(HC[i]);
 }

特别提供数据结构中关于二叉树的代码

希望为广大被数据结构打蒙的同学提供一些帮助,这是我最近做数据结构时候自己写的,具体什么功能不用我说了吧,自己看吧……

//Creation & Traversion of a Binary Tree...DATA STRUCTURE. by ss1271@SIE,BUPT
#include <stdio.h>
#include <stdlib.h>
#include<malloc.h>
#define OK 1
#define ERROR 0
#define OVERFLOW -2
typedef struct Node
{
 int data;
 struct Node *lchild, *rchild;
}BiTNode;
typedef BiTNode *BiTree;
int createBiTree(BiTree *T)
{
 char c;
 scanf("%c",&c);
 if (c==' ')
  *T=NULL;
 else
 {
  if(!(*T=(BiTNode*)malloc(sizeof(BiTNode))))
   return OVERFLOW;
  (*T)->data =c;
  createBiTree(&(*T)->lchild);
  createBiTree(&(*T)->rchild);
 }
 return OK;
}
//Traverse BinTree

void preordertraverse(BiTree T)
{
 if(T)
 {
  printf("%c",T->data);
  preordertraverse(T->lchild);
  preordertraverse(T->rchild);
 }
}
void inordertraverse(BiTree T)
{
 if(T)
 {
  inordertraverse(T->lchild );
  printf("%c",T->data );
  inordertraverse(T->rchild );
 }
}
void postordertraverse(BiTree T)
{
 if(T)
 {
  postordertraverse(T->lchild );
  postordertraverse(T->rchild );
  printf("%c",T->data );
 }
}
void destroyBiTree(BiTree T)
{
   if(T)
   {
     if(T->lchild)
       destroyBiTree(T->lchild);
     if(T->rchild)
       destroyBiTree(T->rchild);
     free(T);
     T=NULL;
   }
 }
void main()
{
 BiTree T=NULL;
 printf("Create Binary Tree(Use space to instead a null node).\n");
 createBiTree(&T);
 printf("This Binary Tree's Pre-Order Traversion is:\n");
 preordertraverse(T);
 printf("\nThis Binary Tree's In-Order Traversion is:\n");
 inordertraverse(T);
 printf("\nThis Binary Tree's Post-Order Traversion is:\n");
 postordertraverse(T);
 char m;
 printf("Destroy this Binary Tree?(Y/N):");
 if((m=getchar())=='Y')
  destroyBiTree(T);
 else
  exit(0);
}

Wednesday, December 19, 2007

豆腐当肉卖——北邮学生爆料食堂黑幕



相关报道请参见12月16日《新京报》
http://edu.sina.com.cn/video/shitangtv/index.html

Friday, December 07, 2007

久违的成就感居然从模拟电路作业上找回了…



这作业写的~行云流水~嘿嘿

Pearl Harbor



On Dec.7.1941, the United States was deliberately attacked by the Japanese Empire.

So I write this to memory the crimes made by the Japs.

F. Japs. And a stronger China will take place your places.

Long live the People's Republic of China!

Thursday, December 06, 2007

彻底被Live战略征服…



自从symbian(N70)转换到Wm.系统(多普达9000日版SoftBank x01ht)后,发现腾讯对windows mobile系统的自动连接支持不好,只能支持系统的“专用网络连接”,由于我不使用cmwap上网,导致我没法让他既自动连接彩信又挂qq。新浪现在不支持(06年还支持)来自移动设备的发布…可偏偏我发现wm系统捆绑了live套件,并且还可以用邮件代替live writer离线写作…所以,决定把spaces当作Primary Blog。

Wednesday, December 05, 2007

The Huge TFT Screen

 To welcome the so called professors, our school set a brand new huge TFT screen outside...

IMAGE_004

上午终于如愿看完了Feed Back circuit



昨天电子电路课换了一个老师,是一个山东口音的,说话的速度和之前的那个教授简直快了十倍……恨不得五分钟能说完之前一个小时的内容……考验中文听力的时刻到来了~好在虽然课上听得云里雾里,今天上午一个小时就全部搞定~留出时间准备下午的物理实验……

Tuesday, December 04, 2007

Terrible Day.......

I'm trying to use Spaces to blog something useful. But I failed. I've terrible mood today & I'll write something depressed here.
I've tried to finish my Physics Experiment Reports until I realized that I even hadn't fulfilled Mathematics yet, to make things worse, I've stucked by an unexpected problem 4 nearly 2 hrs..I don't know,why,everything, everybody, & every stuff I met was trying to stop me from...well,I even don't know what the hell exactly it is...

Friday, November 23, 2007

Show一下这两块CPU

左侧是T2300,1.66,右侧是T2600,2.16……目前手头只有这些图了……没办法,这周数据都丢了

image

Thursday, November 22, 2007

来看看我有多倒霉2

随之的第二天,尽管没课,但是却找不到一个可以看书的地方…于是在浪费了两个小时找不到自习室个后,我选择了在寝室恢复数据…渡过难熬的11个小时后,3GB数据最终只回来200MB不到,而且图片和很大一部分最重要的数据损坏了(庆幸一下老婆的照片存在手机里了~而且还是找回了游戏的存档,虽然是比当时的进度慢了一些,但是总比重新开始强…)我周末还要抽时间去验证这些数据…唉…有这么一糟事就是发生在所有科都第一也高兴不起来!

来看看我多倒霉

真是…估计我要是知道英语考了全班第一之后会造成如下后果的话也就不会那么卖命考了…:首先,电脑分区坏了…究其原因是我为了装上周日刚刚拿到的ubuntu710用acronis disk director 10从已有分区分出了ext3分区,结果发现不能格式化。我后来试图在进操作系统前用它把那个分区格式化,也失败了。结果我就想到重新做分区,当时急切想装,居然没有考虑到数据的问题,于是将近3GB的素材文档图片以及各种资料伴随着我的一个回车直接灰飞烟灭…而且,更要命的是,我还把这个重新分区的过程进行了三遍…其中做了2遍xp,三遍ubuntu(不知道为什么我给了他主分区他还是装不上,难道真的只能装在虚拟机里???),最后一遍是在50%电的情况下装完了vista Enterprise…(这也算是收获吧…至少证明了vista安装的比xp快n倍)

Wednesday, August 01, 2007

acer Aspire 5672拆机上T2600~

image

mPGA插座和T2300

image

T2300正面 

image

T2300背面

image

ATi Mobility X1400

image

散热系统

image

T2600的系统评分

image