I am eagerly awaiting my Spectrum Next as it’ll be the first CPC-capable all in one hardware I’ve had since 2001.
I do wonder if anyone would create an FPGA CPC would people be interested? (I have no desire to run a project or crowdfunding campaign for one, but I would almost certainly buy one)
EDIT: I don’t love emulation because it misses things like the copy key and because I’m primarily on a Mac the keyboard layout is off.
I have the MiSTER but it suffers the same problem as emulation: the keyboard. But for playing a game it’s not too bad. I use it with an Xbox controller.
But the Next should make it easier to use it as a complete system. I’m curious how well it’ll work but as I understand it the core won’t support Plus features, or at least not yet.
Δεν θα ήταν καλύτερα να χρησιμοποιήσετε έναν μη λειτουργικό CPC, να βάλετε ένα FPGA σε μια πραγματική θήκη με το αυθεντικό πληκτρολόγιο και μετά να συνδέσετε το πληκτρολόγιο; Το MiSTer θα ήταν εξαιρετικό για αυτό, καθώς μπορείτε να συνδέσετε το πληκτρολόγιο 1:1 σε αυτό, ή μπορείτε να δημιουργήσετε έναν ερμηνευτή πληκτρολογίου με Raspberry Pi που στέλνει όλα τα πλήκτρα ως απλούς αριθμούς (όπως ο παλιός) στο MiSTer;
Πιστεύω ότι αυτή θα ήταν η φθηνότερη/γρηγορότερη επιλογή για να γίνει κάτι τέτοιο.
Φυσικά, αυτό που λείπει είναι το «Mister Amstrad CPC Core με πραγματικό πληκτρολόγιο 464».
Λοιπόν, ο αριθμός των μη λειτουργικών CPC εκεί έξω δεν είναι και τόσο μεγάλος, και πιστεύω ότι πολλοί θα ήθελαν κάτι πιο εύχρηστο από ένα MiSTER, αλλά η προσέγγισή σου δεν είναι κακή ιδέα.
Στις ΗΠΑ όπου ζω τώρα, έτσι κι αλλιώς δεν υπάρχουν σχεδόν καθόλου CPC, οπότε θα έπρεπε να κάνω εισαγωγή.
Το Spectrum Next ταξιδεύει ήδη με το καράβι, οπότε λογικά θα το έχω τις επόμενες εβδομάδες.
Kάτι σαν το Goa’uld του MSX θα ήταν απλά καταπληκτικό. Απλά το κουμπώνεις στη υποδοχή του Z80 και ξαφνικά έχεις περισσότερη μνήμη, περισσότερη ισχύ, Wi-Fi, κάρτα SD κ.λπ…
Έτσι δεν είναι;! Πάντως το Goauld είναι κάπως σαν το PiStorm32 στον Amiga 1200. Μπορεί να ξεπερνάμε τα όρια που κάνουν τον CPC αυτό που είναι, χωρίς καν να το καταλαβαίνουμε.
Αυτό μου δίνει μια ιδέα: μια συσκευή «κάτι με FPGA μέσα» που θα συνδεόταν στον δίαυλο (bus) ενός CPC (στην πράξη στην υποδοχή του Z80 ή στην πίσω θύρα επέκτασης), η οποία θα ανίχνευε το ήδη υπάρχον υλικό, θα το δοκίμαζε και στη συνέχεια θα υλοποιούσε μόνο τα μέρη που λείπουν.
Σε έναν πλήρως λειτουργικό CPC θα προσέφερε, για παράδειγμα, επέκταση RAM και δυνατότητες cartridge, όπως ορισμένες πλακέτες που κυκλοφορούν ήδη. Σε έναν CPC όπου ένα ή περισσότερα τσιπ είναι καμένα, θα εξομοίωνε αυτά τα τσιπ / τις συσκευές. Δεύτερη (ή/και πρώτη) μονάδα δίσκου κ.λπ.
Στην πράξη, ένα ελαττωματικό τσιπ θα μπορούσε να λειτουργεί εν μέρει και να προκαλεί διενέξεις στον δίαυλο, απαιτώντας την αφαίρεσή του. Επίσης, όταν ένα ελαττωματικό τσιπ έχει εξωτερικές συνδέσεις, θα ήταν απαραίτητη κάποια ανακατεύθυνση των σημάτων (rerouting). Επομένως, δεν θα ήταν πάντα τόσο απλό όσο το plug and play. Ή αν συνδεόταν στην πίσω υποδοχή, το παραπάνω σύστημα θα είχε το δικό του πλήρες σετ υποδοχών (jack ήχου, DIN αναλογικού βίντεο, καλώδιο προσαρμογέα για το πραγματικό πληκτρολόγιο του CPC στο εσωτερικό, DB9 για 1 ή 2 χειριστήρια).
Θα μπορούσαμε να το ονομάσουμε Matrix board, επειδή θα λειτουργούσε και θα έδινε την αίσθηση ενός πλήρως λειτουργικού CPC, παρόλο που ορισμένα ελαττωματικά εξαρτήματα θα είχαν «εικονικοποιηθεί» μέσω FPGA, διατηρώντας παράλληλα όσο το δυνατόν περισσότερο από το πραγματικό υλικό (hardware).
Όσον αφορά τον τρόπο που το θέτεις… η πλακέτα «Matrix» που φαντάστηκα και περιέγραψα θα ήταν πιο περίπλοκη στη σύλληψή της από μια «απλή» πλήρη εξομοίωση CPC βασισμένη σε FPGA, και πιο ακριβή στην παραγωγή από μια «απλή» περιορισμένη πλακέτα.
Αλλά στα θετικά, θα μπορούσε «εύκολα» να «αναστήσει» έναν νεκρό CPC ακόμα και στο μέλλον, όταν τα λειτουργικά αυθεντικά τσιπάκια θα είναι σπάνια.
Και διατηρώντας την αυθεντική εμπειρία, το πραγματικό φυσικό πληκτρολόγιο κ.λπ.
Αυτό δεν είναι εφικτό για το μεγαλύτερο μέρος του συστήματος. Αν το AY είναι ελαττωματικό, δεν μπορείτε να το αντικαταστήσετε με κάτι εξωτερικό, καθώς το πληκτρολόγιό σας θα σταματήσει να λειτουργεί. Το ίδιο ισχύει και για το Gate Array. Αν απλώς σταματήσει να λειτουργεί, δεν μπορείτε πλέον να ελέγξετε την πρόσβαση στη μνήμη. Θα χρειαζόταν επίσης κάποια συγκόλληση για να επανασυνδεθούν οι διάφορες γραμμές ενεργοποίησης τσιπ (chip enable lines).
Αν κάποιοι από τους καταχωρητές απομόνωσης (buffers) παρουσιάσουν βλάβη, τίποτα σε ένα FPGA δεν μπορεί να το διορθώσει. Εμπλέκονται μόνο ηλεκτρονικά και συνδέσεις, τα οποία σταματούν να λειτουργούν εάν το εν λόγω τσιπ δεν λειτουργεί πλέον ή δεν υπάρχει καν εκεί. Η τελευταία περίπτωση θα ήταν ακόμα καλύτερη, επειδή ένα τσιπ που είναι χαλασμένο τις περισσότερες φορές εξακολουθεί να λειτουργεί εν μέρει… και αυτό είναι το χειρότερο δυνατό σενάριο.
Nαι, σκεφτόμαστε το ίδιο πράγμα, αλλά ανέφερα λύσεις αντί να πω «αδύνατον».
Σε μια τέτοια περίπτωση «αλυσιδωτών επιπτώσεων» (cascading), η απλούστερη προσέγγιση θα ήταν να παρακαμφθεί ολόκληρο το ζήτημα, εξού και η διατύπωσή μου.
Παράκαμψη (workaround) μέσω εξομοίωσης του AY και όλων των επόμενων εξαρτημάτων, και σύνδεση του φυσικού πληκτρολογίου στη νέα πλακέτα Matrix. Γι’ αυτό έγραψα: «καλώδιο προσαρμογέα για το εσωτερικό του πραγματικού πληκτρολογίου CPC».
Παράκαμψη μέσω… λοιπόν, εξομοίωσης ολόκληρου του μηχανήματος και σύνδεσης του φυσικού πληκτρολογίου.
Αυτό που καταλαβαίνω από την απάντησή σου είναι ότι πολλά προβλήματα θα κλιμακωθούν γρήγορα στο «απλώς κάνε σαν να κάηκαν όλα τα ηλεκτρονικά του CPC και σύνδεσε το πληκτρολόγιο στην πλακέτα Matrix». Η οποία είναι πράγματι μια λύση.