Avanti Indietro Indice

5. Risoluzione dei problemi/FAQ

5.1 Generalità

Considerazioni sulla differenza tra i sistemi operativi

Considerazioni su Glibc, RedHat 5.x, Debian 2 **

Le seguenti considerazioni si applicano solo ai binari per Quake I (squake, glquake, e quake.x11). QuakeWorld e Quake II sono disponibili in entrambe le versioni, libc5 e glibc, rispettivamente dalle versioni 2.30 e 3.19.

Gli eseguibili di Quake sono compilati con la libc5. Le distribuzioni più recenti, come la RedHat 5.1 e la Debian 2.0, usano come libreria C di default la glibc, che non è compatibile. Se usate Quake su un sistema glibc dovete fare attenzione ad alcune cose:

Il mouse non funziona o sembra rispondere a caso.

Il mio Microsoft Intellimouse o il mio Logitech MouseMan+ non funziona.

La SVGAlib, che gestisce l'input del mouse per i Quake/QW/Q2 SVGA e GL, non supporta direttamente l'Intellimouse fino alla versione 1.3.0. Se avete una versione della SVGAlib precedente alla 1.3.0 dovreste aggiornarla, e poi usare il tipo di mouse IntelliMouse (per i mouse seriali) o IMPS2 (per i mouse PS/2) nel file libvga.config.

Il mio mouse risponde in ritardo ed è molto più lento che sotto Windows.

Ho una Voodoo2, e quando provo ad usare il renderer gl, questo riporta che non ho una scheda Voodoo installata.

Ci sono versioni diverse della Glide per le schede Voodoo e Voodoo 2. Assicuratevi di aver montato quella giusta.

Quando gioco con una delle versione di Quake sotto SVGAlib o GL e premo Ctrl-C, il gioco esce e talvolta lascia la console inutilizzabile.

A volte quando Quake/Quake II esce non in modo corretto, lascia la console inutilizzabile.

Sì, non è carino. La SVGAlib cattura il Ctrl-C e decide cosa farci invece di farlo gestire a Quake. Non conosco nessun modo per evitarlo, tranne modificando la SVGAlib.

Se usate Quake da uno script che resetti la tastiera e il terminale, come questo qui sotto, avrete meno possibilità di finire con il terminale incasinato se succede.


     #!/bin/sh
     ./quake2 $*
     kbd_mode -a
     reset
     

squake/quake2 non parte e dice "svgalib: cannot get I/O permissions"

Gli eseguibili di Quake devono girare come root, quindi dovete o farli girare come root o renderli setuid root. Controllate le istruzioni di installazione in questo documento per avere dettagli sull'argomento.

A volte, dopo avero giocato a una delle versioni di Quake su X, non funziona la ripetizione dei tasti.

Per una qualche ragione, la versione per X11 di Quake disabilita la ripetizione dei tasti mentre sta girando; se per qualche motivo il programma esce in maniera non normale, questa non viene riattivata. Fate

     xset r on
     
per riabilitarla.

Quake/Quake II dice "/dev/dsp : device not configured"

L'hardware del suono non è configurato correttamente. Forse vi manca solo un insmod sound, o forse dovrete ricompilare il kernel. Gli utenti RedHat possono provare a richiamare il programma sndconfig(8). Controllate la documentazione della vostra distribuzione di Linux e/o il Linux Sound HOWTO per avere altre informazioni su come configurare il suono sul vostro sistema.

Quake/Quake II per GL girano più lenti sotto Linux che sotto Windows. **

Il miniport per Windows della GL per 3Dfx è ottimizzato pesantemente per quello che fa Quake II. Mesa, d'altra parte, è più generale e meno ottimizzata. Come risultato Quake II sotto Linux gira più lentamente che sotto Windows. Non è una limitazione di Linux, ma una dei driver.

Con le uscite più recenti di QuakeWorld e Quake II, il miniport per 3Dfx citato prima è disponibile anche per Linux. Anche se non porta la performance di Quake per Linux allo stesso livello di quella di Windows, è un altro passo nella direzione giusta.

Oltre a questo, per gli utenti di Pentium Pro e Pentium II, ci sono alcuni trucchi che si possono fare con il buffering della memoria - l'ultimo device driver per 3Dfx ha il supporto per farlo automaticamente. Abilitare gli MTRR può velocizzare in modo significativo (10 fps sul mio sistema) GL Quake. Per informazioni più dettagliate leggete http://glide.xxedgexx.com/MTRR.html.

Come posso far partire un server e scollegarmi, e poi tornarci più tardi? **

screen(1) è un'utility valida per questo genere di cose. Vi permette di creare molti schermi virtuali in una singola tty e di passare tra uno di essi ed un altro. Screen è compreso nella maggior parte delle distribuzioni, ma lo potete scaricare da ftp://prep.ai.mit.edu/pub/gnu o da qualsiasi mirror GNU.

Inizializzate screen digitando il comando screen, poi create una nuova finestra premendo CTRL-A CTRL-C. Non vedrete molto mentre fate tutto ciò, ma state tranquilli, qualcosa sta succedendo.

Inizializzate il server di QuakeWorld:

     /usr/local/games/quake/qwsv 
     

Ora aprite una nuova finestra di screen con CTRL-A CTRL-C ed inizializzate il server di Quake II:

     /usr/local/games/quake2/quake2 +set dedicated 1
     

Potete passare avanti ed indietro tra i server premendo CTRL-A CTRL-N.

Premete CTRL-A CTRL-D per uscire dal programma. Screen ed i suoi server stanno ancora girando, ma non sono più visibili nella finestra del terminale. Ora potete scollegarvi ed i processi continueranno a girare normalmente.

Usate screen -r per ricollegarvi al processo di screen precedente ed accedere di nuovo ai server.

Questo è tutto. Per avere altre informazioni leggete la pagina man di screen(1).

5.2 Quake/QuakeWorld

Quake muore all'avvio con un segmentation fault.

In genere questo significa che il setup di rete non è corretto. Provate a fare partire Quake con l'opzione -noudp e vedete se l'errore si ripete. Se funziona, controllate il file /etc/hosts e verificate che ci sia una voce per la vostra macchina. Usate 127.0.0.1 come indirizzo IP se avete un accesso via modem che vi assegna un indirizzo diverso ogni volta che vi collegate.

Che differenza c'è tra glqwcl, glqwcl.3dfxgl e glqwcl.glx? ++

Quando uso glqwcl.glx a tutto schermo da X, non riesco ad usare il mouse o la tastiera. ++

Usate glqwcl.glx con l'opzione +_windowed_mouse 1. QuakeWorld GLX gira in una finestra anche se sembra a tutto schermo. Se spostate il mouse mentre il Window Manager è in modalità focus-follow-mouse, probabilmente lo sposterete fuori della finestra, e allora Quake smette di rispondere all'input del mouse e della tastiera. +_windowed_mouse 1 fa gestire in esclusiva il mouse a QuakeWorld.

5.3 Quake II

Quando provo a usare Quake II con il renderer GL, non funziona, e dice: "LoadLibrary("ref_gl.so") failed: Unable to resolve symbol"

Se subito prima della linea di "Unable to resolve symbol" avete dei messaggi come "can't resolve symbol 'fxMesaCreateContext'", la libreria Mesa che avete installato non ha compilato il supporto per le glide. Vedere la sezione Il renderer GL nella sezione sull'installazione di Quake per avere delle informazioni su come installare le Mesa e glide.

Quake II muore con l'errore LoadLibrary("ref_XXX.so") failed: No such file or directory

Quando aggiusto la luminosità mentre uso il renderer GL e premo "apply", non succede niente!

Digitate vid_restart nella console per fare attivare le modifiche.

Note sulla distribuzione 3.17

Nel momento in cui sto scrivendo, la versione di Quake II più recente è la 3.19. Se per qualche ragione state usando la versione 3.17, vi potrebbero essere utili le seguenti informazioni.

Due file di testo (quake2.conf e fixperms.sh) della versione 3.17 sono stati salvati inavvertitamente nel formato di testo MS-DOS CR/LF invece che nel formato Unix LF, cioè alla fine di ciascuna linea di questi file c'è un carattere di carriage return in più, e non funzioneranno bene finché non risolverete questo problema.

Usate tr(1) per togliere i CR.

     for i in fixperms.sh quake2.conf
     do
     mv $i $i.bak
     tr -d '\r' < $i.bak > $i
     done
     

Quando uso Quake II con l'opzione +set vid_ref glx a tutto schermo da X, non riesco ad usare il mouse o la tastiera. ++

Usate quake2 GLX con l'opzione +set _windowed_mouse 1. Quake2 GLX gira in una finestra anche se sembra prendere tutto lo schermo. Se spostate il mouse mentre il window manager è in modalità focus-follow-mouse, è possibile che spostiate il puntatore fuori della finestra, e allora Quake II non risponderà più all'input del mouse e della tastiera. L'opzione +set _windowed_mouse 1 fa usare solo a Quake II l'input del mouse.

Perché non posso passare ad alcune delle modalità SVGA che sono nel menù Video di Quake II? **

La SVGAlib probabilmente non sa come ricreare le modalità sulla vostra scheda. Quando Quake II parte con il renderer SVGA (ref_soft.so), stampa un elenco di tutti i modi che la SVGAlib ha disponibili:

     ------- Loading ref_soft.so -------
     Using RIVA 128 driver, 4096KB.
     mode 320: 200 1075253220
     mode 320: 240 1075253220
     mode 320: 400 1075253220
     mode 360: 480 1075253220
     mode 640: 480 1075253220
     mode 800: 600 1075253220
     mode 1024: 768 1075253220
     mode 1280: 1024 1075253220
     
Questi sono i soli modi tra cui potete passare con successo dal menù Video. Se ad esempio 512x384 non è sulla lista, sceglierlo dal menù video non funziona.

La SVGAlib vi fa definire delle nuove modalità video per alcuni chipset in libvga.config, in modo che possiate creare da soli le vostre modalità video. Controllate la documentazione della SVGAlib per altri dettagli su questo argomento.


Avanti Indietro Indice