Piero V.

Alcuni appunti su Bullet e raylib

In passato mi è già capitato di parlare di Bullet, lo avevo usato qualche volta tanto tempo fa, tanto che ne avevo fatto anche due-tre articoli nel 2012!

Da allora molte cose sono cambiate, tranne le API di Bullet, che almeno superficialmente sono più o meno sempre quelle, e l’interesse che sporadicamente rinasce in me per quella libreria.

Una cosa che è cambiata è che ho cominciato a lavorare su un software di modellazione 3D, e in particolare mi occupo della parte dei plugin, di fare esempi a scopo di documentazione e cose del genere. Così avevo avuto l’idea di provare a scriverne uno di integrazione con Bullet.

L’idea alla fine non è partita, ma a me era rimasta la voglia di sperimentare un po’ con questo motore, e in particolare anche vedere come si comporta con la parte di softbody.

Così nelle ultime due settimane ho un po’ lavorato a questi esempi e avevo l’idea di farne anche alcuni carini, ma mi sa che metterò un po’ in pausa l’idea, quindi intanto volevo condividere qui alcune delle cose che ho imparato. … [Leggi il resto]

WiFi lento su Oneplus One

Negli ultimi tempi avevo accumulato un po’ di app che non mi sarebbero più servite, quali applicazioni per i treni di 3 paesi diversi, app per alberghi e aerei, quindi, sfruttando anche il periodo di calma con le ferie, ho deciso di fare pulizia a modo mio: cambiando ROM e aggiornando il mio vetusto Oneplus One ad Android 10/Q.

La cosa non è stata proprio indolore: la prima ROM che ho provato aveva problemi con le gestures di Q, la batteria durava pochissimo, dovevo caricarlo anche due volte al giorno, e il solito problema del WiFi limitato a pochi megabit/s.

Quello della batteria si è rivelato essere un problema collegato alle Gapps: il Google Play Services era la principale causa del consumo di batteria e, fortunatamente, cambiando di nuovo ROM (con MSM Xtended) l’ho risolto. Ma prima di risolverlo, ero quasi arrivato al punto di cambiare telefono, la mia unica speranza era quella di vedere come sarebbero stati i consumi una volta tornato al lavoro.

Quello del WiFi invece mi dava proprio fastidio, anche perché appena installata la ROM non si era verificato e mi ero intestardito a tal punto che ero disposto ad accettare solo un grosso bug: o il WiFi, o la batteria. … [Leggi il resto]

Disconnessioni con Atheros AR9485

Da alcuni mesi ho un bug decisamente antipatico con il WiFi nel mio portatile ASUS N550, dotato di una Qualcomm Atheros AR9485.

La scheda ha sempre funzionato abbastanza bene, viene gestita dal leggendario driver ath9k, uno dei migliori driver prima dell’arrivo di 802.11AC, anche se comunque il mio modello di scheda non è mai stato considerato uno dei migliori.

Ad un certo punto, però, ho cominciato a riscontrare continue disconnessioni, o in alcuni test con wget e altri computer della LAN, riscontravo un brusco calo della velocità di download fino al fermarsi dello stesso.

In particolare, su dmesg riscontravo questo errore:

[   65.582958] ath: phy0: DMA failed to stop in 10 ms AR_CR=0x00000024 AR_DIAG_SW=0x02000020 DMADBG_7=0x00006100
[   66.744578] wlp4s0: authenticate with e8:de:27:xx:xx:xx
[   66.764530] wlp4s0: send auth to e8:de:27:xx:xx:xx (try 1/3)
[   66.769890] wlp4s0: authenticated
[   66.771192] wlp4s0: associate with e8:de:27:xx:xx:xx (try 1/3)
[   66.775556] wlp4s0: RX AssocResp from e8:de:27:xx:xx:xx (capab=0x431 status=0 aid=6)
[   66.775668] wlp4s0: associated

Come potete vedere, è capitato a solo un minuto dal boot. … [Leggi il resto]

Bisca: il backend

È passato un po’ di tempo da quando avevo detto di aver cominciato a lavorare sul progetto della Bisca online. Da allora mi sono laureato, sono andato a trovare dei miei amici in giro per l’Europa, ma ce l’ho anche fatta ad andare avanti col progetto, tanto che ce n’è anche una versione online qui, sul mio VPS.

Il frontend è stato fatto senza usare alcun framework, l’unica dipendenza da terzi è socket.io, che uso per gestire i vari eventi su websocket, per il resto ho implementato tutto io. Comunque non è troppo curato e, di sicuro, se vorrò continuare con questo progetto, dovrò sistemarlo. Anzi, il Javascript che gestisce il gioco potrebbe essere un esempio di come non scrivere codice in questo linguaggio 😅️ .

Ma ciò di cui voglio parlare in questo articolo non è tanto il frontend, quanto il backend.

Come avevo già accennato, avevo valutato di usare il server ufficiale di socket.io, scritto in Javascript per Node.js, ma alla fine ho deciso di usare il port in Python.

Bisca come gioco non è difficile, tuttavia ci sono alcune cose a cui bisogna prestare attenzione.

La prima è l’asso di denari, che può essere sia la carta più bassa, che la più alta del gioco. … [Leggi il resto]

Qualche esperimento con Bochs

Contestualizzazione

Il primo computer che abbiamo avuto a casa, a partire dal 1999, era un Pentium III Katmai a 450MHz, con 64MB di RAM SDRAM.

Io al massimo ci facevo qualche disegnino con Paint, però ho ancora ricordi di quando mio padre cercava di fare andare qualcosa, con i vari wizard di Windows 98 e la loro grafica. Quel ricordo è aumentato dalle figure che ero solito trovare nei vari manuali di vari pezzi, o in riviste e libri su computer, fino a una decina di anni fa.

Dopo aver ottenuto quel computer tutto per me, ci avevo cambiato OS, e non ho mai usato veramente tanto i Windows più classici, ho cominciato a smanettare soprattutto con Windows XP, quindi già dopo una prima svecchiata della grafica. Tuittavia qualche volta mi tornano in mente quelle schermate, e mi viene voglia di fare una specie di retrocomputing.

Fino a mese fa avevo diversi computer vecchissimi ottenuti in vario modo, o perché qualcuno se ne voleva disfare, o una volta anche perché i genitori della ragazza di un mio amico avevano comprato un container in un’asta e non sapevano cosa farsene di quei computer.

Sarebbero stati ottimi per riprovare appunto vecchi sistemi e software, però mi occupavano un sacco di spazio, non ci facevo praticamente mai niente, e anche quelle 2-3 volte che le ho fatte mi sono spazientito dopo un po’ perché quelle macchine sono comunque davvero molto lente. … [Leggi il resto]