Ο προγραμματιστής δημιουργεί λογισμικό που μετατρέπει τα παιχνίδια PlayStation 2 σε εγγενή εκτελέσιμα αρχεία υπολογιστή

PlayStation

PlayStation - Foto: Tom Eversley / Shutterstock.com

Ένας προγραμματιστής γνωστός ως ran-j κυκλοφόρησε ένα εργαλείο ανοιχτού κώδικα που ονομάζεται PS2Recomp που έχει σχεδιαστεί για να μετατρέπει τίτλους του PlayStation 2 σε εγγενή εκτελέσιμα για υπολογιστές. Το σύστημα επεξεργάζεται τα πρωτότυπα αρχεία στους δίσκους και τα μετατρέπει σε ανεξάρτητες εφαρμογές συμβατές με σύγχρονα λειτουργικά συστήματα όπως τα Windows και Linux. Η προσέγγιση Essa εξαλείφει την ανάγκη για παραδοσιακούς εξομοιωτές. Το λογισμικό δρα απευθείας στη δομή του παιχνιδιού.

Η διατήρηση των ψηφιακών καταλόγων αντιμετωπίζει άμεσα εμπόδια με τη γήρανση του υλικού που κυκλοφόρησε πριν από περισσότερες από δύο δεκαετίες. Η νέα μέθοδος επιλύει την εξάρτηση από φυσικές κονσόλες ή λογισμικό εξομοίωσης που απαιτούν υψηλή επεξεργαστική ισχύ. Η αλλαγή παραδείγματος διασφαλίζει ότι η πολιτιστική κληρονομιά των βιντεοπαιχνιδιών παραμένει προσβάσιμη για τις μελλοντικές γενιές. Η προηγούμενη αντίστροφη μηχανική Processos απαιτούσε χρόνια χειρωνακτικής εργασίας από ολόκληρες ομάδες για τη μετάφραση του κώδικα ενός παιχνιδιού.

Το Como δουλεύει στατική επαναμεταγλώττιση του νέου συστήματος

Η τεχνική στατικής επανασύνταξης λειτουργεί διαφορετικά από τη συμβατική προσομοίωση. Ένας παραδοσιακός εξομοιωτής δημιουργεί μια εικονική μηχανή που μεταφράζει οδηγίες από την κονσόλα στον υπολογιστή σε πραγματικό χρόνο καθώς εκτελείται. Η διαδικασία Esse απαιτεί υψηλή επεξεργαστική ισχύ και οι περικοπές απόδοσης συμβαίνουν συχνά. Το PS2Recomp υιοθετεί μια πρώιμη στρατηγική. Το πρόγραμμα εκτελεί όλες τις μετατροπές κώδικα πριν καν ξεκινήσει ο χρήστης το παιχνίδι.

Durante τη διαδικασία μετατροπής, το εργαλείο αναλύει τον αρχικό δυαδικό κώδικα, με βάση την αρχιτεκτονική MIPS που χρησιμοποιείται στο PlayStation 2, και τον μεταφράζει απευθείας στη γλώσσα C++ που είναι συμβατή με τους τρέχοντες επεξεργαστές x86-64. Το αρχείο που προκύπτει λειτουργεί σαν ένα κανονικό πρόγραμμα υπολογιστή. Το λειτουργικό σύστημα διαχειρίζεται απευθείας τη μνήμη και τους πόρους επεξεργασίας. Το ενδιάμεσο επίπεδο μετάφρασης δεν υπάρχει πλέον, γεγονός που μειώνει δραστικά το φορτίο στον επεξεργαστή του υπολογιστή. Το Máquinas με μέτριες ρυθμίσεις μπορεί να εκτελεί τους τίτλους ομαλά.

Ο χρήστης πρέπει να έχει ένα νόμιμο αντίγραφο του παιχνιδιού για να εξαγάγει τα αρχικά δεδομένα και να ξεκινήσει τη μετατροπή. Το εργαλείο διαβάζει πληροφορίες από το δίσκο και δημιουργεί ένα καθαρό εκτελέσιμο αρχείο. Ο παραγόμενος κώδικας αγνοεί τους περιορισμούς που επιβάλλονται από το αρχικό υλικό εκείνη τη στιγμή. Το ανεξάρτητο Desenvolvedores έχει πρόσβαση στον πηγαίο κώδικα της κονσόλας και πραγματοποιεί τροποποιήσεις που είναι αδύνατες στην κλειστή μορφή. Η κοινότητα modding αποκτά πλήρη πρόσβαση στα εσωτερικά αρχεία.

Τεχνικοί αρχιτεκτονικής πρωτότυπης κονσόλας Desafios

Το PlayStation 2 έχει μια πολύπλοκη εσωτερική αρχιτεκτονική, με επίκεντρο τον επεξεργαστή Emotion Engine. Το τσιπ φιλοξενεί προσαρμοσμένες διανυσματικές μονάδες επεξεργασίας που λειτουργούν συγχρονισμένα με άλλα στοιχεία. Η λογική δρομολόγησης δεδομένων του συγκεκριμένου υλικού καθιστά δύσκολη την ακριβή μετάφραση σε σύγχρονους υπολογιστές. Ο συγχρονισμός χρόνου μεταξύ των αρχικών εξαρτημάτων αντιπροσωπεύει το μεγαλύτερο τεχνικό εμπόδιο στην αναδημιουργία του συστήματος. Το PS2Recomp επιλύει αυτό το ζήτημα δημιουργώντας ένα αυτόνομο προφίλ εκτέλεσης.

Το εργαλείο χρησιμοποιεί μια μηχανή μετάφρασης λογισμικού για να χαρτογραφήσει οδηγίες και να συγχωνεύσει μαθηματικές πράξεις σε τρέχοντα πρότυπα. Ο προγραμματιστής ενσωμάτωσε το έργο σε συνεργατικές πλατφόρμες στο διαδίκτυο. Το Programadores από όλο τον κόσμο μοιράζεται αποκρυπτογραφημένα αποσπάσματα κώδικα σε ανοιχτά αποθετήρια. Το σύστημα αναλύει τα δεδομένα που εισάγονται από τους χρήστες και εφαρμόζει αυτόματες διορθώσεις σε αποτυχίες μεταγλώττισης. Η συλλογική προσπάθεια επιταχύνει την ανάπτυξη του εργαλείου.

Δείτε Επίσης

Το λογισμικό απομονώνει τμήματα κώδικα που δεν μπορούν να μεταφραστούν αυτόματα και επιτρέπει την ανθρώπινη παρέμβαση. Το Especialistas αναλύει την αρχική λογική και δημιουργεί μη αυτόματες λύσεις σε C++. Η βάση δεδομένων του έργου αποθηκεύει τις επιδιορθώσεις και τις εφαρμόζει σε παρόμοιες καταστάσεις στο μέλλον. Το ποσοστό επιτυχίας μετατροπής αυξάνεται με κάθε νέο παιχνίδι που υποβάλλεται σε επεξεργασία. Η ανάγκη για χειροκίνητες ρυθμίσεις μειώνεται καθώς το σύστημα μαθαίνει από προηγούμενες λύσεις.

Vantagens απευθείας σε παίκτες σε υπολογιστές

Η εγγενής εκτέλεση στον υπολογιστή απαλλάσσει τα παιχνίδια από τους τεχνικούς περιορισμούς που επιβάλλουν οι τηλεοράσεις με σωλήνα και τους περιορισμούς μνήμης της εποχής. Ο τίτλος χρησιμοποιεί πλέον την πλήρη χωρητικότητα της σύγχρονης κάρτας γραφικών και επεξεργαστή. Οι επίσημες λίστες χαρακτηριστικών λεπτομερειών βελτιώσεων απόδοσης.

  • Native Suporte για αναλύσεις 4K και εξαιρετικά ευρείες οθόνες χωρίς παραμόρφωση διεπαφής.
  • Ο ρυθμός καρέ του Remoção κλειδώνει, επιτρέποντας το παιχνίδι στα 60 ή 120 καρέ ανά δευτερόλεπτο.
  • Redução σημαντικοί χρόνοι φόρτωσης λόγω άμεσης ανάγνωσης σε μονάδες αποθήκευσης SSD.
  • Facilidade για την αντικατάσταση παλαιών υφών με τρισδιάστατα μοντέλα υψηλής ανάλυσης που δημιουργούνται από ανεμιστήρες.
  • Integração με σύγχρονα λειτουργικά συστήματα χωρίς την ανάγκη περίπλοκων διαμορφώσεων πρόσθετων.

Η απουσία χρόνων αναμονής μεταμορφώνει τη δυναμική των παιχνιδιών που βασίζονταν στη φόρτωση των οθονών για τη διαχείριση της περιορισμένης μνήμης της κονσόλας. Η άμεση πρόσβαση σε δεδομένα στο SSD επιτρέπει άμεσες μεταβάσεις μεταξύ των σεναρίων. Η τροποποίηση υφής πραγματοποιείται σε επίπεδο προγράμματος και οι modders εισάγουν εικόνες υψηλής ευκρίνειας που αντικαθιστούν τα αρχικά αρχεία κατά την εκτέλεση. Ο ανοιχτός κώδικας καθιστά εύκολη την εφαρμογή σύγχρονου φωτισμού και προηγμένων εφέ σκιών.

Primeiro τίτλος με δυνατότητα αναπαραγωγής και επόμενα βήματα κοινότητας

Το πρώτο παιχνίδι που πέτυχε πλήρη κατάσταση παιχνιδιού μέσω του PS2Recomp ήταν το Sly Cooper και το Thievius Raccoonus. Ο τίτλος της πλατφόρμας χρησίμευσε ως δοκιμαστική βάση για την απόδειξη της βιωσιμότητας της εγγενούς εκτέλεσης σε πολύπλοκα τρισδιάστατα περιβάλλοντα. Έτρεχε χωρίς προβλήματα γραφικών ή προβλήματα συγχρονισμού ήχου. Η επιτυχία της δοκιμής τράβηξε την προσοχή άλλων προγραμματιστών με εμπειρία στην αντίστροφη μηχανική.

Η κοινότητα χρηστών οργανώνει ψηφοφορίες για να αποφασίσει τη σειρά προτεραιότητας των επερχόμενων μετατροπών. Τα κλασικά Franquias όπως τα Crash Bandicoot και Jak II βρίσκονται στην κορυφή των λιστών παραγγελιών στα φόρουμ συζήτησης. Qualquer Όποιος έχει γνώσεις προγραμματισμού μπορεί να ξεκινήσει τη μετατροπή ενός παιχνιδιού χρησιμοποιώντας τα αρχεία που είναι διαθέσιμα στην πλατφόρμα GitHub. Το αποθετήριο λαμβάνει καθημερινές ενημερώσεις με βελτιστοποιήσεις κώδικα και διορθώσεις σφαλμάτων που αναφέρονται από ανεξάρτητους δοκιμαστές.

Η τεκμηρίωση του έργου απαιτεί εξοικείωση με τις γραμμές εντολών και τη μεταγλώττιση λογισμικού για την εξαγωγή δεδομένων από τους αρχικούς δίσκους. Η τρέχουσα διαδικασία αποξενώνει τους απλούς χρήστες που αναζητούν λύσεις γρήγορης εγκατάστασης. Ο δημιουργός του εργαλείου εργάζεται για την απλοποίηση των λειτουργικών βημάτων και την ανάπτυξη μιας φιλικής προς το χρήστη γραφικής διεπαφής. Στόχος της ομάδας είναι να αυτοματοποιήσει ολόκληρη τη ροή εργασίας.

Η καθιέρωση ενός νέου προτύπου για τη διατήρηση λογισμικού αλλάζει την εμπορική εξάρτηση από τις εταιρείες υλικού. Η συντήρηση των ψηφιακών έργων εξαρτάται πλέον από την αποκέντρωση των τεχνικών γνώσεων. Η μέθοδος στατικής ανασύνταξης αρχίζει να μελετάται για εφαρμογή σε άλλες παλιές πλατφόρμες. Η ευθύνη για τη διατήρηση της κληρονομιάς των βιντεοπαιχνιδιών μετατίθεται στην παγκόσμια τεχνολογική κοινότητα.

Δείτε Επίσης