Συντάκτης άρθρου:Darth Cotsos

Μάθημα 1ο

 

 

 

 

Με την ύπαρξη cross compilers για τα περισσότερα Home micros της δεκαετίας του '80 γίνετε πλέον εύκολη η ανάπτυξη εφαρμογών για τα αγαπημένα μας μηχανήματα.Στη σειρά αυτών των άρθρων θα ασχοληθούμε με την εισαγωγή στη C και τους cross compilers Ζ88dk και CC65.

 

O Z88dk ( www.z88dk.org )όπως έχω αναφέρει και σε προηγούμενο άρθρο είναι ένας C compiler για τους υπολογιστές που στηρίζονται στον Z80A της Zilog ενώ ο CC65 ( www.cc65.org ) αφορά τους υπολογιστές που είναι υλοποιημένοι γύρω από τον 6502 της MOS.Και οι δύο προαναφερόμενοι compilers δεν έχουν κάποιο περιβάλλον ανάπτυξης. Το πρόγραμμα γράφετε σε όποιον editor θέλουμε εμείς και κατόπιν από την γραμμή εντολών δίνουμε την αντίστοιχη εντολή και το πρόγραμμα μας μετατρέπετε σε εκτελέσιμο αρχείο για τον παλιό υπολογιστή μας. Μπορούμε πλέον να το τρέξουμε μέσα από έναν emulator ή και να το μεταφέρουμε κατ' ευθείαν στον παλιό μας υπολογιστή!!!Εδώ για το άρθρα και τα screen shoots θα χρησιμοποιήσω το Notepad2 πού είναι ένας εύχρηστος free program editor.
Το notepad2 μπορείτε να το κατεβάσετε από εδώ http://www.flos-free.../notepad2.html. Στο διαδίκτυο βέβαια μπορείτε να βρείτε και άλλους free editors για να δοκιμάσετε και να διαλέξετε αυτόν που σας ταιριάζει καλύτερα!!!

Για το άρθρο θα υποθέσουμε ότι οι compilers είναι εγκατεστημένοι στο δίσκο C:\ και αναλυτικότερα ο Z88dk στο C:\z88dk\ και ο CC65 στο C:\cc65\
Έτσι για τον Z88dk ο compiler βρίσκετε στο C:\z88dk\bin και για τον cc65 στο c:\cc65\bin. Θα συνιστούσα να βάζετε εκεί και την όποια εργασία δουλεύετε και να την μεταφέρετε αφού έχετε ολοκληρώσει την εφαρμογή σας!!!
Το compile θα γίνετε για τα 2 κυριότερα μηχανήματα της εποχής τον ZX Spectrum και τον Commodore 64.
Η εντολή για τον ZX Spectrum είναι η εξής:

zcc +zx -lndos -lm -create-app program.c
όπου program.c το όνομα του source αρχείου.

Τον πηγαίο κώδικα θα τον σώζετε πάντα ως <όνομα αρχείου.c> χωρίς τα <>!!!
Ο compiler αν όλα πάνε καλά θα δημιουργήσει ένα αρχείο TAP με το όνομα a.tap!!! Εσείς μετά του δίνετε ότι όνομα θέλετε κρατώντας πάντα την επέκταση .tap .

Για τον Commodore 64 η αντίστοιχη εντολή είναι:

cl65 program.c και εδώ ισχύουν τα ίδια που είπαμε για τον Spectrum εκτός από το TAP αρχείο!!! Εδώ ο compiler παράγει ένα αρχείο με το ονομα του προγράμματος εδώ πχ θα
παράγει το αρχείο program που είναι και το εκτελέσιμο. Μετονομάστε το σε program.prg και τρέξτε το με τον emulator!!!

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

zcc +cpc -lcpcfs -lmz -create-app -o program adv_a.c -> για Amstrad CPC

zcc +msx -create-app adv_a.c -> για MSX

zcc +zx81 -startup=2 -lm -create-app program.c -> για ZX81 Slow

zcc +zx81 -lm -create-app program.c -> για ZX81 fast

zcc +zx81ansi -lm -startup=4 -lgfx81hr192 -create-app program.c -> για ΖΧ81 High Res (τώρα που το έχουμε... μην το αφήσουμε να πάει χαμένο!!!)

Για τους υπολογιστές που έχουν 6502 η εντολή θα πρέπει να αλλάξει σε:

cl65 -t sys program.c όπου sys το σύστημα για το οποίο θέλουμε να γίνει compile το πρόγραμμα μας!!!!
Έτσι τα συστήματα είναι τα:

apple2 -> Apple II
atari -> Atari 8bit
atmos -> Oric Atmos
c128 -> Commodore 128
c16 -> Commodore 16
cbm510 -> Commodore 510
cbm610 -> Commodore 610
lynx -> Atari Lynx
nes -> Nintendo Entertainment System
pet -> Commodore PET
plus4 -> Commodore Plus/4
supervision -> Supervision Console
vic20 -> Commodore Vic20

Και μετά τα προκαταρκτικά ας περάσουμε στο... δια ταύτα!!!!

Η C είναι μία γλώσσα προγραμματισμού που αναπτύχθηκε για το λειτουργικό σύστημα UNIX την δεκαετία του '70 και βασικός της δημιουργός είναι ο Daniel Ritchie.
Η γενική δομή ενός προγράμματος C είναι η εξής:

α. Οδηγίες προ επεξεργαστή
β. Ορισμοί τύπων
γ. Δηλώσεις συναρτήσεων
δ. Ορισμός της συνάρτησης main (οπού θα βρίσκετε και το βασικό πρόγραμμα)
ε. Ορισμοί συναρτήσεων


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

#include

Αυτή λέει στον προ επεξεργαστή να ενσωματώσει τη StandarIO βιβλιοθήκη της C στο πρόγραμμα μας.
Αν θέλαμε να ενσωματώσουμε μια δική μας βιβλιοθήκη θα δίναμε:

#include

Οι τύποι δεδομένων στη C έχουν 2 κατηγορίες. Τους βασικούς και τους σύνθετους.
οι βασικοί τύποι δεδομένων της C είναι οι εξής:
int -> ακέραιος
short -> για μικρούς ακέραιους
long -> για μεγάλους ακέραιους
char -> χαρακτήρας
double -> διπλής ακρίβειας (μέχρι 64 δεκαδικά ψηφία)
float -> πραγματικός
void -> κενό (για συναρτήσεις που δεν επιστρέφουν κάποιο αποτέλεσμα!!!!)

Υπάρχουν βέβαια και άλλοι τύποι απλά εδώ ανέφερα τους βασικούς. Αν χρειαστεί θα αναφερθούμε και στους υπόλοιπους κατά την διάρκεια των άρθρων!!!!
Οι σύνθετοι τύποι παράγονται από τους βασικούς τύπους. Ένας σύνθετος τύπος δηλαδή μπορεί να αποτελείτε από πολλούς βασικούς τύπους.
Ξεκινάμε λοιπόν να γράψουμε το πρώτο μας προγραμματάκι (ΝΑΙ ΤΟ HELLO WORLD ΕΝΟΩ!!!!). Εδώ όμως θα βάλω Silogomania.com!!!!

#include -> Εδώ λέμε στον προ επεξεργαστή να ενσωματώσει την βιβλιοθήκη standard IO (stdio.h) η οποία έχει και τις βασικές εντολές input - output της C.

void main() -> Η main είναι η βασική συνάρτηση στη οποία υπάγετε και το κυρίως πρόγραμμα (O τύπος είναι void αφού δεν επιστρέφει καμία τιμή!!!)

{ -> Η { δηλώνει την αρχή του προγράμματος και έχει την ίδια χρήση όπως η begin της Pascal για όποιους γνωρίζουν. Επίσης δηλώνει και την αρχή συνάρτησης καθώς και εντολών βρόγχου όπως η FOR αλλά και IF!!!!

printf("retrovisions.gr\n"); -> H printf τυπώνει στη οθόνη το αλφαριθμητικό όρισμα που θα της δώσουμε αλλά χρησιμοποιήται και για να τυπώσουμε τιμές μεταβλητών κ.α. Ο κοντρόλ χαρακτήρας \n λέει στον κέρσορα να πάει στη επόμενη γραμμή!!!
} -> Η } αντίθετα από τη { δηλώνει το τέλος του προγράμματος.

Ο Compiler CC65 για τον 6502 δεν δίνει κανένα μήνυμα όταν η διαδικασία είναι επιτυχής!!!


Αντίθετα ο Z88dk βγάζει πολλά μηνύματα... μην τρομάζετε είναι φυσιολογικό!!!!! Αν υπάρξει λάθος θα το καταλάβετε από τα μηνύματα error.
Στα μηνύματα error αναφέρονται επίσης και οι γραμμές στις οποίες εντοπίστηκαν τα errors.


Το προγραμματάκι μας σε C64!!! ξεχωρίζει το μήνυμα retrovisions.gr Η οθόνη δεν καθαρίστηκε γιατί η εντολή είναι διαφορετική για τους 2 compilers οπότε και θα μιλήσουμε σε άλλο μάθημα.


Και στη οθόνη από τον ZX Spectrum!!! και εδώ η οθόνη δεν καθαρίστηκε. Ωστόσο προσέξτε ότι είναι σε 64 στήλες και όχι 32. Αυτό έμεινε από προηγούμενη ενέργεια μου και το άφησα για να σας δείξω ότι με το Z88dk έχουμε και αυτή τη δυνατότητα στον ZX Spectrum!!!


Εδώ θα ήθελα να επισημάνω ότι στη προσπάθεια αυτή συμβουλεύομαι αρκετά βιβλία οπότε όποιος έμπειρος δει κάποιες ομοιότητες ας μη βάλει τις φωνές. Την πλήρη βιβλιογραφία θα την δημοσιεύσω φυσικά στο τέλος!!!

Συνολική βαθμολογία (0)

0 έως 5 αστέρια
  • Δεν βρέθηκαν σχόλια

retrovision player

Διαβάστε επίσης

Σήμερα συμπληρώνονται ακριβώς 27 ολόκληρα χρόνια από την μέρα που άφησε την τελευταία του πνοή στο νοσοκομείο της Μπολόνια ίσως ο καλύτερος οδηγός όλων των εποχών,ο Βραζιλιάνος Ayrton Senna.Ένα όνομα που οι παλαιότεροι στον χώρο και κυρίως οι βραζιλιάνοι ακόμη δεν το έχουν ξεχάσει.Ήταν ο άνθρωπος που τα Σαββατοκύριακα των Γκραν πρι έδινε απέραντη χαρά στην πατρίδα του στέλνοντας τους οπαδούς του στον ουρανό.
               Διαβάστε το θέμα

Συνεντεύξεις

Εικόνα: ΔΥΤΙΚΟΣ ΑΝΕΜΟΣ.jpgΑγαπητοί retrovisioners,έχουμε την μεγάλη χαρά να φιλοξενούμε ένα αρκετά παλιό συγκρότημα από την Θεσσαλονίκη,το οποίο πρόσφατα μας χάρισε την πρώτη του δισκογραφική δουλειά.Έχουμε την μεγάλη χαρά να έχουμε κοντά μας το συγκρότημα Δυτικός Άνεμος.

Ευθυμογραφήματα

Συντάκτης:Βασίλης Κωνσταντίνου

Καταχώρηση εικόνας

 
Ήταν μία συνηθισμένη βροχερή Λονδρέζικη μέρα στα τέλη Δεκέμβρη.Ο γνωστός ανταποκριτής είχε πάρει εντολή να πάει σε ειδική αποστολή....
              Διαβάστε το άρθρο

Συνεντεύξεις

Αγαπητοί φίλοι..Έχουμε την μεγάλη τιμή να σας παρουσιάσουμε μια μεγάλη συνέντευξη από έναν άνθρωπο που δεν χρειάζεται ιδιαίτερες συστάσεις για το τι πρόσφερε στον χώρο της πληροφορικής.Ο Νίκος Μανούσος ο CEO της Compupress είναι κοντά μας.

     Διαβάστε την συνέντευξη

Άλλα άρθρα

Σχεδόν όλοι οι Θεσσαλονικείς έχουν περάσει από το παλιό Λούνα παρκ.Στις μνήμες μας έρχονται μουσικές γέλια και φωνές,και όμορφα χρωματιστά λαμπάκια τα οποία ζωντανεύουν σαν όραμα μπροστά στα μάτια μας.Εμείς εδώ θυμόμαστε το παλιό αγαπημένο μας λούνα παρκ στην Νέα παραλία Θεσσαλονίκης.

Συνεντεύξεις

Στο καλοκαιρινό PC Master του Ιουνίου του 2011,μαζί με το τετρασέλιδο αφιέρωμα με θέμα την ολοκλήρωση των 133 τευχών του Pixel σε ψηφιοποιημένη μορφή που ολοκληρώθηκε από εμάς στο retrovisions,είχαμε και την ευκαιρία να δώσουμε μια συνέντευξη στον αρχισυντάκτη του PC Master Χρήστο Κουβόπουλο με θέμα το περιοδικό Pixel και η εποχή των home micros.

Ψηφιοποιήσεις

Game review

Σε ένα κόσμο εχθρικό δυο άνθρωποι παλεύουν για την επιβίωσή τους.Ο θάνατος είναι εύκολος ενώ η ζωή δεν έχει πλέον καμία αξία.Θυμόμαστε το the last of us ένα εξαιρετικό survival horror adventure game από την χρονιά του 2013 και το κάνουμε μια horror survival παρουσίαση όπως πραγματικά του αξίζει.

Another World

Σύνδεση στο blog

Συνδεμένοι χρήστες

Αυτήν τη στιγμή επισκέπτονται τον ιστότοπό μας 101 guests και κανένα μέλος

retrosystem

Game review

Μια γυναίκα δυο ψυχές.Ένα μεγάλο μυστικό,και ένας επιστήμονας που θα προσπαθήσει να ανακαλύψει το φαινόμενο Jodie.Κάνουμε μια παρουσίαση σε ένα παιχνίδι σταθμός στην πορεία του PS3.Πρόκειται να ζήσουμε έντονα συναισθήματα όπως τα ζει εκείνο το μικρό κορίτσι που διαθέτει μέσα της μια τεράστια δύναμη.

Τελευταία σχόλια στο blog


Купить Тест-полоски с доставкой по Украине
Όσοι από εσάς είχατε κάποτε στην κατοχή σας ένα ΖΧ Spectrum plus σίγουρα θα θυμάστε και εκείνο το πο...

Εκδηλώσεις

retrovisions.gr - Compupress 15  χρόνια  χωρίς  το  Pixel. Εκδήλωση.
Στα πλαίσια των 15 ετών χωρίς το Pixel, η Compupress μέσο του Pc Master ετοίμασε ένα μοναδικό αφιέρωμα για τους εραστές του τότε περιοδικού.Μέσα σε όλη αυτή την χαρά παρευρεθήκαμε και εμείς καλεσμένοι ως αντιπρόσωποι και συντελεστές της ολοκλήρωσης των τευχών του Pixel σε ψηφιακή μορφή στα γραφεία της εταιρίας σε μια εκδήλωση που σίγουρα θα μείνει στην ιστορία.

Game review

 
Ένας χαμένος ιερέας και ο γιος του που ψάχνει να τον βρει σε ένα περίεργο χωριό.Εγκαταλελειμμένα σπίτια και μυστήριοι χωρικοί.Η ασφάλεια της ημέρας αλλά και οι εφιάλτες της νύχτας.Ένας εφιάλτης ξεκινάει,και δεν πρόκειται να βγείτε ζωντανός αν δεν τον αντιμετωπίσετε πρόσωπο με πρόσωπο.Κάνουμε ένα σκοτεινό review στο Personal Nightmare ένα παιχνίδι σταθμό στα horror adventure games από το μακρινό 1989.