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

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

?? fax.cpp

?? 支持XMODEM,YMODEM,FAX協議的串口通信軟件包
?? CPP
?? 第 1 頁 / 共 5 頁
字號:

{

return(Send_Our_ID(FAX_FCF_TSI));           // send TSI frame

}



/* ******************************************************************** *
 *
 *  Send_DIS -- Send the digital ID signal to caller
 *
 *  returns: -2 = User pressed ESC
 *           -1 - Timeout
 *            0 = successful
 *            1 = unsuccesful
 *
 * ******************************************************************** */

int Fax::Send_DIS(void)

{
int     i;                                  // work variable

for (i = 3; i--; hmsg.data[i] = dis_msg[i]);// copy the DIS to hmsg.data

return(Send_Hmsg(FINAL, FAX_FCF_DIS, 3));   // send the DIS

}



/* ******************************************************************** *
 *
 *  Send_DCS -- Send the digital control signal to called station
 *
 *  returns: -2 = User pressed ESC
 *           -1 - Timeout
 *            0 = successful
 *            1 = unsuccesful
 *
 * ******************************************************************** */

int Fax::Send_DCS(void)

{
int     i;                                  // work variable

for (i = 3; i--; hmsg.data[i] = dcs_msg[i]);// copy the DCS to hmsg.data

return(Send_Hmsg(FINAL, FAX_FCF_DCS, 3));   // send the DCS

}



/* ******************************************************************** *
 *
 *  HDLC_Mode -- Enter HDLC mode (transmit or receive)
 *
 *  returns: -2 = User pressed ESC
 *           -1 - Timeout
 *            0 = successful; CONNECT response from modem
 *            1 = ERROR response from modem
 *
 * ******************************************************************** */

int Fax::HDLC_Mode(int dir)                 // setup for HDLC tx or rx
                                            // 0 = transmit, 1 = receive
{
int rc;                                     // return code

if ((dir == TRANSMIT) && NOT connected)     // q. we transmitting?
    {                                       // a. yes ..
    cp->Write(FAX_SILENT);                  // .. request 80ms silence

    rc = wait_for(FAX_OK,                   // wait for response
                  FAX_ERR, 5) - 1;

    if (rc)                                 // q. any problems?
        return(rc);                         // a. yes .. return the error
    }

else if (connected)                         // q. connected already?
    {                                       // a. yes ..
    connected = FALSE;                      // .. reset connect status
    return(0);                              // .. and return ok
    }


cp->Write(dir ? FAX_RX_HDLC : FAX_TX_HDLC); // start requested HDLC mode

rc = wait_for(FAX_CONN, FAX_NO_CARR, 60)-1; // see if we connect

return(rc);                                 // return to caller

}



/* ******************************************************************** *
 *
 *  Data_Mode() -- Enter Fax Data mode (transmit or receive)
 *
 *  returns: -2 = User pressed ESC
 *           -1 - Timeout
 *            0 = successful; CONNECT response from modem
 *            1 = NO CARRIER response from modem
 *
 * ******************************************************************** */

int Fax::Data_Mode(int dir,                 // 0 = transmit, 1 = receive
                   int speed)               // speed for transfer

{
int rc;                                     // return code
char    msg[20];                            // work area for message

if ((dir == TRANSMIT) && NOT connected)     // q. we transmitting?
    {                                       // a. yes ..
    cp->Write(FAX_SILENT);                  // .. request 80ms silence

    rc = wait_for(FAX_OK,                   // wait for response
                  FAX_ERR, 5) - 1;

    if (rc)                                 // q. any problems?
        return(rc);                         // a. yes .. return the error
    }

sprintf(msg,                                // in message area ..
        dir ? FAX_RX_DATA : FAX_TX_DATA,    // .. select direction of xfer
        speed);                             // .. and build message


cp->Write(msg);                             // write to modem

rc = wait_for(FAX_CONN, FAX_NO_CARR, 60)-1; // see if we connect

return(rc);                                 // return to caller

}



/* ******************************************************************** *
 *
 *  Get_Line -- retrieve a CR-terminated line of information
 *
 *  returns: -2 = User pressed ESC
 *           -1 - Timeout
 *            0 = successful
 *            1 = data overrun
 *
 * ******************************************************************** */

int Fax::Get_Line(char *buf,                // buffer to contain info
                  int  secs)                // length of timeout

{
int     loop = TRUE;                        // loop condition
char    wc;                                 // work for msr, lsr
long    timer;                              // timer value

timer = SECS(secs);                         // initialize timer

while(loop)                                 // for as long as necessary ..
    {
    switch(cp->Read(buf, &wc, &wc))         // attempting to read a byte
        {
        case -1:                            // no character available
            if (TimeOut(&timer))            // q. timeout?
                return(-1);                 // a. yes.. tell the caller

            if ((stat)(0, &fs))             // q. user press escape?
                return(-2);                 // a. yes.. tell the caller

            continue;                       // else .. continue loop

        case 0:                             // character received
            if (*buf == '\r')               // q. character a CR?
               {                            // a. yes ..
               *buf = 0;                    // .. null it out
               loop = FALSE;                // .. and end the loop
               }

            else                            // else ..
               buf++;                       // .. point to next char position

            break;                          // end this case

        default:                            // lost characters
            return(1);                      // .. show receive unsuccessful
        }
    }

return(0);                                  // show we finished ok
}



/* ******************************************************************** *
 *
 *  Get_Char -- retrieve a single character
 *
 *  returns: -2 = User pressed ESC
 *           -1 - Timeout
 *            0 = successful
 *            1 = data overrun
 *
 * ******************************************************************** */

int Fax::Get_Char(char *c,                  // character to retrieve
                  int  secs)                // length of timeout

{
int     loop = TRUE;                        // loop condition
char    wc;                                 // work for msr, lsr
long    timer;                              // timer value

timer = SECS(secs);                         // initialize timer

while(loop)                                 // for as long as necessary ..
    {
    switch(cp->Read(c, &wc, &wc))           // attempting to read a byte
        {
        case -1:                            // no character available
            if (TimeOut(&timer))            // q. timeout?
                return(-1);                 // a. yes.. tell the caller

            if ((stat)(0, &fs))             // q. user press escape?
                return(-2);                 // a. yes.. tell the caller

            continue;                       // else .. continue loop

        case 0:                             // character received
            loop = FALSE;                   // .. end the loop
            break;

        default:                            // lost characters
            return(1);                      // .. show receive unsuccessful
        }
    }

return(0);                                  // show we finished ok
}



/* ******************************************************************** *
 *
 *  Display_Msg -- display a message without parameters
 *
 * ******************************************************************** */

void Fax::Display_Msg(int msgno)

{

fs.f_ptr = fax_msgs[msgno];                 // set the address
(stat)(2, &fs);                             // display the message

}



/* ******************************************************************** *
 *
 *  Reverse_Byte() -- Reverse the bits in a byte
 *
 * ******************************************************************** */

UCHAR Fax::Reverse_Byte(UCHAR value)        // byte to reverse

{

__asm  mov cx, 8                            // cx = bits to shift
__asm  mov al, value                        // al = starting value

top_loop:                                   // top of reverse loop
__asm  shl  ah, 1                           // shift ah up by one

__asm  shr  al, 1                           // shift out a bit
__asm  adc  ah, 0                           // .. add carry into ah

__asm  loop top_loop                        // .. until all bits moved

__asm  mov  value, ah                       // save reversed value

return(value);                              // .. and return it

}


/* ******************************************************************** *
 *
 *  Reverse_Bytes -- reverse the bits in the bytes of a string
 *
 * ******************************************************************** */

void Fax::Reverse_Bytes(UCHAR *str,         // string to reverse
                        int    len)         // length of string

{

while(len--)                                // while there are bytes..
     {
     *str = Reverse_Byte(*str);             // .. reverse the bits
     str++;                                 // .. next byte
     }

}



/* ********************************************************************
 *
 *  Receive -- Receive a Facsimile transmission
 *
 * ******************************************************************** */

void Fax::Receive(char *faxname)

{
int     rc = 0,                             // return code

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产原创一区二区三区| 国产黄色成人av| 韩国一区二区视频| 国产激情精品久久久第一区二区 | 日韩欧美一二三| 国产亚洲精品aa午夜观看| 亚洲午夜三级在线| 色偷偷成人一区二区三区91| 欧美一区二区福利视频| 久久久久久久综合色一本| 国产日韩欧美电影| 亚洲欧美色综合| 亚洲成人中文在线| 成人激情校园春色| 欧美精品视频www在线观看| 欧美乱妇20p| 欧美大胆一级视频| 日韩欧美你懂的| 性做久久久久久| 国产精品理论在线观看| 欧美日韩国产另类不卡| 欧美色图片你懂的| 亚洲国产电影在线观看| 色吧成人激情小说| 欧美一区二区三区白人| 日韩高清中文字幕一区| 日韩三级电影网址| 国产999精品久久久久久| 国产欧美一区二区三区网站| 欧美影视一区在线| 欧美a级理论片| 国产午夜亚洲精品不卡| 天堂久久久久va久久久久| www.亚洲精品| 国产精品狼人久久影院观看方式| 亚洲大尺度视频在线观看| 欧美亚洲一区二区在线| 亚洲一区免费视频| 不卡一区二区三区四区| 久久久国产精品午夜一区ai换脸| 三级在线观看一区二区| 国产成人丝袜美腿| 一区二区在线观看免费视频播放| 亚洲日本丝袜连裤袜办公室| 国产精品人成在线观看免费| 免费在线一区观看| 精品久久人人做人人爰| 国产不卡一区视频| 亚洲成人激情社区| 综合久久综合久久| 国产精品亲子伦对白| 欧美一区二区三区小说| 色婷婷精品大在线视频| 波多野结衣中文字幕一区二区三区| 韩国精品一区二区| 免费在线观看一区二区三区| 久久色视频免费观看| 国产最新精品精品你懂的| 欧美成人精品1314www| 大桥未久av一区二区三区中文| 亚洲青青青在线视频| 欧美另类一区二区三区| 一本久久精品一区二区| 狠狠色狠狠色合久久伊人| 91精品国产欧美一区二区成人 | 亚洲一区二区三区在线| 欧美精品一区二区久久久| 欧美视频中文字幕| av激情综合网| 成人免费视频一区| 国产v综合v亚洲欧| 国产成人aaaa| 成熟亚洲日本毛茸茸凸凹| 国产精品亚洲а∨天堂免在线| 日本午夜一本久久久综合| 偷窥少妇高潮呻吟av久久免费| 亚洲最色的网站| 亚洲激情自拍视频| 亚洲精品视频一区二区| 亚洲人123区| 亚洲综合在线免费观看| 亚洲精品成a人| 亚洲男人的天堂网| 亚洲精品国产精品乱码不99| 亚洲女同ⅹxx女同tv| 亚洲精品视频一区二区| 亚洲国产精品精华液网站| 亚洲综合男人的天堂| 亚洲综合久久久| 丝袜诱惑制服诱惑色一区在线观看| 亚洲成人一区在线| 青草国产精品久久久久久| 久久99久久99| 欧美日韩精品一区二区三区蜜桃 | 欧美日韩不卡一区| 欧美精品vⅰdeose4hd| 欧美一区二区三区的| 久久免费偷拍视频| 国产精品久久久久久久久免费丝袜| 国产精品久久久爽爽爽麻豆色哟哟| 成人免费在线播放视频| 亚洲自拍偷拍麻豆| 喷白浆一区二区| 国产精品18久久久久| 成人动漫一区二区| 欧洲视频一区二区| 欧美一二三四在线| 欧美激情综合五月色丁香| 亚洲欧洲综合另类| 日韩av高清在线观看| 国产一区二区三区不卡在线观看| 成人av综合在线| 欧美美女bb生活片| 久久久久久久久久久电影| 亚洲三级久久久| 免费不卡在线观看| 成人免费视频播放| 在线不卡免费av| 欧美国产综合色视频| 亚洲高清一区二区三区| 经典三级视频一区| 色欧美日韩亚洲| 欧美大胆人体bbbb| 一区二区三区在线免费视频| 久久爱www久久做| 色综合天天综合色综合av| 日韩欧美一区二区在线视频| 国产精品麻豆视频| 日本不卡一二三| 色老综合老女人久久久| 久久综合色天天久久综合图片| 亚洲最新在线观看| 成人免费毛片a| 日韩精品一区二区三区中文不卡| 亚洲人成在线播放网站岛国| 极品少妇xxxx精品少妇偷拍| 在线看一区二区| 中文字幕欧美日本乱码一线二线| 亚洲色图欧美偷拍| 久久99久久99| 7777女厕盗摄久久久| 亚洲欧洲精品成人久久奇米网| 久久国产精品色| 欧美日韩一级视频| 亚洲欧美国产高清| 激情深爱一区二区| 51精品秘密在线观看| 国产精品高潮呻吟| 韩国在线一区二区| 日韩三级av在线播放| 婷婷亚洲久悠悠色悠在线播放| 91最新地址在线播放| 国产亚洲美州欧州综合国| 男人的天堂亚洲一区| 欧美日韩久久一区二区| 一区二区三区在线观看视频| 精品日韩在线一区| 日韩精品亚洲一区二区三区免费| 色综合一区二区三区| 国产精品另类一区| 国产不卡视频在线播放| 久久精品综合网| 国产一区二区0| 久久美女高清视频| 国内欧美视频一区二区| 日韩欧美在线影院| 蜜臀国产一区二区三区在线播放| 欧美剧在线免费观看网站| 亚洲一线二线三线视频| 在线亚洲免费视频| 一区二区三区加勒比av| 一本色道久久综合亚洲91| 亚洲乱码一区二区三区在线观看| jlzzjlzz亚洲女人18| 国产精品久久毛片av大全日韩| 国产91色综合久久免费分享| 亚洲国产精品国自产拍av| 成人美女视频在线看| 中文字幕在线不卡一区| 成人开心网精品视频| 成人欧美一区二区三区| 日本乱码高清不卡字幕| 亚洲国产毛片aaaaa无费看| 欧美三级电影在线看| 午夜精品久久久久久久| 日韩欧美色电影| 国产精品一区免费视频| 国产欧美一区二区精品性色超碰| 成人午夜精品一区二区三区| 国产精品久久毛片| 欧美性淫爽ww久久久久无| 日日噜噜夜夜狠狠视频欧美人| 欧美一区日韩一区| 国产一区二区主播在线| 国产精品五月天| 欧美在线啊v一区| 久久精品国产久精国产爱| 久久精品视频在线免费观看| 99久久99久久精品国产片果冻 | 欧美日韩在线播放|