From: Alan Cox Date: Fri, 26 Aug 2016 21:00:33 +0000 (+0100) Subject: 68000: Switch to gnu-linux from atari-mint compiler X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=d73cf6e365de1c56e8b3bf2e15387598c6880a76;p=FUZIX.git 68000: Switch to gnu-linux from atari-mint compiler --- diff --git a/Kernel/cpu-68000/rules.mk b/Kernel/cpu-68000/rules.mk index 842ab10e..6f0af610 100644 --- a/Kernel/cpu-68000/rules.mk +++ b/Kernel/cpu-68000/rules.mk @@ -1,5 +1,5 @@ -export CROSS_LD=m68k-atari-mint-ld -export CROSS_CC = m68k-atari-mint-gcc +export CROSS_LD=m68k-linux-gnu-ld +export CROSS_CC = m68k-linux-gnu-gcc export CROSS_CCOPTS=-c -fno-builtin -Wall -Os -m68000 -mshort -I$(ROOT_DIR)/cpu-68000 -I$(ROOT_DIR)/platform-$(TARGET) -I$(ROOT_DIR)/include export CROSS_AS=$(CROSS_CC) $(CROSS_CCOPTS) #-Wa,-M export CROSS_CC_SEG1= diff --git a/Kernel/lowlevel-68000.S b/Kernel/lowlevel-68000.S index 1ccc116f..5f9465d3 100644 --- a/Kernel/lowlevel-68000.S +++ b/Kernel/lowlevel-68000.S @@ -4,15 +4,15 @@ #include "kernel-68000.def" .mri 0 - .globl _di,_ei,_irqrestore - .globl _doexec - .globl _get_usp, _set_usp + .globl di,ei,irqrestore + .globl doexec + .globl get_usp, set_usp .globl outstring,outstringhex,outcharhex,outa0hex .mri 1 -_get_usp: move.l usp,a0 +get_usp: move.l usp,a0 rts -_set_usp: move.l 4(sp),a0 +set_usp: move.l 4(sp),a0 move.l a0,usp rts @@ -20,24 +20,24 @@ _set_usp: move.l 4(sp),a0 * We don't currently have any fine grained IRQ control. We need to fix * that! */ -_di: +di: move.w sr,d0 and.w #$0700,d0 or.w #$0700,sr rts -_ei: +ei: and.w #$F8FF,sr rts -_irqrestore: +irqrestore: move.w sr,d0 and.w #$F8FF,d0 or.w 4(sp),d0 move.w d0,sr rts -_doexec: +doexec: ; ; FIXME: we need to reset sp (we effectively longjmp ; in supervisor space), then push the values. If we @@ -94,7 +94,7 @@ trap14: movem.l a2-a6/d2-d7,-(sp) move.b d0,kernel_flag ; FIXME: EI per platform really and.w #$F8FF,sr - bsr _unix_syscall + bsr unix_syscall ; FIXME: signal handling in the C code or not ? or.w #$0700,sr move.w U_DATA__U_ERROR,d1 @@ -129,38 +129,38 @@ struninitialized: ; is a bit saner than 8bit. ; #if 0 -_intvector1: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt1 +intvector1: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt1 movem.l (sp)+,a0-a6/d0-d7 rte -_intvector2: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt3 +intvector2: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt3 movem.l (sp)+,a0-a6/d0-d7 rte -_intvector3: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt3 +intvector3: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt3 movem.l (sp)+,a0-a6/d0-d7 rte -_intvector4: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt4 +intvector4: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt4 movem.l (sp)+,a0-a6/d0-d7 rte -_intvector5: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt5 +intvector5: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt5 movem.l (sp)+,a0-a6/d0-d7 rte -_intvector6: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt6 +intvector6: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt6 movem.l (sp)+,a0-a6/d0-d7 rte -_intvector7: movem.l a0-a6/d0-d7,-(sp) - bsr _interrupt7 +intvector7: movem.l a0-a6/d0-d7,-(sp) + bsr interrupt7 movem.l (sp)+,a0-a6/d0-d7 rte #endif @@ -172,7 +172,7 @@ sig_or_die: lea panic_sig,a0 bsr outstring lea panic_sig2,a0 - bsr _panic ; won't return + bsr panic ; won't return panic_sig: ascii ": signal in kernel mode." byte 13,10 panic_sig2: asciz ": ksig" @@ -180,7 +180,7 @@ panic_sig2: asciz ": ksig" sig_user: movem.l a0-a6/d0-d7,-(sp) move.l (U_DATA__U_PTAB),-(sp) - bsr _ssig + bsr ssig adda #4,sp ; Do signal processing bit here if we return movem.l (sp)+,a0-a6/d0-d7