Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Include_Data Assembleur | |
| | Auteur | Message |
---|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: Include_Data Assembleur Mar 28 Aoû 2012 - 1:12 | |
| je suis parti de la réflexion de minibug sur le nombre de fichiers include au lieu de bmp et j'en suis venu à la conclusion que 1, c'est mieux que 4 ou 5 et donc sur la base du format de mon application "Data Image Creator" j'ai construit une application qui regroupe la fonction de re-création des fichiers images *.bmp et les divers fichiers data.bas à mettre en include, en un seul. l'appli est prévue pour faire de même avec les *.txt mais pour l'instant je viens de finir la partie pour les images *.bmp. - Code:
-
dim D$,DO$,file$,Av%,x%,y%
D$=Dir_current$ if dir_exists(D$+"\IDA_Output")=0 then dir_make D$+"\IDA_Output" DO$=D$+"\IDA_Output" ' ------------------------------------------------------------------------------ label Selectionner,Ajouter,Supprimer,Assembler,Annuler,Quitter ' ------------------------------------------------------------------------------ width 0,540:height 0,360 Caption 0,"Include_data.bas - Assembleur":font_name 0,"arial"
Edit 1:top 1,20:left 1,10:width 1,400 button 2:top 2,20:left 2,415:height 2,20:width 2,20:cursor_point 2:on_click 2,Selectionner caption 2,"1":font_name 2,"Wingdings":font_bold 2 button 3:top 3,20:left 3,440:height 3,20:width 3,20:cursor_point 3:on_click 3,Ajouter caption 3,"+":font_bold 3:inactive 3 list 4: top 4,80:left 4,10:width 4,500:height 4,200 on_double_click 4,Supprimer button 5:top 5,290:left 5,280:cursor_point 5:on_click 5,Assembler caption 5,"Assembler" hint 5,"Assemble les fichiers présents dans la liste en un seul fichier"+chr$(13)+"avec la fonction de re-création de fichiers" button 6:top 6,290:left 6,357:cursor_point 6:on_click 6,Annuler caption 6,"Annuler" hint 6,"Vide la liste des fichiers" Button 10:top 10,290:left 10,434:cursor_point 10:on_click 10,Quitter caption 10,"Quitter" hint 10,"Ferme l' application" alpha 7:top 7,280:left 7,10:caption 7,"Double click sur un item pour l'effacer de la liste" font_size 7,8:font_color 7,0,0,255 combo 12:top 12,50:left 12,10:width 12,60:cursor_point 12 hint 12,"Type de fichiers data, *.bmp ou *.txt" item_add 12,"bmp" item_add 12,"txt" alpha 13:top 13,60:left 13,420:caption 13,"Etat :":font_bold 13 alpha 14:top 14,57:left 14,455:font_name 14,"Wingdings":font_color 14,255,0,0 font_size 14,16 alpha 15:top 15,57:left 15,475:font_name 15,"Wingdings":font_color 15,0,185,0 font_size 15,16 dlist 11 end ' ------------------------------------------------------------------------------ Selectionner: open_dialog 8 filter 8,"*.bas|*.bas" file$=file_name$(8) delete 8 if text$(1)<>"" then text 1,"" text 1,file$ active 3 return ' ------------------------------------------------------------------------------ Ajouter: item_add 4,text$(1) text 1,"" inactive 3 return ' ------------------------------------------------------------------------------ Assembler: if count(4)>0 inactive 10 caption 14,"l":caption 15,"" Av%=0 if text$(12)="bmp" ' ouverture du fichier en création file_open_write 20,DO$+"\Include_bmp.bas" ' ecriture de la fonction de re-création des fichiers *.bmp file_writeln 20,"Create_File_bmp:" file_writeln 20,"for db%=1 to "+str$(count(4)) file_writeln 20," read Titre$ : read haut% : read large% :read Nbre_lign%" file_writeln 20," if object_exists(800)=0" file_writeln 20," form 800:hide 800" file_writeln 20," command_target_is 800" file_writeln 20," picture 801" file_writeln 20," end_if" file_writeln 20," width 801,large% :height 801,haut% :2d_target_is 801" file_writeln 20," for x%=1 to Nbre_Lign%" file_writeln 20," read col% :read lign% :read R% :read G% :read B%" file_writeln 20," 2d_pen_color R%,G%,B%" file_writeln 20," 2d_point col%,lign%" file_writeln 20," next x%" file_writeln 20,"file_save 801,DF$+"+chr$(34)+"\"+chr$(34)+"+titre$+"+chr$(34)+".bmp"+chr$(34) file_writeln 20,"cls" file_writeln 20,"next db%" file_writeln 20,"command_target_is 0" file_writeln 20,"Delete 800" file_writeln 20,"return" ' ajout des fichiers data à assembler for x%=1 to count(4) file_load 11,item_read$(4,x%) ' chargement dans un dlist du fichier No x de la liste, ' et écriture dans le fichier 20 de chaque ligne for y%=1 to count(11) file_writeln 20,item_read$(11,y%) next y% ' effacement du dlist avant recharge par le No x+1 clear 11 ' Compteur de fichiers traités Av%=Av%+1 next x% ' effacement de la liste des fichiers à assembler clear 4 ' fermeture du fichier en écriture file_close 20 active 10 caption 14,"":caption 15,"l" else if text$(12)="txt" message "en cours de codage" else message "Type de fichiers non défini" end_if end_if end_if return ' ------------------------------------------------------------------------------ Supprimer: item_delete 4,item_index(4) return ' ------------------------------------------------------------------------------ Annuler: clear 4 text 1,"" return ' ------------------------------------------------------------------------------ Quitter: terminate | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Include_Data Assembleur Mar 28 Aoû 2012 - 1:19 | |
| Trop tard pour que je teste ce soir. Je verrais ça demain mais merci ygeronimi pour cette mise à jour | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 28 Aoû 2012 - 2:08 | |
| @ Jicehel,
Ce n'est pas une mise à jours, c'est une appli indépendante.
Coloramic : change une couleur pour une autre.
Data Image Créator : Tranforme une image *.bmp en fichier *.bas le fichier *.bas contient l'image *.bmp sous forme de Data avec la structure suivante;
ligne 1 - Titre$,haut%,large%,Nbre_lign% ligne 2 - x%,y%,R%,G%,B% ....
Include Data Assembleur : accroche ensemble plusieurs fichiers créés par Data Image Créator et place en entête de fichier une fonction de re-création des images
il suffit de déclarer les variables et la fonction "Create_Image_bmp" cette fonction est à placer dans la fonction "Init" du programme ( gosub Create_Image_bmp)
Nb : je ferai un petit fichier *.txt avec toute les variables pour pas que vous ayez de doublons.
Edit : On peut combiner les deux DIC et IDA mais IDA est fait pour diminuer le nombre de fichiers #include à 1 seul pour les images je compte le faire évoluer pour les fichiers *.txt . | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: Evolution Mar 28 Aoû 2012 - 17:55 | |
| Include Data Assembleur évolue, j'ai ajouté la possibilité d'assembler des fichiers *.bas contenant des data à destination de créer en auto création des fichiers *.txt avec la fonction pour ceci en en entête. la première ligne de chaque fichier à assembler doit être : data Dossier_de_destination$,Nom$,Nbre_de_lignes% - Code:
-
dim D$,DO$,file$,Av%,x%,y%
D$=Dir_current$ if dir_exists(D$+"\IDA_Output")=0 then dir_make D$+"\IDA_Output" DO$=D$+"\IDA_Output" ' ------------------------------------------------------------------------------ label Selectionner,Ajouter,Supprimer,Assembler,Annuler,Quitter ' ------------------------------------------------------------------------------ width 0,540:height 0,360 Caption 0,"Include_data.bas - Assembleur":font_name 0,"arial"
Edit 1:top 1,20:left 1,10:width 1,400 button 2:top 2,20:left 2,415:height 2,20:width 2,20:cursor_point 2:on_click 2,Selectionner caption 2,"1":font_name 2,"Wingdings":font_bold 2 button 3:top 3,20:left 3,440:height 3,20:width 3,20:cursor_point 3:on_click 3,Ajouter caption 3,"+":font_bold 3:inactive 3 list 4: top 4,80:left 4,10:width 4,500:height 4,200 on_double_click 4,Supprimer button 5:top 5,290:left 5,280:cursor_point 5:on_click 5,Assembler caption 5,"Assembler" hint 5,"Assemble les fichiers présents dans la liste en un seul fichier"+chr$(13)+"avec la fonction de re-création de fichiers" button 6:top 6,290:left 6,357:cursor_point 6:on_click 6,Annuler caption 6,"Annuler" hint 6,"Vide la liste des fichiers" Button 10:top 10,290:left 10,434:cursor_point 10:on_click 10,Quitter caption 10,"Quitter" hint 10,"Ferme l' application" alpha 7:top 7,280:left 7,10:caption 7,"Double click sur un item pour l'effacer de la liste" font_size 7,8:font_color 7,0,0,255 combo 12:top 12,50:left 12,10:width 12,60:cursor_point 12 hint 12,"Type de fichiers data, *.bmp ou *.txt" item_add 12,"bmp" item_add 12,"txt" alpha 13:top 13,60:left 13,420:caption 13,"Etat :":font_bold 13 alpha 14:top 14,57:left 14,455:font_name 14,"Wingdings":font_color 14,255,0,0 font_size 14,16 alpha 15:top 15,57:left 15,475:font_name 15,"Wingdings":font_color 15,0,185,0 font_size 15,16 dlist 11 end ' ------------------------------------------------------------------------------ Selectionner: open_dialog 8 filter 8,"*.bas|*.bas" file$=file_name$(8) delete 8 if text$(1)<>"" then text 1,"" text 1,file$ active 3 return ' ------------------------------------------------------------------------------ Ajouter: item_add 4,text$(1) text 1,"" inactive 3 return ' ------------------------------------------------------------------------------ Assembler: if count(4)>0 inactive 10 caption 14,"l":caption 15,"" Av%=0 if text$(12)="bmp" ' ouverture du fichier en création file_open_write 20,DO$+"\Include_bmp.bas" ' ecriture de la fonction de re-création des fichiers *.bmp file_writeln 20,"Create_File_bmp:" file_writeln 20,"for db%=1 to "+str$(count(4)) file_writeln 20," read Titre$ : read haut% : read large% :read Nbre_lign%" file_writeln 20," if object_exists(800)=0" file_writeln 20," form 800:hide 800" file_writeln 20," command_target_is 800" file_writeln 20," picture 801" file_writeln 20," end_if" file_writeln 20," width 801,large% :height 801,haut% :2d_target_is 801" file_writeln 20," for x%=1 to Nbre_Lign%" file_writeln 20," read col% :read lign% :read R% :read G% :read B%" file_writeln 20," 2d_pen_color R%,G%,B%" file_writeln 20," 2d_point col%,lign%" file_writeln 20," next x%" file_writeln 20,"file_save 801,DF$+"+chr$(34)+"\"+chr$(34)+"+titre$+"+chr$(34)+".bmp"+chr$(34) file_writeln 20,"cls" file_writeln 20,"next db%" file_writeln 20,"command_target_is 0" file_writeln 20,"Delete 800" file_writeln 20,"return" ' ajout des fichiers data à assembler for x%=1 to count(4) file_load 11,item_read$(4,x%) ' chargement dans un dlist du fichier No x de la liste, ' et écriture dans le fichier 20 de chaque ligne for y%=1 to count(11) file_writeln 20,item_read$(11,y%) next y% ' effacement du dlist avant recharge par le No x+1 clear 11 ' Compteur de fichiers traités Av%=Av%+1 next x% ' effacement de la liste des fichiers à assembler clear 4 ' fermeture du fichier en écriture file_close 20 active 10 caption 14,"":caption 15,"l" else if text$(12)="txt" ' Ouverture du fichier en création file_open_write 20,DO$+"\Include_Txt.bas" ' Ecriture de la fonction de re-création des fichiers *.txt file_writeln 20,"Create_File_txt:" file_writeln 20,"for db%=1 to "+str$(count(4)) file_writeln 20," read Dir$ :read Titre$:read Nb_Lign%" file_writeln 20," file_open_write 9000,"+"Dir$+"+chr$(34)+"\"+chr$(34)+"+Titre$+"+chr$(34)+".txt"+chr$(34) file_writeln 20," for x%=1 to Nb_Lign%" file_writeln 20," read donnee$" file_writeln 20," file_writeln 9000,donnee$" file_writeln 20," next x%" file_writeln 20," file_close 9000" file_writeln 20,"next db%" file_writeln 20,"return" ' Ajout des fichiers data à assembler for x%=1 to count(4) file_load 11,item_read$(4,x%) ' chargement dans un dlist du fichier No x de la liste, ' et écriture dans le fichier 20 de chaque ligne for y%=1 to count(11) file_writeln 20,item_read$(11,y%) next y% ' effacement du dlist avant recharge par le No x+1 clear 11 ' Compteur de fichiers traités Av%=Av%+1 next x% ' effacement de la liste des fichiers à assembler clear 4 ' fermeture du fichier en écriture file_close 20 active 10 caption 14,"":caption 15,"l" else message "Type de fichiers non défini" end_if end_if end_if return ' ------------------------------------------------------------------------------ Supprimer: item_delete 4,item_index(4) return ' ------------------------------------------------------------------------------ Annuler: clear 4 text 1,"" return ' ------------------------------------------------------------------------------ Quitter: terminate | |
| | | Contenu sponsorisé
| Sujet: Re: Include_Data Assembleur | |
| |
| | | | Include_Data Assembleur | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |