Now distributing optimized APKs.
Hecho ^ en teclados de hardware, escribe ↑ nuevamente. Esto había cambiado a ^ cuando agregué ese carácter al conjunto de caracteres Free42 en 3.2.3, pero escribirlo no es apropiado en una emulación HP-42S.
Al buscar funciones integradas, ^ y ↑ ahora se consideran iguales. Esto corrige problemas con la escritura y pegado de programas, y con el mapeo directo de comandos en ciertas máscaras, específicamente HP-41G y las máscaras Mueck_F42*. (Nota: este es un problema relacionado pero separado de las actualizaciones de los archivos de soporte *.raw de las máscaras Mueck hace tres días).
Potencias enteras más precisas de números complejos. Específicamente: casos especiales para reales puros, enteros puros y números de la forma a+ai y a-ai.
VISTA corregida para valores largos.
Potencias enteras más precisas de números complejos. Específicamente: casos especiales para reales puros, enteros puros y números de la forma a+ai y a-ai.
VISTA corregida para valores largos.
El menú PERSONALIZADO no se pegaba de manera confiable, debido a un error introducido en 3.2. Corregido.
Bloqueo de programas, para evitar la edición accidental de programas. Esto se hace usando las funciones BLOQUEAR y DESBLOQUEAR. Visite el sitio web de Free42 para obtener más detalles.
Contraste de pantalla mejorado en las máscaras integradas.
Teclado ALPHA emergente, para una entrada de texto más fácil.
Bloqueo de programas, para evitar la edición accidental de programas. Esto se hace mediante las funciones BLOQUEAR y DESBLOQUEAR. Consulte el sitio web de Free42 para obtener más detalles.
Contraste de pantalla mejorado en las máscaras integradas.
Teclado ALPHA emergente para facilitar la entrada de texto.
Revertimos la corrección del pitido de la versión anterior. No funcionaba como se esperaba. Volvemos a la mesa de dibujo.
Hicimos que TONE y BEEP reproduzcan audio de forma asincrónica. Esto debería solucionar las fallas ocasionales causadas por esas funciones que acaparan la interfaz de usuario durante demasiado tiempo. ¡
Se corrigió el pegado de GETMI, PUTMI, GETLI y PUTLI.
Se agregó una opción en el cuadro de diálogo Acerca de para mostrar el mapa de teclado activo superpuesto en la máscara.
Se agregaron funciones para acceso directo a elementos de matriz y lista: GETMI, PUTMI, GETLI y PUTLI. Consulta el sitio web de Free42 para obtener más detalles.
Se agregó una opción en el cuadro de diálogo Acerca de para mostrar el mapa de teclado activo superpuesto en la máscara.
Se agregaron funciones para acceso directo a elementos de matriz y lista: GETMI, PUTMI, GETLI y PUTLI. Consulta el sitio web de Free42 para obtener más detalles.
. Se implementó GETKEYA. Funciona como GETKEY, excepto que no esperará una pulsación de tecla si no hay pulsaciones de teclas en la cola del teclado, y devolverá 0 en ese caso.
Se solucionó un fallo con las importaciones de archivos relativos.
Se solucionó el bloqueo de ciertos códigos de teclas no reconocidos de los teclados Bluetooth.
La asignación de comando directo ahora admite asignaciones alternativas para el modo ALPHA.
Se corrigió el acceso a archivos para Android >= 11.
INPUT fallaría si se presionaba R/S mientras la pila estaba vacía, en modo NSTK. Fijado.
ANUM consideraría un punto decimal o coma por sí mismo como cero, en lugar de ignorarlo. Fijado.
EDIT, EDITN e INDEX no borraron los indicadores 76 y 77 (envoltura de borde y final de matriz), mientras que deberían. Fijado.
Versión decimal: en HMS+ y HMS-, se corrigió el manejo de casos en los que uno o ambos argumentos tenían una cantidad de minutos o segundos >= 60. (La versión binaria no tenía este error). Nivel de API de destino actualizado para mantener la seguridad
Se cambió Σ+/Σ- para que, en modo NSTK, acepten un solo argumento real, suponiendo que Y=0 en ese caso.
Frecuencias de TONO sintonizadas a escala A440.
Se corrigió el bloqueo en RTNERR al volver al modo NSTK después de FUNC/L4STK.
Se corrigió ASSIGN "" en los programas.
Se agregó PRREG al menú IMPRIMIR.
NN→S ahora ignora el modo de visualización y siempre actúa como si el modo TODO estuviera activo. La idea es que si le importa el modo de visualización, probablemente usará N→S, y solo necesita NN→S si desea ver específicamente la precisión interna completa.
Se corrigieron un par de errores en Pegar escalares en los modos BINM, OCTM y HEXM.
Se corrigió el pegado de U+22A2 y U+22A6 (caracteres 'agregar' usados por i41CX y Emu42).
Corregido (re,im) pegado complejo. Esto fue roto por copiar y pegar localizado.
Casos especiales de puro real y puro imaginario en SQRT.
Se arregló el manejo de teclas numéricas no válidas en los modos BINM y OCTM.
Se agregaron →LIST, LIST→, SKIP, CPXMAT? y TYPE? y cambió el nombre de PRMVAR a PGMVAR. Consulte el sitio web de Free42 para obtener más información.
INPUT provocó una salida de impresora incorrecta en los modos NORM y TRACE. Reparado.
Secuencias de escape para caracteres indefinidos en Copiar y Pegar y salida de impresora.
Cuando el registro Y contiene una cadena o una lista, en el modo EJECUTAR, la tecla + ahora ejecuta APPEND.
Se corrigió el manejo de cadenas de un solo carácter en los programas. Esto se rompió en la versión anterior.
Versión 3.0.8:
repetición automática para argumentos XSTR y ALPHA en general.
Se corrigió la impresión borrosa en ciertos dispositivos.
Corrección de errores.
Repetición automática para argumentos XSTR y ALPHA en general.
Versión de Android: se corrigió la impresión borrosa en ciertos dispositivos.
Corrección de errores.
A2LINE ahora maneja mejor las cadenas que comienzan con los caracteres 127-255. Además, se agregó la función A2 + LINE para generar cadenas adjuntas.
TAN y TANH complejos más precisos.
RND no manejó números grandes correctamente y no pudo redondear tantos dígitos como fuera necesario en ciertos casos. Reparado.
Σ + y Σ- siempre querían dos argumentos, incluso en modo NSTK, cuando X contenía una matriz real. Reparado.
Copiar y Pegar ahora maneja los objetos de la lista.
Se agregaron funciones de cadena y lista. Consulte el sitio web de Free42 para obtener más detalles.
Se agregaron letras minúsculas a la fuente del menú.
L4STK podría fallar debido a una corrección incorrecta de LNSTK en 3.0.2. Reparado.
Se corrigieron un par de errores de macro de máscara: falla al iniciar la ejecución del programa cuando se presionó EXIT durante VARMNU1, y la interfaz de usuario se congela al iniciar la ejecución del programa en algunos casos.
Solución de error que podría causar resultados incorrectos en INVRT complejo, DET, y la división de la matriz.
FUNC y RTN ahora guardan y restauran ERRMSG y ERRNO junto con el indicador 25.
Se agregaron funciones RCOMPLX y PCOMPLX. Estos funcionan como COMPLEJOS, excepto que siempre funcionan en forma rectangular o polar, respectivamente, ignorando el indicador 73.
Ajustes de MENU y VARMNU1: Cancelar MENU y cancelar la captura de EXIT en VARMNU1, cuando se borra la pila RTN.
Pegar correcciones: borrar los mensajes sobrantes; establezca las banderas 22 o 23 cuando sea apropiado.
Implementado VARMNU1: VARMENU mejorado, con selección inmediata de variables y captura de SALIDA.
Implementado X2LINE y A2LINE: Inserte contenido de X o ALPHA en un programa.
INDEX o EDITN en una matriz local ahora preservan IJ si una matriz ya estaba indexada.
RTNERR ahora acepta argumentos de cadena, por lo que se pueden generar mensajes de error arbitrarios.
ERRNO y ERRMSG implementados: Devuelve el número de error o mensaje, para el último error detectado por la bandera 25.
XSTR implementado: Cree una cadena directamente en el registro X.
Pegado fijo de cero. Esto se rompió en 2.5.21.
Se corrigió el problema de rotación de la pantalla con Android 11.
Soporte implementado para la semántica de funciones definidas por el usuario: preservación de pila, RTN con omisión, RTN con error. Consulte el sitio web de Free42 para obtener más detalles.
Mejor manejo de las rectas numéricas: la diferencia visual entre las representaciones equivalentes de un número ahora se conserva, por lo que 1000 permanece como 1000 y no se convierte en 1E3, por ejemplo.
Implementado FMA (Fused Multiply-Add).
En programas, ahora maneja pegar FIX / SCI / ENG con argumento de 1 dígito, para compatibilidad con HP-41.
2.5.22a:
Se corrigió el bloqueo en ciertos dispositivos más antiguos
2.5.22: Ahora rellenar previamente
los nombres de los archivos en los cuadros de diálogo de selección de archivos.
Implementado LASTO. Esto está relacionado con LSTO como ASTO está relacionado con STO.
Se implementó la función No-Operation (NOP).
GETKEY no se detuvo en Shift-EXIT. Fijo.
Se implementó la función GETKEY1. Esto funciona como el GETKEY normal, excepto que solo se detiene en R / S.
STOFLAG no actualizó los anunciadores G y RAD cuando se cambiaron los indicadores 42 o 43. Fijo.
Opción de rango implementada para STOFLAG.
Implementadas funciones ANUM, X <> F, RCLFLAG y STOFLAG. Consulte el sitio web de Free42 para obtener más detalles.
Se implementó el modo "seguimiento de pila" cuando los indicadores 15 y 16 están configurados.
Pegar números largos podría devolver resultados incorrectos si hubiera muchos ceros a la izquierda. Fijo.
La división real / compleja y compleja / compleja podría devolver No es un número para ciertas entradas. Fijo. También se aplicó una corrección similar al complejo 1 / X.
La división de matrices complejas, INVRT y DET devolverían resultados incorrectos para matrices grandes. Fijo.
Se corrigió el comportamiento de INTEG cuando el integrando devuelve no real.
Se corrigieron DATE +, DDAYS y DOW cuando las banderas 31 y 67 están configuradas.
Se corrigió la basura en SHOW cuando BIN se desborda a HEX.
Durante TRACE, imprima una línea en blanco antes de LBL, como la HP-41.
Cuando ISG llegaba a cero, la variable de control de lazo terminaría teniendo el signo incorrecto. Fijo.
Se agregaron [FIND], [MAX] y [MIN] al catálogo de FCN.
Se corrigió el error fuera de rango en COMB.
ISG y DSE con una variable nombrada fallarían si esa variable no existiera. Fijo.
Comportamiento de elevación de pila fijo con GETKEY.
Pegado fijo de 1 / X y 10 ^ X sin número de línea.
Implementación de HEADING actualizada para que funcione en teléfonos que ya no proporcionan la API de brújula anterior.
Eliminación temporal de la sustitución de la tecla n y deslizar el dedo para cambiar que se introdujeron en la versión anterior; 2.5.17a sufre de pulsaciones de teclas perdidas, aparentemente causadas por la nueva lógica. Las funciones se restaurarán una vez que se haya diagnosticado y solucionado el problema del teclado.
Se corrigió el comportamiento de GETKEY con máscaras que usan mapeo de comandos directo.
Durante la entrada de números, si retrocedía sobre un número negativo hasta que solo quedaba el signo menos, ese menos no se analizaría correctamente y podría obtener. Por ejemplo, 1 +/- <- ENTER.
La verificación del rango de índice en R <> R era defectuosa, lo que permitía usar un índice de fila igual al número de filas + 1, lo que a su vez causaría daños en la memoria. Fijo.
Al cambiar el nombre del estado activo actualmente, el nombre del estado no se actualizaba en la memoria, con el resultado de que al salir, el estado aún se guardaría con el nombre anterior y, en el próximo lanzamiento, también se cargaría con el nombre anterior. El efecto neto de todo esto fue que, en lugar de terminar con un estado renombrado, terminaría con una copia.
podría iniciarse con la orientación de pantalla incorrecta en determinadas circunstancias. Fijo.
SOLVE no siempre devolvería el mejor valor de función en Z, o la segunda mejor estimación en Y. Fijo.
Se cambió la configuración de preferencias de retroalimentación háptica a un control deslizante de cuatro niveles, para permitir una retroalimentación más fuerte.
Se redujo el intervalo de actualización de GPS para LOCAT de 60 segundos a 5 segundos.
Compartir una copia impresa vacía podría fallar. Fijo; ahora aparece un mensaje en su lugar.
Se corrigieron fallas al importar archivos de estado desde archivos adjuntos de correo electrónico.
Administrador de archivos de estado agregado, para cargar, guardar y cambiar entre los estados de la calculadora. Los archivos de estado están en un formato de plataforma neutral, por lo que se pueden intercambiar entre instancias de Free42 que se ejecutan en diferentes dispositivos.
Se corrigió el bloqueo en RTN cuando una variable local ocultaba la matriz indexada.
Se agregó la opción "compartir" para la vista de impresión.
Añadida la opción "compartir" para programas en formato raw.
Al cargar una máscara en el explorador de máscara, ahora impone una carga no almacenada en caché, por lo que los usuarios pueden cargar las correcciones de la máscara sin demora y sin tener que recurrir a la carga lateral.
Se cambió el aspecto del paisaje predeterminado, desde el escritorio / 42ct a android / SGS-L. La máscara anterior tenía teclas debajo de la pantalla que no se alineaban con los menús; realmente tiene que tener Σ + 1 / x √x LOG LN XEQ debajo de la pantalla para una interfaz de usuario consistente.
2.3.1a: Se modificó la configuración del compilador para evitar que genere instrucciones de neón, que son incompatibles con algunos dispositivos, lo que provoca que la aplicación se bloquee.
Se agregó la función Cargar máscaras, para descargar e instalar máscaras desde Internet.
Añadida la función Eliminar skins.
Se agregó avance de papel para la ventana de impresión.
Copia añadida para la ventana de impresión.
Se agregó la función Cargar máscaras, para descargar e instalar máscaras desde Internet. (Puede que Android solicite que otorgue acceso a Internet a Free42; esta característica es la razón. Tenga en cuenta que Free42 no accede a Internet por ningún motivo que no sea la carga de máscaras).
Añadida la función Eliminar skins.
Se agregó avance de papel para la ventana de impresión.
Copia añadida para la ventana de impresión.
Hizo la aplicación explícitamente de una sola instancia (agregando launchMode = "singleInstance" a Free42Activity en el manifiesto de la aplicación). Esto debería eliminar los bloqueos de puntero nulo restantes en el código nativo y también evitar los escenarios de corrupción de archivos de estado.
Se corrigió el bloqueo al activar o desactivar desde un programa.
Se corrigió un error que podía dejar un archivo de estado dañado en ciertas circunstancias.
SOLVE ahora se esfuerza más cuando la extrapolación de secante se atasca debido a que la secante es excesivamente empinada.
0 ^ 0 ahora devuelve Datos no válidos, no 1, para todas las combinaciones de argumentos reales y complejos. La justificación para devolver 1 era matemáticamente cuestionable, y Datos no válidos es lo que devuelve el HP-42S real.
Nuevo menú principal. Debería ser compatible con todas las versiones de Android, incluidas las tabletas Amazon Fire HD y otros dispositivos que sabotearon el menú anterior después de que comenzó a apuntar a Android 8.
Se agregó código para solicitar almacenamiento y acceso GPS cuando sea necesario (máscaras externas, carga y guardado de programas, impresión en archivos, función LOCAT).
Se corrigió el SQRT complejo, por lo que devuelve resultados exactos cuando Re (x) = 0 e Im (x) / 2 es un cuadrado perfecto.
VARMENU pasaría filas de menús de múltiples líneas en el orden incorrecto. (Necesitabas una función con 13 o más MVAR para notar esto). Reparado.
Al imprimir en GIF, cambiar el nombre de archivo no provocó que la secuencia de numeración GIF se reiniciara en 1. Fixed.
Al imprimir en GIF, los archivos de salida se enjuagan y se cierran inmediatamente cuando alcanzan su altura máxima.
MATA, MATB y MATX deberían exhibir el mismo comportamiento de elevación de pila que EDITAR y EDITAR, pero no lo hicieron. Fijo.
Insertar o eliminar un END no siempre eliminaría los objetivos GTO o XEQ locales en caché, lo que podría ocasionar que los comandos GTO o XEQ locales salten a las ubicaciones incorrectas. Se corrigió y también se agregó código para reparar dicho daño en los archivos de estado existentes.
0 SEED inicializó incorrectamente la semilla aleatoria, desperdiciando un dígito de aleatoriedad. Fijo. Al importar archivos sin procesar, E y -E ahora se reconocen como 1 y -1, por compatibilidad con los archivos sin formato HP-41 con números sintéticos. Al importar archivos sin procesar, las instrucciones sintéticas ahora se manejan más como las maneja el HP-42S real. Los argumentos 112-116 son siempre registros de pila, incluso cuando eso no tiene sentido; 102-111 y 123-127 solo se consideran AJ y ae en LBL, GTO y XEQ.
POSA no encontraría la cadena de búsqueda si su única ocurrencia fuera al final del registro alfa. Fijo. Manejo ajustado del indicador de batería baja.
En Programas de exportación, eliminó el tamaño del búfer codificado para la lista de programas, por lo que ahora debería ver todos sus programas en la lista, sin importar cuántos hay. Al pegar números complejos en una notación + bi, la unidad imaginaria ahora debe ser i o j; las ortografías alternativas I y J ya no se reconocen.
Pegar no manejó correctamente los números con exponentes negativos. Fijo.
Otra solución para el bloqueo en la orientación cambia durante la impresión.
Copiar ahora ignora la bandera 29 (separadores de miles) y siempre copia números sin separadores. Esto corrige ciertos comportamientos sorprendentes / indeseables al pegar números en hojas de cálculo o programas. Al ingresar una línea de programa en los modos NORMAL o RASTREAR, la línea se imprimirá, incluso cuando la impresión esté desactivada. Fijo. MATA y MATB, en el menú SIMQ, se bloquean si faltan las variables MATA o MATB. Fijo. Se corrigió el congelamiento de UI durante la impresión de gran volumen.
Program Paste ya no requiere números de línea. (Esto tenía un error en 2.0.9.) El comando PERSONALIZADO ya no desactiva el menú PERSONALIZADO. DIM ?, EDIT y EDITN no imprimieron X en el modo TRACE. Fijo. Al seleccionar el menú que ya está activo, ahora se vuelve a pintar y se eliminan los mensajes. Hizo que el anunciador de impresión permanezca un segundo después de que se detenga la impresión. Esto lo hace más notable, por lo que es menos probable que la impresión pase desapercibida en dispositivos rápidos.
MENÚ (activar el menú programable) mientras estaba en el modo ALPHA no apagó el indicador alpha_mode, lo que lleva a un mal comportamiento o incluso se bloquea si alguna tecla del menú se presionó posteriormente.
La configuración "Pinta siempre toda la pantalla", introducida en la versión anterior, no se mantuvo después del reinicio de la aplicación. Fijo.
Se agregó la opción "Pinta siempre toda la pantalla". Esto evita fallas técnicas en la pantalla con ciertas combinaciones de dispositivos y máscaras.
Se cambiaron las funciones de RAN y SEED para que coincida con el comportamiento del HP-42S real. La implementación anterior utilizó el algoritmo del HP-41C Standard Pac, que produjo números con solo 6 dígitos significativos. El anunciador de arriba / abajo (menú de varias filas) no se actualizó correctamente cuando se activó VARMENU, incluso en el solucionador y el integrador. Fijo. Los íconos de menú para Copiar, Pegar e Imprimir se mostraron demasiado grandes, solapando las etiquetas de los elementos del menú en algunos dispositivos. Fijo.
Se corrigió el ISG y DSE para valores> = 2 ^ 63 (9.2e18). Se corrigió un par de errores sobre cómo se manejan los cambios a las estructuras de datos internas de SOLVE e INTEG.
Se corrigió la condición de terminación de INTEG. Devolvería resultados inexactos en ciertos casos. Se corrigieron los números de importación con el exponente pero sin mantisa, por ej. E3, -E-5, etc. Esto se rompió en 1.5. Se corrigió la falla al tratar de asignar matrices ridículamente grandes. Al ingresar un argumento numérico, las teclas de flecha hacia arriba y hacia abajo realizarán BST y SST, que deberían bloquearse. Fijo. El indicador de prueba 75 activará el menú programable. Fijo.
2.0.4 Se implementó un código de caso especial para números imaginarios puros reales y puros en todas las complejas funciones logarítmicas, trigonométricas e hiperbólicas. 2.0.3 Se corrigieron algunos casos extremos en funciones complejas. En el arranque en frío, ahora se borran los indicadores 21 (habilitación de la impresora) y 55 (existencia de la impresora), para que coincida con el comportamiento del HP-42S real. Se eliminó la opción de impresión de "texto sin formato"; ha quedado obsoleta desde la introducción de la impresión UTF-8 en 1.5.11, ya que Unicode puede representar el juego de caracteres HP-42S directamente. [...]