Commit 5fc83df3 authored by Martin Hofmann's avatar Martin Hofmann

initial

parents
#
# Makefile for Micrim ucOS-III for eco32
#
LCC = /home/wiggum/git/eco32/build/bin/lcc
C_SRC = $(shell find ./ -type f -name *.c)
S_SRC = $(shell find ./ -type f -name *.s)
H_SRC = $(shell find ./ -type f -name *.h)
OBJS = $(addsuffix .o,$(basename $(C_SRC))) $(addsuffix .o,$(basename $(S_SRC)))
EXE = kernel
BIN = kernel.bin
MAP = kernel.map
all: $(BIN)
$(BIN): $(EXE)
$(EXE): $(OBJS) $(H_SRC)
%.o: %.c
$(LCC) -A -Wo-nostdinc -Wo-nostdlib -c -o $@ $^
clean:
rm -f $(OBJS) $(EXE) $(BIN) $(MAP)
\ No newline at end of file
This diff is collapsed.
;********************************************************************************************************
; uC/CPU
; CPU CONFIGURATION & PORT LAYER
;
; (c) Copyright 2004-2012; Micrium, Inc.; Weston, FL
;
; All rights reserved. Protected by international copyright laws.
;
; uC/CPU is provided in source form to registered licensees ONLY. It is
; illegal to distribute this source code to any third party unless you receive
; written permission by an authorized Micrium representative. Knowledge of
; the source code may NOT be used to develop a similar product.
;
; Please help us continue to provide the Embedded community with the finest
; software available. Your honesty is greatly appreciated.
;
; You can contact us at www.micrium.com.
;********************************************************************************************************
;********************************************************************************************************
;
; CPU PORT FILE
;
; ECO32
; LCC ANSI-C COMPILER
;
; Filename : cpu_a.asm
; Version : V1.00.0
; Programmer(s) : JJL
; MD
;********************************************************************************************************
;********************************************************************************************************
; PUBLIC FUNCTIONS
;********************************************************************************************************
.export CPU_SR_Save
.export CPU_SR_Restore
;********************************************************************************************************
; CODE GENERATION DIRECTIVES
;********************************************************************************************************
.code
.align 4
;********************************************************************************************************
; CRITICAL SECTION FUNCTIONS
;
; Description : Disable/Enable interrupts by preserving the state of interrupts. Generally speaking, the
; state of the interrupt disable flag is stored in the local variable 'cpu_sr' & interrupts
; are then disabled ('cpu_sr' is allocated in all functions that need to disable interrupts).
; The previous interrupt state is restored by copying 'cpu_sr' into the CPU's status register.
;
; Prototypes : CPU_SR CPU_SR_Save (void);
; void CPU_SR_Restore(CPU_SR cpu_sr);
;
; Note(s) : (1) These functions are used in general like this :
;
; void Task (void *p_arg)
; {
; CPU_SR_ALLOC(); /* Allocate storage for CPU status register */
; :
; :
; CPU_CRITICAL_ENTER(); /* cpu_sr = CPU_SR_Save(); */
; :
; :
; CPU_CRITICAL_EXIT(); /* CPU_SR_Restore(cpu_sr); */
; :
; }
;********************************************************************************************************
CPU_SR_Save:
mvfs $8,0
and $9,$0,0x00400000
and $2,$8,$9
and $9,$0,0xFFBFFFFF
and $8,$8,$9
mvts $8,0
jr $31
CPU_SR_Restore:
mvfs $9,0
or $8,$8,$4
mvts $8,0
jr $31
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/*
************************************************************************************************************************
* uC/OS-III
* The Real-Time Kernel
*
* (c) Copyright 2009-2012; Micrium, Inc.; Weston, FL
* All rights reserved. Protected by international copyright laws.
*
* VARIABLES
*
* File : OS_VAR.C
* By : JJL
* Version : V3.03.00
*
* LICENSING TERMS:
* ---------------
* uC/OS-III is provided in source form for FREE short-term evaluation, for educational use or
* for peaceful research. If you plan or intend to use uC/OS-III in a commercial application/
* product then, you need to contact Micrium to properly license uC/OS-III for its use in your
* application/product. We provide ALL the source code for your convenience and to help you
* experience uC/OS-III. The fact that the source is provided does NOT mean that you can use
* it commercially without paying a licensing fee.
*
* Knowledge of the source code may NOT be used to develop a similar product.
*
* Please help us continue to provide the embedded community with the finest software available.
* Your honesty is greatly appreciated.
*
* You can contact us at www.micrium.com, or by phone at +1 (954) 217-2036.
************************************************************************************************************************
*/
#define OS_GLOBALS
#define MICRIUM_SOURCE
#include <os.h>
#ifdef VSC_INCLUDE_SOURCE_FILE_NAMES
const CPU_CHAR *os_var__c = "$Id: $";
#endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment