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

📄 crt0.s

📁 C语言编写的监控中心终端程序。基于GPRS上传收发数据功能
💻 S
字号:

#include "regdef.h"

		.text
		.global start
		.global	__main
		.global	s_gp

		.extern	_stkbtm

		.text
       		.ent 	start
start:
                /*
                ** ENABLE COP0/3
                */
                mfc0    t1, C0_STATUS
                li      t0, STATUS_COP3|STATUS_COP0|STATUS_BEV
//                li      t0, STATUS_COP3|STATUS_COP0|STATUS_ENDIAN_BIG|STATUS_BEV
 		li      t0, STATUS_COP3|STATUS_COP0|STATUS_ENDIAN_LITTLE|STATUS_BEV

                or      t1, t0
#ifdef	USE_BEV1
		li	t0, STATUS_BEV
		xor	t1, t0
#endif
                mtc0    t1, C0_STATUS
                nop
                nop
                nop

		/*
		** Adjust DRAM address
		*/
  		li	t0, 0x02000000
		mtc3	t0, C3_DW_BASE
  		li	t1, 0x020003ff
		mtc3	t1, C3_DW_TOP

		/*
		** Adjust IRAM address
		*/
		//remarked by jjding
		//For Nes Games 
		//  	li	t0, 0x01000000
		//		mtc3	t0, C3_IW_BASE
		//  	li	t1, 0x010003ff
		//		mtc3	t1, C3_IW_TOP
   
		/*
		** reset STK buffer 
		*/
                la      sp, _stkptr             // set up stack pointer
		la	t0, _stkbtm		
		lui	v0, 0xfade
		ori	v0, 0xfade
__clrstk:
		sw	v0, 0(t0)		// writing initial value
		addiu	t0, 4
		bne	t0, sp, __clrstk

		/*
		** setup others variables.
		*/
		lw	gp, s_gp		// set up GP
		lw	t0, s_rominit		// init ROM image of data section
		jalr	t0
		j	csvcd_main
		.end	start


__main:
		lw	gp, s_gp
		jr	ra

		.rdata	
s_gp:		.word	_gp
s_rominit:	.word	rominit

⌨️ 快捷键说明

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