1.1 --- a/vga.S Thu Nov 16 23:59:56 2017 +0100
1.2 +++ b/vga.S Fri Nov 17 17:22:46 2017 +0100
1.3 @@ -867,19 +867,12 @@
1.4 The condition still occurs, however.
1.5 */
1.6
1.7 - la $v0, IEC0
1.8 - li $v1, (1 << 9)
1.9 - sw $v1, CLR($v0) /* T2IE = 0 */
1.10 -
1.11 la $v0, IPC2
1.12 - li $v1, 0b11111
1.13 - sw $v1, CLR($v0) /* T2IP, T2IS = 0 */
1.14 - li $v1, 0b00111
1.15 - sw $v1, SET($v0) /* T2IP = 1; T2IS = 3 */
1.16 -
1.17 - la $v0, IEC0
1.18 - li $v1, (1 << 9)
1.19 - sw $v1, SET($v0) /* T2IE = 0 */
1.20 + lw $v1, 0($v0)
1.21 + li $t8, ~0b11111
1.22 + and $v1, $v1, $t8 /* T2IP = 0; T2IS = 0 */
1.23 + ori $v1, $v1, 0b00111 /* T2IP = 1; T2IS = 3 */
1.24 + sw $v1, 0($v0)
1.25
1.26 /* Enable the line channel for timer event transfer initiation. */
1.27
1.28 @@ -908,19 +901,12 @@
1.29
1.30 /* Restore delivery of the timer interrupt after the visible period. */
1.31
1.32 - la $v0, IEC0
1.33 - li $v1, (1 << 9)
1.34 - sw $v1, CLR($v0) /* T2IE = 0 */
1.35 -
1.36 la $v0, IPC2
1.37 - li $v1, 0b11111
1.38 - sw $v1, CLR($v0) /* T2IP, T2IS = 0 */
1.39 - li $v1, 0b11111
1.40 - sw $v1, SET($v0) /* T2IP = 7; T2IS = 3 */
1.41 -
1.42 - la $v0, IEC0
1.43 - li $v1, (1 << 9)
1.44 - sw $v1, SET($v0) /* T2IE = 1 */
1.45 + lw $v1, 0($v0)
1.46 + li $t8, ~0b11111
1.47 + and $v1, $v1, $t8 /* T2IP = 0; T2IS = 0 */
1.48 + ori $v1, $v1, 0b11111 /* T2IP = 7; T2IS = 3 */
1.49 + sw $v1, 0($v0)
1.50
1.51 /* Disable the line channel. */
1.52