亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 5x80-utils.c

?? 與Casio BOSS進行串口通訊的程序
?? C
字號:
/* * *              This program is free software; you can redistribute it and/or *              modify it under the terms of the GNU General Public License *              as published by the Free Software Foundation; * 		Look at the file LICENSE for details **/int waitforchar (int fd,unsigned int secs,unsigned int usecs){  fd_set rfds, testfds;  struct timeval timer;  int retval;/* zero the file set */  FD_ZERO (&rfds);/* mark the fd in the set */  FD_SET (fd, &rfds);/*   FD_SET (0, &rfds); *//* wait for input for a maximum of timeout secs+usecs */  while (1)    {      testfds = rfds;      timer.tv_sec = secs;      timer.tv_usec = usecs;      retval = select (fd + 1, &testfds, NULL, NULL, &timer);      switch (retval)	{	case 0:	  {	    /* timeout */	    fprintf (dbg, "\ntimed out after %d secs and %d usecs\n", secs, usecs);	    return retval;	    break;		/* unreachable code -- here not to confuse compiler */	  }	case -1:	  {			/* should we just return 0 and life goes on? */	    perror ("select");	    return retval;	    break;		/* unreachable code -- here not to confuse compiler */	  }	default:	  {	    if (FD_ISSET (fd, &testfds))	      {		return 1;	      }/*   if (FD_ISSET(0,&testfds)) {   terminate();   } */	  }	}			/* end switch */    }}/**/disptel1 (casiorec *ourdata){/* jamal -- unacceptable: tels should be inin casio.h */char tels[8][32]={"Name","Phone #1","Phone #2","Phone #3","Company","Address","Email","Note/Position"};  int i, count = 0, oldcount = 0;  tel1 *tel = (tel1 *)ourdata->data;  if (ourdata->length > 1)    {      fprintf (data, "\n%s: ", tels[count]);/* length-1 because we dont want  the trailing FF    unfortunately it comes before /n -- so get rid of both    -2 but re-add /n */      for (i = 0; i < ourdata->length - 2; i++)	{	  if (tel->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", tel->data[i]);	    }	  if (tel->data[i] == 0xA)	    {	      count++;	      fprintf (data, "%s: ", tels[count]);	    }	}    }}dispmemo (ourdata)casiorec *ourdata;{  memot *memo;  int i, count = 0, oldcount = 0;  (casiorec *) memo = ourdata->data;  fprintf (data, "\ndate: %d/%d/%d ", memo->day, memo->month, memo->year);  if (ourdata->length > 1)    {/*    length-1 because we dont want  the trailing FF    unfortunately it comes before /n -- so get rid of both  */      fprintf (data, "\ntext: ");      for (i = 0; i < ourdata->length - 5; i++)	{	  if (memo->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", memo->data[i]);	    }	}    }}dispsched1 (ourdata)casiorec *ourdata;{  schd1 *s1;  int i, count = 0, oldcount = 0;  (casiorec *) s1 = ourdata->data;  fprintf (data, "\nstart date: %d/%d/%d ", s1->day, s1->month, s1->year);  fprintf (data, "\nEnd date: %d/%d/%d ", s1->day2, s1->month2, s1->year2);  fprintf (data, "\nschedule type: %d", s1->sctype);  if (ourdata->length > 1)    {/*    length-1 because we dont want  the trailing FF    unfortunately it comes before \n -- so get rid of both    -2 but re-add  */      fprintf (data, "\ntext: ");      for (i = 0; i < ourdata->length - 9; i++)	{	  if (s1->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", s1->data[i]);	    }	}    }}dispsched2 (ourdata)casiorec *ourdata;{  schd2 *s2;  int i, count = 0, oldcount = 0;  (casiorec *) s2 = ourdata->data;  fprintf (data, "\ndate: %d/%d/%d ", s2->day, s2->month, s2->year);  fprintf (data, "\nschedule type: %d", s2->sctype);  fprintf (data, "\nlenght: %d", ourdata->length - 6);  if (ourdata->length > 1)    {/*  */      fprintf (data, "\ntext: ");      for (i = 0; i < ourdata->length - 6; i++)	{	  if (s2->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", s2->data[i]);	    }	}    }}dispsched3 (ourdata)casiorec *ourdata;{  schd3 *s3;  int i, count = 0, oldcount = 0;  (casiorec *) s3 = ourdata->data;  fprintf (data, "\nchecksum: %d", ourdata->cksum);  fprintf (data, "\ndate: %d/%d/%d ", s3->day, s3->month, s3->year);  fprintf (data, "\ntime: %d:%d --> %d:%d", s3->shour, s3->smin, s3->ehour, s3->emin);  if (s3->ahour == 0xFF)    {      fprintf (data, "\nSet Alarm has expired");    }  else    {      fprintf (data, "\nAlarm set to: %d:%d", s3->ahour, s3->amin);    }  fprintf (data, "\nschedule type: %d", s3->sctype);  if (ourdata->length > 1)    {/*  */      fprintf (data, "\ntext: ");      for (i = 0; i < ourdata->length - 12; i++)	{	  if (s3->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", s3->data[i]);	    }	}    }}disptodo (ourdata)casiorec *ourdata;{  todot *todo;  int i, count = 0, oldcount = 0;  (casiorec *) todo = ourdata->data;  fprintf (data, "\ndate: %d/%d/%d ", todo->day, todo->month, todo->year);  fprintf (data, "\npriority: %d", todo->priority);  if (ourdata->length > 1)    {      fprintf (data, "\ntext: ");      for (i = 0; i < ourdata->length - 7; i++)	{	  if (todo->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", todo->data[i]);	    }	}    }}dispUnknown (ourdata)casiorec *ourdata;{  int i, tot, field = 1;  byte bufc[257];  fprintf (data, "\n****** Attempt to format unknown  ******\n");  fprintf (data, "\ntype: %d\n", ourdata->type);  tot = ourdata->type;  fprintf (data, "Field%d ", field);  for (i = 0; i < ourdata->length; i++)    {      if (ourdata->data[i] == 0xA)	{	  field++;	  fprintf (data, "\nField%d ", field);	}      if (ourdata->data[i] == 0xB)	{	  fprintf (data, "\n");	}      else	{	  if (isprint (ourdata->data[i]))	    {	      /* print into the debug file both the ascii and the hex version */	      fprintf (data, "%c", ourdata->data[i]);	      fprintf (dbg, ".%c/%d.", ourdata->data[i], ourdata->data[i]);	    }	  else	    {	      fprintf (data, "<%x>", ourdata->data[i]);	      fprintf (dbg, "<%x/%d>", ourdata->data[i], ourdata->data[i]);	    }	}      tot += ourdata->data[i] & 0xff;    }  fprintf (data, "\n");  fprintf (data, "checksum %2x ", ourdata->cksum);  fprintf (data, "total %2x ", tot & 0xff);  fprintf (data, "\n*********************************************\n");}dispsched (ourdata)casiorec *ourdata;{  switch (ourdata->type)    {    case 0x0c:      {	dispsched1 ();	break;      }    case 0x0d:      {	dispsched2 ();	break;      }    case 0x0e:      {	dispsched3 ();	break;      }    default:      fprintf (data, "\n ####### we dont know how to format this schedule type \n");      break;    }}dispexp (ourdata)casiorec *ourdata;{  char payt[8][32]={"Cash","Check","Credit Card","other","other1","other2","other3 ","other4"};  char expt[8][32]={"Meals","Hotel","Car","Phone","Fares","Entertainment","Tips"," Misc."};  expense *exps;  int i = 0;  (casiorec *) exps = ourdata->data;  fprintf (data, "\nchecksum: %x ", ourdata->cksum);  fprintf (data, "\ndate: %d/%d/%d ", exps->day, exps->month, exps->year);  fprintf (data, "\nExpense type: %s ", expt[exps->exptype][0]);  fprintf (data, "\nPayment type: %s ", payt[exps->paytype][0]);  fprintf (data, "\nreceipt: %s ", exps->receipt ? "no" : "yes");  fprintf (data, "\nAmount: ");  printamount ();  fprintf (data, "\nData: ");  for (i = 0; i < ourdata->length - 14; i++)    {      if (exps->data[i] == 0xB)	{	  fprintf (data, "\n");	}      else	{	  if (isprint (exps->data[i]))	    {	      fprintf (data, "%c", exps->data[i]);	    }	  else	    {	      fprintf (data, ".");	    }	}    }}printamount (ourdata)casiorec *ourdata;{  int rights, remaining, lefts, start = 0, evened = 0, i = 0;  expense *exps;  (casiorec *) exps = ourdata->data;  while (i <= 4)    {      if (exps->amount[i] != 0xFF)	{/*   fprintf(data,"%d:%x",i,exps->amount[i]); */	  break;	}      i++;    }/*   fprintf(data,"\n"); *//* found the mark */  if (i >= 4)    {      fprintf (data, "\n Corrupt amount");      return;    }  rights = (0x1f - exps->amount[4]);  remaining = (4 - i) * 2;  lefts = remaining - rights;/*   fprintf(data,"<%d.%d>",lefts,rights); */  for (; i < 4; i++)    {      if (!lefts)	{/*   printf(data,"start set"); */	  break;	}      if ((exps->amount[i] >> 4) != 0xf)	{	  fprintf (data, "%x", exps->amount[i] >> 4);	}      lefts--;      if (!lefts)	{	  start = 1;	  break;	}      if ((exps->amount[i] & 0x0f) != 0xf)	{	  fprintf (data, "%x", exps->amount[i] & 0x0f);	}      lefts--;    }  fprintf (data, ".");/*   The right handside */  if (start)    {      if ((exps->amount[i] & 0x0f) != 0xf)	{	  fprintf (data, "%x", exps->amount[i] & 0x0f);	}      start = 0;      rights--;    }/* */  for (; i < 4; i++)    {      if (!rights)	{	  break;	}      fprintf (data, "%x", exps->amount[i] >> 4);      rights--;      if (!rights)	{	  break;	}      fprintf (data, "%x", exps->amount[i] & 0x0f);      rights--;    }}disprem (ourdata)casiorec *ourdata;{  remind *reminder;  int i, count = 0, oldcount = 0;  (casiorec *) reminder = ourdata->data;  if (debugmode > 3)    fprintf (data, "\nchecksum: %x", ourdata->cksum);  fprintf (data, "\ndate: %d/%d ", reminder->day, reminder->month);  fprintf (data, "\nnextdate: %d/%d/%d ", reminder->day2, reminder->month2, reminder->year2);  if (reminder->ahour == 0xFF)    {      fprintf (data, "\nSet Alarm has expired");    }  else    {      fprintf (data, "\nAlarm set to: %d:%d", reminder->ahour, reminder->amin);    }  if (ourdata->length > 1)    {/*  */      fprintf (data, "\ntext: ");      for (i = 0; i < ourdata->length - 13; i++)	{	  if (reminder->data[i] == 0xB)	    {	      fprintf (data, "\n");	    }	  else	    {	      fprintf (data, "%c", reminder->data[i]);	    }	}    }}/** invoking this fills up therecs array with casio records* found in the passed file descriptor*/readcasdata(FILE *casiofile){casiorec *temp;/* move to utils.c */(int (*))displayers[0]=&disptel1;(int (*) )displayers[1]=&disptel1;(int (*) )displayers[2]=&disptel1;(int (*) )displayers[3]=&dispmemo;(int (*) )displayers[4]=&dispmemo;(int (*) )displayers[5]=&dispmemo;(int (*) )displayers[6]=&disptodo;(int (*) )displayers[7]=&disptodo;(int (*) )displayers[8]=&disptodo;(int (*) )displayers[9]=&dispexp;(int (*) )displayers[10]=&dispexp;(int (*) )displayers[11]=&dispexp;(int (*) )displayers[12]=&dispsched;(int (*) )displayers[13]=&dispsched;(int (*) )displayers[14]=&dispsched;(int (*) )displayers[15]=&disprem;while (1){/* make the file reader be a single routine which returnsa structure *//* read the header first */  if (fread (&MHeader, sizeof (MHeader), 1, casiofile) != 1)    {      break;    }if (MHeader.ourhead == 0x8a){ourdata.type=MHeader.type;ourdata.length=MHeader.nbytes;} else {/* we need to retry -- not sure if it is a good idea */continue;}/* read the data next */  if (fread (&ourdata.data, ourdata.length, 1, casiofile) != 1)    {      break;    }/* read the checksum next */  if (fread (&ourdata.cksum, sizeof (byte), 1, casiofile) != 1)    {      break;    }/*printf("\ntype number: %d ",ourdata.type);printf("\nlength: %d ",ourdata.length);displayers[ourdata.type](&ourdata);*//*We build a linked list here*/temp=(casiorec *)malloc(sizeof(ourdata));if (temp ==NULL){printf("\n tough luck: failed to allocate mem\n");exit(0);}bcopy(&ourdata,temp,sizeof(ourdata));temp->next=therecs[ourdata.type];therecs[ourdata.type]=temp;}}/** compute the checksum -- return the checksum value*/int cas_cksum (ourdata)casiorec *ourdata;{int cksum,i;cksum=ourdata->type&0xff;if (debugmode)printf("\n length: %d",ourdata->length);        for (i=0;i<ourdata->length;i++)        {        cksum+=ourdata->data[i]&0xff;        cksum&=0xff;if (debugmode)        printf("%x ",ourdata->data[i]);        }if (debugmode)printf("\n computed checksum: %d correct checksum: %d\n",       cksum,ourdata->cksum);return(cksum);}/* writes to file a passed casio record;returns 1 if failure else returns 0*/write2file(fd,ourdata)casiorec *ourdata;FILE  *fd;{int retval;retval=fwrite (&ourheader, sizeof (byte), 1, fd);if (retval !=1) return 1;retval=fwrite (&ourdata->type, sizeof (byte), 1, fd);if (retval !=1) return 1;retval=fwrite (&ourdata->length, sizeof (byte), 1, fd);if (retval !=1) return 1;retval=fwrite (&ourdata->data, ourdata->length, 1, fd);if (retval !=1) return 1;retval=fwrite (&ourdata->cksum, sizeof (byte), 1, fd);if (retval !=1) return 1;return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区高清| 91麻豆精品视频| jiyouzz国产精品久久| 欧美一二三区精品| 亚洲最大成人网4388xx| 韩国av一区二区三区| 欧美亚一区二区| 中文字幕在线不卡一区二区三区| 奇米四色…亚洲| 欧美午夜电影一区| 日韩理论在线观看| 高清不卡一区二区在线| 精品国产一区二区三区忘忧草| 一区二区三区四区精品在线视频| 国产精品一区二区不卡| 精品奇米国产一区二区三区| 午夜欧美在线一二页| 色婷婷精品久久二区二区蜜臀av| 国产欧美一区在线| 国产精品18久久久久| 欧美成人性战久久| 免费在线看一区| 欧美一区二区三区在线视频| 婷婷丁香久久五月婷婷| 欧美三级乱人伦电影| 亚洲一区二区三区四区五区中文| 99视频精品在线| 亚洲三级理论片| 99视频精品全部免费在线| 国产精品久久久久一区二区三区| 国产成人啪午夜精品网站男同| 久久品道一品道久久精品| 国产一区二区三区不卡在线观看| 日韩午夜激情电影| 国产资源精品在线观看| 精品成人免费观看| 国产伦精品一区二区三区免费迷 | 视频在线观看国产精品| 欧美网站大全在线观看| 午夜欧美电影在线观看| 欧美精品三级日韩久久| 男男成人高潮片免费网站| 在线观看91av| 蓝色福利精品导航| 久久久av毛片精品| 99久久精品国产麻豆演员表| 伊人性伊人情综合网| 欧美影院精品一区| 毛片av中文字幕一区二区| 精品粉嫩超白一线天av| 成人h动漫精品| 亚洲午夜激情网站| 日韩欧美国产电影| 国产不卡在线视频| 亚洲国产一二三| 精品区一区二区| 97aⅴ精品视频一二三区| 亚洲综合色丁香婷婷六月图片| 欧美午夜宅男影院| 激情久久五月天| 中文字幕日本不卡| 91精品国产综合久久久久久漫画| 国产综合色在线| 一区二区三区欧美亚洲| 日韩精品一区二区三区在线| 成人av电影在线| 亚洲成a人片综合在线| 久久亚洲捆绑美女| 欧美在线你懂得| 国产乱淫av一区二区三区| 一区二区高清视频在线观看| 日韩精品一区在线观看| 97精品电影院| 国产在线不卡一区| 亚洲不卡一区二区三区| 国产欧美一区二区精品婷婷| 欧美日韩专区在线| 不卡影院免费观看| 美女网站在线免费欧美精品| 亚洲欧美一区二区久久| 亚洲精品一线二线三线无人区| 91美女在线看| 国产一区激情在线| 亚洲一区二区在线观看视频| 国产日产欧美一区二区三区| 制服丝袜中文字幕一区| 99久精品国产| 精品中文av资源站在线观看| 亚洲精品福利视频网站| 国产女人aaa级久久久级| 欧美剧在线免费观看网站| 不卡视频一二三四| 国产乱码精品一区二区三区忘忧草 | 国产精品区一区二区三区 | 色噜噜久久综合| 国产麻豆精品在线观看| 成人免费视频视频在线观看免费| 亚洲最新视频在线播放| 1024国产精品| 国产三级一区二区三区| wwww国产精品欧美| 精品理论电影在线观看| 欧美日韩国产大片| 欧美日韩国产一级| 欧美日韩日日夜夜| 欧美综合一区二区| 欧洲精品一区二区三区在线观看| av中文字幕不卡| 成人涩涩免费视频| 成人免费va视频| 粉嫩一区二区三区性色av| 国内外成人在线| 国产综合成人久久大片91| 久久成人18免费观看| 毛片av中文字幕一区二区| 免费精品视频在线| 久久精品国产亚洲5555| 久久国产生活片100| 精品一区二区久久| 国产在线乱码一区二区三区| 国产一本一道久久香蕉| 丁香婷婷深情五月亚洲| 成人小视频在线观看| 99综合电影在线视频| 91蜜桃视频在线| 欧美日韩成人高清| 欧美成va人片在线观看| 久久久久国色av免费看影院| 精品盗摄一区二区三区| 欧美激情一区二区三区蜜桃视频| 国产精品嫩草99a| 一区二区三区四区高清精品免费观看| 亚洲一区二区视频在线观看| 七七婷婷婷婷精品国产| 国产一区二区伦理片| av午夜一区麻豆| 久久精品视频在线免费观看| 国产免费观看久久| 一区二区三区中文字幕| 日本欧美韩国一区三区| 久久99久久99精品免视看婷婷| 国产白丝精品91爽爽久久| 91猫先生在线| 日韩一区二区三区四区五区六区| www国产精品av| 樱桃国产成人精品视频| 日韩精品色哟哟| 粉嫩av一区二区三区| 欧美午夜片在线看| 精品国产乱子伦一区| 亚洲天天做日日做天天谢日日欢| 婷婷久久综合九色国产成人 | 91在线视频在线| 欧美剧在线免费观看网站| 国产香蕉久久精品综合网| 一区二区三区在线不卡| 国产一区二区在线看| 欧美伊人精品成人久久综合97 | 一区二区免费在线| 国产尤物一区二区在线| 欧美三级电影在线看| 国产日产欧美一区| 青青草精品视频| 91久久奴性调教| 国产亚洲综合色| 视频在线观看91| 99精品久久久久久| 久久久久久久久久久久电影| 亚洲一级二级在线| 成人中文字幕电影| 精品久久人人做人人爽| 亚洲1区2区3区视频| 99在线精品观看| 久久综合色鬼综合色| 午夜精品久久一牛影视| 91在线视频网址| 中文字幕av一区 二区| 六月婷婷色综合| 91精品国产综合久久精品性色| 亚洲欧美在线另类| 国产激情精品久久久第一区二区| 欧美一区二区三区公司| 亚洲成人自拍偷拍| 在线亚洲+欧美+日本专区| 国产精品毛片久久久久久久| 国产麻豆日韩欧美久久| 欧美电视剧在线观看完整版| 五月婷婷久久丁香| 欧美色大人视频| 亚洲成人一区在线| 在线视频中文字幕一区二区| 中文字幕日韩精品一区| av一区二区不卡| 国产免费久久精品| 成人激情免费网站| 欧美极品另类videosde| 成人福利视频在线看| 亚洲国产精品99久久久久久久久| 国产精品亚洲专一区二区三区| 久久久久久免费网|