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

Subversion Repositories or1k

[/] [or1k/] [branches/] [newlib/] [newlib/] [libgloss/] [mcore/] [syscalls.S] - Rev 56

Go to most recent revision | Compare with Previous | Blame | View Log

.macro FUNC_START name
        .text
        .globl \name
        .globl _\name
\name:
_\name:
.endm
        
FUNC_START _sbrk
        mov     r4, r2                  // save increment
        lrw     r3, brkval
        ldw     r2, (r3)                // get next spot

        movi    r5, 7
        addi    r2, 7                   // round up to 8 bytes
        andn    r2, r5

        addu    r4, r2                  // save updated pointer
        stw     r4, (r3)
        jmp     r15

// brk() could go in here too...

        .data
        .import _end
brkval: .long   _end

        
FUNC_START _exit
        mov     r1, r1          // accomodate simulator glitch...
        .short  0x5000
        br      _exit           // hard loop here

// 0x5001 - printf
// 0x5002 - scanf
        
FUNC_START utime
        .short  0x5003
        jmp     r15


.macro stub name value
FUNC_START \name
        movi    r1, \value
        .short  0x50FF
        jmp     r15
.endm

stub _close   6
stub _lseek  19
stub _open    5 
stub _read    3
stub _times  43
stub _unlink 10
stub _write   4
        
//stub access  33
//stub creat    8
//stub link     9
//stub time    13

//stub profil 98  // movi r6, 2
//stub lprofil 98 // movi r6, 4
                

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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