CODINGCROSSDEV ★ PHROZEN C by NORECESS ★

PhrozenC (NORECESS)Coding Crossdev
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

PLATEFORM: AMSDOS, WIN32

PhrozenC is a C compiler based on original SmallC compiler. SmallC has been initially created in 1980 by Ron Cain, targetting CP/M machines at the time (which also includes the Amstrad CPC). In the beginning of the year 2010, I found out back the compiler's source-code on the net and tried to compile it for the PC platform. It worked pretty well, and I personally found its implementation relatively small in terms of memory footprint. ”For the fun” (like many projects started I guess :) I tried making a real Amstrad CPC port; at first, I was not able to get it working as expected but finally, after some tweaks and many headaches I succedeed in the task !

PhrozenC is available in several versions :

  • Windows PC : the compiler is available as a stand-alone command-line application.
  • Amstrad CPC 464/464+ : the compiler is available as a stand-alone application that use the whole memory of the machine. After execution, all memory has been plainly used (and destroyed previous content). This version is released for compatibility purposes and is definitively not the way to go!
  • Amstrad CPC 6128/6128+ : the compiler is executed through RSX usage. It makes use of the full extra 64Kb memory (to keep the compiler in its compressed state, and also to preserve memory state in the first 64Kb memory area).
  • Amstrad CPC 6128/6128+ (ROM version) : the compiler is available as a ROM application that can be executed through RSX usage. It makes use of the upper extra 48Kb memory (C5/C6/C7 banks) but let intact resident memory and bank &C4. It's recommended to use the ROM version of PhrozenC conjointly with the popular Arnor ROM-based development products : Protext , Maxam and Promerge.

PhrozenC's usage is really easy. Basically, it converts a C file (and its dependencies) directly to a single ASM source file, ready to be compiled with Arnor's Maxam or Richard Wilson's WinAPE.

PhrozenC is a single pass compiler, meaning that it does not have to keep the whole source-code to be compiled in memory. It directly outputs ASM opcodes of C code being read.
Due to internal usage of SmallC, PhrozenC is not an ANSI-C compiler, but use K&R style C instead. Differences between ANSI-C and K&R style C are relatively small, and explained in a later section. That said, K&R style C is standard, and all compilers on PC platforms are able to compile K&R style C code (GCC, VisualStudio,..).

Finally, PhrozenC does not introduce specific optimizations. Developer is able to directly em-beed inlined-ASM, meaning it's possible to include in the earth of a C source-code a pure bunch of ASM source-code.

Changelog :

Version 1.1

— CC (Win32) Fixed crash when included file does not exist
— Fixed crash when calling CC with a C file entirely created on a CPC
— Fixed CS RSX-command usage. Now only ROM-based, but 100% safe.
— Updated documentation with compiler internal section


Version 1.0

— Initial release..

★ YEAR: 2010
★ OS: WIN32 + AMSDOS
★ LANGUAGE:
★ LiCENCE: ???
★ AUTHOR: NORECESS
★ FORUM: http://cpcrulez.fr/forum/viewtopic.php?f=4&t=4167

★ AMSTRAD CPC ★ DOWNLOAD ★

Manuels d'utilisation & docs:
» PhrozenC  v1.0    ENGLISHDATE: 2011-07-19
DL: 379
TYPE: PDF
SiZE: 221Ko
NOTE: 33 pages/PDFlib v1.4

» PhrozenC  v1.1    ENGLISHDATE: 2011-07-19
DL: 488
TYPE: PDF
SiZE: 236Ko
NOTE: 36 pages/PDFlib v1.4

Other platform tools:
» PhrozenC  v1.0DATE: 2010-03-24
DL: 378
TYPE: ZIP
SiZE: 294Ko
NOTE: 42 Cyls
.HFE: Χ
.ROM: √

» PhrozenC  v1.1DATE: 2010-03-27
DL: 520
TYPE: ZIP
SiZE: 292Ko
NOTE: 42 Cyls
.HFE: Χ
.ROM: √

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » ASCALM F
» Coding » Sdcc - 15 - Animation Par Sprite
» Coding » Sdcc - 22 - Afficher uneImage
» Coding » Music - Wyztracker
» Coding » Sdcc - 16 - 3D - Temps Reel Basic
» Coding » Music - Arkos Tracker
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 686 millisecondes et consultée 4549 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.