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

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

?? get_a_re.c

?? BC3.1編譯,小交換機計費系統.使用Dos做出如此好的界面,少有.
?? C
?? 第 1 頁 / 共 2 頁
字號:
 * called by : take_all_record()
 * output    : 1 -- successful in connection
 *             0 -- unsuccessful
 * date      : 1993.9.25
 */
UC ConnTermAndCPU(UC port)
{
    int  i;
    char hand_shake[9] = "\xb0YWHQCSN\xfc";
    UC   msg[20];
    UC   suc, flag = 0;
    UL   GoalTick;

    sprintf(msg, "正在聯機(%d)...", port+1);
    hz16_disp(H_BX+H_XAD, H_BY+H_YAD/2, msg, BLACK); /* connecting */

    if(port == 0 || port == 1)
        outportb(SIO_IER[port],0x1);        /* Enable Receive Int */

    CheckPort(port);
    SIORecHead[port] = SIORecTail[port] = CmdCount[port] = 0;
    for(i=0; i<9; i++)
        ToCPU(port, 0xb0);

    GoalTick = *Tick_cnt_ptr + TimeOut;
    for(;;)
    {
        if(kbhit() && (get_key0()==ESC))
        {
           flag = 0;
           break;
        }

        CheckPort(port);
	if(!CmdCount[port])             /* receiving buffer is still empty     */
        {
	    if(*Tick_cnt_ptr > GoalTick)      /* time out and no valid data received */
            {
                message(CONN_ERR);          /* error in connection       */
                flag = 0;
		break;
            }
            else
                continue;
        }

        suc = GetCmdFromBuf(port);    /* data have been received */
        if(suc != 1)              /* not the valid data      */
        {
            message(CONN_ERR);
            flag = 0;
            break;
        }

	for(i = 0; i < 9; i++)          /* compare with the hand_shake infor*/
            if(CmdBuf[port][i] != hand_shake[i])       /* not the same         */
                break;
        if(i<9)
        {
            message(CONN_ERR);
	    flag = 0;
            break;
        }

        ToCPU(port,0xb6);              /* successful in connection */
        clr_scr(H_BX+H_XAD,H_BY+H_YAD/2,H_BX+2*H_XAD,H_BY+H_YAD,BLACK,LIGHTGRAY);
        flag = 1;
        break;
    }    /* end of "for(;;)" */

    return(flag);
}

/* function  : receive data and command from SIORecBuf
 * called by : ConnTermAndCPU(),take_record(),take_immediate_record()
 * output    : 0 -- not the valid data received
 *             1 -- successful
 * date      : 1993.9.25
 */
UC GetCmdFromBuf(UC port)
{
    int i, j, k;

    CheckPort(port);

    if(SIORecHead[port] == SIORecTail[port])
    {
        for(i = 0; i < CMD_BUF_SIZE; i++)
            CmdBuf[port][i] = 0;
        CmdCount[port]--;
        return(0);
    }

    i = 0;
    while(SIORecHead[port] != SIORecTail[port])
    {
        CmdBuf[port][i] = SIORecBuf[port][SIORecHead[port]++];     /* move data to CmdBuf */
        if( SIORecHead[port] >= SIO_BUF_SIZE)
            SIORecHead[port] -= SIO_BUF_SIZE;
        i++;
    }

    k = 0;
    for( ; ; )
    {
        if((CmdBuf[port][0] != 0xf0) && (CmdBuf[port][0] != 0xb0) &&
           (CmdBuf[port][0] != 0xb4) && (CmdBuf[port][0] != 0xb7) &&
//	   (CmdBuf[port][0] != 0xb5) && (CmdBuf[port][0] != 0xb2) &&
	   (CmdBuf[port][0] != 0xb8))          /* not the valid command head */
        {
            for(j=0;j<i;j++)           /* move forward */
                CmdBuf[port][j]=CmdBuf[port][j+1];
            k++;
            if(k==i)
		return(0);             /* error in received data */
        }
        else
            break;
    }

    for(; i < CMD_BUF_SIZE; i++)
        CmdBuf[port][i]=0;
    CmdCount[port]--;

    return(1);
}

/* function  : take records from Exchanger
 * called by : take_all_record()
 * output    : 0 -- unsuccessful in taking data
 *             1 -- successful
 * date      : 1993.9.25
 */
UC take_record(void)
{
    int   i, k;
    UC    SendB2=0;
    UL    LastTick;
    long  len;
    FILE  *fp, *fperror;
    UI	  rec_len=23;
    UC    port, B4Rtn, UsedPorts;

    B4Rtn = 0;
    UsedPorts = 0;
    for(port=0; port<PORT_NUM; port++)
    	if(Sys_mode.com_m[port])
        	UsedPorts++;

    TRCount = 0;

    hz16_disp(H_BX+H_XAD,H_BY+H_YAD/2,"正在接收...",BLACK);  /* receiving */

    fp = fopen("pabx.chg","wb");       /* original record file */

    LastTick = *Tick_cnt_ptr;

    for(; ;)
    {
        if(kbhit() && (get_key0()==ESC))
        {
            fclose(fp);
            outportb(SIO_IER[0],0);
            outportb(SIO_IER[1],0);
            return(0);
        }

        for(port=0; port<PORT_NUM; port++) {
            if(Sys_mode.com_m[port]) {
                CheckPort(port);
                if(CmdCount[port])
		{
		    LastTick = *Tick_cnt_ptr;
		    break;
		}
            }
        }
        if(port == PORT_NUM)
        {
	    if(*Tick_cnt_ptr > LastTick + TimeOut)
            {
                fclose(fp);
                outportb(SIO_IER[0],0);
                outportb(SIO_IER[1],0);
                message(REC_TIMEOUT);  /* TimeOut */
                return(0);
            }
            else
                continue;
        }
        else {
          GetCmdFromBuf(port);
          if((CmdBuf[port][0]==0xf0) && (CmdBuf[port][rec_len-1]==0xfd))   /* a telephone record*/
          {
	    CmdBuf[port][0] = 0;
            for(i = 1; i < rec_len-2; i++)                /* CmdBuf[25]=check sum */
                CmdBuf[port][0] += CmdBuf[port][i];
            CmdBuf[port][0] = CmdBuf[port][0] & 0x7f;

            if(CmdBuf[port][0] == CmdBuf[port][rec_len-2])     /* a valid phone record */
            {
                TRCount++;
                outf(H_BX+3*H_XAD/2,H_BY+H_YAD,7,BLACK,"<< %-5u>>",TRCount);
                CmdBuf[port][rec_len-2] = 0xfd;
                CmdBuf[port][0] = port;
                fwrite(CmdBuf[port],rec_len-1,1,fp);
                SendB2 = 0;
                ToCPU(port, 0xb5);                /* a verify information */
            }           /* end of "if(CmdBuf[0] == CmfBuf[25])"     */
            else
            {
                if(SendB2 < 5)
                {
                    SendB2++;
		    ToCPU(port, 0xb2);
                }
                else
                {
                    fperror = fopen("error.dat","ab");
                    fwrite(CmdBuf[port],sizeof(UC),rec_len,fperror);
                    fclose(fperror);

                    SendB2 = 0;
                    ERRCount++;
                    ToCPU(port, 0xb5);
                }
            }           /* end of "else if(CmdBuf[0] != CmfBuf[25])" */
          }     /* end of "if((CmdBuf[0]==0xf0) && (CmdBuf[26]==0xfd))"*/

          else if(CmdBuf[port][0] == 0xb4)          /* no more records       */
          {
            if(Menu_path == 300)             /* all record method */
            {
                ToCPU(port, 0xb1); ToCPU(port, 0xb1); ToCPU(port, 0xb1);
		ToCPU(port, 0xb1); ToCPU(port, 0xb1); ToCPU(port, 0xb1);
                ToCPU(port, 0xb1); ToCPU(port, 0xb1); ToCPU(port, 0xb1);
            }
            else                             /* go to immediate method */
            {
                ToCPU(port, 0xb7); ToCPU(port, 0xb7); ToCPU(port, 0xb7);
                ToCPU(port, 0xb7); ToCPU(port, 0xb7); ToCPU(port, 0xb7);
                ToCPU(port, 0xb7); ToCPU(port, 0xb7); ToCPU(port, 0xb7);

                /* read returned B7 */
		while(SIORecHead[port] == SIORecTail[port] )
		{
			CheckPort(port);
			if(_bios_keybrd(_KEYBRD_READY) )
			if(_bios_keybrd(_KEYBRD_READ) == ESC) break;
		}

		if(SIORecHead[port] == SIORecTail[port])
		    warn_mesg("錯誤","通訊超時");
		else if(SIORecBuf[port][SIORecHead[port]] == 0xB7) { /* success */
		}
		else
		    warn_mesg("錯誤","設置錯誤");
	    }
	    if(port <2)
		    outportb(SIO_IER[port],0);             /* disable interruption  */

	    B4Rtn++;
	    if(B4Rtn < UsedPorts ) continue;

	    fclose(fp);

	    k = open("pabx.chg",O_RDONLY|O_BINARY);
	    len = filelength(k);             /* take file length */
	    close(k);
	    fp = fopen("pabx.lth","wb");
	    fwrite(&len,sizeof(long),1,fp);
	    fclose(fp);

	    clr_scr(H_BX+H_XAD,  H_BY+H_YAD/2,\
		       H_BX+3*H_XAD-20,H_BY+2*H_YAD-20,BLACK,LIGHTGRAY);
	    if(TRCount == 0)                 /* No record */
	    {
		hz16_disp(H_BX+H_XAD,H_BY+H_YAD/2,"無  信  息!",BLACK);
		delay_10ms(100);
	    }
	    else
	    {
		hz16_disp(H_BX+H_XAD,H_BY+H_YAD/2,"接 收 完 畢!",BLACK);
		message_disp(8,"正在分揀, 請稍候...");
		all_record_transfer();
		message_end();
	    }
	    return(1);
	}
	else if(CmdBuf[port][0] == 0xb7)          /* returned B7       */
	{
	}
	else
	{
	    fperror = fopen("error.dat","ab");
	    fwrite(CmdBuf[port],sizeof(UC),rec_len,fperror);
	    fclose(fperror);

	    ERRCount++;
	    ToCPU(port, 0xb5);
	}
      }  /* end of "port"*/
    }    /* end of "for(;;)" */
}

/* function  : copy *.tmp to *.dat
 * called by : take_all_record(), take_immediate_record()
 * output    : 0 -- successful, others -- unsuccessful
 * date      : 1993.9.25
 */
UC tmp_to_dat(void)
{
    int    flag;
    struct ffblk  fblk;

    message_disp(8,"正在存盤, 請稍候...");       /* saving, please wait...*/

    flag = findfirst("idd.tmp",&fblk,FA_ARCH);
    if(flag == 0)
        fcopy("idd.tmp","idd.dbf");

    flag = findfirst("ddd.tmp",&fblk,FA_ARCH);
    if(flag == 0)
        fcopy("ddd.tmp","ddd.dbf");

    flag = findfirst("ldd.tmp",&fblk,FA_ARCH);
    if(flag == 0)
        fcopy("ldd.tmp","ldd.dbf");

    message_end();

    return(flag);
}

/* function  : copy *.dat to *.tmp
 * called by : take_all_record(), take_immediate_record()
 * output    : 0 -- successful, others -- unsuccessful
 * date      : 1993.9.25
 */
UC dat_to_tmp(void)
{
    int    flag;
    struct ffblk fblk;

    message_disp(8,"正在存盤, 請稍候...");       /* saving, please wait...*/

    flag = findfirst("idd.dbf",&fblk,FA_ARCH);
    if(flag == 0)
        fcopy("idd.dbf","idd.tmp");
    else
        remove("idd.tmp");

    flag = findfirst("ddd.dbf",&fblk,FA_ARCH);
    if(flag == 0)
        fcopy("ddd.dbf","ddd.tmp");
    else
        remove("ddd.tmp");

    flag = findfirst("ldd.dbf",&fblk,FA_ARCH);
    if(flag == 0)
        fcopy("ldd.dbf","ldd.tmp");
    else
        remove("ldd.tmp");

    message_end();

    return(flag);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
51精品秘密在线观看| 精品久久久久久无| 精品福利一区二区三区免费视频| 久久九九久久九九| 亚洲永久精品大片| 国产盗摄一区二区| 日韩欧美的一区二区| 一区二区三国产精华液| 国产黄人亚洲片| 欧美精品丝袜久久久中文字幕| 久久久久久一二三区| 亚洲成人动漫av| 91一区二区三区在线观看| 久久亚洲私人国产精品va媚药| 亚洲电影在线播放| 91亚洲大成网污www| 中文字幕成人av| 国产高清久久久| 精品久久国产字幕高潮| 亚洲综合精品自拍| 色狠狠av一区二区三区| 亚洲欧洲三级电影| 成人国产精品免费| 国产欧美视频一区二区| 蜜桃传媒麻豆第一区在线观看| 欧美日韩和欧美的一区二区| 一区二区三区91| 欧美伊人久久久久久久久影院| 亚洲精品免费在线播放| aa级大片欧美| 亚洲欧美日韩国产中文在线| 99re热视频这里只精品| 自拍偷拍欧美激情| 一本色道久久综合亚洲精品按摩| 国产精品人妖ts系列视频| 丁香桃色午夜亚洲一区二区三区| 久久婷婷综合激情| 懂色av中文一区二区三区| 国产精品成人午夜| 色偷偷一区二区三区| 一区二区免费看| 欧美精品一级二级三级| 另类小说视频一区二区| 26uuu欧美| 99久久精品免费观看| 亚洲主播在线播放| 欧美精品久久一区| 久久成人免费日本黄色| 久久久久久久综合日本| 不卡的av在线播放| 亚洲成人动漫av| www久久久久| 色国产综合视频| 麻豆国产欧美一区二区三区| 国产午夜精品久久久久久免费视 | 亚洲免费高清视频在线| 在线欧美小视频| 毛片av中文字幕一区二区| 久久老女人爱爱| 色婷婷国产精品| 久热成人在线视频| 国产精品久久777777| 欧美日韩在线播放| 国产呦精品一区二区三区网站| 国产精品成人免费精品自在线观看| 欧美午夜一区二区三区| 精品一二三四区| 亚洲黄色av一区| 精品国产凹凸成av人网站| 91在线视频播放| 免播放器亚洲一区| 亚洲免费在线观看视频| 日韩免费在线观看| 色成年激情久久综合| 激情成人综合网| 亚洲女人小视频在线观看| 精品国产免费人成在线观看| 一本色道久久综合狠狠躁的推荐| 九色综合狠狠综合久久| 亚洲综合自拍偷拍| 欧美激情综合在线| 欧美一区二区网站| 色哟哟日韩精品| 国产综合色视频| 丝袜美腿亚洲综合| 亚洲精品国产精华液| 久久免费看少妇高潮| 91.xcao| 91免费观看视频| 国产美女精品人人做人人爽| 性欧美大战久久久久久久久| 国产精品乱码一区二区三区软件| 欧美本精品男人aⅴ天堂| 色婷婷久久99综合精品jk白丝| 国产精品一二三| 蜜臀av一区二区在线观看| 亚洲一区在线观看免费观看电影高清| 亚洲国产成人一区二区三区| 精品少妇一区二区三区视频免付费 | 日韩一区二区免费在线电影| 成人精品一区二区三区四区| 激情五月播播久久久精品| 日韩中文欧美在线| 夜夜操天天操亚洲| 亚洲黄色小视频| 亚洲人成网站色在线观看| 国产精品久久久久影院| 久久久影视传媒| 久久综合九色欧美综合狠狠| 精品99一区二区三区| 日韩欧美国产一二三区| 日韩一级黄色片| 精品日韩一区二区三区| 精品国产污网站| 26uuu亚洲| 国产欧美精品日韩区二区麻豆天美| 精品美女在线播放| 久久亚洲一级片| 中文幕一区二区三区久久蜜桃| 久久精品一区二区三区不卡牛牛| 久久青草欧美一区二区三区| 久久久亚洲高清| 国产蜜臀97一区二区三区| 久久蜜桃香蕉精品一区二区三区| 久久久电影一区二区三区| 国产欧美精品一区二区三区四区| 欧美国产精品v| 亚洲女爱视频在线| 五月激情综合网| 久久成人免费电影| 成人性生交大片免费看中文网站| 成人美女在线视频| 色成年激情久久综合| 欧美丰满一区二区免费视频| 欧美va亚洲va香蕉在线| 中文字幕电影一区| 亚洲h动漫在线| 久久丁香综合五月国产三级网站| 国产成人av一区| 91高清视频免费看| 精品精品国产高清a毛片牛牛| 中文字幕欧美区| 亚洲线精品一区二区三区八戒| 日本怡春院一区二区| 国产成人丝袜美腿| 色成年激情久久综合| 欧美xingq一区二区| 日韩伦理av电影| 热久久久久久久| 成人av在线一区二区三区| 欧美日韩aaaaa| 日本一区二区三区四区| 亚洲成在线观看| 成人做爰69片免费看网站| 欧美日韩视频在线第一区| 久久久久久夜精品精品免费| 亚洲不卡在线观看| gogogo免费视频观看亚洲一| 4438x亚洲最大成人网| 日本一区二区三区电影| 美腿丝袜亚洲色图| 色94色欧美sute亚洲13| 久久久久久久久久久久久女国产乱| 亚洲激情自拍视频| 国产成人一级电影| 欧美一卡2卡3卡4卡| 亚洲欧美日韩综合aⅴ视频| 韩日欧美一区二区三区| 欧美色综合网站| 国产精品久久久久四虎| 蜜臀av性久久久久蜜臀aⅴ流畅| 91原创在线视频| 国产欧美视频一区二区三区| 久久疯狂做爰流白浆xx| 欧美精品在线观看播放| 亚洲一区二区欧美| 成人午夜免费av| 久久亚洲二区三区| 久久精品久久综合| 欧美日韩精品欧美日韩精品| 中文字幕五月欧美| 国产传媒日韩欧美成人| 欧美精品一区视频| 青青草国产精品亚洲专区无| 精品视频一区三区九区| 亚洲精品国产无套在线观| 成人av免费网站| 中文字幕一区二区三| 不卡的看片网站| 日韩一区欧美一区| 99热这里都是精品| 自拍偷拍亚洲欧美日韩| av中文一区二区三区| 国产精品久久久久久久第一福利 | 欧美日韩精品欧美日韩精品| 亚洲品质自拍视频| 色综合久久综合中文综合网| 亚洲美女区一区| 色诱亚洲精品久久久久久| 亚洲美女偷拍久久|