×
Το RetroComputers.gr στο συνέδριο AthensCon 2019 (14 Νοε 2019)

Με χαρά σας ανακοινώνουμε ότι η ομάδα του RetroComputers.gr θα λάβει μέρος στο συνέδριο AthensCon 2019 που θα πραγματοποιηθεί στις 30 Νοεμβρίου και 01 Δεκεμβρίου 2019 στο κλειστό γήπεδο Tae Kwon Do (Παλαιού Φαλήρου) και το ωράριο λειτουργίας του συνεδρίου θα είναι από τις 10:30 το πρωί μέχρι τις 22:00 το βράδυ.

Topic-icon Ήχος σε unexpanded Sinclair ZX81 (!!!)

  • kokkiklhs
  • Το Άβαταρ του/της kokkiklhs Συντάκτης θέματος
  • Retro Maniac
  • Retro Maniac
Περισσότερα
08/02/2017 19:41 #38494 από kokkiklhs
Ήχος σε unexpanded Sinclair ZX81 (!!!) δημιουργήθηκε από kokkiklhs
Δεν είναι και τόσο φρέσκο το θέμα, αλλά αμφιβάλλω αν το γνωρίζουν πολλοί users, ειδικά στην Ελλάδα...
Όπως λοιπόν λέει κι ο τίτλος, παρόλο που ως γνωστόν το μικρό ΖΧάκι ΔΕΝ έχει καμιά hardware υποστήριξη όσον αφορά το θέμα του ήχου (εν ολίγοις ΔΕΝ ΕΧΕΙ ΗΧΟ), κάποιοι "πονηροί" και ταλαντούχοι προγραμματιστές διεπίστωσαν εδώ και αρκετά χρόνια ότι ήταν δυνατή μια υποτυπώδης αναπαραγωγή ήχου από αυτό το θαυματουργό μηχανάκι. Και λέω θαυματουργό, διότι είναι το μηχάνημα που με έχει "κουφάνει" περισσότερο από κάθε άλλο που έχω δει, όσον αφορά την υπέρβαση των "επισήμων" δυνατοτήτων του, με βάση τα standards που του δίνει ο Θείος Clive ως κατασκευαστής...
Όχι λοιπόν, δεν είναι ούτε η Amiga που με άφησε κάγκελο με κάποιο demo, ούτε ο 64, ούτε ο XL, παρά είναι αυτό το ΑΠΙΣΤΕΥΤΟ κατασκεύασμα, που με έναν επεξεργαστή, μία ROM των 8k (συμπεριλαμβάνεται κι η BASIC), μια παλιο-RAM του 1k και μια ζαβή ULA (που αναλαμβάνει ΟΟΟΟΛΑ τα υπόλοιπα) δείχνει το πώς είναι δυνατόν μέσω έξυπνου προγραμματισμού να γίνουν θαύματα και βάζει τα γυαλιά σε όλους τους "μπιχλιμπιδάτους" μεγαλύτερούς του!!

-Μα καλά, πώς γίνεται να παράγει ήχο, όχι μόνο χωρίς soundchip, αλλά και χωρίς μεγάφωνο; Μας δουλεύεις;
Καθόλου, απλώς όπως πολλοί ήδη θα ξέρουν, ο Ζ80 είναι ένα πολύ ισχυρό 8μπιτο επεξεργαστάκι και στα σπεκτρουμάκια (16/48/Plus) έδωσε ήχο από το 1982, μέσω ενός beeper της πλάκας. Έχουμε ακούσει ήδη από τη 10ετία του '80 σε σπέκτρουμ ακόμη και τρικάναλες συνθέσεις, με ωραιότατο ήχο που παραγόταν από τον Ζ80, ελλείψει κάποιου εξειδικευμένου soundchip! Μέχρι και αναπαραγωγή digitized samples ακούσαμε, και πάλι εδώ αποκλειστικός υπεύθυνος είναι ο Ζ80. Ο Ζ80 λοιπόν, καίτοι επεξεργαστής, τα καταφέρνει μια χαρά και ως soundchip, μια κι είναι ένα από τα πιο γρήγορα και ευέλικτα ολοκληρωμένα της γενιάς του.
Μόνο μειονέκτημα: Όταν ο Ζ80 παραφορτωθεί με την αναπαραγωγή περισσοτέρων από ένα beep τη φορά, δε μπορεί να κάνει πολλά περισσότερα. Άντε, να μας δείχνει μια στατική εικόνα, και μέχρι εκεί. Αυτός είναι κι ο λόγος που σε όλα τα παιχνίδια του Spectrum όπου υπάρχει μουσική και/ή ηχητικά εφέ ΤΗΝ ΩΡΑ ΠΟΥ ΠΑΙΖΟΥΜΕ, πάντοτε είναι μονοκάναλα και της πλάκας. Στην ουσία όμως, εκείνη την ώρα ο Ζ80 εκτελεί λειτουργίες multitasking!!! Οι πιο ωραίες πολυκάναλες συνθέσεις βέβαια ακούγονται ΜΟΝΟ πριν αρχίσει ή αφού τελειώσει το gameplay, αφού ο επεξεργαστής έχει ξαλαφρώσει από όλα σχεδόν τα υπόλοιπά του καθήκοντα.

-Ωραία, και τι σχέση έχουν αυτά που μας λες για το Spectrum με τον ήχο του ΖΧ81;
Έχουν και παραέχουν, εκμεταλλεύτηκα την ευκαιρία για να εξηγήσω τι γίνεται με τον ήχο και στα σπεκτρουμάκια, μιας και κάποιοι μπορεί να μην το γνώριζαν, όμως το ίδιο ακριβώς ισχύει και για τον ΖΧ81 όσον αφορά τη θεωρία! Το μόνο που λείπει είναι το μεγαφωνάκι/beeper, αλλά κι αυτό ξεπερνιέται! ;)
Είδαν λοιπόν οι προγραμματιστές του ΖΧ81 ότι υπάρχει η δυνατότητα να παραχθούν ηχητικές συχνότητες μέσω "πειράγματος" του V-SYNC από το video signal που παράγει η ULA. Όλοι μας όσοι φορτώσαμε κάποιο παιχνίδι σε ΖΧ81 έχουμε δει αυτές τις ασπρόμαυρες γραμμές που γεμίζουν την οθόνη και δίνουν προσωρινά την εσφαλμένη εντύπωση ότι το μηχάνημα έπαθε κάποια βλάβη! :D
Εκεί ακριβώς είναι που η ULA "ακούει" το ηχητικό σήμα του φορτώματος και το μετατρέπει σε data, αλλά και σε video output μέσω του V-SYNC της οθόνης. Το ίδιο ακριβώς, αλλά από την ανάποδη, συμβαίνει όταν κάνουμε save κάποιο πρόγραμμα, όπου μέσω των συχνοτήτων η ULA δίνει τις κατάλληλες τάσεις/ήχο στο MIC output του μηχανήματος, ώστε να γραφτεί το πρόγραμμα με μορφή ήχου στην κασέτα μας! Επομένως το ΖΧ81 ΜΠΟΡΕΙ να παραγάγει ήχο, κι ας μην τον ακούμε ποτέ!
Εδώ ακριβώς έρχεται η προγραμματιστική έμπνευση και κάποιος σκέφτηκε ότι μπορούμε να έχουμε και μουσική δίνοντας το κατάλληλο πρόγραμμα, μέσω συχνοτήτων που θα στείλει η ULA στην οθόνη μας, αφού πρώτα έχει πάρει τις κατάλληλες εντολές από τον επεξεργαστή!!
Έτσι, μέσω του RF signal έγινε δυνατόν να ακούσουμε τις νότες κάποιας υποτυπώδους μελωδίας ανοίγοντας την ένταση της τηλεόρασης πολύ δυνατά, ανακατεμένες φυσικά με αρκετό θόρυβο, λόγω RF!! Όποιος έχει λοιπόν μια παλιά CRT τηλεόραση και μπορεί να δει εικόνα μέσω RF από το ΖΧ81 του, μπορεί να ακούσει και ήχο... αν ταυτοχρόνως συνδέσει καλώδιο από το MIC output σε κάποιον ενισχυτή ήχου, θα τον ακούσει και ενισχυμένο, χωρίς να χρειαστεί να κάνει απολύτως καμιά επέμβαση στο μηχανημα!

-Ωχ, τελικά αλήθεια έλεγε αυτός! Ενδιαφέρον φαίνεται, αλλά τι γίνεται όμως με μας που έχουμε κάνει composite mod και δεν έχουμε RF;
Να ξεκινήσω λέγοντας ότι σε μοντέρνες (LCD κλπ) τηλεοράσεις και οθόνες, που δεν είναι 50Hz, το κόλπο αυτό ή θα πιάσει "στο περίπου", ή, το πιθανότερο, δε θα πιάσει καθόλου. Η σάρωση των 50HZ είναι καθοριστικής σημασίας, διότι εκεί πάνω ακριβώς στηρίζεται ο σχετικός προγραμματισμός και με βάση τη συχνότητα αυτή γίνεται ο χρονισμός. Φυσικά το πρακτικό πρόβλημα που προκύπτει εδώ είναι ότι (σε αντίθεση με το Spectrum) την ώρα που ο Ζ80 παίζει μουσική ΔΕΝ μπορούμε να έχουμε στην οθόνη μας καμιά απολύτως εικόνα (ούτε καν κάποιο απλό κείμενο ή έστω στατική μαύρη οθόνη), διότι την ίδια στιγμή η ULA παίζει με το V-SYNC της εικόνας κι έτσι αυτό που βλέπουμε στην οθόνη μας είναι ένα τουρλουμπούκι από ασπρόμαυρες γραμμές, όπως όταν φορτώνει κάποιο πρόγραμμα κι ακόμη χειρότερα!
Όλοι σχεδόν όμως εχουμε κάπου καβάντζα κάποιο π.χ. 1084, ή μια παλιά 14άρα CRT τηλεορασούλα με RCA AV in... Εκεί θα δουλέψει μια χαρά, μόνο που θα πρέπει να πάρουμε καλώδιο με τον "ήχο" μας από το MIC και να τον στείλουμε στο Audio in της συσκευής.
Εδώ υπάρχει όμως ένα μικρό προβληματάκι: Η τάση εξόδου του MIC είναι υπερβολικά χαμηλή, οπότε ίσως να χρειαστεί προσθήκη ενός επί πλέον πυκνωτή και μιας αντίστασης στο εσωτερικό του μηχανήματος, που θα κάνει προενίσχυση της εξόδου! Είναι όμως πολύ εύκολη επέμβαση, δεν την παραθέτω εδώ για λόγους οικονομίας χώρου, αν όμως υπάρχει ενδιαφέρον, ευχαρίστως να τη γράψω παρακάτω...

-Όλα καλά, και τι διαθέσιμο software υπάρχει που μπορεί να μας δώσει ήχο με αυτό τον τρόπο;
Οι πρώτες απόπειρες έγιναν εδώ και αρκετό καιρό κι έχουμε δύο προγραμματάκια που αναπαράγουν το ένα κάποια κλασικά/παραδοσιακά κομμάτια και το άλλο κάποιες γνωστές μελωδίες των Beatles, καθώς και το demo Irrlicht Project, που δίνει ήχο ο οποίος θυμίζει πολυκάναλο στο Spectrum, χρησιμοποιώντας όμως μόνο ένα κανάλι και "πονηρές" παύσεις και εναλλαγές. Έγινε ακόμη και απόπειρα για speech synthesis (!!!) η οποία ναι μεν ακούγεται τραγικά κι ελάχιστα θυμίζει ανθρώπινη ομιλία, είναι όμως αξιοθαύμαστη σαν ιδέα και σαν προγραμματιστική απόπειρα... όλα τα προαναφερθέντα το μόνο extra που χρειάζονται είναι 16k μνήμης

-Ναι, αλλά εσύ στην αρχή μας μίλησες για τελείως unexpanded μηχάνημα...
Σωστά, αυτά που ανέφερα αμέσως παραπάνω είναι ΄το παλαιότερο σχετικό υλικό που υπάρχει και τότε οι δημιουργοί θεώρησαν για δικούς τους λόγους πως όλοι οι ΖΧάκηδες διαθέτουν έτσι κι αλλιώς επέκταση μνήμης (πράγμα που εν πολλοίς εξ άλλου ισχύει).
Κι ερχόμαστε στο πιο πρόσφατο και καλύτερο: Κατόπιν δικής μου (χωρίς πλάκα) πρωτοβουλίας, παρότρυνσης και επιμονής, ο utz (Irrlicht Project) από τη Γερμανία, που είναι προγραμματιστής και μουσικός κάθησε και έφτιαξε προγραμματάκι που στο 1kB (!!!) παίζει μουσική με 2 κανάλια για νότες και 1 για "κρουστά". Όλοι έλεγαν ότι ενώ στον Spectrum έxουμε ακούσει μέχρι και 16 (ναι, δεκαέξι, όσο 4 αμίγκες) κανάλια beeper music, στον ΖΧ81 δεν γινόταν κάτι τέτοιο. Αφού λοιπόν κυριολεκτικά του έπρηξα τα @@ του ανθρώπου (άξιζε τον κόπο όμως), τον κατάφερα να το δοκιμάσει. Το σκεπτικό μου ήταν ότι δε μπορεί δύο μηχανήματα που έχουν παρόμοια χαρακτηριστικά και μοιράζονται τον ίδιο (γρήγορο) επεξεργαστή να μη μπορούν να πετύχουν κάτι αντίστοιχο... Το μυστικό εδώ είναι οι διαφορετικές ULA, του ΖΧ81 είναι πολύ πιο πρωτόγονη και πράγματι ρίχνει τη συνολική ταχύτητα του μηχανήματος σε τραγικά επίπεδα... Ωστόσο το θαύμα έγινε, ονομάζεται 1k2b και είναι εντυπωσιακό.
Και το ακόμη καλύτερο, ο δημιουργός δίνει τον κώδικα καθώς και πλήρεις οδηγίες ώστε να μπορέσει όποιος θέλει να προσαρμόσει δική του μουσική πάνω στο ίδιο engine!!!
Παρόλο που επέμεινα στον utz να το φτιάξει για 16k (για ακόμη πιο θεαματικά αποτελέσματα), εκείνος είχε την άποψη ότι πρέπει να γίνει στο 1k (κώδικας ΚΑΙ μουσική) ώστε 1ον να κουφαίνονται ακόμη περισσότερο όσοι το δουν και 2ον να μπορεί ο οποιοσδήποτε με ένα "ξερό" ΖΧ81 του 1k να το δει, χωρίς να χρειάζεται απολύτως τίποτε άλλο! Τελικά εκ των υστέρων καταλαβαίνω πως είχε πολύ δίκιο!!

Κλείνοντας, να πω ότι πρέπει να υπάρχουν και κάνα-δυο παλιότερα demos με ήχο όπως αυτό με τους Beatles, που όμως μου διαφεύγουν... ακόμη, κυκλοφορούν και κάποια λίγα ΖΧ81 music demos, που όμως αφορούν μηχανήματα με το ZXPand και προσθήκη ΑΥ soundchip (ναι, γίνεται κι αυτό), που όμως δεν έχουν καμιά σχέση με το θέμα μας...
Δίνω και τα links για την προσωπική σελίδα του utz όπου θα βρείτε αναλυτικά τα σχετικά με το 1k2b και τις sources κλπ για κατέβασμα, και για το εξαιρετικό 1bit forum, στο οποίο θα βρείτε κι άλλους αξιόλογους δημιουργούς beeper music, κυρίως για Spectrum φυσικά, αλλά και για άλλες πλατφόρμες:
www.irrlichtproject.de/
randomflux.info/1bit/

Επίσης βάζω ως συνημμένα όλα τα "μουσικά" προγραμματάκια που προανέφερα, για μια πρώτη δοκιμή υπάρχει ο εξαιρετικός EightyOne emulator (αν δεν τον έχετε ήδη), ο οποίος μπορεί να κάνει εξομοίωση και του "ήχου" μέσω RF! Τα δίνω απ'ευθείας σε μορφή turbo WAV (θα παίξουν και στον emulator).
Για τους πιο θαρραλέους συνιστώ δοκιμή σε αληθινό μηχάνημα, για μέγιστη πώρωση, αξίζει 1000 φορές το χρόνο που θα αφιερώσετε και τις βλαστήμιες που θα ρίξετε μέχρι να το καταφέρετε να παίξει όπως πρέπει!! :D

Συνημμένο αρχείο:

Όνομα Αρχείου: ZX81_Music.rar
Μέγεθος αρχείου:48 KB


Και τέλος, για τους πιο τεμπέληδες ή πολυάσχολους, βάζω εδώ κι ένα βιντεάκι από αληθινό ΖΧ81 που παίζει το 1k2b!!


Καλές δοκιμές!!!
:drinks:
Συνημμένα:
Οι ακόλουθοι χρήστες είπαν "Σε Ευχαριστώ": Fotis_KFOR, chdlee, glaros, Antonis77

Παρακαλούμε Σύνδεση ή Δημιουργία λογαριασμού για να συμμετάσχετε στη συζήτηση.

  • Fotis_KFOR
  • Το Άβαταρ του/της Fotis_KFOR
  • Site Owner / Admin
  • Site Owner / Admin
  • PC / Sinclair ZX Spectrum+3
Περισσότερα
09/02/2017 12:41 #38497 από Fotis_KFOR
Απαντήθηκε από Fotis_KFOR στο θέμα Ήχος σε unexpanded Sinclair ZX81 (!!!)
Ευχαριστούμε για την ενημέρωση kokkiklhs, δεν θυμάμαι να το είχα δει το συγκεκριμένο βίντεο και την όλη περιγραφή που κάνεις....

Πραγματικά το Sinclair ZX81 είναι ένα μηχανάκι που παρά τα πολύ "φτωχά" χαρακτηριστικά του, οι χρήστες και οι προγραμματιστές το είχαν σε πολύ υψηλή εκτίμηση προγραμματίζοντας με αυτό και έβρισκαν τρόπους να μας εντυπωσιάζουν με κάποια προγράμματα ή projects με αυτό το μηχανάκι.

Αυτό με τον ήχο τώρα που μας αναφέρεις σίγουρα είναι ένα από αυτά αφού δεν υπάρχει καθόλου hardware ήχου αλλά με αυτό τον τρόπο είναι σαν να έχεις. :cheer:

Όρεξη και χρόνο να έχεις να ασχολείσαι... :cheer: ;)
Οι ακόλουθοι χρήστες είπαν "Σε Ευχαριστώ": kokkiklhs

Παρακαλούμε Σύνδεση ή Δημιουργία λογαριασμού για να συμμετάσχετε στη συζήτηση.

  • glaros
  • Το Άβαταρ του/της glaros
  • Team RC
  • Team RC
  • Play it Loud
Περισσότερα
09/02/2017 15:32 #38500 από glaros
Απαντήθηκε από glaros στο θέμα Ήχος σε unexpanded Sinclair ZX81 (!!!)
:nicethread:
Οι ακόλουθοι χρήστες είπαν "Σε Ευχαριστώ": kokkiklhs

Παρακαλούμε Σύνδεση ή Δημιουργία λογαριασμού για να συμμετάσχετε στη συζήτηση.

  • Antonis77
  • Το Άβαταρ του/της Antonis77
  • Retro Fan
  • Retro Fan
Περισσότερα
13/02/2017 21:11 #38556 από Antonis77
Απαντήθηκε από Antonis77 στο θέμα Ήχος σε unexpanded Sinclair ZX81 (!!!)
Δεν ασχολουμαι τόσο με το αθλημα, αλλα το βρηκα πολύ εντυπωσιακο!
Οι ακόλουθοι χρήστες είπαν "Σε Ευχαριστώ": kokkiklhs

Παρακαλούμε Σύνδεση ή Δημιουργία λογαριασμού για να συμμετάσχετε στη συζήτηση.

Χρόνος δημιουργίας σελίδας: 0.157 δευτερόλεπτα
Powered by Kunena Φόρουμ

great retro computers and retro consoles companies logos