Rev 5201 | Rev 5596 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5201 | Rev 5565 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
2 | ;; ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2014. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2015. 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: 5201 $ |
8 | $Revision: 5565 $ |
9 | 9 | ||
10 | 10 | ||
Line 526... | Line 526... | ||
526 | push ecx |
526 | push ecx |
527 | ;-------------------------------------- |
527 | ;-------------------------------------- |
528 | align 4 |
528 | align 4 |
529 | @@: |
529 | @@: |
530 | mov edi, ebx |
530 | mov edi, ebx |
531 | add ebx, [_display.pitch] |
531 | add ebx, [_display.lfb_pitch] |
Line 532... | Line 532... | ||
532 | 532 | ||
533 | mov ecx, [esp] |
533 | mov ecx, [esp] |
534 | rep movsb |
534 | rep movsb |
535 | dec edx |
535 | dec edx |
Line 561... | Line 561... | ||
561 | mov esi, cur_saved_data |
561 | mov esi, cur_saved_data |
562 | ;-------------------------------------- |
562 | ;-------------------------------------- |
563 | align 4 |
563 | align 4 |
564 | @@: |
564 | @@: |
565 | mov edi, ebx |
565 | mov edi, ebx |
566 | add ebx, [_display.pitch] |
566 | add ebx, [_display.lfb_pitch] |
Line 567... | Line 567... | ||
567 | 567 | ||
568 | mov ecx, [cur.w] |
568 | mov ecx, [cur.w] |
569 | rep movsd |
569 | rep movsd |
570 | dec edx |
570 | dec edx |
Line 595... | Line 595... | ||
595 | mov esi, cur_saved_data |
595 | mov esi, cur_saved_data |
596 | ;-------------------------------------- |
596 | ;-------------------------------------- |
597 | align 4 |
597 | align 4 |
598 | @@: |
598 | @@: |
599 | mov edi, ebx |
599 | mov edi, ebx |
600 | add ebx, [_display.pitch] |
600 | add ebx, [_display.lfb_pitch] |
Line 601... | Line 601... | ||
601 | 601 | ||
602 | mov ecx, [cur.w] |
602 | mov ecx, [cur.w] |
603 | rep movsw |
603 | rep movsw |
604 | dec edx |
604 | dec edx |
Line 657... | Line 657... | ||
657 | mov [cur_saved_base], edx |
657 | mov [cur_saved_base], edx |
Line 658... | Line 658... | ||
658 | 658 | ||
659 | cmp ebx, [_display.width] |
659 | cmp ebx, [_display.width] |
660 | jb @F |
660 | jb @F |
661 | mov ebx, [_display.width] |
- | |
662 | dec ebx |
661 | mov ebx, [_display.width] |
663 | ;-------------------------------------- |
662 | ;-------------------------------------- |
664 | align 4 |
663 | align 4 |
665 | @@: |
664 | @@: |
666 | cmp edi, [_display.height] |
665 | cmp edi, [_display.height] |
667 | jb @F |
666 | jb @F |
668 | mov edi, [_display.height] |
- | |
669 | dec edi |
667 | mov edi, [_display.height] |
670 | ;-------------------------------------- |
668 | ;-------------------------------------- |
671 | align 4 |
669 | align 4 |
672 | @@: |
- | |
673 | mov [cur.right], ebx |
- | |
Line 674... | Line 670... | ||
674 | mov [cur.bottom], edi |
670 | @@: |
675 | 671 | ||
676 | sub ebx, [x] |
- | |
677 | sub edi, [y] |
- | |
678 | inc ebx |
672 | sub ebx, [x] |
679 | inc edi |
673 | sub edi, [y] |
Line 680... | Line 674... | ||
680 | sub ebx, [_dx] |
674 | sub ebx, [_dx] |
681 | sub edi, [_dy] |
675 | sub edi, [_dy] |
Line 688... | Line 682... | ||
688 | mov edi, cur_saved_data |
682 | mov edi, cur_saved_data |
689 | ;-------------------------------------- |
683 | ;-------------------------------------- |
690 | align 4 |
684 | align 4 |
691 | @@: |
685 | @@: |
692 | mov esi, edx |
686 | mov esi, edx |
693 | add edx, [_display.pitch] |
687 | add edx, [_display.lfb_pitch] |
694 | mov ecx, [cur.w] |
688 | mov ecx, [cur.w] |
695 | lea ecx, [ecx+ecx*2] |
689 | lea ecx, [ecx+ecx*2] |
696 | rep movsb |
690 | rep movsb |
697 | dec eax |
691 | dec eax |
698 | jnz @B |
692 | jnz @B |
Line 711... | Line 705... | ||
711 | .row: |
705 | .row: |
712 | mov ecx, [cur.w] |
706 | mov ecx, [cur.w] |
713 | mov esi, edx |
707 | mov esi, edx |
714 | mov edi, ebx |
708 | mov edi, ebx |
715 | add edx, 32*4 |
709 | add edx, 32*4 |
716 | add ebx, [_display.pitch] |
710 | add ebx, [_display.lfb_pitch] |
717 | ;-------------------------------------- |
711 | ;-------------------------------------- |
718 | align 4 |
712 | align 4 |
719 | .pix: |
713 | .pix: |
720 | lodsd |
714 | lodsd |
721 | test eax, 0xFF000000 |
715 | test eax, 0xFF000000 |
Line 777... | Line 771... | ||
777 | mov [cur_saved_base], edx |
771 | mov [cur_saved_base], edx |
Line 778... | Line 772... | ||
778 | 772 | ||
779 | cmp ebx, [_display.width] |
773 | cmp ebx, [_display.width] |
780 | jb @F |
774 | jb @F |
781 | mov ebx, [_display.width] |
- | |
782 | dec ebx |
775 | mov ebx, [_display.width] |
783 | ;-------------------------------------- |
776 | ;-------------------------------------- |
784 | align 4 |
777 | align 4 |
785 | @@: |
778 | @@: |
786 | cmp edi, [_display.height] |
779 | cmp edi, [_display.height] |
787 | jb @F |
780 | jb @F |
788 | mov edi, [_display.height] |
- | |
789 | dec edi |
781 | mov edi, [_display.height] |
790 | ;-------------------------------------- |
782 | ;-------------------------------------- |
791 | align 4 |
783 | align 4 |
792 | @@: |
- | |
793 | mov [cur.right], ebx |
- | |
794 | mov [cur.bottom], edi |
- | |
795 | 784 | @@: |
|
796 | sub ebx, [x] |
785 | sub ebx, [x] |
797 | sub edi, [y] |
- | |
798 | inc ebx |
- | |
799 | inc edi |
786 | sub edi, [y] |
800 | sub ebx, [_dx] |
787 | sub ebx, [_dx] |
Line 801... | Line 788... | ||
801 | sub edi, [_dy] |
788 | sub edi, [_dy] |
802 | 789 | ||
Line 808... | Line 795... | ||
808 | mov edi, cur_saved_data |
795 | mov edi, cur_saved_data |
809 | ;-------------------------------------- |
796 | ;-------------------------------------- |
810 | align 4 |
797 | align 4 |
811 | @@: |
798 | @@: |
812 | mov esi, edx |
799 | mov esi, edx |
813 | add edx, [_display.pitch] |
800 | add edx, [_display.lfb_pitch] |
814 | mov ecx, [cur.w] |
801 | mov ecx, [cur.w] |
815 | rep movsd |
802 | rep movsd |
816 | dec eax |
803 | dec eax |
817 | jnz @B |
804 | jnz @B |
Line 830... | Line 817... | ||
830 | .row: |
817 | .row: |
831 | mov ecx, [cur.w] |
818 | mov ecx, [cur.w] |
832 | mov esi, edx |
819 | mov esi, edx |
833 | mov edi, ebx |
820 | mov edi, ebx |
834 | add edx, 32*4 |
821 | add edx, 32*4 |
835 | add ebx, [_display.pitch] |
822 | add ebx, [_display.lfb_pitch] |
836 | ;-------------------------------------- |
823 | ;-------------------------------------- |
837 | align 4 |
824 | align 4 |
838 | .pix: |
825 | .pix: |
839 | lodsd |
826 | lodsd |
840 | test eax, 0xFF000000 |
827 | test eax, 0xFF000000 |
Line 891... | Line 878... | ||
891 | ; mul dword [BytesPerScanLine] |
878 | ; mul dword [BytesPerScanLine] |
892 | mov eax, [BPSLine_calc_area+eax*4] |
879 | mov eax, [BPSLine_calc_area+eax*4] |
893 | lea edx, [LFB_BASE+eax+ecx*2] |
880 | lea edx, [LFB_BASE+eax+ecx*2] |
894 | mov [cur_saved_base], edx |
881 | mov [cur_saved_base], edx |
Line 895... | Line 882... | ||
895 | 882 | ||
896 | cmp ebx, [Screen_Max_X] |
883 | cmp ebx, [_display.width] |
897 | jbe @F |
884 | jb @F |
898 | mov ebx, [Screen_Max_X] |
885 | mov ebx, [_display.width] |
899 | ;-------------------------------------- |
886 | ;-------------------------------------- |
900 | align 4 |
887 | align 4 |
901 | @@: |
888 | @@: |
902 | cmp edi, [Screen_Max_Y] |
889 | cmp edi, [_display.height] |
903 | jbe @F |
890 | jb @F |
904 | mov edi, [Screen_Max_Y] |
891 | mov edi, [_display.height] |
905 | ;-------------------------------------- |
892 | ;-------------------------------------- |
906 | align 4 |
893 | align 4 |
907 | @@: |
- | |
908 | mov [cur.right], ebx |
- | |
909 | mov [cur.bottom], edi |
- | |
910 | 894 | @@: |
|
911 | sub ebx, [x] |
895 | sub ebx, [x] |
912 | sub edi, [y] |
- | |
913 | inc ebx |
- | |
914 | inc edi |
896 | sub edi, [y] |
915 | sub ebx, [_dx] |
897 | sub ebx, [_dx] |
Line 916... | Line 898... | ||
916 | sub edi, [_dy] |
898 | sub edi, [_dy] |
917 | 899 | ||
Line 923... | Line 905... | ||
923 | mov edi, cur_saved_data |
905 | mov edi, cur_saved_data |
924 | ;-------------------------------------- |
906 | ;-------------------------------------- |
925 | align 4 |
907 | align 4 |
926 | @@: |
908 | @@: |
927 | mov esi, edx |
909 | mov esi, edx |
928 | add edx, [_display.pitch] |
910 | add edx, [_display.lfb_pitch] |
929 | mov ecx, [cur.w] |
911 | mov ecx, [cur.w] |
Line 930... | Line 912... | ||
930 | 912 | ||
931 | rep movsw |
913 | rep movsw |
932 | dec eax |
914 | dec eax |
Line 946... | Line 928... | ||
946 | .row: |
928 | .row: |
947 | mov ecx, [cur.w] |
929 | mov ecx, [cur.w] |
948 | mov esi, edx |
930 | mov esi, edx |
949 | mov edi, ebx |
931 | mov edi, ebx |
950 | add edx, 32*4 |
932 | add edx, 32*4 |
951 | add ebx, [_display.pitch] |
933 | add ebx, [_display.lfb_pitch] |
952 | ;-------------------------------------- |
934 | ;-------------------------------------- |
953 | align 4 |
935 | align 4 |
954 | .pix: |
936 | .pix: |
955 | lodsd |
937 | lodsd |
956 | test eax, 0xFF000000 |
938 | test eax, 0xFF000000 |