Προστέθηκε εξομοίωση CPC στις σελίδες των θεμάτων! 🕹️

Γεια σας παιδιά!

Με χαρά σας ανακοινώνω ότι υλοποίησα εξομοίωση εντός σελίδας (in-page emulation) για δημοσιεύσεις που έχουν σχετικά συνημμένα!

Χρησιμοποίησα το cpcjs που είναι μια js μεταφορά του Caprice32 RVMPlayer, αν και δεν υποστηρίζει cartridge.

Πράγματα που πρέπει να έχετε υπόψη:

  • μπορείτε να το τρέξετε σε αρχεία dsk, cdt, sna και cartridge (δεν το έχω δοκιμάσει με αρχεία zip που περιέχουν εικόνες)
  • νομίζω ότι πρέπει ακόμα να δουλέψω την υποστήριξη joystick
  • δεν ξέρω πώς να πατήσω «Press Play» όταν εισάγω μια κασέτα

Δοκιμάστε το!

Gryzor (E).dsk

Faίνεται πολύ ωραίο!

Όπως προτάθηκε και σε ένα άλλο θέμα, θα έκανα μια δοκιμή στον RVM player και θα έκανα μια δημοσκόπηση για να δω τι προτιμάει ο κόσμος.

Δεν ξέρω αν φταίω εγώ, το παιχνίδι, ο εξομοιωτής ή ο περιηγητής, αλλά δεν έχω καθόλου ήχο.

Είμαι από το κινητό οπότε δεν μπορώ να το ελέγξω, αλλά οι ήχοι σίγουρα λειτουργούσαν σε μένα. Θα το τσεκάρω από το λάπτοπ μου αργότερα.

Αν υπάρχει ενδιαφέρον θα μπορούσα να δοκιμάσω να αλλάξω σε έναν άλλο εξομοιωτή (emu), αλλά δεν μπορώ να έχω και τους δύο ταυτόχρονα για να δοκιμάσω.

Ok, μόλις το δοκίμασα ως απλός χρήστης, ο ήχος δουλεύει σίγουρα. Αλλά θα χαρώ να ακούσω και από άλλους.

Into Oblivion (E).cdt (40.5 KB)

Φόρτωση κασέτας - Τελικά διάβασα το ρημάδι το εγχειρίδιο (RTFM), το F4 είναι το play :smiley:

Ω, υπέροχα!

(επίσης, πολύ βολικό που μπορείς να απαντήσεις και ο εξομοιωτής παραμένει ανοιχτός και σε λειτουργία)

Τι πραγματικά υπέροχη λειτουργία!

Αυτό προσθέτει μια εντελώς νέα διάσταση σε σχέση με αυτό που είχαμε στο παλιό φόρουμ.

[EDIT] Έπρεπε οπωσδήποτε να δοκιμάσω να προσθέσω ένα από τα παιχνίδια μου σε αυτό το θέμα!

gf2.dsk

Ναιiii, κι εγώ το λατρεύω τόσο πολύ! Είναι κάτι που ήταν σχεδόν αδύνατο στο παλιό φόρουμ, χαίρομαι πάρα πολύ που καταφέραμε να το έχουμε εδώ!

Χμμμ, περίεργο.

Πρόσθεσα το Goatfish 2 στην προηγούμενη δημοσίευσή μου.

Η εντολή RUN"GF2" πράγματι φορτώνει το παιχνίδι μέσω ενός BASIC loader, αλλά όταν το ίδιο το παιχνίδι φορτώνει, δεν υπάρχει ήχος και η εισαγωγή από το πληκτρολόγιο φαίνεται να μην λειτουργεί.

Η εντολή RUN"GF2.BIN" προσπερνά τον BASIC loader και απλώς εκτελεί το εκτελέσιμο (binary) του παιχνιδιού. Ο ήχος λειτουργεί, όπως και η εισαγωγή από το πληκτρολόγιο.

Aυτό δεν θα υποδήλωνε πρόβλημα εξομοίωσης/loader; Σε μένα, πάντως, το run"GF2 λειτουργεί μια χαρά, τόσο ο ήχος όσο και το πληκτρολόγιο

Aυτό είναι πολύ περίεργο.

Χρησιμοποιώ Firefox, αν αυτό παίζει κάποιον ρόλο.

Θα δοκιμάσω έναν διαφορετικό περιηγητή.

[EDIT] Μπα, το Edge εμφανίζει την ίδια συμπεριφορά (δεν έχω εγκατεστημένο το Chrome).

Ίσως να φταίει το Caprice;

Pistanós. An mporoúse na dokimásete aftí tin eikóna me to archikó Caprice32, tha mporoúsame na to epivevaiósoume…

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

Στην κονσόλα των Chrome Dev Tools μου εμφανίζει το ακόλουθο μήνυμα, το οποίο μπορεί να σχετίζεται:
[Deprecation] The ScriptProcessorNode is deprecated. Use AudioWorkletNode instead. (``https://bit.ly/audio-worklet``)

Ο RVM Player λειτουργεί μια χαρά. Μπορείτε να τον δοκιμάσετε εδώ: https://amstrad.es/rvmplayer.php?file=hardest1.zip&emuonline=FREDDY

Χμ, ευχαριστώ γι’ αυτό. Πράγματι, το ScriptProcessorNode εκτελείται στο κύριο UI thread και αυτό, θεωρητικά, προκαλεί buffer underruns (IRQ conflicts, κανείς; :smiley: ). Επίσης, τα εσωτερικά 44.1KHz πρέπει να γίνουν upsample στα 48KHz για τον περιηγητή, κάτι που εισάγει επιπλέον παραμορφώσεις.

Για την ακρίβεια, με έβαλες σε βαθιά νερά. Μόλις ανέβασα μια μικρή τροποποίηση που κάνει τον περιηγητή να βγάζει ήχο στα εγγενή 44.1KHz και διπλασίασα το buffer. Μπορείς να το δοκιμάσεις και να μου πεις;

Το RVM φαίνεται ωραίο, αλλά του λείπει ο έλεγχος που σου δίνει το Caprice32 όταν πατάς το F1.

EDIT: μπα, η διόρθωσή μου δεν λειτουργεί. Θα κοιτάξω να περάσω σε RVM αργότερα σήμερα ή αύριο.


Στην τελευταία έκδοση του Vivaldi φαίνεται να λειτουργεί αρκετά καλά με τον ήχο — τόσο καλά ώστε να ολοκληρώσω το goatfish 2!

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

@Gryzor είναι δυνατόν να σταλεί ένα “CAT” αυτόματα μόλις φορτωθεί ο παίκτης; (Για εικόνες δίσκου φυσικά)

Αυτό είναι πράγματι πολύ περίεργο.

Μόλις το δοκίμασα με το Caprice32 4.6.0 και είχα την ίδια συμπεριφορά.

Ο BASIC loader εκτελείται, μετά το παιχνίδι φορτώνει, εμφανίζεται το αρχικό μενού, αλλά δεν υπάρχει ήχος και δεν αναγνωρίζεται κανένα πάτημα πλήκτρου.

Ωστόσο, τόσο το WinAPE όσο και το Cadence λειτουργούν μια χαρά.

Θα προσπαθήσω να βρω ένα εμπορικό παιχνίδι που χρησιμοποιεί έναν BASIC loader με παρόμοιο τρόπο.

[EDIT] Δοκίμασα τη φανταστική έκδοση του Sly Spy από τον Jean-Marie με προσθήκη μουσικής, καθώς έχει κι αυτή έναν BASIC loader, αν και είναι πολύ πιο περίπλοκος από τον δικό μου.

Και κολλάει κι αυτό αφού φορτώσει το παιχνίδι, χωρίς να αναγνωρίζει τα πατήματα των πλήκτρων!

Το WinAPE λειτουργεί μια χαρά.