Jump to content


touchHLE 0.2.2

¿Quieres enterarte al momento de las nuevas descargas? Síguenos en Twitter, Mastodon o Threads!

touchHLE es un emulador de alto nivel (HLE) de aplicaciones del iPhone OS escrito en Rust para macOS, Windows y Android.

Como HLE, touchHLE es radicalmente diferente de un emulador de bajo nivel (LLE) como QEMU. El único código que ejecuta la CPU emulada es el binario de la aplicación y un puñado de librerías; touchHLE ocupa el lugar del iPhone OS y proporciona sus propias implementaciones de los frameworks del sistema (Foundation, UIKit, OpenGL ES, OpenAL, etc).

2023-03-07-touch-n-go-lite-for-website-3.webp

El objetivo de este proyecto es ejecutar juegos de los primeros días de iOS. Hasta ahora sólo se han probado aplicaciones para iPhone/iPod touch para iPhone OS 2.x. La compatibilidad con aplicaciones iOS modernas/de 64 bits no es explícitamente un objetivo, y es poco probable que se priorice la compatibilidad con aplicaciones que no sean juegos debido a su complejidad. Por otro lado, es probable que en el futuro intentemos dar soporte a aplicaciones para algunas de las versiones de 32 bits más recientes (especialmente 3.x y 4.x) y para el iPad. También es posible que se intente dar soporte al iPhone OS 1.x.

Exención de responsabilidad

Este proyecto no está afiliado ni respaldado por Apple Inc. en modo alguno. iPhone, iOS, iPod, iPod touch y iPad son marcas comerciales de Apple Inc. en Estados Unidos y otros países.

Utilice touchHLE únicamente para emular software que posea legalmente.

Plataformas compatibles

touchHLE ha sido probado y se considera compatible con x64 Windows y x64 macOS. Puede que sea posible compilarlo en Linux y en algunos sistemas AArch64 (al menos una persona lo ha conseguido), pero de momento no ofrecemos garantías. Si eres usuario de Apple Silicon Mac: no te preocupes, la versión x64 de macOS funciona con Rosetta.

Problema conocido en macOS: fuga de memoria de aproximadamente 0,2 MB/segundo (juegos a 30 fps) o 0,4 MB/segundo (juegos a 60 fps). Se han descartado todos los posibles culpables obvios en el propio emulador, por lo que podría tratarse de un problema en el propio macOS, SDL2 o alguna otra dependencia. Afortunadamente, es lo suficientemente lento como para que no suponga un problema en la mayoría de las sesiones de juego, pero puede que quieras vigilarlo.

Las arquitecturas que no sean x64 y AArch64 no están soportadas, y es poco probable que esto cambie.

Sería deseable eventualmente soportar Android. Probablemente no sea demasiado trabajo.

Métodos de entrada:

  • Para la entrada táctil simulada, hay dos opciones:
  • Ratón/trackpad (tocar/mantener/arrastrar pulsando el botón izquierdo del ratón)
  • Cursor virtual usando el stick analógico derecho de un mando de videojuegos (tocar/mantener/arrastrar pulsando el stick o el botón derecho del hombro).
  • Para la entrada simulada del acelerómetro (controles de inclinación), actualmente se requiere un mando de juego con un stick analógico izquierdo. El soporte real del acelerómetro llegará pronto, pero no está en las primeras versiones.

Utilización

Necesitarás una aplicación que puedas ejecutar. Tenga en cuenta que el binario de la aplicación debe ser descifrado para ser utilizable.

Por ahora no hay interfaz gráfica de usuario. Si eres usuario de Windows y no estás familiarizado con la línea de comandos, estas instrucciones pueden resultarte útiles:

  • Lo más fácil y rápido es arrastrar y soltar el archivo .ipa o la carpeta .app de la aplicación sobre touchHLE.exe.
  • Para configurar las opciones, edite el archivo touchHLE_options.txt. Para obtener una lista de opciones
    • Mantenga pulsada la tecla Mayús y haga clic con el botón derecho del ratón en el espacio vacío de la ventana de la carpeta.
    • Haga clic en "Abrir con PowerShell".
    • Escriba .\touchHLE.exe --help y pulse Intro.
  • También puedes ejecutar aplicaciones directamente desde la línea de comandos:
    • Mueva el archivo .ipa o el paquete .app a la misma carpeta que touchHLE.exe.
    • Mantenga pulsada la tecla Mayús y haga clic con el botón derecho del ratón en el espacio vacío de la ventana de la carpeta.
    • Haga clic en "Abrir con PowerShell".
    • Escriba .\touchHLE.exe "TuNombreDeAppAquí.ipa" (o .app según corresponda) y pulse Intro. Si desea especificar opciones, añada un espacio después del nombre de la aplicación (fuera de las comillas) y, a continuación, escriba las opciones, separadas por espacios.

Actualmente la detección de idioma no funciona en Windows. Para cambiar la preferencia de idioma de la aplicación, puede escribir SET LANG= seguido de un código de idioma ISO 639-1 y pulsar Intro antes de ejecutar la aplicación en la línea de comandos. Algunos códigos de idioma habituales son: en (English), de (Deutsch), es (Español), fr (français), it (italiano) y ja (日本語). Ten en cuenta que es la propia aplicación la que determina qué idiomas son compatibles, no el emulador.

Todos los datos guardados por la aplicación (por ejemplo, las partidas guardadas) se almacenan en la carpeta touchHLE_sandbox.

Si el emulador se bloquea casi inmediatamente al ejecutar un juego que aparece en la lista de juegos compatibles, comprueba si tienes activada alguna superposición, como la superposición de Steam, la superposición de Discord, el servidor de estadísticas de RivaTuner, etc. Lamentablemente, por muy útiles que sean estas herramientas, funcionan inyectándose en otras apps o juegos y no siempre limpian después de sí mismas, por lo que pueden romper touchHLE... no es culpa nuestra. 😢 Actualmente sólo RivaTuner Statistics Server se sabe que es un problema. Si encuentras otra superposición que no funciona, por favor dínoslo.

touchHLE es una aplicación creada por hikari_no_yume.


Que novedades incluye la versión 0.2.2   See changelog

Released

  • Compatibilidad:
    • Nuevas apps que funcionan:
      • Rayman 2 (@ciciplusplus)
      • Tony Hawk's Pro Skater 2 (@ciciplusplus)
      • Earthworm Jim (@ciciplusplus)
      • Castle of Magic (@ciciplusplus)
    • Mejoras en el soporte de la API:
      • Varias pequeñas contribuciones. (@alborrajo, @WhatAmISupposedToPutHere, @ciciplusplus, @hikari-no-yume, @LennyKappa, @Skryptonyte, @teromene)
      • Los archivos de audio AAC (AAC-LC en un contenedor MPEG-4 típico) son ahora compatibles con Audio Toolbox. Esto se hace de una manera bastante hacky por lo que podría no funcionar para algunas aplicaciones. (@hikari-no-yume)
    • Ahora hay soporte para aplicaciones iPhone OS 3.0, además del soporte existente para aplicaciones iPhone OS 2.x:
      • Se ha añadido soporte para binarios fat. touchHLE ya no se bloqueará al intentar ejecutar una aplicación con versiones ARMv6 y ARMv7, y en su lugar intentará elegir la mejor opción disponible (ARMv7, o en su defecto, ARMv6). Esto mejora la compatibilidad con las aplicaciones del iPhone OS 3.0, muchas de las cuales utilizan binarios pesados para mejorar el rendimiento en el iPhone 3GS y el iPod touch (3ª generación). (@WhatAmISupposedToPutHere)
      • Las bibliotecas dinámicas ARMv6 incluidas, libgcc y libstdc++, han sido actualizadas a sus versiones iPhone OS 3.0.1. Anteriormente se utilizaban las versiones iPhone OS 2.2.1. (@hikari-no-yume)
      • touchHLE ya no mostrará una advertencia cuando se intente ejecutar una aplicación con iPhone OS 3.0 como versión mínima del sistema operativo. La advertencia ahora sólo aparece para aplicaciones que requieren iPhone OS 3.1 y posteriores. (@hikari-no-yume)
  • Usabilidad:
    • La opción --button-to-touch= ahora es compatible con los botones de inicio y hombro izquierdo, además de con los botones A/B/X/Y y el D-pad. Se han ajustado las opciones por defecto de algunos juegos para utilizarlos. (@nighto)
    • Opciones por defecto de varios juegos (@nighto)

No te pierdas nada, síguenos en Twitter, Mastodon o Threads!
Preguntas, aportes y peticiones en el foro.

  • Contenido similar

    • Por Dekuwa
      Sudachi es un emulador de Nintendo Switch escrito en C++ para Windows, Linux Android, con una versión para macOS en desarrollo.


      El emulador tiene soporte para tecnologías Vulkan, OpenGL GLSL y OpenGL GLASM.
      Sudachi ha sido creado por jarrodnorwell.
    • Por Dekuwa
      Flycast es un emulador multiplataforma de Sega Dreamcast, Naomi y Atomiswave para Windows, macOS, Android, iOS y Nintendo Switch.
      ¿Qué es lo que puedes hacer con Flycast?
      Flycast, de momento, tiene soporte para lo siguiente:
      Juegos de SEGA Dreamcast  (en formatos CHD, CDI, GDI y CUE), incluídos los juegos basados en Windows CE Juegos de Sega Naomi (en format o.zip, .7z y .dat/.lst) Juegos de SEGA NAOMI GD-ROM (en formato .zip, .7z, .dat/.lst y .chd) Juegos de Sammy Atomiswave (en format o.zip y .7z) Aplicación creada por flyinghead.
    • Por Dekuwa
      Mythic es un lanzador de juegos para macOS de código abierto con la capacidad de ejecutar juegos de Windows a través de una implementación personalizada de Game Porting Toolkit de Apple, compatible con múltiples plataformas.

      Administra fácilmente todos tus juegos en un solo lugar, con una biblioteca hermosa y personalizable. Instala, configura y ejecuta todos tus juegos desde un lanzador externo o por ti mismo.

      Importa tus propios títulos de macOS o Windows directamente en Mythic. Crea múltiples entornos de Windows directamente en Mythic y mantén todos tus juegos aislados entre sí de forma segura.
    • Por Dekuwa
      Npcap es la biblioteca de captura (y envío) de paquetes del Proyecto Nmap para Microsoft Windows. Implementa la API abierta Pcap utilizando un controlador de kernel de Windows personalizado junto con nuestra compilación para Windows de la excelente biblioteca libpcap. Esto permite que el software de Windows capture tráfico de red sin procesar (incluidas redes inalámbricas, Ethernet por cable, tráfico localhost y muchas VPN) utilizando una API simple y portátil. Npcap también permite enviar paquetes sin procesar.
      Los sistemas Mac y Linux ya incluyen la API Pcap, por lo que Npcap permite que software popular como Nmap y Wireshark se ejecuten en todas estas plataformas (y más) con una única base de código. Npcap comenzó en 2013 como algunas mejoras a la biblioteca WinPcap (ahora descontinuada), pero ha sido reescrita en gran parte desde entonces con cientos de versiones que mejoran la velocidad, la portabilidad, la seguridad y la eficiencia de Npcap.
      En particular, Npcap ahora ofrece:
      Captura e inyección de paquetes de loopback: Npcap puede rastrear paquetes de loopback (transmisiones entre servicios en la misma máquina) mediante la Plataforma de filtrado de Windows (WFP). Después de la instalación, Npcap proporciona una interfaz denominada NPF_Loopback, con la descripción “Adaptador para captura de loopback”. Los usuarios de Wireshark pueden elegir este adaptador para capturar todo el tráfico de loopback de la misma manera que otros adaptadores que no son de loopback. La inyección de paquetes también funciona con la función pcap_inject(). Compatibilidad con todas las versiones actuales de Windows: Npcap es compatible con todas las versiones de Windows y Windows Server que Microsoft aún admite. Para evitar limitarnos solo a las características y API de nuestra versión de Windows compatible más antigua, creamos y enviamos controladores para cada generación de plataforma principal. De esa manera, podemos usar toda la tecnología más reciente de Microsoft en nuestro controlador Win10 y, al mismo tiempo, brindar compatibilidad con sistemas heredados. Npcap funciona en Windows 7 y versiones posteriores mediante el uso de la API de filtro liviano (LWF) de NDIS 6. Es más rápido que la API NDIS 5 obsoleta que utiliza WinPcap. Además, el controlador está firmado con nuestro certificado EV y refrendado por Microsoft para que funcione incluso con los requisitos de firma de controladores más estrictos impuestos por Windows 10. No sabemos exactamente cuándo Microsoft eliminará NDIS 5 o dejará de aplicar las firmas de controladores más antiguas y menos seguras, pero WinPcap dejará de funcionar cuando eso suceda. API de Libpcap: Npcap utiliza la excelente biblioteca Libpcap, lo que permite que las aplicaciones de Windows utilicen una API de captura de paquetes portátil que también es compatible con Linux y MacOS. Si bien WinPcap se basó en LibPcap 1.0.0 de 2009, Npcap incluye la última versión de Libpcap junto con todas las mejoras que contribuimos a ellas. Compatibilidad con todas las arquitecturas de Windows (x86, x86-64 y ARM): Npcap siempre ha sido compatible con las plataformas Intel x86 de 32 bits y Windows de 64 bits. Pero a partir de la versión 1.50, también admitimos la nueva arquitectura Windows en ARM. Esto permite que las PC utilicen los mismos conjuntos de chips móviles de bajo consumo de energía que los teléfonos inteligentes para una duración de batería durante todo el día y una conectividad LTE siempre activa. Los usuarios ahora pueden ejecutar aplicaciones como Nmap y Wireshark en una nueva generación de dispositivos como la tableta Microsoft Surface Pro X y la computadora portátil Samsung Galaxy Book Go. Seguridad adicional: Npcap se puede restringir (opcionalmente) para que solo los administradores puedan rastrear paquetes. Si un usuario que no sea administrador intenta utilizar Npcap a través de software como Nmap o Wireshark, el usuario tendrá que pasar un cuadro de diálogo de Control de cuentas de usuario (UAC) para utilizar el controlador. Esto es conceptualmente similar a UNIX, donde generalmente se requiere acceso raíz para capturar paquetes. También hemos habilitado las funciones de seguridad ASLR y DEP de Windows y hemos firmado el controlador, las DLL y los ejecutables para evitar la manipulación. Compatibilidad con WinPcap: el software escrito para WinPcap es generalmente compatible con el código fuente de WinPcap, por lo que simplemente debe volver a compilarse con el SDK de Npcap para recibir todos los beneficios de rendimiento, compatibilidad y seguridad de Npcap. De hecho, incluso existe cierta compatibilidad binaria: el software compilado con el SDK de WinPcap a menudo sigue funcionando con el Npcap moderno. Sin embargo, no sugerimos confiar en eso, ya que los compiladores y otras tecnologías de pila han cambiado drásticamente desde la última versión del SDK de WinPcap en 2013. Al portar software WinPcap heredado a Npcap, sugerimos algunos cambios menores, principalmente para garantizar que su software use Npcap en lugar de WinPcap en sistemas con ambas bibliotecas instaladas. De forma predeterminada, Npcap reemplaza cualquier instalación de software WinPcap anterior con sus propios controladores, pero puede instalar ambos desmarcando la opción de instalación "Modo compatible con WinPcap" de Npcap. Captura inalámbrica 802.11 sin procesar (modo de monitor): Npcap se puede configurar para leer tráfico 802.11 sin procesar, incluidos los detalles del encabezado de radiotap, y esta función es compatible directamente con Wireshark. Npcap ha sido creado por Gordon Lyon.
       
    • Por Dekuwa
      Rufus es una utilidad que le ayuda a formatear y crear soportes USB de arranque, como «pendrives», tarjetas de memoria, etcétera.
      Es especialmente útil en casos donde:
      necesite crear medios de instalación USB a partir de ISOs arrancables (Windows, Linux, UEFI, etc.) necesite trabajar en un equipo que no tenga un sistema operativo instalado necesite actualizar el firmware o BIOS de un ordenador desde DOS quiera ejecutar una utilidad de bajo nivel
      Uso
      Descargue el archivo ejecutable y ábralo; no es necesario instalarlo.
      El ejecutable está firmado digitalmente, y la firma debería indicar: "Akeo Consulting"
      Notas sobre la compatibilidad con DOS:
      Si crea un disco de arranque DOS y utiliza un teclado no estadounidense, Rufus intentará seleccionar una disposición de teclado a partir de la configuración regional del sistema. En ese caso, se recomienda FreeDOS, que es la opción predeterminada, ya que admite más disposiciones de teclado.
      Notas sobre la compatibilidad con ISO:
      Todas las versiones de Rufus a partir de v1.1.0 permiten crear soportes USB de arranque a partir de una imagen ISO (.iso).
      Es muy fácil crear una imagen ISO a partir de un disco físico o de un conjunto de archivos, con el uso de una aplicación de grabación de CD, como CDBurnerXP o ImgBurn.
      by Pete Batard.
×
×
  • Crear nuevo...