Nintendo 64 Console Clone War - M64 vs Analogue 3D

Αυτό δεν αναιρείται και δημιουργεί ένα ανυπέρβλητο ταβάνι σε latency, timings κλπ
Διαψεύδεις όλα όσα έγραψε ο Near στο άρθρο και όχι μόνο στο θέμα FPGA = Emulation αλλά και σε όλα όσα έγραψε περί accuracy, timings, input lag, κλπ, οπότε έχω τις αμφιβολίες μου για αυτό.
 
Διαψεύδεις όλα όσα έγραψε ο Near στο άρθρο και όχι μόνο στο θέμα FPGA = Emulation αλλά και σε όλα όσα έγραψε περί accuracy, timings, input lag, κλπ, οπότε έχω τις αμφιβολίες μου για αυτό.
Είναι πολύ παλιό αυτό το άρθρο του Near και επαναλαμβάνω ότι είναι πολύ πιθανόν να μην είχε καταλάβει τι ακριβώς ήταν το FPGA... Διάβασε και μόνος σου τι είναι και θα καταλάβεις ότι συγκρίνουμε πορτοκάλια με μανιτάρια...
 
Είναι πολύ παλιό αυτό το άρθρο του Near και επαναλαμβάνω ότι είναι πολύ πιθανόν να μην είχε καταλάβει τι ακριβώς ήταν το FPGA... Διάβασε και μόνος σου τι είναι και θα καταλάβεις ότι συγκρίνουμε πορτοκάλια με μανιτάρια...
Δεν λέω για ότι έγραψε περί FPGA αλλά όσα έγραψε περί software emulation που υποτίθεται είναι ειδικός.
 
Για να ήμαστε στην ίδια σελίδα, όταν λέω ότι το software emulation μπορεί να είναι 100% accurate δεν εννοώ ότι δουλεύει με τον ίδιο τρόπο στο παρασκήνιο όπως μία πραγματική κονσόλα... Εννοείται ότι είναι δύο τελείως διαφορετικά πράγματα, το ένα είναι hardware, το άλλο software emulation, προφανώς το FPGA είναι πιο κοντά στον τρόπο που λειτουργεί η κονσόλα.

Ομως δεν μιλάω για τον "τρόπο", μιλάω για το αποτέλεσμα. Μπορείς λοιπόν μέσω emulation να έχεις το ίδιο αποτέλεσμα με μία κονσόλα ή FPGA ακόμα και αν κάτω από το σασί γίνονται διαφορετικά οι διαδικασίες. Αυτό εννοούμε όταν λέμε 100% emulation accuracy, ότι δηλαδή ένα παιχνίδι συμπεριφέρεται ακριβώς όπως στην κονσόλα, χωρίς διαφορές, άσχετα με τον τρόπο που το επιτυγχάνει. Ας έκαιγε και κάρβουνο, δεν έχει να λέει.

Αν μπορείς λοιπόν να διορθώσεις ένα bug ή timing error, γιατί να μην μπορείς να τα διορθώσεις όλα και να είσαι στο 100%? Αυτό το πέτυχε ήδη ο Near με το BSNES οπότε δεν ξέρω γιατί είσαι τόσο σίγουρος ότι δεν γίνεται.
 
Τελευταία επεξεργασία:
Δεν λέω για ότι έγραψε περί FPGA αλλά όσα έγραψε περί software emulation που υποτίθεται είναι ειδικός.

Ενώ δείχνει να ξέρει τι είναι το "FPGA" και τι η "VHDL" και αναφέρει και το ζητούμενο, δηλαδή "logic gates vs microcode", το λάθος του είναι ότι βγάζει τελείως από την εξίσωση, τον χρόνο που χάνεται κατά το emulation στην μετάφραση του σετ εντολών, γιατί αυτό είναι στην ουσία του ένας emulator, ένας μεταφραστής εντολών και ρίχνει όλο το ανάθεμα στη multitasking φύση του OS. Δηλαδή ένας emulator σε DOS κατά τον byuu, δεν θα παρουσιάζει lagging; Σαφώς και θα παρουσιάζει, καθώς και εκεί, έχουμε την απαραίτητη για το emulation, αλλά χρονοβόρα, μετάφραση κώδικα...

Αν μπορείς να διορθώσεις ένα bug ή timing error, γιατί να μην μπορείς να τα διορθώσεις όλα και να είσαι στο 100%? Αυτό πέτυχε ο Near με το BSNES οπότε δεν ξέρω γιατί είσαι τόσο σίγουρος ότι δεν γίνεται.

Γίνεται, αλλά μέχρι έναν βαθμό. Έστω ότι θεωρητικά μιλάμε για έναν κώδικα που έφτιαξε όλα τα bugs του και πλέον είναι 100% accurate και bug free, πέραν του -έστω- ελάχιστου αλλά υπαρκτού lag... ωραία μέχρι εδώ; δεν υπάρχει τίποτα όμως που να εγγυάται ότι ένα νέο homebrew game, δεν θα κάνει exploit ένα νέο bug του emulator ή ένα άγνωστο unexploited quirk του real hardware, που όμως δεν υλοποιήθηκε στον 100% accurate emulator, εφόσον δεν ήταν ακόμα γνωστό και δεν υπήρχε ούτε σαν ιδέα. Αυτόματα λοιπόν η ακρίβειά του emulation θα πέσει στο 99% και πάει λέγοντας... Είναι στη φύση επομένως του emulation, θέλω να καταλήξω, να μην μπορεί να επιτύχει 100% accuracy, γιατί η ανάπτυξή του βασίστηκε στην υπάρχουσα βιβλιοθήκη παιχνιδιών. 99% ναι, αλλά 100% δεν θα μπορεί να είναι ποτέ.

Από την άλλη μεριά, στην θεωρητική περίπτωση ενός 100% accurate FPGA implementation, δεν θα μπορεί να υπάρξει τίποτα νέο ή παλιό που θα μπορέσει να κάνει exploit κάποιο νέο bug ή να προσθέσει ως δια μαγείας lag... Διότι όταν μιλάμε για 100% accuracy με FPGA, σημαίνει ότι έχουμε στην κυριολεξία κλωνοποιήσει φωτογραφικά τα ρετρό τσιπάκια, με τις διασυνδέσεις τους και έχουμε μπροστά μας ένα πιστό αντίγραφο του real hardware. Αλλά αυτό δυστυχώς, θέλει πολύ δρόμο ακόμα για να γίνει (αν γίνει και ποτέ). Πάντως θεωρητικά, είναι δυνατόν.
 
Τελευταία επεξεργασία:
δεν υπάρχει τίποτα όμως που να εμποδίζει ένα νέο homebrew game, να κάνει exploit ένα νέο bug του emulator ή ένα quirk του real hardware που δεν υλοποιήθηκε στον emulator γιατί ήταν ακόμα άγνωστο, δεν υπήρχε και αυτόματα θα πάει στο 99% accuracy και πάει λέγοντας...
Και μετά διορθώνει και αυτό το bug και πάει λέγοντας μέχρι να μην υπάρξει άλλο. Και από ότι ξέρω το BSNES τρέχει όλα τα after market και τα demo scene που υποτίθεται κάνουν exploit το hardware στο μέγιστο οπότε δεν ξέρω γιατί τέτοια αντίσταση στο να πούμε ότι ναι, γίνεται.

Δηλαδή πρακτικά, έχεις έναν emulator που τρέχει όλα τα games και demos με 100% πιστότητα αλλά δεν μπορούμε να πούμε οτι μπορει να είναι στο 100% γιατί μάλλον είναι στο 99.99999% γιατί ίσως σε 20 χρόνια κάποιος να βρει κάτι καινούριο. Oπότε να πούμε ότι και το FPGA δεν είναι ακριβώς το ίδιο chip με τα chip του SNES. Είναι ένα μόνο chip ενώ το SNES έχει πολλά chips, με απόσταση μεταξύ τους, με διαφορετικά μεγέθη στα transistors και δεν λειτουργεί με logic gates κλπ, οπότε δεν είναι 100% ίδιο, είναι 99.999999% και δεν γίνεται να πάει 100% με τίποτα.

Γιατί να μπούμε σε αυτήν την διαδικασία?

Διαφωνώ και για το input lag. Αυτό που λες, η καθυστέρηση δηλαδή στην μετάφραση κλπ, έχει να κάνει με το performance. Γι αυτό και ένας emulator θέλει πιο δυνατή CPU που καιει πιο πολύ από ένα FPGA, για να κάνει ότι κάνει το FPGA. Αλλά όταν έχεις την CPU και το emulation είναι στο 100% speed δεν χρειάζεται να υπάρχει επιπλέον input lag από την μεριά του emulator πέρα από το OS, τους drivers, κλπ.
 
Τελευταία επεξεργασία:
Είναι ένα μόνο chip ενώ το SNES έχει πολλά chips, με απόσταση μεταξύ τους, με διαφορετικά μεγέθη στα transistors και λειτουργει με logic gates κλπ, οπότε δεν είναι 100% ίδιο, είναι 99.999999% και δεν γίνεται να πάει 100% με τίποτα.

Γιατί να μπούμε σε αυτήν την διαδικασία?

Γιατί είναι λάθος και ο παραλληλισμός σου και η διατύπωση. Ας πούμε για παράδειγμα logic gates έχουν και τα FPGA και τα ρετρό chips.

Σκέψου είναι σαν να λες ότι το 360 slim είναι άλλο μηχάνημα από το 360, γιατί ο Xenos φτιάχνεται σε άλλη υλοποίηση και με άλλα νανόμετρα ή το 1chip NES δεν είναι το ίδιο γιατί έκανε τα τρία τσιπάκια ένα. Ή ότι το Gameboy δεν έχει Z80 γιατί είναι customιά της Nintendo. Εντελώς λάθος.

Και κάτι ακόμα για όσον αφορά στο lag... Ένα ορατό παράδειγμα:

  • FPGA: Nintendo game: 1 add 1 -> FPGA: =2
  • Ninte: Nintendo game: 1 add 1 -> Ninte: =2
  • Emult: Nintendo game: 1 add 1 -compiler-> 1 προσ 1 -> Emult: = 2

Είναι ορατή η διαφορά; Ότι είναι σε bold προκαλεί lag και μεγαλώνει τη σειρά. Εν τω μεταξύ κατά τη διάρκεια ενός frame μπορεί να έχουμε από εκατοντάδες μέχρι και εκατομμύρια εντολές ανάλογα το target hardware. Και δεν έχει να κάνει με το OS, το βγάζω έξω το OS όπως βλέπεις. Θες να πούμε ότι είναι ένα εκατομμυριοστό του δευτερολέπτου; Ας είναι τόσο, αλλά δεν παύει να υφίσταται αυτή η σπατάλη χρόνου κατά το emulation και δεν υπάρχει και τρόπος για να εξαλειφθεί...
 
Τελευταία επεξεργασία:
Kαι όμως οι διαφορετικές εκδόσεις κονσολών δεν είναι ίδιες μεταξύ τους. Δεν έχεις ακούσει ποτέ για incompatibilities και bugs παιχνιδιών όταν τα βάζεις σε πιο καινούρια έκδοση κονσόλας? Και πες ΟΚ σε σύγχρονες κονσόλες δεν θα το δεις ποτέ γιατί αν υπήρχε κάτι τέτοιο θα το κάλυπταν με κάποιο update αλλά υπάρχουν τέτοια θέματα στο Mega Drive πχ που είχε πολλές διαφορετικές εκδόσεις του hardware.
 
Θες να πούμε ότι είναι ένα εκατομμυριοστό του δευτερολέπτου
Κοίταξε τώρα ποια είναι η διαφωνία μας και γιατί καθόμαστε και μετράμε κουκιά.

Μιλάς για κάτι το οποίο, στην ουσία, δεν είναι πρακτική διαφορά. Δηλαδή στην πράξη δεν έχει κανένα απολύτως impact.

Οταν λοιπόν πάει ο φίλος να πουλήσει ένα FPGA και θέλει να υποτιμήσει τους emulators για τραβήξει και αυτόν τον κόσμο, δεν μιλάει για ενα εκατομμυριοστό του δευτερολέπτου ή για την περίπτωση που κάποιος ανακαλύψει κάποιο obscure bug σε 20 χρόνια ή μπορεί και όχι. Μιλάει για χειροπιαστά, μετρήσιμα πράγματα, οπως βλέπεις σε παλιότερους emulators. Βugs που φαίνονται και ακούγονται σε Zsnes, Gens, Project 64, ePSXe και όλα τα κλασσικά.

Εκεί χτυπάει το marketing και γι αυτό λέω ότι είναι παραπληροφόρηση να σακουλιάζουν όλο το emulation scene με παλιούς, ξεπερασμένους emulators απλά για να σε πείσει ότι στο FPGA θα δεις πράγματα που δεν θα τα έβλεπες ποτέ σε emulator.
 
Παίξε λίγο Patapon σε emulation και σε real hardware και θα δεις πόσο impact έχει...
Τωρα για πιο λόγο πιάνεις το PPSSPP που δεν είναι καν accurate emulator, χρησιμοποιεί την GPU και είναι καθαρά performance based να παίζει και σε Pentium 4 ακόμα?

Ναι το FPGA είναι πιο accurate από PPSSPP οπως είναι και από Zsnes. Αλλά από BSNES δεν είναι.

Ας την αφήσουμε καλύτερα την συζήτηση τότε, δεν βγαίνει κάπου.
 
Πίσω
Μπλουζα