Now pre-populating state name for States -> More -> Rename.
. Implémentation de GETKEYA. Cela fonctionne comme GETKEY, sauf qu'il n'attendra pas une frappe de touche si aucune frappe de touche n'est dans la file d'attente du clavier, renvoyant 0 à la place dans ce cas.
Correction d'un crash avec les importations de fichiers relatifs.
. Implémentation de GETKEYA. Cela fonctionne comme GETKEY, sauf qu'il n'attendra pas une frappe de touche si aucune frappe de touche n'est dans la file d'attente du clavier, renvoyant 0 à la place dans ce cas.
Correction d'un crash avec les importations de fichiers relatifs.
Reconnaissance désormais des délimiteurs de commentaires '@' et ';' pour le collage de programme.
Complexe ASIN/ASINH plus précis.
Le mappage de commandes directes prend désormais en charge les mappages alternatifs pour le mode ALPHA.
Accès aux fichiers corrigé pour Android >= 11.
CSLD ? n'a pas géré l'intervention XEQ/RTN. Corrigé.
FUNC n'a pas détecté les FUNC/LNSTK/L4STK précédents. Corrigé.
INPUT plantait si R/S était pressé alors que la pile était vide, en mode NSTK. Fixé.
ANUM considérerait un point décimal ou une virgule par lui-même comme zéro, au lieu de l'ignorer. Fixé.
EDIT, EDITN et INDEX n'ont pas effacé les drapeaux 76 et 77 (bouclage des bords de la matrice et bouclage final), alors qu'ils le devraient. Fixé.
Version décimale : dans HMS+ et HMS-, correction de la gestion des cas où l'un ou les deux arguments ont un nombre de minutes ou de secondes >= 60. (La version binaire n'avait pas ce bogue.) Mise à jour du niveau d'API cible pour maintenir la sécurité
Modification de Σ+/Σ- pour qu'en mode NSTK, ils acceptent un seul argument réel, en supposant que Y=0 dans ce cas.
Fréquences TONE accordées à l'échelle A440.
Correction d'un crash dans RTNERR lors du retour au mode NSTK après FUNC/L4STK.
Correction ASSIGN "" dans les programmes.
Ajout de PRREG au menu IMPRIMER.
NN→S ignore maintenant le mode d'affichage et agit toujours comme si le mode ALL était actif. L'idée étant que si vous vous souciez du mode d'affichage, vous utiliserez probablement N→S, et vous n'aurez besoin de NN→S que si vous voulez spécifiquement voir une précision interne complète.
Correction de quelques bogues dans le collage de scalaires en modes BINM, OCTM et HEXM.
Correction du collage de U+22A2 et U+22A6 (caractères 'append' utilisés par i41CX et Emu42).
Correction (re, im) collage complexe. Cela a été cassé par un copier-coller localisé.
Cas particuliers du réel pur et de l'imaginaire pur dans SQRT.
Correction de la gestion des touches numériques invalides dans les modes BINM et OCTM.
Ajout de →LIST, LIST→, SKIP, CPXMAT? et TYPE? fonctions et changé le nom de PRMVAR en PGMVAR. Consultez le site Web de Free42 pour plus de détails.
INPUT provoquait une sortie incorrecte de l'imprimante dans les modes NORM et TRACE. Fixé.
Séquences d'échappement pour les caractères indéfinis dans le copier-coller et la sortie de l'imprimante.
Lorsque le registre Y contient une chaîne ou une liste, en mode RUN, la touche + effectue maintenant APPEND.
Correction de la gestion des chaînes à un seul caractère dans les programmes. Cela était cassé dans la version précédente.
Version 3.0.8 : Répétition
automatique pour les arguments XSTR et ALPHA en général.
Correction de l'impression floue sur certains appareils.
Corrections de bogues.
Répétition automatique pour les arguments XSTR et ALPHA en général.
Version Android : Correction de l'impression floue sur certains appareils.
Corrections de bugs.
A2LINE gère désormais mieux les chaînes commençant par les caractères 127-255. En outre, ajout de la fonction A2 + LINE pour générer des chaînes ajoutées.
TAN et TANH complexes plus précis.
RND ne gérait pas correctement les grands nombres, n'arrivant pas à arrondir autant de chiffres que nécessaire dans certains cas. Fixé.
Σ+ et Σ- voulaient toujours deux arguments, même en mode NSTK, lorsque X contenait une matrice réelle. Fixé.
Le copier-coller gère désormais les objets de liste.
Ajout de fonctions de chaîne et de liste. Voir le site Web de Free42 pour plus de détails.
Ajout de lettres minuscules à la police du menu.
L4STK pourrait tomber en panne, en raison d'une correction de LNSTK incorrect dans 3.0.2. Fixé.
Correction de quelques bugs de macro d'habillage : échec du démarrage de l'exécution du programme lorsque EXIT était enfoncé pendant VARMNU1 et blocage de l'interface utilisateur lors du démarrage de l'exécution du programme dans certains cas.
Correction d'un bogue qui pouvait entraîner des résultats incorrects dans les divisions INVRT, DET et matricielles complexes.
FUNC et RTN enregistrent et restaurent maintenant ERRMSG et ERRNO avec l'indicateur 25.
Ajout des fonctions RCOMPLX et PCOMPLX. Ceux-ci fonctionnent comme COMPLEX, sauf qu'ils fonctionnent toujours en rectangulaire ou polaire, respectivement, en ignorant le drapeau 73.
Ajustements de MENU et VARMNU1 : Annulez MENU et annulez le recouvrement EXIT dans VARMNU1, lorsque la pile RTN est effacée.
Coller les correctifs : effacez les messages restants ; définir les drapeaux 22 ou 23, le cas échéant.
Implémentation de VARMNU1: VARMENU amélioré, avec sélection immédiate des variables et trapping EXIT.
Implémentation de X2LINE et A2LINE: Insérez le contenu de X ou ALPHA dans un programme.
INDEX ou EDITN sur une matrice locale conservent désormais IJ si une matrice était déjà indexée.
RTNERR accepte désormais les arguments de chaîne, de sorte que des messages d'erreur arbitraires peuvent être générés.
Implémenté ERRNO et ERRMSG: renvoie le numéro ou le message d'erreur, pour la dernière erreur interceptée par l'indicateur 25.
Implémenté XSTR: crée une chaîne directement dans le registre X.
Correction du collage de zéro. Cela a été cassé dans 2.5.21.
Correction d'un problème de rotation de l'écran avec Android 11.
Prise en charge de la sémantique des fonctions définies par l'utilisateur: préservation de la pile, RTN avec saut, RTN avec erreur. Consultez le site Web Free42 pour plus de détails.
Meilleure gestion des droites numériques: la différence visuelle entre les représentations équivalentes d'un nombre est maintenant préservée, donc 1000 reste 1000 et n'est pas transformé en 1E3, par exemple.
Implémentation de FMA (Fused Multiply-Add).
Dans les programmes, gère désormais le collage de FIX / SCI / ENG avec un argument à 1 chiffre, pour la compatibilité HP-41.
2.5.22a:
Correction d'un crash sur certains appareils plus anciens.
2.5.22: Préremplir
les noms de fichiers dans les boîtes de dialogue de sélection de fichiers maintenant.
Implémentation de LASTO. Ceci est lié à LSTO comme ASTO est lié à STO.
Mise en œuvre de la fonction No-Operation (NOP).
GETKEY ne s'est pas arrêté sur Shift-EXIT. Fixé.
Implémentation de la fonction GETKEY1. Cela fonctionne comme le GETKEY normal, sauf qu'il ne s'arrête que sur R / S.
STOFLAG n'a pas mis à jour les annonciateurs G et RAD lorsque les indicateurs 42 ou 43 ont été modifiés. Fixé.
Option de plage implémentée pour STOFLAG.
Implémentation des fonctions ANUM, X <> F, RCLFLAG et STOFLAG. Consultez le site Web Free42 pour plus de détails.
Implémentation du mode "trace de pile" lorsque les indicateurs 15 et 16 sont tous deux définis.
Le collage de nombres longs pouvait renvoyer des résultats incorrects si plusieurs zéros non significatifs étaient présents. Fixé.
Une division réelle / complexe et complexe / complexe pourrait renvoyer Pas un nombre pour certaines entrées. Fixé. Également appliqué un correctif similaire au complexe 1 / X.
La division matricielle complexe, INVRT et DET renverrait des résultats incorrects pour les grandes matrices. Fixé.
Correction du comportement INTEG lorsque l'intégrande renvoie un non-réel.
Correction de DATE +, DDAYS et DOW lorsque les indicateurs 31 et 67 sont tous deux définis.
Correction des ordures dans SHOW lorsque BIN déborde vers HEX.
Pendant TRACE, imprimez une ligne vierge avant LBL, comme le HP-41.
Lorsque ISG atteignait zéro, la variable de contrôle de boucle finirait par avoir le mauvais signe. Fixé.
Ajout de [FIND], [MAX] et [MIN] au catalogue FCN.
Correction de faux hors de portée dans COMB.
ISG et DSE avec une variable nommée planteraient si cette variable n'existait pas. Fixé.
Correction du comportement de levage de la pile avec GETKEY.
Correction du collage de 1 / X et 10 ^ X sans numéro de ligne.
Mise à jour de la mise en œuvre HEADING pour qu'elle fonctionne sur les téléphones qui ne fournissent plus l'ancienne API de boussole.
temporaire du rollover n-key et du swipe-to-switch qui ont été introduits dans la version précédente; 2.5.17a souffre de frappes manquées, apparemment causées par la nouvelle logique. Les fonctionnalités seront restaurées une fois le problème de clavier diagnostiqué et corrigé.
Correction du comportement GETKEY avec des skins qui utilisent le mappage direct de commandes.
Lors de la saisie du numéro, si vous reculiez sur un nombre négatif jusqu'à ce que seul le signe moins reste, ce moins ne serait pas analysé correctement et vous pourriez l'obtenir. Par exemple, 1 +/- <- ENTER.
La vérification de la plage d'index dans R <> R était défectueuse, permettant d'utiliser un index de ligne égal au nombre de lignes + 1, ce qui à son tour entraînerait une corruption de la mémoire. Fixé.
Lors du changement de nom de l'état actuellement actif, le nom de l'état n'était pas mis à jour en mémoire, de sorte qu'à la sortie, l'état serait toujours enregistré sous l'ancien nom et au prochain lancement, il serait également chargé sous l'ancien nom. L'effet net de tout cela était qu'au lieu de finir avec un état renommé, vous vous retrouveriez avec une copie.
application de connexion par code PIN pouvait se lancer avec une mauvaise orientation de l'écran dans certaines circonstances. Fixé.
SOLVE ne retournait pas toujours la meilleure valeur de fonction dans Z, ou la deuxième meilleure estimation dans Y. Corrigé.
Modification du paramètre de préférence de retour haptique en un curseur à quatre niveaux, pour permettre un retour plus fort.
L'intervalle de mise à jour du GPS pour LOCAT a été réduit de 60 secondes à 5 secondes.
Partager une impression vide planterait. Fixé; maintenant, il affiche un message à la place.
Correction de plantages lors de l'importation de fichiers d'état à partir de pièces jointes aux e-mails.
Ajout du gestionnaire de fichiers d'état, pour le chargement, l'enregistrement et la commutation entre les états de la calculatrice. Les fichiers d'état sont dans un format indépendant de la plate-forme, ils peuvent donc être échangés entre des instances Free42 exécutées sur différents appareils.
Correction d'un crash dans RTN lorsqu'une variable locale cachait la matrice indexée.
Ajout de l'option "partager" pour la vue d'impression.
Ajout de l'option "partager" pour les programmes au format brut.
Lors du chargement d'un skin dans le navigateur de skin, il impose désormais une charge non mise en cache. Les correctifs de skin peuvent donc être chargés par les utilisateurs sans délai, sans avoir à recourir au chargement latéral.
Changement de l'apparence par défaut du paysage, de desktop / 42ct à android / SGS-L. L'ancienne peau avait des touches sous l'écran qui ne s'alignaient pas avec les menus; vous devez vraiment avoir Σ + 1 / x √x LOG LN XEQ sous l'écran pour une interface utilisateur cohérente.
2.3.1a: Modification des paramètres du compilateur pour l'empêcher de générer des instructions Neon incompatibles avec certains périphériques, provoquant le blocage de l'application.
Ajout de la fonctionnalité de chargement des skins pour le téléchargement et l’installation de skins à partir d’Internet.
Ajout de la fonctionnalité Supprimer les peaux.
Ajout de la fenêtre Paper Advance for Print-Out.
Ajout de la fenêtre Copie pour impression.
Ajout de la fonctionnalité de chargement des skins pour le téléchargement et l’installation de skins à partir d’Internet. (Vous remarquerez peut-être qu'Android vous demande d'autoriser l'accès Internet à Free42; cette raison en est la raison. Notez que Free42 n'accède pas à Internet pour des raisons autres que le chargement des skins.)
Ajout de la fonctionnalité Supprimer les peaux.
Ajout de la fenêtre Paper Advance for Print-Out.
Ajout de la fenêtre Copie pour impression.
Fait de l'application explicitement une seule instance (en ajoutant launchMode = "singleInstance" à Free42Activity dans le manifeste de l'application). Cela devrait éliminer les pannes de null-pointeur restantes dans le code natif et empêcher les scénarios de corruption de fichiers d'état.
Correction d'un crash lors de l'appel ON ou OFF d'un programme.
Correction d'un bug qui pouvait laisser un fichier d'état corrompu dans certaines circonstances.
SOLVE essaie maintenant plus fort quand l'extrapolation de la sécante est bloquée en raison de la trop grande pente de la sécante.
0 ^ 0 renvoie maintenant des données non valides, pas 1, pour toutes les combinaisons d'arguments réels et complexes. La logique pour renvoyer 1 était mathématiquement discutable, et Invalid Data correspond à ce que le HP-42S réel renvoie.
Nouveau menu principal. Cela devrait être compatible avec toutes les versions d'Android, y compris les tablettes Amazon Fire HD et les autres appareils qui sabotaient l'ancien menu après avoir commencé à cibler Android 8.
Code ajouté pour demander le stockage et l’accès GPS en cas de besoin (habillages externes, chargement et enregistrement de programmes, impression dans des fichiers, fonction LOCAT).
Correction du SQRT complexe pour qu'il renvoie des résultats exacts lorsque Re (x) = 0 et Im (x) / 2 est un carré parfait.
VARMENU passerait par des rangées de menus multilignes dans le mauvais ordre. (Vous aviez besoin d'une fonction avec 13 MVAR ou plus pour le remarquer.) Correction.
Lors de l'impression au format GIF, la modification du nom de fichier n'a pas entraîné le redémarrage de la séquence de numérotation GIF à 1. Fixe.
Lors de l'impression au format GIF, les fichiers de sortie sont maintenant vidés et fermés immédiatement lorsqu'ils atteignent leur hauteur maximale.
MATA, MATB et MATX doivent présenter le même comportement de levage de pile que EDIT et EDITN, mais ne l'ont pas fait. Fixé.
L'insertion ou la suppression d'un END n'efface pas toujours les cibles GTO ou XEQ locales mises en cache, ce qui peut provoquer le saut vers les mauvais emplacements des commandes GTO ou XEQ locales. Correction et ajout de code pour réparer ces dommages dans les fichiers d'état existants.
0 SEED a initialisé incorrectement la graine aléatoire, gaspillant un chiffre d'aléatoire. Fixé. Lors de l'importation de fichiers bruts, E et -E sont maintenant reconnus comme 1 et -1, pour la compatibilité avec les fichiers bruts HP-41 avec des nombres synthétiques. Lors de l'importation de fichiers bruts, les instructions synthétiques sont désormais traitées plus comme le véritable HP-42S les traite. Les arguments 112-116 sont toujours des registres de pile, même lorsque cela n'a aucun sens; 102-111 et 123-127 sont seulement considérés comme AJ et ae dans LBL, GTO et XEQ.
POSA ne trouverait pas la chaîne de recherche si sa seule occurrence était à la toute fin du registre alpha. Fixé. Manipulation simplifiée de l'indicateur de batterie faible.
Dans Programmes d'exportation, supprimez la taille du tampon codé en dur pour la liste des programmes. Vous devriez donc voir tous vos programmes dans la liste, quel que soit leur nombre. Lorsque vous collez des nombres complexes dans une notation + bi, l'unité imaginaire doit maintenant être i ou j; les orthographes alternatives I et J ne sont plus reconnues.
Coller n'a pas géré correctement les nombres avec des exposants négatifs. Fixé.
Un autre correctif pour le crash sur l'orientation change pendant l'impression.
Copier ignore maintenant l'indicateur 29 (séparateurs de milliers) et copie toujours les nombres sans séparateur. Cela corrige certains comportements surprenants / indésirables lors du collage de nombres dans des feuilles de calcul ou des programmes. Lorsque vous entrez une ligne de programme en mode NORM ou TRACE, la ligne est imprimée, même si l'impression a été désactivée. Fixé. MATA et MATB, dans le menu SIMQ, planteraient si les variables MATA ou MATB manquaient. Fixé. Correction du gel de l'interface utilisateur lors de l'impression de gros volumes.
Le programme Coller ne nécessite plus de numéros de ligne. (Cela a eu un bug dans 2.0.9.) La commande CUSTOM ne désactive plus le menu CUSTOM. DIM ?, EDIT et EDITN n'ont pas imprimé X en mode TRACE. Fixé. La sélection du menu déjà actif oblige maintenant à repeindre, supprimant les messages. Attendez que l'annonciateur imprime pendant une seconde après l'arrêt de l'impression. Cela le rend plus visible, donc l'impression est moins susceptible de passer inaperçue sur les appareils rapides.
MENU (activation du menu programmable) en mode ALPHA n'a pas désactivé le drapeau alpha_mode, entraînant un mauvais comportement ou même des plantages si des touches de menu ont été enfoncées par la suite.
Le paramètre "Always Paint Entire Display", introduit dans la version précédente, ne s'est pas conservé après le redémarrage de l'application. Fixé.
Ajout de l'option "Toujours peindre l'affichage complet". Cela évite les problèmes d'affichage avec certaines combinaisons de périphériques et d'habillages.
Changé les fonctions RAN et SEED pour correspondre au comportement du vrai HP-42S. L'implémentation précédente utilisait l'algorithme du HP-41C Standard Pac, qui produisait des nombres avec seulement 6 chiffres significatifs. L'annonciateur haut / bas (menu à plusieurs lignes) n'a pas été mis à jour correctement lorsque VARMENU a été activé, y compris dans le solveur et l'intégrateur. Fixé. Les icônes de menu pour Copier, Coller et Imprimer ont été affichées trop grandes, chevauchant les étiquettes d'éléments de menu sur certains périphériques. Fixé.
Correction d'ISG et de DSE pour les valeurs> = 2 ^ 63 (9.2e18). Correction de quelques bugs dans la gestion des modifications apportées aux structures de données internes SOLVE et INTEG.
Correction de la condition de terminaison INTEG. Cela retournerait des résultats inexacts dans certains cas. Correction de l'importation de nombres avec exposant mais pas de mantisse, par exemple E3, -E-5, etc. Cela s'est cassé en 1.5. Correction d'un crash en essayant d'allouer des matrices ridiculement grandes. Lors de la saisie d'un argument numérique, les touches fléchées vers le haut et vers le bas effectuent BST et SST, qui doivent être bloquées. Fixé. Le drapeau de test 75 active le menu programmable. Fixé.
2.0.4 Implémentation d'un code de cas particulier pour les nombres purs imaginaires purs et purs dans toutes les fonctions logarithmiques complexes, trigonométriques et hyperboliques. 2.0.3 Correction de quelques cas de bords dans des fonctions complexes. Au démarrage à froid, effacez maintenant les drapeaux 21 (activation de l'imprimante) et 55 (existence de l'imprimante) pour qu'ils correspondent au comportement du véritable HP-42S. Option d'impression "texte brut" supprimée; il est obsolète depuis l'introduction de l'impression UTF-8 en 1.5.11, car Unicode peut représenter le jeu de caractères HP-42S directement. [...]