Support ARM
Re: Support ARM
Excuse moi alors, je vois de l'agressivité partout ^^
Pour répondre donc à ta question , un tel projet est quand même conséquent , pour l'adapté à PB , je pense que c'est faisable.
il faut shunté le compilateur pbcompiler. ensuite parser le code PureBasic
Partie avant :
- mettre tout le code sous forme de jetons.
- identifier les jetons
- les jetons inconnu sont considérer comme des erreurs
- analyser les suites de jetons pour les erreurs de syntaxe.
Partie arrière :
- Mettre les jetons sous forme ASM sous le format de la cible.
Faire autant de partie arrière que de processeur ciblé.
C'est du boulot , La partie avant est une histoire de 2 à 3 semaine de travail.
La partie arrière implique de connaitre le processeur cible ( ici un proc ARM )
il faut se munir du datasheet pour connaitre l'opcode du processeur, et de la doc du compilateur fasmarm.
il y a autant de partie arrière que de processeurs sur lequel tu veut compilé.
Cela reste à mon avis plus simple qu'un processeur intel ou amd.
Il faut donc un gars qui a des connaissances en ASM & un autre qui manipule le string comme un roi pour le parsing
C'est largement faisable en PureBasic.
Pour répondre donc à ta question , un tel projet est quand même conséquent , pour l'adapté à PB , je pense que c'est faisable.
il faut shunté le compilateur pbcompiler. ensuite parser le code PureBasic
Partie avant :
- mettre tout le code sous forme de jetons.
- identifier les jetons
- les jetons inconnu sont considérer comme des erreurs
- analyser les suites de jetons pour les erreurs de syntaxe.
Partie arrière :
- Mettre les jetons sous forme ASM sous le format de la cible.
Faire autant de partie arrière que de processeur ciblé.
C'est du boulot , La partie avant est une histoire de 2 à 3 semaine de travail.
La partie arrière implique de connaitre le processeur cible ( ici un proc ARM )
il faut se munir du datasheet pour connaitre l'opcode du processeur, et de la doc du compilateur fasmarm.
il y a autant de partie arrière que de processeurs sur lequel tu veut compilé.
Cela reste à mon avis plus simple qu'un processeur intel ou amd.
Il faut donc un gars qui a des connaissances en ASM & un autre qui manipule le string comme un roi pour le parsing
C'est largement faisable en PureBasic.
Re: Support ARM
Y a quand même un truc qui me chiffonne... Le code qui sort de derrière PB, avant le fasm, il développe pas les fonctions complexes ?G-Rom a écrit :Partie avant :
- mettre tout le code sous forme de jetons.
- identifier les jetons
- les jetons inconnu sont considérer comme des erreurs
- analyser les suites de jetons pour les erreurs de syntaxe.
Et puis (pour être sur de bien comprendre), un programme codé de cette façon ne permettra pas d'utiliser les fonctions avancées de PB (du genre Openwindow() pour linux) ?
Comment t-on fait lors des appels de librairie ?
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel )
Mon site : CeriseCode (Attention Chantier perpétuel )
-
- Messages : 117
- Inscription : dim. 21/déc./2008 18:39
Re: Support ARM
Code : Tout sélectionner
Le code qui sort de derrière PB, avant le fasm, il développe pas les fonctions complexes ?
Code : Tout sélectionner
Et puis (pour être sur de bien comprendre), un programme codé de cette façon ne permettra pas d'utiliser les fonctions avancées de PB (du genre Openwindow() pour linux) ?
Ce que décrit G-Rom c'est le vrai fonctionnement des compilateurs. Ensuite (après la mise en "assembleur" du code de mémoire), il y a une étape d'édition de lien, qui permet de lier les appels de fonction à des librairies. Il faudra donc, pour avoir une programme purebasic->ARM, faire en plus une adaptions des librairies de purebasic pour quelle fonctionne sous ARM, afin que les appels de procédure sa soit pas du vent.
http://www.purebasicstreet.com/ - Site dédié à purebasic.
- Kwai chang caine
- Messages : 6962
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Support ARM
J'y comprend fifre...mais put...c'est passionnant ce que vous racontez
J'espere sincerement que y'a assez de codeurs calés sur ce forum et qui auraient envie de compter des jetons
Remarquer peut être qu'un appel chez nos copains de l'autre coté de la mer pourrait aussi intéresser, j'suis sur que y'en a qui savent compter la-bas ??
Moi j'en connais un de super codeur en ASM d’ailleurs si il passe par la...ce serait cool qui donne son avis sur l'histoire des jetons de GRom, sur l'adaptation de ses librairies et tout le toutim
En tout cas serieux...votre conversation c'est top...je vais suivre ça en bavant ......comme ma grand mére "les feux de l'amour"
J'espere sincerement que y'a assez de codeurs calés sur ce forum et qui auraient envie de compter des jetons
Remarquer peut être qu'un appel chez nos copains de l'autre coté de la mer pourrait aussi intéresser, j'suis sur que y'en a qui savent compter la-bas ??
Moi j'en connais un de super codeur en ASM d’ailleurs si il passe par la...ce serait cool qui donne son avis sur l'histoire des jetons de GRom, sur l'adaptation de ses librairies et tout le toutim
En tout cas serieux...votre conversation c'est top...je vais suivre ça en bavant ......comme ma grand mére "les feux de l'amour"
Re: Support ARM
@Graph100:
Comme le dis stombretrooper , l'edition de liens s'occupe de faire le lien entre ton code , et les bibliothèques externe. OpenWindow étant un symbole inconnu à la compilation il sera résolu à l'édition de lien , si il ne le résous pas , tu auras une erreur de linkage. Comme l'as dit stombretrooper, il faudra adpater toutes les fonctions pour que l'editeur de lien ne se casse pas les dents, la moitié des lib étant opensource , un portage arm ne poseras sans doute pas de soucis.
Comme le dis stombretrooper , l'edition de liens s'occupe de faire le lien entre ton code , et les bibliothèques externe. OpenWindow étant un symbole inconnu à la compilation il sera résolu à l'édition de lien , si il ne le résous pas , tu auras une erreur de linkage. Comme l'as dit stombretrooper, il faudra adpater toutes les fonctions pour que l'editeur de lien ne se casse pas les dents, la moitié des lib étant opensource , un portage arm ne poseras sans doute pas de soucis.
Re: Support ARM
ben justement je comprenais passtombretrooper a écrit :Aucun rapport avec ce que G-Rom écrit.
Merci pour les éclaircissements !
Si je comprend à peu près le fonctionne de PB quand je l'utilise, le mécanisme derrière m'est assez opaque, et je n'ai pas pris le temps de me renseigner dessus.
Donc c'est faisable, et en PB en plusG-Rom a écrit :la moitié des lib étant opensource , un portage arm ne poseras sans doute pas de soucis.
Ça serait un projet intéressant !
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel )
Mon site : CeriseCode (Attention Chantier perpétuel )
Re: Support ARM
Ca reviens à créer un compilateur , je ne me lancerais pas dans un tel projet juste pour l'arm.graph100 a écrit :ben justement je comprenais passtombretrooper a écrit :Aucun rapport avec ce que G-Rom écrit.
Merci pour les éclaircissements !
Si je comprend à peu près le fonctionne de PB quand je l'utilise, le mécanisme derrière m'est assez opaque, et je n'ai pas pris le temps de me renseigner dessus.
Donc c'est faisable, et en PB en plusG-Rom a écrit :la moitié des lib étant opensource , un portage arm ne poseras sans doute pas de soucis.
Ça serait un projet intéressant !
A la rigueur convertir le "basic" pour gcc qui supporte toutes les plateformes qui existe, la cela vaudrais le coup , mais ce ne serait plus du PureBasic , mais un basic maison
Re: Support ARM
C'est le projet de Idle çaG-Rom a écrit :A la rigueur convertir le "basic" pour gcc qui supporte toutes les plateformes qui existe, la cela vaudrais le coup , mais ce ne serait plus du PureBasic , mais un basic maison
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel )
Mon site : CeriseCode (Attention Chantier perpétuel )
Re: Support ARM
Juste pour info, sur comment créer un compiler en purebasic:
http://pbtut.blogspot.co.at/2009/08/base.html
http://www.purebasic.fr/german/viewtopi ... =9&t=27222
Mesa.
http://pbtut.blogspot.co.at/2009/08/base.html
http://www.purebasic.fr/german/viewtopi ... =9&t=27222
Mesa.
- Kwai chang caine
- Messages : 6962
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Support ARM
Je sais pas si t'as tout compris.....mais y'a quand même des pointures sur nos forums !!!