⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 imoninit.htm

📁 mips架构的bootloader,99左右的版本 但源代码现在没人更新了
💻 HTM
字号:
			<title>SerialICE Monitor Initialization</title>			<h1 align=center>SerialICE Monitor Initialization</h1><!--INDEX "SerialICE Monitor Initialization" -->Here is a brief description of what happens when the SerialICE Monitorboots (jal is a subroutine call).<p></dl><h2>_start: (<a href="../imon/mips.s">imon/mips.s</a>)</h2><dl><dd><!--INDEX hostInit -->  <dl><dt><b>  jal <a href="../lib/cpuinit.s">cpuInit</a></b><dd>	This calls getmachtype and then sets up the DRAM and returns	a pointer to the correct cache flush routine.<dt><b>  jal r4001_flush</b><dd>	Calls the correct flush routine to flush the Dcache. In this	case it is for the 4001.<dt><b>  jal <a href="../lib/cpdata.s">cpdata</a></b><dd>	Copies the .data section from the PROM to the DRAM.<dt><b>  jal <a href="../lib/clrbss.s">clrbss</a></b><dd>	Clears the .bss section in DRAM.<dt><b>  jal copyHandler</b><dd>	Copies the exception handler to the exception vector in DRAM.<dt><b>  jal copyHandler</b><dd>	Copies the exception handler to the exception vector in DRAM.<dt><b>  jal r4001_flush</b><dd>	Calls the correct flush routine to flush the Dcache. In this	case it is for the 4001.<dt><b>  jal r4001_flush</b><dd>	Calls the correct flush routine to flush the Icache. In this	case it is for the 4001.<dt><b>  jal imoninit</b><dd>	Calls imoninit, this is the first piece of C. At this point	   IMON switches to kseg0 addresses.	</dl></dl><h2>imoninit() (<a href="../imon/main.c">imon/main.c</a>)</h2><dl><dd><!--INDEX imoninit -->  <dl><dt><b>  jal getHostType</b><dd>	Calls getHostType to set the global variable hostType.	<dt><b>  jal mfc0</b><dd>	Uses mfc0() to read the Status register (C0_SR).	This is the first time that DRAM is assumed to be working.	If DRAM is not working, control will not return from this	call.<dt><b>  jal bzero  </b><dd>	Clears the first 32 words of the driver load area (80020000..).	<dt><b>  jal <a href="../lib/hostinit.c">hostInit(8)</a></b><dd>	Initialize the DUART. This calls 	<a href="../lib/termio.c">addDevice</a>, which calls the OP_INIT 	section of the driver.<dt><b>  jal <a href="../mon/cli.c">moninit</a></b><dd>	Initializes the core Monitor.<dt><b>  jal <a href="../mon/cli.c">addCmdRec</a></b><dd>	Called several times. Adds PMON-specific commands to the Monitor.	<dt><b>  jal <a href="../mon/set.c">addEnvRec</a></b><dd>	Called several times. Adds PMON-specific environment variables 	to the Monitor.  <dt><b>  jal sprintf -- do_cmd</b><dd>	This pair of functions is called twice. They set two	environment variables.	<dt><b>  jal printf </b><dd>	Print the first part of the banner.	</dl></dl><p><hr><b>Navigation:</b> <a href="index.htm">Document Home</a> | <a href="doctoc.htm">Document Contents</a> | <a href="docindex.htm">Document Index</a> <p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -