Se encontraron 494 coincidencias

por antoniovillena
Jue, 19 Jun 2014, 13:37
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Sí, es porque no había una forma fácil de compilar tu código, por eso lo que hice fue cambiar el código de la demo. Como has hecho un cambio de estructura de directorios y yo he hecho una modificación posterior no lo tenía fácil para compilarlo en Windows. Los cambios de estructura que has propuesto...
por antoniovillena
Jue, 19 Jun 2014, 10:54
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Ya te dicho que no te lo podía confirmar al 100%. De todas formas la solución la tienes en el adjunto de arriba que no te has bajado. Y que problema hay de pasar un unsigned char a entero? Además esa función como ya ha pasado el "tiempo/frame" funciona, donde no funciona es en el prepare_s...
por antoniovillena
Jue, 19 Jun 2014, 04:12
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Ya está. Creo que ya sé cual es tu error. No te lo puedo confirmar al 100% porque no tengo linux a mano para compilarlo pero estoy casi seguro. Aquí haces un casting: print_value(3,10, (int) getattr(tmpx, tmpy)); La macro getattr hace lo siguiente: #define getattr(x,y) map_attr[x + (y << 4) - y] El ...
por antoniovillena
Mié, 18 Jun 2014, 18:33
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Te acabo de crear la función PrintStr, añádela a fase.h void __CALLEE__ PrintStr ( char *string, unsigned char x, unsigned char y ){ #asm pop af pop de pop bc pop ix push af ld hl, ($5c00) ld a, e and $18 or $40 or h ld h, a ld a, e rrca rrca rrca and $e0 add a, c ld l, a print: ex de, hl ld a, (ix)...
por antoniovillena
Mié, 18 Jun 2014, 17:07
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

A vale, es el mismo código de antes. Pensé que querías escribir en tiles, perdón por mi equivocación. En teoría está bien, pásame el código fuente y te lo depuro.

Enviado desde mi MI 3W mediante Tapatalk
por antoniovillena
Mié, 18 Jun 2014, 15:45
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

En realidad no es una función, es una macro. Se llama tilepaint. Después de actualizar los tiles del array tiles tienes que decirle al engine mediante tilepaint cual es el rectángulo de tiles más pequeño que cubre el área que quieres actualizar. Por ejemplo algo así: tilepaint (1, 2, 3, 4) actualiza...
por antoniovillena
Mié, 18 Jun 2014, 13:50
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Jeje, como mola el gatito. Como dice na_th_an, puedes acelerar los cálculos de la dirección de comienzo con una tabla. Yo antes usaba otra tabla distinta que me daba directamente la dirección. Con la que uso ahora sólo hace la permutación, es casi tan rápida como la otra pero sólo gasta 256 bytes. S...
por antoniovillena
Mar, 17 Jun 2014, 23:56
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Exacto. Lo has comprendido perfectamente. Al cambiar la variable *screen no se produce el cambio inmediatamente (ni se pinta la pantalla ni se rellena el array tiles[]), sino que hay que esperar al siguiente frame. Pero puedes adelantarte escribiendo la macro FRAME (en realidad no te adelantas, porq...
por antoniovillena
Mar, 17 Jun 2014, 20:07
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

También puedes cambiar el borde desde C directamente en el main.c con M_OUTP(0xfe, color). Si te das cuenta yo lo uso en la demo para saber cuánto tiempo de frame consume el engine, cuánto el código C y cuánto tiempo me sobra.
por antoniovillena
Mar, 17 Jun 2014, 20:04
Foro: General
Tema: FASE (Fucking Awesome Spectrum Engine)
Respuestas: 196
Vistas: 151638

Re: FASE (Fucking Awesome Spectrum Engine)

Vale, es un bug, hay que mover la parte que actualiza el borde más abajo, justo después de la lectura del último bloque en cinta. include ndefload.asm DEFINE border_loading 1 IF smooth=0 DEFINE desc $fe80 DEFINE ramt $fd00+notabl ELSE DEFINE desc $fc81+notabl DEFINE ramt desc ENDIF display "---...

Ir a búsqueda avanzada