Rappel historique:
TitaniK 0.10 permettait les programmes kernel en blanc et noir le 14 février 2004. Les niveaux de gris ont été gérés avec la version 0.11 le 7 avril 2004. La première version de
Iceberg, la version 0.90, est sortie le 21 juin 2004. (Il m'a fallu du temps pour trouver quelqu'un en mesure de tester
HW3Patch. Les premiers testeurs sur Titanium étaient des bêta-testeurs de TI qui n'avaient aucune envie de patcher leur AMS par peur que TI leur crée des ennuis. Samuel Stearley a été un des premiers à acheter une Titanium en libre commerce quand elle est sortie et il a accepté de tester
HW3Patch.) Résultat: presque 3 mois pendant lesquels les jeux auraient pu tourner, mais ne tournaient pas, suite à la paresse des programmeurs kernel.
Quant à
PreOs 0.70 avec son fameux autopatcheur, ce n'est sorti que le 27 août 2004, c'est-à-dire plus de 2 mois après
Iceberg 0.90 et presque 5 moins après
TitaniK 0.11. (De plus, la release 0.70 était très instable et il a fallu du temps pour corriger les régressions.
Iceberg était un portage de la version stable 0.67.)
Je signale aussi que j'ai aussi fait mon possible pour faire tourner les vieux programmes avec
Iceberg, cf. cette modification du 26 juillet 2004, 1 mois avant
PreOs 0.70:
* Added ugly workaround to get programs using the old definitions of
tios::font_small and tios::font_large, which are no longer valid on the TI-89
Titanium, to display correctly. (Programs doing custom arithmetic to get those
offsets, such as Solar Striker, still need to be fixed by hand though.)
(
Solar Striker foirait aussi avec
PreOs, l'autopatcheur ne peut pas corriger ça non plus.) Mais je ne vois pas pourquoi le kernel devrait faire le travail de
GhostBuster, c'est à ça que sert
GhostBuster, et si
GhostBuster n'est pas en mesure de corriger un problème donné, il faut corriger
GhostBuster… Un procédé automatique qui modifie un programme de manière permanente est foireux, que faire si je veux envoyer le programme à une non-Titanium par la suite?
GhostBuster permet à l'utilisateur de donner un nom différent au logiciel patché et ainsi garder l'original, et il ne modifie rien sans que l'utilisateur le lui demande explicitement! (Et il est aussi beaucoup plus précis dans ses patches, risquant beaucoup moins de faux positifs, tout en corrigeant aussi des problèmes que l'autopatcheur de
PreOs ne sait pas corriger.) De plus, ma solution pour
font_small et
font_large était plus propre, le dérelogement remettait ça à l'état d'origine, permettant d'exécuter le programme sur une non-Titanium, la solution de PpHd fait que le code ne marche plus que sur Titanium (mais il a refusé d'utiliser mon implémentation sous prétexte que ça prend quelques octets de plus dans le kernel

).