Some work on filling (not working yet, sorry)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@64 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
		
							parent
							
								
									734b305afb
								
							
						
					
					
						commit
						0843c8f742
					
				
							
								
								
									
										10
									
								
								boutons.c
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								boutons.c
									
									
									
									
									
								
							@ -2173,16 +2173,6 @@ void Relire_liste_fichiers(byte Filtre, short Position, short Decalage,
 | 
			
		||||
  Preparer_et_afficher_liste_fichiers(Position,Decalage,Enreg);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  // -- 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
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void On_vient_de_scroller_dans_le_fileselect(struct Fenetre_Bouton_scroller * Scroller_de_fichiers)
 | 
			
		||||
{
 | 
			
		||||
  char Ancien_nom_de_fichier[13];
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										307
									
								
								boutons.h
									
									
									
									
									
								
							
							
						
						
									
										307
									
								
								boutons.h
									
									
									
									
									
								
							@ -1,151 +1,151 @@
 | 
			
		||||
void Message_Non_disponible(void);
 | 
			
		||||
void Message_Memoire_insuffisante(void);
 | 
			
		||||
void Bouton_Message_initial(void);
 | 
			
		||||
 | 
			
		||||
void Changer_la_forme_du_pinceau(byte Numero);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux couleurs
 | 
			
		||||
void Bouton_Pal_left(void);
 | 
			
		||||
void Bouton_Pal_left_fast(void);
 | 
			
		||||
void Bouton_Pal_right(void);
 | 
			
		||||
void Bouton_Pal_right_fast(void);
 | 
			
		||||
void Bouton_Choix_forecolor(void);
 | 
			
		||||
void Bouton_Choix_backcolor(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs au pinceaux
 | 
			
		||||
void Bouton_Brosse_monochrome(void);
 | 
			
		||||
void Bouton_Menu_pinceaux(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs au mode de dessin … main lev‚e
 | 
			
		||||
void Bouton_Dessin(void);
 | 
			
		||||
void Bouton_Dessin_Switch_mode(void);
 | 
			
		||||
 | 
			
		||||
// Dessin par ligne
 | 
			
		||||
void Bouton_Lignes(void);
 | 
			
		||||
void Bouton_Lignes_Switch_mode(void);
 | 
			
		||||
 | 
			
		||||
// Bouton relatif au remplissage
 | 
			
		||||
void Bouton_Fill(void);
 | 
			
		||||
void Bouton_Remplacer(void);
 | 
			
		||||
void Bouton_desenclencher_Fill(void);
 | 
			
		||||
 | 
			
		||||
// Spray
 | 
			
		||||
void Bouton_Spray(void);
 | 
			
		||||
void Bouton_Spray_Menu(void);
 | 
			
		||||
 | 
			
		||||
// Courbes de B‚zier
 | 
			
		||||
void Bouton_Courbes(void);
 | 
			
		||||
void Bouton_Courbes_Switch_mode(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux rectangles pleins et vides
 | 
			
		||||
void Bouton_Rectangle_vide(void);
 | 
			
		||||
void Bouton_Rectangle_plein(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux d‚grad‚s
 | 
			
		||||
void Bouton_Degrades(void);
 | 
			
		||||
void Degrade_Charger_infos_du_tableau(int Indice);
 | 
			
		||||
// Boutons relatifs aux cercles (ellipses) d‚grad‚(e)s
 | 
			
		||||
void Bouton_Cercle_degrade(void);
 | 
			
		||||
void Bouton_Ellipse_degrade(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux cercles (ellipses) plein(e)s et vides
 | 
			
		||||
void Bouton_Cercle_vide(void);
 | 
			
		||||
void Bouton_Ellipse_vide(void);
 | 
			
		||||
void Bouton_Cercle_plein(void);
 | 
			
		||||
void Bouton_Ellipse_pleine(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux polygones vides et pleins
 | 
			
		||||
void Bouton_Polygone(void);
 | 
			
		||||
void Bouton_Polyform(void);
 | 
			
		||||
void Bouton_Polyfill(void);
 | 
			
		||||
void Bouton_Filled_polyform(void);
 | 
			
		||||
 | 
			
		||||
// Boutons d'ajustement de l'image
 | 
			
		||||
void Bouton_Ajuster(void);
 | 
			
		||||
 | 
			
		||||
// Gestion du mode Shade
 | 
			
		||||
void Bouton_Shade_Mode(void);
 | 
			
		||||
void Bouton_Quick_shade_Mode(void);
 | 
			
		||||
void Bouton_Shade_Menu(void);
 | 
			
		||||
// Gestion du Stencil
 | 
			
		||||
void Bouton_Stencil_Mode(void);
 | 
			
		||||
void Bouton_Menu_Stencil(void);
 | 
			
		||||
// Gestion du Masque
 | 
			
		||||
void Bouton_Mask_Mode(void);
 | 
			
		||||
void Bouton_Mask_Menu(void);
 | 
			
		||||
// Mode grille (Snap)
 | 
			
		||||
void Bouton_Snap_Mode(void);
 | 
			
		||||
void Bouton_Menu_Grille(void);
 | 
			
		||||
// Mode trame (Sieve)
 | 
			
		||||
void Copier_trame_predefinie(byte Indice);
 | 
			
		||||
void Inverser_trame(void);
 | 
			
		||||
void Bouton_Trame_Mode(void);
 | 
			
		||||
void Bouton_Trame_Menu(void);
 | 
			
		||||
// Mode Smooth
 | 
			
		||||
void Bouton_Smooth_Mode(void);
 | 
			
		||||
void Bouton_Smooth_Mode(void);
 | 
			
		||||
// Boutons relatifs au mode Colorize
 | 
			
		||||
void Calculer_les_tables_de_Colorize(void);
 | 
			
		||||
void Bouton_Colorize_Mode(void);
 | 
			
		||||
void Bouton_Colorize_Menu(void);
 | 
			
		||||
// Boutons relatifs au mode Tiling
 | 
			
		||||
void Bouton_Tiling_Mode(void);
 | 
			
		||||
void Bouton_Tiling_Menu(void);
 | 
			
		||||
// Menu des effets
 | 
			
		||||
void Bouton_Effets(void);
 | 
			
		||||
 | 
			
		||||
// Prise de brosse
 | 
			
		||||
void Bouton_Brosse(void);
 | 
			
		||||
void Bouton_Restaurer_brosse(void);
 | 
			
		||||
void Bouton_desenclencher_Brosse(void);
 | 
			
		||||
// Prise de brosse au lasso
 | 
			
		||||
void Bouton_Lasso(void);
 | 
			
		||||
void Bouton_desenclencher_Lasso(void);
 | 
			
		||||
 | 
			
		||||
// Bouton relatifs … la pipette
 | 
			
		||||
void Bouton_Pipette(void);
 | 
			
		||||
void Bouton_desenclencher_Pipette(void);
 | 
			
		||||
void Bouton_Inverser_foreback(void);
 | 
			
		||||
 | 
			
		||||
// Mode loupe
 | 
			
		||||
void Bouton_Loupe(void);
 | 
			
		||||
void Bouton_Menu_Loupe(void);
 | 
			
		||||
void Bouton_desenclencher_Loupe(void);
 | 
			
		||||
 | 
			
		||||
// Les diff‚rents effets sur la brosse
 | 
			
		||||
void Bouton_Brush_FX(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux diff‚rentes pages
 | 
			
		||||
void Bouton_Page(void);
 | 
			
		||||
void Bouton_Copy_page(void);
 | 
			
		||||
void Copier_image_seule(void);
 | 
			
		||||
void Bouton_Kill(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux changements de r‚solution et de taille d'image
 | 
			
		||||
void Bouton_Resol(void);
 | 
			
		||||
void Bouton_Safety_resol(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux chargements et sauvegardes
 | 
			
		||||
void Bouton_Load(void);
 | 
			
		||||
void Bouton_Reload(void);
 | 
			
		||||
void Bouton_Save(void);
 | 
			
		||||
void Bouton_Autosave(void);
 | 
			
		||||
 | 
			
		||||
// R‚glage des paramŠtres de l'utilisateur
 | 
			
		||||
void Bouton_Settings(void);
 | 
			
		||||
 | 
			
		||||
// Annulation de la derniŠre modification
 | 
			
		||||
void Bouton_Undo(void);
 | 
			
		||||
void Bouton_Redo(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux effacements d'images
 | 
			
		||||
void Bouton_Clear(void);
 | 
			
		||||
void Bouton_Clear_colore(void);
 | 
			
		||||
 | 
			
		||||
// Quitter le programme
 | 
			
		||||
void Bouton_Quit(void);
 | 
			
		||||
 | 
			
		||||
// Cacher le menu
 | 
			
		||||
void Message_Non_disponible(void);
 | 
			
		||||
void Message_Memoire_insuffisante(void);
 | 
			
		||||
void Bouton_Message_initial(void);
 | 
			
		||||
 | 
			
		||||
void Changer_la_forme_du_pinceau(byte Numero);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux couleurs
 | 
			
		||||
void Bouton_Pal_left(void);
 | 
			
		||||
void Bouton_Pal_left_fast(void);
 | 
			
		||||
void Bouton_Pal_right(void);
 | 
			
		||||
void Bouton_Pal_right_fast(void);
 | 
			
		||||
void Bouton_Choix_forecolor(void);
 | 
			
		||||
void Bouton_Choix_backcolor(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs au pinceaux
 | 
			
		||||
void Bouton_Brosse_monochrome(void);
 | 
			
		||||
void Bouton_Menu_pinceaux(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs au mode de dessin … main lev‚e
 | 
			
		||||
void Bouton_Dessin(void);
 | 
			
		||||
void Bouton_Dessin_Switch_mode(void);
 | 
			
		||||
 | 
			
		||||
// Dessin par ligne
 | 
			
		||||
void Bouton_Lignes(void);
 | 
			
		||||
void Bouton_Lignes_Switch_mode(void);
 | 
			
		||||
 | 
			
		||||
// Bouton relatif au remplissage
 | 
			
		||||
void Bouton_Fill(void);
 | 
			
		||||
void Bouton_Remplacer(void);
 | 
			
		||||
void Bouton_desenclencher_Fill(void);
 | 
			
		||||
 | 
			
		||||
// Spray
 | 
			
		||||
void Bouton_Spray(void);
 | 
			
		||||
void Bouton_Spray_Menu(void);
 | 
			
		||||
 | 
			
		||||
// Courbes de B‚zier
 | 
			
		||||
void Bouton_Courbes(void);
 | 
			
		||||
void Bouton_Courbes_Switch_mode(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux rectangles pleins et vides
 | 
			
		||||
void Bouton_Rectangle_vide(void);
 | 
			
		||||
void Bouton_Rectangle_plein(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux d‚grad‚s
 | 
			
		||||
void Bouton_Degrades(void);
 | 
			
		||||
void Degrade_Charger_infos_du_tableau(int Indice);
 | 
			
		||||
// Boutons relatifs aux cercles (ellipses) d‚grad‚(e)s
 | 
			
		||||
void Bouton_Cercle_degrade(void);
 | 
			
		||||
void Bouton_Ellipse_degrade(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux cercles (ellipses) plein(e)s et vides
 | 
			
		||||
void Bouton_Cercle_vide(void);
 | 
			
		||||
void Bouton_Ellipse_vide(void);
 | 
			
		||||
void Bouton_Cercle_plein(void);
 | 
			
		||||
void Bouton_Ellipse_pleine(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux polygones vides et pleins
 | 
			
		||||
void Bouton_Polygone(void);
 | 
			
		||||
void Bouton_Polyform(void);
 | 
			
		||||
void Bouton_Polyfill(void);
 | 
			
		||||
void Bouton_Filled_polyform(void);
 | 
			
		||||
 | 
			
		||||
// Boutons d'ajustement de l'image
 | 
			
		||||
void Bouton_Ajuster(void);
 | 
			
		||||
 | 
			
		||||
// Gestion du mode Shade
 | 
			
		||||
void Bouton_Shade_Mode(void);
 | 
			
		||||
void Bouton_Quick_shade_Mode(void);
 | 
			
		||||
void Bouton_Shade_Menu(void);
 | 
			
		||||
// Gestion du Stencil
 | 
			
		||||
void Bouton_Stencil_Mode(void);
 | 
			
		||||
void Bouton_Menu_Stencil(void);
 | 
			
		||||
// Gestion du Masque
 | 
			
		||||
void Bouton_Mask_Mode(void);
 | 
			
		||||
void Bouton_Mask_Menu(void);
 | 
			
		||||
// Mode grille (Snap)
 | 
			
		||||
void Bouton_Snap_Mode(void);
 | 
			
		||||
void Bouton_Menu_Grille(void);
 | 
			
		||||
// Mode trame (Sieve)
 | 
			
		||||
void Copier_trame_predefinie(byte Indice);
 | 
			
		||||
void Inverser_trame(void);
 | 
			
		||||
void Bouton_Trame_Mode(void);
 | 
			
		||||
void Bouton_Trame_Menu(void);
 | 
			
		||||
// Mode Smooth
 | 
			
		||||
void Bouton_Smooth_Mode(void);
 | 
			
		||||
void Bouton_Smooth_Mode(void);
 | 
			
		||||
// Boutons relatifs au mode Colorize
 | 
			
		||||
void Calculer_les_tables_de_Colorize(void);
 | 
			
		||||
void Bouton_Colorize_Mode(void);
 | 
			
		||||
void Bouton_Colorize_Menu(void);
 | 
			
		||||
// Boutons relatifs au mode Tiling
 | 
			
		||||
void Bouton_Tiling_Mode(void);
 | 
			
		||||
void Bouton_Tiling_Menu(void);
 | 
			
		||||
// Menu des effets
 | 
			
		||||
void Bouton_Effets(void);
 | 
			
		||||
 | 
			
		||||
// Prise de brosse
 | 
			
		||||
void Bouton_Brosse(void);
 | 
			
		||||
void Bouton_Restaurer_brosse(void);
 | 
			
		||||
void Bouton_desenclencher_Brosse(void);
 | 
			
		||||
// Prise de brosse au lasso
 | 
			
		||||
void Bouton_Lasso(void);
 | 
			
		||||
void Bouton_desenclencher_Lasso(void);
 | 
			
		||||
 | 
			
		||||
// Bouton relatifs … la pipette
 | 
			
		||||
void Bouton_Pipette(void);
 | 
			
		||||
void Bouton_desenclencher_Pipette(void);
 | 
			
		||||
void Bouton_Inverser_foreback(void);
 | 
			
		||||
 | 
			
		||||
// Mode loupe
 | 
			
		||||
void Bouton_Loupe(void);
 | 
			
		||||
void Bouton_Menu_Loupe(void);
 | 
			
		||||
void Bouton_desenclencher_Loupe(void);
 | 
			
		||||
 | 
			
		||||
// Les diff‚rents effets sur la brosse
 | 
			
		||||
void Bouton_Brush_FX(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux diff‚rentes pages
 | 
			
		||||
void Bouton_Page(void);
 | 
			
		||||
void Bouton_Copy_page(void);
 | 
			
		||||
void Copier_image_seule(void);
 | 
			
		||||
void Bouton_Kill(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux changements de r‚solution et de taille d'image
 | 
			
		||||
void Bouton_Resol(void);
 | 
			
		||||
void Bouton_Safety_resol(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux chargements et sauvegardes
 | 
			
		||||
void Bouton_Load(void);
 | 
			
		||||
void Bouton_Reload(void);
 | 
			
		||||
void Bouton_Save(void);
 | 
			
		||||
void Bouton_Autosave(void);
 | 
			
		||||
 | 
			
		||||
// R‚glage des paramŠtres de l'utilisateur
 | 
			
		||||
void Bouton_Settings(void);
 | 
			
		||||
 | 
			
		||||
// Annulation de la derniŠre modification
 | 
			
		||||
void Bouton_Undo(void);
 | 
			
		||||
void Bouton_Redo(void);
 | 
			
		||||
 | 
			
		||||
// Boutons relatifs aux effacements d'images
 | 
			
		||||
void Bouton_Clear(void);
 | 
			
		||||
void Bouton_Clear_colore(void);
 | 
			
		||||
 | 
			
		||||
// Quitter le programme
 | 
			
		||||
void Bouton_Quit(void);
 | 
			
		||||
 | 
			
		||||
// Cacher le menu
 | 
			
		||||
void Bouton_Cacher_menu(void);
 | 
			
		||||
 | 
			
		||||
void Stencil_Tagger_couleur(byte Couleur, byte Couleur_de_taggage);
 | 
			
		||||
@ -157,4 +157,13 @@ void Menu_Tag_couleurs(char * En_tete, byte * Table, byte * Mode, byte Cancel);
 | 
			
		||||
 | 
			
		||||
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
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										114
									
								
								divers.c
									
									
									
									
									
								
							
							
						
						
									
										114
									
								
								divers.c
									
									
									
									
									
								
							@ -4,6 +4,7 @@
 | 
			
		||||
#include "global.h"
 | 
			
		||||
#include "graph.h" //Afficher_curseur
 | 
			
		||||
#include "erreurs.h"
 | 
			
		||||
#include "boutons.h"
 | 
			
		||||
 | 
			
		||||
// Gestion du mode texte de départ (pour pouvoir y retourner en cas de problème
 | 
			
		||||
byte Recuperer_nb_lignes(void)
 | 
			
		||||
@ -413,7 +414,25 @@ byte Pixel_dans_cercle(void)
 | 
			
		||||
 | 
			
		||||
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)
 | 
			
		||||
{
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	// ESI = adresse de la source en (S_Pox_X,S_Pos_Y)
 | 
			
		||||
	byte* esi = Source + S_Pos_Y * Largeur_source + S_Pos_X;
 | 
			
		||||
 | 
			
		||||
	// EDI = adresse de la destination (D_Pos_X,D_Pos_Y)
 | 
			
		||||
	byte* edi = Destination + D_Pos_Y * Largeur_destination + D_Pos_X;
 | 
			
		||||
 | 
			
		||||
	int Ligne;
 | 
			
		||||
 | 
			
		||||
	// Pour chaque ligne
 | 
			
		||||
	for (Ligne=0;Ligne < Hauteur; Ligne++)
 | 
			
		||||
	{
 | 
			
		||||
		memcpy(edi,esi,Largeur);
 | 
			
		||||
 | 
			
		||||
		// Passe à la ligne suivante
 | 
			
		||||
		esi+=Largeur_source - Largeur;
 | 
			
		||||
		edi+=Largeur_destination - Largeur;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Lit_pixel_dans_ecran_brouillon(word X,word Y)
 | 
			
		||||
@ -454,7 +473,7 @@ void Copier_image_dans_brosse(short Debut_X,short Debut_Y,short Brosse_Largeur,s
 | 
			
		||||
 | 
			
		||||
byte Lit_pixel_dans_ecran_feedback (word X,word Y)
 | 
			
		||||
{
 | 
			
		||||
	puts("Lit_pixel_dans_ecran_feedback non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -465,7 +484,7 @@ dword Round_div(dword Numerateur,dword Diviseur)
 | 
			
		||||
 | 
			
		||||
byte Effet_Trame(word X,word Y)
 | 
			
		||||
{
 | 
			
		||||
	puts("Effet_Trame non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -479,18 +498,41 @@ void Set_mouse_position(void)
 | 
			
		||||
 | 
			
		||||
void Clip_mouse(void)
 | 
			
		||||
{
 | 
			
		||||
	puts("Clip_mouse non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Remplacer_toutes_les_couleurs_dans_limites(byte * Table_de_remplacement)
 | 
			
		||||
{
 | 
			
		||||
	puts("Remplacer_toutes_les_couleurs_dans_limites non implémenté!");
 | 
			
		||||
}
 | 
			
		||||
	// ESI pointe sur le début de la ligne d'écran actuelle
 | 
			
		||||
	byte* esi = Principal_Ecran + Limite_Gauche + 
 | 
			
		||||
		Limite_Haut * Principal_Largeur_image;
 | 
			
		||||
	
 | 
			
		||||
	// EDI pointe sur la position actuelle dans l'écran
 | 
			
		||||
	byte* edi = esi;
 | 
			
		||||
 | 
			
		||||
byte Lit_pixel_dans_ecran_backup   (word X,word Y)
 | 
			
		||||
	// On place dans CX le nombre de lignes à traiter
 | 
			
		||||
	int Ligne;
 | 
			
		||||
 | 
			
		||||
	// Pour chaque ligne :
 | 
			
		||||
	for(Ligne = Limite_Haut;Ligne < Limite_Bas; Ligne++)
 | 
			
		||||
	{
 | 
			
		||||
		int Compteur;
 | 
			
		||||
		// Pour chaque pixel sur la ligne :
 | 
			
		||||
		for (Compteur = Limite_Gauche;Compteur < Limite_Droite;Compteur ++);
 | 
			
		||||
		{
 | 
			
		||||
			*edi = Table_de_remplacement[*edi];
 | 
			
		||||
			edi++;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Passage à la ligne suivante
 | 
			
		||||
		esi += Principal_Largeur_image;
 | 
			
		||||
		edi = esi;
 | 
			
		||||
	}
 | 
			
		||||
}		
 | 
			
		||||
 | 
			
		||||
byte inline Lit_pixel_dans_ecran_backup (word X,word Y)
 | 
			
		||||
{
 | 
			
		||||
	puts("Lit_pixel_dans_ecran_backup non implémenté!");
 | 
			
		||||
	return 0;
 | 
			
		||||
	return *(Ecran_backup + X + Principal_Largeur_image * Y);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Type_de_lecteur_de_disquette(byte Numero_de_lecteur)
 | 
			
		||||
@ -504,86 +546,86 @@ byte Type_de_lecteur_de_disquette(byte Numero_de_lecteur)
 | 
			
		||||
//            5 : Lecteur 2.8 Mo (??? pas sur ???)
 | 
			
		||||
//            6 : Lecteur 2.8 Mo
 | 
			
		||||
{
 | 
			
		||||
	puts("Type_de_lecteur_de_disquette non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Disk_map(byte Numero_de_lecteur)
 | 
			
		||||
{
 | 
			
		||||
	puts("Disk_map non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Disque_dur_present(byte Numero_de_disque)
 | 
			
		||||
{
 | 
			
		||||
	puts("Disque_dur_present non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Lecteur_CDROM_present(byte Numero_de_lecteur)
 | 
			
		||||
{
 | 
			
		||||
	puts("Lecteur_CDROM_present non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
long Freespace(byte Numero_de_lecteur)
 | 
			
		||||
{
 | 
			
		||||
	puts("Freespace non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Couleur_ILBM_line(word Pos_X, word Vraie_taille_ligne)
 | 
			
		||||
{
 | 
			
		||||
	puts("Couleur_ILBM_line non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Palette_256_to_64(T_Palette Palette)
 | 
			
		||||
{
 | 
			
		||||
	puts("Palette_256_to_64 non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Palette_64_to_256(T_Palette Palette)
 | 
			
		||||
{
 | 
			
		||||
	puts("Palette_64_to_256 non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Effet_Colorize_interpole  (word X,word Y,byte Couleur)
 | 
			
		||||
{
 | 
			
		||||
	puts("Effet_Colorize_interpole non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Effet_Colorize_additif    (word X,word Y,byte Couleur)
 | 
			
		||||
{
 | 
			
		||||
	puts("Effet_Colorize_additif non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Effet_Colorize_soustractif(word X,word Y,byte Couleur)
 | 
			
		||||
{
 | 
			
		||||
	puts("Effet_Colorize_soustractif non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Tester_chrono(void)
 | 
			
		||||
void inline Tester_chrono(void)
 | 
			
		||||
{
 | 
			
		||||
	puts("Tester_chrono non implémenté!");
 | 
			
		||||
	if((SDL_GetTicks()/55)-Chrono_delay>Chrono_cmp) Etat_chrono=1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Flip_Y_LOWLEVEL(void)
 | 
			
		||||
{
 | 
			
		||||
	puts("Flip_Y_LOWLEVEL non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Flip_X_LOWLEVEL(void)
 | 
			
		||||
{
 | 
			
		||||
	puts("Flip_X_LOWLEVEL non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Rotate_180_deg_LOWLEVEL(void)
 | 
			
		||||
{
 | 
			
		||||
	puts("Rotate_180_deg_LOWLEVEL non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Tempo_jauge(byte Vitesse)
 | 
			
		||||
@ -598,24 +640,36 @@ void Tempo_jauge(byte Vitesse)
 | 
			
		||||
 | 
			
		||||
byte Meilleure_couleur_sans_exclusion(byte Rouge,byte Vert,byte Bleu)
 | 
			
		||||
{
 | 
			
		||||
	puts("Meilleure_couleur_sans_exclusion non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Set_color(byte Couleur, byte Rouge, byte Vert, byte Bleu)
 | 
			
		||||
{
 | 
			
		||||
	puts("Set_color non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Scroll_picture(short Decalage_X,short Decalage_Y)
 | 
			
		||||
{
 | 
			
		||||
	puts("Scroll_picture non implémenté!");
 | 
			
		||||
	UNIMPLEMENTED
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
byte Get_key(void)
 | 
			
		||||
{
 | 
			
		||||
	puts("Get_key non implémenté!");
 | 
			
		||||
	return 0;
 | 
			
		||||
	SDL_Event event;
 | 
			
		||||
 | 
			
		||||
	SDL_EnableUNICODE(SDL_ENABLE); // On a besoin du caractère
 | 
			
		||||
 | 
			
		||||
	while(1)
 | 
			
		||||
	{
 | 
			
		||||
		SDL_PollEvent(&event);
 | 
			
		||||
		if(event.type == SDL_KEYDOWN)
 | 
			
		||||
		{
 | 
			
		||||
			// On retourne en mode standard pour la gestion normale
 | 
			
		||||
			SDL_EnableUNICODE(SDL_DISABLE);
 | 
			
		||||
			return (byte)(event.key.keysym.unicode);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Zoomer_une_ligne(byte* Ligne_originale, byte* Ligne_zoomee, 
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user