cc65

Screenshot Λογισμικό:
cc65
Στοιχεία Λογισμικού:
Εκδοχή: 2.13.3
Ανεβάστε ημερομηνία: 14 Apr 15
Προγραμματιστής: Ullrich von Bassewitz
Άδεια: Δωρεάν
Δημοτικότητα: 90

Rating: 2.3/5 (Total Votes: 3)

cc65 είναι ένα πλήρες πακέτο ανάπτυξης σταυρό για 6502 συστήματα, συμπεριλαμβανομένου ενός ισχυρού μακρο συναρμολόγησης, ένα μεταγλωττιστή της C, συνδετήρα, βιβλιοθηκάριος και πολλά άλλα εργαλεία. cc65 βασίζεται σε ένα μεταγλωττιστή της C που είχε αρχικά προσαρμοσμένο για τα 8bit υπολογιστές Atari από τον John R. Dunning.
Το αρχικό μεταγλωττιστή της C είναι ένας απόγονος Μικρή C, αλλά έχει πολλές προεκτάσεις, καθώς και ορισμένα από τα όρια του αρχικού compiler Μικρή C έχουν φύγει. Η αρχική πνευματικών δικαιωμάτων επιτρέπει την ελεύθερη αναδιανομή συμπεριλαμβανομένων των πηγών, ακόμη και αν δεν θα μπορούσε να χαρακτηρισθεί ως Λογισμικό Ανοικτού Κώδικα σύμφωνα με το Ορισμό του Ανοιχτού Κώδικα.
Η αρχική compiler Atari είναι διαθέσιμη από http://www.umich.edu/~archive/atari/8bit/Languages/Cc65/. Το πλήρες πακέτο αποτελείται από το μεταγλωττιστή, ένα συναρμολόγησης, βιβλιοθηκάριος, ένα συνδετικό, και μια βιβλιοθήκη C για το Atari. Υπάρχουν μερικά πακέτα στο δίχτυ που ισχυρίζονται ότι πρέπει να προσαρμοσθούν crosscompiler για DOS, Unix, αλλά δεν ήταν σε θέση να πάρει τους λειτουργεί σωστά.
Επειδή ήθελα ένα μεταγλωττιστή της C για τις μηχανές ΜΟΕ μου, πήρα το μεταγλωττιστή Atari και ξεκίνησε μια ξαναγράψει. Μέχρι σήμερα, έχω ξαναγράψει μεγάλα τμήματα του compiler, το σύνολο της βιβλιοθήκης, αντικατέστησε πλήρως το συναρμολογητή, το συνδετήρα και την βιβλιοθηκάριος, και πρόσθεσε ένα frontend για να απλοποιήσει τη χρήση. Όλες αυτές οι αλλαγές έχουν γίνει με φορητότητα στο μυαλό, ώστε porting σε νέες αρχιτεκτονικές 6502 θα πρέπει να είναι αρκετά εύκολο.
Ο compiler είναι σχεδόν ISO C συμβατό, οπότε θα πρέπει να είναι σε θέση να μεταφράσει πολλές πηγές από άλλα συστήματα.
Μπορεί να υπάρχουν άλλα εξαρτώμενα περιορισμοί σύστημα στόχο. Ένα παράδειγμα είναι το αρχείο Ι / Ο, η οποία δεν εφαρμόζεται σε όλες τις πλατφόρμες. Αυτό δεν είναι τεχνικός περιορισμός (όπως με τα πράγματα που αναφέρονται παραπάνω), αλλά απλά δεν σημαίνει ότι κανείς δεν νοιαζόταν αρκετά για να γράψει το πραγματικό κώδικα.
Ο compiler είναι μόνο ένα από τα εργαλεία που διατίθενται σε αυτό το πακέτο. Η σουίτα συναρμολόγησης (συναρμολόγησης, σύνδεσης, αρχειοθηκών) είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης για τον εαυτό της, που μπορεί να χρησιμοποιηθεί για να γράψει προγράμματα για κάθε μηχανής 6502. Κώδικα C και κωδικός συναρμολόγησης μπορούν να χρησιμοποιηθούν μαζί και μπορούν να καλούν ο ένας τον άλλο.
Η συναρμολόγησης είναι ένα πέρασμα macroassembler και είναι σε θέση να κωδικό εξόδου για το 6502, το 65SC02 και 65SC816. Έχει πολλά βολικά χαρακτηριστικά, όπως περιλαμβάνονται αρχεία, συναρμολόγηση υπό όρους, μακροεντολές, ένθετες λεξιλογικό επίπεδο (δηλαδή, τοπικά σύμβολα), και περισσότερο. Η συναρμολόγησης δημιουργεί αρχεία αντικείμενο που περιέχει relocatable κώδικα. Τα αρχεία αυτά πρέπει να τρέχει μέσα από ένα συνδετήρα για να δημιουργήσει το τελικό πρόγραμμα.
Ο συνδετήρας έχει μια ευέλικτη μορφή εξόδου και είναι σε θέση να υποστηρίξει ROMable κωδικό (διαφορετικό φορτίο και να τρέξει διευθύνσεις για τα δεδομένα), κλίση συστήματα (τμήματα μπορούν να μοιράζονται την ίδια διεύθυνση τρέξιμο), συστήματα με πολλαπλές ROM, απεριόριστη τμήματα, περισσότερα από ένα τμήμα BSS και πολλά άλλα πράγματα.
Η archiver χρησιμοποιείται για τη δημιουργία βιβλιοθηκών που περιέχουν αντικείμενα τα αρχεία. Αυτό απλοποιεί τη διαχείριση κώδικα. Ο σύνδεσμος θα εξάγει μόνο εκείνα τα μαθήματα του από μια βιβλιοθήκη που πραγματικά χρειάζονται.
Για simplifiy χρήση, υπάρχει επίσης ένα frontend για τα εργαλεία που περιλαμβάνονται στο πακέτο cc65. Η frontend ονομάζεται CL65. Ξέρει πώς να οικοδομήσουμε εκτελέσιμα από μια λίστα των αρχείων C, τα αρχεία συναρμολόγησης, object αρχεία και τις βιβλιοθήκες. Για τα μικρότερα έργα, μόνο ένα επίκληση της χρησιμότητας CL65 χρειάζεται να οικοδομήσουμε ένα δυαδικό αρχείο από διάφορα αρχεία προέλευσης και βιβλιοθήκες

Χαρακτηριστικά :.

  • Ο compiler επιτρέπει σχόλια ενιαία γραμμή που αρχίζουν με //. Αυτή η δυνατότητα είναι απενεργοποιημένη στην αυστηρή λειτουργία ANSI.
  • Ο compiler επιτρέπει απροσδιόριστος παραμέτρους στις λίστες των παραμέτρων. Ο compiler δεν θα εκδίδει προειδοποιήσεις για αχρησιμοποίητα παραμέτρους που δεν έχουν όνομα. Αυτή η δυνατότητα είναι απενεργοποιημένη στην αυστηρή λειτουργία ANSI.
  • Ο compiler έχει κάποια επιπλέον λέξεις-κλειδιά, που απαιτούνται για ειδικά χαρακτηριστικά. Στην αυστηρή λειτουργία ANSI, οι επιπλέον λέξεις-κλειδιά ξεκινήσει με δύο κάτω παύλες.
  • Το πτητικό τροποποιητής δεν έχει καμία επίδραση.
  • Οι τύπους δεδομένων float και το διπλό δεν είναι διαθέσιμα.
  • Ο compiler δεν υποστηρίζει πεδία bit.
  • Γ λειτουργίες μπορεί να μην επιστρέψει structs και structs δεν μπορεί να περάσει ως παραμέτρους με βάση την αξία. Εκχώρηση Struct είναι δυνατόν.
  • Υπάρχουν κάποιοι περιορισμός στο μέγεθος των τοπικών μεταβλητών. Δεν είναι όλες οι λειτουργίες είναι διαθέσιμες εάν το μέγεθος των τοπικών μεταβλητών υπερβαίνει τα 256 bytes.
  • Μέρος της βιβλιοθήκης C είναι διαθέσιμη μόνο με fastcall καλώντας συμβάσεις (βλέπε παρακάτω). Αυτό σημαίνει, ότι δεν μπορείτε να αναμίξετε δείκτες σε αυτές τις λειτουργίες με δείκτες προς το χρήστη λειτουργίες γραμμένο.

Τι είναι καινούργιο σε αυτήν την έκδοση:

  • Μερικά θέματα μακροοικονομικής και τα προβλήματα με λανθασμένο κωδικό που παράγεται από το C compiler έχουν καθοριστεί.
  • Αυτό περιλαμβάνει τη μετατροπή μια λειτουργία για να ακυρώσουν το δείκτη και τη ρουτίνα διαίρεση χρόνου εκτέλεσης.
  • Η συναρμολόγησης είχε επίσης κάποια θέματα μακροοικονομικής και ένα πρόβλημα με ευθυγραμμίσεις άνω των 256 bytes.
  • Υπήρχαν προβλήματα με τη λειτουργία 80 στήλη και Conio κύλιση στη βιβλιοθήκη C128.
  • Η βιβλιοθήκη Atari έχει τώρα POSIX ρουτίνες κατάλογο.
  • Υπήρξαν αρκετές αλλαγές τεκμηρίωσης, διορθώσεις και βελτιώσεις.

Τι είναι καινούργιο στην έκδοση 2.13.0:.

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

Παρόμοια λογισμικά

Boost.Build
Boost.Build

2 Jun 15

JarSplice
JarSplice

20 Feb 15

UMLet
UMLet

20 Feb 15

PyReverse 0.5.1
PyReverse 0.5.1

3 Jun 15

Σχόλια για cc65

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!