Made it compile under windows with Open Watcom

git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@66 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
Adrien Destugues 2008-07-27 21:04:12 +00:00
parent ae9a534ad8
commit b2f9193e85
22 changed files with 10132 additions and 9389 deletions

26
aide.c
View File

@ -8,7 +8,11 @@
#include <string.h> #include <string.h>
#ifdef __linux__
#include <sys/vfs.h> #include <sys/vfs.h>
#elif __WATCOMC__
#include <windows.h>
#endif
// -- Menu d'aide ----------------------------------------------------------- // -- Menu d'aide -----------------------------------------------------------
@ -199,13 +203,20 @@ void Bouton_Stats(void)
short Bouton_clicke; short Bouton_clicke;
char Buffer[37]; char Buffer[37];
dword Utilisation_couleur[256]; dword Utilisation_couleur[256];
unsigned long long Taille; unsigned long long freeRam;
#ifdef __linux__
struct statfs Informations_Disque; struct statfs Informations_Disque;
unsigned long long Taille = 0;
#elif __WATCOMC__
unsigned __int64 Taille;
ULARGE_INTEGER tailleU;
#endif
Ouvrir_fenetre(310,174,"Statistics"); Ouvrir_fenetre(310,174,"Statistics");
// dessiner de la fenˆtre o— va s'afficher le texte // Dessin de la fenetre ou va s'afficher le texte
Fenetre_Afficher_cadre_creux(8,17,294,132); Fenetre_Afficher_cadre_creux(8,17,294,132);
Block(Fenetre_Pos_X+(Menu_Facteur_X*9), Block(Fenetre_Pos_X+(Menu_Facteur_X*9),
Fenetre_Pos_Y+(Menu_Facteur_Y*18), Fenetre_Pos_Y+(Menu_Facteur_Y*18),
@ -220,7 +231,9 @@ void Bouton_Stats(void)
// Affichage de la mémoire restante // Affichage de la mémoire restante
Print_dans_fenetre(10,35,"Free memory: ",STATS_COULEUR_TITRES,CM_Noir); Print_dans_fenetre(10,35,"Free memory: ",STATS_COULEUR_TITRES,CM_Noir);
unsigned long long freeRam = Memoire_libre();
freeRam = Memoire_libre();
if(freeRam > (100ULL*1024*1024*1024)) if(freeRam > (100ULL*1024*1024*1024))
sprintf(Buffer,"%d Gigabytes",(unsigned int)(freeRam/(1024*1024*1024))); sprintf(Buffer,"%d Gigabytes",(unsigned int)(freeRam/(1024*1024*1024)));
else if(freeRam > (100*1024*1024)) else if(freeRam > (100*1024*1024))
@ -234,8 +247,15 @@ void Bouton_Stats(void)
// Affichage de l'espace disque libre // Affichage de l'espace disque libre
sprintf(Buffer,"Free space on %c:",Principal_Repertoire_courant[0]); sprintf(Buffer,"Free space on %c:",Principal_Repertoire_courant[0]);
Print_dans_fenetre(10,51,Buffer,STATS_COULEUR_TITRES,CM_Noir); Print_dans_fenetre(10,51,Buffer,STATS_COULEUR_TITRES,CM_Noir);
#ifdef __linux__
statfs(Principal_Repertoire_courant,&Informations_Disque); statfs(Principal_Repertoire_courant,&Informations_Disque);
Taille=Informations_Disque.f_bfree * Informations_Disque.f_bsize; Taille=Informations_Disque.f_bfree * Informations_Disque.f_bsize;
#elif __WATCOMC__
GetDiskFreeSpaceEx(Principal_Repertoire_courant,&tailleU,NULL,NULL);
Taille = tailleU.QuadPart;
#endif
if (Taille>=0) if (Taille>=0)
{ {
if(Taille > (100ULL*1024*1024*1024)) if(Taille > (100ULL*1024*1024*1024))

View File

@ -21,6 +21,12 @@
#include "pages.h" #include "pages.h"
#include "erreurs.h" #include "erreurs.h"
#ifdef __WATCOMC__
#include <windows.h>
#define chdir(x) SetCurrentDirectory(x)
#define rmdir(x) DeleteFile(x)
#endif
//-- MODELE DE BOUTON DE MENU ------------------------------------------------ //-- MODELE DE BOUTON DE MENU ------------------------------------------------
/* /*
void Bouton_***(void) void Bouton_***(void)
@ -122,7 +128,7 @@ void Bouton_Message_initial(void)
Print_dans_fenetre( 7,128,"file before using this program",CM_Fonce,CM_Clair); Print_dans_fenetre( 7,128,"file before using this program",CM_Fonce,CM_Clair);
Print_dans_fenetre( 7,136,"for the first time.",CM_Fonce,CM_Clair); Print_dans_fenetre( 7,136,"for the first time.",CM_Fonce,CM_Clair);
if ((*ALPHA_BETA)=='Ó') if ((*ALPHA_BETA)=='á')
{ {
Print_char_transparent_dans_fenetre(43,119,'M',CM_Noir); Print_char_transparent_dans_fenetre(43,119,'M',CM_Noir);
Print_char_transparent_dans_fenetre(53,121,'U',CM_Noir); Print_char_transparent_dans_fenetre(53,121,'U',CM_Noir);

View File

@ -158,12 +158,3 @@ void Menu_Tag_couleurs(char * En_tete, byte * Table, byte * Mode, byte Cancel);
void Bouton_Smooth_Menu(void); void Bouton_Smooth_Menu(void);
void Bouton_Smear_Mode(void); void Bouton_Smear_Mode(void);
// -- Gestion du chrono --
byte Etat_chrono; // Etat du chrono: 0=Attente d'un Xème de seconde
// 1=Il faut afficher la preview
// 2=Plus de chrono à gerer pour l'instant
long Chrono_delay; // Nombre de 18.2ème de secondes demandés
long Chrono_cmp; // Heure de départ du chrono
byte Nouvelle_preview; // Booléen "Il faut relancer le chrono de preview"
// Les fonctions de manipulation du chrono se trouvent dans DIVERS.ASM

View File

@ -5,6 +5,8 @@
#include "graph.h" //Afficher_curseur #include "graph.h" //Afficher_curseur
#include "erreurs.h" #include "erreurs.h"
#include "boutons.h" #include "boutons.h"
#include "moteur.h"
#include "divers.h"
// Gestion du mode texte de départ (pour pouvoir y retourner en cas de problème // Gestion du mode texte de départ (pour pouvoir y retourner en cas de problème
byte Recuperer_nb_lignes(void) byte Recuperer_nb_lignes(void)
@ -77,15 +79,14 @@ void Effacer_image_courante_Stencil(byte Couleur, byte * Pochoir)
int Nombre_De_Pixels=0; //ECX int Nombre_De_Pixels=0; //ECX
//al=Couleur //al=Couleur
//edi=Ecran //edi=Ecran
Uint8* Pixel_Courant=Ecran; //dl byte* Pixel_Courant=Ecran; //dl
int i; int i;
Nombre_De_Pixels=Principal_Hauteur_image*Principal_Largeur_image; Nombre_De_Pixels=Principal_Hauteur_image*Principal_Largeur_image;
for(i=0;i<Nombre_De_Pixels;i++) for(i=0;i<Nombre_De_Pixels;i++)
{ {
if (Pochoir[*Pixel_Courant]==0)
if (Pochoir[*Pixel_Courant]==0);
*Pixel_Courant=Couleur; *Pixel_Courant=Couleur;
Pixel_Courant++; Pixel_Courant++;
} }
@ -132,6 +133,8 @@ void Get_input(void)
INPUT_Nouveau_Mouse_K=0; INPUT_Nouveau_Mouse_K=0;
break; break;
case SDL_KEYDOWN: case SDL_KEYDOWN:
{
byte ok = 0;
//Appui sur une touche du clavier //Appui sur une touche du clavier
//On met le scancode dans Touche" //On met le scancode dans Touche"
@ -161,7 +164,7 @@ void Get_input(void)
//Cas particulier: déplacement du curseur avec haut bas gauche droite //Cas particulier: déplacement du curseur avec haut bas gauche droite
//On doit interpréter ça comme un mvt de la souris //On doit interpréter ça comme un mvt de la souris
byte ok=0;
if(Touche == Config_Touche[0]) if(Touche == Config_Touche[0])
{ {
//[Touche] = Emulation de MOUSE UP //[Touche] = Emulation de MOUSE UP
@ -220,6 +223,7 @@ void Get_input(void)
INPUT_Nouveau_Mouse_Y<<Mouse_Facteur_de_correction_Y INPUT_Nouveau_Mouse_Y<<Mouse_Facteur_de_correction_Y
); );
} }
}
break; break;
} }
} }
@ -518,7 +522,7 @@ void Remplacer_toutes_les_couleurs_dans_limites(byte * Table_de_remplacement)
DEBUG("Compteur",Compteur); DEBUG("Compteur",Compteur);
} }
byte inline Lit_pixel_dans_ecran_backup (word X,word Y) byte Lit_pixel_dans_ecran_backup (word X,word Y)
{ {
return *(Ecran_backup + X + Principal_Largeur_image * Y); return *(Ecran_backup + X + Principal_Largeur_image * Y);
} }
@ -596,7 +600,7 @@ byte Effet_Colorize_soustractif(word X,word Y,byte Couleur)
return 0; return 0;
} }
void inline Tester_chrono(void) void Tester_chrono(void)
{ {
if((SDL_GetTicks()/55)-Chrono_delay>Chrono_cmp) Etat_chrono=1; if((SDL_GetTicks()/55)-Chrono_delay>Chrono_cmp) Etat_chrono=1;
} }

View File

@ -111,7 +111,7 @@ byte Couleur_ILBM_line(word Pos_X, word Vraie_taille_ligne);
// Renvoie la couleur du pixel (ILBM) en Pos_X. // Renvoie la couleur du pixel (ILBM) en Pos_X.
// Gestion du chrono dans les fileselects // Gestion du chrono dans les fileselects
void Initialiser_chrono(long Delai); void Initialiser_chrono(dword Delai);
void Tester_chrono(void); void Tester_chrono(void);
void Remplacer_une_couleur(byte Ancienne_couleur, byte Nouvelle_couleur); void Remplacer_une_couleur(byte Ancienne_couleur, byte Nouvelle_couleur);
@ -131,3 +131,11 @@ void Rotate_90_deg_LOWLEVEL(byte * Source,byte * Destination);
void Rotate_180_deg_LOWLEVEL(void); void Rotate_180_deg_LOWLEVEL(void);
void Zoomer_une_ligne(byte * Ligne_originale,byte * Ligne_zoomee,word Facteur,word Largeur); void Zoomer_une_ligne(byte * Ligne_originale,byte * Ligne_zoomee,word Facteur,word Largeur);
void Copier_une_partie_d_image_dans_une_autre(byte * Source,word S_Pos_X,word S_Pos_Y,word Largeur,word Hauteur,word Largeur_source,byte * Destination,word D_Pos_X,word D_Pos_Y,word Largeur_destination); void Copier_une_partie_d_image_dans_une_autre(byte * Source,word S_Pos_X,word S_Pos_Y,word Largeur,word Hauteur,word Largeur_source,byte * Destination,word D_Pos_X,word D_Pos_Y,word Largeur_destination);
// -- Gestion du chrono --
byte Etat_chrono; // Etat du chrono: 0=Attente d'un Xème de seconde
// 1=Il faut afficher la preview
// 2=Plus de chrono à gerer pour l'instant
dword Chrono_delay; // Nombre de 18.2ème de secondes demandés
dword Chrono_cmp; // Heure de départ du chrono
byte Nouvelle_preview; // Booléen "Il faut relancer le chrono de preview"

33
files.c
View File

@ -7,15 +7,24 @@
#include <fcntl.h> #include <fcntl.h>
#include <string.h> #include <string.h>
#include <dirent.h>
#include <errno.h> #include <errno.h>
#include <unistd.h> #include <unistd.h>
#include <sys/types.h> #include <sys/types.h>
#include <sys/stat.h> #include <sys/stat.h>
#include <unistd.h> #include <unistd.h>
#ifdef __linux__
#include "linux.h" #include "linux.h"
#include <dirent.h>
#define isDir(Enreg) ((Enreg)->d_type == DT_DIR)
#define isHidden(Enreg) ((Enreg)->d_name[0]=='.')
#define isFile(Enreg) (Enreg->d_type==DT_REG)
#elif __WATCOMC__
#include <direct.h>
#define isDir(Enreg) ((Enreg)->d_attr & _A_SUBDIR)
#define isHidden(Enreg) ((Enreg)->d_attr & _A_HIDDEN)
#define isFile(Enreg) ((Enreg)->d_attr & _A_SUBDIR == 0)
#endif
#define COULEUR_FICHIER_NORMAL CM_Clair // Couleur du texte pour une ligne de fichier non sélectionné #define COULEUR_FICHIER_NORMAL CM_Clair // Couleur du texte pour une ligne de fichier non sélectionné
#define COULEUR_REPERTOIRE_NORMAL CM_Fonce // Couleur du texte pour une ligne de répertoire non sélectionné #define COULEUR_REPERTOIRE_NORMAL CM_Fonce // Couleur du texte pour une ligne de répertoire non sélectionné
@ -133,19 +142,23 @@ char * Nom_formate(char * Nom)
} }
// -- Rajouter … la liste des lments de la liste un lment --------------- // -- Rajouter a la liste des elements de la liste un element ---------------
void Ajouter_element_a_la_liste(struct dirent* Enreg) void Ajouter_element_a_la_liste(struct dirent* Enreg)
// Cette procdure ajoute … la liste chaine un fichier pass en argument. // Cette procedure ajoute a la liste chainee un fichier pass en argument.
{ {
// Pointeur temporaire d'insertion // Pointeur temporaire d'insertion
struct Element_de_liste_de_fileselect * Element_temporaire; struct Element_de_liste_de_fileselect * Element_temporaire;
// On alloue de la place pour un nouvel lment // On alloue de la place pour un nouvel element
Element_temporaire=(struct Element_de_liste_de_fileselect *)malloc(sizeof(struct Element_de_liste_de_fileselect)); Element_temporaire=(struct Element_de_liste_de_fileselect *)malloc(sizeof(struct Element_de_liste_de_fileselect));
// On met jour le nouvel emplacement: // On met a jour le nouvel emplacement:
strcpy(Element_temporaire->Nom,Nom_formate(Enreg->d_name)); strcpy(Element_temporaire->Nom,Nom_formate(Enreg->d_name));
#ifdef __linux__
Element_temporaire->Type = (Enreg->d_type == DT_DIR); Element_temporaire->Type = (Enreg->d_type == DT_DIR);
#elif __WATCOMC__
Element_temporaire->Type = (Enreg->d_attr & _A_SUBDIR);
#endif
Element_temporaire->Suivant =Liste_du_fileselect; Element_temporaire->Suivant =Liste_du_fileselect;
Element_temporaire->Precedent=NULL; Element_temporaire->Precedent=NULL;
@ -188,16 +201,16 @@ void Lire_liste_des_fichiers(byte Format_demande)
if ( (Enreg->d_name[0]!='.') && (Enreg->d_name[1] != 0)) if ( (Enreg->d_name[0]!='.') && (Enreg->d_name[1] != 0))
{ {
// et que l'élément trouvé est un répertoire // et que l'élément trouvé est un répertoire
if( (Enreg->d_type == DT_DIR) && if( isDir(Enreg) &&
// et qu'il n'est pas caché // et qu'il n'est pas caché
(Enreg->d_name[0]!='.' || Config.Lire_les_repertoires_caches)) ((!isHidden(Enreg)) || Config.Lire_les_repertoires_caches))
{ {
// On rajoute le répertore à la liste // On rajoute le répertore à la liste
Ajouter_element_a_la_liste(Enreg); Ajouter_element_a_la_liste(Enreg);
Liste_Nb_repertoires++; Liste_Nb_repertoires++;
} }
else if ((Enreg->d_type==DT_REG) //Il s'agit d'un fichier else if (isFile(Enreg) //Il s'agit d'un fichier
&& (Enreg->d_name[0]!='.' || Config.Lire_les_fichiers_caches)) //Il n'est pas caché && ((!isHidden(Enreg)) || Config.Lire_les_fichiers_caches)) //Il n'est pas caché
{ {
// On rajoute le fichier à la liste // On rajoute le fichier à la liste
Ajouter_element_a_la_liste(Enreg); Ajouter_element_a_la_liste(Enreg);

View File

@ -212,6 +212,10 @@ GLOBAL short Principal_Decalage_Y; // D
GLOBAL short Ancien_Principal_Decalage_X; GLOBAL short Ancien_Principal_Decalage_X;
GLOBAL short Ancien_Principal_Decalage_Y; GLOBAL short Ancien_Principal_Decalage_Y;
#ifdef __WATCOMC__
GLOBAL char Principal_Drive_fichier[2];
#endif
GLOBAL char Principal_Repertoire_fichier[256]; // |_ Nom complet = GLOBAL char Principal_Repertoire_fichier[256]; // |_ Nom complet =
GLOBAL char Principal_Nom_fichier[13]; // | Repertoire_fichier+"\"+Nom_fichier GLOBAL char Principal_Nom_fichier[13]; // | Repertoire_fichier+"\"+Nom_fichier
GLOBAL byte Principal_Format_fichier; // Format auquel il faut lire et Úcrire le fichier GLOBAL byte Principal_Format_fichier; // Format auquel il faut lire et Úcrire le fichier

20
graph.c
View File

@ -4,7 +4,6 @@
#include <math.h> #include <math.h>
#include <malloc.h> #include <malloc.h>
#include <sys/sysinfo.h>
#include <string.h> #include <string.h>
#include <stdlib.h> #include <stdlib.h>
#include "moteur.h" #include "moteur.h"
@ -14,6 +13,13 @@
#include "struct.h" #include "struct.h"
#include "erreurs.h" #include "erreurs.h"
#ifdef __linux__
#include <sys/sysinfo.h>
#elif __WATCOMC__
#define _WIN32_WINNT 0x0500
#include <windows.h>
#endif
byte Meilleure_couleur(byte R,byte V,byte B) byte Meilleure_couleur(byte R,byte V,byte B)
{ {
short Coul; short Coul;
@ -399,10 +405,16 @@ unsigned long Memoire_libre(void)
A revoir, mais est-ce vraiment utile? A revoir, mais est-ce vraiment utile?
_heapmin(); _heapmin();
*/ */
#ifdef __linux__
struct sysinfo info; struct sysinfo info;
sysinfo(&info); sysinfo(&info);
return info.freeram*info.mem_unit; return info.freeram*info.mem_unit;
#elif __WATCOMC__
MEMORYSTATUSEX mstt;
mstt.dwLength = sizeof(MEMORYSTATUSEX);
GlobalMemoryStatusEx(&mstt);
return mstt.ullAvailPhys;
#endif
} }
@ -3973,9 +3985,7 @@ void Remplir(byte Couleur_de_remplissage)
{ {
Pos_X-=Brosse_Decalage_X; Pos_X-=Brosse_Decalage_X;
Pos_Y-=Brosse_Decalage_Y; Pos_Y-=Brosse_Decalage_Y;
if ( (Pos_X>=0) && if ( (Pos_X<Brosse_Largeur) && // Les pos sont des word donc jamais < 0 ...
(Pos_X<Brosse_Largeur) &&
(Pos_Y>=0) &&
(Pos_Y<Brosse_Hauteur) ) (Pos_Y<Brosse_Hauteur) )
Pixel_dans_brosse(Pos_X,Pos_Y,Couleur); Pixel_dans_brosse(Pos_X,Pos_Y,Couleur);
} }

41
init.c
View File

@ -21,8 +21,11 @@
#include "divers.h" #include "divers.h"
#include "errno.h" #include "errno.h"
#ifdef __linux__
#include <endian.h> #include <endian.h>
#include <byteswap.h> #include <byteswap.h>
#endif
// On déclare méchamment le prototype de Erreur pour éviter de faire un // On déclare méchamment le prototype de Erreur pour éviter de faire un
// fichier "main.h": // fichier "main.h":
@ -249,11 +252,13 @@ void Charger_DAT(void)
case EACCES: puts("La permission de parcours est refusée pour un des répertoires contenu dans le chemin path."); break; case EACCES: puts("La permission de parcours est refusée pour un des répertoires contenu dans le chemin path."); break;
case EBADF: puts("filedes est un mauvais descripteur."); break; case EBADF: puts("filedes est un mauvais descripteur."); break;
case EFAULT: puts("Un pointeur se trouve en dehors de l'espace d'adressage."); break; case EFAULT: puts("Un pointeur se trouve en dehors de l'espace d'adressage."); break;
case ELOOP: puts("Trop de liens symboliques rencontrés dans le chemin d'accès."); break;
case ENAMETOOLONG: puts("Nom de fichier trop long."); break; case ENAMETOOLONG: puts("Nom de fichier trop long."); break;
case ENOENT: puts("Un composant du chemin path n'existe pas, ou il s'agit d'une chaîne vide."); break; case ENOENT: puts("Un composant du chemin path n'existe pas, ou il s'agit d'une chaîne vide."); break;
case ENOMEM: puts("Pas assez de mémoire pour le noyau."); break; case ENOMEM: puts("Pas assez de mémoire pour le noyau."); break;
case ENOTDIR: puts("Un composant du chemin d'accès n'est pas un répertoire."); break; case ENOTDIR: puts("Un composant du chemin d'accès n'est pas un répertoire."); break;
#ifdef __linux__
case ELOOP: puts("Trop de liens symboliques rencontrés dans le chemin d'accès."); break;
#endif
} }
Taille_fichier=Informations_Fichier.st_size; Taille_fichier=Informations_Fichier.st_size;
if (Taille_fichier!=TAILLE_FICHIER_DATA) if (Taille_fichier!=TAILLE_FICHIER_DATA)
@ -345,11 +350,12 @@ void Charger_DAT(void)
// On lit le nombre de lignes: // On lit le nombre de lignes:
if (read(Handle,&Mot_temporaire,2)!=2) if (read(Handle,&Mot_temporaire,2)!=2)
Erreur(ERREUR_DAT_CORROMPU); Erreur(ERREUR_DAT_CORROMPU);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//Si on est en big endian il faut échanger les octets car la structure est prévue pour du x86. //Si on est en big endian il faut échanger les octets car la structure est prévue pour du x86.
Mot_temporaire=bswap_16(Mot_temporaire); Mot_temporaire=bswap_16(Mot_temporaire);
#endif #endif
#endif
// On copie ce nombre de lignes dans la table: // On copie ce nombre de lignes dans la table:
Table_d_aide[Indice].Nombre_de_lignes=Mot_temporaire; Table_d_aide[Indice].Nombre_de_lignes=Mot_temporaire;
@ -357,11 +363,12 @@ void Charger_DAT(void)
// On lit la place que la section prend en mémoire: // On lit la place que la section prend en mémoire:
if (read(Handle,&Mot_temporaire,2)!=2) if (read(Handle,&Mot_temporaire,2)!=2)
Erreur(ERREUR_DAT_CORROMPU); Erreur(ERREUR_DAT_CORROMPU);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//Si on est en big endian il faut échanger les octets car la structure est prévue pour du x86. //Si on est en big endian il faut échanger les octets car la structure est prévue pour du x86.
Mot_temporaire=bswap_16(Mot_temporaire); Mot_temporaire=bswap_16(Mot_temporaire);
#endif #endif
#endif
// On alloue la mémoire correspondante: // On alloue la mémoire correspondante:
if (!(Table_d_aide[Indice].Debut_de_la_liste=(byte *)malloc(Mot_temporaire))) if (!(Table_d_aide[Indice].Debut_de_la_liste=(byte *)malloc(Mot_temporaire)))
@ -1798,9 +1805,11 @@ int Charger_CFG(int Tout_charger)
while (read(Handle,&(Chunk.Numero),sizeof(byte))==sizeof(byte)) while (read(Handle,&(Chunk.Numero),sizeof(byte))==sizeof(byte))
{ {
read(Handle,&(Chunk.Taille),sizeof(word)); read(Handle,&(Chunk.Taille),sizeof(word));
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
switch (Chunk.Numero) switch (Chunk.Numero)
{ {
case CHUNK_TOUCHES: // Touches case CHUNK_TOUCHES: // Touches
@ -1814,11 +1823,13 @@ int Charger_CFG(int Tout_charger)
goto Erreur_lecture_config; goto Erreur_lecture_config;
else else
{ {
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
CFG_Infos_touche.Touche=bswap_16(CFG_Infos_touche.Touche); CFG_Infos_touche.Touche=bswap_16(CFG_Infos_touche.Touche);
CFG_Infos_touche.Touche2=bswap_16(CFG_Infos_touche.Touche2); CFG_Infos_touche.Touche2=bswap_16(CFG_Infos_touche.Touche2);
CFG_Infos_touche.Numero=bswap_16(CFG_Infos_touche.Numero); CFG_Infos_touche.Numero=bswap_16(CFG_Infos_touche.Numero);
#endif #endif
#endif
for (Indice2=0; for (Indice2=0;
((Indice2<NB_TOUCHES) && (Numero_option[Indice2]!=CFG_Infos_touche.Numero)); ((Indice2<NB_TOUCHES) && (Numero_option[Indice2]!=CFG_Infos_touche.Numero));
Indice2++); Indice2++);
@ -2025,10 +2036,12 @@ int Sauver_CFG(void)
// Enregistrement des touches // Enregistrement des touches
Chunk.Numero=CHUNK_TOUCHES; Chunk.Numero=CHUNK_TOUCHES;
Chunk.Taille=NB_TOUCHES*sizeof(CFG_Infos_touche); Chunk.Taille=NB_TOUCHES*sizeof(CFG_Infos_touche);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
for (Indice=0; Indice<NB_TOUCHES; Indice++) for (Indice=0; Indice<NB_TOUCHES; Indice++)
@ -2041,11 +2054,13 @@ int Sauver_CFG(void)
case 2 : CFG_Infos_touche.Touche=Bouton[Ordonnancement[Indice]&0xFF].Raccourci_droite; break; case 2 : CFG_Infos_touche.Touche=Bouton[Ordonnancement[Indice]&0xFF].Raccourci_droite; break;
} }
CFG_Infos_touche.Touche2=0x00FF; CFG_Infos_touche.Touche2=0x00FF;
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
CFG_Infos_touche.Touche=bswap_16(CFG_Infos_touche.Touche); CFG_Infos_touche.Touche=bswap_16(CFG_Infos_touche.Touche);
CFG_Infos_touche.Touche2=bswap_16(CFG_Infos_touche.Touche2); CFG_Infos_touche.Touche2=bswap_16(CFG_Infos_touche.Touche2);
CFG_Infos_touche.Numero=bswap_16(CFG_Infos_touche.Numero); CFG_Infos_touche.Numero=bswap_16(CFG_Infos_touche.Numero);
#endif #endif
#endif
if (write(Handle,&CFG_Infos_touche,sizeof(CFG_Infos_touche))!=sizeof(CFG_Infos_touche)) if (write(Handle,&CFG_Infos_touche,sizeof(CFG_Infos_touche))!=sizeof(CFG_Infos_touche))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
} }
@ -2053,10 +2068,12 @@ int Sauver_CFG(void)
// Sauvegarde de l'état de chaque mode vidéo // Sauvegarde de l'état de chaque mode vidéo
Chunk.Numero=CHUNK_MODES_VIDEO; Chunk.Numero=CHUNK_MODES_VIDEO;
Chunk.Taille=NB_MODES_VIDEO*5 /*sizeof(CFG_Mode_video)*/; Chunk.Taille=NB_MODES_VIDEO*5 /*sizeof(CFG_Mode_video)*/;
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
for (Indice=0; Indice<NB_MODES_VIDEO; Indice++) for (Indice=0; Indice<NB_MODES_VIDEO; Indice++)
@ -2071,10 +2088,12 @@ int Sauver_CFG(void)
// Ecriture des données du Shade (précédées du shade en cours) // Ecriture des données du Shade (précédées du shade en cours)
Chunk.Numero=CHUNK_SHADE; Chunk.Numero=CHUNK_SHADE;
Chunk.Taille=sizeof(Shade_Liste)+sizeof(Shade_Actuel); Chunk.Taille=sizeof(Shade_Liste)+sizeof(Shade_Actuel);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,&Shade_Actuel,sizeof(Shade_Actuel))!=sizeof(Shade_Actuel)) if (write(Handle,&Shade_Actuel,sizeof(Shade_Actuel))!=sizeof(Shade_Actuel))
@ -2085,10 +2104,12 @@ int Sauver_CFG(void)
// Sauvegarde des informations du Masque // Sauvegarde des informations du Masque
Chunk.Numero=CHUNK_MASQUE; Chunk.Numero=CHUNK_MASQUE;
Chunk.Taille=sizeof(Mask); Chunk.Taille=sizeof(Mask);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,Mask,sizeof(Mask))!=sizeof(Mask)) if (write(Handle,Mask,sizeof(Mask))!=sizeof(Mask))
@ -2097,10 +2118,12 @@ int Sauver_CFG(void)
// Sauvegarde des informations du Stencil // Sauvegarde des informations du Stencil
Chunk.Numero=CHUNK_STENCIL; Chunk.Numero=CHUNK_STENCIL;
Chunk.Taille=sizeof(Stencil); Chunk.Taille=sizeof(Stencil);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,Stencil,sizeof(Stencil))!=sizeof(Stencil)) if (write(Handle,Stencil,sizeof(Stencil))!=sizeof(Stencil))
@ -2109,10 +2132,12 @@ int Sauver_CFG(void)
// Sauvegarde des informations des dégradés // Sauvegarde des informations des dégradés
Chunk.Numero=CHUNK_DEGRADES; Chunk.Numero=CHUNK_DEGRADES;
Chunk.Taille=sizeof(Degrade_Tableau)+1; Chunk.Taille=sizeof(Degrade_Tableau)+1;
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,&Degrade_Courant,1)!=1) if (write(Handle,&Degrade_Courant,1)!=1)
@ -2130,10 +2155,12 @@ int Sauver_CFG(void)
// Sauvegarde de la matrice du Smooth // Sauvegarde de la matrice du Smooth
Chunk.Numero=CHUNK_SMOOTH; Chunk.Numero=CHUNK_SMOOTH;
Chunk.Taille=sizeof(Smooth_Matrice); Chunk.Taille=sizeof(Smooth_Matrice);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,Smooth_Matrice,sizeof(Smooth_Matrice))!=sizeof(Smooth_Matrice)) if (write(Handle,Smooth_Matrice,sizeof(Smooth_Matrice))!=sizeof(Smooth_Matrice))
@ -2142,10 +2169,12 @@ int Sauver_CFG(void)
// Sauvegarde des couleurs à exclure // Sauvegarde des couleurs à exclure
Chunk.Numero=CHUNK_EXCLUDE_COLORS; Chunk.Numero=CHUNK_EXCLUDE_COLORS;
Chunk.Taille=sizeof(Exclude_color); Chunk.Taille=sizeof(Exclude_color);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,Exclude_color,sizeof(Exclude_color))!=sizeof(Exclude_color)) if (write(Handle,Exclude_color,sizeof(Exclude_color))!=sizeof(Exclude_color))
@ -2154,10 +2183,12 @@ int Sauver_CFG(void)
// Sauvegarde des informations du Quick-shade // Sauvegarde des informations du Quick-shade
Chunk.Numero=CHUNK_QUICK_SHADE; Chunk.Numero=CHUNK_QUICK_SHADE;
Chunk.Taille=sizeof(Quick_shade_Step)+sizeof(Quick_shade_Loop); Chunk.Taille=sizeof(Quick_shade_Step)+sizeof(Quick_shade_Loop);
#ifndef __WATCOMC__
#if __BYTE_ORDER == __BIG_ENDIAN #if __BYTE_ORDER == __BIG_ENDIAN
//On remet les octets dans l'ordre "normal" //On remet les octets dans l'ordre "normal"
Chunk.Taille=bswap_16(Chunk.Taille); Chunk.Taille=bswap_16(Chunk.Taille);
#endif #endif
#endif
if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word)) if (write(Handle,&(Chunk.Numero),sizeof(byte))!=sizeof(byte)||write(Handle,&(Chunk.Taille),sizeof(word))!=sizeof(word))
goto Erreur_sauvegarde_config; goto Erreur_sauvegarde_config;
if (write(Handle,&Quick_shade_Step,sizeof(Quick_shade_Step))!=sizeof(Quick_shade_Step)) if (write(Handle,&Quick_shade_Step,sizeof(Quick_shade_Step))!=sizeof(Quick_shade_Step))
@ -2234,7 +2265,3 @@ void Initialiser_la_table_precalculee_des_distances_de_couleur(void)
} }
} }
} }
#include "readini.c"
#include "saveini.c"

View File

@ -10,5 +10,3 @@ int filelength(int);
void itoa(int source,char* dest, int longueur); void itoa(int source,char* dest, int longueur);
/* Integer TO Ascii */ /* Integer TO Ascii */
#define _A_SUBDIR 1

View File

@ -16,7 +16,9 @@
#include <unistd.h> #include <unistd.h>
#include "boutons.h" #include "boutons.h"
#ifdef __linux__
#include "linux.h" #include "linux.h"
#endif
// On déclare méchamment le prototype de Erreur pour éviter de faire un // On déclare méchamment le prototype de Erreur pour éviter de faire un
// fichier "main.h": // fichier "main.h":

24
main.c
View File

@ -16,13 +16,21 @@
#include <time.h> #include <time.h>
#include <SDL/SDL.h> #include <SDL/SDL.h>
#include <unistd.h> #include <unistd.h>
#include "linux.h" //Fichier avec diverses fonctions qui existaient sous dos mais pas sous linux...
#include "pages.h" #include "pages.h"
#include "files.h" #include "files.h"
#include "loadsave.h" #include "loadsave.h"
#include "sdlscreen.h" #include "sdlscreen.h"
#include "erreurs.h" #include "erreurs.h"
#ifdef __linux__
#include "linux.h" //Fichier avec diverses fonctions qui existaient sous dos mais pas sous linux...
#elif __WATCOMC__
#include <windows.h>
#include <shlwapi.h>
#define chdir(dir) SetCurrentDirectory(dir)
#define M_PI 3.14159265358979323846
#endif
byte Ancien_nb_lignes; // Ancien nombre de lignes de l'écran byte Ancien_nb_lignes; // Ancien nombre de lignes de l'écran
@ -201,9 +209,21 @@ void Analyse_de_la_ligne_de_commande(int argc,char * argv[])
Option2=2; Option2=2;
// On récupère le chemin complet du paramètre // On récupère le chemin complet du paramètre
Buffer=realpath(argv[1],NULL);
// Et on découpe ce chemin en répertoire(path) + fichier(.ext) // Et on découpe ce chemin en répertoire(path) + fichier(.ext)
#ifdef __linux__
Buffer=realpath(argv[1],NULL);
_splitpath(Buffer,Principal_Repertoire_fichier,Principal_Nom_fichier); _splitpath(Buffer,Principal_Repertoire_fichier,Principal_Nom_fichier);
#elif __WATCOMC__
Buffer = malloc(MAX_PATH);
PathCanonicalize(Buffer,argv[1]);
_splitpath(Buffer,
Principal_Repertoire_fichier,
Principal_Repertoire_fichier+3,
Principal_Nom_fichier,
Principal_Nom_fichier+8);
free(Buffer);
#endif
// chdir(Principal_Repertoire_fichier); // chdir(Principal_Repertoire_fichier);
} }
else else

View File

@ -12,12 +12,15 @@
#include <string.h> #include <string.h>
#include <stdlib.h> #include <stdlib.h>
#include <stdio.h> #include <stdio.h>
#include "linux.h"
#include "boutons.h" #include "boutons.h"
#include "operatio.h" #include "operatio.h"
#include "shade.h" #include "shade.h"
#include "erreurs.h" #include "erreurs.h"
#ifdef __linux__
#include "linux.h"
#endif
//---------- Annuler les effets des modes de dessin (sauf la grille) --------- //---------- Annuler les effets des modes de dessin (sauf la grille) ---------
// Variables mémorisants les anciens effets // Variables mémorisants les anciens effets

View File

@ -9,6 +9,10 @@
#include "boutons.h" #include "boutons.h"
#include "pages.h" #include "pages.h"
#ifdef __WATCOMC__
#define M_PI 3.14159265358979323846
#endif
void Demarrer_pile_operation(word Operation_demandee) void Demarrer_pile_operation(word Operation_demandee)
{ {
Brosse_Centre_rotation_defini=0; Brosse_Centre_rotation_defini=0;

View File

@ -6,12 +6,15 @@
#include <string.h> #include <string.h>
#include <stdlib.h> #include <stdlib.h>
#include "linux.h"
#include "global.h" #include "global.h"
#include "pages.h" #include "pages.h"
#include "graph.h" #include "graph.h"
#include "erreurs.h" #include "erreurs.h"
#ifdef __linux__
include "linux.h"
#endif
/// ///
/// GESTION DES PAGES /// GESTION DES PAGES
/// ///

View File

@ -1 +1,3 @@
int Charger_INI(struct S_Config * Conf); int Charger_INI(struct S_Config * Conf);
int Charger_INI_Seek_pattern(char * Buffer,char * Pattern);
void Charger_INI_Clear_string(char * String);

View File

@ -9,8 +9,11 @@
#include "global.h" #include "global.h"
#include "graph.h" #include "graph.h"
#include "divers.h" #include "divers.h"
#include "erreurs.h"
#ifdef __linux__
#include "linux.h" #include "linux.h"
void Erreur(int code); #endif
#define COULEUR_TEXTE CM_Noir #define COULEUR_TEXTE CM_Noir
#define COULEUR_FOND CM_Clair #define COULEUR_FOND CM_Clair

View File

@ -1,6 +1,7 @@
#include <stdio.h> #include <stdio.h>
#include "const.h" #include "const.h"
#include "global.h" #include "global.h"
#include "readini.h"
int Sauver_INI_Reach_group(FILE * Old_file,FILE * New_file,char * Buffer,char * Group) int Sauver_INI_Reach_group(FILE * Old_file,FILE * New_file,char * Buffer,char * Group)
{ {

View File

@ -4,13 +4,13 @@
#include "divers.h" #include "divers.h"
#include "erreurs.h" #include "erreurs.h"
void inline Pixel_SDL (word X,word Y,byte Couleur) void Pixel_SDL (word X,word Y,byte Couleur)
/* Affiche un pixel de la Couleur aux coords X;Y à l'écran */ /* Affiche un pixel de la Couleur aux coords X;Y à l'écran */
{ {
*(Ecran + X + Y * Largeur_ecran)=Couleur; *(Ecran + X + Y * Largeur_ecran)=Couleur;
} }
byte inline Lit_Pixel_SDL (word X,word Y) byte Lit_Pixel_SDL (word X,word Y)
/* On retourne la couleur du pixel aux coords données */ /* On retourne la couleur du pixel aux coords données */
{ {
return *( Ecran + Y * Largeur_ecran + X ); return *( Ecran + Y * Largeur_ecran + X );
@ -185,7 +185,7 @@ void Remap_screen_SDL (word Pos_X,word Pos_Y,word Largeur,word Hauteur,byte * Ta
UNIMPLEMENTED UNIMPLEMENTED
} }
void inline Afficher_une_ligne_ecran_SDL (word Pos_X,word Pos_Y,word Largeur,byte * Ligne) void Afficher_une_ligne_ecran_SDL (word Pos_X,word Pos_Y,word Largeur,byte * Ligne)
/* On affiche toute une ligne de pixels. Utilisé pour les textes. */ /* On affiche toute une ligne de pixels. Utilisé pour les textes. */
{ {
memcpy(Ecran+Pos_X+Pos_Y*Largeur_ecran,Ligne,Largeur); memcpy(Ecran+Pos_X+Pos_Y*Largeur_ecran,Ligne,Largeur);
@ -225,11 +225,14 @@ void Afficher_partie_de_l_ecran_zoomee_SDL(
int EDX = 0; // Ligne en cours de traitement int EDX = 0; // Ligne en cours de traitement
// Pour chaque ligne à zoomer // Pour chaque ligne à zoomer
while(1){ while(1)
{
int CX;
// On éclate la ligne // On éclate la ligne
Zoomer_une_ligne(ESI,Buffer,Loupe_Facteur,Largeur); Zoomer_une_ligne(ESI,Buffer,Loupe_Facteur,Largeur);
// On l'affiche Facteur fois, sur des lignes consécutives // On l'affiche Facteur fois, sur des lignes consécutives
int CX = Loupe_Facteur; CX = Loupe_Facteur;
// Pour chaque ligne // Pour chaque ligne
do{ do{
// On affiche la ligne zoomée // On affiche la ligne zoomée
@ -273,13 +276,14 @@ void Display_brush_Mono_zoom_SDL (word Pos_X, word Pos_Y,
//Pour chaque ligne à zoomer : //Pour chaque ligne à zoomer :
while(1) while(1)
{ {
int BX;
// ESI = Ligne originale // ESI = Ligne originale
// On éclate la ligne // On éclate la ligne
Zoomer_une_ligne(ESI,Buffer,Loupe_Facteur,Largeur); Zoomer_une_ligne(ESI,Buffer,Loupe_Facteur,Largeur);
// On affiche la ligne Facteur fois à l'écran (sur des // On affiche la ligne Facteur fois à l'écran (sur des
// lignes consécutives) // lignes consécutives)
int BX = Loupe_Facteur; BX = Loupe_Facteur;
// Pour chaque ligne écran // Pour chaque ligne écran
do do

View File

@ -1,5 +1,8 @@
#include "global.h" #include "global.h"
#include "graph.h" #include "graph.h"
#include "moteur.h"
#include "divers.h"
#include "readline.h"
void Bouton_Shade_Mode(void) void Bouton_Shade_Mode(void)
{ {

574
windows-watcom/grafx2.tgt Normal file
View File

@ -0,0 +1,574 @@
40
targetIdent
0
MProject
1
MComponent
0
2
WString
4
NEXE
3
WString
5
nw2en
1
0
1
4
MCommand
0
5
MCommand
0
6
MItem
10
grafx2.exe
7
WString
4
NEXE
8
WVList
4
9
MVState
10
WString
7
WINLINK
11
WString
12
nw2??System:
1
12
WString
5
win95
0
13
MCState
14
WString
7
WINLINK
15
WString
24
?????Incremental Linking
1
1
16
MCState
17
WString
7
WINLINK
18
WString
10
?????Quiet
1
0
19
MCState
20
WString
7
WINLINK
21
WString
20
?????Quiet operation
1
0
22
WVList
2
23
ActionStates
24
WString
5
&Make
25
WVList
0
26
ActionStates
27
WString
4
&Run
28
WVList
0
-1
1
1
0
29
WPickList
21
30
MItem
3
*.c
31
WString
4
COBJ
32
WVList
6
33
MCState
34
WString
3
WCC
35
WString
28
?????Use precompiled headers
1
1
36
MCState
37
WString
3
WCC
38
WString
31
?????Force enums to be type int
1
1
39
MRState
40
WString
3
WCC
41
WString
39
??2??Pentium Pro Register based calling
1
0
42
MRState
43
WString
3
WCC
44
WString
36
??2??Pentium Pro Stack based calling
1
1
45
MRState
46
WString
3
WCC
47
WString
21
?????Compiler default
1
1
48
MRState
49
WString
3
WCC
50
WString
21
??2??32bit Flat model
1
0
51
WVList
0
-1
1
1
0
52
MItem
9
..\aide.c
53
WString
4
COBJ
54
WVList
0
55
WVList
0
30
1
1
0
56
MItem
12
..\boutons.c
57
WString
4
COBJ
58
WVList
0
59
WVList
0
30
1
1
0
60
MItem
11
..\divers.c
61
WString
4
COBJ
62
WVList
0
63
WVList
0
30
1
1
0
64
MItem
10
..\files.c
65
WString
4
COBJ
66
WVList
0
67
WVList
0
30
1
1
0
68
MItem
10
..\graph.c
69
WString
4
COBJ
70
WVList
0
71
WVList
0
30
1
1
0
72
MItem
9
..\init.c
73
WString
4
COBJ
74
WVList
0
75
WVList
0
30
1
1
0
76
MItem
13
..\loadsave.c
77
WString
4
COBJ
78
WVList
0
79
WVList
0
30
1
1
0
80
MItem
9
..\main.c
81
WString
4
COBJ
82
WVList
0
83
WVList
0
30
1
1
0
84
MItem
11
..\moteur.c
85
WString
4
COBJ
86
WVList
0
87
WVList
0
30
1
1
0
88
MItem
11
..\op_asm.c
89
WString
4
COBJ
90
WVList
0
91
WVList
0
30
1
1
0
92
MItem
9
..\op_c.c
93
WString
4
COBJ
94
WVList
0
95
WVList
0
30
1
1
0
96
MItem
13
..\operatio.c
97
WString
4
COBJ
98
WVList
0
99
WVList
0
30
1
1
0
100
MItem
10
..\pages.c
101
WString
4
COBJ
102
WVList
0
103
WVList
0
30
1
1
0
104
MItem
12
..\palette.c
105
WString
4
COBJ
106
WVList
0
107
WVList
0
30
1
1
0
108
MItem
12
..\readini.c
109
WString
4
COBJ
110
WVList
0
111
WVList
0
30
1
1
0
112
MItem
13
..\readline.c
113
WString
4
COBJ
114
WVList
0
115
WVList
0
30
1
1
0
116
MItem
12
..\saveini.c
117
WString
4
COBJ
118
WVList
0
119
WVList
0
30
1
1
0
120
MItem
14
..\sdlscreen.c
121
WString
4
COBJ
122
WVList
0
123
WVList
0
30
1
1
0
124
MItem
10
..\shade.c
125
WString
4
COBJ
126
WVList
0
127
WVList
0
30
1
1
0
128
MItem
12
..\special.c
129
WString
4
COBJ
130
WVList
0
131
WVList
1
132
ActionStates
133
WString
5
&Make
134
WVList
0
30
1
1
0

43
windows-watcom/grafx2.wpj Normal file
View File

@ -0,0 +1,43 @@
40
projectIdent
0
VpeMain
1
WRect
-40
-53
10320
10346
2
MProject
3
MCommand
0
4
MCommand
0
1
5
WFileName
10
grafx2.tgt
6
WVList
1
7
VComponent
8
WRect
0
0
1230
4840
0
0
9
WFileName
10
grafx2.tgt
0
20
7