~ubuntu-branches/ubuntu/vivid/virtualbox/vivid

« back to all changes in this revision

Viewing changes to src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative.asm

  • Committer: Package Import Robot
  • Author(s): Felix Geyer
  • Date: 2013-03-31 23:25:01 UTC
  • mfrom: (1.1.14)
  • Revision ID: package-import@ubuntu.com-20130331232501-l72jhvixkeyyz6xc
Tags: 4.2.10-dfsg-0ubuntu1
* Start the virtualbox-guest-x11 init script earlier.
  The vboxvideo module needs to be loaded before X starts.
* Change runlevels of virtualbox-guest-x11 init script on upgrade.
* Fix build failure with the Debian wheezy kernel which backports the drm
  subsystem from Linux 3.4. (Closes: #703358)
* Drop build-dependency on bcc as it's not needed anymore.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1627
1627
    call 02f07h                               ; e8 f1 23
1628
1628
    movzx bx, ch                              ; 0f b6 dd
1629
1629
    sal bx, 003h                              ; c1 e3 03
1630
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
1630
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
1631
1631
    jne short 00b50h                          ; 75 2d
1632
1632
    mov dx, ax                                ; 89 c2
1633
1633
    imul dx, di                               ; 0f af d7
1643
1643
    add ax, ax                                ; 01 c0
1644
1644
    mov dx, cx                                ; 89 ca
1645
1645
    add dx, ax                                ; 01 c2
1646
 
    mov ax, word [bx+04832h]                  ; 8b 87 32 48
 
1646
    mov ax, word [bx+04833h]                  ; 8b 87 33 48
1647
1647
    call 02f07h                               ; e8 ba 23
1648
1648
    mov word [ss:si], ax                      ; 36 89 04
1649
1649
    leave                                     ; c9
1704
1704
    retn 00002h                               ; c2 02 00
1705
1705
    mov dx, 0010ch                            ; ba 0c 01
1706
1706
    jmp short 00b84h                          ; eb c2
1707
 
    mov ax, 05daeh                            ; b8 ae 5d
 
1707
    mov ax, 05dafh                            ; b8 af 5d
1708
1708
    mov dx, 0c000h                            ; ba 00 c0
1709
1709
    jmp short 00b89h                          ; eb bf
1710
 
    mov ax, 055aeh                            ; b8 ae 55
 
1710
    mov ax, 055afh                            ; b8 af 55
1711
1711
    jmp short 00bc5h                          ; eb f6
1712
 
    mov ax, 059aeh                            ; b8 ae 59
 
1712
    mov ax, 059afh                            ; b8 af 59
1713
1713
    jmp short 00bc5h                          ; eb f1
1714
 
    mov ax, 07baeh                            ; b8 ae 7b
 
1714
    mov ax, 07bafh                            ; b8 af 7b
1715
1715
    jmp short 00bc5h                          ; eb ec
1716
 
    mov ax, 06baeh                            ; b8 ae 6b
 
1716
    mov ax, 06bafh                            ; b8 af 6b
1717
1717
    jmp short 00bc5h                          ; eb e7
1718
 
    mov ax, 07cdbh                            ; b8 db 7c
 
1718
    mov ax, 07cdch                            ; b8 dc 7c
1719
1719
    jmp short 00bc5h                          ; eb e2
1720
1720
    jmp short 00bb7h                          ; eb d2
1721
1721
vga_read_pixel_:                             ; 0xc0be5 LB 0x134
1735
1735
    je near 00d15h                            ; 0f 84 0d 01
1736
1736
    movzx bx, al                              ; 0f b6 d8
1737
1737
    sal bx, 003h                              ; c1 e3 03
1738
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
1738
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
1739
1739
    je near 00d15h                            ; 0f 84 fe 00
1740
 
    mov bl, byte [bx+04830h]                  ; 8a 9f 30 48
 
1740
    mov bl, byte [bx+04831h]                  ; 8a 9f 31 48
1741
1741
    cmp bl, 003h                              ; 80 fb 03
1742
1742
    jc short 00c31h                           ; 72 11
1743
1743
    jbe short 00c39h                          ; 76 17
1796
1796
    call 02eebh                               ; e8 3a 22
1797
1797
    movzx bx, cl                              ; 0f b6 d9
1798
1798
    sal bx, 003h                              ; c1 e3 03
1799
 
    cmp byte [bx+04831h], 002h                ; 80 bf 31 48 02
 
1799
    cmp byte [bx+04832h], 002h                ; 80 bf 32 48 02
1800
1800
    jne short 00cd9h                          ; 75 1b
1801
1801
    mov cx, si                                ; 89 f1
1802
1802
    xor ch, ch                                ; 30 ed
2084
2084
    movzx bx, ch                              ; 0f b6 dd
2085
2085
    mov si, bx                                ; 89 de
2086
2086
    sal si, 003h                              ; c1 e6 03
2087
 
    cmp byte [si+0482fh], 000h                ; 80 bc 2f 48 00
 
2087
    cmp byte [si+04830h], 000h                ; 80 bc 30 48 00
2088
2088
    jne short 00f62h                          ; 75 40
2089
2089
    mov dx, strict word 0004ah                ; ba 4a 00
2090
2090
    mov ax, strict word 00040h                ; b8 40 00
2111
2111
    lea bx, [si+001h]                         ; 8d 5c 01
2112
2112
    imul bx, di                               ; 0f af df
2113
2113
    jmp short 00f74h                          ; eb 12
2114
 
    movzx bx, byte [bx+048aeh]                ; 0f b6 9f ae 48
 
2114
    movzx bx, byte [bx+048afh]                ; 0f b6 9f af 48
2115
2115
    sal bx, 006h                              ; c1 e3 06
2116
2116
    movzx ax, cl                              ; 0f b6 c1
2117
 
    mov bx, word [bx+048c5h]                  ; 8b 9f c5 48
 
2117
    mov bx, word [bx+048c6h]                  ; 8b 9f c6 48
2118
2118
    imul bx, ax                               ; 0f af d8
2119
2119
    mov dx, strict word 00063h                ; ba 63 00
2120
2120
    mov ax, strict word 00040h                ; b8 40 00
2176
2176
    cmp AL, strict byte 0ffh                  ; 3c ff
2177
2177
    je near 01333h                            ; 0f 84 43 03
2178
2178
    movzx si, al                              ; 0f b6 f0
2179
 
    mov al, byte [si+048aeh]                  ; 8a 84 ae 48
 
2179
    mov al, byte [si+048afh]                  ; 8a 84 af 48
2180
2180
    mov byte [bp-002h], al                    ; 88 46 fe
2181
2181
    movzx bx, al                              ; 0f b6 d8
2182
2182
    sal bx, 006h                              ; c1 e3 06
2183
 
    movzx ax, byte [bx+048c2h]                ; 0f b6 87 c2 48
 
2183
    movzx ax, byte [bx+048c3h]                ; 0f b6 87 c3 48
2184
2184
    mov word [bp-00eh], ax                    ; 89 46 f2
2185
 
    movzx ax, byte [bx+048c3h]                ; 0f b6 87 c3 48
 
2185
    movzx ax, byte [bx+048c4h]                ; 0f b6 87 c4 48
2186
2186
    mov word [bp-00ch], ax                    ; 89 46 f4
2187
 
    movzx ax, byte [bx+048c4h]                ; 0f b6 87 c4 48
 
2187
    movzx ax, byte [bx+048c5h]                ; 0f b6 87 c5 48
2188
2188
    mov word [bp-00ah], ax                    ; 89 46 f6
2189
2189
    mov dx, 00087h                            ; ba 87 00
2190
2190
    mov ax, strict word 00040h                ; b8 40 00
2200
2200
    jne near 010c5h                           ; 0f 85 8a 00
2201
2201
    mov bx, si                                ; 89 f3
2202
2202
    sal bx, 003h                              ; c1 e3 03
2203
 
    mov al, byte [bx+04834h]                  ; 8a 87 34 48
 
2203
    mov al, byte [bx+04835h]                  ; 8a 87 35 48
2204
2204
    mov dx, 003c6h                            ; ba c6 03
2205
2205
    out DX, AL                                ; ee
2206
2206
    xor al, al                                ; 30 c0
2207
2207
    mov dx, 003c8h                            ; ba c8 03
2208
2208
    out DX, AL                                ; ee
2209
 
    mov bl, byte [bx+04835h]                  ; 8a 9f 35 48
 
2209
    mov bl, byte [bx+04836h]                  ; 8a 9f 36 48
2210
2210
    cmp bl, 001h                              ; 80 fb 01
2211
2211
    jc short 01065h                           ; 72 0e
2212
2212
    jbe short 0106eh                          ; 76 15
2217
2217
    jmp short 0107bh                          ; eb 16
2218
2218
    test bl, bl                               ; 84 db
2219
2219
    jne short 0107bh                          ; 75 12
2220
 
    mov di, 05042h                            ; bf 42 50
 
2220
    mov di, 05043h                            ; bf 43 50
2221
2221
    jmp short 0107bh                          ; eb 0d
2222
 
    mov di, 05102h                            ; bf 02 51
 
2222
    mov di, 05103h                            ; bf 03 51
2223
2223
    jmp short 0107bh                          ; eb 08
2224
 
    mov di, 051c2h                            ; bf c2 51
 
2224
    mov di, 051c3h                            ; bf c3 51
2225
2225
    jmp short 0107bh                          ; eb 03
2226
 
    mov di, 05282h                            ; bf 82 52
 
2226
    mov di, 05283h                            ; bf 83 52
2227
2227
    xor bx, bx                                ; 31 db
2228
2228
    jmp short 0108eh                          ; eb 0f
2229
2229
    xor al, al                                ; 30 c0
2236
2236
    jnc short 010b8h                          ; 73 2a
2237
2237
    movzx si, byte [bp-008h]                  ; 0f b6 76 f8
2238
2238
    sal si, 003h                              ; c1 e6 03
2239
 
    movzx si, byte [si+04835h]                ; 0f b6 b4 35 48
2240
 
    movzx dx, byte [si+048beh]                ; 0f b6 94 be 48
 
2239
    movzx si, byte [si+04836h]                ; 0f b6 b4 36 48
 
2240
    movzx dx, byte [si+048bfh]                ; 0f b6 94 bf 48
2241
2241
    cmp bx, dx                                ; 39 d3
2242
2242
    jnbe short 0107fh                         ; 77 dc
2243
2243
    imul si, bx, strict byte 00003h           ; 6b f3 03
2269
2269
    movzx si, byte [bp-002h]                  ; 0f b6 76 fe
2270
2270
    sal si, 006h                              ; c1 e6 06
2271
2271
    add si, bx                                ; 01 de
2272
 
    mov al, byte [si+048e5h]                  ; 8a 84 e5 48
 
2272
    mov al, byte [si+048e6h]                  ; 8a 84 e6 48
2273
2273
    out DX, AL                                ; ee
2274
2274
    inc bx                                    ; 43
2275
2275
    jmp short 010cfh                          ; eb e4
2293
2293
    movzx si, byte [bp-002h]                  ; 0f b6 76 fe
2294
2294
    sal si, 006h                              ; c1 e6 06
2295
2295
    add si, bx                                ; 01 de
2296
 
    mov al, byte [si+048c6h]                  ; 8a 84 c6 48
 
2296
    mov al, byte [si+048c7h]                  ; 8a 84 c7 48
2297
2297
    mov dx, 003c5h                            ; ba c5 03
2298
2298
    out DX, AL                                ; ee
2299
2299
    inc bx                                    ; 43
2308
2308
    movzx si, byte [bp-002h]                  ; 0f b6 76 fe
2309
2309
    sal si, 006h                              ; c1 e6 06
2310
2310
    add si, bx                                ; 01 de
2311
 
    mov al, byte [si+048f9h]                  ; 8a 84 f9 48
 
2311
    mov al, byte [si+048fah]                  ; 8a 84 fa 48
2312
2312
    mov dx, 003cfh                            ; ba cf 03
2313
2313
    out DX, AL                                ; ee
2314
2314
    inc bx                                    ; 43
2315
2315
    jmp short 01126h                          ; eb e1
2316
2316
    movzx bx, byte [bp-008h]                  ; 0f b6 5e f8
2317
2317
    sal bx, 003h                              ; c1 e3 03
2318
 
    cmp byte [bx+04830h], 001h                ; 80 bf 30 48 01
 
2318
    cmp byte [bx+04831h], 001h                ; 80 bf 31 48 01
2319
2319
    jne short 01158h                          ; 75 05
2320
2320
    mov dx, 003b4h                            ; ba b4 03
2321
2321
    jmp short 0115bh                          ; eb 03
2335
2335
    mov di, cx                                ; 89 cf
2336
2336
    add di, bx                                ; 01 df
2337
2337
    lea dx, [si+001h]                         ; 8d 54 01
2338
 
    mov al, byte [di+048cch]                  ; 8a 85 cc 48
 
2338
    mov al, byte [di+048cdh]                  ; 8a 85 cd 48
2339
2339
    out DX, AL                                ; ee
2340
2340
    inc bx                                    ; 43
2341
2341
    jmp short 01165h                          ; eb e0
2342
2342
    mov bx, cx                                ; 89 cb
2343
 
    mov al, byte [bx+048cbh]                  ; 8a 87 cb 48
 
2343
    mov al, byte [bx+048cch]                  ; 8a 87 cc 48
2344
2344
    mov dx, 003c2h                            ; ba c2 03
2345
2345
    out DX, AL                                ; ee
2346
2346
    mov AL, strict byte 020h                  ; b0 20
2354
2354
    jne short 01200h                          ; 75 5f
2355
2355
    movzx bx, byte [bp-008h]                  ; 0f b6 5e f8
2356
2356
    sal bx, 003h                              ; c1 e3 03
2357
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
2357
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
2358
2358
    jne short 011c2h                          ; 75 13
2359
 
    mov es, [bx+04832h]                       ; 8e 87 32 48
 
2359
    mov es, [bx+04833h]                       ; 8e 87 33 48
2360
2360
    mov cx, 04000h                            ; b9 00 40
2361
2361
    mov ax, 00720h                            ; b8 20 07
2362
2362
    xor di, di                                ; 31 ff
2366
2366
    jmp short 01200h                          ; eb 3e
2367
2367
    cmp byte [bp-004h], 00dh                  ; 80 7e fc 0d
2368
2368
    jnc short 011dah                          ; 73 12
2369
 
    mov es, [bx+04832h]                       ; 8e 87 32 48
 
2369
    mov es, [bx+04833h]                       ; 8e 87 33 48
2370
2370
    mov cx, 04000h                            ; b9 00 40
2371
2371
    xor ax, ax                                ; 31 c0
2372
2372
    xor di, di                                ; 31 ff
2384
2384
    mov word [bp-010h], ax                    ; 89 46 f0
2385
2385
    mov AL, strict byte 00fh                  ; b0 0f
2386
2386
    out DX, AL                                ; ee
2387
 
    mov es, [bx+04832h]                       ; 8e 87 32 48
 
2387
    mov es, [bx+04833h]                       ; 8e 87 33 48
2388
2388
    mov cx, 08000h                            ; b9 00 80
2389
2389
    xor ax, ax                                ; 31 c0
2390
2390
    xor di, di                                ; 31 ff
2403
2403
    call 02f15h                               ; e8 fc 1c
2404
2404
    movzx bx, byte [bp-002h]                  ; 0f b6 5e fe
2405
2405
    sal bx, 006h                              ; c1 e3 06
2406
 
    mov bx, word [bx+048c5h]                  ; 8b 9f c5 48
 
2406
    mov bx, word [bx+048c6h]                  ; 8b 9f c6 48
2407
2407
    mov dx, strict word 0004ch                ; ba 4c 00
2408
2408
    mov ax, strict word 00040h                ; b8 40 00
2409
2409
    call 02f15h                               ; e8 e8 1c
2442
2442
    mov ax, strict word 00040h                ; b8 40 00
2443
2443
    call 02ef9h                               ; e8 68 1c
2444
2444
    mov cx, ds                                ; 8c d9
2445
 
    mov bx, 05592h                            ; bb 92 55
 
2445
    mov bx, 05593h                            ; bb 93 55
2446
2446
    mov dx, 000a8h                            ; ba a8 00
2447
2447
    mov ax, strict word 00040h                ; b8 40 00
2448
2448
    call 02f35h                               ; e8 96 1c
2456
2456
    call 02ef9h                               ; e8 44 1c
2457
2457
    movzx bx, byte [bp-008h]                  ; 0f b6 5e f8
2458
2458
    sal bx, 003h                              ; c1 e3 03
2459
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
2459
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
2460
2460
    jne short 012cch                          ; 75 09
2461
2461
    mov dx, strict word 00007h                ; ba 07 00
2462
2462
    mov ax, strict word 00006h                ; b8 06 00
2474
2474
    call 00ee0h                               ; e8 fb fb
2475
2475
    movzx bx, byte [bp-008h]                  ; 0f b6 5e f8
2476
2476
    sal bx, 003h                              ; c1 e3 03
2477
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
2477
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
2478
2478
    jne short 01303h                          ; 75 10
2479
2479
    xor bl, bl                                ; 30 db
2480
2480
    mov AL, strict byte 004h                  ; b0 04
2484
2484
    mov AL, strict byte 003h                  ; b0 03
2485
2485
    mov AH, strict byte 011h                  ; b4 11
2486
2486
    int 010h                                  ; cd 10
2487
 
    mov dx, 059aeh                            ; ba ae 59
 
2487
    mov dx, 059afh                            ; ba af 59
2488
2488
    mov ax, strict word 0001fh                ; b8 1f 00
2489
2489
    call 00a00h                               ; e8 f4 f6
2490
2490
    mov ax, word [bp-00ah]                    ; 8b 46 f6
2494
2494
    je short 01329h                           ; 74 10
2495
2495
    cmp ax, strict word 00008h                ; 3d 08 00
2496
2496
    jne short 01333h                          ; 75 15
2497
 
    mov dx, 055aeh                            ; ba ae 55
 
2497
    mov dx, 055afh                            ; ba af 55
2498
2498
    mov ax, strict word 00043h                ; b8 43 00
2499
2499
    call 00a00h                               ; e8 d9 f6
2500
2500
    jmp short 01333h                          ; eb 0a
2501
 
    mov dx, 05daeh                            ; ba ae 5d
 
2501
    mov dx, 05dafh                            ; ba af 5d
2502
2502
    jmp short 01321h                          ; eb f3
2503
 
    mov dx, 06baeh                            ; ba ae 6b
 
2503
    mov dx, 06bafh                            ; ba af 6b
2504
2504
    jmp short 01321h                          ; eb ee
2505
2505
    leave                                     ; c9
2506
2506
    pop di                                    ; 5f
2791
2791
    mov word [bp-016h], ax                    ; 89 46 ea
2792
2792
    mov ax, word [bp-012h]                    ; 8b 46 ee
2793
2793
    imul ax, cx                               ; 0f af c1
2794
 
    cmp byte [di+0482fh], 000h                ; 80 bd 2f 48 00
 
2794
    cmp byte [di+04830h], 000h                ; 80 bd 30 48 00
2795
2795
    jne near 0178ch                           ; 0f 85 9f 01
2796
2796
    mov dx, ax                                ; 89 c2
2797
2797
    add dx, ax                                ; 01 c2
2814
2814
    movzx dx, byte [bp-008h]                  ; 0f b6 56 f8
2815
2815
    sal dx, 008h                              ; c1 e2 08
2816
2816
    add dx, strict byte 00020h                ; 83 c2 20
2817
 
    mov es, [di+04832h]                       ; 8e 85 32 48
 
2817
    mov es, [di+04833h]                       ; 8e 85 33 48
2818
2818
    mov cx, ax                                ; 89 c1
2819
2819
    mov ax, dx                                ; 89 d0
2820
2820
    mov di, bx                                ; 89 df
2848
2848
    add di, dx                                ; 01 d7
2849
2849
    movzx si, byte [bp-00ah]                  ; 0f b6 76 f6
2850
2850
    sal si, 003h                              ; c1 e6 03
2851
 
    mov es, [si+04832h]                       ; 8e 84 32 48
 
2851
    mov es, [si+04833h]                       ; 8e 84 33 48
2852
2852
    cld                                       ; fc
2853
2853
    jcxz 01698h                               ; e3 02
2854
2854
    rep stosw                                 ; f3 ab
2862
2862
    add dx, dx                                ; 01 d2
2863
2863
    movzx si, byte [bp-00ah]                  ; 0f b6 76 f6
2864
2864
    sal si, 003h                              ; c1 e6 03
2865
 
    mov ax, word [si+04832h]                  ; 8b 84 32 48
 
2865
    mov ax, word [si+04833h]                  ; 8b 84 33 48
2866
2866
    mov si, word [bp-010h]                    ; 8b 76 f0
2867
2867
    imul si, word [bp-012h]                   ; 0f af 76 ee
2868
2868
    add cx, si                                ; 01 f1
2906
2906
    add di, dx                                ; 01 d7
2907
2907
    movzx si, byte [bp-00ah]                  ; 0f b6 76 f6
2908
2908
    sal si, 003h                              ; c1 e6 03
2909
 
    mov es, [si+04832h]                       ; 8e 84 32 48
 
2909
    mov es, [si+04833h]                       ; 8e 84 33 48
2910
2910
    cld                                       ; fc
2911
2911
    jcxz 01739h                               ; e3 02
2912
2912
    rep stosw                                 ; f3 ab
2921
2921
    add dx, dx                                ; 01 d2
2922
2922
    movzx si, byte [bp-00ah]                  ; 0f b6 76 f6
2923
2923
    sal si, 003h                              ; c1 e6 03
2924
 
    mov ax, word [si+04832h]                  ; 8b 84 32 48
 
2924
    mov ax, word [si+04833h]                  ; 8b 84 33 48
2925
2925
    mov si, word [bp-010h]                    ; 8b 76 f0
2926
2926
    imul si, word [bp-012h]                   ; 0f af 76 ee
2927
2927
    add di, si                                ; 01 f7
2941
2941
    jc near 01a2ah                            ; 0f 82 a4 02
2942
2942
    dec word [bp-010h]                        ; ff 4e f0
2943
2943
    jmp near 016e8h                           ; e9 5c ff
2944
 
    movzx bx, byte [si+048aeh]                ; 0f b6 9c ae 48
 
2944
    movzx bx, byte [si+048afh]                ; 0f b6 9c af 48
2945
2945
    sal bx, 006h                              ; c1 e3 06
2946
 
    mov dl, byte [bx+048c4h]                  ; 8a 97 c4 48
 
2946
    mov dl, byte [bx+048c5h]                  ; 8a 97 c5 48
2947
2947
    mov byte [bp-006h], dl                    ; 88 56 fa
2948
 
    mov bl, byte [di+04830h]                  ; 8a 9d 30 48
 
2948
    mov bl, byte [di+04831h]                  ; 8a 9d 31 48
2949
2949
    cmp bl, 004h                              ; 80 fb 04
2950
2950
    je short 017b3h                           ; 74 0f
2951
2951
    cmp bl, 003h                              ; 80 fb 03
2978
2978
    movzx ax, byte [bp-008h]                  ; 0f b6 46 f8
2979
2979
    movzx bx, byte [bp-00ah]                  ; 0f b6 5e f6
2980
2980
    sal bx, 003h                              ; c1 e3 03
2981
 
    mov es, [bx+04832h]                       ; 8e 87 32 48
 
2981
    mov es, [bx+04833h]                       ; 8e 87 33 48
2982
2982
    xor di, di                                ; 31 ff
2983
2983
    cld                                       ; fc
2984
2984
    jcxz 01804h                               ; e3 02
3060
3060
    jc near 01a2ah                            ; 0f 82 3d 01
3061
3061
    dec word [bp-010h]                        ; ff 4e f0
3062
3062
    jmp short 01881h                          ; eb 8f
3063
 
    mov dl, byte [di+04831h]                  ; 8a 95 31 48
 
3063
    mov dl, byte [di+04832h]                  ; 8a 95 32 48
3064
3064
    cmp byte [bp-00ch], 000h                  ; 80 7e f4 00
3065
3065
    jne short 01939h                          ; 75 3d
3066
3066
    cmp byte [bp-004h], 000h                  ; 80 7e fc 00
3078
3078
    movzx cx, dl                              ; 0f b6 ca
3079
3079
    imul cx, ax                               ; 0f af c8
3080
3080
    movzx ax, byte [bp-008h]                  ; 0f b6 46 f8
3081
 
    mov es, [di+04832h]                       ; 8e 85 32 48
 
3081
    mov es, [di+04833h]                       ; 8e 85 33 48
3082
3082
    xor di, di                                ; 31 ff
3083
3083
    cld                                       ; fc
3084
3084
    jcxz 01936h                               ; e3 02
3177
3177
    je short 01a4ch                           ; 74 0b
3178
3178
    cmp byte [bp+00ah], 00eh                  ; 80 7e 0a 0e
3179
3179
    jne short 01a51h                          ; 75 0a
3180
 
    mov di, 05daeh                            ; bf ae 5d
 
3180
    mov di, 05dafh                            ; bf af 5d
3181
3181
    jmp short 01a54h                          ; eb 08
3182
 
    mov di, 06baeh                            ; bf ae 6b
 
3182
    mov di, 06bafh                            ; bf af 6b
3183
3183
    jmp short 01a54h                          ; eb 03
3184
 
    mov di, 055aeh                            ; bf ae 55
 
3184
    mov di, 055afh                            ; bf af 55
3185
3185
    movzx si, cl                              ; 0f b6 f1
3186
3186
    movzx bx, byte [bp+00ah]                  ; 0f b6 5e 0a
3187
3187
    imul si, bx                               ; 0f af f3
3265
3265
    push di                                   ; 57
3266
3266
    enter 00008h, 000h                        ; c8 08 00 00
3267
3267
    mov byte [bp-004h], dl                    ; 88 56 fc
3268
 
    mov si, 055aeh                            ; be ae 55
 
3268
    mov si, 055afh                            ; be af 55
3269
3269
    xor bh, bh                                ; 30 ff
3270
3270
    movzx di, byte [bp+00ah]                  ; 0f b6 7e 0a
3271
3271
    imul di, bx                               ; 0f af fb
3376
3376
    push di                                   ; 57
3377
3377
    enter 00008h, 000h                        ; c8 08 00 00
3378
3378
    mov byte [bp-002h], dl                    ; 88 56 fe
3379
 
    mov di, 055aeh                            ; bf ae 55
 
3379
    mov di, 055afh                            ; bf af 55
3380
3380
    movzx dx, cl                              ; 0f b6 d1
3381
3381
    movzx cx, byte [bp+008h]                  ; 0f b6 4e 08
3382
3382
    imul cx, dx                               ; 0f af ca
3468
3468
    movzx bx, cl                              ; 0f b6 d9
3469
3469
    mov di, bx                                ; 89 df
3470
3470
    sal di, 003h                              ; c1 e7 03
3471
 
    cmp byte [di+0482fh], 000h                ; 80 bd 2f 48 00
 
3471
    cmp byte [di+04830h], 000h                ; 80 bd 30 48 00
3472
3472
    jne short 01d74h                          ; 75 47
3473
3473
    mov bx, word [bp-014h]                    ; 8b 5e ec
3474
3474
    imul bx, ax                               ; 0f af d8
3489
3489
    add ax, bx                                ; 01 d8
3490
3490
    mov word [bp-016h], ax                    ; 89 46 ea
3491
3491
    mov ax, word [bp-016h]                    ; 8b 46 ea
3492
 
    mov es, [di+04832h]                       ; 8e 85 32 48
 
3492
    mov es, [di+04833h]                       ; 8e 85 33 48
3493
3493
    mov cx, si                                ; 89 f1
3494
3494
    mov di, dx                                ; 89 d7
3495
3495
    cld                                       ; fc
3496
3496
    jcxz 01d71h                               ; e3 02
3497
3497
    rep stosw                                 ; f3 ab
3498
3498
    jmp near 01e1ah                           ; e9 a6 00
3499
 
    movzx bx, byte [bx+048aeh]                ; 0f b6 9f ae 48
 
3499
    movzx bx, byte [bx+048afh]                ; 0f b6 9f af 48
3500
3500
    sal bx, 006h                              ; c1 e3 06
3501
 
    mov al, byte [bx+048c4h]                  ; 8a 87 c4 48
 
3501
    mov al, byte [bx+048c5h]                  ; 8a 87 c5 48
3502
3502
    mov byte [bp-004h], al                    ; 88 46 fc
3503
 
    mov al, byte [di+04831h]                  ; 8a 85 31 48
 
3503
    mov al, byte [di+04832h]                  ; 8a 85 32 48
3504
3504
    mov byte [bp-010h], al                    ; 88 46 f0
3505
3505
    dec si                                    ; 4e
3506
3506
    cmp si, strict byte 0ffffh                ; 83 fe ff
3510
3510
    jnc near 01e1ah                           ; 0f 83 7d 00
3511
3511
    movzx bx, byte [bp-002h]                  ; 0f b6 5e fe
3512
3512
    sal bx, 003h                              ; c1 e3 03
3513
 
    mov al, byte [bx+04830h]                  ; 8a 87 30 48
 
3513
    mov al, byte [bx+04831h]                  ; 8a 87 31 48
3514
3514
    cmp AL, strict byte 003h                  ; 3c 03
3515
3515
    jc short 01db8h                           ; 72 0c
3516
3516
    jbe short 01dbeh                          ; 76 10
3595
3595
    movzx di, cl                              ; 0f b6 f9
3596
3596
    mov bx, di                                ; 89 fb
3597
3597
    sal bx, 003h                              ; c1 e3 03
3598
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
3598
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
3599
3599
    jne short 01edah                          ; 75 4a
3600
3600
    mov dx, word [bp-014h]                    ; 8b 56 ec
3601
3601
    imul dx, ax                               ; 0f af d0
3617
3617
    movzx ax, byte [bp-00eh]                  ; 0f b6 46 f2
3618
3618
    movzx bx, byte [bp-00ah]                  ; 0f b6 5e f6
3619
3619
    sal bx, 003h                              ; c1 e3 03
3620
 
    mov di, word [bx+04832h]                  ; 8b bf 32 48
 
3620
    mov di, word [bx+04833h]                  ; 8b bf 33 48
3621
3621
    mov bx, ax                                ; 89 c3
3622
3622
    mov dx, cx                                ; 89 ca
3623
3623
    mov ax, di                                ; 89 f8
3625
3625
    inc cx                                    ; 41
3626
3626
    inc cx                                    ; 41
3627
3627
    jmp short 01eb6h                          ; eb dc
3628
 
    movzx di, byte [di+048aeh]                ; 0f b6 bd ae 48
 
3628
    movzx di, byte [di+048afh]                ; 0f b6 bd af 48
3629
3629
    sal di, 006h                              ; c1 e7 06
3630
 
    mov al, byte [di+048c4h]                  ; 8a 85 c4 48
 
3630
    mov al, byte [di+048c5h]                  ; 8a 85 c5 48
3631
3631
    mov byte [bp-006h], al                    ; 88 46 fa
3632
 
    mov al, byte [bx+04831h]                  ; 8a 87 31 48
 
3632
    mov al, byte [bx+04832h]                  ; 8a 87 32 48
3633
3633
    mov byte [bp-004h], al                    ; 88 46 fc
3634
3634
    dec si                                    ; 4e
3635
3635
    cmp si, strict byte 0ffffh                ; 83 fe ff
3639
3639
    jnc near 01f84h                           ; 0f 83 81 00
3640
3640
    movzx bx, byte [bp-00ah]                  ; 0f b6 5e f6
3641
3641
    sal bx, 003h                              ; c1 e3 03
3642
 
    mov bl, byte [bx+04830h]                  ; 8a 9f 30 48
 
3642
    mov bl, byte [bx+04831h]                  ; 8a 9f 31 48
3643
3643
    cmp bl, 003h                              ; 80 fb 03
3644
3644
    jc short 01f21h                           ; 72 0e
3645
3645
    jbe short 01f28h                          ; 76 13
3699
3699
    je near 020edh                            ; 0f 84 43 01
3700
3700
    movzx bx, al                              ; 0f b6 d8
3701
3701
    sal bx, 003h                              ; c1 e3 03
3702
 
    cmp byte [bx+0482fh], 000h                ; 80 bf 2f 48 00
 
3702
    cmp byte [bx+04830h], 000h                ; 80 bf 30 48 00
3703
3703
    je near 020edh                            ; 0f 84 34 01
3704
 
    mov al, byte [bx+04830h]                  ; 8a 87 30 48
 
3704
    mov al, byte [bx+04831h]                  ; 8a 87 31 48
3705
3705
    cmp AL, strict byte 003h                  ; 3c 03
3706
3706
    jc short 01fd0h                           ; 72 0f
3707
3707
    jbe short 01fd7h                          ; 76 14
3761
3761
    mov ax, cx                                ; 89 c8
3762
3762
    shr ax, 1                                 ; d1 e8
3763
3763
    imul ax, ax, strict byte 00050h           ; 6b c0 50
3764
 
    cmp byte [bx+04831h], 002h                ; 80 bf 31 48 02
 
3764
    cmp byte [bx+04832h], 002h                ; 80 bf 32 48 02
3765
3765
    jne short 02052h                          ; 75 08
3766
3766
    mov bx, word [bp-008h]                    ; 8b 5e f8
3767
3767
    shr bx, 002h                              ; c1 eb 02
3779
3779
    mov bl, al                                ; 88 c3
3780
3780
    movzx si, byte [bp-002h]                  ; 0f b6 76 fe
3781
3781
    sal si, 003h                              ; c1 e6 03
3782
 
    cmp byte [si+04831h], 002h                ; 80 bc 31 48 02
 
3782
    cmp byte [si+04832h], 002h                ; 80 bc 32 48 02
3783
3783
    jne short 02098h                          ; 75 19
3784
3784
    mov al, byte [bp-008h]                    ; 8a 46 f8
3785
3785
    and AL, strict byte 003h                  ; 24 03
3919
3919
    movzx bx, byte [bp-00ch]                  ; 0f b6 5e f4
3920
3920
    mov si, bx                                ; 89 de
3921
3921
    sal si, 003h                              ; c1 e6 03
3922
 
    cmp byte [si+0482fh], 000h                ; 80 bc 2f 48 00
 
3922
    cmp byte [si+04830h], 000h                ; 80 bc 30 48 00
3923
3923
    jne short 02238h                          ; 75 4b
3924
3924
    mov ax, word [bp-010h]                    ; 8b 46 f0
3925
3925
    imul ax, word [bp-012h]                   ; 0f af 46 ee
3935
3935
    add cx, cx                                ; 01 c9
3936
3936
    add cx, dx                                ; 01 d1
3937
3937
    movzx bx, byte [bp-00ah]                  ; 0f b6 5e f6
3938
 
    mov ax, word [si+04832h]                  ; 8b 84 32 48
 
3938
    mov ax, word [si+04833h]                  ; 8b 84 33 48
3939
3939
    mov dx, cx                                ; 89 ca
3940
3940
    call 02ef9h                               ; e8 da 0c
3941
3941
    cmp byte [bp-00eh], 003h                  ; 80 7e f2 03
3943
3943
    movzx bx, byte [bp-004h]                  ; 0f b6 5e fc
3944
3944
    mov dx, cx                                ; 89 ca
3945
3945
    inc dx                                    ; 42
3946
 
    mov ax, word [si+04832h]                  ; 8b 84 32 48
 
3946
    mov ax, word [si+04833h]                  ; 8b 84 33 48
3947
3947
    call 02ef9h                               ; e8 c4 0c
3948
3948
    jmp near 022b6h                           ; e9 7e 00
3949
 
    movzx bx, byte [bx+048aeh]                ; 0f b6 9f ae 48
 
3949
    movzx bx, byte [bx+048afh]                ; 0f b6 9f af 48
3950
3950
    sal bx, 006h                              ; c1 e3 06
3951
 
    mov ah, byte [bx+048c4h]                  ; 8a a7 c4 48
3952
 
    mov dl, byte [si+04831h]                  ; 8a 94 31 48
3953
 
    mov al, byte [si+04830h]                  ; 8a 84 30 48
 
3951
    mov ah, byte [bx+048c5h]                  ; 8a a7 c5 48
 
3952
    mov dl, byte [si+04832h]                  ; 8a 94 32 48
 
3953
    mov al, byte [si+04831h]                  ; 8a 84 31 48
3954
3954
    cmp AL, strict byte 003h                  ; 3c 03
3955
3955
    jc short 0225ch                           ; 72 0c
3956
3956
    jbe short 02262h                          ; 76 10
4006
4006
    mov bh, byte [bp-010h]                    ; 8a 7e f0
4007
4007
    db  0feh, 0cfh
4008
4008
    ; dec bh                                    ; fe cf
4009
 
    cmp byte [si+0482fh], 000h                ; 80 bc 2f 48 00
 
4009
    cmp byte [si+04830h], 000h                ; 80 bc 30 48 00
4010
4010
    jne short 02332h                          ; 75 46
4011
4011
    mov ax, word [bp-010h]                    ; 8b 46 f0
4012
4012
    imul ax, word [bp-012h]                   ; 0f af 46 ee
4023
4023
    add cx, cx                                ; 01 c9
4024
4024
    add dx, cx                                ; 01 ca
4025
4025
    inc dx                                    ; 42
4026
 
    mov ax, word [si+04832h]                  ; 8b 84 32 48
 
4026
    mov ax, word [si+04833h]                  ; 8b 84 33 48
4027
4027
    call 02eebh                               ; e8 d1 0b
4028
4028
    push strict byte 00001h                   ; 6a 01
4029
4029
    movzx dx, byte [bp-002h]                  ; 0f b6 56 fe
4288
4288
    mov di, bx                                ; 89 df
4289
4289
    sal di, 005h                              ; c1 e7 05
4290
4290
    add di, word [bp-004h]                    ; 03 7e fc
4291
 
    add si, 05daeh                            ; 81 c6 ae 5d
 
4291
    add si, 05dafh                            ; 81 c6 af 5d
4292
4292
    mov cx, strict word 0000eh                ; b9 0e 00
4293
4293
    mov dx, 0c000h                            ; ba 00 c0
4294
4294
    mov ax, 0a000h                            ; b8 00 a0
4340
4340
    mov di, bx                                ; 89 df
4341
4341
    sal di, 005h                              ; c1 e7 05
4342
4342
    add di, word [bp-004h]                    ; 03 7e fc
4343
 
    add si, 055aeh                            ; 81 c6 ae 55
 
4343
    add si, 055afh                            ; 81 c6 af 55
4344
4344
    mov cx, strict word 00008h                ; b9 08 00
4345
4345
    mov dx, 0c000h                            ; ba 00 c0
4346
4346
    mov ax, 0a000h                            ; b8 00 a0
4392
4392
    mov di, bx                                ; 89 df
4393
4393
    sal di, 005h                              ; c1 e7 05
4394
4394
    add di, word [bp-004h]                    ; 03 7e fc
4395
 
    add si, 06baeh                            ; 81 c6 ae 6b
 
4395
    add si, 06bafh                            ; 81 c6 af 6b
4396
4396
    mov cx, strict word 00010h                ; b9 10 00
4397
4397
    mov dx, 0c000h                            ; ba 00 c0
4398
4398
    mov ax, 0a000h                            ; b8 00 a0
4522
4522
    push dx                                   ; 52
4523
4523
    push bx                                   ; 53
4524
4524
    mov cx, ds                                ; 8c d9
4525
 
    mov bx, 05582h                            ; bb 82 55
 
4525
    mov bx, 05583h                            ; bb 83 55
4526
4526
    mov dx, word [bp-004h]                    ; 8b 56 fc
4527
4527
    mov ax, word [bp-002h]                    ; 8b 46 fe
4528
4528
    call 02f35h                               ; e8 11 08
5413
5413
    jnbe short 02ee5h                         ; 77 0e
5414
5414
    movzx bx, al                              ; 0f b6 d8
5415
5415
    sal bx, 003h                              ; c1 e3 03
5416
 
    cmp dl, byte [bx+0482eh]                  ; 3a 97 2e 48
 
5416
    cmp dl, byte [bx+0482fh]                  ; 3a 97 2f 48
5417
5417
    jne short 02ed1h                          ; 75 ee
5418
5418
    mov ah, al                                ; 88 c4
5419
5419
    mov al, ah                                ; 88 e0
6649
6649
  ; Padding 0xeb bytes at 0xc4715
6650
6650
  times 235 db 0
6651
6651
 
6652
 
section _DATA progbits vstart=0x4800 align=1 ; size=0x36e0 class=DATA group=DGROUP
6653
 
_msg_vga_init:                               ; 0xc4800 LB 0x2e
6654
 
    db  'Oracle VM VirtualBox Version 4.2.8 VGA BIOS', 00dh, 00ah, 000h
6655
 
_vga_modes:                                  ; 0xc482e LB 0x80
 
6652
section _DATA progbits vstart=0x4800 align=1 ; size=0x36e1 class=DATA group=DGROUP
 
6653
_msg_vga_init:                               ; 0xc4800 LB 0x2f
 
6654
    db  'Oracle VM VirtualBox Version 4.2.10 VGA BIOS', 00dh, 00ah, 000h
 
6655
_vga_modes:                                  ; 0xc482f LB 0x80
6656
6656
    db  000h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 001h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h
6657
6657
    db  002h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 003h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h
6658
6658
    db  004h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h, 005h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h
6661
6661
    db  00fh, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 000h, 010h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h
6662
6662
    db  011h, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 002h, 012h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h
6663
6663
    db  013h, 001h, 005h, 008h, 000h, 0a0h, 0ffh, 003h, 06ah, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h
6664
 
_line_to_vpti:                               ; 0xc48ae LB 0x10
 
6664
_line_to_vpti:                               ; 0xc48af LB 0x10
6665
6665
    db  017h, 017h, 018h, 018h, 004h, 005h, 006h, 007h, 00dh, 00eh, 011h, 012h, 01ah, 01bh, 01ch, 01dh
6666
 
_dac_regs:                                   ; 0xc48be LB 0x4
 
6666
_dac_regs:                                   ; 0xc48bf LB 0x4
6667
6667
    dd  0ff3f3f3fh
6668
 
_video_param_table:                          ; 0xc48c2 LB 0x780
 
6668
_video_param_table:                          ; 0xc48c3 LB 0x780
6669
6669
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6670
6670
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6671
6671
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6786
6786
    db  072h, 0f0h, 000h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 059h, 08dh, 057h, 032h, 000h, 057h
6787
6787
    db  073h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch
6788
6788
    db  03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh
6789
 
_palette0:                                   ; 0xc5042 LB 0xc0
6790
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6791
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
6792
 
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
6793
 
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
6794
 
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
6795
 
    db  03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
6796
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6797
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
6798
 
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
6799
 
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
6800
 
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
6801
 
    db  03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
6802
 
_palette1:                                   ; 0xc5102 LB 0xc0
6803
 
    db  000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah
6804
 
    db  000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah
6805
 
    db  000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah
6806
 
    db  015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh
6807
 
    db  015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh
6808
 
    db  015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh
6809
 
    db  000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah
6810
 
    db  000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah
6811
 
    db  000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah
6812
 
    db  015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh
6813
 
    db  015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh
6814
 
    db  015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh
6815
 
_palette2:                                   ; 0xc51c2 LB 0xc0
 
6789
_palette0:                                   ; 0xc5043 LB 0xc0
 
6790
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
6791
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
 
6792
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
 
6793
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
 
6794
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
 
6795
    db  03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
 
6796
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
6797
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
 
6798
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
 
6799
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah
 
6800
    db  02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
 
6801
    db  03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh
 
6802
_palette1:                                   ; 0xc5103 LB 0xc0
 
6803
    db  000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah
 
6804
    db  000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah
 
6805
    db  000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah
 
6806
    db  015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh
 
6807
    db  015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh
 
6808
    db  015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh
 
6809
    db  000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah
 
6810
    db  000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah
 
6811
    db  000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah
 
6812
    db  015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh
 
6813
    db  015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh
 
6814
    db  015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh
 
6815
_palette2:                                   ; 0xc51c3 LB 0xc0
6816
6816
    db  000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah
6817
6817
    db  000h, 02ah, 02ah, 02ah, 000h, 02ah, 02ah, 02ah, 000h, 000h, 015h, 000h, 000h, 03fh, 000h, 02ah
6818
6818
    db  015h, 000h, 02ah, 03fh, 02ah, 000h, 015h, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 02ah, 02ah, 03fh
6825
6825
    db  015h, 015h, 000h, 015h, 015h, 02ah, 015h, 03fh, 000h, 015h, 03fh, 02ah, 03fh, 015h, 000h, 03fh
6826
6826
    db  015h, 02ah, 03fh, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh
6827
6827
    db  015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh
6828
 
_palette3:                                   ; 0xc5282 LB 0x300
 
6828
_palette3:                                   ; 0xc5283 LB 0x300
6829
6829
    db  000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah
6830
6830
    db  000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh
6831
6831
    db  015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh
6874
6874
    db  00bh, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh
6875
6875
    db  00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6876
6876
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6877
 
_static_functionality:                       ; 0xc5582 LB 0x10
 
6877
_static_functionality:                       ; 0xc5583 LB 0x10
6878
6878
    db  0ffh, 0e0h, 00fh, 000h, 000h, 000h, 000h, 007h, 002h, 008h, 0e7h, 00ch, 000h, 000h, 000h, 000h
6879
 
_video_save_pointer_table:                   ; 0xc5592 LB 0x1c
6880
 
    db  0c2h, 048h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
6879
_video_save_pointer_table:                   ; 0xc5593 LB 0x1c
 
6880
    db  0c3h, 048h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6881
6881
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
6882
 
_vgafont8:                                   ; 0xc55ae LB 0x800
 
6882
_vgafont8:                                   ; 0xc55af LB 0x800
6883
6883
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 081h, 0a5h, 081h, 0bdh, 099h, 081h, 07eh
6884
6884
    db  07eh, 0ffh, 0dbh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 06ch, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h
6885
6885
    db  010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 038h, 07ch, 038h, 0feh, 0feh, 07ch, 038h, 07ch
7008
7008
    db  000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 0ech, 06ch, 03ch, 01ch
7009
7009
    db  078h, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 070h, 018h, 030h, 060h, 078h, 000h, 000h, 000h
7010
7010
    db  000h, 000h, 03ch, 03ch, 03ch, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7011
 
_vgafont14:                                  ; 0xc5dae LB 0xe00
 
7011
_vgafont14:                                  ; 0xc5daf LB 0xe00
7012
7012
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7013
7013
    db  07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 07eh, 000h, 000h, 000h, 000h, 000h, 07eh, 0ffh
7014
7014
    db  0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh
7233
7233
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h
7234
7234
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h
7235
7235
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7236
 
_vgafont16:                                  ; 0xc6bae LB 0x1000
 
7236
_vgafont16:                                  ; 0xc6baf LB 0x1000
7237
7237
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7238
7238
    db  000h, 000h, 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 081h, 07eh, 000h, 000h, 000h, 000h
7239
7239
    db  000h, 000h, 07eh, 0ffh, 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 0ffh, 07eh, 000h, 000h, 000h, 000h
7490
7490
    db  000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7491
7491
    db  000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h, 000h, 000h, 000h
7492
7492
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7493
 
_vgafont14alt:                               ; 0xc7bae LB 0x12d
 
7493
_vgafont14alt:                               ; 0xc7baf LB 0x12d
7494
7494
    db  01dh, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 022h
7495
7495
    db  000h, 063h, 063h, 063h, 022h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02bh, 000h
7496
7496
    db  000h, 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 02dh, 000h, 000h
7510
7510
    db  000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 0f3h, 000h, 000h, 000h, 0f1h, 000h
7511
7511
    db  000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 0ffh, 000h, 000h, 000h, 0f6h, 000h, 000h
7512
7512
    db  018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h
7513
 
_vgafont16alt:                               ; 0xc7cdb LB 0x145
 
7513
_vgafont16alt:                               ; 0xc7cdc LB 0x144
7514
7514
    db  01dh, 000h, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h
7515
7515
    db  000h, 030h, 000h, 000h, 03ch, 066h, 0c3h, 0c3h, 0dbh, 0dbh, 0c3h, 0c3h, 066h, 03ch, 000h, 000h
7516
7516
    db  000h, 000h, 04dh, 000h, 000h, 0c3h, 0e7h, 0ffh, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h
7531
7531
    db  09eh, 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 066h, 0f3h, 000h, 000h, 000h
7532
7532
    db  000h, 0abh, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0ceh, 09bh, 006h, 00ch, 01fh
7533
7533
    db  000h, 000h, 0ach, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 096h, 03eh, 006h
7534
 
    db  006h, 000h, 000h, 000h, 000h
 
7534
    db  006h, 000h, 000h, 000h
7535
7535
_vbebios_copyright:                          ; 0xc7e20 LB 0x15
7536
7536
    db  'VirtualBox VESA BIOS', 000h
7537
7537
_vbebios_vendor_name:                        ; 0xc7e35 LB 0x13
7538
7538
    db  'Oracle Corporation', 000h
7539
7539
_vbebios_product_name:                       ; 0xc7e48 LB 0x21
7540
7540
    db  'Oracle VM VirtualBox VBE Adapter', 000h
7541
 
_vbebios_product_revision:                   ; 0xc7e69 LB 0x23
7542
 
    db  'Oracle VM VirtualBox Version 4.2.8', 000h
7543
 
_vbebios_info_string:                        ; 0xc7e8c LB 0x2b
 
7541
_vbebios_product_revision:                   ; 0xc7e69 LB 0x24
 
7542
    db  'Oracle VM VirtualBox Version 4.2.10', 000h
 
7543
_vbebios_info_string:                        ; 0xc7e8d LB 0x2b
7544
7544
    db  'VirtualBox VBE Display Adapter enabled', 00dh, 00ah, 00dh, 00ah, 000h
7545
 
_no_vbebios_info_string:                     ; 0xc7eb7 LB 0x29
 
7545
_no_vbebios_info_string:                     ; 0xc7eb8 LB 0x29
7546
7546
    db  'No VirtualBox VBE support available!', 00dh, 00ah, 00dh, 00ah, 000h
7547
7547
 
7548
 
section CONST progbits vstart=0x7ee0 align=1 ; size=0x0 class=DATA group=DGROUP
7549
 
 
7550
 
section CONST2 progbits vstart=0x7ee0 align=1 ; size=0x0 class=DATA group=DGROUP
7551
 
 
7552
 
  ; Padding 0x120 bytes at 0xc7ee0
7553
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7554
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7555
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7556
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7557
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7558
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7559
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7560
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7561
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7562
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7563
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7564
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7565
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7566
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7567
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7568
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7569
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
7570
 
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c4h
 
7548
  ; Padding 0x1 bytes at 0xc7ee1
 
7549
  times 1 db 0
 
7550
 
 
7551
section CONST progbits vstart=0x7ee2 align=1 ; size=0x0 class=DATA group=DGROUP
 
7552
 
 
7553
section CONST2 progbits vstart=0x7ee2 align=1 ; size=0x0 class=DATA group=DGROUP
 
7554
 
 
7555
  ; Padding 0x11e bytes at 0xc7ee2
 
7556
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7557
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7558
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7559
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7560
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7561
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7562
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7563
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7564
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7565
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7566
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7567
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7568
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7569
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7570
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7571
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7572
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
 
7573
    db  000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 016h