Το προφίλ μας στο Google Plus
0

Arduino Sound Master: Ήχος από το παρελθόν!

Αρκετά με τα πιάνα, τις κιθάρες και τις τρομπέτες! Ο κόσμος θέλει να ακούσει “βρώμικους” ηλεκτρονικούς ήχους, γεμάτους artifacts και γενικά άκρως νοσταλγικούς. Τι θα λέγατε αν γνωρίζαμε το τσιπάκι ήχου που συνόδευε έναν από τους πιο πετυχημένους υπολογιστές όλων των εποχών; Αναφερόμαστε στον Commodore 64, του οποίου τα παιχνίδια και κυρίως η μουσική τους άφησαν εποχή!

deltaHacker 019 (τεύχος Απριλίου 2013) | Arduino Sound Master: Ήχος από το παρελθόν!

Ο ήχος ενός απλού αρμονικού κύματος μοιάζει αρκετά με τους φυσικούς ήχους και, τέλος πάντων, ακούγεται ευχάριστα. Εμείς όμως ξεκινήσαμε την εξερεύνηση των τεχνικών σύνθεσης ήχου για να γνωρίσουμε μερικές ευρηματικές προγραμματιστικές τεχνικές και, κυρίως, για να ικανοποιήσουμε τη νοσταλγική μας διάθεση. Στην αρχή αυτής της σειράς, λοιπόν, αναφερθήκαμε στους ακατέργαστους ήχους που παρήγαγαν οι παλιές παιχνιδομηχανές. Δεν μιλάμε για απλοϊκά μπλιπ και μπλοπ, αλλά για τις καταιγιστικές μελωδίες, με το χαρακτηριστικό “ηλεκτρονικό θόρυβο” που ακούγαμε από παιχνίδια στην Amiga, στον Commodore και στα παλιά arcades. Μη νομίζετε ότι η νοσταλγική διάθεση απέναντι σε αυτούς τους ήχους αποτελεί αποκλειστικά δική μας τρέλα. Με το θέμα έχουν ασχοληθεί πολλοί προγραμματιστές αλλά και μουσικοί, που ανήκουν στη λεγόμενη demo scene. Σε αυτή την κοινότητα ανήκουν όσοι γράφουν μικροσκοπικά προγράμματα σε Assembly (και *σπανίως* σε C), τα οποία ωστόσο υλοποιούν εξαιρετικά σύνθετα εφέ. Ένα τμήμα αυτής της σκηνής ασχολείται με τη σύνθεση μουσικής και τα κομμάτια τους είναι γνωστά σαν chiptunes. Παρεμπιπτόντως, με τέτοια μουσική είναι ντυμένα και τα διάφορα key-generators.

Ο βασιλιάς του ήχου
Μερικοί παλιοί υπολογιστές –τουλάχιστον οι πιο εξελιγμένοι– ήταν εξοπλισμένοι με κάποιο ειδικό τσιπάκι το οποίο αναλάμβανε την παραγωγή του ήχου. Μην φαντάζεστε τα υπερσύγχρονα ολοκληρωμένα κυκλώματα που διαθέτουν οι σημερινές κάρτες ήχου. Τα τσιπάκια εκείνης της εποχής προσέφεραν στοιχειώδεις λειτουργίες, με βασικότερη την εύκολη σύνθεση μερικών κυμάτων. Ουσιαστικά, τα εν λόγω τσιπάκια απάλλασσαν τον επεξεργαστή από ορισμένες επαναλαμβανόμενες εργασίες (υπολογισμό νέων δειγμάτων, εφαρμογή περιγράμματος έντασης κ.ά.) και με αυτόν τον τρόπο βοηθούσαν στη συνολική επιτάχυνση του συστήματος. Ωστόσο, σε σχέση με τη μουσική καθεαυτή, τα παλιά τσιπάκια ήχου προσέφεραν ελάχιστες δυνατότητες. Για να συνθέσουν τις διάφορες μελωδίες οι προγραμματιστές εξαντλούσαν κάθε φορά τα όρια της ευρηματικότητάς τους και συνδύαζαν τα ελάχιστα εφόδια με έξυπνους και πρωτότυπους τρόπους. Βέβαια, οι περιορισμοί του hardware άφηναν πάντα τη σφραγίδα τους στον ήχο και οι φανατικοί του είδους μπορούσαν να διακρίνουν εύκολα αν κάποιο μουσικό κομμάτι προερχόταν από το ένα ή το άλλο τσιπάκι. Ένας από τους πρώτους υπολογιστές που διέθετε εξειδικευμένο hardware για τον ήχο ήταν ο Commodore 64 και το σχετικό ολοκληρωμένο κύκλωμα ήταν το SID 6581/8580. Ε, λοιπόν, η τεράστια επιτυχία του εν λόγω υπολογιστή και η πληθώρα των αντίστοιχων παιχνιδιών, έκαναν το συγκεκριμένο τσιπ ιδιαίτερα δημοφιλές. Έτσι, οι περισσότεροι μουσικοί και προγραμματιστές που ασχολούνται με τα chiptunes, γράφουν μουσική για το SID! Αν κάνετε μια γρήγορη αναζήτηση στο Internet θα διαπιστώσετε ότι υπάρχουν δεκάδες SID emulators, ενώ το YouTube βρίθει από μουσικά κομμάτια γραμμένα για το SID (μπορείτε να πάρετε μια γεύση από αυτό το video).

Όπως υποψιάζεστε, αν και δεν σκοπεύουμε να γράψουμε έναν (ακόμα) εξομοιωτή του SID, θα μιμηθούμε αρκετές από τις λειτουργίες του συγκεκριμένου τσιπ. Όμως, τι ακριβώς μπορούσε να κάνει το SID; Να πούμε κατ’ αρχάς ότι διέθετε τρία κανάλια ήχου. Καθένα απ’ αυτά μπορούσε να παράγει τριγωνικά, πριονωτά και τετραγωνικά κύματα, ή θόρυβο. Για την εξομοίωση του θορύβου το SID διέθετε μια μονάδα παραγωγής ψευδοτυχαίων αριθμών, ενώ ήταν εξοπλισμένο και με τρεις μηχανισμούς ADSR, για την εφαρμογή ενός περιγράμματος έντασης (volume envelope) σε κάθε κανάλι. Το τσιπάκι δεν ήταν αμιγώς ψηφιακό. Ήταν αυτό που λέμε mixed-signal κι ενσωμάτωνε κι ορισμένα αναλογικά συστήματα (κυρίως φίλτρα). Κάπου εδώ όμως θα σταματήσουμε. Μια αναλυτική παράθεση όλων των υποσυστημάτων του SID θα ήταν κουραστική και μάλλον περιττή.

Διαβάστε ολόκληρο το άρθρο στο deltaHacker 019 (τεύχος Απριλίου 2013).

Όλες τις πληροφορίες για τις συνδρομές στο deltaHacker, το μοναδικό μηνιαίο περιοδικό με θεματολογία ethical hacking, δίκτυα, ασφάλεια, προγραμματισμό και ηλεκτρονικά, θα τις βρείτε εδώ ακριβώς.

Το περιοδικό deltaHacker δεν κυκλοφορεί στα περίπτερα, στους αναγνώστες του αποστέλλεται ταχυδρομικώς και οι παραγγελίες γίνονται αποκλειστικά online, συμπληρώνοντας τη σχετική φόρμα.

Σημείωση: Οι συνδρομές μπορούν να ξεκινούν από όποιο τεύχος επιθυμείτε, αρκεί να υπάρχει σε stock.

Leave a Reply

You must be logged in to post a comment.

Σύνδεση

Αρχείο δημοσιεύσεων