View Full Version : Windows 95 mostrato in esecuzione su Nintendo 3DS: è il sogno dei retrogamer?
Redazione di Hardware Upg
05-01-2016, 16:01
Link alla notizia: http://www.gamemag.it/news/windows-95-mostrato-in-esecuzione-su-nintendo-3ds-e-il-sogno-dei-retrogamer_60131.html
Un utente del forum GBATemp è riuscito ad eseguire Windows 95 su un Nintendo 3DS. Sebbene possa sembrare un esercizio di stile e poco altro, l'operazione potrebbe avere parecchi risvolti interessanti
Click sul link per visualizzare la notizia.
Sarebbe fantastico, ma queste prove di abilità restano sempre e solo questo... Non arrivano mai a diventare qualcosa di neanche lontanamente utilizzabile.
madnesshank
05-01-2016, 18:40
Non sono molto aggiornato sulla situazione del 3ds, ma quello che serve è solo un bel bypass delle protezioni in stile R4 per permettere la diffusione libera dei giochi. Ancora meglio un totale sblocco di ogni restrizione hardware della console in modo da poter creare homebrew di ogni tipo. Gli emulatori sono perfetti su una console portatile come questa, molto di più che sugli smartphone, dove i giochi risentono dei limiti dei controlli touch. Questa recensita è una bella prova di hacking, ma poco utile nel pratico.
cdimauro
05-01-2016, 21:45
Anche perché l'hardware del 3DS non è abbastanza potente per questo genere di emulatori.
Si tratta più che altro di un esercizio di stile.
Anche perché l'hardware del 3DS non è abbastanza potente per questo genere di emulatori.
Si tratta più che altro di un esercizio di stile.
hai presente la grafica dei giochi del 3ds? non stiamo mica parlando di un gameboy. non mi sembra che su win 95 girassero dei titoli con la qualità grafica che offre il 3ds
cdimauro
06-01-2016, 10:13
Innanzitutto i giochi Windows '95 non erano fermi a 400x240 o 800x240: già all'epoca la 640x480 era diffusa nel 3D, e risoluzioni maggiori nel 2D.
La cosa più importante, però, è che non tieni conto delle risorse necessarie al 3DS per emulare quella piattaforma hardware.
Per essere chiari: non puoi fare un paragone 1:1 fra i giochi che giravano su Windows '95 (quali poi? Fino a prima dell'arrivo di Windows '98? Perché il parco software è abbondante e con gli anni sono arrivati giochi più impegnativi, come pure schede grafiche ben più potenti), perché di mezzo c'è il costo che devi pagare per emulare quella piattaforma.
A me basterebbe, anzi avanzerebbe, DOSBox...
walter sampei
06-01-2016, 13:42
secondo me alla fine riusciranno ad emulare efficacemente solo qualche giochetto dos e qualcosa di leggero. penso che vada persa troppa potenza di calcolo nell'emulazione.
buona idea, ma i limiti sono quelli che sono.
Ton90maz
08-01-2016, 17:08
Anche perché l'hardware del 3DS non è abbastanza potente per questo genere di emulatori.
Si tratta più che altro di un esercizio di stile.
Potenza o meno questo emulatore mi sembra giri su New Nintendo 3DS, c'è una bella differenza dal 3ds normale che non farebbe girare nemmeno la schermata.
cdimauro
08-01-2016, 18:18
Vero, ma è pur sempre un ARM11 a 268 MHz...
walter sampei
08-01-2016, 20:29
Vero, ma è pur sempre un ARM11 a 268 MHz...
spannometricamente, mettendo che il rapporto emulato tra potenze dei processori sia 10:1 (non so come spiegarlo!!!) sarebbe un processore da 27 mhz. nella migliore delle ipotesi, un 486 da 33 mhz circa, se no come un 386.
non credo ci giri molto, se non roba dos o per windows 3.1
Ton90maz
08-01-2016, 20:29
Vero, ma è pur sempre un ARM11 a 268 MHz...In realtà...no, occhio a wikipedia e altre fonti, scrivono solo cazzate. Hanno raddoppiato il numero di core (come scritto), ma hanno anche triplicato la frequenza e aggiunto 2 MB di cache L2 assente sul 3ds normale. Praticamente hanno fatto il 3ds come doveva uscire nel 2011, in compagnia di una gpu più decente magari.
E con quella cache l2 potrei azzardare che rivaleggi o superi la ps vita, che ha un cortex a9 a 333-444 MHz e non 1-2 GHz come dicono i siti per boccaloni :sofico:
cdimauro
08-01-2016, 22:37
spannometricamente, mettendo che il rapporto emulato tra potenze dei processori sia 10:1 (non so come spiegarlo!!!) sarebbe un processore da 27 mhz. nella migliore delle ipotesi, un 486 da 33 mhz circa, se no come un 386.
non credo ci giri molto, se non roba dos o per windows 3.1
Esattamente.
In realtà...no, occhio a wikipedia e altre fonti, scrivono solo cazzate. Hanno raddoppiato il numero di core (come scritto), ma hanno anche triplicato la frequenza e aggiunto 2 MB di cache L2 assente sul 3ds normale. Praticamente hanno fatto il 3ds come doveva uscire nel 2011, in compagnia di una gpu più decente magari.
E con quella cache l2 potrei azzardare che rivaleggi o superi la ps vita, che ha un cortex a9 a 333-444 MHz e non 1-2 GHz come dicono i siti per boccaloni :sofico:
Beh, se le altre fonti dicono cazzate, non è che tu ne abbia portato qualcuna a tuo sostegno.
L'unico dato concreto è che dovrebbe essere un quad core, ma per emulare un processore x86 non te ne fai proprio nulla degli altri core, e il tallone d'Achille di un PC da emulare è rappresentato proprio dal processore.
Poi rimane pur sempre un ARM11, che non è certo un campione di efficienza/prestazioni, e un x86 è un processore CISC abbastanza complesso, per cui non è facile da emulare quanto potrebbe essere un RISC.
Vuoi un esempio pratico? Guardati le slide di un talk (Writing an 8086 emulator in Python (https://www.pycon.it/conference/talks/writing-an-8086-emulator-in-python)) che ho tenuto lo scorso anno alla PyCon 6. In particolare la slide 39 che mostra come calcolare i flag del processore a seguito di un'operazione aritmetica.
E stiamo parlando di un semplicissimo 8086: immagina quanto sia incasinato emulare un 386 o superiore, specialmente in modalità protetta...
Dimenticavo: la cache L2 è importante (ma è da verificare se ci sia o meno) e contribuisce alle prestazioni, ma non fa certo miracoli.
walter sampei
08-01-2016, 23:26
Esattamente.
Beh, se le altre fonti dicono cazzate, non è che tu ne abbia portato qualcuna a tuo sostegno.
L'unico dato concreto è che dovrebbe essere un quad core, ma per emulare un processore x86 non te ne fai proprio nulla degli altri core, e il tallone d'Achille di un PC da emulare è rappresentato proprio dal processore.
Poi rimane pur sempre un ARM11, che non è certo un campione di efficienza/prestazioni, e un x86 è un processore CISC abbastanza complesso, per cui non è facile da emulare quanto potrebbe essere un RISC.
Vuoi un esempio pratico? Guardati le slide di un talk (Writing an 8086 emulator in Python (https://www.pycon.it/conference/talks/writing-an-8086-emulator-in-python)) che ho tenuto lo scorso anno alla PyCon 6. In particolare la slide 39 che mostra come calcolare i flag del processore a seguito di un'operazione aritmetica.
E stiamo parlando di un semplicissimo 8086: immagina quanto sia incasinato emulare un 386 o superiore, specialmente in modalità protetta...
Dimenticavo: la cache L2 è importante (ma è da verificare se ci sia o meno) e contribuisce alle prestazioni, ma non fa certo miracoli.
domandone immane: premesso che io ne capisco piu' o meno zero, ipotizzando di avere un arm con almeno due core disponibili per l'emulazione, non si potrebbe usare un core per fare i calcoli e in parallelo un core per impostare i flag del finto 8086? o come sono associate le due cose?
edit: se non erro, la cpu originale del raspberry pi dicevano che era equivalente a spanne a un p2 300 (con grafica pompata), escludendo ovviamente l'overhead dell'emulazione
riedit: dopo aver visto la slide, ho capito che 1)l'architettura x86 e' un casino immane 2)e' stato scelto aros perche' kitty e' sempre kitty :D
cdimauro
09-01-2016, 05:49
domandone immane: premesso che io ne capisco piu' o meno zero, ipotizzando di avere un arm con almeno due core disponibili per l'emulazione, non si potrebbe usare un core per fare i calcoli e in parallelo un core per impostare i flag del finto 8086? o come sono associate le due cose?
Assolutamente no, perché l'emulazione di un processore/singolo core/singolo thread hardware è un processo/algoritmo intrinsecamente, irrimediabilmente seriale, che fa e può fare uso soltanto di un singolo core/thread hardware.
Puoi avere migliaia di core, ma sempre e soltanto uno ne sarà usato per l'esecuzione delle istruzioni del processore. Ovviamente a meno che il processore emulato abbia più core e/o thread hardware, e in questo caso a ognuno di essi può essere assegnato un core/thread hardware che ne esegue le istruzioni (e sto semplificando molto, perché non ho nemmeno parlato dei problemi di sincronizzazione che ci sono fra i diversi core/thread hardware del processore emulato. Per maggiori informazioni in merito c'è un interessante articolo sul blog dell'emulatore PCSX2, che entra nel dettaglio).
edit: se non erro, la cpu originale del raspberry pi dicevano che era equivalente a spanne a un p2 300 (con grafica pompata), escludendo ovviamente l'overhead dell'emulazione
Sì, ma il paragone è fra il codice ARM che gira nativamente sul Raspberry, e il codice altrettanto nativo che gira(va) sul Pentium-II. Quindi non c'è nessuna emulazione di mezzo: si tratta di confrontare i due processori col normale codice che macinano.
Da questo si può vedere quanto poco performante sia un ARM11 (anche il vecchio Raspberry ne usa uno), anche perché non dotato di superpipeline (al contrario del P-II, che può eseguire fino a due istruzioni per ciclo di clock, sebbene "in-order", e può contare su una buona FPU).
riedit: dopo aver visto la slide, ho capito che 1)l'architettura x86 e' un casino immane 2)e' stato scelto aros perche' kitty e' sempre kitty :D
Hai capito tutto. :D
x86 è un casino, ma da emulare. Per il resto la sua complessità è ormai relegata a qualche milionata di transistor utilizzati per il decoder delle istruzioni e, in misura minore, per l'FPU x87.
Ton90maz
09-01-2016, 10:38
Esattamente.
Beh, se le altre fonti dicono cazzate, non è che tu ne abbia portato qualcuna a tuo sostegno.
L'unico dato concreto è che dovrebbe essere un quad core, ma per emulare un processore x86 non te ne fai proprio nulla degli altri core, e il tallone d'Achille di un PC da emulare è rappresentato proprio dal processore.
Poi rimane pur sempre un ARM11, che non è certo un campione di efficienza/prestazioni, e un x86 è un processore CISC abbastanza complesso, per cui non è facile da emulare quanto potrebbe essere un RISC.
Vuoi un esempio pratico? Guardati le slide di un talk (Writing an 8086 emulator in Python (https://www.pycon.it/conference/talks/writing-an-8086-emulator-in-python)) che ho tenuto lo scorso anno alla PyCon 6. In particolare la slide 39 che mostra come calcolare i flag del processore a seguito di un'operazione aritmetica.
E stiamo parlando di un semplicissimo 8086: immagina quanto sia incasinato emulare un 386 o superiore, specialmente in modalità protetta...
Dimenticavo: la cache L2 è importante (ma è da verificare se ci sia o meno) e contribuisce alle prestazioni, ma non fa certo miracoli.Basta andare su 3dsbrew e trovi tutto quanto, in rete c'è anche un homebrew per far andare i giochi del 3ds originale a 804 MHz.
cdimauro
09-01-2016, 11:03
804Mhz è un valore che porta il New 3DS a essere comparabile al vecchio Raspeberry Pi (che gira a 700Mhz, ma che viene overclockato anche 900Mhz).
Per cui le prestazioni in emulazione saranno molto simili, con un leggero vantaggio per il New 3DS, rispetto al R-Pi con clock standard.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.