Committed on the Free edition of March Hare Software CVSNT Server. Upgrade to CVS Suite for more features and support: http://march-hare.com/cvsnt/ git-svn-id: http://moon:8086/svn/vhdl/trunk@272 cc03376c-175c-47c8-b038-4cd826a8556b
209 lines
2.8 KiB
ArmAsm
209 lines
2.8 KiB
ArmAsm
.file "init.S"
|
|
|
|
.text
|
|
.align 2
|
|
.globl _init
|
|
.extern end
|
|
|
|
_init:
|
|
.set noreorder
|
|
|
|
# set uart
|
|
la $26, sys_uart_baud
|
|
addiu $27, $0, baudrate
|
|
sb $27, 0($26)
|
|
|
|
# set stack pointer
|
|
la $sp, stack_ptr
|
|
# j $jmain
|
|
|
|
# TEST
|
|
li $26, +5
|
|
beqz $26, _terminate
|
|
li $26, -5
|
|
beqz $26, _terminate
|
|
li $26, 0
|
|
beqz $26, $_L11
|
|
nop
|
|
j _terminate
|
|
nop
|
|
$_L11:
|
|
li $26, +5
|
|
li $27, +6
|
|
beq $26, $27, _terminate
|
|
li $26, -5
|
|
beq $26, $27, _terminate
|
|
li $26, 0
|
|
beq $26, $27, _terminate
|
|
li $26, +6
|
|
beq $26, $27, $_L12
|
|
nop
|
|
j _terminate
|
|
nop
|
|
$_L12:
|
|
li $26, -5
|
|
bgez $26, _terminate
|
|
li $26, +5
|
|
bgez $26, $_L13
|
|
nop
|
|
j _terminate
|
|
$_L13: li $26, 0
|
|
bgez $26, $_L14
|
|
nop
|
|
j _terminate
|
|
$_L14:
|
|
li $26, -5
|
|
bgtz $26, _terminate
|
|
li $26, 0
|
|
bgtz $26, _terminate
|
|
li $26, +5
|
|
bgtz $26, $_L15
|
|
nop
|
|
j _terminate
|
|
|
|
$_L15:
|
|
li $26, +5
|
|
blez $26, _terminate
|
|
li $26, 0
|
|
blez $26, $_L16
|
|
nop
|
|
j _terminate
|
|
$_L16: li $26, -5
|
|
blez $26, $_L17
|
|
nop
|
|
j _terminate
|
|
|
|
$_L17:
|
|
li $26, +5
|
|
bltz $26, _terminate
|
|
li $26, 0
|
|
bltz $26, _terminate
|
|
li $26, -5
|
|
bltz $26, $_L18
|
|
nop
|
|
j _terminate
|
|
$_L18:
|
|
li $26, +5
|
|
li $27, +6
|
|
bne $26, $27, $_L19
|
|
nop
|
|
j _terminate
|
|
$_L19: li $26, -5
|
|
bne $26, $27, $_L20
|
|
nop
|
|
j _terminate
|
|
$_L20: li $26, -6
|
|
bne $26, $27, $_L21
|
|
nop
|
|
j _terminate
|
|
$_L21: li $26, 0
|
|
bne $26, $27, $_L22
|
|
nop
|
|
j _terminate
|
|
$_L22: li $26, +6
|
|
bne $26, $27, _terminate
|
|
li $26, +5
|
|
bnez $26, $_L23
|
|
nop
|
|
j _terminate
|
|
$_L23: li $26, -5
|
|
bnez $26, $_L24
|
|
nop
|
|
j _terminate
|
|
$_L24: li $26, 0
|
|
bnez $26, _terminate
|
|
|
|
$_L25:
|
|
li $27, +5
|
|
sltiu $26,$27,+6
|
|
sltiu $26,$27,-6
|
|
li $27, -5
|
|
sltiu $26,$27,+6
|
|
sltiu $26,$27,-6
|
|
li $27, +6
|
|
sltiu $26,$27,+5
|
|
sltiu $26,$27,-5
|
|
li $27, -6
|
|
sltiu $26,$27,+5
|
|
sltiu $26,$27,-5
|
|
|
|
li $27, +5
|
|
slti $26,$27,+6
|
|
slti $26,$27,-6
|
|
li $27, -5
|
|
slti $26,$27,+6
|
|
slti $26,$27,-6
|
|
li $27, +6
|
|
slti $26,$27,+5
|
|
slti $26,$27,-5
|
|
li $27, -6
|
|
slti $26,$27,+5
|
|
slti $26,$27,-5
|
|
|
|
|
|
li $26, +5
|
|
li $27, +6
|
|
sltu $26,$26,$27
|
|
li $26, +5
|
|
li $27, -6
|
|
sltu $26,$26,$27
|
|
li $26, -5
|
|
li $27, +6
|
|
sltu $26,$26,$27
|
|
li $26, -5
|
|
li $27, -6
|
|
sltu $26,$26,$27
|
|
|
|
li $26, +6
|
|
li $27, +5
|
|
sltu $26,$26,$27
|
|
li $26, +6
|
|
li $27, -5
|
|
sltu $26,$26,$27
|
|
li $26, -6
|
|
li $27, +5
|
|
sltu $26,$26,$27
|
|
li $26, -6
|
|
li $27, -5
|
|
sltu $26,$26,$27
|
|
|
|
li $26, +5
|
|
li $27, +6
|
|
slt $26,$26,$27
|
|
li $26, +5
|
|
li $27, -6
|
|
slt $26,$26,$27
|
|
li $26, -5
|
|
li $27, +6
|
|
slt $26,$26,$27
|
|
li $26, -5
|
|
li $27, -6
|
|
slt $26,$26,$27
|
|
|
|
li $26, +6
|
|
li $27, +5
|
|
slt $26,$26,$27
|
|
li $26, +6
|
|
li $27, -5
|
|
slt $26,$26,$27
|
|
li $26, -6
|
|
li $27, +5
|
|
slt $26,$26,$27
|
|
li $26, -6
|
|
li $27, -5
|
|
slt $26,$26,$27
|
|
|
|
# TEST
|
|
|
|
|
|
# jump main
|
|
$jmain: la $26, main
|
|
jalr $26
|
|
|
|
_terminate:
|
|
nop
|
|
j _terminate
|
|
nop
|
|
|
|
.set reorder
|