Det här avsnittet beskriver hur du ändrar PGX32:s standardupplösning på systemfönstret. Det finns också ett felsökningsavsnitt som beskriver lösningar på diverse möjliga problem relaterade till att ändra upplösning på systemfönstret.
För de flesta användare går det normalt bra att använda standardupplösningen. Men det finns tillfällen då du kan behöva ändra standardupplösningen, t.ex. om...
...du ändrar X Windows-djupet från standardvärdet i tabellen till något annat så skall du konfigurera så att systemfönsterdjupet är detsamma som X Windows-djupet.
....bildskärmens bild inte blir stabil i standardupplösningen så måste du välja en annan upplösning.
De allmänna rekommendationerna vid byte av standardupplösning på systemfönster är:
För att X Windows skall kunna köras i 8/24-läge måste systemfönsterupplösningen ha 24-bitarsdjup.
Som standard är systemfönsterupplösningar upp till 1280x1024 automatiskt 24-bitars. Högre upplösningar är som standard 8-bitars.
Använd GFXconfig -i för att testa en upplösning innan du konfigurerar systemfönstret att ha den upplösningen.
De olika sätt att ändra systemfönsterupplösning som tas upp här är:
Funktionen EDID-autoavkänning
output-device-metoden
Videolägesmetoden
Videotidsmetoden
Om du använder en bildskärm som följer DDC2B/EDID kommer standardupplösningen att avgöras genom autoavkänningsfunktionen.
Med detta protokoll kontrollerar kortet först "Standard Timing Identifiers" (och väljer den första som stöds) och försöker sedan matcha Established Timings.
Om metoden ovan misslyckas använder kortet som standard 1152x900x66.
Bildskärmen måste vara påslagen innan systemet startas för att PGX32 skall kunna kommunicera med den.
Den upplösning som ställs in genom instruktionerna här används i stället för den information som tas emot via EDID.
Det går att ange ett PGX32-korts systemfönsterupplösning med värdet på miljövariabeln output-device i formatet screen:rAxBxC, där:
A är önskat antal bildpunkter horisontellt, B är antalet linjer och C är den önskade uppdateringsfrekvensen.
Systemet kontrollerar värdena mot en intern lista med upplösningar (se Tabell 11-4) och använder den post som motsvarar dina val som systemfönsterupplösning.
Om du t.ex. vill använda VESA1024x768x75 som systemfönsterupplösning skriver du följande vid ok-prompten:
ok setenv output-device screen:r1024x768x75 ok reset
Den nya systemfönsterupplösningen börjar användas vid nästa omstart och förblir densamma till dess output-device-variabeln ändras manuellt.
Vid ok-prompten i Boot PROM-läge kan PGX32-kortens systemfönsterupplösning lätt ställas in med hjälp av något av de 34 förinställda upplösningslägena. Dessa upplösningsinställningar är videolägena 0-33 (Tabell 11-4).
Använd lägena 0-25 för att ange 24-bitars systemfönsterfärgdjup, eller 26-33 för att välja 8-bitarsdjup.
Läge |
Upplösning (X x Y / Hz) |
---|---|
0 |
640 ¥ 480 / 60 |
1 |
640 ¥ 480 / 72 |
2 |
640 ¥ 480 / 75 |
3 |
640 ¥ 480 / 85 |
4 |
800 ¥ 600 / 60 |
5 |
800 ¥ 600 / 72 |
6 |
800 ¥ 600 / 75 |
7 |
800 ¥ 600 / 85 |
8 |
1024 ¥ 768 @ 60 |
9 |
1024 ¥ 768 / 70 |
10 |
1024 ¥ 768 / 75 |
11 |
1024 ¥ 768 / 77 * |
12 |
1024 ¥ 768 / 85 |
13 |
1024 ¥ 800 / 85 * |
14 |
1152 ¥ 900 / 60 |
15 |
1152 ¥ 900 / 66 * |
16 |
1152 ¥ 900 / 70 |
17 |
1152 ¥ 900 / 75 |
18 |
1152 ¥ 900 / 76 * |
19 |
1152 ¥ 900 / 85 |
20 |
1280 ¥ 800 / 76 * |
21 |
1280 ¥ 1024 / 60 |
22 |
1280 ¥ 1024 / 67 * |
23 |
1280 ¥ 1024 / 75 |
24 |
1280 ¥ 1024 / 76 * |
25 |
1280 ¥ 1024 / 85 |
26 |
1600 ¥ 1200 / 66 * |
27 |
1600 ¥ 1200 / 76 * |
28 |
1600 ¥ 1200 / 60 |
29 |
1600 ¥ 1200 / 65 |
30 |
1600 ¥ 1200 / 70 |
31 |
1600 ¥ 1200 / 75 |
32 |
1600 ¥ 1200 / 76 |
33 |
1600 ¥ 1200 / 80 * |
* Denna upplösning använder sammansatt synkronisering.
I "Använda nvedit för att redigera NVRAM" finns en beskrivning av nvedit-kommandona.
Om du t.ex. vill ställa in upplösningen till 1024x768/60Hz, videoläge 8, skriver du:
ok nvedit 0: 8 value video-mode 1: <ctrl-c>ok nvstoreok setenv use-nvramrc? trueok reset
De sista tre kommandona aktiverar NVRAM. Om du inte skriver in dem kommer de ändringar du gör med nvedit inte att få någon effekt.
Om alla metoderna ovan misslyckas kan du ange de exakta tidsvärdena för en viss upplösning. Detta är den sista utvägen, och även den använder nvedit. Detta är också den mest komplicerade metoden och kräver att du har viss kunskap om alla de olika tidsparametrarna för den upplösning du vill ha. Därför bör du inte använda denna metod om din skärm stöder de färdiga videolägena, som beskrivs i stycket ovan. Se "Använda nvedit för att redigera NVRAM" för en beskrivning av nvedit-kommandona.
Du skall bara använda den här metoden om alla metoderna ovan har misslyckats.
Om du t.ex. vill ställa in systemfönsterupplösningen till 1280x1024/76Hz skriver du så här:
ok nvedit 0: : video-timing " 1280, 384, 32, 64, \ 1024, 43, 3, 8, 135000000, 0" ; 1: <ctrl-c>ok nvstoreok setenv use-nvramrc? trueok reset
Syntaxen är ytterst viktig. Mellanslagen måste stå precis som de står i exemplet.
De sista tre kommandona aktiverar NVRAM. Om du inte skriver in dem kommer de ändringar du gör med nvedit inte att få någon effekt.
Här är en kort beskrivning av de tio parametrar som används i denna metod.
horisontell upplösning (i bildpunkter)
sammanlagd horisontell "blanking"
horisontell "front porch"
horisontell synkroniseringsbredd
vertikal upplösning (i linjer)
sammanlagd vertikal "blanking"
vertikal "front porch"
vertikal synkroniseringsbredd
punktklocka i Hz
synkroniseringsvärde:
1 separat synk
1 synk på grönt
512 positivt vertikal synkroniseringspuls
1024 positivt horisontell synkroniseringspuls
2048 sammansatt synkroniseringspuls
(Lägg ihop värdena för att få en kombination)
För att få information om vilka värden du skall använda i den här metoden kontaktar du SunService på 1-800-USA-4SUN och berättar om dina skärmkrav.
Problem |
Lösning |
---|---|
Följde instruktionerna för att konfigurera systemfönsterupplösning, men kortet använder fortfarande en annan upplösning än den angivna. |
Det finns ett schema över hur olika värden skall prioriteras som används när PGX32 skall avgöra vilken upplösning som skall användas på systemfönstret vid start. Den inbyggda programvaran i PGX32 kontrollerar de olika metoderna i den ordning som anges nedan. Om det hittar någon upplösning från den aktuella metoden används denna, annars fortsätter kortet ner genom prioritetslistan och letar efter upplösningsinformation. Om ingen information hittas används standardupplösningen. Metoderna prioriteras med följande ordning, med den som undersöks först på första plats i listan: 1. output-device-metoden 2. video-timing-metoden 3. video-mode-metoden 4. DDC2B/EDID 5. Kortets standardupplösning |
Jag vet att den upplösning jag har valt för PGX32 är kompatibel med skärmen, men jag får ändå ingen bild. |
Tidigare versioner av PGX32-kortet behöver en adapter för att sammansatt synkronisering skall fungera. |
Program som använder PHIGS, XGL eller PEX kan krascha fönstersystemet på ett PGX32-bildskärmsminne. |
Detta beror på ett fel i PEX-biblioteket och är inte speciellt för PGX32. Lösningen är att ställa in variabeln XGLNOPEX innan du kör program som använder PHIGS, PEX eller XGL. För att ställa in variabeln skriver du: % setenv XGLNOPEX TRUE XIL-korrigeringsfilerna 105361-06, 107013-01 och 105570-03 måste installeras för att ShowMeTV skall fungera. |
I "Videotidsmetoden" finns information om hur du använder nvedit. Det finns ett antal tangentbordssekvenser som du måste använda för att redigera variablerna i NVRAM:
Tabell 11-6 NVRAM-editorn
Tangentsekvens |
Beskrivning |
---|---|
Backsteg |
Tar bort tecknet före kursorn |
ctrl-1 |
Listar de nuvarande NVRAM-värdena |
ctrl-p |
Går upp en rad |
ctrl-n |
Går ned en rad |
ctrl-b |
Går tillbaka ett tecken |
ctrl-l |
Tar bort till början av raden |
ctrl-k |
Slår ihop den aktuella raden och nästa |
ctrl-u |
Tar bort den aktuella raden |
ctrl-c |
Avslutar nvram-editorn (går tillbaka till ok-prompten) |
Ändringarna börjar bara gälla om de lagras med kommandot nvstore, som skrivs in vid ok-prompten. När ändringarna har lagrats måste NVRAM aktiveras innan systemet kan köra det. Detta görs genom att ställa in use-nvramrc? till true.