Changeset 63627 in vbox for trunk/src/VBox/Devices/Graphics/BIOS
- Timestamp:
- Aug 24, 2016 1:42:38 PM (8 years ago)
- Location:
- trunk/src/VBox/Devices/Graphics/BIOS
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.asm
r63625 r63627 1525 1525 times 123 db 0 1526 1526 1527 section _TEXT progbits vstart=0xa00 align=1 ; size=0x31 7b class=CODE group=AUTO1527 section _TEXT progbits vstart=0xa00 align=1 ; size=0x316b class=CODE group=AUTO 1528 1528 set_int_vector_: ; 0xc0a00 LB 0x1b 1529 1529 push bx ; 53 … … 6489 6489 mov dx, word [bp+00ch] ; 8b 56 0c 6490 6490 lea ax, [bp+012h] ; 8d 46 12 6491 call 03 906h ; e8 5a 036491 call 038f6h ; e8 4a 03 6492 6492 jmp short 035d1h ; eb 23 6493 6493 jmp short 035cch ; eb 1c … … 6498 6498 mov dx, word [bp+010h] ; 8b 56 10 6499 6499 lea ax, [bp+012h] ; 8d 46 12 6500 call 03a efh ; e8 2c 056500 call 03adfh ; e8 1c 05 6501 6501 jmp short 035d1h ; eb 0c 6502 6502 mov word [bp+012h], 00100h ; c7 46 12 00 01 … … 6779 6779 pop bp ; 5d 6780 6780 retn ; c3 6781 vbe_biosfn_return_mode_information_: ; 0xc3839 LB 0x cd6781 vbe_biosfn_return_mode_information_: ; 0xc3839 LB 0xbd 6782 6782 push bp ; 55 6783 6783 mov bp, sp ; 89 e5 6784 6784 push si ; 56 6785 6785 push di ; 57 6786 sub sp, strict byte 00006h ; 83 ec 06 6786 push ax ; 50 6787 push ax ; 50 6787 6788 push ax ; 50 6788 6789 mov ax, dx ; 89 d0 … … 6790 6791 mov word [bp-006h], cx ; 89 4e fa 6791 6792 test dh, 040h ; f6 c6 40 6792 je short 0385 3h ; 74 056793 je short 03852h ; 74 05 6793 6794 mov dx, strict word 00001h ; ba 01 00 6794 jmp short 0385 5h ; eb 026795 jmp short 03854h ; eb 02 6795 6796 xor dx, dx ; 31 d2 6796 mov word [bp-00ah], dx ; 89 56 f66797 6797 and ah, 001h ; 80 e4 01 6798 call 036b5h ; e8 5 7fe6798 call 036b5h ; e8 5b fe 6799 6799 mov word [bp-008h], ax ; 89 46 f8 6800 6800 test ax, ax ; 85 c0 6801 je short 0389 bh ; 74 366801 je short 03897h ; 74 36 6802 6802 mov cx, 00100h ; b9 00 01 6803 6803 xor ax, ax ; 31 c0 … … 6805 6805 mov es, si ; 8e c6 6806 6806 cld ; fc 6807 jcxz 0387 4h ; e3 026807 jcxz 03870h ; e3 02 6808 6808 rep stosb ; f3 aa 6809 6809 xor cx, cx ; 31 c9 6810 jmp short 0387 dh ; eb 056810 jmp short 03879h ; eb 05 6811 6811 cmp cx, strict byte 00042h ; 83 f9 42 6812 jnc short 0389 dh ; 73 206812 jnc short 03899h ; 73 20 6813 6813 mov dx, word [bp-008h] ; 8b 56 f8 6814 6814 inc dx ; 42 … … 6816 6816 add dx, cx ; 01 ca 6817 6817 mov ax, 003b6h ; b8 b6 03 6818 call 03647h ; e8 bdfd6818 call 03647h ; e8 c1 fd 6819 6819 mov bl, al ; 88 c3 6820 6820 xor bh, bh ; 30 ff … … 6822 6822 add dx, cx ; 01 ca 6823 6823 mov ax, si ; 89 f0 6824 call 03173h ; e8 d bf86825 inc cx ; 41 6826 jmp short 0387 8h ; eb dd6827 jmp short 038 f4h ; eb 576824 call 03173h ; e8 df f8 6825 inc cx ; 41 6826 jmp short 03874h ; eb dd 6827 jmp short 038e4h ; eb 4b 6828 6828 mov dx, word [bp-006h] ; 8b 56 fa 6829 6829 inc dx ; 42 6830 6830 inc dx ; 42 6831 6831 mov ax, si ; 89 f0 6832 call 03165h ; e8 bef86832 call 03165h ; e8 c2 f8 6833 6833 test AL, strict byte 001h ; a8 01 6834 je short 038c 7h ; 74 1c6834 je short 038c3h ; 74 1c 6835 6835 mov dx, word [bp-006h] ; 8b 56 fa 6836 6836 add dx, strict byte 0000ch ; 83 c2 0c 6837 6837 mov bx, 00629h ; bb 29 06 6838 6838 mov ax, si ; 89 f0 6839 call 0318fh ; e8 d 6f86839 call 0318fh ; e8 da f8 6840 6840 mov dx, word [bp-006h] ; 8b 56 fa 6841 6841 add dx, strict byte 0000eh ; 83 c2 0e 6842 6842 mov bx, 0c000h ; bb 00 c0 6843 6843 mov ax, si ; 89 f0 6844 call 0318fh ; e8 c 8f86844 call 0318fh ; e8 cc f8 6845 6845 mov ax, strict word 0000bh ; b8 0b 00 6846 6846 mov dx, 001ceh ; ba ce 01 6847 call 00570h ; e8 a0 cc 6848 mov cx, word [bp-006h] ; 8b 4e fa 6849 add cx, strict byte 0002ah ; 83 c1 2a 6850 cmp word [bp-00ah], strict byte 00000h ; 83 7e f6 00 6851 je short 038e6h ; 74 0a 6847 call 00570h ; e8 a4 cc 6852 6848 mov dx, 001cfh ; ba cf 01 6853 call 00577h ; e8 95 cc 6854 mov bx, ax ; 89 c3 6855 jmp short 038e8h ; eb 02 6856 xor bx, bx ; 31 db 6857 mov dx, cx ; 89 ca 6858 mov ax, si ; 89 f0 6859 call 0318fh ; e8 a0 f8 6849 call 00577h ; e8 a5 cc 6850 mov dx, word [bp-006h] ; 8b 56 fa 6851 add dx, strict byte 0002ah ; 83 c2 2a 6852 mov bx, ax ; 89 c3 6853 mov ax, si ; 89 f0 6854 call 0318fh ; e8 b0 f8 6860 6855 mov ax, strict word 0004fh ; b8 4f 00 6861 jmp short 038 f7h ; eb 036856 jmp short 038e7h ; eb 03 6862 6857 mov ax, 00100h ; b8 00 01 6863 6858 push SS ; 16 6864 6859 pop ES ; 07 6865 mov bx, word [bp-00 ch] ; 8b 5e f46860 mov bx, word [bp-00ah] ; 8b 5e f6 6866 6861 mov word [es:bx], ax ; 26 89 07 6867 6862 lea sp, [bp-004h] ; 8d 66 fc … … 6870 6865 pop bp ; 5d 6871 6866 retn ; c3 6872 vbe_biosfn_set_mode_: ; 0xc3 906 LB 0xeb6867 vbe_biosfn_set_mode_: ; 0xc38f6 LB 0xeb 6873 6868 push bp ; 55 6874 6869 mov bp, sp ; 89 e5 … … 6879 6874 mov word [bp-00ah], dx ; 89 56 f6 6880 6875 test byte [bp-009h], 040h ; f6 46 f7 40 6881 je short 039 1eh ; 74 056876 je short 0390eh ; 74 05 6882 6877 mov ax, strict word 00001h ; b8 01 00 6883 jmp short 039 20h ; eb 026878 jmp short 03910h ; eb 02 6884 6879 xor ax, ax ; 31 c0 6885 6880 mov dx, ax ; 89 c2 6886 6881 test ax, ax ; 85 c0 6887 je short 039 29h ; 74 036882 je short 03919h ; 74 03 6888 6883 mov ax, strict word 00040h ; b8 40 00 6889 6884 mov byte [bp-006h], al ; 88 46 fa 6890 6885 test byte [bp-009h], 080h ; f6 46 f7 80 6891 je short 039 37h ; 74 056886 je short 03927h ; 74 05 6892 6887 mov ax, 00080h ; b8 80 00 6893 jmp short 039 39h ; eb 026888 jmp short 03929h ; eb 02 6894 6889 xor ax, ax ; 31 c0 6895 6890 mov byte [bp-008h], al ; 88 46 f8 6896 6891 and byte [bp-009h], 001h ; 80 66 f7 01 6897 6892 cmp word [bp-00ah], 00100h ; 81 7e f6 00 01 6898 jnc short 039 5ah ; 73 136893 jnc short 0394ah ; 73 13 6899 6894 xor ax, ax ; 31 c0 6900 call 005ddh ; e8 91 cc6895 call 005ddh ; e8 a1 cc 6901 6896 mov al, byte [bp-00ah] ; 8a 46 f6 6902 6897 xor ah, ah ; 30 e4 6903 call 0101ch ; e8 c8 d66898 call 0101ch ; e8 d8 d6 6904 6899 mov ax, strict word 0004fh ; b8 4f 00 6905 jmp near 039 e7h ; e9 8d 006900 jmp near 039d7h ; e9 8d 00 6906 6901 mov ax, word [bp-00ah] ; 8b 46 f6 6907 call 036b5h ; e8 55 fd6902 call 036b5h ; e8 65 fd 6908 6903 mov bx, ax ; 89 c3 6909 6904 test ax, ax ; 85 c0 6910 jne short 039 69h ; 75 036911 jmp near 039 e4h ; e9 7b 006905 jne short 03959h ; 75 03 6906 jmp near 039d4h ; e9 7b 00 6912 6907 lea dx, [bx+014h] ; 8d 57 14 6913 6908 mov ax, 003b6h ; b8 b6 03 6914 call 03635h ; e8 c3 fc6909 call 03635h ; e8 d3 fc 6915 6910 mov cx, ax ; 89 c1 6916 6911 lea dx, [bx+016h] ; 8d 57 16 6917 6912 mov ax, 003b6h ; b8 b6 03 6918 call 03635h ; e8 b8 fc6913 call 03635h ; e8 c8 fc 6919 6914 mov di, ax ; 89 c7 6920 6915 lea dx, [bx+01bh] ; 8d 57 1b 6921 6916 mov ax, 003b6h ; b8 b6 03 6922 call 03647h ; e8 bf fc6917 call 03647h ; e8 cf fc 6923 6918 mov bl, al ; 88 c3 6924 6919 mov dl, al ; 88 c2 6925 6920 xor ax, ax ; 31 c0 6926 call 005ddh ; e8 4c cc6921 call 005ddh ; e8 5c cc 6927 6922 cmp bl, 004h ; 80 fb 04 6928 jne short 039 9ch ; 75 066923 jne short 0398ch ; 75 06 6929 6924 mov ax, strict word 0006ah ; b8 6a 00 6930 call 0101ch ; e8 80 d66925 call 0101ch ; e8 90 d6 6931 6926 mov al, dl ; 88 d0 6932 6927 xor ah, ah ; 30 e4 6933 call 03616h ; e8 73 fc6928 call 03616h ; e8 83 fc 6934 6929 mov ax, cx ; 89 c8 6935 call 035d8h ; e8 30 fc6930 call 035d8h ; e8 40 fc 6936 6931 mov ax, di ; 89 f8 6937 call 035f7h ; e8 4a fc6932 call 035f7h ; e8 5a fc 6938 6933 xor ax, ax ; 31 c0 6939 call 00603h ; e8 51 cc6934 call 00603h ; e8 61 cc 6940 6935 mov al, byte [bp-008h] ; 8a 46 f8 6941 6936 or AL, strict byte 001h ; 0c 01 … … 6943 6938 mov dl, byte [bp-006h] ; 8a 56 fa 6944 6939 or al, dl ; 08 d0 6945 call 005ddh ; e8 1c cc6946 call 0070dh ; e8 49 cd6940 call 005ddh ; e8 2c cc 6941 call 0070dh ; e8 59 cd 6947 6942 mov bx, word [bp-00ah] ; 8b 5e f6 6948 6943 mov dx, 000bah ; ba ba 00 6949 6944 mov ax, strict word 00040h ; b8 40 00 6950 call 0318fh ; e8 bf f76945 call 0318fh ; e8 cf f7 6951 6946 mov bl, byte [bp-008h] ; 8a 5e f8 6952 6947 or bl, 060h ; 80 cb 60 … … 6954 6949 mov dx, 00087h ; ba 87 00 6955 6950 mov ax, strict word 00040h ; b8 40 00 6956 call 03173h ; e8 92 f76957 jmp near 039 54h ; e9 70 ff6951 call 03173h ; e8 a2 f7 6952 jmp near 03944h ; e9 70 ff 6958 6953 mov ax, 00100h ; b8 00 01 6959 6954 mov word [ss:si], ax ; 36 89 04 … … 6963 6958 pop bp ; 5d 6964 6959 retn ; c3 6965 vbe_biosfn_read_video_state_size_: ; 0xc39 f1 LB 0x86960 vbe_biosfn_read_video_state_size_: ; 0xc39e1 LB 0x8 6966 6961 push bp ; 55 6967 6962 mov bp, sp ; 89 e5 … … 6969 6964 pop bp ; 5d 6970 6965 retn ; c3 6971 vbe_biosfn_save_video_state_: ; 0xc39 f9 LB 0x5b6966 vbe_biosfn_save_video_state_: ; 0xc39e9 LB 0x5b 6972 6967 push bp ; 55 6973 6968 mov bp, sp ; 89 e5 … … 6988 6983 mov dx, cx ; 89 ca 6989 6984 mov ax, di ; 89 f8 6990 call 0318fh ; e8 73 f76985 call 0318fh ; e8 83 f7 6991 6986 inc cx ; 41 6992 6987 inc cx ; 41 6993 6988 test byte [bp-00ah], 001h ; f6 46 f6 01 6994 je short 03a 4bh ; 74 276989 je short 03a3bh ; 74 27 6995 6990 mov si, strict word 00001h ; be 01 00 6996 jmp short 03a 2eh ; eb 056991 jmp short 03a1eh ; eb 05 6997 6992 cmp si, strict byte 00009h ; 83 fe 09 6998 jnbe short 03a 4bh ; 77 1d6993 jnbe short 03a3bh ; 77 1d 6999 6994 cmp si, strict byte 00004h ; 83 fe 04 7000 je short 03a 48h ; 74 156995 je short 03a38h ; 74 15 7001 6996 mov ax, si ; 89 f0 7002 6997 mov dx, 001ceh ; ba ce 01 … … 7007 7002 mov dx, cx ; 89 ca 7008 7003 mov ax, di ; 89 f8 7009 call 0318fh ; e8 49 f77004 call 0318fh ; e8 59 f7 7010 7005 inc cx ; 41 7011 7006 inc cx ; 41 7012 7007 inc si ; 46 7013 jmp short 03a 29h ; eb de7008 jmp short 03a19h ; eb de 7014 7009 lea sp, [bp-008h] ; 8d 66 f8 7015 7010 pop di ; 5f … … 7019 7014 pop bp ; 5d 7020 7015 retn ; c3 7021 vbe_biosfn_restore_video_state_: ; 0xc3a 54 LB 0x9b7016 vbe_biosfn_restore_video_state_: ; 0xc3a44 LB 0x9b 7022 7017 push bp ; 55 7023 7018 mov bp, sp ; 89 e5 … … 7028 7023 mov cx, ax ; 89 c1 7029 7024 mov bx, dx ; 89 d3 7030 call 03181h ; e8 1f f77025 call 03181h ; e8 2f f7 7031 7026 mov word [bp-008h], ax ; 89 46 f8 7032 7027 inc bx ; 43 7033 7028 inc bx ; 43 7034 7029 test byte [bp-008h], 001h ; f6 46 f8 01 7035 jne short 03a 7dh ; 75 107030 jne short 03a6dh ; 75 10 7036 7031 mov ax, strict word 00004h ; b8 04 00 7037 7032 mov dx, 001ceh ; ba ce 01 … … 7040 7035 mov dx, 001cfh ; ba cf 01 7041 7036 out DX, ax ; ef 7042 jmp short 03a e7h ; eb 6a7037 jmp short 03ad7h ; eb 6a 7043 7038 mov ax, strict word 00001h ; b8 01 00 7044 7039 mov dx, 001ceh ; ba ce 01 … … 7046 7041 mov dx, bx ; 89 da 7047 7042 mov ax, cx ; 89 c8 7048 call 03181h ; e8 f6 f67043 call 03181h ; e8 06 f7 7049 7044 mov dx, 001cfh ; ba cf 01 7050 7045 out DX, ax ; ef … … 7056 7051 mov dx, bx ; 89 da 7057 7052 mov ax, cx ; 89 c8 7058 call 03181h ; e8 e2 f67053 call 03181h ; e8 f2 f6 7059 7054 mov dx, 001cfh ; ba cf 01 7060 7055 out DX, ax ; ef … … 7066 7061 mov dx, bx ; 89 da 7067 7062 mov ax, cx ; 89 c8 7068 call 03181h ; e8 ce f67063 call 03181h ; e8 de f6 7069 7064 mov dx, 001cfh ; ba cf 01 7070 7065 out DX, ax ; ef … … 7078 7073 out DX, ax ; ef 7079 7074 mov si, strict word 00005h ; be 05 00 7080 jmp short 03a d1h ; eb 057075 jmp short 03ac1h ; eb 05 7081 7076 cmp si, strict byte 00009h ; 83 fe 09 7082 jnbe short 03a e7h ; 77 167077 jnbe short 03ad7h ; 77 16 7083 7078 mov ax, si ; 89 f0 7084 7079 mov dx, 001ceh ; ba ce 01 … … 7086 7081 mov dx, bx ; 89 da 7087 7082 mov ax, cx ; 89 c8 7088 call 03181h ; e8 a3 f67083 call 03181h ; e8 b3 f6 7089 7084 mov dx, 001cfh ; ba cf 01 7090 7085 out DX, ax ; ef … … 7092 7087 inc bx ; 43 7093 7088 inc si ; 46 7094 jmp short 03a cch ; eb e57089 jmp short 03abch ; eb e5 7095 7090 lea sp, [bp-006h] ; 8d 66 fa 7096 7091 pop si ; 5e … … 7099 7094 pop bp ; 5d 7100 7095 retn ; c3 7101 vbe_biosfn_save_restore_state_: ; 0xc3a ef LB 0x8c7096 vbe_biosfn_save_restore_state_: ; 0xc3adf LB 0x8c 7102 7097 push bp ; 55 7103 7098 mov bp, sp ; 89 e5 … … 7112 7107 xor ah, ah ; 30 e4 7113 7108 cmp ax, strict word 00002h ; 3d 02 00 7114 je short 03b 4eh ; 74 457109 je short 03b3eh ; 74 45 7115 7110 cmp ax, strict word 00001h ; 3d 01 00 7116 je short 03b 32h ; 74 247111 je short 03b22h ; 74 24 7117 7112 test ax, ax ; 85 c0 7118 jne short 03b 6ah ; 75 587113 jne short 03b5ah ; 75 58 7119 7114 mov ax, word [bp-006h] ; 8b 46 fa 7120 call 02a51h ; e8 39 ef7115 call 02a51h ; e8 49 ef 7121 7116 mov cx, ax ; 89 c1 7122 7117 test byte [bp-006h], 008h ; f6 46 fa 08 7123 je short 03b 25h ; 74 057124 call 039 f1h ; e8 ce fe7118 je short 03b15h ; 74 05 7119 call 039e1h ; e8 ce fe 7125 7120 add ax, cx ; 01 c8 7126 7121 add ax, strict word 0003fh ; 05 3f 00 … … 7129 7124 pop ES ; 07 7130 7125 mov word [es:bx], ax ; 26 89 07 7131 jmp short 03b 6dh ; eb 3b7126 jmp short 03b5dh ; eb 3b 7132 7127 push SS ; 16 7133 7128 pop ES ; 07 … … 7135 7130 mov dx, cx ; 89 ca 7136 7131 mov ax, word [bp-006h] ; 8b 46 fa 7137 call 02a86h ; e8 47 ef7132 call 02a86h ; e8 57 ef 7138 7133 test byte [bp-006h], 008h ; f6 46 fa 08 7139 je short 03b 6dh ; 74 287134 je short 03b5dh ; 74 28 7140 7135 mov dx, ax ; 89 c2 7141 7136 mov ax, cx ; 89 c8 7142 call 039 f9h ; e8 ad fe7143 jmp short 03b 6dh ; eb 1f7137 call 039e9h ; e8 ad fe 7138 jmp short 03b5dh ; eb 1f 7144 7139 push SS ; 16 7145 7140 pop ES ; 07 … … 7147 7142 mov dx, cx ; 89 ca 7148 7143 mov ax, word [bp-006h] ; 8b 46 fa 7149 call 02e07h ; e8 ac f27144 call 02e07h ; e8 bc f2 7150 7145 test byte [bp-006h], 008h ; f6 46 fa 08 7151 je short 03b 6dh ; 74 0c7146 je short 03b5dh ; 74 0c 7152 7147 mov dx, ax ; 89 c2 7153 7148 mov ax, cx ; 89 c8 7154 call 03a 54h ; e8 ec fe7155 jmp short 03b 6dh ; eb 037149 call 03a44h ; e8 ec fe 7150 jmp short 03b5dh ; eb 03 7156 7151 mov di, 00100h ; bf 00 01 7157 7152 push SS ; 16 … … 7164 7159 retn 00002h ; c2 02 00 7165 7160 7166 ; Padding 0x8 85 bytes at 0xc3b7b7167 times 21 81db 07161 ; Padding 0x895 bytes at 0xc3b6b 7162 times 2197 db 0 7168 7163 7169 7164 section VBE32 progbits vstart=0x4400 align=1 ; size=0x115 class=CODE group=AUTO … … 8253 8248 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h 8254 8249 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h 8255 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0 d0h8250 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07fh -
trunk/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.md5sum
r63625 r63627 1 af37cef32b59b58887a37fe686c86d2f*VBoxVgaBios286.rom1 8d91125af3fbd678849835b1667fb315 *VBoxVgaBios286.rom -
trunk/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.asm
r63625 r63627 1516 1516 times 110 db 0 1517 1517 1518 section _TEXT progbits vstart=0xa00 align=1 ; size=0x2f 67 class=CODE group=AUTO1518 section _TEXT progbits vstart=0xa00 align=1 ; size=0x2f57 class=CODE group=AUTO 1519 1519 set_int_vector_: ; 0xc0a00 LB 0x1a 1520 1520 push bx ; 53 … … 5972 5972 mov dx, word [bp+00ch] ; 8b 56 0c 5973 5973 lea ax, [bp+012h] ; 8d 46 12 5974 call 036 f4h ; e8 4d 035974 call 036e4h ; e8 3d 03 5975 5975 jmp short 033cah ; eb 21 5976 5976 lea ax, [bp+00ch] ; 8d 46 0c … … 5980 5980 mov dx, word [bp+010h] ; 8b 56 10 5981 5981 lea ax, [bp+012h] ; 8d 46 12 5982 call 038 dbh ; e8 1f 055982 call 038cbh ; e8 0f 05 5983 5983 jmp short 033cah ; eb 0c 5984 5984 mov word [bp+012h], 00100h ; c7 46 12 00 01 … … 6261 6261 pop bp ; 5d 6262 6262 retn ; c3 6263 vbe_biosfn_return_mode_information_: ; 0xc362c LB 0x c86263 vbe_biosfn_return_mode_information_: ; 0xc362c LB 0xb8 6264 6264 push bp ; 55 6265 6265 mov bp, sp ; 89 e5 6266 6266 push si ; 56 6267 6267 push di ; 57 6268 sub sp, strict byte 00006h ; 83 ec 06 6268 push ax ; 50 6269 push ax ; 50 6269 6270 push ax ; 50 6270 6271 mov ax, dx ; 89 d0 … … 6275 6276 ; setne dl ; 0f 95 c2 6276 6277 xor dh, dh ; 30 f6 6277 mov word [bp-008h], dx ; 89 56 f86278 6278 and ah, 001h ; 80 e4 01 6279 call 034aeh ; e8 6 1fe6280 mov word [bp-00 ah], ax ; 89 46 f66279 call 034aeh ; e8 65 fe 6280 mov word [bp-008h], ax ; 89 46 f8 6281 6281 test ax, ax ; 85 c0 6282 je near 036 e2h ; 0f 84 8c006282 je near 036d2h ; 0f 84 80 00 6283 6283 mov cx, 00100h ; b9 00 01 6284 6284 xor ax, ax ; 31 c0 … … 6286 6286 mov es, bx ; 8e c3 6287 6287 cld ; fc 6288 jcxz 0366 5h ; e3 026288 jcxz 03661h ; e3 02 6289 6289 rep stosb ; f3 aa 6290 6290 xor cx, cx ; 31 c9 6291 jmp short 0366 eh ; eb 056291 jmp short 0366ah ; eb 05 6292 6292 cmp cx, strict byte 00042h ; 83 f9 42 6293 jnc short 0368 bh ; 73 1d6294 mov dx, word [bp-00 ah] ; 8b 56 f66293 jnc short 03687h ; 73 1d 6294 mov dx, word [bp-008h] ; 8b 56 f8 6295 6295 inc dx ; 42 6296 6296 inc dx ; 42 6297 6297 add dx, cx ; 01 ca 6298 6298 mov ax, 003b6h ; b8 b6 03 6299 call 03440h ; e8 c 5fd6299 call 03440h ; e8 c9 fd 6300 6300 movzx bx, al ; 0f b6 d8 6301 6301 mov dx, word [bp-006h] ; 8b 56 fa 6302 6302 add dx, cx ; 01 ca 6303 6303 mov ax, si ; 89 f0 6304 call 02f4ch ; e8 c 4f86305 inc cx ; 41 6306 jmp short 0366 9h ; eb de6304 call 02f4ch ; e8 c8 f8 6305 inc cx ; 41 6306 jmp short 03665h ; eb de 6307 6307 mov dx, word [bp-006h] ; 8b 56 fa 6308 6308 inc dx ; 42 6309 6309 inc dx ; 42 6310 6310 mov ax, si ; 89 f0 6311 call 02f3eh ; e8 a 9f86311 call 02f3eh ; e8 ad f8 6312 6312 test AL, strict byte 001h ; a8 01 6313 je short 036b 5h ; 74 1c6313 je short 036b1h ; 74 1c 6314 6314 mov dx, word [bp-006h] ; 8b 56 fa 6315 6315 add dx, strict byte 0000ch ; 83 c2 0c 6316 6316 mov bx, 00629h ; bb 29 06 6317 6317 mov ax, si ; 89 f0 6318 call 02f68h ; e8 c 1f86318 call 02f68h ; e8 c5 f8 6319 6319 mov dx, word [bp-006h] ; 8b 56 fa 6320 6320 add dx, strict byte 0000eh ; 83 c2 0e 6321 6321 mov bx, 0c000h ; bb 00 c0 6322 6322 mov ax, si ; 89 f0 6323 call 02f68h ; e8 b 3f86323 call 02f68h ; e8 b7 f8 6324 6324 mov ax, strict word 0000bh ; b8 0b 00 6325 6325 mov dx, 001ceh ; ba ce 01 6326 call 00570h ; e8 b2 ce 6327 mov cx, word [bp-006h] ; 8b 4e fa 6328 add cx, strict byte 0002ah ; 83 c1 2a 6329 cmp word [bp-008h], strict byte 00000h ; 83 7e f8 00 6330 je short 036d4h ; 74 0a 6326 call 00570h ; e8 b6 ce 6331 6327 mov dx, 001cfh ; ba cf 01 6332 call 00577h ; e8 a7 ce 6328 call 00577h ; e8 b7 ce 6329 mov dx, word [bp-006h] ; 8b 56 fa 6330 add dx, strict byte 0002ah ; 83 c2 2a 6333 6331 mov bx, ax ; 89 c3 6334 jmp short 036d6h ; eb 02 6335 xor bx, bx ; 31 db 6336 mov dx, cx ; 89 ca 6337 mov ax, si ; 89 f0 6338 call 02f68h ; e8 8b f8 6332 mov ax, si ; 89 f0 6333 call 02f68h ; e8 9b f8 6339 6334 mov ax, strict word 0004fh ; b8 4f 00 6340 jmp short 036 e5h ; eb 036335 jmp short 036d5h ; eb 03 6341 6336 mov ax, 00100h ; b8 00 01 6342 6337 push SS ; 16 6343 6338 pop ES ; 07 6344 mov bx, word [bp-00 ch] ; 8b 5e f46339 mov bx, word [bp-00ah] ; 8b 5e f6 6345 6340 mov word [es:bx], ax ; 26 89 07 6346 6341 lea sp, [bp-004h] ; 8d 66 fc … … 6349 6344 pop bp ; 5d 6350 6345 retn ; c3 6351 vbe_biosfn_set_mode_: ; 0xc36 f4 LB 0xe96346 vbe_biosfn_set_mode_: ; 0xc36e4 LB 0xe9 6352 6347 push bp ; 55 6353 6348 mov bp, sp ; 89 e5 … … 6363 6358 mov ax, dx ; 89 d0 6364 6359 test dx, dx ; 85 d2 6365 je short 037 14h ; 74 036360 je short 03704h ; 74 03 6366 6361 mov dx, strict word 00040h ; ba 40 00 6367 6362 mov byte [bp-006h], dl ; 88 56 fa 6368 6363 test byte [bp-009h], 080h ; f6 46 f7 80 6369 je short 037 22h ; 74 056364 je short 03712h ; 74 05 6370 6365 mov dx, 00080h ; ba 80 00 6371 jmp short 037 24h ; eb 026366 jmp short 03714h ; eb 02 6372 6367 xor dx, dx ; 31 d2 6373 6368 mov byte [bp-008h], dl ; 88 56 f8 6374 6369 and byte [bp-009h], 001h ; 80 66 f7 01 6375 6370 cmp word [bp-00ah], 00100h ; 81 7e f6 00 01 6376 jnc short 037 44h ; 73 126371 jnc short 03734h ; 73 12 6377 6372 xor ax, ax ; 31 c0 6378 call 005ddh ; e8 a6 ce6373 call 005ddh ; e8 b6 ce 6379 6374 movzx ax, byte [bp-00ah] ; 0f b6 46 f6 6380 call 00fdch ; e8 9e d86375 call 00fdch ; e8 ae d8 6381 6376 mov ax, strict word 0004fh ; b8 4f 00 6382 jmp near 037 d3h ; e9 8f 006377 jmp near 037c3h ; e9 8f 00 6383 6378 mov dx, ax ; 89 c2 6384 6379 mov ax, word [bp-00ah] ; 8b 46 f6 6385 call 034aeh ; e8 62 fd6380 call 034aeh ; e8 72 fd 6386 6381 mov bx, ax ; 89 c3 6387 6382 test ax, ax ; 85 c0 6388 je near 037 d0h ; 0f 84 7c 006383 je near 037c0h ; 0f 84 7c 00 6389 6384 lea dx, [bx+014h] ; 8d 57 14 6390 6385 mov ax, 003b6h ; b8 b6 03 6391 call 0342eh ; e8 d1 fc6386 call 0342eh ; e8 e1 fc 6392 6387 mov cx, ax ; 89 c1 6393 6388 lea dx, [bx+016h] ; 8d 57 16 6394 6389 mov ax, 003b6h ; b8 b6 03 6395 call 0342eh ; e8 c6 fc6390 call 0342eh ; e8 d6 fc 6396 6391 mov di, ax ; 89 c7 6397 6392 lea dx, [bx+01bh] ; 8d 57 1b 6398 6393 mov ax, 003b6h ; b8 b6 03 6399 call 03440h ; e8 cd fc6394 call 03440h ; e8 dd fc 6400 6395 mov bl, al ; 88 c3 6401 6396 mov dl, al ; 88 c2 6402 6397 xor ax, ax ; 31 c0 6403 call 005ddh ; e8 61 ce6398 call 005ddh ; e8 71 ce 6404 6399 cmp bl, 004h ; 80 fb 04 6405 jne short 037 87h ; 75 066400 jne short 03777h ; 75 06 6406 6401 mov ax, strict word 0006ah ; b8 6a 00 6407 call 00fdch ; e8 55 d86402 call 00fdch ; e8 65 d8 6408 6403 movzx ax, dl ; 0f b6 c2 6409 call 0340fh ; e8 82 fc6404 call 0340fh ; e8 92 fc 6410 6405 mov ax, cx ; 89 c8 6411 call 033d1h ; e8 3f fc6406 call 033d1h ; e8 4f fc 6412 6407 mov ax, di ; 89 f8 6413 call 033f0h ; e8 59 fc6408 call 033f0h ; e8 69 fc 6414 6409 xor ax, ax ; 31 c0 6415 call 00603h ; e8 67 ce6410 call 00603h ; e8 77 ce 6416 6411 mov al, byte [bp-008h] ; 8a 46 f8 6417 6412 or AL, strict byte 001h ; 0c 01 … … 6419 6414 movzx ax, byte [bp-006h] ; 0f b6 46 fa 6420 6415 or ax, dx ; 09 d0 6421 call 005ddh ; e8 30 ce6422 call 0070dh ; e8 5d cf6416 call 005ddh ; e8 40 ce 6417 call 0070dh ; e8 6d cf 6423 6418 mov bx, word [bp-00ah] ; 8b 5e f6 6424 6419 mov dx, 000bah ; ba ba 00 6425 6420 mov ax, strict word 00040h ; b8 40 00 6426 call 02f68h ; e8 ac f76421 call 02f68h ; e8 bc f7 6427 6422 mov al, byte [bp-008h] ; 8a 46 f8 6428 6423 or AL, strict byte 060h ; 0c 60 … … 6430 6425 mov dx, 00087h ; ba 87 00 6431 6426 mov ax, strict word 00040h ; b8 40 00 6432 call 02f4ch ; e8 7f f76433 jmp near 037 3eh ; e9 6e ff6427 call 02f4ch ; e8 8f f7 6428 jmp near 0372eh ; e9 6e ff 6434 6429 mov ax, 00100h ; b8 00 01 6435 6430 mov word [ss:si], ax ; 36 89 04 … … 6439 6434 pop bp ; 5d 6440 6435 retn ; c3 6441 vbe_biosfn_read_video_state_size_: ; 0xc37 dd LB 0x86436 vbe_biosfn_read_video_state_size_: ; 0xc37cd LB 0x8 6442 6437 push bp ; 55 6443 6438 mov bp, sp ; 89 e5 … … 6445 6440 pop bp ; 5d 6446 6441 retn ; c3 6447 vbe_biosfn_save_video_state_: ; 0xc37 e5 LB 0x5b6442 vbe_biosfn_save_video_state_: ; 0xc37d5 LB 0x5b 6448 6443 push bp ; 55 6449 6444 mov bp, sp ; 89 e5 … … 6464 6459 mov dx, cx ; 89 ca 6465 6460 mov ax, di ; 89 f8 6466 call 02f68h ; e8 60 f76461 call 02f68h ; e8 70 f7 6467 6462 inc cx ; 41 6468 6463 inc cx ; 41 6469 6464 test byte [bp-00ah], 001h ; f6 46 f6 01 6470 je short 038 37h ; 74 276465 je short 03827h ; 74 27 6471 6466 mov si, strict word 00001h ; be 01 00 6472 jmp short 038 1ah ; eb 056467 jmp short 0380ah ; eb 05 6473 6468 cmp si, strict byte 00009h ; 83 fe 09 6474 jnbe short 038 37h ; 77 1d6469 jnbe short 03827h ; 77 1d 6475 6470 cmp si, strict byte 00004h ; 83 fe 04 6476 je short 038 34h ; 74 156471 je short 03824h ; 74 15 6477 6472 mov ax, si ; 89 f0 6478 6473 mov dx, 001ceh ; ba ce 01 … … 6483 6478 mov dx, cx ; 89 ca 6484 6479 mov ax, di ; 89 f8 6485 call 02f68h ; e8 36 f76480 call 02f68h ; e8 46 f7 6486 6481 inc cx ; 41 6487 6482 inc cx ; 41 6488 6483 inc si ; 46 6489 jmp short 038 15h ; eb de6484 jmp short 03805h ; eb de 6490 6485 lea sp, [bp-008h] ; 8d 66 f8 6491 6486 pop di ; 5f … … 6495 6490 pop bp ; 5d 6496 6491 retn ; c3 6497 vbe_biosfn_restore_video_state_: ; 0xc38 40 LB 0x9b6492 vbe_biosfn_restore_video_state_: ; 0xc3830 LB 0x9b 6498 6493 push bp ; 55 6499 6494 mov bp, sp ; 89 e5 … … 6504 6499 mov cx, ax ; 89 c1 6505 6500 mov bx, dx ; 89 d3 6506 call 02f5ah ; e8 0c f76501 call 02f5ah ; e8 1c f7 6507 6502 mov word [bp-008h], ax ; 89 46 f8 6508 6503 inc bx ; 43 6509 6504 inc bx ; 43 6510 6505 test byte [bp-008h], 001h ; f6 46 f8 01 6511 jne short 038 69h ; 75 106506 jne short 03859h ; 75 10 6512 6507 mov ax, strict word 00004h ; b8 04 00 6513 6508 mov dx, 001ceh ; ba ce 01 … … 6516 6511 mov dx, 001cfh ; ba cf 01 6517 6512 out DX, ax ; ef 6518 jmp short 038 d3h ; eb 6a6513 jmp short 038c3h ; eb 6a 6519 6514 mov ax, strict word 00001h ; b8 01 00 6520 6515 mov dx, 001ceh ; ba ce 01 … … 6522 6517 mov dx, bx ; 89 da 6523 6518 mov ax, cx ; 89 c8 6524 call 02f5ah ; e8 e3 f66519 call 02f5ah ; e8 f3 f6 6525 6520 mov dx, 001cfh ; ba cf 01 6526 6521 out DX, ax ; ef … … 6532 6527 mov dx, bx ; 89 da 6533 6528 mov ax, cx ; 89 c8 6534 call 02f5ah ; e8 cf f66529 call 02f5ah ; e8 df f6 6535 6530 mov dx, 001cfh ; ba cf 01 6536 6531 out DX, ax ; ef … … 6542 6537 mov dx, bx ; 89 da 6543 6538 mov ax, cx ; 89 c8 6544 call 02f5ah ; e8 bb f66539 call 02f5ah ; e8 cb f6 6545 6540 mov dx, 001cfh ; ba cf 01 6546 6541 out DX, ax ; ef … … 6554 6549 out DX, ax ; ef 6555 6550 mov si, strict word 00005h ; be 05 00 6556 jmp short 038 bdh ; eb 056551 jmp short 038adh ; eb 05 6557 6552 cmp si, strict byte 00009h ; 83 fe 09 6558 jnbe short 038 d3h ; 77 166553 jnbe short 038c3h ; 77 16 6559 6554 mov ax, si ; 89 f0 6560 6555 mov dx, 001ceh ; ba ce 01 … … 6562 6557 mov dx, bx ; 89 da 6563 6558 mov ax, cx ; 89 c8 6564 call 02f5ah ; e8 90 f66559 call 02f5ah ; e8 a0 f6 6565 6560 mov dx, 001cfh ; ba cf 01 6566 6561 out DX, ax ; ef … … 6568 6563 inc bx ; 43 6569 6564 inc si ; 46 6570 jmp short 038 b8h ; eb e56565 jmp short 038a8h ; eb e5 6571 6566 lea sp, [bp-006h] ; 8d 66 fa 6572 6567 pop si ; 5e … … 6575 6570 pop bp ; 5d 6576 6571 retn ; c3 6577 vbe_biosfn_save_restore_state_: ; 0xc38 db LB 0x8c6572 vbe_biosfn_save_restore_state_: ; 0xc38cb LB 0x8c 6578 6573 push bp ; 55 6579 6574 mov bp, sp ; 89 e5 … … 6588 6583 xor ah, ah ; 30 e4 6589 6584 cmp ax, strict word 00002h ; 3d 02 00 6590 je short 039 3ah ; 74 456585 je short 0392ah ; 74 45 6591 6586 cmp ax, strict word 00001h ; 3d 01 00 6592 je short 039 1eh ; 74 246587 je short 0390eh ; 74 24 6593 6588 test ax, ax ; 85 c0 6594 jne short 039 56h ; 75 586589 jne short 03946h ; 75 58 6595 6590 mov ax, word [bp-006h] ; 8b 46 fa 6596 call 02853h ; e8 4f ef6591 call 02853h ; e8 5f ef 6597 6592 mov cx, ax ; 89 c1 6598 6593 test byte [bp-006h], 008h ; f6 46 fa 08 6599 je short 039 11h ; 74 056600 call 037 ddh ; e8 ce fe6594 je short 03901h ; 74 05 6595 call 037cdh ; e8 ce fe 6601 6596 add ax, cx ; 01 c8 6602 6597 add ax, strict word 0003fh ; 05 3f 00 … … 6605 6600 pop ES ; 07 6606 6601 mov word [es:bx], ax ; 26 89 07 6607 jmp short 039 59h ; eb 3b6602 jmp short 03949h ; eb 3b 6608 6603 push SS ; 16 6609 6604 pop ES ; 07 … … 6611 6606 mov dx, cx ; 89 ca 6612 6607 mov ax, word [bp-006h] ; 8b 46 fa 6613 call 02888h ; e8 5d ef6608 call 02888h ; e8 6d ef 6614 6609 test byte [bp-006h], 008h ; f6 46 fa 08 6615 je short 039 59h ; 74 286610 je short 03949h ; 74 28 6616 6611 mov dx, ax ; 89 c2 6617 6612 mov ax, cx ; 89 c8 6618 call 037 e5h ; e8 ad fe6619 jmp short 039 59h ; eb 1f6613 call 037d5h ; e8 ad fe 6614 jmp short 03949h ; eb 1f 6620 6615 push SS ; 16 6621 6616 pop ES ; 07 … … 6623 6618 mov dx, cx ; 89 ca 6624 6619 mov ax, word [bp-006h] ; 8b 46 fa 6625 call 02bf1h ; e8 aa f26620 call 02bf1h ; e8 ba f2 6626 6621 test byte [bp-006h], 008h ; f6 46 fa 08 6627 je short 039 59h ; 74 0c6622 je short 03949h ; 74 0c 6628 6623 mov dx, ax ; 89 c2 6629 6624 mov ax, cx ; 89 c8 6630 call 038 40h ; e8 ec fe6631 jmp short 039 59h ; eb 036625 call 03830h ; e8 ec fe 6626 jmp short 03949h ; eb 03 6632 6627 mov di, 00100h ; bf 00 01 6633 6628 push SS ; 16 … … 6640 6635 retn 00002h ; c2 02 00 6641 6636 6642 ; Padding 0xa 99 bytes at 0xc39676643 times 27 13db 06637 ; Padding 0xaa9 bytes at 0xc3957 6638 times 2729 db 0 6644 6639 6645 6640 section VBE32 progbits vstart=0x4400 align=1 ; size=0x115 class=CODE group=AUTO … … 7729 7724 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h 7730 7725 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h 7731 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0 c4h7726 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 074h -
trunk/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.md5sum
r63625 r63627 1 60fac0ba6cf1ab0eb51a796d6c29e04d*VBoxVgaBios386.rom1 d85d3d2ccbf7d43eb62789921f0d3447 *VBoxVgaBios386.rom -
trunk/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.asm
r63625 r63627 1595 1595 times 32 db 0 1596 1596 1597 section _TEXT progbits vstart=0xa00 align=1 ; size=0x31 96 class=CODE group=AUTO1597 section _TEXT progbits vstart=0xa00 align=1 ; size=0x3186 class=CODE group=AUTO 1598 1598 set_int_vector_: ; 0xc0a00 LB 0x1c 1599 1599 push bx ; 53 … … 6629 6629 mov dx, word [bp+00ch] ; 8b 56 0c 6630 6630 lea ax, [bp+012h] ; 8d 46 12 6631 call 039 20h ; e8 5a 036631 call 03910h ; e8 4a 03 6632 6632 jmp short 035ebh ; eb 23 6633 6633 jmp short 035e6h ; eb 1c … … 6638 6638 mov dx, word [bp+010h] ; 8b 56 10 6639 6639 lea ax, [bp+012h] ; 8d 46 12 6640 call 03 b09h ; e8 2c 056640 call 03af9h ; e8 1c 05 6641 6641 jmp short 035ebh ; eb 0c 6642 6642 mov word [bp+012h], 00100h ; c7 46 12 00 01 … … 6919 6919 pop bp ; 5d 6920 6920 retn ; c3 6921 vbe_biosfn_return_mode_information_: ; 0xc3853 LB 0x cd6921 vbe_biosfn_return_mode_information_: ; 0xc3853 LB 0xbd 6922 6922 push bp ; 55 6923 6923 mov bp, sp ; 89 e5 6924 6924 push si ; 56 6925 6925 push di ; 57 6926 sub sp, strict byte 00006h ; 83 ec 06 6926 push ax ; 50 6927 push ax ; 50 6927 6928 push ax ; 50 6928 6929 mov ax, dx ; 89 d0 … … 6930 6931 mov word [bp-006h], cx ; 89 4e fa 6931 6932 test dh, 040h ; f6 c6 40 6932 je short 0386 dh ; 74 056933 je short 0386ch ; 74 05 6933 6934 mov dx, strict word 00001h ; ba 01 00 6934 jmp short 0386 fh ; eb 026935 jmp short 0386eh ; eb 02 6935 6936 xor dx, dx ; 31 d2 6936 mov word [bp-00ah], dx ; 89 56 f66937 6937 and ah, 001h ; 80 e4 01 6938 call 036cfh ; e8 5 7fe6938 call 036cfh ; e8 5b fe 6939 6939 mov word [bp-008h], ax ; 89 46 f8 6940 6940 test ax, ax ; 85 c0 6941 je short 038b 5h ; 74 366941 je short 038b1h ; 74 36 6942 6942 mov cx, 00100h ; b9 00 01 6943 6943 xor ax, ax ; 31 c0 … … 6945 6945 mov es, si ; 8e c6 6946 6946 cld ; fc 6947 jcxz 0388 eh ; e3 026947 jcxz 0388ah ; e3 02 6948 6948 rep stosb ; f3 aa 6949 6949 xor cx, cx ; 31 c9 6950 jmp short 0389 7h ; eb 056950 jmp short 03893h ; eb 05 6951 6951 cmp cx, strict byte 00042h ; 83 f9 42 6952 jnc short 038b 7h ; 73 206952 jnc short 038b3h ; 73 20 6953 6953 mov dx, word [bp-008h] ; 8b 56 f8 6954 6954 inc dx ; 42 … … 6956 6956 add dx, cx ; 01 ca 6957 6957 mov ax, 003b6h ; b8 b6 03 6958 call 03661h ; e8 bdfd6958 call 03661h ; e8 c1 fd 6959 6959 mov bl, al ; 88 c3 6960 6960 xor bh, bh ; 30 ff … … 6962 6962 add dx, cx ; 01 ca 6963 6963 mov ax, si ; 89 f0 6964 call 031a9h ; e8 f 7f86965 inc cx ; 41 6966 jmp short 038 92h ; eb dd6967 jmp short 03 90eh ; eb 576964 call 031a9h ; e8 fb f8 6965 inc cx ; 41 6966 jmp short 0388eh ; eb dd 6967 jmp short 038feh ; eb 4b 6968 6968 mov dx, word [bp-006h] ; 8b 56 fa 6969 6969 inc dx ; 42 6970 6970 inc dx ; 42 6971 6971 mov ax, si ; 89 f0 6972 call 0319bh ; e8 d af86972 call 0319bh ; e8 de f8 6973 6973 test AL, strict byte 001h ; a8 01 6974 je short 038 e1h ; 74 1c6974 je short 038ddh ; 74 1c 6975 6975 mov dx, word [bp-006h] ; 8b 56 fa 6976 6976 add dx, strict byte 0000ch ; 83 c2 0c 6977 6977 mov bx, 0065ch ; bb 5c 06 6978 6978 mov ax, si ; 89 f0 6979 call 031c5h ; e8 f 2f86979 call 031c5h ; e8 f6 f8 6980 6980 mov dx, word [bp-006h] ; 8b 56 fa 6981 6981 add dx, strict byte 0000eh ; 83 c2 0e 6982 6982 mov bx, 0c000h ; bb 00 c0 6983 6983 mov ax, si ; 89 f0 6984 call 031c5h ; e8 e 4f86984 call 031c5h ; e8 e8 f8 6985 6985 mov ax, strict word 0000bh ; b8 0b 00 6986 6986 mov dx, 001ceh ; ba ce 01 6987 call 005a0h ; e8 b6 cc 6988 mov cx, word [bp-006h] ; 8b 4e fa 6989 add cx, strict byte 0002ah ; 83 c1 2a 6990 cmp word [bp-00ah], strict byte 00000h ; 83 7e f6 00 6991 je short 03900h ; 74 0a 6987 call 005a0h ; e8 ba cc 6992 6988 mov dx, 001cfh ; ba cf 01 6993 call 005a7h ; e8 ab cc 6994 mov bx, ax ; 89 c3 6995 jmp short 03902h ; eb 02 6996 xor bx, bx ; 31 db 6997 mov dx, cx ; 89 ca 6989 call 005a7h ; e8 bb cc 6990 mov dx, word [bp-006h] ; 8b 56 fa 6991 add dx, strict byte 0002ah ; 83 c2 2a 6992 mov bx, ax ; 89 c3 6998 6993 mov ax, si ; 89 f0 6999 call 031c5h ; e8 bc f86994 call 031c5h ; e8 cc f8 7000 6995 mov ax, strict word 0004fh ; b8 4f 00 7001 jmp short 039 11h ; eb 036996 jmp short 03901h ; eb 03 7002 6997 mov ax, 00100h ; b8 00 01 7003 6998 push SS ; 16 7004 6999 pop ES ; 07 7005 mov bx, word [bp-00 ch] ; 8b 5e f47000 mov bx, word [bp-00ah] ; 8b 5e f6 7006 7001 mov word [es:bx], ax ; 26 89 07 7007 7002 lea sp, [bp-004h] ; 8d 66 fc … … 7010 7005 pop bp ; 5d 7011 7006 retn ; c3 7012 vbe_biosfn_set_mode_: ; 0xc39 20 LB 0xeb7007 vbe_biosfn_set_mode_: ; 0xc3910 LB 0xeb 7013 7008 push bp ; 55 7014 7009 mov bp, sp ; 89 e5 … … 7019 7014 mov word [bp-00ah], dx ; 89 56 f6 7020 7015 test byte [bp-009h], 040h ; f6 46 f7 40 7021 je short 039 38h ; 74 057016 je short 03928h ; 74 05 7022 7017 mov ax, strict word 00001h ; b8 01 00 7023 jmp short 039 3ah ; eb 027018 jmp short 0392ah ; eb 02 7024 7019 xor ax, ax ; 31 c0 7025 7020 mov dx, ax ; 89 c2 7026 7021 test ax, ax ; 85 c0 7027 je short 039 43h ; 74 037022 je short 03933h ; 74 03 7028 7023 mov ax, strict word 00040h ; b8 40 00 7029 7024 mov byte [bp-006h], al ; 88 46 fa 7030 7025 test byte [bp-009h], 080h ; f6 46 f7 80 7031 je short 039 51h ; 74 057026 je short 03941h ; 74 05 7032 7027 mov ax, 00080h ; b8 80 00 7033 jmp short 039 53h ; eb 027028 jmp short 03943h ; eb 02 7034 7029 xor ax, ax ; 31 c0 7035 7030 mov byte [bp-008h], al ; 88 46 f8 7036 7031 and byte [bp-009h], 001h ; 80 66 f7 01 7037 7032 cmp word [bp-00ah], 00100h ; 81 7e f6 00 01 7038 jnc short 039 74h ; 73 137033 jnc short 03964h ; 73 13 7039 7034 xor ax, ax ; 31 c0 7040 call 00610h ; e8 aa cc7035 call 00610h ; e8 ba cc 7041 7036 mov al, byte [bp-00ah] ; 8a 46 f6 7042 7037 xor ah, ah ; 30 e4 7043 call 01019h ; e8 ab d67038 call 01019h ; e8 bb d6 7044 7039 mov ax, strict word 0004fh ; b8 4f 00 7045 jmp near 03 a01h ; e9 8d 007040 jmp near 039f1h ; e9 8d 00 7046 7041 mov ax, word [bp-00ah] ; 8b 46 f6 7047 call 036cfh ; e8 55 fd7042 call 036cfh ; e8 65 fd 7048 7043 mov bx, ax ; 89 c3 7049 7044 test ax, ax ; 85 c0 7050 jne short 039 83h ; 75 037051 jmp near 039 feh ; e9 7b 007045 jne short 03973h ; 75 03 7046 jmp near 039eeh ; e9 7b 00 7052 7047 lea dx, [bx+014h] ; 8d 57 14 7053 7048 mov ax, 003b6h ; b8 b6 03 7054 call 0364fh ; e8 c3 fc7049 call 0364fh ; e8 d3 fc 7055 7050 mov cx, ax ; 89 c1 7056 7051 lea dx, [bx+016h] ; 8d 57 16 7057 7052 mov ax, 003b6h ; b8 b6 03 7058 call 0364fh ; e8 b8 fc7053 call 0364fh ; e8 c8 fc 7059 7054 mov di, ax ; 89 c7 7060 7055 lea dx, [bx+01bh] ; 8d 57 1b 7061 7056 mov ax, 003b6h ; b8 b6 03 7062 call 03661h ; e8 bf fc7057 call 03661h ; e8 cf fc 7063 7058 mov bl, al ; 88 c3 7064 7059 mov dl, al ; 88 c2 7065 7060 xor ax, ax ; 31 c0 7066 call 00610h ; e8 65 cc7061 call 00610h ; e8 75 cc 7067 7062 cmp bl, 004h ; 80 fb 04 7068 jne short 039 b6h ; 75 067063 jne short 039a6h ; 75 06 7069 7064 mov ax, strict word 0006ah ; b8 6a 00 7070 call 01019h ; e8 63 d67065 call 01019h ; e8 73 d6 7071 7066 mov al, dl ; 88 d0 7072 7067 xor ah, ah ; 30 e4 7073 call 03630h ; e8 73 fc7068 call 03630h ; e8 83 fc 7074 7069 mov ax, cx ; 89 c8 7075 call 035f2h ; e8 30 fc7070 call 035f2h ; e8 40 fc 7076 7071 mov ax, di ; 89 f8 7077 call 03611h ; e8 4a fc7072 call 03611h ; e8 5a fc 7078 7073 xor ax, ax ; 31 c0 7079 call 00636h ; e8 6a cc7074 call 00636h ; e8 7a cc 7080 7075 mov al, byte [bp-008h] ; 8a 46 f8 7081 7076 or AL, strict byte 001h ; 0c 01 … … 7083 7078 mov dl, byte [bp-006h] ; 8a 56 fa 7084 7079 or al, dl ; 08 d0 7085 call 00610h ; e8 35 cc7086 call 00743h ; e8 65 cd7080 call 00610h ; e8 45 cc 7081 call 00743h ; e8 75 cd 7087 7082 mov bx, word [bp-00ah] ; 8b 5e f6 7088 7083 mov dx, 000bah ; ba ba 00 7089 7084 mov ax, strict word 00040h ; b8 40 00 7090 call 031c5h ; e8 db f77085 call 031c5h ; e8 eb f7 7091 7086 mov bl, byte [bp-008h] ; 8a 5e f8 7092 7087 or bl, 060h ; 80 cb 60 … … 7094 7089 mov dx, 00087h ; ba 87 00 7095 7090 mov ax, strict word 00040h ; b8 40 00 7096 call 031a9h ; e8 ae f77097 jmp near 039 6eh ; e9 70 ff7091 call 031a9h ; e8 be f7 7092 jmp near 0395eh ; e9 70 ff 7098 7093 mov ax, 00100h ; b8 00 01 7099 7094 mov word [ss:si], ax ; 36 89 04 … … 7103 7098 pop bp ; 5d 7104 7099 retn ; c3 7105 vbe_biosfn_read_video_state_size_: ; 0xc3 a0b LB 0x87100 vbe_biosfn_read_video_state_size_: ; 0xc39fb LB 0x8 7106 7101 push bp ; 55 7107 7102 mov bp, sp ; 89 e5 … … 7109 7104 pop bp ; 5d 7110 7105 retn ; c3 7111 vbe_biosfn_save_video_state_: ; 0xc3a 13 LB 0x5b7106 vbe_biosfn_save_video_state_: ; 0xc3a03 LB 0x5b 7112 7107 push bp ; 55 7113 7108 mov bp, sp ; 89 e5 … … 7128 7123 mov dx, cx ; 89 ca 7129 7124 mov ax, di ; 89 f8 7130 call 031c5h ; e8 8f f77125 call 031c5h ; e8 9f f7 7131 7126 inc cx ; 41 7132 7127 inc cx ; 41 7133 7128 test byte [bp-00ah], 001h ; f6 46 f6 01 7134 je short 03a 65h ; 74 277129 je short 03a55h ; 74 27 7135 7130 mov si, strict word 00001h ; be 01 00 7136 jmp short 03a 48h ; eb 057131 jmp short 03a38h ; eb 05 7137 7132 cmp si, strict byte 00009h ; 83 fe 09 7138 jnbe short 03a 65h ; 77 1d7133 jnbe short 03a55h ; 77 1d 7139 7134 cmp si, strict byte 00004h ; 83 fe 04 7140 je short 03a 62h ; 74 157135 je short 03a52h ; 74 15 7141 7136 mov ax, si ; 89 f0 7142 7137 mov dx, 001ceh ; ba ce 01 … … 7147 7142 mov dx, cx ; 89 ca 7148 7143 mov ax, di ; 89 f8 7149 call 031c5h ; e8 65 f77144 call 031c5h ; e8 75 f7 7150 7145 inc cx ; 41 7151 7146 inc cx ; 41 7152 7147 inc si ; 46 7153 jmp short 03a 43h ; eb de7148 jmp short 03a33h ; eb de 7154 7149 lea sp, [bp-008h] ; 8d 66 f8 7155 7150 pop di ; 5f … … 7159 7154 pop bp ; 5d 7160 7155 retn ; c3 7161 vbe_biosfn_restore_video_state_: ; 0xc3a 6e LB 0x9b7156 vbe_biosfn_restore_video_state_: ; 0xc3a5e LB 0x9b 7162 7157 push bp ; 55 7163 7158 mov bp, sp ; 89 e5 … … 7168 7163 mov cx, ax ; 89 c1 7169 7164 mov bx, dx ; 89 d3 7170 call 031b7h ; e8 3b f77165 call 031b7h ; e8 4b f7 7171 7166 mov word [bp-008h], ax ; 89 46 f8 7172 7167 inc bx ; 43 7173 7168 inc bx ; 43 7174 7169 test byte [bp-008h], 001h ; f6 46 f8 01 7175 jne short 03a 97h ; 75 107170 jne short 03a87h ; 75 10 7176 7171 mov ax, strict word 00004h ; b8 04 00 7177 7172 mov dx, 001ceh ; ba ce 01 … … 7180 7175 mov dx, 001cfh ; ba cf 01 7181 7176 out DX, ax ; ef 7182 jmp short 03 b01h ; eb 6a7177 jmp short 03af1h ; eb 6a 7183 7178 mov ax, strict word 00001h ; b8 01 00 7184 7179 mov dx, 001ceh ; ba ce 01 … … 7186 7181 mov dx, bx ; 89 da 7187 7182 mov ax, cx ; 89 c8 7188 call 031b7h ; e8 12 f77183 call 031b7h ; e8 22 f7 7189 7184 mov dx, 001cfh ; ba cf 01 7190 7185 out DX, ax ; ef … … 7196 7191 mov dx, bx ; 89 da 7197 7192 mov ax, cx ; 89 c8 7198 call 031b7h ; e8 fe f67193 call 031b7h ; e8 0e f7 7199 7194 mov dx, 001cfh ; ba cf 01 7200 7195 out DX, ax ; ef … … 7206 7201 mov dx, bx ; 89 da 7207 7202 mov ax, cx ; 89 c8 7208 call 031b7h ; e8 ea f67203 call 031b7h ; e8 fa f6 7209 7204 mov dx, 001cfh ; ba cf 01 7210 7205 out DX, ax ; ef … … 7218 7213 out DX, ax ; ef 7219 7214 mov si, strict word 00005h ; be 05 00 7220 jmp short 03a ebh ; eb 057215 jmp short 03adbh ; eb 05 7221 7216 cmp si, strict byte 00009h ; 83 fe 09 7222 jnbe short 03 b01h ; 77 167217 jnbe short 03af1h ; 77 16 7223 7218 mov ax, si ; 89 f0 7224 7219 mov dx, 001ceh ; ba ce 01 … … 7226 7221 mov dx, bx ; 89 da 7227 7222 mov ax, cx ; 89 c8 7228 call 031b7h ; e8 bf f67223 call 031b7h ; e8 cf f6 7229 7224 mov dx, 001cfh ; ba cf 01 7230 7225 out DX, ax ; ef … … 7232 7227 inc bx ; 43 7233 7228 inc si ; 46 7234 jmp short 03a e6h ; eb e57229 jmp short 03ad6h ; eb e5 7235 7230 lea sp, [bp-006h] ; 8d 66 fa 7236 7231 pop si ; 5e … … 7239 7234 pop bp ; 5d 7240 7235 retn ; c3 7241 vbe_biosfn_save_restore_state_: ; 0xc3 b09 LB 0x8d7236 vbe_biosfn_save_restore_state_: ; 0xc3af9 LB 0x8d 7242 7237 push bp ; 55 7243 7238 mov bp, sp ; 89 e5 … … 7252 7247 xor ah, ah ; 30 e4 7253 7248 cmp ax, strict word 00002h ; 3d 02 00 7254 je short 03b 69h ; 74 467249 je short 03b59h ; 74 46 7255 7250 cmp ax, strict word 00001h ; 3d 01 00 7256 je short 03b 4dh ; 74 257251 je short 03b3dh ; 74 25 7257 7252 test ax, ax ; 85 c0 7258 jne short 03b 85h ; 75 597253 jne short 03b75h ; 75 59 7259 7254 mov ax, word [bp-006h] ; 8b 46 fa 7260 call 02a84h ; e8 52 ef7255 call 02a84h ; e8 62 ef 7261 7256 mov cx, ax ; 89 c1 7262 7257 test byte [bp-006h], 008h ; f6 46 fa 08 7263 je short 03b 3fh ; 74 057264 call 03 a0bh ; e8 ce fe7258 je short 03b2fh ; 74 05 7259 call 039fbh ; e8 ce fe 7265 7260 add ax, cx ; 01 c8 7266 7261 add ax, strict word 0003fh ; 05 3f 00 … … 7270 7265 pop ES ; 07 7271 7266 mov word [es:bx], ax ; 26 89 07 7272 jmp short 03b 88h ; eb 3b7267 jmp short 03b78h ; eb 3b 7273 7268 push SS ; 16 7274 7269 pop ES ; 07 … … 7276 7271 mov dx, cx ; 89 ca 7277 7272 mov ax, word [bp-006h] ; 8b 46 fa 7278 call 02ab9h ; e8 5f ef7273 call 02ab9h ; e8 6f ef 7279 7274 test byte [bp-006h], 008h ; f6 46 fa 08 7280 je short 03b 88h ; 74 287275 je short 03b78h ; 74 28 7281 7276 mov dx, ax ; 89 c2 7282 7277 mov ax, cx ; 89 c8 7283 call 03a 13h ; e8 ac fe7284 jmp short 03b 88h ; eb 1f7278 call 03a03h ; e8 ac fe 7279 jmp short 03b78h ; eb 1f 7285 7280 push SS ; 16 7286 7281 pop ES ; 07 … … 7288 7283 mov dx, cx ; 89 ca 7289 7284 mov ax, word [bp-006h] ; 8b 46 fa 7290 call 02e3ah ; e8 c4 f27285 call 02e3ah ; e8 d4 f2 7291 7286 test byte [bp-006h], 008h ; f6 46 fa 08 7292 je short 03b 88h ; 74 0c7287 je short 03b78h ; 74 0c 7293 7288 mov dx, ax ; 89 c2 7294 7289 mov ax, cx ; 89 c8 7295 call 03a 6eh ; e8 eb fe7296 jmp short 03b 88h ; eb 037290 call 03a5eh ; e8 eb fe 7291 jmp short 03b78h ; eb 03 7297 7292 mov di, 00100h ; bf 00 01 7298 7293 push SS ; 16 … … 7305 7300 retn 00002h ; c2 02 00 7306 7301 7307 ; Padding 0x8 6a bytes at 0xc3b967308 times 21 54db 07302 ; Padding 0x87a bytes at 0xc3b86 7303 times 2170 db 0 7309 7304 7310 7305 section VBE32 progbits vstart=0x4400 align=1 ; size=0x115 class=CODE group=AUTO … … 8394 8389 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h 8395 8390 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h 8396 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0 57h8391 db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 006h -
trunk/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.md5sum
r63625 r63627 1 1ab45f397a0436077da73a023efa26a8*VBoxVgaBios8086.rom1 41bd9ff8fec56dfa8c80333c5502caff *VBoxVgaBios8086.rom
Note:
See TracChangeset
for help on using the changeset viewer.