cc65

소프트웨어 스크린 샷:
cc65
소프트웨어 정보:
버전: 2.13.3
업로드 날짜: 14 Apr 15
라이센스: 무료
인기: 90

Rating: 2.3/5 (Total Votes: 3)

cc65는 강력한 매크로 어셈블러, C 컴파일러, 링커, 사서 및 기타 여러 도구를 포함하여 6502 시스템을위한 완벽한 크로스 개발 패키지입니다. cc65는 원래 존 R. 독촉에 의한 아타리 8 비트 컴퓨터에 대한 적응 된 C 컴파일러를 기반으로합니다.
원래 C 컴파일러는 작은 C의 후손이지만 몇 가지 확장 기능을 가지고 있으며, 원래 작은 C 컴파일러의 한계 중 일부는 사라입니다. 원래 저작권은 오픈 소스 정의 (Open Source Definition)에 따라 같은 오픈 소스 소프트웨어를 한정하지 않을 경우에도, 소스를 포함하여 무료로 재배포 할 수 있습니다.
원래 아타리 컴파일러는 http://www.umich.edu/~archive/atari/8bit/Languages​​/Cc65/​​에서 사용할 수 있습니다. 전체 패키지는 컴파일러, 어셈블러, 사서, 링커, 그리고 아타리 C 라이브러리로 구성되어 있습니다. 이 DOS 나 유닉스에 대한 crosscompiler으로 적용 할 것을 주장 그물에 일부 패키지는 있지만 제대로 작동 얻을 수 없습니다.
내 CBM 기계를위한 C 컴파일러를 원하기 때문에, 나는 아타리 컴파일러를 가져 갔고, 재 작성을 시작했다. 오늘까지, 나는 도서관의 모든 컴파일러의 큰 부분을 다시 한 완전히 어셈블러, 링커와 사서를 교체하고 사용을 단순화하기 위해 프론트 엔드를 추가했다. 모든 변경 사항을 염두에 휴대 수행되고, 그래서 새로운 6502 아키텍처에 포팅하는 것은 매우 쉬워야한다.
다른 시스템에서 많은 소스를 변환 할 수 있어야하므로 컴파일러는 거의 ISO C가 호환됩니다.
다른 대상 시스템에 따라 제한이있을 수 있습니다. 한 예로 모든 플랫폼에서 구현되지 않은 파일 I / O입니다. 이것은 (위에서 언급 한 물건과 같은) 기술적 인 제한이 없지만 단지 아무도 실제 코드를 작성하기에 충분히 신경 쓰지 것을 의미한다.
컴파일러는이 패키지에서 사용할 수있는 도구 중 하나입니다. 어셈블러 스위트 (어셈블러, 링커, 아카이버)는 모든 6502 시스템에 대한 프로그램을 작성하는 데 사용할 수 있습니다 자체에 대한 완전한 개발 환경입니다. C 코드 및 어셈블러 코드가 함께 사용될 수 있으며, 서로 호출 할 수있다.
어셈블러는 하나의 통과 macroassembler이며, 6502, 65SC02 및 65SC816의 출력 코드를 할 수 있습니다. 그것은 파일, 조건부 어셈블리, 매크로, 중첩 된 어휘 ​​수준 (즉, 지역 심볼이다) 등이 포함 같은 멋진 기능이 많이 있습니다. 어셈블러는 재배치 코드가 포함 된 오브젝트 파일을 생성합니다. 이러한 파일은 최종 프로그램을 만들기 위해 링커를 통해 실행해야합니다.
링커가요 출력 형식을 가지며 ROMable 코드 (다른 부하 및 데이터에 대한 실행 주소)을 지원할 수있다 (세그먼트는 동일한 실행 어드레스를 공유 할 수있다), 여러 롬, 무제한 세그먼트 시스템, 시스템 뱅크 이상의 BSS 세그먼트 및 다른 많은 것들.
아카이버는 객체 파일 포함하는 라이브러리를 작성하는 데 사용됩니다. 이 코드 관리를 단순화합니다. 링커는 실제로 필요한 라이브러리 모듈 만이 추출됩니다.
simplifiy 사용하려면, 또한 cc65 패키지에 포함 된 도구에 대한 프론트 엔드가있다. 프론트 엔드는 CL65 지정됩니다. 그것은 C 파일, 어셈블러 파일, 오브젝트 파일 및 라이브러리 목록에서 바이너리를 빌드하는 방법을 알고있다. 작은 프로젝트의 경우, CL65 유틸리티의 한 호출이 여러 개의 소스 파일 및 라이브러리의 바이너리를 구축 할 필요

이 특징 : 있습니다.

컴파일러로 시작하는 한 줄의 코멘트 수 / /. 이 기능은 엄격한 ANSI 모드에서 사용할 수 없습니다.
컴파일러는 매개 변수 목록에 이름이 매개 변수를 할 수 있습니다. 컴파일러는 이름이없는 사용하지 않은 매개 변수에 대한 경고를하지 않습니다. 이 기능은 엄격한 ANSI 모드에서 사용할 수 없습니다.
컴파일러는 특수 기능에 필요한 몇 가지 추가 키워드를 가지고있다. 엄격한 ANSI 모드에서, 추가 키워드들은 두 밑줄로 시작한다.
휘발성 수정은 효과가 없습니다.
데이터 유형은 부동 두 번 사용할 수 없습니다.
컴파일러는 비트 필드를 지원하지 않습니다.
C 함수는 구조체를 반환하지 않을 수 있습니다 및 구조체는 값에 의해 매개 변수로 전달되지 않을 수 있습니다. 구조체 할당이 가능합니다.
로컬 변수의 크기에 일부 제한이있다. 지역 변수의 크기가 256 바이트를 초과하는 경우 모든 작업이 가능합니다.
C 라이브러리의 일부는 fastcall 호출 규칙 (아래 참조) 사용할 수 있습니다. 이렇게하면 사용자 작성된 함수에 대한 포인터와 그 기능에 대한 포인터를 혼합하지 않을 수 있음을 의미한다.

이 릴리스의 새로운 기능 :

C 컴파일러에 의해 생성 잘못된 코드 일부 매크로 이슈와 문제가 수정되었습니다.
이는 포인터 및 런타임 분할 루틴을 무효화하는 함수를 변환하는 단계를 포함한다.
어셈블러는 일부 매크로 이슈와 256 바이트보다 큰 정렬에 문제가 있었다.
C128 라이브러리에 스크롤 (80) 열 모드와 conio에 문제가 있었다.
아타리 라이브러리는 지금 POSIX 디렉토리 루틴을 가지고있다.
여러 문서 변경, 수정 및 향상되었습니다.

이 버전 2.13.0의 새로운 기능 :

이 비트 필드에 대한 지원이 추가되었습니다.
이 릴리스는 표준 준수를 개선하고 추가 경고는 의심스러운 코드를 방출된다.
라이브러리는 더 속도 나 더 작은 크기에 맞게 조정된다.
컴파일러는 일반적으로 코드 크기의 증가없이 더 많은 경우에 빠른 코드를 생성한다.

유사한 소프트웨어

Boost.Build
Boost.Build

2 Jun 15

Simulator 8085
Simulator 8085

3 Jun 15

hexdump
hexdump

17 Feb 15

BNM
BNM

12 May 15

코멘트 cc65

댓글을 찾을 수 없습니다
코멘트를 추가
이미지를 켜십시오!