Rev 837 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 837 | Rev 2971 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
5 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | $Revision: 834 $ |
8 | $Revision: 2971 $ |
9 | 9 | ||
10 | struc VBE_VGAInfo { |
10 | struc VBE_VGAInfo { |
11 | .VESASignature dd ? ; char |
11 | .VESASignature dd ? ; char |
Line 215... | Line 215... | ||
215 | jz @f |
215 | jz @f |
Line 216... | Line 216... | ||
216 | 216 | ||
217 | ; cmp [es:mi.BitsPerPixel], 24 |
217 | ; cmp [es:mi.BitsPerPixel], 24 |
Line 218... | Line 218... | ||
218 | ; jb @f |
218 | ; jb @f |
219 | 219 | ||
220 | cmp [es:mi.BitsPerPixel],16 |
220 | ; cmp [es:mi.BitsPerPixel],16 |
221 | jne .l0 |
221 | ; jne .l0 |
222 | cmp [es:mi.GreenMaskSize],5 |
222 | ; cmp [es:mi.GreenMaskSize],5 |
Line 223... | Line 223... | ||
223 | jne .l0 |
223 | ; jne .l0 |
224 | mov [es:mi.BitsPerPixel],15 |
224 | ; mov [es:mi.BitsPerPixel],15 |
225 | 225 | ||
Line 244... | Line 244... | ||
244 | 244 | ||
245 | or cx,0x4000 ; use LFB |
245 | or cx,0x4000 ; use LFB |
246 | .lp1: mov [es:bx+6],cx ; +6 : mode number |
246 | .lp1: mov [es:bx+6],cx ; +6 : mode number |
247 | movzx ax,byte [es:mi.BitsPerPixel] |
247 | movzx ax,byte [es:mi.BitsPerPixel] |
248 | mov word [es:bx+8],ax ; +8 : bits per pixel |
248 | mov word [es:bx+8],ax ; +8 : bits per pixel |
Line 249... | Line 249... | ||
249 | add bx,size_of_step |
249 | add bx,size_of_step ; size of record |
250 | 250 | ||
251 | @@: |
251 | @@: |
Line 412... | Line 412... | ||
412 | jae @f |
412 | jae @f |
413 | mov ax,modes_table |
413 | mov ax,modes_table |
414 | @@: |
414 | @@: |
Line 415... | Line 415... | ||
415 | 415 | ||
416 | mov word[home_cursor],ax |
416 | mov word [home_cursor],ax |
417 | push word [preboot_graph] |
417 | mov si,[preboot_graph] |
- | 418 | mov word [cursor_pos],si |
|
- | 419 | ||
- | 420 | push word [es:si] |
|
- | 421 | pop word [x_save] |
|
- | 422 | push word [es:si+2] |
|
- | 423 | pop word [y_save] |
|
- | 424 | push word [es:si+6] |
|
- | 425 | pop word [number_vm] |
|
418 | pop word [cursor_pos] |
426 | |
419 | ret |
427 | ret |
420 | ;;;;;;;;;;;;;;;;;;;;;;;;;;; |
428 | ;;;;;;;;;;;;;;;;;;;;;;;;;;; |
421 | .loops: |
429 | .loops: |
422 | cmp ax,word [es:si] |
430 | cmp ax,word [es:si] |
Line 430... | Line 438... | ||
430 | .next: add si,size_of_step |
438 | .next: add si,size_of_step |
431 | cmp word [es:si],-1 |
439 | cmp word [es:si],-1 |
432 | je .exit |
440 | je .exit |
433 | jmp .loops |
441 | jmp .loops |
434 | .ok: xor ax,ax |
442 | .ok: xor ax,ax |
- | 443 | ret |
|
435 | .exit: ret |
444 | .exit: or ax,-1 |
- | 445 | ret |
|
Line 436... | Line 446... | ||
436 | 446 | ||
Line 437... | Line 447... | ||
437 | 447 | ||
Line 529... | Line 539... | ||
529 | mov [scroll_end], ax |
539 | mov [scroll_end], ax |
530 | pop si |
540 | pop si |
531 | mov bp,long_v_table ;show rows |
541 | mov bp,long_v_table ;show rows |
532 | .@@_next_bit: |
542 | .@@_next_bit: |
533 | ;clear cursor |
543 | ;clear cursor |
- | 544 | mov ax,' ' |
|
534 | mov word[ds:_r1+21],' ' |
545 | mov word[ds:_r1+21],ax |
535 | mov word[ds:_r1+50],' ' |
546 | mov word[ds:_r1+50],ax |
Line 536... | Line 547... | ||
536 | 547 | ||
537 | mov word[ds:_r2+21],' ' |
548 | mov word[ds:_r2+21],ax |
Line 538... | Line 549... | ||
538 | mov word[ds:_r2+45],' ' |
549 | mov word[ds:_r2+45],ax |
539 | 550 | ||
540 | mov word[ds:_rs+21],' ' |
551 | mov word[ds:_rs+21],ax |
541 | mov word[ds:_rs+46],' ' |
552 | mov word[ds:_rs+46],ax |
542 | ; draw string |
553 | ; draw string |
543 | cmp word [es:si+6],0x12 |
554 | cmp word [es:si+6],0x12 |
544 | je .show_0x12 |
555 | je .show_0x12 |
Line 647... | Line 658... | ||
647 | mov bp,12 |
658 | mov bp,12 |
648 | .loop_start: |
659 | .loop_start: |
649 | rep stosw |
660 | rep stosw |
650 | mov cx,70 |
661 | mov cx,70 |
651 | add di,20 |
662 | add di,20 |
652 | dec bp ; 㬥ìè¨âì DX, |
663 | dec bp |
653 | jns .loop_start |
664 | jns .loop_start |
654 | pop es |
665 | pop es |
655 | popa |
666 | popa |
656 | ret |
667 | ret |