# HG changeset patch # User Paul Boddie # Date 1510006005 -3600 # Node ID ec19e9f803b57a87b8e5ea0386f5270bb6f31eab # Parent 22ebe789d8303650c2378a119e5f1f3302a51de4 Enable Timer3 interrupts in order to create timer events. diff -r 22ebe789d830 -r ec19e9f803b5 pic32.h --- a/pic32.h Mon Nov 06 19:12:47 2017 +0100 +++ b/pic32.h Mon Nov 06 23:06:45 2017 +0100 @@ -62,6 +62,10 @@ #define IEC1 0xBF881070 #define IPC1 0xBF8810A0 #define IPC2 0xBF8810B0 +#define IPC3 0xBF8810C0 +#define IPC4 0xBF8810D0 +#define IPC5 0xBF8810E0 +#define IPC6 0xBF8810F0 #define IPC7 0xBF881100 #define IPC8 0xBF881110 #define IPC10 0xBF881130 diff -r 22ebe789d830 -r ec19e9f803b5 vga.S --- a/vga.S Mon Nov 06 19:12:47 2017 +0100 +++ b/vga.S Mon Nov 06 23:06:45 2017 +0100 @@ -312,6 +312,24 @@ li $v1, 1 sw $v1, 0($v0) /* PR3 = 1 */ + /* Initialise Timer3 interrupt. */ + + la $v0, IFS0 + li $v1, (1 << 14) + sw $v1, CLR($v0) /* T3IF = 0 */ + + la $v0, IPC3 + li $v1, 0b11111 + sw $v1, CLR($v0) /* T3IP, T3IS = 0 */ + + la $v0, IPC3 + li $v1, 0b11111 + sw $v1, SET($v0) /* T3IP = 7; T3IS = 3 */ + + la $v0, IEC0 + li $v1, (1 << 14) + sw $v1, SET($v0) /* T3IE = 1 */ + /* Start timer. */ la $v0, T3CON