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

📄 crt0.o.s

📁 An complete pmp solution for mattel juicebox player. Using crossworks for arm.
💻 S
字号:
	// file: crt0.s

    .global main                    // int main(void)

    .global _etext                  // -> .data initial values in ROM
    .global _data                   // -> .data area in RAM
    .global _edata                  // end of .data area
    .global __bss_start__             // -> .bss area in RAM
    .global __bss_end__             // end of .bss area
    .global __stack_start__                  // top of stack
// Standard definitions of Mode bits and Interrupt (I & F) flags in PSRs
    .set  MODE_USR, 0x10            // User Mode
    .set  MODE_FIQ, 0x11            // FIQ Mode
    .set  MODE_IRQ, 0x12            // IRQ Mode
    .set  MODE_SVC, 0x13            // Supervisor Mode
    .set  MODE_ABT, 0x17            // Abort Mode
    .set  MODE_UND, 0x1B            // Undefined Mode
    .set  MODE_SYS, 0x1F            // System Mode

    .equ  I_BIT, 0x80               // when I bit is set, IRQ is disabled
    .equ  F_BIT, 0x40               // when F bit is set, FIQ is disabled

    .text
    .code 32
    .align 2

    

// Setup the operating mode & stack.
// ---------------------------------
    .global _start, start, _mainCRTStartup
    .func   _start

_start:
start:
_mainCRTStartup:

    mrs   r0,cpsr                   // get PSR
    orr   r0,r0,#I_BIT|F_BIT        // disable IRQ and FIQ
    msr   cpsr,r0                   // set up status register

    ldr   r0,=__stack_start__
    mov   sp,r0

    mov   r0,#0                     // get a zero
    ldr   r1,=__bss_start__           // -> bss start
    ldr   r2,=__bss_end__           // -> bss end
2:  cmp   r1,r2                     // check if data to clear
    strlo r0,[r1],#4                // clear 4 bytes
    blo   2b                        // loop until done

    ldr   r1,=main
    mov   lr,pc
    bx    r1                       // enter main()

    .size   _start, . - _start
    .endfunc

    .end

⌨️ 快捷键说明

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