Вот поправил os_cpu_a под KEIL...
Компилится без ошибок, но за работоспособнсть не могу сказать

, еще не проверял.
Блин файл не прикрепляется поэтому код прям здесь напишу.
;*************************************************************************
; uOS
; The Real-Time Kernel
; Generic ARM Port
;
;*************************************************************************
EXTERN DATA (OSRunning) ; External references
EXTERN DATA (OSPrioCur)
EXTERN DATA (OSPrioHighRdy)
EXTERN DATA (OSTCBCur)
EXTERN DATA (OSTCBHighRdy)
EXTERN DATA (OSIntNesting)
EXTERN CODE32 (OSIntExit?A)
EXTERN CODE32 (OSTaskSwHook?A)
EXTERN CODE32 (OS_CPU_IRQ_ISR_Handler?A)
EXTERN CODE32 (OS_CPU_FIQ_ISR_Handler?A)
PUBLIC OS_CPU_SR_Save?A ; Functions declared in this file
PUBLIC OS_CPU_SR_Restore?A
PUBLIC OSStartHighRdy?A
PUBLIC OSCtxSw?A
PUBLIC OSIntCtxSw?A
PUBLIC OS_CPU_IRQ_ISR?A
PUBLIC OS_CPU_FIQ_ISR?ANO_INT EQU 0xC0 ; Mask used to disable interrupts (Both FIR and IRQ)
SVC32_MODE EQU 0x13
FIQ32_MODE EQU 0x11
IRQ32_MODE EQU 0x12
;****************************************************************************
; CRITICAL SECTION METHOD 3 FUNCTIONS
;
;****************************************************************************
AREA OS_CPU_A, CODE, READONLY, ALIGN=2 ; Declare the segment
OS_CPU_SR_Save?A MRS R0,CPSR ; Set IRQ and FIQ bits in CPSR to disable all interrupts
ORR R1,R0,#NO_INT
MSR CPSR_c,R1
MRS R1,CPSR ; Confirm that CPSR contains the proper interrupt disable flags
AND R1,R1,#NO_INT
CMP R1,#NO_INT
BNE
OS_CPU_SR_Save?A ; Not properly disabled (try again)
BX LR ; Disabled, return the original CPSR contents in R0
OS_CPU_SR_Restore?A MSR CPSR_c,R0
BX LR
.
.
и т.д.
.
.
;****************************************************************************
; POINTERS TO VARIABLES
;****************************************************************************
??OS_TaskSwHook:
DD OSTaskSwHook?A??OS_CPU_IRQ_ISR_Handler:
DD OS_CPU_IRQ_ISR_Handler?A??OS_CPU_FIQ_ISR_Handler:
DD OS_CPU_FIQ_ISR_Handler?A??OS_IntExit:
DD OSIntExit?A??OS_IntNesting:
DD OSIntNesting??OS_PrioCur:
DD OSPrioCur
??OS_PrioHighRdy:
DD OSPrioHighRdy??OS_Running:
DD OSRunning??OS_TCBCur:
DD OSTCBCur??OS_TCBHighRdy:
DD OSTCBHighRdy END
Сообщение отредактировал bombastic - Mar 24 2006, 07:43