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

📄 rxgen_romld.s

📁 RTEMS (Real-Time Executive for Multiprocessor Systems) is a free open source real-time operating sys
💻 S
字号:
/* *  $Id: rxgen_romld.S,v 1.1 2000/06/15 22:21:53 joel Exp $ */#include "asm.h" 	BEGIN_CODE	.globl _romStart	.globl start	.globl _start	.globl _romFaultStart	.globl _led_array	.text   start:  /* JRS */_start:  /* JRS */SYM(romStart ): SYM(_romStart ):           # This line is to make compiler happy.	mov	0, g14        ldconst 0x120f,r10   # BIST register/*	 Setup code for in memory loaded image*//*	  # Interrupt stack is used by default.	  # Copy all code (except Fault Table and Fault Handler)	  # from EPROM into DRAM.*/        ldconst 0x120f,r10   //# BIST register	ldconst 0x2,r3	stob	r3,0(r10)	//# 2->LED/*	  # Zero all uninitialized data*/	callx	_zeroBss        ldconst 0x120f,r10   //# BIST register	ldconst 0x3,r3	stob	r3,0(r10)	//# 3->LED/*	  # And reinitialize processor.	  # _start is a few lines below.	  # _prcb is RAM-based struct PRCB.*/	ldconst	0x300, r4	ldconst	_pmc_start, r5	ldconst	_ram_prcb, r6	sysctl	r4, r5, r6/*	  # This point will never be reached.*/SYM(_pmc_start) :  SYM(pmc_start) :          ldconst 0x120f,r10   # BIST register	ldconst 0x4,r3	stob	r3,0(r10)	//# 4->LED	mov	0, g14/*	  # To get ready to invoke procedures.	  # I'll use supervisor stack.*/	ldconst	_svrStackPtr, fp	lda	16*4(fp), sp 	ldconst 0x5,r3	stob	r3,0(r10)	//# 5->LED	ldconst	0x1F0000, r4	ldconst	0x1F2000, r3	ldconst	0, r5	modpc	r4, r3, r5	ldconst 7,r3	stob	r3,0(r10)	//# 7->LED	callx	_rx_boot_card/*	  # if _romMain ever returns ...	*/	b	_romExitSYM(romFaultStart) :  SYM(_romFaultStart) :  	mov	0, g14	/* ldconst	0, sf0 XXX JRS *//*	  # To get ready to invoke procedures.	  # I'll use supervisor stack.	  # _svrStackPtr is defined directly in rom.ld.*/	ldconst	_svrStackPtr, fp	lda	16*4(fp), sp /*	  # Set processor priority to zero.*/	ldconst	0x1F0000, r4	ldconst	0, r5	modpc	r4, r4, r5//	  # Now to real code// Fix this up	callx	_romFaultMain	callx	_rx_boot_card//	  # if _romMain ever returns ...		b	_romExit_romExit ://	  # if _romMain ever returns ...//	fmark	b	_romExitSYM(led_array):	.byte 99	.byte 1	.byte 2	.byte 3	.byte 4	.byte 5	.byte 6	.byte 7	.byte 8	.byte 9	.byte 0xa	.byte 0xb	.byte 0xc/* just to compile and link application XXX JOEL */	.globl _faultStart	.globl _faultEnd	.globl _faultCheckSum	.globl _faultBuffer	.globl _svrStackPtr	.globl _console_pmr_getc	.globl _console_pmr_kbhit	.globl _console_pmr_init	.globl _console_pmr_putc	.globl _DBGConsole_make_sync	.globl _codeRamStart	.globl _codeRomStart	.globl _codeRamEnd	.globl _codeRomEnd	.globl _bssStart	.globl _bssEnd	.globl _bssStart_1	.globl _bssEnd_1	.globl _intStackPtr	_faultStart:_faultEnd:_faultCheckSum:_faultBuffer:_svrStackPtr:_console_pmr_getc:_console_pmr_kbhit:_console_pmr_init:_console_pmr_putc:_DBGConsole_make_sync:_codeRamStart:_codeRomStart:_codeRamEnd:_codeRomEnd:_bssStart:_bssEnd:_bssStart_1:_bssEnd_1:_intStackPtr:

⌨️ 快捷键说明

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