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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? uc.cc

?? Small Device C Compiler 面向Inter8051
?? CC
?? 第 1 頁 / 共 3 頁
字號:
/* * Simulator of microcontrollers (uc.cc) * * Copyright (C) 1999,99 Drotos Daniel, Talker Bt. *  * To contact author send email to drdani@mazsola.iit.uni-miskolc.hu * *//* This file is part of microcontroller simulator: ucsim.UCSIM is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.UCSIM is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with UCSIM; see the file COPYING.  If not, write to the FreeSoftware Foundation, 59 Temple Place - Suite 330, Boston, MA02111-1307, USA. *//*@1@*/#include "ddconfig.h"#include <stdio.h>#include <stdlib.h>#include <errno.h>#include <ctype.h>#include "i_string.h"// prj#include "globals.h"#include "utils.h"// cmd.src#include "newcmdcl.h"#include "cmduccl.h"#include "bpcl.h"#include "getcl.h"#include "setcl.h"#include "infocl.h"#include "timercl.h"#include "cmdstatcl.h"// local, sim.src#include "uccl.h"#include "hwcl.h"#include "memcl.h"#include "simcl.h"#include "itsrccl.h"/* * Clock counter */cl_ticker::cl_ticker(int adir, int in_isr, char *aname){  options= TICK_RUN;  if (in_isr)    options|= TICK_INISR;  dir= adir;  ticks= 0;  set_name(aname);}cl_ticker::~cl_ticker(void) {}intcl_ticker::tick(int nr){  if (options&TICK_RUN)    ticks+= dir*nr;  return(ticks);}doublecl_ticker::get_rtime(double xtal){  double d;  d= (double)ticks/xtal;  return(d);}voidcl_ticker::dump(int nr, double xtal, class cl_console *con){  con->dd_printf("timer #%d(\"%s\") %s%s: %g sec (%lu clks)\n",		 nr, get_name("unnamed"),		 (options&TICK_RUN)?"ON":"OFF",		 (options&TICK_INISR)?",ISR":"",		 get_rtime(xtal), ticks);}/* * Abstract microcontroller ****************************************************************************** */cl_uc::cl_uc(class cl_sim *asim):  cl_base(){  int i;  sim = asim;  mems= new cl_list(MEM_TYPES, 1);  hws = new cl_hws();  //options= new cl_list(2, 2);  for (i= MEM_ROM; i < MEM_TYPES; i++)    mems->add(0);  ticks= new cl_ticker(+1, 0, "time");  isr_ticks= new cl_ticker(+1, TICK_INISR, "isr");  idle_ticks= new cl_ticker(+1, TICK_IDLE, "idle");  counters= new cl_list(2, 2);  it_levels= new cl_list(2, 2);  it_sources= new cl_irqs(2, 2);  class it_level *il= new it_level(-1, 0, 0, 0);  it_levels->push(il);  st_ops= new cl_list(2, 2);  errors= new cl_list(2, 2);  events= new cl_list(2, 2);  sp_max= 0;  sp_avg= 0;  inst_exec= DD_FALSE;}cl_uc::~cl_uc(void){  delete mems;  delete hws;  //delete options;  delete ticks;  delete isr_ticks;  delete idle_ticks;  delete counters;  events->disconn_all();  delete events;  delete fbrk;  delete ebrk;  delete it_levels;  delete it_sources;  delete st_ops;  errors->free_all();  delete errors;}intcl_uc::init(void){  int mc, i;  cl_base::init();  if (!(sim->app->args->arg_avail('X')) ||      sim->app->args->get_farg('X', 0) == 0)    xtal= 11059200;  else    xtal= sim->app->args->get_farg('X', 0);  for (mc= MEM_ROM; mc < MEM_TYPES; mc++)    {      class cl_mem *m= mk_mem((enum mem_class)mc,			      get_id_string(mem_classes, mc));      mems->put_at(mc, m);    }  ebrk= new brk_coll(2, 2, /*(class cl_rom *)*/mem(MEM_ROM));  fbrk= new brk_coll(2, 2, /*(class cl_rom *)*/mem(MEM_ROM));  fbrk->Duplicates= DD_FALSE;  brk_counter= 0;  mk_hw_elements();  reset();  class cl_cmdset *cs= sim->app->get_commander()->cmdset;  build_cmdset(cs);  for (i= 0; i < sim->app->in_files->count; i++)    {      char *fname= (char *)(sim->app->in_files->at(i));      long l;      if ((l= read_hex_file(fname)) >= 0)	{	  sim->app->get_commander()->all_printf("%ld words read from %s\n",						l, fname);	}    }  return(0);}char *cl_uc::id_string(void){  return("unknown microcontroller");}voidcl_uc::reset(void){  class it_level *il;  PC= 0;  state = stGO;  ticks->ticks= 0;  isr_ticks->ticks= 0;  idle_ticks->ticks= 0;  /*FIXME should we clear user counters?*/  il= (class it_level *)(it_levels->top());  while (il &&	 il->level >= 0)    {      il= (class it_level *)(it_levels->pop());      delete il;      il= (class it_level *)(it_levels->top());    }  sp_max= 0;  sp_avg= 0;    int i;  for (i= 0; i < hws->count; i++)    {      class cl_hw *hw= (class cl_hw *)(hws->at(i));      hw->reset();    }}/* * Making elements */class cl_mem *cl_uc::mk_mem(enum mem_class type, char *class_name){  class cl_mem *m;  if (get_mem_size(type) < 0)    return(0);  m= new cl_m(type, get_id_string(mem_classes, type),	      get_mem_size(type), get_mem_width(type), this);  m->init();  return(m);}t_addrcl_uc::get_mem_size(enum mem_class type){  switch (type)    {    case MEM_ROM: return(0x10000);    case MEM_XRAM: return(0x10000);    case MEM_IRAM: return(0x80);    case MEM_SFR: return(0x100);    case MEM_TYPES:    default: return(0);    }  return(0);}intcl_uc::get_mem_width(enum mem_class type){  return(8);}voidcl_uc::mk_hw_elements(void){}voidcl_uc::build_cmdset(class cl_cmdset *cmdset){  class cl_cmd *cmd;  class cl_super_cmd *super_cmd;  class cl_cmdset *cset;  cmdset->add(cmd= new cl_state_cmd("state", 0,"state              State of microcontroller","long help of state"));  cmd->init();#ifdef STATISTIC  cmdset->add(cmd= new cl_statistic_cmd("statistic", 0,"statistic [mem [startaddr [endaddr]]]\n""                   Statistic of memory accesses","long help of statistic"));  cmd->init();#endif  cmdset->add(cmd= new cl_file_cmd("file", 0,"file \"FILE\"        Load FILE into ROM","long help of file"));  cmd->init();  cmd->add_name("load");  cmdset->add(cmd= new cl_dl_cmd("download", 0,"download,dl          Load (intel.hex) data","long help of download"));  cmd->init();  cmd->add_name("dl");  cmdset->add(cmd= new cl_pc_cmd("pc", 0,"pc [addr]          Set/get PC","long help of pc"));  cmd->init();  cmdset->add(cmd= new cl_reset_cmd("reset", 0,"reset              Reset","long help of reset"));  cmd->init();  cmdset->add(cmd= new cl_dump_cmd("dump", 0,"dump memory_type [start [stop [bytes_per_line]]]\n""                   Dump memory of specified type\n""dump bit...        Dump bits","long help of dump"));  cmd->init();  cmdset->add(cmd= new cl_di_cmd("di", 0,"di [start [stop]]  Dump Internal RAM","long help of di"));  cmd->init();  cmdset->add(cmd= new cl_dx_cmd("dx", 0,"dx [start [stop]]  Dump External RAM","long help of dx"));  cmd->init();  cmdset->add(cmd= new cl_ds_cmd("ds", 0,"ds [start [stop]]  Dump SFR","long help of ds"));  cmd->init();  cmdset->add(cmd= new cl_dch_cmd("dch", 0,"dch [start [stop]] Dump code in hex form","long help of dch"));  cmd->init();  cmdset->add(cmd= new cl_dc_cmd("dc", 0,"dc [start [stop]]  Dump code in disass form","long help of dc"));  cmd->init();  cmdset->add(cmd= new cl_disassemble_cmd("disassemble", 0,"disassemble [start [offset [lines]]]\n""                   Disassemble code","long help of disassemble"));  cmd->init();  cmdset->add(cmd= new cl_fill_cmd("fill", 0,"fill memory_type start end data\n""                   Fill memory region with data","long help of fill"));  cmd->init();  cmdset->add(cmd= new cl_where_cmd("where", 0,"where memory_type data...\n""                   Case unsensitive search for data","long help of where"));  cmd->init();  cmdset->add(cmd= new cl_Where_cmd("Where", 0,"Where memory_type data...\n""                   Case sensitive search for data","long help of Where"));  cmd->init();  cmdset->add(cmd= new cl_break_cmd("break", 0,"break addr [hit]   Set fix breakpoint\n""break mem_type r|w addr [hit]\n""                   Set fix event breakpoint","long help of break"));  cmd->init();  cmdset->add(cmd= new cl_tbreak_cmd("tbreak", 0,"tbreak addr [hit]  Set temporary breakpoint\n""tbreak mem_type r|w addr [hit]\n""                   Set temporary event breakpoint","long help of tbreak"));  cmd->init();  cmdset->add(cmd= new cl_clear_cmd("clear", 0,"clear [addr...]    Clear fix breakpoint","long help of clear"));  cmd->init();  cmdset->add(cmd= new cl_delete_cmd("delete", 0,"delete [nr...]     Delete breakpoint(s)","long help of clear"));  cmd->init();  {    super_cmd= (class cl_super_cmd *)(cmdset->get_cmd("get"));    if (super_cmd)      cset= super_cmd->commands;    else {      cset= new cl_cmdset();      cset->init();    }    cset->add(cmd= new cl_get_sfr_cmd("sfr", 0,"get sfr address...\n""                   Get value of addressed SFRs","long help of get sfr"));    cmd->init();    /*cset->add(cmd= new cl_get_option_cmd("option", 0,"get option name\n""                   Get value of an option","long help of get option"));cmd->init();*/  }  if (!super_cmd)    {      cmdset->add(cmd= new cl_super_cmd("get", 0,"get subcommand     Get, see `get' command for more help","long help of get", cset));      cmd->init();    }  {    super_cmd= (class cl_super_cmd *)(cmdset->get_cmd("set"));    if (super_cmd)      cset= super_cmd->commands;    else {      cset= new cl_cmdset();      cset->init();    }    cset->add(cmd= new cl_set_mem_cmd("memory", 0,"set memory memory_type address data...\n""                   Place list of data into memory","long help of set memory"));    cmd->init();    cset->add(cmd= new cl_set_bit_cmd("bit", 0,"set bit addr 0|1   Set specified bit to 0 or 1","long help of set bit"));    cmd->init();    cset->add(cmd= new cl_set_hw_cmd("hardware", 0,"set hardware cathegory params...\n""                   Set parameters of specified hardware element","long help of set hardware"));    cmd->add_name("hw");    cmd->init();  }  if (!super_cmd)    {      cmdset->add(cmd= new cl_super_cmd("set", 0,"set subcommand     Set, see `set' command for more help","long help of set", cset));      cmd->init();    }  {    cset= new cl_cmdset();    cset->init();    cset->add(cmd= new cl_info_bp_cmd("breakpoints", 0, "info breakpoints   Status of user-settable breakpoints","long help of info breakpoints"));    cmd->add_name("bp");    cmd->init();    cset->add(cmd= new cl_info_reg_cmd("registers", 0, "info registers     List of integer registers and their contents","long help of info registers"));    cmd->init();    cset->add(cmd= new cl_info_hw_cmd("hardware", 0, "info hardware cathegory\n""                   Status of hardware elements of the CPU","long help of info hardware"));    cmd->add_name("hw");    cmd->init();  }  cmdset->add(cmd= new cl_super_cmd("info", 0,"info subcommand    Information, see `info' command for more help","long help of info", cset));  cmd->init();  cmdset->add(cmd= new cl_timer_cmd("timer", 0,"timer a|d|g|r|s|v id [direction|value]\n""                   Timer add|del|get|run|stop|value","timer add|create|make id [direction] -- create a new timer\n""timer del id -- delete a timer\n""timer get id -- list timers\n""timer run id -- turn a timer ON\n""timer stop id -- turn a timer OFF\n""timer value id val -- set value of a timer to `val'"));  cmd->init();}/* * Read/write simulated memory */t_memcl_uc::read_mem(enum mem_class type, t_addr addr){  class cl_mem *m;  if ((m= (class cl_mem*)mems->at(type)) == 0)    m= (class cl_mem*)(mems->at(MEM_DUMMY));  return(m->read(addr));}t_memcl_uc::get_mem(enum mem_class type, t_addr addr){  class cl_mem *m;  if ((m= (class cl_mem*)mems->at(type)) == 0)    m= (class cl_mem*)(mems->at(MEM_DUMMY));  return(m->get(addr));}voidcl_uc::write_mem(enum mem_class type, t_addr addr, t_mem val){  class cl_mem *m;  if ((m= (class cl_mem*)mems->at(type)) == 0)    m= (class cl_mem*)(mems->at(MEM_DUMMY));  m->write(addr, val);}voidcl_uc::set_mem(enum mem_class type, t_addr addr, t_mem val){  class cl_mem *m;  if ((m= (class cl_mem*)mems->at(type)) == 0)    m= (class cl_mem*)(mems->at(MEM_DUMMY));  m->set(addr, val);}class cl_mem *cl_uc::mem(enum mem_class type){  class cl_mem *m;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av第一页| 国产精品不卡视频| 在线视频欧美精品| www.亚洲人| caoporm超碰国产精品| 成人精品国产福利| 色就色 综合激情| 欧美性受xxxx黑人xyx性爽| 欧美性极品少妇| 91精品久久久久久久99蜜桃| 91麻豆精品国产91久久久资源速度 | a亚洲天堂av| 91在线观看下载| 在线视频你懂得一区| 欧美日韩国产影片| 91精品国产一区二区三区香蕉| 制服丝袜在线91| 久久先锋影音av| 一区二区三区欧美日| 五月天视频一区| 国产成人在线免费| 一本久道久久综合中文字幕 | 日本美女视频一区二区| 免费在线观看日韩欧美| 国产精品小仙女| 欧美羞羞免费网站| 精品国产欧美一区二区| 亚洲欧洲精品一区二区三区| 亚洲图片欧美一区| 国产乱一区二区| 欧美性大战久久久久久久| 26uuuu精品一区二区| 亚洲欧美日韩电影| 老司机午夜精品| 91蜜桃婷婷狠狠久久综合9色| 91精品国产综合久久蜜臀| 亚洲国产精品传媒在线观看| 亚洲国产欧美另类丝袜| 国产成人免费视频精品含羞草妖精| 91电影在线观看| 国产亚洲午夜高清国产拍精品 | 日本午夜一区二区| 成年人午夜久久久| 欧美mv日韩mv| 五月天网站亚洲| 91免费国产在线| 国产亚洲欧美日韩日本| 午夜激情一区二区| 色综合视频一区二区三区高清| 精品久久久久香蕉网| 亚洲成av人片| 日本精品免费观看高清观看| 欧美激情一二三区| 韩日av一区二区| 91精品国产高清一区二区三区| 中文字幕日韩一区二区| 国产一区二区0| 精品少妇一区二区三区日产乱码 | 国产精品入口麻豆九色| 精品一区二区三区免费观看 | av午夜精品一区二区三区| 精品免费国产一区二区三区四区| 亚洲成人你懂的| 色av成人天堂桃色av| 国产精品视频一二三| 国产九九视频一区二区三区| 欧美va亚洲va国产综合| 日本视频一区二区三区| 制服丝袜亚洲网站| 免费成人美女在线观看.| 欧美美女激情18p| 天天色图综合网| 欧美一区二区日韩一区二区| 午夜精品久久久久影视| 6080午夜不卡| 麻豆精品在线播放| 欧美成人a视频| 国产精品主播直播| 欧美高清在线一区| 99久久er热在这里只有精品15| 国产精品久久久久久亚洲毛片 | 国产一区二三区| 国产欧美一区二区精品久导航 | 欧美一级黄色大片| 蜜臀99久久精品久久久久久软件| 日韩三级av在线播放| 精品一区中文字幕| 亚洲国产精品精华液ab| 91麻豆免费视频| 爽爽淫人综合网网站| 日韩欧美电影一区| 成人免费视频caoporn| 国产精品福利在线播放| 色综合咪咪久久| 日韩av电影天堂| 欧美激情自拍偷拍| 在线一区二区观看| 久久99精品国产| 国产精品初高中害羞小美女文 | 美女尤物国产一区| 国产性做久久久久久| 99热精品一区二区| 免费观看在线综合色| 国产欧美日韩一区二区三区在线观看| 97精品国产露脸对白| 日韩激情中文字幕| 国产精品白丝在线| 日韩精品一区二区三区视频播放 | 午夜不卡av在线| 国产欧美精品区一区二区三区| 97久久超碰国产精品电影| 日本特黄久久久高潮| 国产精品电影院| 日韩免费一区二区| 91丨九色porny丨蝌蚪| 久久精品国产成人一区二区三区| 最新国产精品久久精品| 日韩欧美亚洲国产另类| 色综合久久99| 国产盗摄精品一区二区三区在线| 五月婷婷激情综合| 亚洲精品免费播放| 国产视频911| 日韩欧美色综合网站| 91看片淫黄大片一级| 国产一区二区伦理| 蜜臀久久久99精品久久久久久| 中文字幕亚洲欧美在线不卡| 日韩视频在线一区二区| 在线观看不卡一区| 99国产一区二区三精品乱码| 精品一区二区三区香蕉蜜桃| 天堂在线一区二区| 洋洋成人永久网站入口| 国产精品美女久久久久久2018| 精品av久久707| 日韩视频一区二区在线观看| 欧美日韩综合色| 在线日韩av片| 色吧成人激情小说| 一本色道久久综合亚洲91| 丁香婷婷综合五月| 高清在线不卡av| 国产米奇在线777精品观看| 美女视频黄频大全不卡视频在线播放| 亚洲综合丁香婷婷六月香| 中文字幕一区免费在线观看| 亚洲国产激情av| 国产精品视频看| 国产偷v国产偷v亚洲高清| 精品国产免费一区二区三区香蕉| 日韩一二在线观看| 欧美性三三影院| 国产a精品视频| 不卡视频在线观看| 不卡的av电影| 国产91精品一区二区| 国产剧情在线观看一区二区| 国产精品亚洲人在线观看| 国产露脸91国语对白| 床上的激情91.| 91丨国产丨九色丨pron| 在线这里只有精品| 日韩一区二区不卡| 欧美卡1卡2卡| 26uuu色噜噜精品一区| 久久久久国产精品人| 国产精品美女www爽爽爽| 一区在线播放视频| 亚洲午夜精品在线| 热久久国产精品| 国产在线精品不卡| 不卡一区中文字幕| 欧美亚洲禁片免费| 26uuu精品一区二区三区四区在线| 久久奇米777| 亚洲视频一区在线| 青青草国产成人av片免费| 久久精品国产999大香线蕉| 国产精品2024| 欧美日韩免费高清一区色橹橹| 91精品福利在线一区二区三区 | 99国产精品99久久久久久| 日本韩国精品在线| 51午夜精品国产| 国产欧美精品一区aⅴ影院 | 国产成人在线免费观看| 99re成人精品视频| 日韩三级精品电影久久久| 日本一区二区不卡视频| 婷婷激情综合网| 国产成人av福利| 欧美日韩在线电影| 中文字幕乱码一区二区免费| 亚洲成人av中文| 成年人网站91| 日韩精品一区二区三区中文不卡| 中文字幕一区av| 久久国产精品99久久人人澡| 91丨九色丨蝌蚪富婆spa|