qemu: Đặt hoặc buộc độ phân giải màn hình cao hơn 640x480


12

Tôi đã thiết lập một máy ảo bằng cách sử dụng qemu-system-arm (mô phỏng ARM) chạy Debian nén. Bây giờ tôi có một vấn đề là trong tùy chọn "Màn hình", tôi chỉ có thể chọn độ phân giải 640x480.

Đã thử tất cả các tùy chọn -vga khác nhau (cirrus, std, vmware) không có may mắn. Có bất kỳ thủ thuật nào, có thể với cấu hình xorg (làm thế nào để làm điều đó, các phiên bản Debian gần đây không còn xorg.conf nữa không)?

Bất cứ điều gì cao hơn 800x600 sẽ ổn ngay từ đầu.


vẫn không có may mắn?
khoan

@poige: Không, tôi chưa tìm thấy giải pháp. Ubuntu có thể chạy phiên bản mới nhất của qemu-system-arm, giải quyết một vấn đề khác cho tôi, nhưng hiện tại tôi không có thời gian để thử phiên bản gần đây.
AndiDog


Câu trả lời:


3

Tôi chưa sử dụng cánh tay qemu, nhưng tôi nghĩ nó sẽ hoạt động:

Để tương thích, đặt đồ họa thành -vga std.

Sau khi khởi động, hãy mở một thiết bị đầu cuối trong máy chủ X của bạn và thử chạy, ví dụ:
cvt 1024 768 60

điều này sẽ tạo ra một cái gì đó như:

# 1024x768 59.92 Hz (CVT 0.79M3) hsync: 47.82 kHz; pclk: 63.50 MHz
Modeline "1024x768_60.00"   63.50  1024 1072 1176 1328  768 771 775 798 -hsync +vsync

Sao chép mọi thứ trên dòng thứ hai (dòng bắt đầu bằng 'modeline') ngoại trừ từ 'modeline'. Vì vậy, bạn sao chép

"1024x768_60.00"   63.50  1024 1072 1176 1328  768 771 775 798

Sau đó, gõ xrandr --newmodevà dán sau đó. Vì vậy, nó sẽ trông giống như:

xrandr --newmode "1024x768_60.00"   63.50  1024 1072 1176 1328  768 771 775 798

Nếu điều này thất bại, tôi sẽ cần phải biết nó thất bại như thế nào, nhưng nó biểu thị một số vấn đề tôi không biết. Nó nên hoạt động với bất kỳ độ phân giải tiêu chuẩn (VESA) nào - không, 1366x768 không phải là tiêu chuẩn VESA và có thể thất bại. 1024x768 là một ứng dụng tốt để thử, cũng như 1280x1024, 1900x1200, 1920x1080, và nhiều thứ khác. 1360x768 cũng tuân thủ tiêu chuẩn.

Nếu nó hoạt động, bây giờ gõ xrandrmà không có bất kỳ đối số và bạn sẽ nhận được một danh sách các màn hình có sẵn. Nó có thể liệt kê nhiều màn hình - bạn muốn chọn một màn hình cho biết connected <resolution>, chẳng hạn như

VGA1 connected 1600x900+1280+0 (normal left inverted right x axis y axis) 443mm x 249mm

Bạn có thể được dán nhãn khác nhau và có thể sẽ đọc 640x480 thay thế.

Lấy từ đầu tiên (trong trường hợp của tôi VGA1) và sao chép nó. Bây giờ gõ xrandr --addmode <output name> <the part in quotes from the modeline you calculated earlier, with quotes removed>, chẳng hạn như:

xrandr --addmode VGA1 1024x768_60.00

Nếu điều này thành công, bạn có thể đặt chế độ hiển thị từ UI (có thể) hoặc nếu thất bại bằng cách nhập

xrandr --output VGA1 --mode 1024x768_60.00

(tất nhiên thay thế giá trị của bạn)

Để thực hiện việc khởi động lại này, bạn có thể chạy công cụ xrandr khi khởi động (đảm bảo nó trả về 0 nếu bạn đặt nó vào ví dụ tập lệnh thiết lập trình quản lý hiển thị của bạn, nếu không, việc thay đổi giữa các khởi động có thể khiến DM của bạn bị treo hoặc liên tục khởi động lại!), hoặc bạn có thể đặt một cái gì đó vào xorg.conf hoặc xorg.conf.d:

Section "Device"
    Identifier    "Configured Video Device"
    Driver        "vesa"
EndSection

Section "Monitor"
    Identifier    "Configured Monitor"
    HorizSync 42.0 - 52.0 
    VertRefresh 55.0 - 65.0 
    Modeline "1024x768" 60.80  1024 1056 1128 1272   768  768  770  796
    Modeline "800x600" 38.21 800 832 976 1008 600 612 618 631
    Modeline "640x480" 24.11 640 672 760 792 480 490 495 50
    EndSection

Section "Screen"
    Identifier    "Default Screen"
    Monitor        "Configured Monitor"
    Device        "Configured Video Device"
    DefaultDepth    24
    Subsection "Display"
        Depth       24
        Modes       "1024x768" "800x600" "640x480"
       EndSubsection
EndSection

Hãy cho tôi biết nếu bất kỳ điều này giúp đỡ, xin vui lòng :)


Đã cvt 1024 768 60và dán thông tin kết quả vào một xrandrdòng. Những gì đã trở lại là tin nhắn xrandr: Failed to get size of gamma for output default.

Trên thực tế điều đó dường như xảy ra đối với tất cả các lệnh xrandr nhưng không ảnh hưởng đến hành động của họ. Tuy nhiên, trên --output ... --modeđường dây, tôi nhận được xrandr: Configure crtc 0 failedvà độ phân giải vẫn ở mức 640x480.

hm, thật lạ Tôi sẽ xem xét nó ngay bây giờ - chỉ cần có qemu cho ARM ở đây.
Wyatt8740

@ Xatt conf file nhỏ của Wyatt8740 hoạt động tốt ở đây; qemu-system-i386 chạy trên Arch linux x86_64 cho máy chủ Ubuntu i386.
tuk0z
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.