Discussion:
como evitar el parpadeo de la actualizacion de hora
(demasiado antiguo para responder)
HADES
2004-05-25 09:30:31 UTC
Permalink
hola estoy imprimiendo en modo grafico la hora y la voy actualizando
mientras no se pulsa ninguna tecla con (!kbhit()) y lo q hago es
pintar la hora del color de fondo e imprimir la nueva hora en pantalla
pero se aprecia un parpadeo incesante de la hora , se os ocurre algo
para evitarlo?

gracias.
RETECAL nos tima - MechaKaiser
2004-05-25 14:37:15 UTC
Permalink
Post by HADES
hola estoy imprimiendo en modo grafico la hora y la voy actualizando
mientras no se pulsa ninguna tecla con (!kbhit()) y lo q hago es
pintar la hora del color de fondo e imprimir la nueva hora en pantalla
pero se aprecia un parpadeo incesante de la hora , se os ocurre algo
para evitarlo?
Esto se sale de la programación en c. Busca información acerca del refresco
vertical de la pantalla. viene dentro de la programación gráfica. La idea
consiste en que actualizas la pantalla mientras el haz retorna a su origen,
de manera que cuando redibuja la pantalla la imagen a dibujar ya tiene los
valores nuevos, y no hay ningún tipo de parpadeo. Se usaba y se sigue
usando para evitar parpadeos en los juegos. Una solución más elegante a
pintar de nuevo la fecha en color de fondo consiste en pintar un rectángulo
que tape la fecha. Es menos costoso en tiempo de ejecución y eso podría ser
la fuente de tus problemas.
Post by HADES
gracias.
De nada
HADES
2004-05-26 22:16:43 UTC
Permalink
HOLA ME HE PARTIDO EL COCO TODA LA TARDE INTENTANDO ENCONTRAR ALGUNA
INFORMACION SOBRE EL REFRESCO VERTICAL DEL MODO GRAFICO, ME PODRIAS A
AYUDAR? DONDE PUEDO ENCONTRAR INFORMACION? LA AYUDA DEL BORLAND NO ES
DE GRAN AYUDA LA VERDAD.

GRACIAS.
RETECAL nos tima - MechaKaiser
2004-05-27 11:08:57 UTC
Permalink
Post by HADES
HOLA ME HE PARTIDO EL COCO TODA LA TARDE INTENTANDO ENCONTRAR ALGUNA
INFORMACION SOBRE EL REFRESCO VERTICAL DEL MODO GRAFICO, ME PODRIAS A
AYUDAR? DONDE PUEDO ENCONTRAR INFORMACION? LA AYUDA DEL BORLAND NO ES
DE GRAN AYUDA LA VERDAD.
Mmmm... ahorrate las mayúsculas, ¿quieres?

Estas son cosas que no vienen nunca en la ayuda de los compiladores. Más
que el refresco vertical tienes que aprovechar el retrazado vertical (te lo
puse mal antes). Por aquí tienes un poco de teoría:

http://pinsa.escomposlinux.org/sromero/articulos/gfx/graf9.html
Pero vas a necesitar una función de escribir la hora bastante rápida. Si
no, ni te empeñes en intentarlo.

mov dx, 3dah
vert1:
in al,dx
test al,8
jnz vert1
vert2:
in al,dx
test al,8
jz vert2

;En este punto acaba de empezar el retrazado vertical
Post by HADES
GRACIAS.
De nada.
Manuel Domínguez Dorado
2004-06-05 13:58:03 UTC
Permalink
Post by RETECAL nos tima - MechaKaiser
Post by HADES
HOLA ME HE PARTIDO EL COCO TODA LA TARDE INTENTANDO ENCONTRAR ALGUNA
INFORMACION SOBRE EL REFRESCO VERTICAL DEL MODO GRAFICO, ME PODRIAS A
AYUDAR? DONDE PUEDO ENCONTRAR INFORMACION? LA AYUDA DEL BORLAND NO ES
DE GRAN AYUDA LA VERDAD.
Mmmm... ahorrate las mayúsculas, ¿quieres?
Estas son cosas que no vienen nunca en la ayuda de los compiladores.
Más que el refresco vertical tienes que aprovechar el retrazado
http://pinsa.escomposlinux.org/sromero/articulos/gfx/graf9.html
Pero vas a necesitar una función de escribir la hora bastante rápida.
Si no, ni te empeñes en intentarlo.
mov dx, 3dah
in al,dx
test al,8
jnz vert1
in al,dx
test al,8
jz vert2
;En este punto acaba de empezar el retrazado vertical
Post by HADES
GRACIAS.
De nada.
En google busca "Curso de programación de videojuegos CPV". Lo seguía yo
en los tiempos donde sólo tenía 640K de ram. Es muy antiguo pero explica
exactamente lo que quiereas: Cómo evitar el flicker aprovechando la
subida del haz de electrones desde la parte inferior derecha a la
superior izquierda (cuando está inactivo).
--
--
'''
(O O)
+---------------------oOO--(_)-------------------------+
| Manuel Domínguez Dorado |
|ingeniero (UNA_ARROBA) ManoloDominguez (UN_PUNTO) com |
| http://www.ManoloDominguez.com |
+------------------------------oOO---------------------+
|__|__|
|| ||
ooO Ooo
Loading...