cc65

Tela Software:
cc65
Detalhes de Software:
Versão: 2.13.3
Data de upload: 14 Apr 15
Licença: Livre
Popularidade: 24

Rating: 1.5/5 (Total Votes: 2)

cc65 é um pacote de desenvolvimento transversal completa para 6.502 sistemas, incluindo um poderoso assembler macro, um compilador C, vinculador, bibliotecário e várias outras ferramentas. cc65 baseia-se num compilador C que foi originalmente adaptado para os computadores de 8 bits Atari por John R. Dunning.
O compilador C original é um descendente pequeno C, mas tem várias extensões, e alguns dos limites do compilador original do Small C sumiram. O copyright original permite a redistribuição livre, incluindo fontes, mesmo que não se qualificaria como Open Source Software de acordo com a Open Source Definition.
O compilador Atari original está disponível a partir de http://www.umich.edu/~archive/atari/8bit/Languages/Cc65/. O pacote completo é composto pelo compilador, um montador, um bibliotecário, um ligante, e uma biblioteca C para a Atari. Existem alguns pacotes na rede que afirmam ser adaptado como um compilador cruzado para DOS ou Unix, mas não foi capaz de levá-los a funcionar correctamente.
Porque eu queria um compilador C para minhas máquinas CBM, tomei o compilador Atari e começou uma reescrita. Até hoje, eu ter reescrito grandes partes do compilador, toda a biblioteca, substituiu completamente o montador, o ligante e o bibliotecário, e acrescentou um frontend para simplificar o uso. Todas as alterações foram feitas com portabilidade em mente, então portar para novas arquiteturas de 6502 deve ser muito fácil.
O compilador é quase ISO C compatível, por isso você deve ser capaz de traduzir muitas fontes de outros sistemas.
Pode haver outro sistema alvo limitações dependentes. Um exemplo é o arquivo de I / O, que não está implementado em todas as plataformas. Esta não é uma limitação técnica (como acontece com o material mencionado acima), mas significa apenas que ninguém se importava o suficiente para escrever o código real.
O compilador é apenas uma das ferramentas disponíveis neste pacote. A suíte montador (assembler, linker, arquivador) é um ambiente de desenvolvimento completo para si mesmo, que pode ser usado para escrever programas para qualquer máquina de 6502. Código C e código assembler podem ser utilizados em conjunto e podem chamar uns aos outros.
O montador é um macroassembler uma passagem e é capaz de código de saída para o 6502, o 65SC02 e 65SC816. Ele tem um monte de características interessantes, como incluir arquivos, montagem de condicional, macros níveis lexicais aninhadas (isto é, símbolos locais), e muito mais. O montador cria arquivos de objetos que contêm o código relocatable. Esses arquivos devem ser executados através de um ligante para criar o programa final.
O ligante tem um formato de saída flexível e é capaz de suportar código ROMable (carga diferente e endereços funcionam para dados), os sistemas bancados (segmentos podem compartilhar o mesmo endereço de pista), sistemas com várias ROMs, segmentos ilimitados, mais de um segmento BSS e muitas outras coisas.
O arquivador é usado para criar bibliotecas contendo objetos arquivos. Isso simplifica o gerenciamento de código. O vinculador irá extrair somente os módulos de uma biblioteca que são realmente necessários.
Para uso simplifiy, há também um frontend para as ferramentas contidas no pacote cc65. O frontend é chamado CL65. Ele sabe como construir o binário a partir de uma lista de arquivos C, arquivos Assembler, arquivos de objetos e bibliotecas. Para projetos menores, apenas uma invocação do utilitário CL65 é necessário para construir um binário a partir de vários arquivos de origem e bibliotecas

Características :.

  • O compilador permite comentários de linha única que começam com //. Esse recurso é desativado no modo ANSI estrito.
  • O compilador permite parâmetros sem nome em listas de parâmetros. O compilador não emitirá avisos sobre os parâmetros não utilizados que não têm um nome. Esse recurso é desativado no modo ANSI estrito.
  • O compilador tem algumas palavras-chave que são necessários para características especiais. No modo ANSI estrito, as palavras-chave adicionais começam com dois sublinhados.
  • O modificador volátil não tem efeito.
  • Os tipos de dados float e double não estão disponíveis.
  • O compilador não suporta campos de bits.
  • funções C pode não retornar estruturas e estruturas não podem ser passados ​​como parâmetros em termos de valor. Atribuição Struct é possível.
  • Há alguma limitação do tamanho das variáveis ​​locais. Nem todas as operações estão disponíveis se o tamanho de variáveis ​​locais exceder 256 bytes.
  • Parte da biblioteca C está disponível apenas com fastcall chamando convenções (veja abaixo). Isto significa que você não pode misturar os ponteiros para essas funções com ponteiros para funções de usuário escrita.

O que é novo nesta versão:

  • Algumas questões macro e problemas com o código incorreto geradas pelo C compilador foram corrigidos.
  • Isto inclui a conversão de uma função de anular ponteiro e a rotina de divisão de tempo de execução.
  • A montadora também tinha algumas questões macro e um problema com alinhamentos superiores a 256 bytes.
  • Houve problemas com o modo de 80 colunas e Conio rolagem na biblioteca C128.
  • A biblioteca Atari agora tem rotinas de diretório POSIX.
  • Houve várias mudanças na documentação, correções e melhorias.

O que é novo na versão 2.13.0:.

  • Suporte para campos de bit foi adicionado
  • Esta versão melhora o cumprimento de normas e avisos adicionais são emitidos para o código duvidosa.
  • As bibliotecas são ligados para mais velocidade ou tamanho menor.
  • O compilador gera código mais rápido, em muitos casos, geralmente sem muito de um aumento no tamanho do código.

Programas semelhantes

Barista
Barista

14 Apr 15

ELF statifier
ELF statifier

20 Feb 15

YAZ
YAZ

20 Feb 15

Z80-ASM
Z80-ASM

3 Jun 15

Comentário para cc65

Comentários não encontrado
Adicionar comentário
Ligue imagens!