Di seguito gli interventi pubblicati in questa sezione, in ordine cronologico.
E' da anni che sono alle prese con più di un computer portatile col problema di non essere capace di masterizzare un CD-R o un DVD-R.
Il problema si manifesta con diversi messaggi di errore usando i vari software.
Roxio, per esempio, dice:
Sense: 03 ASC: 73 ASCQ: 03 (Command 2A)
Non si sa cosa voglia dire, ma, usando un altro software come ImgBurn, sono pervenuto a qualcosa di meno criptico:
Failed so send Cue Sheet
Reason: Power Calibration Area Error
Sostanzialmente il software di masterizzazione non è in grado di determinare la velocità di calibrazione di potenza ottimale, cioè una sorta di piccola prova di premasterizzazione per impostare la potenza del laser giusta per scrivere, col risultato che salta la masterizzazione del disco.
Sulla rete ci sono tanti consigli su come fare. Il primo di tutti è quello di aggiornarsi il software di masterizzazione, cercando di recuperare l'ultima versione disponibile.
Un altro consiglio è quello di provare a cambiare marca dei CD o dei DVD, a causa della bassa qualità dei supporti "anonimi".
Uno abbastanza ovvio è quello di provare a masterizzare con velocità più basse di quella massima.
Si suggerisce anche di provare a disabilitare il servizio "IMAPI CD-Burning COM service" che si può trovarsi tra i Servizi tra gli Strumenti di Amministrazione di Windows.
Nessuno però suggerisce quello che ho provato io, cioè:
prendere un cotton fioc e provare a rimuovere il sottilissimo alone che potrebbe coprire leggermente l'ottica del laser dell'unità CD-DVD-BD.
Io ho provato ed la tecnica è funzionata: il cotton fioc si è sporcato leggermente di polvere, che era sufficiente per impedire qualsiasi operazione di calibrazione, anche se non causava alcun problema in lettura dei media.
Non c'è scritto da nessuna parte nel BIOS di un PC di marca HP (Hewlett Packard) o comunque durante la fase del bootstrap, ma se premete F9, potete andare in un'applicazione preposta dal costruttore per testare la CPU, la RAM e lo stato dei dischi rigidi collegati all'hardware.
Tutte le NAS della QNAP, in primis la famiglia TS come la TS-212 o la TS-219, prevedono sul retro un bottone di reset, che può essere premuto per un certo lasso di tempo a seconda dell'operazione che si vuole intraprendere.
Può succedere che, a causa di un'improvviso blackout, la NAS si riaccenda e non utilizzi più il numero IP che le era stato assegnato in precedenza da qualche server DHCP della rete locale, col risultato che la NAS risulta a tutti gli effetti irraggiungibile.
Basic system reset (3 sec)
Dopo aver premuto il bottone reset per 3 secondi, si dovrebbe sentire un beep. Questi che seguono sono i parametri che vengono riportati alle impostazioni iniziali:
- password dell'amministratore di sistema: reimpostazione ad "admin" da qualsiasi altra impostazione
- configurazione TCP/IP: viene ottenuto un nuovo numero IP automaticamente via DHCP
- configurazione TCP/IP: disabilitazione del Jumbo Frame
- configurazione TCP/IP: se è stato abilitato il port trunking (presente solo sui modelli con doppia Ethernet), la modalità di port trunking viene resettata ad "Active Backup (Failover)"
- Porta di sistema: 8080 (porta di servizio di sistema)
-
- Livello di sicurezza: basso (consentite tutte le connessioni)
- password del pannello LCD: nessuna
- VLAN disabilitata
- Service binding: tutti i servizi NAS tornano a funzionare su tutte le interfacce di rete
Spesso mi capita di dover accedere attraverso l'interfaccia grafica web based di alcuni dispositivi presenti sulla mia rete locale (applicazioni WebDAV su iPhone, NAS).
Da questo punto di vista Vista è molto più utile ed efficace per accedere a tali servizi. Esso monitora costantemente la rete e mostra le risorse condivise nella finestra Rete. Se avete per esempio una NAS o un modem router ADSL/Wifi configurabile, vi ritroverete tra le icone specifiche per accedere a tali servizi.
In Lion (OS X 10.7), da quel poco che ne so io, non c'è una cosa analoga. Dovete conoscere i numeri IP dei dispositivi per aprire subito il browser. Siccome ad Apple quasi sempre non sfugge nulla, ho pensato che troppi dettagli forse non è il caso di mostrarli all'utente finale e magari elementari aspetti di privacy anche su una rete locale vanno salvaguardati, tanto l'amministratore di una rete locale sa sempre come fare per configurare e sistemare problematiche di varia natura.
Neanche qui le informazioni di Finder sono utili, perché non è indicato nemmeno il numero IP del dispositivo trovato sulla rete locale.
Potete sempre arrangiarvi con svariati strumenti come:
- lanciare Utility Network dalla cartella Utility in Applicazioni: basterà dare una pingata per scovare un po' di roba, per esempio chiedendo il ping 192.168.1.255
- potete provare Bonjour Browser di Tildesoft
In rete ho trovato qualcuno che ha sondato un po' l'argomento, ma al momento niente di esaustivo e risolutivo.
E' ovvio che l'argomento è apertissimo e che prossimamente proseguirò in questa analisi.
Apple, col rilascio di Mac OS X 10.7, conosciuto più comunemente come Lion, ha deciso di non mettere più a disposizione il front-end per accedere al computer via FTP, principalmente per motivi di sicurezza e di affidabilità generale del protocollo di trasferimento file.
In realtà dentro Lion c'è ancora tutto quanto; è solo il front-end che è stato eliminato, basta solo smanettare un po' per riattivare il server ftp (ftpd):
sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist
Per spegnerlo invece, usate questo:
sudo -s launchctl unload -w /System/Library/LaunchDaemons/ftp.plist
Anche Apple stessa nell'area di supporto del proprio sito ha trattato l'argomento qui.
Se invece non avete confidenza con la linea di comando, può esservi di aiuto questo AppleScript della Troncept, OS X Lion FTPD Enable App, che attiva nella barra del menu uno menu specifico che serve proprio a questo.
E' disponibile anche un'applicazione molto più ricca per manovrare le leve del sipario di Lion, cioè Lion Tweaks, sviluppata da uno studente norvegese, che tra le tante operazioni, consente di riabilitare proprio ftpd in Lion.
Generalmente dovrebbe essere il template corrente a prevedere di avere una propria favicon da mostrare a fianco della barra degli indirizzi o come etichetta dentro il pannello del browser.
In Joomla! 2.5 è pertanto necessario andare dentro la cartella del template:
templates/il_tuo_template/
e sostituire il favicon preimpostato con una nuova icona sempre di nome favicon.ico. Tale icona dovrebbe contenere auspicabilmente tre versioni dell'icona, in attesa di vedere cosa succederà tra breve nell'evoluzione dei browser:
- icona 32x32 pixel a 32 bit
- icona 16x16 pixel a 32 bit
- icona 16x16 pixel a 256 colori
Più di un mese fa avevo sollevato la questione su come trovare un metodo per stabilire un punto interno ad un poligono qualsiasi. La questione era stata posta in questo articolo, anche se più di qualcuno aveva confuso questo tipo di problema col problema di stabilire se un punto si trovi o meno dentro un poligono.
Ripeto ancora una volta la questione: il problema algoritmico è proprio quello di trovare un punto completamente contenuto in un poligono ed il poligono può essere indifferentemente convesso o concavo. Il punto deve trovarsi internamente e non sul bordo, altrimenti basterebbe prendere uno qualsiasi dei vertici del perimetro o il punto medio di un qualsiasi lato.
La soluzione più elegante ed al tempo stesso molto pratica da implementare algoritmicamente si basa sul fatto che qualsiasi poligono è sempre suddivisibile in triangoli e, grazie a questa cosa, si può dimostrare per induzione che una soluzione valida al problema è il punto medio di una diagonale del poligono. E' chiaro che a questo punto la parte "difficile" è trovare una diagonale "interna" al poligono, cioè un segmento che congiunge una coppia qualsiasi di lati. Probabilmente in un poligono possono essere tante le diagonali completamente contenute nel poligono, ma ci limiteremo a trovare la prima.
Supponiamo per un attimo di pensare ad un algoritmo molto semplice per pervenire a soluzione:
- ciclare da 1 ad n per costruire preventivamente l'insieme dei lati del poligono
- prendere ad uno ad uno ogni vertice (i) da 1 fino a n, se n è il numero di vertici del poligono
- prendere ad uno ad uno un altro vertice (j) da i+1 fino ad n, con cui andare a formare una diagonale di prova, che non deve appartenere all'insieme dei lati del poligono
- prendere ad uno ad uno uno lato k nell'insieme dei lati costituenti il poligono
- controllare se la diagonale di prova che congiunge il vertice i al vertice j interseca il lato k
- se la diagonale di prova non interseca alcun altro lato, essa potrebbe essere completamente contenuta nel poligono, come potrebbe anche essere completamente esterna al poligono
- controllare se il punto medio della diagonale di prova è dentro o fuori il poligono e se è dentro, abbiamo la soluzione al problema
Come potete vedere questa implementazione è relativamente semplice, ma tutto fuorché efficiente, visto che la sua complessità polinomiale è O(n3).
Arriviamo pertanto al dunque, cioè illustro rapidamente il metodo che è basato sulla dimostrazione che esiste sempre una diagonale interna in un poligono [O'Rourke 13-14]. L'idea è appunto che il punto medio di una diagonale interna è sicuramente interno al poligono.
La dimostrazione per induzione la possiamo fare considerando il numero di vertici/lati di un poligono. Se c'è la soluzione per un poligono di N lati, si può trovare anche la soluzione per un poligono di N+1 lati.
Nel caso del triangolo, base dell'induzione perché è il poligono con numero minimo di lati (3), la soluzione al problema la troviamo banalmente utilizzando il centroide tra i tre vertici.
Per un quadrilatero, se esso è convesso, abbiamo due diagonali interne, quindi sicuramente entrambe vanno bene, se invece il quadrilatero è concavo, abbiamo una sola diagonale interna, ma abbiamo comunque la soluzione. C'è da notare che una diagonale interna è proprio il lato che è condiviso tra due triangoli contigui di una possibile triangolarizzazione di un poligono, cioè basta considerare in una triangolarizzazione proprio uno dei lati contigui dei triangoli come diagonale interna.
Passiamo ora all'algoritmo:
- individuare un vertice convesso v del poligono e consideriamo a e b i vertici adiacenti a v
- per ogni altro vertice q del poligono:
- se il vertice q è dentro il triangolo avb, calcolare la distanza di v ortogonale al segmento ab
- tenere per buono il vertice q se la sua distanza è minima rispetto alle altre calcolate
- se non esiste alcun punto q dentro il triangolo avb, allora considerare come soluzione il punto medio del segmento ab o il centroide di avb
- se invece qualche punto q è dentro il triangolo avb, allora la diagonale qv è sicuramente interna ed in tal caso la soluzione è il suo punto medio
Nell'immagine qui a lato potete notare che il punto più vicino alla retta ab, non cade dentro al triangolo avb, quindi la soluzione al problema è proprio data dal centroide del triangolo avb o il punto medio del segmento ab, in quanto diagonale interna.
Potete notare che la complessità dell'algoritmo è O(n), quindi non si può desiderare niente di meglio dal metodo: esso è ottimale anche come performance.
E' proprio vero che a volte mancano le parole per esprimere sentimenti e concetti che sono difficili da esternare. Altre volte invece sono gli stessi sentimenti e le emozioni ad essere così forti a togliere le parole di bocca; sono talmente forti che lasciano basiti.
Ci sono al contrario delle situazioni in cui le parole si sprecano e forse sarebbe il caso di parlare o di scrivere un po' meno, ma ci sono tanti momenti in cui bisogna anche saper leggere tra le righe, bisogna saper cogliere un secondo significato, un'intenzione più profonda che va oltre le semplici lettere di sterili parole.
E' così che stasera sono partito alla ricerca di una nuove dimensione letteraria, la terza. Ho provato un po' a cercare quel qualcosa che non sono riuscito ancora a carpire, ho provato a guardare tra le lettere, ho provato ad analizzare alla radice ogni parola, ma che dico, sono andato alla radice di ogni singola lettera per comprendere una volta per tutte cosa si celasse dietro ogni parola e sotto ogni lettera.
C'era una strana sensazione nelle ultime parole che ho scritto, c'era quel non so che che non riuscivo a realizzare fino in fondo e solo il senso dell'olfatto è riuscito ad aiutarmi in questa incontentabile ricerca cha spazia dall'indagine lessicografica arrivando a quella etimologica.
Cosa ci ho trovato? Il rigurgito di latte di Tommaso!
This week I incurred in an issue of glLineStipple implementation of ATI's OpenGL and the graphic chipset installed in my laptop computer, powered by an ATI Mobility Radeon HD 3470.
Sony doesn't let ATI release newer driver updates for such graphic board, used also with other notebooks on the market since 2009, so I have to keep driver 8.583.2.2000 released on 5/14/2009, although ATI reached release 11.12 for its drivers' collection and its ATI Catalyst manager.
I gave a chance also to Mod Cat - Ati Mobility Modder, which a modder that claims to jailbreak the ATI setup (formerly AMD), in order to install newer drivers and bypass the Catalyst pass check, but I wasn't able to succeed.
The latter 8 megabytes of machine code inside the DLL contain support for a more extensive list of graphic chipset, and even a workaround to circumvent the bug I can't fix.
At now when you draw lines or polygons using the glLineStipple mode, with some polygons overlapping other triangles, the ATI implementation doesn't throw any exception, but it hangs, taking about 100 or 1,000 times the standard rendering time. You can accept such performance decrease, so that I'm going to exclude such OpenGL feature, available since the first releases of the most cross-platform 3D library.
Nei giorni scorsi sono incappato in un'incompatibilità tra la funzione glLineStipple dell'implementazione ATI di OpenGL ed il chipset grafico installato nel mio portatile, cioè la ATI Mobility Radeon HD 3470.
Purtroppo per me la Sony non autorizza aggiornamenti a tale chipset grafico, utilizzato anche per altri portatili in circolazione nel 2009, pertanto sono costretto a tenermi il driver 8.583.2.2000, rilasciato ancora il 14/5/2009, quando invece la ATI è già arrivata alla versione 11.12 dei propri driver ed il relativo gestore ATI Catalyst.
Ho provato anche ad utilizzare Mod Cat - Ati Mobility Modder, ossia un software che consente di craccare i file dell'installazione di ATI (ora di proprietà di AMD), in modo da riuscire nell'intento di installare i driver più recenti, bypassando così il controllo di Catalyst, ma al momento non ci sono ancora riuscito.
Son pertanto costretto a tenermi per un po' l'ATI OpenGL driver in versione 6.14.10.8501, che porta la data del 15/5/2009, le cui dimensioni sono di circa 10,8 MB. L'unica versione, alla data odierna, è decisamente più grande nelle dimensioni, 18,1 MB, ed è arrivata alla 6.14.10.11318 rilasciata al 10/11/2011.
Evidentemente in quei 7 MB in più di codice macchina ci sono sicuramente non solo il supporto di un più cospicuo numero di schede grafiche, ma sicuramente anche un workaround per gestire il problema in cui mi ritrovo.
Attualmente quando si va a disegnare linee o poligoni usando il mode glLineStipple e questi poligoni si sovrappongono ad altre facce, l'implementazione di ATI non solleva alcun bug, ma diventa pesantemente lenta, impiegando 2 o 3 ordini di grandezza per eseguire gli stessi compiti di rendering. E' praticamente inaccettabile, tanto che sto pensando di non usare tale prestazione di OpenGL, presente sin dagli esordi della più famosa libreria 3D cross-platform.
|