› Foros › Retro y descatalogado › Consolas clásicas
radorn escribió:https://gitlab.com/kholdfuzion/goldeneye_src
Alguien está decompilando GoldenEye
EMaDeLoC escribió:La RAM no se puede overclokear sin overclokear el RCP, ya que es quien genera los pulsos de reloj y hacerlo desincronizaría el sistema y la memoria no se podría leer.
radorn escribió:EMaDeLoC escribió:La RAM no se puede overclokear sin overclokear el RCP, ya que es quien genera los pulsos de reloj y hacerlo desincronizaría el sistema y la memoria no se podría leer.
Ya lo se, no me refería a que se overclockease la RAM por si misma sin el RCP. Despues de todo el controlador de memoria va en el RCP. Y no solo eso, por lo que yo tengo entendido, no es que el RCP le de el reloj a la RAM, si no que el multiplicador da la frecuencia del bus, los 250MHz, y de ahí deriva el RCP su reloj de 62.5Mhz (1/4).
Lo único que decía es que no se si la RAM aguantaría aumentar, no se, a 300MHz, por ejemplo, que daría 75Mhz al RCP. Tampoco se si el RCP tiene un multiplicador seleccionable como la CPU.
radorn escribió:Dado que el bus de video se rige por otro reloj separado del de la RAM y el RCP, derivado esta vez de la portadora de color analógico, habría que entender el funcionamiento del VI para saber qué causa la desincronización.
Ahora recuerdo aquello que se trató con Conker64 en su anterior vida (xD) con lo de los parámetros del VI, y se me ocurre que probablemente el VI (y el AI) actue de sincronizador entre la frecuencia interna del RCP y la externa del bus AV, y algunos de los parámetros misteriosos tengan que ver con el modo de arbitrar entre esas dos frecuencias fuera de sincronía, especialmente para dar al software información sobre la sincronía de la pantalla.
EMaDeLoC escribió:Pues yo estuve dándole vueltas a eso hace poco, en especial porqué ejecutar un juego de otra región te da o 61Hz o 49Hz. No he visto en ninguna parte que por código se establezca una frecuencia concreta, solo que el vídeo del RCP se pone en modo 50 o 60 Hz dependiendo de la región de la ROM.
Igual es tonteria lo que voy a decir, pero creo que el VI tiene hardcoded una determinada cantidad de pulsos y la diferencia de frecuencia entre algún elemento externo al RCP provoca el descuadre.
Flash-Original escribió:Como va el SDK, me gustaria probar un background que hice (si hay algun cambio) si no volver a descargar la libdragon
void rdp_init( void );
void rdp_attach_display( display_context_t disp );
void rdp_detach_display( void );
void rdp_sync( sync_t sync );
void rdp_set_clipping( uint32_t tx, uint32_t ty, uint32_t bx, uint32_t by );
void rdp_set_default_clipping( void );
void rdp_enable_primitive_fill( void );
void rdp_enable_blend_fill( void );
void rdp_enable_texture_copy( void );
uint32_t rdp_load_texture( uint32_t texslot, uint32_t texloc, mirror_t mirror, sprite_t *sprite );
uint32_t rdp_load_texture_stride( uint32_t texslot, uint32_t texloc, mirror_t mirror, sprite_t *sprite, int offset );
void rdp_draw_textured_rectangle( uint32_t texslot, int tx, int ty, int bx, int by, mirror_t mirror );
void rdp_draw_textured_rectangle_scaled( uint32_t texslot, int tx, int ty, int bx, int by, double x_scale, double y_scale, mirror_t mirror );
void rdp_draw_sprite( uint32_t texslot, int x, int y , mirror_t mirror);
void rdp_draw_sprite_scaled( uint32_t texslot, int x, int y, double x_scale, double y_scale, mirror_t mirror);
void rdp_set_primitive_color( uint32_t color );
void rdp_set_blend_color( uint32_t color );
void rdp_draw_filled_rectangle( int tx, int ty, int bx, int by );
void rdp_draw_filled_triangle( float x1, float y1, float x2, float y2, float x3, float y3 );
void rdp_set_texture_flush( flush_t flush );
void rdp_close( void );
void rdp_init( void );
void rdp_attach_display( display_context_t disp );
void rdp_detach_display( void );
void rdp_sync( sync_t sync );
void rdp_set_clipping( uint32_t tx, uint32_t ty, uint32_t bx, uint32_t by );
void rdp_set_default_clipping( void );
void rdp_enable_primitive_fill( void );
void rdp_enable_blend_fill( void );
void rdp_load_texture( sprite_t *sprite );
void rdp_draw_textured_rectangle( int tx, int ty, int bx, int by, int flags );
void rdp_draw_textured_rectangle_scaled( int tx, int ty, int bx, int by, double x_scale, double y_scale, int flags );
void rdp_draw_sprite( int x, int y, int flags );
void rdp_draw_sprite_scaled( int x, int y, float x_scale, float y_scale, int flags );
void rdp_draw_filled_rectangle( int tx, int ty, int bx, int by );
void rdp_draw_filled_triangle( float x1, float y1, float x2, float y2, float x3, float y3 );
void rdp_close( void );
// RDP new
void rdp_send( void );
void rdp_command( uint32_t data );
void rdp_cp_sprite( int x, int y, int flags, int cp_x, int cp_y, int line );
void rdp_cp_sprite_scaled( int x, int y, float x_scale, float y_scale, int flags, int cp_x, int cp_y, int line );
void rdp_set_fill_color( uint8_t r, uint8_t g, uint8_t b, uint8_t a );
void rdp_set_prim_color( uint8_t r, uint8_t g, uint8_t b, uint8_t a );
void rdp_set_blend_color( uint8_t r, uint8_t g, uint8_t b, uint8_t a );
void rdp_texture_copy( uint64_t mode );
void rdp_texture_cycle( uint8_t cycle, uint8_t enable_alpha, uint64_t mode );
void rdp_load_palette( uint8_t pal, uint8_t col_num, uint16_t *palette );
void rdp_select_palette( uint8_t pal );
void rdp_additive( void );
void rdp_intensify( uint8_t enable_alpha );
void rdp_color( uint8_t enable_alpha );
void rdp_noise( uint8_t type, uint8_t enable_alpha );
void rdp_triangle_setup( int type );
// FRAMEBUFFER new
uint32_t get_pixel( display_context_t disp, int x, int y );
void rdp_buffer_copy( display_context_t disp, uint16_t *buffer_texture, uint16_t x_buf, uint16_t y_buf, uint16_t width, uint16_t height, uint16_t skip );
void rdp_buffer_screen( display_context_t disp, uint16_t *buffer_texture, int texture_mode );
void rdp_load_texbuf( uint16_t *buffer_texture, int sh, int th );
// LOAD new
sprite_t *load_sprite( const char * const spritename );
Conker64 escribió:Flash-Original escribió:Como va el SDK, me gustaria probar un background que hice (si hay algun cambio) si no volver a descargar la libdragon
Cual de ellas? libn64 está parada creo, su autor pasó a trabajar a una gran empresa.
Conker64 escribió:@dirtymagic
El desarrollo de homebrew no interesa demasiado desafortunadamente
radorn escribió:Con un poco de suerte, las fuentes de Mario, Turok, y en un futuro esperemos no muy lejano, GoldenEye, podrían abrir ese camino a mas gente y cambiar la situación, aumentando la masa crítica.
radorn escribió:@Conker64 Ya veo que siguen las cosas muy difíciles. Yo pensaba que ya se había avanzado un poco mas.
ACTUALIZO:
Me acabo de topar con esto. ¿Lo conocías?
https://twitter.com/search?q=%23ultraed64
Parece que el autor tuvo un twitter y lo borró, un github y lo borró. No se si el twittero ese es el autor o que.
radorn escribió:@Conker64 Parece que hay otros videos por ahí donde también automatiza lanzar la ROM en consola con 64drive por USB.
SuperPadLand escribió:radorn escribió:Hacerle RT y darle me gusta para que se motive! haceros cuentas clon si hace falta!
avalancha escribió:Creo que hasta ahora no se había descubierto esta función de la parte trasera del mando de N64:
https://mobile.twitter.com/ThatsADarkHo ... 3630784513
avalancha escribió:Creo que hasta ahora no se había descubierto esta función de la parte trasera del mando de N64:
https://mobile.twitter.com/ThatsADarkHo ... 3630784513