delay

Programando el Amstrad en Ensamblador.
Reglas del Foro
Debido a que hay varios temas pidiendo ayuda para programar en ensamblador máquinas distintas al Amstrad CPC, con micro distinto al Z80 y que incluso dependen del sistema operativo, nos vemos en la necesidad de poner por escrito que estos posts son bienvenidos pero que no es el lugar adecuado ya que por estos lares nos dedicamos más al ensamblador del Z80, un microprocesador de 8 bits que tuvo su gran auge en ordenadores y consolas de los años 80.

De todas formas, esto no quita que alguien que sepa del asunto pueda postear alguna respuesta pero es más fácil encontrar foros dedicados a programar en ensamblador en Windows o MS-DOS que ayudarán más que nosotros:
http://www.lawebdelprogramador.com/news ... nsamblador
Meta
Forero habitual
Forero habitual
Mensajes: 103
Registrado: Jue 04 Ene , 2018 9:36 am

delay

Mensajepor Meta » Vie 26 Ene , 2018 7:44 pm

Buenas,

una dudilla, el caso es que quiero hacer un delay que muestre un sprite un momento y lo borre.
Sería muy bruto hacer esto?:

ld b,255
.msg_delay:
halt
djnz msg_delay

pacomix
Forum Addict
Forum Addict
Mensajes: 460
Registrado: Dom 11 Nov , 2012 8:05 pm

Re: delay

Mensajepor pacomix » Vie 26 Ene , 2018 9:18 pm

¡Pruébalo! :)


Enviado desde mi iPhone utilizando Tapatalk

Avatar de Usuario
Artaburu
Trasteador
Trasteador
Mensajes: 8420
Registrado: Vie 07 Oct , 2005 6:18 pm
Ubicación: En tu pantalla

Re: delay

Mensajepor Artaburu » Vie 26 Ene , 2018 10:06 pm

Hombre, depende de cuánto tiempo quieras que el sprite esté en pantalla.
Salu2,
Arta

abalore
Forero habitual
Forero habitual
Mensajes: 152
Registrado: Dom 09 Jul , 2006 8:59 pm

Re: delay

Mensajepor abalore » Vie 26 Ene , 2018 11:13 pm

Si las insterrupciones están activas se producen unas 300 por segundo, así que conseguirias una pausa de unos 0,8 segundos.

gg
I am The Forum
I am The Forum
Mensajes: 2290
Registrado: Mié 13 Dic , 2006 10:48 am

Re: delay

Mensajepor gg » Sab 27 Ene , 2018 9:59 am

Todo depende de lo que necesites. Si te vale que el programa espere tras la impresión para luego borrar, está bien. Es una solución simple. Si no, siempre puedes borrar en un ciclo de ejecución posterior.
Saludos,
gg.

Meta
Forero habitual
Forero habitual
Mensajes: 103
Registrado: Jue 04 Ene , 2018 9:36 am

Re: delay

Mensajepor Meta » Sab 27 Ene , 2018 10:11 am

Probado está (en el emulador), y funciona normal. Luego sacaré el amstrad y grabaré el audio del binario y toda la pesca para probar más a fondo...

Me refería a si es sano para el amstrad pasarle 200 halts seguidos. Me daba un poco de yuyu.

En principio el tiempo de la pausa me vale, aunque todavía no sé si el amstrad lo hará igual de lento.

Lo que hace esa parte del programa es esto:
.toma:
ld de,&D81F:ld hl,toma_spr:ld b,12:ld c,8:call disspr ;pinta sprite cacho1
ld de,&C027:ld hl,dice_spr:ld b,3:ld c,4:call disspr ;pinta sprite cacho2
call msg_delay ;pausa
ld hl,&0700 ;borrar con fillbox
ld de,&0A01
ld a,&00
call scr_fill_box
call hands_zone4 ;a otra cosa....
ret

.msg_delay:
ld b,255
msg_delay_lp:
halt
djnz msg_delay_lp
ret

abalore
Forero habitual
Forero habitual
Mensajes: 152
Registrado: Dom 09 Jul , 2006 8:59 pm

Re: delay

Mensajepor abalore » Sab 27 Ene , 2018 3:10 pm

Entiendo. Respecto a maltratar el procesador no te preocupes, el Z80 no es como los procesadores modernos que varían su potencia dependiendo de la carga. Puedes meter tantos halts o bucles como quieras que a nivel electrónico no va a haber ninguna diferencia.

Es mas, en caso de afectar de alguna forma sería al contrario, ya que al estar esperando una interrupción el procesador se paraliza, con lo que internamente trabaja menos.

Meta
Forero habitual
Forero habitual
Mensajes: 103
Registrado: Jue 04 Ene , 2018 9:36 am

Re: delay

Mensajepor Meta » Sab 27 Ene , 2018 5:29 pm

Bueno ya me quedo más tranquilo, supongo que era una tontería de pregunta ya que es una instrucción como otra cualquiera,.. cosas de novato... Gracias por la paciencia, voy a sacar el amstrad a ver que pasa.

abalore
Forero habitual
Forero habitual
Mensajes: 152
Registrado: Dom 09 Jul , 2006 8:59 pm

Re: delay

Mensajepor abalore » Sab 27 Ene , 2018 6:16 pm

Ninguna pregunta es una tontería compañero. La tontería es tener la duda y no preguntar.

Avatar de Usuario
MiguelSky
Lord of Short Time
Lord of Short Time
Mensajes: 6971
Registrado: Sab 08 Oct , 2005 2:02 am
Contactar:

Re: delay

Mensajepor MiguelSky » Sab 27 Ene , 2018 7:01 pm

Ninguna pregunta es una tontería compañero. La tontería es tener la duda y no preguntar.
=D> =D> =D>

Meta
Forero habitual
Forero habitual
Mensajes: 103
Registrado: Jue 04 Ene , 2018 9:36 am

Re: delay

Mensajepor Meta » Sab 27 Ene , 2018 9:16 pm

Ayer estaba un poco espeso...

Ya lo probé en el amstrad y funciona correctamente, un poco más rápido que el winape pero me vale perfectamente.

Se trata de que cuando mete gol la IA pongo un sprite con forma de bocadillo que dice Toma!! y otro ouch... na, un detallito simpático jeje .Así que halt me vale perfecto porque salta el bocadillo, se para todo y al segundo saca de esquina. Es un poco chapucero borrar con el fillbox pero me hace el servicio.

Asi que na, una cosilla menos ;)

jesusdelmas
Me voy lanzando
Me voy lanzando
Mensajes: 74
Registrado: Sab 09 Sep , 2017 8:59 pm

Re: delay

Mensajepor jesusdelmas » Sab 27 Ene , 2018 10:07 pm

Ayer estaba un poco espeso...

Ya lo probé en el amstrad y funciona correctamente, un poco más rápido que el winape pero me vale perfectamente.

Se trata de que cuando mete gol la IA pongo un sprite con forma de bocadillo que dice Toma!! y otro ouch... na, un detallito simpático jeje .Así que halt me vale perfecto porque salta el bocadillo, se para todo y al segundo saca de esquina. Es un poco chapucero borrar con el fillbox pero me hace el servicio.

Asi que na, una cosilla menos ;)
Hola,

pregunto si estas haciendo un juego de futbol, no estaba al tanto de esto :D estaria bueno un juego nuevo de futbol.

Meta
Forero habitual
Forero habitual
Mensajes: 103
Registrado: Jue 04 Ene , 2018 9:36 am

Re: delay

Mensajepor Meta » Sab 27 Ene , 2018 10:58 pm

Hola, es un futbolín... o algo parecido xD

Avatar de Usuario
6128
Moderador
Moderador
Mensajes: 7922
Registrado: Lun 12 Dic , 2005 6:08 pm

Re: delay

Mensajepor 6128 » Dom 28 Ene , 2018 8:58 am

Es un juego de futbolín. Tiene hilo en este mismo subforo.


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro


La Comunidad Española
ESP Soft, juegos para tu CPC Foro de Amstrad CPC Todos los juegos para CPC en un CD Web dedicada al Amstrad CPC (utilidades) Información útil para el CPC (talleres) Selección de juegos de Amstrad CPC Mundo CPC Pree Play then any Key CPC Basic