1.1 --- a/vga.S Sat Jun 03 22:04:36 2017 +0200
1.2 +++ b/vga.S Sat Jun 03 22:50:28 2017 +0200
1.3 @@ -876,12 +876,6 @@
1.4
1.5 la $s1, vfp_active
1.6
1.7 - /* Disable the line channel. */
1.8 -
1.9 - la $v0, DCH0ECON
1.10 - li $v1, (1 << 4)
1.11 - sw $v1, CLR($v0)
1.12 -
1.13 _visible_active_ret:
1.14 jr $ra
1.15 nop
1.16 @@ -892,6 +886,23 @@
1.17
1.18 visible_update_address:
1.19
1.20 + /* Test for the last visible line. */
1.21 +
1.22 + la $v0, vfp_active
1.23 + bne $s1, $v0, _visible_update_address
1.24 + nop
1.25 +
1.26 + /* Disable the line channel. */
1.27 +
1.28 + la $v0, DCH0ECON
1.29 + li $v1, (1 << 4)
1.30 + sw $v1, CLR($v0)
1.31 +
1.32 + j _visible_update_ret
1.33 + nop
1.34 +
1.35 +_visible_update_address:
1.36 +
1.37 /*
1.38 Update the line data address if the line counter (referring to the
1.39 next line) is even.