# HG changeset patch # User Paul Boddie # Date 1510061913 -3600 # Node ID 0c6e88eb049f2a1f53ee953f65dd66fd923b904a # Parent aa1ac5755f03bf3efe9250987736d16821f43a8c Reordered channel and timer activation instructions, tidied generally. diff -r aa1ac5755f03 -r 0c6e88eb049f vga.S --- a/vga.S Tue Nov 07 14:04:29 2017 +0100 +++ b/vga.S Tue Nov 07 14:38:33 2017 +0100 @@ -554,8 +554,9 @@ DCHxDSIZ<15:0> = CHDSIZ<15:0> = 1 */ + li $v1, 1 + la $v0, DCH0DSIZ - li $v1, 1 sw $v1, 0($v0) la $v0, DCH1DSIZ @@ -566,10 +567,11 @@ DCHxDSA = physical(PORTB) */ - la $v0, DCH0DSA li $v1, PORTB li $t8, KSEG1_BASE subu $v1, $v1, $t8 + + la $v0, DCH0DSA sw $v1, 0($v0) la $v0, DCH1DSA @@ -589,8 +591,6 @@ la $v0, IPC10 li $v1, 0b11111 /* DMA0IP, DMA0IS = 0 */ sw $v1, CLR($v0) - - la $v0, IPC10 li $v1, 0b11111 /* DMA0IP = 7, DMA0IS = 3 */ sw $v1, SET($v0) @@ -883,12 +883,6 @@ la $v0, DCH0SSA sw $s2, 0($v0) - /* Enable the line channel for timer event transfer initiation. */ - - la $v0, DCH0ECON - li $v1, (1 << 4) /* DCH0ECON<4> = SIRQEN = 1 */ - sw $v1, SET($v0) - /* Suspend delivery of the timer interrupt during the visible period. The condition still occurs, however. @@ -908,6 +902,12 @@ li $v1, (1 << 9) sw $v1, SET($v0) /* T2IE = 0 */ + /* Enable the line channel for timer event transfer initiation. */ + + la $v0, DCH0ECON + li $v1, (1 << 4) /* DCH0ECON<4> = SIRQEN = 1 */ + sw $v1, SET($v0) + _vbp_active_ret: jr $ra nop