4Fermer6
deleted2Le 11/11/2010 à 02:28
PreOS utilise le vecteur $50 ? Ces deux vecteurs semblent très similaires, non ? Mais le $50 a été mis en place pour les packs archive peut-être ?
De toute façon, le seul kernel qui m'intéresse est PreOS. Les autres, ils n'ont qu'à être compatibles. grin

En fait, mon idée est simple. Je réfléchis à la manière de faire une couche pedrom-like sous AMS. Comment faire tourner un programme fait spécifiquement pour PedroM sous AMS. Voilà ce qui me vient à l'idée :
- ajuster quelques vecteurs (f-line, trap #3, $30.w et $32.w)
- initialiser un terminal
- écrire une lib appelée "pedrom" exportant les mêmes fonctions que la lib de PedroM (tester dans un premier temps avec les fonctions que j'utilise, ie printf/fprtintf/tmpnam/unlink/+1 ou 2 autres)
- désactiver le flag read-only pour forcer le relogement en RAM (on a une adresse de retour sur la pile, donc on doit retrouver le handle du programme, donc son stub et son flag => c'est faisable)

Par contre, je ne sais pas comment intercepter le chargement d'une lib qui a le flag ro. Une idée ?




Pour que le kernel tienne compte du flag read-only sous AMS, il faut que kernel::exec soit utilisé ? Parce que sinon, j'imagine que EX_patch a déjà poppé le programme en RAM ?

Et est-ce que le flag ro signifie bien ces deux choses :
- on ne crée pas de twin, où que soit le fichier
- on n'exécute pas kernel::relocation