// Fork

main()
{
int childpid;
if(childpid=fork()<0) exit(0); if(childpid>0)
{
printf("***Parent Process***\n");
printf("My pid=%d\nMy parent pid=%d\n",getpid(),getppid());
while(wait((int *)0)!=childpid);
}
else
{
printf("***Child process***\n");
printf("My pid=%d\nMy parentpid=%d\n",getpid(),getppid());
}
}


Output:

[mtechcs@cse11 007]$ ./a.out
***Child process***
My pid=6543
My parentpid=6542
***Parent process***
My pid=6542
My parentpid=6507
[mtechcs@cse11 007]$













//Pipes (pipes.c)

#define MAX 100
main()
{
int childpid,pipe1[2],pipe2[2],nread,nwrite;
char buff[MAX];
//pipe(pipe1);
//pipe(pipe2);
if((pipe(pipe1)<0||pipe(pipe2)<0)) { printf("ERROR: pipes not created"); exit(0); } if((childpid=fork())<0) { printf("error in process\n"); exit(0); } if(childpid>0)
{
printf("writing to the server\n");
close(pipe1[0]);
close(pipe2[1]);
nread=read(0,buff,MAX);
nwrite=write(pipe1[1],buff,nread);
if(nread!=nwrite)
printf("Write Error");
nread=read(pipe2[0],buff,MAX);
nwrite=write(1,buff,nread);
if(nread!=nwrite)
printf("Standard Output Error\n");
while(wait((int*)0)!=childpid);
close(pipe1[1]);
close(pipe2[0]);
exit(0);
}
else
{
close(pipe1[1]);
close(pipe2[0]);
nread=read(pipe1[0],buff,MAX);
strcat(buff,"from the server");
nread=strlen(buff);
nwrite=write(pipe2[1],buff,nread);
close(pipe1[0]);
close(pipe2[1]);
exit(0);
}
}

Output:

[mtechcs@cse11 007]$ cc pipes.c
[mtechcs@cse11 007]$ ./a.out
Writing to the server
Pipes created
Pipes created
from the server[mtechcs@cse11 007]$





























//Related FIFO (relfifo.c)

#include
#define MAX 100
#define FIFO1 "./FIFO1"
#define FIFO2 "./FIFO2"
#define PERMS 0666

main()
{
int childpid,readfd,writefd,nread,nwrite;
char buff[MAX];

if(mknod(FIFO1,S_IFIFO|PERMS,0)<0) printf("FIFO1 created\n"); if(mknod(FIFO2,S_IFIFO|PERMS,0)<0) printf("FIFO2 created\n"); else unlink(FIFO1); if((childpid=fork())<0) { printf("error in process\n"); exit(0); } if(childpid>0)
{
printf("***Parent Process***\nWriting to the server\n");
writefd=open(FIFO1,1);
readfd=open(FIFO2,0);
nread=read(0,buff,MAX);
nwrite=write(writefd,buff,nread);
if(nread!=nwrite)
printf("Write Error!\n");
nread=read(readfd,buff,MAX);
nwrite=write(1,buff,nread);
if(nread!=nwrite)
printf("Standard Output Error\n");
while(wait((int*)0)!=childpid);
close(readfd);
close(writefd);
unlink(FIFO1);
unlink(FIFO2);
exit(0);
}
else
{
readfd=open(FIFO1,0);
writefd=open(FIFO2,1);
nread=read(readfd,buff,MAX);
strcat(buff,"from the server");
nread=strlen(buff);
nwrite=write(writefd,buff,nread);
close(readfd);
close(writefd);
exit(0);
}
}

Output:

[mtechcs@cse11 007]$ cc relfifo.c
[mtechcs@cse11 007]$ ./a.out
FIFO1 created
FIFO2 created
***Parent process***
Writing to the server
M.Tech IT
M.Tech IT
from the server Write error!
[mtechcs@cse11 007]$


















// Unrelated FIFO

//Server (servfifo.c)

#include"myfifo.h"
main()
{
int childpid,readfd,writefd,nread,nwrite;
char buff[MAX];
if(mknod(FIFO1,S_IFIFO|PERMS,0)<0) printf("FIFO1 created\n"); if(mknod(FIFO2,S_IFIFO|PERMS,0)<0) printf("FIFO2 created\n"); else unlink(FIFO1); if((childpid=fork())<0) { printf("error in process\n"); exit(0); } if(childpid>0)
{
printf("***Parent Process***\nWriting to the server\n");
readfd=open(FIFO1,1);
writefd=open(FIFO2,0);
nread=read(readfd,buff,MAX);
nwrite=write(writefd,buff,nread);
if(nread!=nwrite)
printf("Write Error\n");
nread=read(readfd,buff,MAX);
nwrite=write(1,buff,nread);
if(nread!=nwrite)
printf("Standard Output Error\n");
while(wait((int*)0)!=childpid);
exit(0);
}
}







//Client (clififo.c)

#include"myfifo.h"



jcjmain()
{
int childpid,readfd,writefd,nread,nwrite;
char buff[MAX];

printf("***Child Process***\n");
writefd=open(FIFO1,1);
readfd=open(FIFO2,0);
nread=read(0,buff,MAX);
strcat(buff,"from the server");
nread=strlen(buff);
nwrite=write(writefd,buff,nread);
close(readfd);
close(writefd);
unlink(FIFO1);
unlink(FIFO2);
exit(0);
}






















//Header file (myfifo.h)

#include
#define MAX 100
#define PERMS 0666
#define FIFO1 "/user/tmp/FIFO1"
#define FIFO2 "/user/tmp/FIFO2"


Output:

[mtechcs@cse11 007]$cc –o client clififo.c
[mtechcs@cse11 007]$cc –o server servfifo.c
[mtechcs@cse11 007]$./server&
[mtechcs@cse11 007]$./client
FIFO1 created
FIFO2 created
***Parent Process***
Writing to the server
hello
***Client Process***
hello
from the server





















//Message Queues

//Header File (mymsg.h)

#include
#include
#include
#include
#define PERMS 0666
#define MHDRSIZE sizeof(mesg)-MAXDATASIZE;
#define MAXDATASIZE 1024
#define MKEY1 1234L
#define MKEY2 2345L

typedef struct msgbuff{
int mesg_len;
long int mesg_type;
char mesg_data[MAXDATASIZE];
}mesg;

//Client (climsg.c)

#include"mymsg.h"
main()
{
int readqid,writeqid;
writeqid=msgget(MKEY1,0);
readqid=msgget(MKEY2,0);
client(readqid,writeqid);
msgctl(readqid,IPC_RMID,0);
msgctl(writeqid,IPC_RMID,0);
exit(0);
}
client(readqid,writeqid)
{
int len,nread;
mesg message;
nread=read(0,message.mesg_data,MAXDATASIZE);
message.mesg_type=1;
msgsnd(writeqid,(struct type *)message.msgbuff,nread,0);
msgrcv(readqid,message.mesg_data,message.mesg_len,0,0);
write(1,message.mesg_data,MAXDATASIZE);
}

//Server (servmsg.c)

#include"mymsg.h"
mesg message;
int nread;
main()
{
int readqid,writeqid;
readqid=msgget(MKEY1,PERMS|IPC_CREAT);
writeqid=msgget(MKEY2,PERMS|IPC_CREAT);
server(readqid,writeqid);
exit(0);
}
server(readqid,writeqid)
{
msgrcv(readqid,message.mesg_data,MAXDATASIZE,message.mesg_type,0);
msgsnd(writeqid,(struct type *)msgbuff,nread,0);
}


























//Shared memory

//Header File (myshm.h)

#include
#include
#include
#define PERMS 0666
#define MHDRSIZE sizeof(mesg)-MAXDATASIZE;
#define MAXDATASIZE 100
#define SHMKEY 1234L

typedef struct msgbuff{
int mesg_len;
long int mesg_type;
char mesg_data[MAXDATASIZE];
}mesg;

//Server (servshm.c)

#include"myshm.h"
mesg *msgptr;
main()
{
int shmid;
shmid=shmget(SHMKEY,sizeof(mesg),PERMS|IPC_CREAT);
msgptr=(mesg *)shmat(shmid,0,0);
strcat(msgptr->mesg_data,"FROM SERVER");
mshptr->mesg_type=2L;
msgptr->mesg_len=strlen(msgptr->mesg_data);
}













//Client (clishm.c)

#include"myshm.h"
Mesg *msgptr;
main()
{
int shmid;
shmid=shmget(SHMKEY,sizeof(mesg),0);
msgptr=(mesg *)shmat(shmid,0,0);
nread=read(0,msgptr->mesg_data,MAXDATASIZE);
msgptr->mesg_len=nread;
msgptr->mesg_type=1L;
write(1,msgptr->mesg_data,msgptr->mesg_len);
shmdt(msgptr);
shmctl(shmid,IPC_RMID,0);
}




























//Semaphores

//Header File (mysem.h)

#include
#include
#include

#define PERMS 0666
#define MHDRSIZE sizeof(mesg)-MAXDATASIZE;
#define MAXDATASIZE 1024
#define SHMKEY 4567L
#define SEMKEY1 1234L
#define SEMKEY2 2345L

typedef struct msgbuff{
int mesg_len;
long int mesg_type;
char mesg_data[MAXDATASIZE];
}mesg;
int shmid,semid;
typedef struct sembuff{
short sem_num;
short sem_op;
short sem_flg;
}semp;
static struct sembuff myop_lock[2]= {
0,0,0;
0,1,SEM_UNDO;
};
static struct sembuff myop_unlock[1]={
0,-1,SEM_UNDO;
};
Static struct sembuff op_endcrete[2]={
1,-1,SEM_UNDO;
2,-1,SEM_UNDO;
};
static struct sembuff op_lock[2]= {
0,0,0;
0,1,SEM_UNDO;
};
static struct sembuff op_open[1]= {
1,-1,SEM_UNDO;
};
static struct sembuff op_close[3]={
2, 0, 0,
2, 1, SEM_UNDO,
1, 1, SEM_UNDO
};
Static stuct sembuff op_unlock[1]={
2,-1,SEM_UNDO;
};
//sem_create
int sem_create(int key,int initval)
{
int semid,semval;
semid=semget(key,3,PERMS|IPC_CREAT);
if(initval==0)
semop(semid,&op_lock[0],2);
if((semval=semctl(semid,1,GETVAL,0))==0)
semctl(semid,1,SETVAL,BIGCOUNT)
semctl(semid,0,SETVAL,initval);
semop(semid,&op_endcreate[0],2);
return(semid);
}

//sem_open
int sem_open(int key)
{
int semid;
semid=semget(key,3,0);
if(semid<0) printf(“UNSUCCESSFULL”); semop(id,&op_open[0],1); return(semid); } //sem_close sem_close(int semid) { int semval; semop(id,&op_close[0],3); if((semval=semctl(id,1,GETVAL,0))==BIGCOUNT) sem_rm(semid); else semop(id,&op_unlock[0],1); return(semid); } //sem_wait sem_wait(int semid,value) { op_op[0].val=value semop(semid,&op_op[0],1); } //sem_signal sem_signal(int semid) { op_op[0].val=value; semop(semid,&op_ops[0],1); } //sem_rm Sem_rm(semid) { Semctl(semid,IPC_RMID,0); } //Server #include"mysem.h" main() { mesg msgptr; shmid=shmget(SHMKEY,sizeof(mesg),PERMS|IPC_CREAT); msgptr=(mesg *)shmat(shmid,0,0); clisem=sem_create(SEMKEY2,0); servsem=sem_create(SEMKEY1,1); sem_wait(clisem); server(); shmdt(msgptr); } server() { strcat(msgptr->mesg_data,"from server");
msgptr->mesg_len=strlen();
msgptr->mesg_type=2L;
sem_signal(servsem);
}


//Client

#include"mysem.h"
main()
{
Mesg msgptr;
shmid=shmget(SHMKEY,0,0);
msgptr=(Mesg *)shmat(shmid,0,0);
sem_wait(servsem);
client();
shmdt(msgptr);
shmctl(shmid,IPC_RMID,0);
sem_rm(clisem);
sem_rm(servsem);
client()
{
read(0,msgptr->mesg_data,MAXDATASIZE);
sem_signal(clisem);
sem_wait(servsem);
write(1,msgptr->mesg_data,msgptr->mesg_len);
}























//TCP client server Application

//tcp_echo header (tcp_header.h)

#include
#include
#define SERV_PORT 9999
#define MAXSIZE 1024
#define SERV_ADDR "172.16.5.80"

//readn function
readn(fd,buff,nbytes)
{
int fd,nbytes,nleft,nread;
pbuff=buff;
nleft=nbytes
while(nleft>0)
{
nread=read(fd,pbuff,nleft);
if(nread==0)
break;
if(nread<0) nleft=nleft-nread; buff=pbuff+nread; } return(nbytes-nleft); } //writen function writen(fd,buff,nbytes) { int fd,nbytes,nleft,nwrite; pbuff=buff; nleft=nbytes; while(nleft>0)
{
nwrite=write(fd,pbuff,nleft)
if(nwrite<0) nleft=nleft-nwrite; buff=pbuff+nwrite; } return(nbytes-nleft); } //tcp echo server

#include”tcp_header.h”
main()
{
int listenfd,connfd,clilen,n;
struct sockaddr_in servaddr,cliaddr;
listenfd=socket(AF_INET,SOCK_STREAM,0);
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_addr.s_addr=htonl(INADDRANY);
servaddr.sin_port=htons(SERV_PORT);
bind(listenfd,(struct sockaddr *)&servaddr,sizeof(servaddr));
listen(listenfd,6);
for(;;)
{
clilen=sizeof(cliaddr);
connfd=accept(listenfd,(struct sockaddr *)&cliaddr,&clilen);
n=readn(connfd,buff,MAXBUFF);
writen(connfd,buff,n);
exit(0);
close(connfd);
}
}




















//tcp_echo client

#include”tcp_header.h”

main()
{
int sockfd,n;
struct sockaddr_in servaddr;
sockfd=socket(AF_INET,SOCK_STREAM,0);
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(SERV_PORT);
servaddr.sin_addr.s_addr=htonl(inet_addr(SERV_ADDR);
connect(sockfd,(struct sockaddr *)servaddr,sizeof(servaddr));
n=read(0,buff,BUFFSIZE);
writen(sockfd,buff,n);
n=readn(sockfd,buff,BUFFSIZE);
write(1,buff,n);
close(sockfd);
}
























//UDP client server Application

//udp echo server

#include
#include
#include
#define SERV_PORT 9999
#define MAXSIZE 1024
main()
{
int nbytes,sockfd;
char buff[MAXSIZE];
struct sockaddr_in servaddr,cliaddr;
sockfd=socket(AF_INET,SOCK_DGRAM,0);
nbytes=read(0,buff,MAXSIZE);
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(SERV_PORT);
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
bind(sockfd,(struct sockaddr *)servaddr,sizeof(servaddr));
for(;;)
{
clilen=sizeof(cliaddr);
recvfrom(sockfd,buff,MAXSIZE,(struct sockaddr *)cliaddr,&clilen);
strcat(buff,”FROM THE SERVER”);
n=strlen(buff);
sendto(sockfd,buff,n,0,(struct sockaddr *)cliaddr,sizeof(cliaddr));
}















//udp echo client

#include
#include
#include
#define SERV_PORT 9999
#define MAXSIZE 1024
main()
{
int nbytes,sockfd;
char buff[MAXSIZE];
struct sockaddr_in servaddr,cliaddr;
sockfd=socket(AF_INET,SOCK_DGRAM,0);
nbytes=read(0,buff,MAXSIZE);
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(SERV_PORT);
servaddr.sin_addr.s_addr=htonl(Inetaddr("172.16.5.80"));
sendto(sockfd,buff,nbytes,0,(struct sockaddr *)servaddr,sizeof(servaddr));
n=recvfrom(sockfd,buff,MAXSIZE,(struct sockaddr *)cliaddr,&sizeof(cliaddr));
write(1,buff,n);
}
1) The ringtone "Nokia tune" is actually based on a 19th century guitar work named "Gran Vals" by Spanish musician Francisco Tárrega. The Nokia Tune was originally named "Grande Valse" on Nokia phones but was changed to "Nokia Tune" around 1998 when it became so well known that people referred to it as the "Nokia Tune."

2) The world's first commercial GSM call was made in 1991 in Helsinki over a Nokia-supplied network, by Prime Minister of Finland Harri Holkeri, using a Nokia phone.

3) Nokia is currently the world's largest digital camera manufacturer, as the sales of its camera-equipped mobile phones have exceeded those of any conventional camera manufacturer.

4) The "Special" tone available to users of Nokia phones when receiving SMS (text messages) is actually Morse code for "SMS". Similarly, the "Ascending" SMS tone is Morse code for "Connecting People," Nokia's slogan. The "Standard" SMS tone is Morse code for "M" (Message).

5) The Nokia corporate font (typeface) is the AgfaMonotype Nokia Sans font, originally designed by Eric Spiekermann. Its mobile phone User's Guides Nokia mostly used the Agfa Rotis Sans font.
6) In Asia, the digit 4 never appears in any Nokia handset model number, because 4 is considered unlucky in many parts of Southeast/East Asia.

7) Nokia was listed as the 20th most admirable company worldwide in Fortune's list of 2006 (1st in network communications, 4th non-US company).

8. Unlike other modern day handsets, Nokia phones do not automatically start the call timer when the call is connected, but start it when the call is initiated. (Except for Series 60 based handsets like the Nokia 6600)

9) Nokia is sometimes called aikon (Nokia backwards) by non-Nokia mobile phone users and by mobile software developers, because "aikon" is used in various SDK software packages, including Nokia's own Symbian S60 SDK.

10) The name of the town of Nokia originated from the river which flowed through the town. The river itself, Nokianvirta, was named after the old Finnish word originally meaning sable, later pine marten. A species of this small, black-furred predatory animal was once found in the region, but it is now extinct.
Objective: To get free GPRS connection on your PC/mobile.

What u need: GPRS-enabled Mobile (with AIRTEL connection only), PC, connecting cable or USB dongle or infrared device.

Procedure:

1. Activate AIRTEL LIVE on your mobile, which is provided FREE by AIRTEL (thanks them).

2. Create 2 GPRS data acountss and select first as active profile. (Go to settings, then connection, then gprs settings).

3. Now, connect your mobile to the PC.

4. Install the driver for your mobile?s modem. (you can download it from your handset company's website).

5. Create a new dial-up connection as follows:

New connection wizard, then

Connecting Device : Your mobile?s modem

ISP Name : ___ (anything you like)

Phone Number : *99***2# or *99***1#

Username and Password : ___

6. Do followng settings: Use the proxy 100.1.200.99 and port 8080.

7. Connect to the dial-up account. The whole world is at your fingertips.

Conclusion: Nothing is impossible. Your free GPRS connection is ready now.
Would like to know your mobile is original or not?!!



Type *#06#



After you enter the code you will see a new code contain 15 digits:

43 4 5 6 6 1 0 6 7 8 9 4 3 5



IF the digit number Seven & Eight is 02 or 20 that mean it was Assembly on Emirates which is very Bad quality Sad

IF the digit number Seven & Eight is 08 or 80 that mean it¢s manufactured in Germany which is not bad

IF the digit number Seven & Eight is 01 or 10 that mean it¢s manufactured in Finland which is Good

IF the digit number Seven & Eight is 00 that mean it¢s manufactured in France which is the best Mobile Quality ...

Try it..................

And Tell me Ur Mobile is Orignal or not.........Plz Comment this post
CODE
*3370#

This Nokia code activates Enhanced Full Rate Codec (EFR) - Your Nokia cell phone uses the best sound quality but talk time is reduced my approx. 5%
CODE
#3370#

Deactivate Enhanced Full Rate Codec (EFR)

CODE
*#4720#

Activate Half Rate Codec - Your phone uses a lower quality sound but you should gain approx 30% more Talk Time
CODE
*#4720#

With this Nokia code you can deactivate the Half Rate Codec
CODE
*#0000#

Displays your phones software version, 1st Line : Software Version, 2nd Line : Software Release Date, 3rd Line : Compression Type
CODE
*#9999#

QUOTE
Phones software version if *#0000# does not work
CODE
*#06#

For checking the International Mobile Equipment Identity (IMEI Number)
CODE
#pw+1234567890+1#

Provider Lock Status. (use the "*" button to obtain the "p,w" and "+" symbols)
CODE
#pw+1234567890+2#

Network Lock Status. (use the "*" button to obtain the "p,w" and "+" symbols)
CODE
#pw+1234567890+3#

Country Lock Status. (use the "*" button to obtain the "p,w" and "+" symbols)
CODE
#pw+1234567890+4#

SIM Card Lock Status. (use the "*" button to obtain the "p,w" and "+" symbols)
CODE
*#147#

This lets you know who called you last (Only vodofone)
CODE
*#1471#

Last call (Only vodofone)
CODE
*#21#

This phone code allows you to check the number that "All Calls" are diverted to

CODE
*#2640#

Displays phone security code in use
CODE
*#30#

Lets you see the private number
CODE
*#43#

Allows you to check the "Call Waiting" status of your cell phone
CODE
*#61#

Allows you to check the number that "On No Reply" calls are diverted to
CODE
*#62#

Allows you to check the number that "Divert If Unreachable (no service)" calls are diverted to
CODE
*#67#

Allows you to check the number that "On Busy Calls" are diverted to
CODE
*#67705646#

Phone code that removes operator logo on 3310 & 3330
CODE
*#73#

Reset phone timers and game scores
CODE
*#746025625#

Displays the SIM Clock status, if your phone supports this power saving feature "SIM Clock Stop Allowed", it means you will get the best standby time possible
CODE
*#7760#

Manufactures code
CODE
*#7780#

Restore factory setting
*
CODE
#8110#

Software version for the nokia 8110
CODE
*#92702689#

Displays - 1.Serial Number, 2.Date Made, 3.Purchase Date, 4.Date of last repair (0000 for no repairs), 5.Transfer User Data. To exit this mode you need to switch your phone off then on again
CODE
*#94870345123456789#

Deactivate the PWM-Mem
CODE
**21*number#

Turn on "All Calls" diverting to the phone number entered
CODE
**61*number#

Turn on "No Reply" diverting to the phone number entered
Turn on "On Busy" diverting to the phone number entered
CODE
12345

This is the default security code
CODE
Press and hold #

Lets you switch between lines
CODE
Service Provider Lock Information


Service Provider Lock Service Provider lock is the lock to your phone which is implement by your service provider e.g. Orange onto your sim card. The phone is usually locked to a certain SP but it can be unlocked allowing you access to other service providers that provide a better deal. The same effect can also be used by using a Dual sim, you could have two sim cards in one phone allowing you to switch between sims and SP 1. First sim = Orange 2. Second sim = One2One

CODE
Short Message Serivce Centre Numbers ( FREE SMS )

SMSC (Short Message Serivce Centre Numbers) SMS Centre number allow you to send free sms, by changing your message centre number like this:
1. Go to messages
2. Message Settings
3. Set 1
4. Message Centre Number
5. Then change the number to one from SMSC Number section (from SMSC #'s given below)

CODE
What does this do?


Instead of paying for your messages, you can alter a number in your phone to send to a different centre. This cannot charge you, and consequently you have free SMS!
CODE
How does it work?


When you send a text message, it is first transmitted to your network's routing centre, called the Short Message Service Centre, or SMSC. This SMSC is generally a telephone number, normally a memorable one- i.e. Orange's is 0973 100973. Here, it is sent to the recipient's network's SMSC, where it is then forwarded to their phone. The whole process takes only seconds, but the vital part is when it reaches your SMSC, because then it is forwarded, and you are charged according to your tariff. If you, however, change your SMSC number to one below, the network who forward the message will not know who you are, and consequently cannot charge you. Clever huh?
CODE
Does it always work?


No! It can take hours to find a number that hasn't been blocked by your network- they usually carry out checks monthly and bar any numbers known to be forwarding SMS. Also, I understand that Orange and all networks in Denmark have barred all numbers aside from their own- so it won't work with Orange or Danish networks.
CODE
ISDN Number

ISDN number For checking ISDN number enter *#92772689#
Warranty Menu To view the warranty menu enter *#92702689# [*#war0anty#]
1) shows the serial nr.
2) shows when the cel phone was made mmyy
3) shows when the cel. phone was purchased mmyy
4) shows how many times the cel. phone has been repaired.
5) makes you capebel of transferring user data if you have the gear for it
6) shows how many houres the phone has been on Warranty
Menu To view Warranty menu enter *#92702689# [*#war0anty#] Phone asks 'warranty code:' Press the following warranty code: 6232 (OK) : Displays the Month and Year of Manufacture (MMYY)
7332 (OK) : Displays the date of the last repairment - if found ('DATE NOT SAVED'...) 7832 (OK) : Displays (if found) the date where the phone was purchased ('DATE NOT SAVED'...)
9268 (OK) : Displays Serial Number
37832 (OK) : Set the Purchasing Date MMYY (Warning: You can only do this once - So be careful ...)
87267 (OK) : Transfers ALL phone numbers, pictures, sounds from one phone to another eg. if broken (via IRport.)
Sim Clock Stop :-
To view if sim clock can be stoped enter *#746025625# [*#sim0clock#] (Sim-clock-stop is a kind of standby mode which will save battery time) May not work with all firmware versions.
CODE
Imei Code


To View IMEI (International Mobile Equipment Identity) enter *#06# Firmware Versions
Check To view the Firmware version enter *#170602112302#
CODE
Restore Factory Settings


To restore factory settings (Memory, language, counters not included) enter *#7780#
Manufacturer Information To view Week and Year of manufactureenter *#3283# [*# D A T E #] The last two digits are the year. If the year is 95, the first two digits are the month. For 96 the first two digits are the week of the year.
QUOTE
Firmware Version


To view the firmware version enter *#170602112302# or *#9999# On newer phones, the code has been changed to *#682371158412125#