README_ES.md (view raw)
1mGBA
2====
3
4mGBA es un emulador para juegos de Game Boy Advance. Su objetivo es ser más rápido y más preciso que muchos emuladores de Game Boy Advance existentes, además de añadir funciones que otros emuladores no tienen. También es compatible con juegos de Game Boy y Game Boy Color.
5
6Las noticias actualizadas y las descargas se encuentran en [mgba.io](https://mgba.io/).
7
8[![Estado de la compilación](https://travis-ci.org/mgba-emu/mgba.svg?branch=master)](https://travis-ci.org/mgba-emu/mgba)
9[![Estado de la traducción](https://hosted.weblate.org/widgets/mgba/-/svg-badge.svg)](https://hosted.weblate.org/engage/mgba)
10
11Características
12--------
13
14- Soporte de hardware Game Boy Advance altamente preciso[<sup>[1]</sup>](#missing).
15- Soporte de hardware Game Boy/Game Boy Color.
16- Emulación rápida. Corre a velocidad completa en hardware de gama baja, como los netbooks.
17- Interfaz gráfica en SDL y Qt.
18- Soporte para cable de enlace (link cable) local (en la misma computadora).
19- Detección de tipos de guardado, incluso para tamaños de memoria flash[<sup>[2]</sup>](#flashdetect).
20- Soporte para cartuchos con sensores de movimiento y vibración (solo usable con mandos).
21- Soporte para reloj en tiempo real, incluso sin configuración.
22- Soporte para sensor solar, para juegos Boktai.
23- Soporta la Cámara y la Impresora Game Boy.
24- Implementación interna de BIOS, y opción para usar una BIOS externa.
25- Modo turbo/avance rápido al mantener Tab presionado.
26- Retroceder al presionar "`".
27- Salto de cuadros de hasta 10 cuadros por vez.
28- Captura de pantalla (pantallazo).
29- Soporta códigos de truco.
30- 9 espacios para estados de guardado. Estos tambien pueden ser vistos como pantallazos.
31- Grabación de video, GIF, WebP, y APNG.
32- Soporte para e-Reader.
33- Controles modificables para teclado y mandos.
34- Cargar desde archivos ZIP y 7z.
35- Soporta parches IPS, UPS y BPS.
36- Depuración de juegos a través de una interfaz de línea de comandos y soporte remoto GDB, compatible con IDA Pro.
37- Retroceso configurable.
38- Soporte para cargar y exportar instantáneas de GameShark y Action Replay.
39- Núcleos disponibles para RetroArch/Libretro y OpenEmu.
40- Traducciones de la comunidad a través de [Weblate](https://hosted.weblate.org/engage/mgba).
41- Otras cosas más pequeñas.
42
43#### Mappers (controladores de memoria) soportados
44
45Estos mappers tienen soporte completo:
46
47- MBC1
48- MBC1M
49- MBC2
50- MBC3
51- MBC3+RTC
52- MBC5
53- MBC5+Rumble
54- MBC7
55- Wisdom Tree (sin licencia)
56- Pokémon Jade/Diamond (sin licencia)
57- BBD (sin licencia, similar a MBC5)
58- Hitek (sin licencia, similar a MBC5)
59
60Estos mappers tienen soporte parcial:
61
62- MBC6 (sin soporte para escribir a la memoria flash)
63- MMM01
64- Pocket Cam
65- TAMA5 (sin soporte para RTC)
66- HuC-1 (sin soporte para IR)
67- HuC-3 (sin soporte para RTC e IR)
68
69### Características planeadas
70
71- Soporte para cable de enlace por red.
72- Soporte para cable de enlace por Joybus para Dolphin.
73- Mezcla de audio MP2k, para mayor calidad de sonido.
74- Soporte de regrabación para speedruns asistidos por herramientas (TAS).
75- Soporte de Lua para prog.
76- Un completo paquete de depuración.
77- Compatibilidad con adaptadores inalámbricos.
78
79Plataformas soportadas
80-------------------
81
82- Windows Vista o más reciente
83- OS X 10.8 (Mountain Lion)[<sup>[3]</sup>](#osxver) o más reciente
84- Linux
85- FreeBSD
86- Nintendo 3DS
87- Nintendo Switch
88- Wii
89- PlayStation Vita
90
91Otras plataformas Unix-like, como OpenBSD, funcionan también, pero no han sido probadas.
92
93### Requisitos de sistema
94
95Los requisitos son mínimos. Cualquier computadora que pueda ejecutar Windows Vista o más reciente debería ser capaz de emular. También se requiere soporte para OpenGL 1.1 o más reciente, con OpenGL 3.2 o más reciente para los shaders y las funciones avanzadas.
96
97Descargas
98---------
99
100Las descargas se pueden encontrar en la página web oficial, en la sección [Descargas][downloads]. El código fuente se puede encontrar en [GitHub][source].
101
102Controles
103--------
104
105Los controles son configurables en el menú de configuración. Many game controllers should be automatically mapped by default. The default keyboard controls are as follows:
106
107- **A**: X
108- **B**: Z
109- **L**: A
110- **R**: S
111- **Start**: Entrar
112- **Select**: Retroceso
113
114Compilar
115---------
116
117La compilación requiere el uso de CMake 3.1 o más reciente. GCC y Clang funcionan para compilar mGBA, pero Visual Studio 2013 y posteriores no funcionan. El soporte para Visual Studio 2015 y más recientes llegará pronto.
118
119#### Compilación por Docker
120
121Recomendamos usar Docker para compilar en la mayoría de las plataformas. Proporcionamos varias imágenes Docker que contienen la cadena de herramientas y las dependencias necesarias para compilar mGBA a través de varias plataformas.
122
123Para usar una imagen Docker para compilar mGBA, ejecuta este comando mientras estés en el directorio donde hayas desplegado (checkout) el código fuente de mGBA:
124
125 docker run --rm -t -v $PWD:/home/mgba/src mgba/windows:w32
126
127Esto producirá un directorio `build-win32` con los ejecutables compilados. Reemplaza `mgba/windows:w32` con otro nombre de imagen Docker para otras plataformas, lo cual creará un directorio correspondiente. Las siguientes imágenes están disponibles en Docker Hub:
128
129- mgba/3ds
130- mgba/switch
131- mgba/ubuntu:xenial
132- mgba/ubuntu:bionic
133- mgba/ubuntu:focal
134- mgba/ubuntu:groovy
135- mgba/vita
136- mgba/wii
137- mgba/windows:w32
138- mgba/windows:w64
139
140#### Compilación en *nix
141
142Si quieres usar CMake para compilar mGBA en un sistema Unix-like, recomendamos los siguientes comandos:
143
144 mkdir build
145 cd build
146 cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
147 make
148 sudo make install
149
150Esto compilará e instalará mGBA en `/usr/bin` y `/usr/lib`. Las dependencias que estén instaladas serán detectadas automáticamente, y las características que estén desactivadas si las dependencias no se encuentran serán mostradas después de que el comando `cmake` muestre las advertencias.
151
152Si estás en macOS, los pasos son un poco diferentes. Asumiendo que usas el gestor de paquetes Homebrew, los comandos recomendados para obtener las dependencias y compilar mGBA son:
153
154 brew install cmake ffmpeg libzip qt5 sdl2 libedit pkg-config
155 mkdir build
156 cd build
157 cmake -DCMAKE_PREFIX_PATH=`brew --prefix qt5` ..
158 make
159
160Toma nota de que no debes usar `make install` en macOS, ya que no funcionará correctamente.
161
162#### Compilación en Windows para desarrolladores
163
164##### MSYS2
165
166Para desarrollar en Windows, recomendamos MSYS2. Sigue las instrucciones en su [sitio web](https://msys2.github.io). Asegúrate de que estés ejecutando la versión de 32 bits ("MSYS2 MinGW 32-bit") (o la versión de 64 bits "MSYS2 MinGW 64-bit" si quieres compilar para x86_64) y ejecuta estos comandos adicionales para instalar las dependencias necesarias (toma nota de que esto descargará más de 1100 MB en paquetes, así que puede demorarse un poco):
167
168 pacman -Sy --needed base-devel git ${MINGW_PACKAGE_PREFIX}-{cmake,ffmpeg,gcc,gdb,libelf,libepoxy,libzip,pkgconf,qt5,SDL2,ntldd-git}
169
170Despliega (haz check out en) el código fuente ejecutando este comando:
171
172 git clone https://github.com/mgba-emu/mgba.git
173
174Luego, compílalo usando estos comandos:
175
176 mkdir -p mgba/build
177 cd mgba/build
178 cmake .. -G "MSYS Makefiles"
179 make -j$(nproc --ignore=1)
180
181Ten en cuenta de que esta versión de mGBA para Windows no es adecuada para distribuirse, debido a la dispersión de las DLL que necesita para funcionar, pero es perfecta para el desarrollo. Sin embargo, si quieres distribuir tal compilación (por ejemplo, para pruebas en máquinas que no tienen el entorno MSYS2 instalado), al ejecutar `cpack -G ZIP` se preparará un archivo zip con todas las DLLs necesarias.
182
183##### Visual Studio
184
185Construir usando Visual Studio requiere una configuración igualmente complicada. Para empezar, necesitarás instalar [vcpkg](https://github.com/Microsoft/vcpkg). Después de instalar vcpkg necesitarás instalar varios paquetes adicionales:
186
187 vcpkg install ffmpeg[vpx,x264] libepoxy libpng libzip sdl2 sqlite3
188
189Toma nota de que esta instalación no soportará la codificación de video acelerada por hardware en Nvidia. Si te preocupa esto, necesitarás instalar CUDA, y luego sustituir `ffmpeg[vpx,x264,nvcodec]` en el comando anterior.
190
191También necesitarás instalar Qt. Desafortunadamente, debido a que Qt pertenece y es administrado por una empresa en problemas en lugar de una organización razonable, ya no existe un instalador de la edición de código abierto sin conexión para la última versión, por lo que deberás recurrir a un [instalador de una versión anterior](https://download.qt.io/official_releases/qt/5.12/5.12.9/qt-opensource-windows-x86-5.12.9.exe) (que quiere que crees una cuenta que de otro modo sería inútil, pero puedes omitir esto al configurar temporalmente un proxy inválido o deshabilitar la red), usa el instalador en línea (que requiere una cuenta de todos modos) o usa vcpkg para construirlo (lentamente). Ninguna de estas son buenas opciones. Si usas el instalador, querrás instalar las versiones de MSVC correspondientes. Ten en cuenta que los instaladores sin conexión no son compatibles con MSVC 2019. Para vcpkg, querrás instalarlo así, lo que llevará bastante tiempo, especialmente en computadoras de cuatro núcleos o menos:
192
193 vcpkg install qt5-base qt5-multimedia
194
195Luego, abre Visual Studio, selecciona Clonar repositorio, e ingresa `https://github.com/mgba-emu/mgba.git`. Cuando Visual Studio termine de clonar, ve a Archivo > CMake y abre el archivo CMakeLists.txt en la raíz del repositorio desplegado. Desde allí, puedes trabajar en MGBA en Visual Studio de manera similar a otros proyectos CMake de Visual Studio.
196
197#### Compilación con cadenas de herramientas (toolchain)
198
199Si tienes devkitARM (para 3DS), devkitPPC (para Wii), devkitA64 (para Switch), o vitasdk (para PS Vita), puedes usar los siguientes comandos para compilar:
200
201 mkdir build
202 cd build
203 cmake -DCMAKE_TOOLCHAIN_FILE=../src/platform/3ds/CMakeToolchain.txt ..
204 make
205
206Reemplaza el parámetro `-DCMAKE_TOOLCHAIN_FILE` para las plataformas:
207
208- 3DS: `../src/platform/3ds/CMakeToolchain.txt`
209- Switch: `../src/platform/switch/CMakeToolchain.txt`
210- Vita: `../src/platform/psp2/CMakeToolchain.vitasdk`
211- Wii: `../src/platform/wii/CMakeToolchain.txt`
212
213### Dependencies
214
215mGBA no tiene dependencias duras, sin embargo, se requieren las siguientes dependencias opcionales para características específicas. Las características se desactivarán si no se pueden encontrar las dependencias.
216
217- Qt 5: para la interfaz gráfica. Qt Multimedia o SDL se requieren para el audio.
218- SDL: para un frontend más básico y soporte de gamepad en el frontend de Qt. Se recomienda SDL 2, pero se admite 1.2.
219- zlib y libpng: para soporte de capturas de pantalla y soporte de estados de guardado embebidos en PNG.
220- libedit: para soporte del depurador de línea de comandos.
221- ffmpeg o libav: para grabación de video, GIF, WebP y APNG.
222- libzip o zlib: para cargar ROMs almacenadas en archivos zip.
223- SQLite3: para la bases de datos de juegos.
224- libelf: para cargar ELF.
225
226SQLite3, libpng y zlib están incluidos en el emulador, por lo que no necesitan ser compilados externamente primero.
227
228Notas a pie
229---------
230
231<a name="missing">[1]</a> Las características faltantes actualmente son
232
233- OBJ window para los modos 3, 4 y 5 ([Bug #5](http://mgba.io/b/5))
234
235<a name="flashdetect">[2]</a> La detección del tamaño de la memoria flash no funciona en algunos casos. Se pueden configurar en tiempo de ejecución, pero se recomienda ingresar un bug si se encuentra un caso así.
236
237<a name="osxver">[3]</a> 10.8 sólo se necesita para la versión con Qt. Puede ser posible compilar o hacer funcionar la versión Qt en 10.7 o versiones más antigas, pero esto no está oficialmente soportado. La versión SDL funciona en 10.5, y puede funcionar en versiones anteriores.
238
239[downloads]: http://mgba.io/downloads.html
240[source]: https://github.com/mgba-emu/mgba/
241
242Copyright
243---------
244
245mGBA es Copyright © 2013 – 2021 Jeffrey Pfau. Es distribuído bajo la [licencia pública de Mozilla (Mozilla Public License) version 2.0](https://www.mozilla.org/MPL/2.0/). Una copia de la licencia está disponible en el archivo LICENSE.
246
247mGBA contiene las siguientes bibliotecas de terceros:
248
249- [inih](https://github.com/benhoyt/inih), que es copyright © 2009 - 2020 Ben Hoyt y se utiliza bajo licencia de la cláusula 3 de BSD.
250- [blip-buf](https://code.google.com/archive/p/blip-buf), que es copyright © 2003 - 2009 Shay Green y se usa bajo LGPL.
251- [LZMA SDK](http://www.7-zip.org/sdk.html), la cual está en el dominio público.
252- [MurmurHash3](https://github.com/aappleby/smhasher), implementación por Austin Appleby, la cual está en el dominio público.
253- [getopt for MSVC](https://github.com/skandhurkat/Getopt-for-Visual-Studio/), la cual está en el dominio público.
254- [SQLite3](https://www.sqlite.org), la cual está en el dominio público.
255
256Si usted es un editor de juegos y desea obtener una licencia de mGBA para uso comercial, por favor envíe un correo electrónico a [licensing@mgba.io](mailto:licensing@mgba.io) para obtener más información.