"Thierry Schembri" <
tsch...@hydromail.net> wrote in message
news:ja9t95$ec9$1...@dont-email.me...
| google "pure c atari", tu devrais pouvoir trouver un lien vers pure c
| (la version atari st de borland turbo c).
Merci pour l'aide et les pistes proposées.
Cela m'a permis de compiler le programme.
J'ai téléchargé le "Pure C" et le "Turbo C" pour Atari St.
Mais, je n'y ai pas trouvé les fichiers attendus par les codes du Digital
Research C.
A savoir les fichiers:
#include <stdio.h>
#include <gemdefs.h>
#include <obdefs.h>
#include <vdibind.h>
Par contre, le Turbo C et le Pure C semblent très proches et compatibles.
Toutefois, il existe des correspondances entre fichiers Headers:
"Digital Research C" == "Pure C" & "Turbo C"
#include <stdio.h> = #include <stdio.h>
#include <gemdefs.h> = #include <graphics.h>
#include <obdefs.h> = #include <stdlib.h> + #include <stdarg.h>
#include <vdibind.h> = #include <vdi.h> + #include <aes.h>
Mais, le programme ne ce compile pas !
En effet, le DR C est très avard au niveau des déclarations de fonctions.
DRC:
bonjour ( x , y )
int x,y;
{...
...}
--------------------------------
PURE_C/TURBO_C:
void bonjour (int x , int y)
{...
...}
Et en début de code, vous devez déclarer chaque fonctions avec :
/* */
/* Function prototypes */
/* */
void bonjour (int x , int y);
Une fois ces petites modifications effectuées... il faut lier les librairies
aux declaractions des fichiers Headers inclus.
Pour cela, on va créer un fichier "Projet".
Fichiers Projets: (liaisons avec les librairies graphiques et système)
Digital Research C= PROJET.BAT
;--- Compilation des blocs---> *.O
cp68 %1.c 1.i
co68 %1.i %1.1 %1.2 %1.3 -F
RM %1.i
C168 %1.1 %1.2 %1.S
RM%1.1
RM%1.2
AS68 -L -U %1.S
RM %1.S
WAIT.PRG
;--- Assemblage des blocs---> *.PRG
LINK68 [U] %1.68k=GEMSTART,%1,VDIBIND,AESBIND,OSBIND,GEMLIB,LIBF
RELMOD %1
RM %1,68k
WAIT.PRG
Turbo C et le Pure C=PROJET.PRJ
PROJET.PRG
=
tcstart.o ; TURBO C COMPILER
PROJET.C
TCSTDLIB.LIB ; standard library
TCGEMLIB.LIB ; AES and VDI library
TCBGILIB.LIB ; BGI library
TCFLTLIB.LIB ; floating point library
TCEXTLIB.LIB ; extended library
TCTOSLIB.LIB ; TOS library
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
(Pour le "Pure C" Il faut remplacer les "TC" par "PC"... pcstart.o,
PCSTDLIB.LIB etc...
Voilà, le programme en code DR C est compilé sous Turbo C et Pure C...
Attention toutefois à la structure du code...
Il est parfois difficile de baliser les fonctions comporant des
"{...{...}...}" dans tout les sens.
Dans ce cas, vous pouvez vous aider de l'éditeur Dev-Cpp pour afficher les
routines et les fonctions du programme.
Le C est un langage très déroutant pour les débutants...
En effet, vue le mode linéaire de compilation, un simple oubli de "}"(pour
cloturer un fonction), peut entrainer un centaines d'erreurs en cascade !
Donc, il faut une certaines rigueur (quitte à ajouter des espaces pour
visualiser les "paragraphes") et vérifier à deux fois la syntaxe... car les
minuscules et les majuscules (la case) ne sont pas lue de la même façon.
Dans ce brouillard d'erreurs, on a vite fait de paniquer... le comptage des
parenthèses prend la tête, et les caprices du compilateur sont décourageant.
Il faut donc rester Zen... le "C" n'est pas un langage où le stress est
créatif.
Vous pouvez retrouver un exemple publier dans l'Hebdogiciel n°163 de
Stéphane BUTEL.
http://zx81.ordi5.free.fr/hebdogiciel/atari/
Compilateur Pure C :
http://rg.atari.org/source.htm
Merci aux intervenants qui m'ont aidé à compiler cet exemple.
Bonne rétro-programmation sur Atari St.