qemu: Ustaw lub wymuś wyższą rozdzielczość ekranu niż 640x480

12

Skonfigurowałem maszynę wirtualną za pomocą qemu-system-arm (emulacja ARM) z uruchomionym ściśnięciem Debiana. Teraz mam problem polegający na tym, że w preferencjach „Monitory” jako rozdzielczość mogę wybrać tylko 640 x 480.

Próbowałem wszystkich różnych opcji -vga (cirrus, std, vmware) bez powodzenia. Czy są jakieś sztuczki, może z konfiguracją xorg (jak to zrobić, najnowsze wersje Debiana nie mają już xorg.conf)?

Wszystko większe niż 800 x 600 byłoby na początku w porządku.

AndiDog
źródło
nadal nie ma szczęścia?…
poige
@poige: Nie, jeszcze nie znalazłem rozwiązania. Ubuntu może uruchomić najnowszą wersję qemu-system-arm, co rozwiązało dla mnie inny problem, ale w tej chwili nie mam czasu na wypróbowanie najnowszej wersji.
AndiDog
1
sprawdź ten wątek: forums.debian.net/viewtopic.php?f=10&t=45373
iby chenko
niezwiązane z ramieniem: superuser.com/questions/132322/virtualized-screen-resolution związane: stackoverflow.com/questions/16975972/...
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

Odpowiedzi:

3

Nie użyłem ramienia qemu, ale myślę, że to powinno działać:

Ze względu na kompatybilność ustaw grafikę na -vga std.

Po uruchomieniu otwórz terminal na serwerze X i spróbuj uruchomić, na przykład:
cvt 1024 768 60

powinno to wygenerować coś takiego:

# 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

Skopiuj wszystko w drugim wierszu (tym, który zaczyna się od „modeline”) oprócz samego słowa „modeline”. Więc skopiujesz

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

Następnie wpisz xrandr --newmodei wklej po tym. Więc wyglądałoby to tak:

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

Jeśli to się nie powiedzie, będę musiał wiedzieć, jak to się nie powiedzie, ale oznacza to pewien problem, którego nie jestem świadomy. Powinien działać z dowolną standardową rozdzielczością (VESA) - nie, 1366x768 nie jest standardem VESA i może zawieść. Dobrym rozwiązaniem jest 1024x768, podobnie jak 1280x1024, 1900x1200, 1920x1080 i wiele innych. 1360 x 768 jest również zgodny ze standardem.

Jeśli zadziałało, wpisz teraz xrandrbez żadnych argumentów, a otrzymasz listę dostępnych wyświetlaczy. Może wyświetlać wiele ekranów - chcesz wybrać taki, który mówi connected <resolution>, np

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

Twój może być inaczej oznaczony i prawdopodobnie zamiast tego będzie miał 640 x 480.

Weź pierwsze słowo (w moim przypadku VGA1) i skopiuj je. Teraz wpisz xrandr --addmode <output name> <the part in quotes from the modeline you calculated earlier, with quotes removed>, na przykład:

xrandr --addmode VGA1 1024x768_60.00

Jeśli to się powiedzie, możesz ustawić tryb wyświetlania z interfejsu użytkownika (prawdopodobnie), lub jeśli to się nie powiedzie, wpisując

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

(oczywiście zastępując twoje wartości)

Aby przywrócić te funkcje do ponownego uruchomienia, możesz uruchomić xrandr podczas uruchamiania (upewnij się, że zwraca zero, jeśli umieścisz go na przykład w skryptach instalacyjnych menedżera wyświetlania, w przeciwnym razie zmiany między butami mogą spowodować zawieszenie się lub ciągłe ponowne uruchomienie DM!), lub możesz umieścić coś w xorg.conf lub 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

Daj mi znać, jeśli to pomogło, proszę :)

Wyatt8740
źródło
Zrobił cvt 1024 768 60i wkleił wynikowe informacje do xrandrlinii. Wróciła wiadomość xrandr: Failed to get size of gamma for output default.
Wydaje się, że tak się dzieje w przypadku wszystkich poleceń xrandr, ale nie wpływa to na ich działania. Jednak na --output ... --modelinii dostaję, xrandr: Configure crtc 0 faileda rozdzielczość pozostaje na 640x480.
hm, to dziwne. Zobaczę teraz - właśnie dostałem qemu dla ARM tutaj.
Wyatt8740
@ Mały plik conf Xorg Wyatt8740 działa tutaj dobrze; qemu-system-i386 działający na Arch Linux x86_64 dla hosta Ubuntu i386.
tuk0z