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

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

?? init.c

?? 來源于外國的開源rtos,用于小型mcu,支持優先級搶占調度
?? C
字號:

#include <picoos.h>


/* set CPU speed (in Hz) */
#define CPU_SPEED   400000000L


/*-------------------------------------------------------------------------*/


/* prototypes of local functions */
void c_start(void);
void init_segments(void);

/* external functions */
extern void u_print(const char *str);
extern void p_asm_setupTimerIrq(unsigned int timebase_ticks);
extern int  main(void);


/*-------------------------------------------------------------------------
 *  C segment initialization for the GNU -Compiler
 */

#ifdef GCC

extern unsigned char  __BSS_START__;
extern unsigned char  __BSS_END__;

void init_segments()
{
  unsigned int i;
  char *c;

  /* setup C data segments */
  i = (unsigned int)&__BSS_END__ - (unsigned int)&__BSS_START__;
  c = (char*) &__BSS_START__;
  for ( ; i > 0; i--)
  {
    *c = 0;
    c++;
  }
}

#endif


/*-------------------------------------------------------------------------
 *  C segment initialization for MetaWare's HighC/C++ -Compiler
 */

#ifdef MW

#define MAGIC ((const char*)"INI")

struct Entry {
  void *address; /* void* so debugger wont auto-dereference */
  long count;    /* If negative, fill in zeroes for abs(count) bytes */
  char data[1];
};

/* This is the header for version 2. No compression. */
struct I {
  char magic[3];
  unsigned char version;
  struct Entry entry[1];
};

/* This is the header for version 3 and later, which permits compression. */
struct I2 {
  char magic[3];
  unsigned char version;
  void (*decompress)(const char *src, unsigned src_len, char *dest, unsigned *destlen);
  struct Entry entry[1];
};

/* To check for presence of initdat, use _einitdat, since _initdat may
   happen to be based at 0 */
extern	char  _einitdat[];
#pragma weak  _einitdat
extern struct I2  _initdat;
#pragma weak  _initdat


void clearmem(void *adr, int count)
{
  char *c = (char*) adr;
  while (count > 0)
  {
    *c = 0;
    c++;
    count--;
  }
}

void _initcopy()
{
  struct Entry *ep;

  if (_einitdat == 0)
  {
	return; /* failure: no initdat section */
  }
  if (_initdat.magic[0] != MAGIC[0] ||
      _initdat.magic[1] != MAGIC[1] ||
      _initdat.magic[2] != MAGIC[2])
  {
    return;  /* failure: bad magic number */
  }
  if (_initdat.version > 3)
  {
    return;  /* failure: bad version number */
  }

  if (_initdat.version >= 3)
  {
    ep = _initdat.entry;
  }
  else
  {
    ep = ((struct I*)((void*)&_initdat))->entry;
  }
  while (! (ep->count == 0 && ep->address == 0))
  {
    if (ep->count == 0)
    {
      ep = (struct Entry*) (((char*)ep) + sizeof(long) + sizeof(void*));
    }
    else
    if (ep->count <= 0)
    {
      /* Fill in .bss section */
      unsigned size = -ep->count;
      clearmem(ep->address,size);
      ep = (struct Entry *)(ep->data);
    }
    else
    {
      /* failure: compressed segments are not supported here */
      return; 
    }
  }
}

void init_segments()
{
  _initcopy();
}

#endif


/*-------------------------------------------------------------------------*/


/*
 *  C Entry function, called from start.s
 */
void c_start()
{
  /* initialize data segments */
  init_segments();

  /* Setup a timer interrupt.
   * The timer is not yet started, this will be done
   * in p_pos_startFirstContext() in arch_a.s.
   */
  p_asm_setupTimerIrq(CPU_SPEED / HZ);

  /* call main program (test.c) */
  main();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级日韩免费不卡| 亚洲高清免费视频| 亚洲码国产岛国毛片在线| 成人三级在线视频| 亚洲视频每日更新| 免费视频一区二区| 国产精品123| 亚洲综合在线电影| 欧美国产97人人爽人人喊| 91视频com| 成人一区二区三区视频| 天天影视网天天综合色在线播放| 国产亚洲欧美激情| 日韩欧美aaaaaa| 宅男在线国产精品| 777亚洲妇女| 日韩一区二区免费在线观看| 欧洲亚洲国产日韩| 在线视频中文字幕一区二区| 国产福利一区二区三区视频在线 | 日本精品裸体写真集在线观看 | 欧美亚洲国产一区在线观看网站| 成人一级视频在线观看| 国产一二三精品| 麻豆国产91在线播放| 美国一区二区三区在线播放| 国产91精品一区二区| 手机精品视频在线观看| 亚洲一级二级三级| 亚洲女同ⅹxx女同tv| 成人欧美一区二区三区黑人麻豆 | 一区二区三区高清不卡| 亚洲欧美日韩久久| 亚洲伦理在线精品| 性久久久久久久久久久久| 天堂av在线一区| 久久国产三级精品| 国产传媒欧美日韩成人| 91在线看国产| 在线看国产日韩| 91精品国产91久久久久久最新毛片| 欧美一二三区在线| 久久久久久久综合狠狠综合| 精品国产乱码久久久久久久久| 久久综合九色综合久久久精品综合| 欧美大片免费久久精品三p| 久久精品欧美一区二区三区不卡| 国产亚洲欧美一级| 一区二区三区欧美亚洲| 麻豆国产欧美一区二区三区| 国产一区二区女| 色综合网色综合| 亚洲精品成人少妇| 亚洲国产欧美一区二区三区丁香婷| 午夜视频一区二区| 国产成人av电影在线观看| 人人爽香蕉精品| 欧美大片一区二区| 久久美女艺术照精彩视频福利播放| 亚洲国产精品黑人久久久| 亚洲同性同志一二三专区| 五月激情丁香一区二区三区| 久久99精品视频| 一本一本大道香蕉久在线精品| 在线观看视频一区| 日韩视频在线永久播放| 中文一区二区在线观看| 日韩av一区二区三区| 成人av在线资源网站| 51久久夜色精品国产麻豆| 国产精品久久久久久亚洲伦| 日本不卡免费在线视频| 91在线云播放| 国产精品人妖ts系列视频| 免费av网站大全久久| 色老综合老女人久久久| 精品久久久久久久一区二区蜜臀| 亚洲色大成网站www久久九九| 国产成人综合亚洲网站| 日韩av中文字幕一区二区三区| 蜜桃视频一区二区| 在线观看一区二区精品视频| 国产夜色精品一区二区av| 伦理电影国产精品| 欧美午夜片在线观看| 最新国产精品久久精品| 国产精品18久久久久| 欧美电视剧免费全集观看| 日韩在线观看一区二区| 欧美中文字幕亚洲一区二区va在线 | 一区二区三区在线视频免费| 久久激五月天综合精品| 国产精品人人做人人爽人人添| 欧美日韩国产经典色站一区二区三区 | 狠狠色伊人亚洲综合成人| 欧美一级理论片| 日韩一区二区三区视频在线| 亚洲韩国精品一区| 日韩免费看的电影| 日韩精品电影在线观看| 国产成人精品影视| 亚洲欧洲成人精品av97| 色香蕉成人二区免费| 午夜亚洲国产au精品一区二区| 欧美男人的天堂一二区| 麻豆精品视频在线观看| 中文字幕精品三区| 欧美日本韩国一区| 国产成人免费视频网站| 欧美午夜精品久久久久久孕妇 | 国产一区在线观看视频| 欧美精品一区二区蜜臀亚洲| 国产.欧美.日韩| 一区二区国产盗摄色噜噜| 欧美成人r级一区二区三区| 99久久国产免费看| 麻豆精品一区二区综合av| 国产精品乱人伦中文| 欧美日韩精品三区| 国产精品三级在线观看| 韩国欧美国产一区| 久久久噜噜噜久久人人看| 国产精品综合视频| 久久精品日韩一区二区三区| 在线免费观看成人短视频| 久久99精品一区二区三区三区| 亚洲三级在线播放| 久久久久亚洲综合| 欧美日韩成人综合天天影院| 成人免费观看男女羞羞视频| 日韩高清在线一区| 亚洲人123区| 国产视频亚洲色图| 日韩一区二区免费在线电影| 97精品视频在线观看自产线路二| 韩国av一区二区三区四区| 日本一区二区免费在线观看视频 | 日本成人在线不卡视频| 国产欧美日产一区| 欧美videos中文字幕| 欧美日韩国产另类一区| 色综合天天综合| 99久久精品久久久久久清纯| 久久精品999| 久久精品国产秦先生| 日日夜夜一区二区| 午夜激情一区二区| 亚洲国产中文字幕| 亚洲国产一区在线观看| 一区二区三区在线播放| 亚洲欧美另类小说| 国产亚洲精品资源在线26u| 亚洲欧美视频在线观看视频| 国产精品欧美久久久久无广告 | 精品在线你懂的| 美女一区二区三区| 精品一区二区三区av| 免费精品视频最新在线| 美国av一区二区| 国产在线国偷精品产拍免费yy| 久久精品99国产精品日本| 国内精品免费在线观看| 国产激情视频一区二区三区欧美| 国产精品自拍在线| 国产91精品露脸国语对白| 懂色av一区二区夜夜嗨| 99久久国产综合精品麻豆| 欧洲一区二区av| 欧美精品久久久久久久多人混战 | 韩国一区二区三区| 粉嫩欧美一区二区三区高清影视| 成人激情文学综合网| 一本到高清视频免费精品| 色狠狠av一区二区三区| 欧美日韩国产在线观看| 91免费观看在线| 色悠久久久久综合欧美99| 韩国一区二区三区| 国产风韵犹存在线视精品| 成人午夜在线视频| 在线观看日韩电影| 日韩女优制服丝袜电影| 日本一区二区三级电影在线观看 | 亚洲美女偷拍久久| 午夜国产精品影院在线观看| 久久国产免费看| 91色婷婷久久久久合中文| 精品视频资源站| 国产欧美一区二区在线| 伊人色综合久久天天人手人婷| 奇米精品一区二区三区在线观看| 国产福利一区二区| 欧美主播一区二区三区美女| 精品三级在线看| 一区二区激情小说| 国产不卡视频在线观看| 欧美片在线播放| 国产精品天美传媒沈樵| 免费人成在线不卡| 一本大道久久a久久综合|