1

2

Bug connu de a68k avec les EQU

3

4

Martial Demolins (./3) :
Je comprends maintenant pourquoi je ne voyais que des genlib@00xx dans ton code, ça me faisait pester d'ailleurs


Tu as tout compris cheeky

5

6

Martial Demolins (./5) :
est-ce que je peux, à partir d'une des libs ouverte avec kernel::LibsBegin, utiliser des variables de ce programme main (variables exportées bien sûr)?

Oui. Tu récupères le pointeur de la variable et après tu l'affectes.
Martial Demolins (./5) :
Pourquoi ça?

Aucune idée.
Martial Demolins (./5) :
Dois-je exporter les variables globales du pack archive dans une autre dll que j'ouvrirai au démarrage pour que ça marche?

Tu veux des variables globales rémanentes ? Dans ce cas exportes des variables de ton programme principal (le lanceur) et importe les dans tes modules (pas besoin d'utiliser LibsXXXX dans les modules : rbalmain@0000 marche très bien).

7

8

Martial Demolins (./7) :
Un adressage relogé (move.l main@xxxx,d0) marche aussi?


Que veux-tu dire ?

9

10

Dans ton module, tu peux utiliser un relogement direct (et ne pas passer par LibsPtr) pour accéder à ton lanceur (main) si c'est ta question.

11

12

13

>> Mail.

14

15

16

Vérifie quand a5 est détruit. Il doit contenir pour FindLib un pointeur vers la pile.

17

18

19

20

Martial Demolins (./17) :
edit2 -> c'est quand même balaize à déboguer, vu le degré de réentrance


Et encore là c'est simple. Imagine lorsque ca traine dans les trucs de démarrage au fin fond d'une librairie. cheeky

21

Dans tes modules, rbmod4.asm doivent faire référence au nom du programme (aka main ) et pas au nom du pack archive (rball). Sinon preos renvoie l'erreur "rball is not a kernel librarie" avec raison (c'est une pack archive, pas une libairie). Donc ton module refuse de se reloger et donc kernel::LibsBegin renvoie NULL.
C'est clair cheeky

22

Et sinon la corruption de a5 / pile, je pourrais expliquer, mais çà serait un poil compliqué. (En gros, l'échec du relogement a entrainé un passage en mode unreloc (via un longjmp) qui a engendré une seconde passe en mode unreloc (reentrance, rerecherche, etc)). Et tiemu s'est embrouillé au niveau de la réentrance et des breakpoint.

23

24

25

>>MAil

26

27

28

Mais non, faut pas embarrassed

29

30

Bug de preos (Pas taper).
Version 1.0.5 de preos qui corrige ce bug envoyé par mail.
J'attends de voir si tu trouves d'autres bugs avant de la sortir grin