Game - Watch Super Mario!

Lo que tienes que parchear es el FW tuyo original, el que obtuviste con los scripts.
Lo que te genera el retroGo es solo para flashear, o bien directamente con el “make flash” que ya has hecho, o bien en la dirección que corresponda, tal como puse mas arriba, para mantener OFW.
Eso si, antes de compilar el retroGo para poder mantener OFW, tienes que cambiar ciertas líneas (en el mismo post de arriba), para después compilar y flashear en ls direcciones indicadas.
Si, los backups originales, pero no me deja parchear, me salta cartelito de firmware incorrecto.
Solo tienes que parchear el HEX o BIN de la interna, no el de la externa.
mira, lo tengo asi,
Imagen

no entiendo nada XD
Mmm es raruno. Luego pruebo en casa a ver si me pasa a mi, hace varios meses que no lo he vuelto a hacer. Que versión usas del patcher? la mia la 1.3.1
Comprueba que el fw es válido, haciendo el restore del script 5.
Prueba tambien a indicar la dir 08100000 en firmware 1, y borrar la del filesystem 2.

Usando:

stock firmware + retro-go
08000000 => stock firmware, interno
08100000 => retro-go "internal flash" bin
90000000 => data for stock firmware, externo
90100000 => retro-go "external flash" bin

Modificación de RetroGo antes de compilar

Editando:
He probado de las dos maneras y de las dos me funciona con mi "internal_flash_backup.bin", en ambas configuraciones. (usaré la segunda):

Imagen
Imagen

He probado a hacerlo con una versión mal dumpeada y me da el mismo fallo, a sí que tu imagen no debe ser correcta.
Comprueba que es la que tiene que ser, saca el HASH del backUp interno, la mia es:
B675FA9C2DA9FB51F5811225539B6337


debería salirte similar.
Para sacar el HASH en Windows a través del powershell:
filehash internal_flash_backup.bin -Algorithm MD5
, o como se llame tu archivo.
en Linux
md5sum NOMBREARCHIVO.bin
Buenas, gracias por toda la info.
A ver, acabo de hacer lo del powershell, y me sale el siguiente hash:
C91E4B4E3829A61F0A92781AA331EDA3

Igual si que esta mal dumpeada, pero si fuera asi no me hubiera dejado hacer restore, no? me hubiera quedado sin firmware, o no tiene nada que ver?

Vuelvo a hacer el paso 3?
Vuelve a hacerlo, lo mismo tiene alguna variación minúscula, eso hace que el hash no sea igual y te la desheche.
neohroot escribió:Vuelve a hacerlo, lo mismo tiene alguna variación minúscula, eso hace que el hash no sea igual y te la desheche.


[facepalm] pues ahora si que tengo un problema.
he parcheado la "internal_flash_backup.bin", subida a la g&w y cuando he encendido me ha salido el Mario, abajo me ponia Time y a cada lado como unos codigos qr. Le dado al comando para entrar en el retro-go podia acceder a todo menos al launcher. He vuelto al menu y cuando le dado al time se me ha apagado.
Pues ahora no enciende, ni con cable ni con la bateria.

edit1: Salvada. No enciende la pantalla pero si recibe corriente. He hecho un restore y cargado el firm original.

edit2: Ahora que está con el firm original, desde que paso vuelvo a volcar el retrogo? siguiendo tu script @pjexposito
Dave&Fran escribió:
neohroot escribió:Vuelve a hacerlo, lo mismo tiene alguna variación minúscula, eso hace que el hash no sea igual y te la desheche.


[facepalm] pues ahora si que tengo un problema.
he parcheado la "internal_flash_backup.bin", subida a la g&w y cuando he encendido me ha salido el Mario, abajo me ponia Time y a cada lado como unos codigos qr. Le dado al comando para entrar en el retro-go podia acceder a todo menos al launcher. He vuelto al menu y cuando le dado al time se me ha apagado.
Pues ahora no enciende, ni con cable ni con la bateria.

edit1: Salvada. No enciende la pantalla pero si recibe corriente. He hecho un restore y cargado el firm original.

edit2: Ahora que está con el firm original, desde que paso vuelvo a volcar el retrogo? siguiendo tu script @pjexposito


Pues como lo tienes todo instalado, tan sólo entra en la carpeta de retro-go

cd ~/opt/game-and-watch-flashloader


y luego ya flashea
make flash


Con eso debería ser suficiente.
Buenos dias,
pues no deja, me da una serie de errores, debe ser por haber modificado las lineas en el retrogo no?

make[1]: Entering directory '/home/dave/opt/game-and-watch-retro-go'
[ BASH ] Checking for updated roms
Entering 'LCD-Game-Emulator'
Entering 'retro-go-stm32'
[ LD ] gw_retro_go.elf
/home/dave/opt/gcc-arm-none-eabi-10-2020-q4-major/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: build/core/main.o: in function `store_erase':
/home/dave/opt/game-and-watch-retro-go/Core/Src/main.c:226: undefined reference to `__EXTFLASH_REAL__'
/home/dave/opt/gcc-arm-none-eabi-10-2020-q4-major/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: build/core/main.o: in function `store_save':
/home/dave/opt/game-and-watch-retro-go/Core/Src/main.c:266: undefined reference to `__EXTFLASH_REAL__'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile.common:366: build/gw_retro_go.elf] Error 1
make[1]: Leaving directory '/home/dave/opt/game-and-watch-retro-go'
make: *** [Makefile.common:433: flash] Error 2
Revisa muy bien las
Instrucciones de Macohime, seguramente te falte algo, o alguna carácter equivocado (espacios, guiones, etc)
Lo mismo la línea
extern uint8_t __EXTFLASH_REAL__;

Mal escrita o te falta?
Fíjate donde se queja que no esta definido, lineas 226 y 266 del main.c, no encuentra la definición de __EXTFLASH_REAL__, fijate en el numero de guiones bajos.
Además, trata de usar algún editor de textos como Notepad++ o incluso nano si estás en linux. A veces algunos editores de PC meten saltos de línea raros que se cargan los archivos.

Ya irás informando.
Pues como me seguia dando errores, he vuelto a instalar de 0, y ahora, antes de pasar la carpeta roms, al hacer,
cd ~/opt/game-and-watch-flashloader
make

me sale esto,
[ WGET ] stm32h7xx_hal.h
make: *** [Makefile:260: Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal.h] Error 4

he reinstalado drivers de stlink pero nada.

Vaya dolores de cabeza me esta dando la consolita.
Parece que por fin han añadido el emulador de Game and Watch a la rama principal del Retro-go de kbeckmann.

Así que ahora ya tenemos las últimas novedades (el nuevo OSD está muy chulo) y encima el emu de LCD. ¡A actualizar!

Edito:

Compilado sin problemas:

Imagen

Por cierto, recordad actualizar el repositorio y los submódulos para que todo funcione bien:

git reset --hard
git submodule update --init --recursive
git reset --hard
make -j8 flash
@pjexposito
[beer] bien!
Llevo unos dias desconectado, y estaba deseando que hicieran el merge al fin! Me daba mucha pereza ponerme a hacerlo a mano.
Ahora solo falta que faciliten la integración con el patcher de Tim
Edito: han añadido la etiqueta EXTFLASH_OFFSET para esto, lo probaré.
kbeckmann:

I've added read only support for the spansion (256k erase) flashes now in the flashapp branch. It's a bit messy but you can build and run like this

`make EXTFLASH_OFFSET=262144 EXTFLASH_SIZE_MB=63 CFLAGS_EXTRA=-DDISABLE_STORE=1 -j flash`

i added a variable `EXTFLASH_OFFSET` to be able to place data in the external flash at an offset. this is useful for people who want to dual boot, but also if you need to keep the first X bytes untouched.
`EXTFLASH_SIZE_MB` is a new variable that lets you specify the size in megabytes, makes stuff more readable.
`CFLAGS_EXTRA=-DDISABLE_STORE=1` tells the code to not save anything. this works around the large erase size by just disabling it altogether.


Entiendo que con esto no hace falta las modificaciones manuales de Maco en el código.
En cuanto pueda pruebo.
Gracias por el aviso!
@Dave&Fran que tal llevas lo tuyo?


Probado y hay un problema con el sonido con las roms de G&W, apunto de solucionarse en el repo principal.
Muy buenas chicos, @neohroot @pjexposito
pues justo ahora he acabado de volver a instalar para cargar el retro-go en la consola y por lo que parece al volver a bajar retrogo ya me ha cargado la última versión, ahora aparece la carpeta lcd-game emulator y dentro de roms la de GW.
Podeis explicar un poco en que consiste esta actualización? Que seria convertiendo las roms de g&w y pasarlas directamente a la carpeta GW de retrogo y flashear? o me flipado un poco XD
Esta actualización integra lo último del repo principal con el emu de G&W, añade overlays para ver control de volumen y brillo, combinacion de botones(pause/set + OTROS) para ajuste rápido de velocidad en emulacion, volumen, brillo, carga y save, apagado sin save, etc.
También hace que salte al encender la ultima rom en el mismo estado en el que la dejaste al apagar (igual que hace el FW oficial).
Si, pon las ROMS de G&W convertidas en su carpeta, compilar y listo! Pero mira lo que pongo mas abajo…
Aún queda integrarlo con el FW origina, para tener dual FW, tengo que probarlo.


Por cierto solucionado lo del sonido distorsionado y lentitud en juegos G&W tras la última actualización(temporalmente):
Cambiar p=0 a p=1 de 'for(uint8_t p = 1; p < common_emu_state.pause_frames + 1; p++)' en Core/Src/porting/gw/main_g.c.
Asi te permite seguir seleccionando la velocidad de emulación a la vez que arregla el tema.
Buenos dias,
jajaja porqué no me funciona nunca nada? [buuuaaaa]
Si arranco el lcd game converter me sale: ImageMagick initialization failed.
Sabeis porque puede ser? Tengo instalado el imagemagick, he descargado el lz4_win32_v1_9_3, y colocado el msys-lz4-1.dll descomprimido donde esta el ejecutable del lcd game converter.

Thx
Dave&Fran escribió:Buenos dias,
jajaja porqué no me funciona nunca nada? [buuuaaaa]
Si arranco el lcd game converter me sale: ImageMagick initialization failed.
Sabeis porque puede ser? Tengo instalado el imagemagick, he descargado el lz4_win32_v1_9_3, y colocado el msys-lz4-1.dll descomprimido donde esta el ejecutable del lcd game converter.

Thx


¿Tienes la ruta del imagemagick en el path del sistema?

En Mac lo solucioné añadiendo esto:

export INKSCAPE_PATH=/Applications/Inkscape.app/Contents/MacOS/inkscape


Desde Windows no lo he probado pero supongo que será similar. De todas formas cuando llegue a casa lo pruebo en un Windows y te digo.
Cuidado, estas usando el converter de Tim?
Ese ya no se usa, que además está muy limitado.
Tienes que utilizar el LCD Game Shrinker de @bzhxx
( éste usa InkScape)
Acabo de instalar todo en Windows (suelo usar Linux o Mac y en Windows he tenido que instalar hasta Python :p) y ya se qué falla. Debes ejecutar esto antes de iniciar el script:

set INKSCAPE_PATH="C:\Program Files\Inkscape\bin\inkscape.exe"


De esta forma le dices al script dónde está instalado Inkscape. Suerte!


Edito: Resulta que haciendo lo que te he puesto arriba no funciona. Hay que hacer alguna cosa más:

-Descarga Inkscape en formato comprimido. No el instalador. Descomprime el archivo en el escritorio, por ejemplo. Luego, pon la orden que he puesto arriba pero apuntando al archivo del escritorio. Por ejemplo:

set INKSCAPE_PATH=c:\Users\pjexp\Desktop\inkscape\bin\inkscape.exe


Ponlo a pelo, sin comillas ni nada.
Hay un problema si lo haces desde el instalador ya que los permisos de Windows no te dejan ejecutar correctamente el Inkscape y da error.


-Luego, descarga el LZ4, de nuevo descomprime en el Escritorio y ejecuta algo parecido a esto:

set LZ4_PATH=c:\Users\pjexp\Desktop\lz4_win64_v1_9_3\lz4.exe 


Y recuerda instalar las dependencias de Python entrando en la carpeta del script y ejecutando:

pip install -r requirements.txt


Con eso debería funcionar.

La verdad es que es un lío ejecutar estos scripts en Windows. Yo te recomiendo que instales WSL en Windows y lo hagas todo desde la consola de Linux; aunque igual son manías.
Definitivamente Linux es mejor para esto, dejando solo Windows para flashear con los loaders y el método de TIM con el FW parcheado. Aunque pra esto yo también uso linux, de diferente manera.
Mírate lo del shrinker, no el SW convertidor de TIM, por si acaso.
No recomendaría WSL, ya que puedes tener problemas para usar el USB y el ST-Link, ni si quiera con WSL2, lo mismo te va o lo lismo te presenta problemas, mejor evítalo. Si alguien lo ha usado con USB passthrough que comente…
Casi mejor un VirtualBox o un VMWare de pago, creo que el VMWare Player no puede pero no estoy seguro, o mejor aún Linux nativo.
Madre mia es que estais a otro nivel, a ver:
desde vmware y siguiendo la guia de DNA64 he hecho lo siguiente,

sudo apt-get update
sudo apt-get upgrade
sudo apt install git
git clone https://github.com/bzhxx/LCD-Game-Shrinker
sudo apt install python3-pip
cd LCD-Game-Shrinker
python3 -m pip install -r requirements.txt
sudo add-apt-repository ppa:inkscape.dev/stable-1.1
sudo apt-get update
sudo apt install inkscape

he colocado el art y la rom en:
lcd-games/LCD-Game-Shrinker/input/artwork/
lcd-games/LCD-Game-Shrinker/input/rom/

python3 shrink_it.py


Ahora he pasado el archivo que te crea a la carpeta de GW dentro de roms del retro-go pero lo que no me queda claro son los pasos desde donde he de arrancar para añadir o quitar roms de nes por ejemplo o en este caso agregar la de GW?
entiendo que:
cd ~/opt/game-and-watch-retro-go
make -j8 flash

si hago eso me devuelve error.
Cada vez que añadas o elimnes algo tienes que compilar todo de nuevo con las roms en cada sitio, por lo tanto primero siempre:
make clean

Luego yo lo suelo meter en un “do.sh”:
export ADAPTER=stlink
export OPENOCD="/opt/openocd-git/bin/openocd"
export PATH=$PATH:/opt/gcc-arm-none-eabi-10-2020-q4-major/bin/
make clean
make -j4 LARGE_FLASH=1 flash
cd ../game-and-watch-flashloader
/opt/openocd-git/bin/openocd -f interface_stlink.cfg -c "init; mww 0x5C001004 0x00000000; exit"
cd ../game-and-watch-retro-go


El “-j4” , 4 especifica los cores de tu PC


Que error te tira?
[oki] ya esta, era lo de make clean.
Lo que algo se me escapa porque me ha flasheado con las mismas roms, no me aparece la de gw. Que me dejado?

Edit: melon que soy, es apretando la flecha izquierda y me sale la rom de g&w [beer]
Las ROMs que has transformado las tienes que pasar de la carpeta output del script a la carpeta ROMs/gw del retro-go. Y recuerda actualizar a la última versión del emulador, dado que el soporte para gw lo añadieron hace un par de días.
pjexposito escribió:Las ROMs que has transformado las tienes que pasar de la carpeta output del script a la carpeta ROMs/gw del retro-go. Y recuerda actualizar a la última versión del emulador, dado que el soporte para gw lo añadieron hace un par de días.


Si si, ya estaba, era lo de la flecha.
Una pregunta, con lo de las pantallas divididas de algunas g&w hay que hacer algo especial?
No, nada. El emulador te monta las dos pantallas, una encima de otra.
Por cierto! Para las pantallas divididas se puede hacer que giren en vertical y la relacion de aspecto ya es (casi) 1:1 al original. Hay que definirlo en el script python del shrinker.
Yo personalmente prefiero horizontal, algunas se hace raro jugar de ese modo.
Por fin!!!!!!!!!!!! [beer]

Imagen

Imagen

Imagen

Ahora acabo de cerrarla, al final no quiero mas lios y la he dejado solo con el retro-go sin el stock firmware, las 6 roms de nes indispensables y con todas las de g&w que eran las que me interesaban.
Vaya semanitas que me ha dado la consola!
Gracias eso si a @neohroot y @pjexposito [tadoramo] por vuestra paciencia y currazos que os habeis pegado.

De todos modos sigo por aqui [oki]
Notas el sonido de l G&W raro? Y el donkey kong, p.e., lento?
Si no, es que debes haber bajado la última revisión hoy mismo y lo habrán corregido.
Dave&Fran escribió:Por fin!!!!!!!!!!!! [beer]

Imagen

Imagen

Imagen

Ahora acabo de cerrarla, al final no quiero mas lios y la he dejado solo con el retro-go sin el stock firmware, las 6 roms de nes indispensables y con todas las de g&w que eran las que me interesaban.
Vaya semanitas que me ha dado la consola!
Gracias eso si a @neohroot y @pjexposito [tadoramo] por vuestra paciencia y currazos que os habeis pegado.

De todos modos sigo por aqui [oki]


Genial. Yo me la compré para cacharrear y la verdad es que ha sido divertido. Por cierto, de dónde compraste la memoria? He leído que las de AliExpress suelen fallar.
Pues no he notado nada raro ni en el sonido ni en la lentitud en el dk, de momento no lo he probado muy a fondo.
Si, la memoria es de aliexpress, la compré en abril.
@pjexposito
La mia también es de ali y perfecta. Puse otra tambien de ali y ok.
Ahira estoy pensando en pillar la de 64GB (edit: 64MB) que la tienen de stock en farnell, aunque los pedidos estan parados en la aduana alemana hasta que se aclare lo del tema del IVA:
MX25U51245GZ4I00
Uff, esa es smc. Si ya me da respeto la normal, no me quiero imaginar lo chungo que debe ser soldar eso.

Igual al final me pido la pequeña a AliExpress a ver qué tal.
neohroot escribió:@pjexposito
La mia también es de ali y perfecta. Puse otra tambien de ali y ok.
Ahira estoy pensando en pillar la de 64GB que la tienen de stock en farnell, aunque los pedidos estan parados en la aduana alemana hasta que se aclare lo del tema del IVA:
MX25U51245GZ4I00

64GB!!!!!!! que quieres instalar windows?!! [qmparto]
Una surface!
El tema es que con 64GB te entra un montón de todos los emus soportados, seguro que todo el romset de GB, GBC, NES, G&W, GG y MasterSystem, y hasta lo mismo de PCE, pero seria una locura tener cientos de líneas y navegar por ellas…
De todas formas queria decir 64MB! [carcajad]
neohroot escribió:Mmm es raruno. Luego pruebo en casa a ver si me pasa a mi, hace varios meses que no lo he vuelto a hacer. Que versión usas del patcher? la mia la 1.3.1
Comprueba que el fw es válido, haciendo el restore del script 5.
Prueba tambien a indicar la dir 08100000 en firmware 1, y borrar la del filesystem 2.

Usando:

stock firmware + retro-go
08000000 => stock firmware, interno
08100000 => retro-go "internal flash" bin
90000000 => data for stock firmware, externo
90100000 => retro-go "external flash" bin

Modificación de RetroGo antes de compilar

Editando:
He probado de las dos maneras y de las dos me funciona con mi "internal_flash_backup.bin", en ambas configuraciones. (usaré la segunda):

Imagen
Imagen

He probado a hacerlo con una versión mal dumpeada y me da el mismo fallo, a sí que tu imagen no debe ser correcta.
Comprueba que es la que tiene que ser, saca el HASH del backUp interno, la mia es:
B675FA9C2DA9FB51F5811225539B6337


debería salirte similar.
Para sacar el HASH en Windows a través del powershell:
filehash internal_flash_backup.bin -Algorithm MD5
, o como se llame tu archivo.
en Linux
md5sum NOMBREARCHIVO.bin


Ahora que tengo tiempo y viendo que el retro-go de kbeckmann ya incluye el g&w, creo que me voy a animar a meter el stock y el retro-go, pero no me queda claro, a ver si me lo aclarais.

Por un lado generas el fichero del retro-go en linux, con todos los emuladores y juegos que quieras, pero ahora con la nueva versión del retro-go, los ficheros que se modifican en la guia de Maco, difieren un poco, por lo que ya no se como se tiene que hacer. ¿Vosotros como lo hacies?

Después en Windows, parcheas el firm original, con las posiciones de memoria que indicas (como la primera imagen, no? Con lo de la segunda captura, ¿ haces lo mismo ?).

Muchas gracias,
Shark
Aquí tienes como hacerlo con los últimos cambios. No tienes que parchear ya nada a mano con las instrucciones de Macohime, sigue la guía.
De todas formas como puede llegar a parecer confuso, lo vamos comentando. Voy a probar yo en un hueco a ver que tal con el nuevo método.

En el ejemplo usan una de 64MB, nosotros que usamos la de 16, la única diferencia es que en en lugar de indicar 63MB, indicas 15MB:
make clean
make -j8 EXTFLASH_SIZE_MB=15 EXTFLASH_OFFSET=1048576 INTFLASH_BANK=2


EDIT, un video mostrando funcionamiento del emulador seguro que anima a más de uno:

Las DUAL SCREEN yo no las tengo giradas, preferencias personales.
Hola @neohroot,
Yo creo que el stock no lo estoy parcheando bien, teniendo en cuenta que mi flash es de 16MB, ¿cómo tengo que poner los campos en el Stock Firmware Patcher? Así:

FileSystem 1: 90100000
FileSystem 2: 08100000
Firmware 1: 0820000


Y luego, desde windows, ejecuto:

STM32_Programmer_CLI.exe -c port=SWD -w internal_flash_backup_patched.bin 0x08000000
STM32_Programmer_CLI.exe -c port=SWD -w gw_retro_go_intflash.bin 0x08100000
STM32_Programmer_CLI.exe -c port=SWD -w flash_backup.bin 0x90000000 -el "C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin\ExternalLoader\MX25U12835F_GAME-AND-WATCH.stldr"
STM32_Programmer_CLI.exe -c port=SWD reset=HWrst -w gw_retro_go_extflash.bin 0x90100000 -el "C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin\ExternalLoader\MX25U12835F_GAME-AND-WATCH.stldr" -rst


Pero en el 3er paso ya me da error, ¿sabes si es que el stencil que uso no es el correcto para la flash de 16MB?

Muchas gracias,
Shark
A falta de probar por mi parte esto nuevo, yo diría que los filesystems no pondría nada, solo la dir. 08100000 en Firmware 1, nombre “RetroGo” o lo que quieras.
No vas a cargar ningún ELF (ejecutable), en principio, por lo que no hace falta indicar filesystems.
Solo necesitas el salto a la dir. del retroGo cuando accedas con “izq+Game+A” seleccionando la opción “RetroGo”, o como lo hayas llamado en el parcheador, osea salta a la 0x08100000.

En principio el loader es correcto, revisa las rutas.

Que error te tira?
El tercer paso es justo cuando carga el loader en FLASH/RAM para programar la flash externa usando en STM como”puente”, revisa bien.
Prueba si no con el STM32CUBEPROGRAMMER desde la versión GUI, en lugar de la CLI, navega por las pestañas laterales a la izquierda, indica las direcciones a la hora de programar la flash interna, y luego usa la pestaña de más abajo para cargar el loader y programar la flash externa.
Ahora no estoy en casa a si que no puedo ponerte ni capturas ni video.
neohroot escribió:A falta de probar por mi parte esto nuevo, yo diría que los filesystems no pondría nada, solo la dir. 08100000 en Firmware 1, nombre “RetroGo” o lo que quieras.
No vas a cargar ningún ELF (ejecutable), en principio, por lo que no hace falta indicar filesystems.
Solo necesitas el salto a la dir. del retroGo cuando accedas con “izq+Game+A” seleccionando la opción “RetroGo”, o como lo hayas llamado en el parcheador, osea salta a la 0x08100000.

En principio el loader es correcto, revisa las rutas.

Que error te tira?
El tercer paso es justo cuando carga el loader en FLASH/RAM para programar la flash externa usando en STM como”puente”, revisa bien.
Prueba si no con el STM32CUBEPROGRAMMER desde la versión GUI, en lugar de la CLI, navega por las pestañas laterales a la izquierda, indica las direcciones a la hora de programar la flash interna, y luego usa la pestaña de más abajo para cargar el loader y programar la flash externa.
Ahora no estoy en casa a si que no puedo ponerte ni capturas ni video.


Este es el error que me da en el paso 3:

Imagen

Muchas gracias,
Shark
neohroot escribió:Aquí tienes como hacerlo con los últimos cambios. No tienes que parchear ya nada a mano con las instrucciones de Macohime, sigue la guía.
De todas formas como puede llegar a parecer confuso, lo vamos comentando. Voy a probar yo en un hueco a ver que tal con el nuevo método.

En el ejemplo usan una de 64MB, nosotros que usamos la de 16, la única diferencia es que en en lugar de indicar 63MB, indicas 15MB:
make clean
make -j8 EXTFLASH_SIZE_MB=15 EXTFLASH_OFFSET=1048576 INTFLASH_BANK=2


EDIT, un video mostrando funcionamiento del emulador seguro que anima a más de uno:

Las DUAL SCREEN yo no las tengo giradas, preferencias personales.


Está genial!!
Pues ya tengo funcionando retroGo en ultima revisión con OFW, pero hay un problema, no salva savestates ni de nes ni de G&W, por el momento, a no ser que yo esté haciendo algo mal, esperar a que se solucione.
Lo he flasheado todo desde la GUI del Programmer, siendo todo El proceso OK, para 4 ficheros BIN: OWF interna y externa y retroGo interna y externa.


Lo importante es que una vez flasheado el OFW, ya se puede dejar tal cual e irse a linux, para compilar y flashear con el openOCD modificado, asi cada vez que flashee, lo hará donde debe hacerlo, en 0x08100000 y 0x90100000, sin volver a tener que programar otra vez el OFW desde Windows
Yo también lo he conseguido!! Creo que tenia mal generado el firmware parcheado, lo he parcheado de nuevo y a la primera!! [beer] [beer]

Los pasos:

1- En Ubuntu, generas los ficheros gw_retro_go_intflash.bin y gw_retro_go_extflash.bin:

make -j2 EXTFLASH_SIZE_MB=15 EXTFLASH_OFFSET=1048576 INTFLASH_BANK=2


2- Ya en Windows, con el patcher se parchea stock (previamente salvado desde linux con la copia de seguridad):

Imagen

3- Ahora ya tostamos la GnW con todos los firmwares generados....

- 08000000 => stock firmware, interno:
> STM32_Programmer_CLI.exe -c port=SWD -w internal_flash_backup_patched.bin 0x08000000

Imagen

-08100000 => retro-go "internal flash" bin
> STM32_Programmer_CLI.exe -c port=SWD -w gw_retro_go_intflash.bin 0x08100000

Imagen

-90000000 => data for stock firmware, externo
> STM32_Programmer_CLI.exe -c port=SWD -w flash_backup.bin 0x90000000 -el "C:\ExternalLoader\MX25U12835F_GAME-AND-WATCH.stldr"

Imagen

-90100000 => retro-go "external flash" bin
> STM32_Programmer_CLI.exe -c port=SWD reset=HWrst -w gw_retro_go_extflash.bin 0x90100000 -el "C:\ExternalLoader\MX25U12835F_GAME-AND-WATCH.stldr" -rst

Imagen

Y listo!!

Muchas gracias @neohroot!!!
Porcierto, a mi me gusta hacerlo más por comandos, veo lo que se está haciendo!!

Saludos,
Shark
neohroot escribió:@RataWeb te salva partida?


Pues no, a mi tampoco, aunque he probado unicamente con el juego de Castlevania de la NES, y nada!!

Saludos,
Shark
neohroot escribió:EDIT, un video mostrando funcionamiento del emulador seguro que anima a más de uno:



Es increíble lo que ha avanzado la escene de G&W.
[plas]
titofla escribió:
neohroot escribió:EDIT, un video mostrando funcionamiento del emulador seguro que anima a más de uno:



Es increíble lo que ha avanzado la escene de G&W.
[plas]


Tengo ganas de pillar una, pero por ahora voy a esperar a ver si se facilita el meterle mano para tener emulados el resto de G&W.

El vídeo pinta muy bien! [plas] [plas] [plas]
neohroot escribió:Por cierto! Para las pantallas divididas se puede hacer que giren en vertical y la relacion de aspecto ya es (casi) 1:1 al original. Hay que definirlo en el script python del shrinker.
Yo personalmente prefiero horizontal, algunas se hace raro jugar de ese modo.


Hola, ¿como lo haces?

Gracias,
Shark
2101 respuestas