Diseño/normas del software

Moderadores: Kravenbcn, largeroliker, fidelcastro, cerealkiller, pspCaracas, dark_sasuke, m0skit0, LnD, ka69, zacky06

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Diseño/normas del software

Mensaje por m0skit0 »

No estoy de acuerdo con conectar las clases directamente porque reduce la independencia de las clases entre sí. Además, la CPU sería un monstruo de clase ya que debe controlar TODOS los demás componentes, y por tanto está conectada a todos. Al final sería la CPU la que haría de placa base, con lo que realmente sería meter la clase placa base dentro de la CPU, y no lo veo muy claro.

Creo que quedaría demasiado embarullado de esa forma, a menos que alguien se le ocurra una idea mejor.

Animo a los demás que estáis apuntados a participar en esta discusión. El diseño del software es una de las partes más importantes del proyecto, ya que dependiendo de cómo de bien esté diseñado, luego codificarlo será fácil y robusto, o difícil y propenso a errores. Aparte al diseñar aprenderéis realmente cómo va a funcionar el emulador a falta del código propiamente dicho (que realmente sólo modela lo que se diseña).
Imagen

Avatar de Usuario
largeroliker
Administrador
Administrador
Mensajes: 8283
Registrado: 03 Sep 2009, 09:46
PSN ID: larger0o
Gamertag Xbox Live: larger0o
Steam ID: larger0o
Twitter: larger0o
Ubicación: Málaga
Contactar:

Re: Diseño/normas del software

Mensaje por largeroliker »

Yo daría mi opinión, pero es que...no tengo :lol:

Cuando me entere de ALGO de lo que estáis hablando os aviso xDD
Imagen
Steam Deck · Xbox Series X · PS5 · Switch · PS Vita · WiiU · PS3 · new 3DS XL · Xbox 360 · PSP · PS2

yosoy_bostero
Enteradillo
Enteradillo
Mensajes: 43
Registrado: 12 Ene 2011, 16:55

Re: Diseño/normas del software

Mensaje por yosoy_bostero »

Si si estamos de acuerdo m0skit0, como dije es mas para ordenarlo y que sea mas comodo trabajar que un requerimiento funcional. Por otro lado no le veo sentido al tema del modelo, aqui el ideal no seria un comportamiento al estilo PSP 3000 por decir alguna sobre algun CFW, si en definitiva los temas de seguridad/ram los manejamos nosotros, con lograr un funcionamiento a "333mhz" estamos hechos. Asi como tambien hay muchas funciones que no son necesarias desarrollar, al menos no a corto plazo y a largo plazo casi que tampoco. (lease, wifi/internet(tal vez para multijugador), salidas a monitor externo, y ese tipo de cosas que no son necesarias a la hora de emular la psp)

Avatar de Usuario
darkmonster
Habitual
Habitual
Mensajes: 182
Registrado: 08 Abr 2010, 20:28
PSN ID: darkmonster17
Ubicación: Mexico
Contactar:

Re: Diseño/normas del software

Mensaje por darkmonster »

m0skit0 escribió:Doble posteo porque puedo.

Pongo un ejemplo de comunicación: la clase cAllegrex, ¿cómo accedería a la memoria? Tendría que pasar a través de la clase "placa base" y ésta acceder a la memoria. A esto me refiero con comunicación. La idea que se me ocurre es presentar un tipo/clase tBus/cBus que interconecte placa base y componente y pueda hacer que la placa base traslade datos de un sitio a otro. De hecho la placa base es prácticamente lo único que haría: trasladar mensajes de un componente a otro.

Otra cuestión es cómo queremos que funcionen los componentes: cada uno en su hilo de ejecución y corriendo todo el rato (que sería lo más parecido al hardware real y lo más veloz, aunque implica concurrencia), o que sea la placa base la que les vaya dando pie en un determinado orden (que no se parece al hardware real y es más lento, pero bastante más sencillo).

Personalmente creo que la segunda opción es la mejor por ahora.

EDITO: ¿Qué quieres que especifique arisma? Y ya no es doble posteo :mrgreen:


yo apoyo la idea de m0skit0, el crear clases por cada componente del Hardware, y que la Placa Base actue de intermediario trasladando mensajes y conectandado a los componentes.

En cuanto a la ejecucion de los componentes, lo mejor seria simular al Hardware de manera identica a como lo hace la PSP, pero como dice m0skit0, esto se podria poner bastante tedioso.
PSP 3010 > 5.51 > 5.55 > 6.00 > 6.20 > 6.20 TN-B Downgrade 5.01 -> 5.03 -> CFEnabler 3.70 :)

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Diseño/normas del software

Mensaje por m0skit0 »

@yosoy_bostero: efectivamente estamos de acuerdo en todo :D

darkmonster escribió:En cuanto a la ejecucion de los componentes, lo mejor seria simular al Hardware de manera identica a como lo hace la PSP, pero como dice m0skit0, esto se podria poner bastante tedioso.

¿Has programado con concurrencia alguna vez? Te aseguro que no es nada agradable :lol:

En todo caso tanto un diseño como otro (secuencial vs tiempo real) creo que sería fácil (bueno, no muy difícil) de pasar de uno a otro si está diseñado en condiciones. También se podrían crear más equipos e ir probando con diferentes diseños, pero eso dispersa un poco el equipo y las fuerzas en mi opinión.
Imagen

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Diseño/normas del software

Mensaje por m0skit0 »

Os dejo los avances con el procesador según el diseño que planteé.

He creado el repositorio SVN en Google Code al final :oops:

Código: Seleccionar todo

svn checkout http://psp-emu.googlecode.com/svn/trunk/ psp-emu-read-only

Los que tengáis clientes gráficos, con darle la URL (http://psp-emu.googlecode.com/svn/trunk/) creo que le valdrá.

Si podéis echarle un vistazo, pues lo vamos comentando.

Saludos.
Imagen

arisma
Habitual
Habitual
Mensajes: 497
Registrado: 18 Sep 2009, 08:41

Re: Diseño/normas del software

Mensaje por arisma »

Accediendo a los ficheros. 2 de ellos sin la descripción al principio, pero tampoco es lo más importante en esos 2 ficheros de cabecera.

Por lo demás, bien. A falta de echarle un ojo al codigo claro, jeje.

Bien hecho.

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Diseño/normas del software

Mensaje por m0skit0 »

He hecho más cambios. A ver si antes de irme a dormir lo subo al repo.

EDITO: subida revisión 2
Imagen

Ariath
Enteradillo
Enteradillo
Mensajes: 29
Registrado: 17 Ene 2011, 19:37
PSN ID: AriathTheWise
Ubicación: Murcia
Contactar:

Re: Diseño/normas del software

Mensaje por Ariath »

Mmm... interesante, ahora si puedo curiosear algo que entiendo (gran parte del diseño de la consola me suena a chino todavía :lol: ).

Por cierto, un par de preguntas:

1ª) Si queremos colaborar con el SVN, ¿Hace falta algún paso?, Lo digo porque doy por supuesto que, a menos que se admitan colaboradores, el acceso al repositorio para terceros es de solo lectura ...

2ª) Veo que estáis codificando en español directamente. Pese a que prefiero siempre que se puede la lengua de Cervantes a cualquier otra, ¿No es más práctico programar en inglés?
Yo al menos siempre hago eso, más que nada porque en inglés, aparte de que muchos términos son más cortos que en Español, evitas líos con "doña eñe" en palabras como "añadir", etc ...

Salu2

Avatar de Usuario
pspCaracas
Moderador Global
Moderador Global
Mensajes: 3080
Registrado: 03 Sep 2009, 03:29
Ubicación: Buenos Aire - Argentina
Contactar:

Re: Diseño/normas del software

Mensaje por pspCaracas »

% s/añadir/agregar/g
http://farm3.static.flickr.com/2497/3983880148_f5ae0aaab2_o.png

Responder