OpenCores
URL https://opencores.org/ocsvn/plasma/plasma/trunk

Subversion Repositories plasma

[/] [plasma/] [trunk/] [tools/] [boot.asm] - Diff between revs 47 and 110

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 47 Rev 110
Line 14... Line 14...
        .globl  entry
        .globl  entry
        .ent    entry
        .ent    entry
entry:
entry:
   .set noreorder
   .set noreorder
 
 
   #These nine instructions must be the first instructions
   #These eight instructions must be the first instructions.
   #convert.exe will correctly initialize $gp
   #convert.exe will correctly initialize $gp
   lui   $gp,0
   lui   $gp,0
   ori   $gp,$gp,0
   ori   $gp,$gp,0
   #convert.exe will set $4=.sbss_start $5=.bss_end
   #convert.exe will set $4=.sbss_start $5=.bss_end
   ori   $4,$0,0
   lui   $4,0
   ori   $5,$0,0
   ori   $4,$4,0
   ori   $sp,$0,0xfff0     #initialize stack pointer
   lui   $5,0
 
   ori   $5,$5,0
 
   lui   $sp,0
 
   ori   $sp,$sp,0xfff0     #initialize stack pointer
$BSS_CLEAR:
$BSS_CLEAR:
   sw    $0,0($4)
   sw    $0,0($4)
   slt   $3,$4,$5
   slt   $3,$4,$5
   bnez  $3,$BSS_CLEAR
   bnez  $3,$BSS_CLEAR
   addiu $4,$4,4
   addiu $4,$4,4
Line 33... Line 36...
   jal   main2
   jal   main2
   nop
   nop
$L1:
$L1:
   j $L1
   j $L1
 
 
   #address 0x30
   #address 0x3c
interrupt_service_routine:
interrupt_service_routine:
   #registers $26 and $27 are reserved for the OS
   #registers $26 and $27 are reserved for the OS
   ori $26,$0,0xffff
   ori $26,$0,0xffff
   ori $27,$0,46
   ori $27,$0,46
   sb $27,0($26)           #echo out '.'
   sb $27,0($26)           #echo out '.'

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.