Je doute que l'intégration directe n'ait que des avantages techniques.
Personnellement ça ne me pose pas de problème de le lancer en 2 fois.
Les fenêtres GDB qui sortaent de TiEmu comme un diable ça m'a fait toujours un peu peur.
Le boot2 1.1.8981 a été dumpé grâce à critor !
Il s'agit du boot2 pré-installé à l'usine.
Ok je regarderai.
Par contre je doute qu'embarquer ça dans l'émulateur soit compatible avec l'esprit de concision de Goplat.
Je n'arrive pas à downgrader le boot2, et je n'ai pas de connexion RS232 fonctionnelle pour y voir clair.
Quelqu'un peut essayer de son côté ?
GDB se perd lors de l'appel des fonctions de l'OS, par exemple un "step" par dessus une fonction se comporte comme un next, et un finish depuis une fonction de l'OS retourne "Cannot find bounds of current function".
Aujourd'hui les fonctions sont définies comme des appels statiques avec des pointeurs de fonction :
#define _oscall(rettype,funcname,...) (*((rettype __attribute__((cdecl)) (*)(__VA_ARGS__))(funcname##_##addr)))
#define NULL ((void*)0)
typedef struct{} FILE;
typedef unsigned long size_t;
#define fopen (_oscall(FILE*, fopen, const char * filename, const char * mode))
#define fwrite (_oscall(size_t, fwrite, const void * ptr, size_t size, size_t count, FILE * stream))
#define fclose (_oscall(int, fclose, FILE * stream))
#define malloc (_oscall(void*, malloc, size_t size))
#define free (_oscall(void, free, void * ptr))
#define memset (_oscall(void *, memset, void * ptr, int value, size_t num))
#define mkdir (_oscall(int, mkdir, const char *path, int mode))
#define fopen_addr 0x101850B8
#define fwrite_addr 0x101855A8
#define fclose_addr 0x10184AB0
#define malloc_addr 0x10181AD8
#define free_addr 0x10181ACC
#define memset_addr 0x101860C4
#define mkdir_addr 0x102A8864
Il y aurait une subtilité pour que GCC fasse comprendre à GDB que c'est une fonction ? (attribute particulier ?)
Au fait, à quand une release du fameux installeur?
C'est la release qui rendra la Nspire intéressante, donc il y a tout intérêt de l'effectuer aussi tôt que possible! Les détails genre un joli shell (un des trucs qui ont été cités comme "manquants" dans le topic sur United TI) peuvent être rajoutés par la suite, ce n'est pas la peine que la première version soit parfaite.
Pour cloturer sur ce sujet. Une release publique verra le jour quand on aura une version stable et bien testée.