Changeset 33850 in vbox for trunk/src/VBox
- Timestamp:
- Nov 8, 2010 2:37:09 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Graphics/BIOS/vbe.c
r33656 r33850 157 157 vesa_pm_set_display_start: 158 158 cmp bl, #0x80 159 je vesa_pm_set_display_start1 159 je vesa_pm_set_display_start1_wait 160 160 cmp bl, #0x00 161 161 je vesa_pm_set_display_start1 162 162 mov ax, #0x0100 163 163 ret 164 vesa_pm_set_display_start1_wait: 165 push edx 166 mov dx, #0x03da 167 wnv_loop_32: 168 in al, dx 169 test al, #8 170 jnz wnv_loop_32 171 wv_loop_32: 172 in al, dx 173 test al, #8 174 jz wv_loop_32 175 pop edx 164 176 vesa_pm_set_display_start1: 165 177 ; convert offset to (X, Y) coordinate … … 263 275 #endif 264 276 277 ;; Vertical retrace waiting 278 wait_vsync: 279 push ax 280 push dx 281 mov dx, #0x03da 282 wv_loop: 283 in al, dx 284 test al, #8 285 jz wv_loop 286 pop dx 287 pop ax 288 ret 289 290 wait_not_vsync: 291 push ax 292 push dx 293 mov dx, #0x03da 294 wnv_loop: 295 in al, dx 296 test al, #8 297 jnz wnv_loop 298 pop dx 299 pop ax 300 ret 301 265 302 ; DISPI ioport functions 266 303 … … 657 694 mov dx, # VGAREG_VGA_CRTC_ADDRESS 658 695 mov ax, #0x0009 659 out dx, ax 696 out dx, al 697 mov dx, # VGAREG_VGA_CRTC_DATA 698 in al, dx 699 and al, #0x60 // clear double scan bit and cell height 700 out dx, al 701 mov dx, # VGAREG_VGA_CRTC_ADDRESS 660 702 mov al, #0x17 661 703 out dx, al … … 1608 1650 vbe_biosfn_set_get_display_start: 1609 1651 cmp bl, #0x80 1610 je set_display_start 1652 je set_display_start_wait 1611 1653 cmp bl, #0x01 1612 1654 je get_display_start … … 1614 1656 mov ax, #0x0100 1615 1657 ret 1658 set_display_start_wait: 1659 call wait_not_vsync 1660 call wait_vsync 1616 1661 set_display_start: 1617 1662 mov ax, cx
Note:
See TracChangeset
for help on using the changeset viewer.