Antes de nada decir que doy por hecho que sabéis lo básico del ASM/como funciona un ordenador a bajo nivel.
En este tutorial os voy a enseñar cómo hacer un Hello World en el lenguaje de programación ASM, concretamente la arquitectura MIPS, que es la que usa la PSP.
Las CPU MIPS tienen 32 registros de 32bits, cada instrucción también ocupa 32bits.
Estos son los registros:
Los comentarios en MIPS ASM empiezan con “#”.
Para ejecutar el código necesitáis un emulador MIPS, por ejemplo el SPIM Simulator.
Aquí el código:
.data hola_mundo: .asciiz "Hello world" #Defino una cadena ascii .text main: #Punto de entrada, aquí empieza el programa li $v0, 4 #Ponemos a 4 el registro $v0, ya que es el valor para ejecutar print_string la $a0, hola_mundo #Ponemos la dirección de hola_mundo en el primer argumento de la función ($a0) syscall #Ejecutamos un syscall (ejecutamos print_string) li $v0, 10 #Para salir syscall #Salimos
Esto debería ir en la sección
Esto debería ir en la sección de PC y no en la de PSP.
Bueno
Si nos ponemos con estas, siendo un procesador MIPS, aunque sea muy generico, es como decir que los tutoriales de programación de PSVita van en PC porque se programa en C#...
Mmm...
O que todos los programas y tutoriales de C de PSP vayan a PC porque son en C/C++ (Lua es otro mundo)
Simplemente pensé que le
Simplemente pensé que le haría mayor uso la comunidad de PC que la de PSP.
y como luego lo ejecutas
en la psp?
Pues este código en concreto
Pues este código en concreto no se puede ya que tiene funciones específicas del simulador MIPS xD
Para poder ejecutarlo en la PSP se deben usar sycalls específicos de la PSP y hacer jumps a las funciones de la PSP, vamos es como C, debes usar las funciones de la PSP ya que están hechas especialmente para ello. Luego lo ensamblas y ya tienes el ejecutable. (para ensamblar se usa el comando -s en gcc).
me podrias dar unos ejemplo
me podrias dar unos ejemplo de algunos HB creado en
MIPS ASMpara psp para yo asi aprender crear esto y otra cosa con cual programa se hace esto y donde se descarga el emulador...
Pues HB programados en ASM
Pues HB programados en ASM dudo que haya alguno xD
El ASM se usa principalmente en el "hacking", ya que es el lenguaje con el que tienes más control sobre la PSP.
vamo decir que con esto se
vamo decir que con esto se crean los cfw
Lo dudo, mayoritariamente se
Lo dudo, mayoritariamente se escriben en C.
yo quiesiera hacer pero nose
yo quiesiera hacer pero nose por donde empezar
me podrias pasar un ejemplo de algun cfw
para poder guiarme...
¿Quieres hacer un CFW?
¿Quieres hacer un CFW?
eso quiero... por eso estoy
eso quiero... por eso estoy pidiendo que me pasen uno viejo para yo guiarme de hay y crear el mio propio
Lo que tratas de hacer es
Lo que tratas de hacer es algo muy grande y complicado deberas por lo menos tener algunos años de experiencia y conocimiento en C
eso quiere decir que no puedo
eso quiere decir que no puedo hacer lo oh k.o
esta bien no lo hare...
No te estoy diciendo que No
No te estoy diciendo que No lo hagas Hagas,ni que No puedas,Solo te digo que lo que quieres hacer es bastante complicado,Aun no sabes la complejidad de un CF.
k.o pues no lo hare...
k.o pues no lo hare...
PerezRE
Si puedes, pero para hacerlo tendrás que aprender a programar C, el cual es un lenguaje muy complejo. Para aprenderlo no será fácil.
--[NO EXISTEN LOS LIMITES =D]--
ese no es el problema si es
ese no es el problema si es por eso lo hago con mi padre que programador y da clase de programacion en C avanzada, el verdadero problema es que nose por donde empezar asi como ir haciendo el recovery o el instalador o para que version va ese es el problema y tambien es que necesito un cfw viejo que este abierto para yo cojer lo modificarlo y actualizarlo.
No es cosa de hacerlo o no,
No es cosa de hacerlo o no, es que no puedes, no tienes los conocimientos necesiarios.
Para empezar, ¿tienes un nivel avanzado de C?
¿Acaso tienes un nivel
¿Acaso tienes un nivel avanzado de C, ASM, la arquitectura MIPS y sobre todo como funciona la PSP (o los PC) a low level (CPU, RAM, coprocesadores, etc)?
Gracias por el tutorial
Gracias por el tutorial xerpi, intentare aprender ASM muy pronto
Saludos¡¡