From 0420a31f8f141265ec114510ff6b9214dda69f8d Mon Sep 17 00:00:00 2001 From: Morten Delenk Date: Sat, 29 Jul 2017 10:03:10 +0100 Subject: [PATCH] added IRQs to 3ds11, made the timer faster on 3ds9 --- kernel/arch/arm/3ds9/start.cpp | 2 +- kernel/arch/arm/interrupt.cpp | 1 - kernel/hw/3ds11/vectorinit/vectorinit.cpp | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/kernel/arch/arm/3ds9/start.cpp b/kernel/arch/arm/3ds9/start.cpp index 3f65e22..5ca3341 100644 --- a/kernel/arch/arm/3ds9/start.cpp +++ b/kernel/arch/arm/3ds9/start.cpp @@ -20,6 +20,6 @@ void drivers_init() { enable_irqs(); *((volatile uint16_t*)0x10003002)=0; *((volatile uint16_t*)0x10003000)=65; - *((volatile uint16_t*)0x10003002)=0b11000011; + *((volatile uint16_t*)0x10003002)=0b11000000; *((volatile uint32_t*)0x10001000)|=1<<8; } diff --git a/kernel/arch/arm/interrupt.cpp b/kernel/arch/arm/interrupt.cpp index fefbf8a..782176e 100644 --- a/kernel/arch/arm/interrupt.cpp +++ b/kernel/arch/arm/interrupt.cpp @@ -37,7 +37,6 @@ extern "C" cpu_state *handleINT(int number, cpu_state *state) { else state->returnAddr -= 4; } - print_regdump(state); cpu_state *new_cpu = state; switch(number) { case 1: diff --git a/kernel/hw/3ds11/vectorinit/vectorinit.cpp b/kernel/hw/3ds11/vectorinit/vectorinit.cpp index ee0fb09..2d445d7 100644 --- a/kernel/hw/3ds11/vectorinit/vectorinit.cpp +++ b/kernel/hw/3ds11/vectorinit/vectorinit.cpp @@ -32,7 +32,7 @@ IRQ_IO::IRQ_IO() { *((volatile uint32_t*)(0x17E01100+i))=~0; } uint32_t intid; - while((intid=*((volatile uint32_t*)0x17E00118))!=1023) { + while((intid=*((volatile uint32_t*)0x17E00118))&1023!=1023) { *((volatile uint32_t*)0x17E00110)=intid; } }