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

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

?? test.c

?? 用TC2實現的DOS多任務功能
?? C
字號:

/*
   Test program for checking basic CTask functions.

   Keyboard input:

      e  Terminates program
      d  Snapshot dump to STDOUT
      h  Stop screen output
      c  Resume screen output
      b  Beep (Turbo C only)
      m  Snapshot dump to mono screen
      s  Snapshot dump to colour screen

*/

#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
#include <time.h>

#include "tsk.h"
#include "tsksup.h"
#include "tskprf.h"

#define STACKSIZE 2048

unsigned int _stklen = 6 * STACKSIZE;  /* For Turbo C: Five tasks + main Task Stack */

typedef struct {
               farptr xx;
               char str [20];
               } message;

tcb tcb1, tcb2, tcb3, tcb4, tcb5;
mailbox box;
message msg;
flag halt;
pipe pip;
buffer buf;

byte pipbuf [10];
word bufbuf [40];

int endrun;


/*
   Task1 sends a mail to Task3, and waits for a response in the buffer.
   The response is then displayed.
   Task1 will stop while the halt flag is set.
*/

void far task1 (void)
{
   char str [20];

   tprintf ("Task 1 started\n");
   while (!endrun)
      {
      wait_flag_clear (&halt, 0L);

      t_delay (5L);
      tputch ('1');
      strcpy (msg.str, "From T1");
      send_mail (&box, &msg);

      read_buffer (&buf, str, 20, 0L);
      tprintf ("Task 1 read buf: <%s>\n", str);
      }
}

/*
   Task2 reads the keyboard. If a character has been read, it is passed
   to Task4 via a pipe. Entering 'h' will set the halt flag (stopping Task1),
   entering 'c' will clear the halt flag.
   'e' stops the program.
*/

void far task2 (void)
{
   int ch;

   tprintf ("Task 2 started\n");
   while (!endrun)
      {
      ch = t_wait_key (36L);
      if (ch < 0)
         tputch (0x04);
      else
         {
         switch (tolower (ch & 0xff))
            {
            case 'h':   set_flag (&halt);
                        break;
            case 'c':   clear_flag (&halt);
                        break;
            case 'e':   wake_task (NULL);
                        break;
   #if (TSK_NAMED)
            case 'd':   csnapshot ();
                        break;
            case 'm':   tsk_set_mono (25, 80);
                        screensnap (25);
                        break;
            case 's':   tsk_set_colour (25, 80);
                        screensnap (25);
                        break;
   #endif
   #if (TSK_TURBO)
            case 'b':   sound (2000);
                        t_delay (2);
                        nosound ();
                        break;
   #endif
            }

         if (!endrun)
            write_pipe (&pip, (char)ch, 0L);
         tputch ('2');
         }
      }
}


/*
   Task3 waits for mail, then sends it back through a buffer.
*/

void far task3 (void)
{
   message far *m;

   tprintf ("Task 3 started\n");
   while (!endrun)
      {
      m = wait_mail (&box, 0L);
      tprintf ("Task 3 received <%Fs>\n", m->str);

      m->str [6] = '3';
      write_buffer (&buf, m->str, 7, 0L);
      }
}


/*
   Task4 waits for a character in the pipe and displays it. To make
   things livelier, it uses a timeout while waiting, and will display
   faces when the timeout occurred before the character.
*/

void far task4 (void)
{
   int ch;

   tprintf ("Task 4 started\n");
   while (!endrun)
      {
      ch = read_pipe (&pip, 10L);
      if (ch < 0)
         tputch (0x02);
      else
         tprintf ("Task 4 got <%c>\n", ch);
      }
}

/*
   Task 5 checks the memory watch capability by waiting for the
   BIOS keyboard status byte at 40:17 to contain 1 in the lower two
   bits, signalling that both the left and right shift keys are pressed.
*/

void far task5 (void)
{
   tprintf ("Task 5 started\n");
   while (!endrun)
      {
         wait_memory ((farptr)0x417L, 0x03, 0x03, TCMP_EQ);
         tprintf ("Task 5: Both Shift keys pressed\n");
         wait_memory ((farptr)0x417L, 0x03, 0x03, TCMP_NE);
         tprintf ("Task 5: Shift keys released\n");
      }
}


int main (void)
{
   char stack1 [STACKSIZE];
   char stack2 [STACKSIZE];
   char stack3 [STACKSIZE];
   char stack4 [STACKSIZE];
   char stack5 [STACKSIZE];
   int i;

#if(TSK_TURBO)
   directvideo = 0;
#endif
   endrun = 0;
   if ((i = install_tasker (0, 0, IFL_DISK | IFL_INT8_DIR | IFL_PRINTER, "Test")) < 0)
      {
      printf ("Can't install, returncode = %d\n", i);
      return 1;
      }

   init_conout ();

   create_mailbox (&box TN("Mailbox"));
   create_flag (&halt TN("Halt"));
   create_pipe (&pip, pipbuf, sizeof (pipbuf) TN("Pipe"));
   create_buffer (&buf, bufbuf, sizeof (bufbuf) TN("Buffer"));

   create_task (&tcb1, task1, stack1, STACKSIZE, PRI_STD, NULL TN("TASK1"));
   create_task (&tcb2, task2, stack2, STACKSIZE, PRI_STD, NULL TN("TASK2"));
   create_task (&tcb3, task3, stack3, STACKSIZE, PRI_STD, NULL TN("TASK3"));
   create_task (&tcb4, task4, stack4, STACKSIZE, PRI_STD, NULL TN("TASK4"));
   create_task (&tcb5, task5, stack5, STACKSIZE, PRI_STD, NULL TN("TASK5"));
   start_task (&tcb1);
   start_task (&tcb2);
   start_task (&tcb3);
   start_task (&tcb4);
   start_task (&tcb5);
   preempt_on ();

   t_delay (0L);

   endrun = 1;
   tputs ("******** Main Task *********");

   kill_task (&tcb1);
   kill_task (&tcb2);
   kill_task (&tcb3);
   kill_task (&tcb4);
   kill_task (&tcb5);

   delete_mailbox (&box);
   delete_pipe (&pip);
   delete_buffer (&buf);
   delete_flag (&halt);

   schedule ();

   end_conout ();

   remove_tasker ();
   puts ("******** End Run *********");
   return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色偷偷大香| 成人av综合一区| 亚洲国产sm捆绑调教视频| 亚洲色图欧美激情| 中文字幕佐山爱一区二区免费| 中文字幕在线不卡一区二区三区| 欧美国产精品一区二区三区| 亚洲欧洲日韩女同| 亚洲精品免费播放| 一区二区三区国产精华| 亚洲成人动漫在线免费观看| 蜜桃视频一区二区三区在线观看| 极品瑜伽女神91| 国产成人av电影在线| 91网站视频在线观看| 欧美天堂一区二区三区| 日韩欧美一区中文| 中文文精品字幕一区二区| 亚洲欧美日韩精品久久久久| 视频一区中文字幕国产| 国产麻豆日韩欧美久久| 91亚洲男人天堂| 欧美精品日韩综合在线| 久久蜜桃一区二区| 亚洲综合视频网| 久久丁香综合五月国产三级网站| 亚洲欧美日韩国产手机在线| 国产精品美女久久久久久2018| 国产午夜精品美女毛片视频| 亚洲视频一区在线观看| 亚洲bt欧美bt精品| 麻豆国产精品777777在线| 粉嫩一区二区三区性色av| 91福利在线播放| 亚洲精品一区二区三区精华液| 1024成人网| 开心九九激情九九欧美日韩精美视频电影 | 波多野结衣的一区二区三区| 在线看日本不卡| 国产女人18毛片水真多成人如厕 | 中文字幕一区二区不卡| 日韩精品亚洲专区| 日本乱人伦aⅴ精品| 日韩久久久久久| 一区二区三区欧美久久| 成人国产亚洲欧美成人综合网 | 男男视频亚洲欧美| 国产.欧美.日韩| 91精品国产一区二区| 亚洲男人的天堂av| 国产精品自在欧美一区| 777色狠狠一区二区三区| 国产精品国产成人国产三级| 麻豆精品一二三| 欧美浪妇xxxx高跟鞋交| 亚洲另类在线视频| 99精品一区二区三区| 国产婷婷精品av在线| 国内成+人亚洲+欧美+综合在线| 欧美日韩另类国产亚洲欧美一级| 亚洲欧美成aⅴ人在线观看| 国产成人精品免费网站| 精品国产乱码久久久久久夜甘婷婷| 亚洲综合另类小说| 色视频成人在线观看免| 亚洲蜜臀av乱码久久精品蜜桃| 不卡大黄网站免费看| 亚洲国产激情av| 国产一区二区三区在线观看免费视频| 欧美一区二区日韩| 久久国产精品免费| 欧美电视剧免费全集观看| 看电视剧不卡顿的网站| 欧美成人福利视频| 韩国av一区二区| 久久久久亚洲蜜桃| 豆国产96在线|亚洲| 久久久欧美精品sm网站| 豆国产96在线|亚洲| 亚洲欧美在线视频| 91美女在线看| 亚洲午夜激情网站| 欧美一级黄色大片| 国产一区二区导航在线播放| 精品国产123| 北条麻妃一区二区三区| 又紧又大又爽精品一区二区| 欧美日韩在线三级| 奇米一区二区三区| 欧美精品一区二区三区高清aⅴ | 国内精品视频一区二区三区八戒| 日韩三级伦理片妻子的秘密按摩| 麻豆成人免费电影| 中文字幕av一区二区三区高| 99国产精品久久久久久久久久久| 亚洲精品成人精品456| 欧美日韩国产乱码电影| 精品伊人久久久久7777人| 国产视频一区二区三区在线观看| 成人精品小蝌蚪| 天天色综合成人网| 国产人妖乱国产精品人妖| 97精品视频在线观看自产线路二| 亚洲影视在线观看| 精品免费视频.| 色狠狠一区二区三区香蕉| 日本欧美一区二区三区| 欧美国产精品中文字幕| 欧美精品1区2区3区| 国产激情视频一区二区在线观看| 亚洲伦在线观看| 欧美成人伊人久久综合网| 91原创在线视频| 精品一二三四在线| 亚洲成人精品影院| 国产女人18水真多18精品一级做| 欧美福利电影网| gogogo免费视频观看亚洲一| 美女尤物国产一区| 亚洲在线免费播放| 国产精品色噜噜| 精品国产三级电影在线观看| 欧美日本一道本在线视频| 成人激情小说乱人伦| 久久精品久久久精品美女| 一区二区三区中文字幕精品精品| 久久久久久久久蜜桃| 91精品国产一区二区| 欧美在线制服丝袜| 99久久久无码国产精品| 国产精品自在在线| 青青青伊人色综合久久| 亚洲第一在线综合网站| 亚洲视频1区2区| 中文字幕一区二区三区不卡在线| 91精品国产91热久久久做人人| 在线视频你懂得一区二区三区| 国产aⅴ综合色| 国产精品小仙女| 国产精品资源在线看| 九色porny丨国产精品| 日本不卡视频一二三区| 五月婷婷另类国产| 亚洲国产视频一区| 亚洲成人三级小说| 五月天欧美精品| 日韩激情在线观看| 男人的天堂亚洲一区| 日本成人超碰在线观看| 奇米色一区二区三区四区| 日韩vs国产vs欧美| 麻豆一区二区99久久久久| 日韩精彩视频在线观看| 日本美女视频一区二区| 久久国产剧场电影| 国产酒店精品激情| 成人精品鲁一区一区二区| 成人一级片在线观看| 成人激情免费电影网址| www.亚洲人| 日本国产一区二区| 欧美日韩电影一区| 欧美成人乱码一区二区三区| 久久久午夜电影| 亚洲视频小说图片| 亚洲高清不卡在线观看| 蜜臀av在线播放一区二区三区| 精品一区二区三区久久| 粉嫩绯色av一区二区在线观看| 不卡av在线免费观看| 欧美色视频在线| 精品成人一区二区| 中文字幕日韩精品一区| 亚洲图片自拍偷拍| 精品制服美女丁香| 色综合天天综合色综合av | 26uuu国产在线精品一区二区| 国产日韩一级二级三级| 亚洲日本韩国一区| 秋霞电影网一区二区| 成人黄动漫网站免费app| 欧美三区在线观看| 国产视频一区二区三区在线观看| 亚洲欧美韩国综合色| 奇米在线7777在线精品| 9i在线看片成人免费| 91麻豆精品国产91久久久资源速度| 久久久不卡影院| 亚洲一区二区成人在线观看| 国产美女一区二区| 欧美猛男男办公室激情| 国产精品免费av| 美国精品在线观看| 欧美亚洲尤物久久| 欧美国产国产综合| 九九精品一区二区| 欧美另类变人与禽xxxxx| 国产精品国产三级国产普通话蜜臀 | 在线不卡中文字幕| 国产精品成人免费|