Menuda Optimización

Todo sobre la creación, diseño y programación de nuevo software para
nuestro Spectrum

Moderador: Sir Cilve Sinclair

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Re: Menuda Optimización

Mensaje por susso » Vie Mar 27, 2015 8:27 pm

Correcto! Lo puedes simplificar mas.

LD A,$FF
LD ($4000),A

O bien:

LD HL,$4000
LD (HL),$FF

Uno es más rápido que otro, no tengamos en cuenta ahora la velocidad.
Intenta compilar en casa y ver los resultados.

Te prepararé otro.

Avatar de Usuario
Alxinho
Freddy Hardest
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona
Contactar:

Re: Menuda Optimización

Mensaje por Alxinho » Vie Mar 27, 2015 8:32 pm

Coño he acertado! Me merezco una galleta!

El ejercicio que me hace falta es imprimir sprite de 3x3 carácteres, espero que no falte mucho :mrgreen:
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es

Soy un tío feliz, más que nada ... porque me sale más a cuenta.

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Re: Menuda Optimización

Mensaje por susso » Vie Mar 27, 2015 8:37 pm

Si que falta si, por la disposición en tercios de la pantalla y la disposición de 8 líneas de baja resolución.
¿Y se moverá pixel a pixel o cada 8?

Avatar de Usuario
Alxinho
Freddy Hardest
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona
Contactar:

Re: Menuda Optimización

Mensaje por Alxinho » Vie Mar 27, 2015 8:45 pm

De momento me conformo en 8x8 jajaja...

Lo de la disposición de la pantalla cómo toca los que te dije, ya vi lo del cálculo de coordenadas, pero poco a poco.

Por cierto, tienes algún juego o programa hecho? Blog? Web?
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es

Soy un tío feliz, más que nada ... porque me sale más a cuenta.

Avatar de Usuario
climacus
Sabreman
Mensajes: 411
Registrado: Mar Ago 25, 2009 1:46 pm

Re: Menuda Optimización

Mensaje por climacus » Vie Mar 27, 2015 8:54 pm

Alxinho escribió:No he llegado a casa pero no me puedo aguantar xD

Creo que sería:

Código: Seleccionar todo

LD ($4000),$ff
¿?

P.D:Acabo de leer Climacus en el curso que no se puede operar directamente con los registros shadow, sólo intercambiarlos por los normales, no sé si lo habré entendido mal por eso.
Ejemplo de uso de los registros alternativos:

Código: Seleccionar todo

LD HL,$4000 ; inicio de la pantalla
EXX ;cambiamos a registros alternativos
LD HL,$5800 ;inicio de los atributos
LD (HL),7 ; ponemos tinta negra y papel blanco
EXX ;cambiamos juego de registros
LD (HL),$FF ; pintamos la ralla superior del carácter 
Como ves, los registros de los dos juegos se usan igual, pero no puedes usar los dos a la vez
Todos mis juegos en formato físico
http://www.matranet.net/boutique/zx/zx.php

Avatar de Usuario
Alxinho
Freddy Hardest
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona
Contactar:

Re: Menuda Optimización

Mensaje por Alxinho » Vie Mar 27, 2015 9:04 pm

Sí, pero según el curso de SRomero las instrucciones de asm sólo se pueden usar sobre los registros normales, no sirve LD A',$ff, necesitas conmutar primero el registro shadow al normal y operar sobre él.

Al menos eso es lo que he entendido :lol:
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es

Soy un tío feliz, más que nada ... porque me sale más a cuenta.

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Re: Menuda Optimización

Mensaje por susso » Vie Mar 27, 2015 9:12 pm

Las 3 preguntas No, no y no xD todavia..

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Re: Menuda Optimización

Mensaje por susso » Vie Mar 27, 2015 9:15 pm

Siguiente reto: usando el anterior ejercicio...pasmo y notepad++
Compila y ejecuta en emulador.
Parece una tontería pero no lo es.

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Re: Menuda Optimización

Mensaje por susso » Vie Mar 27, 2015 9:25 pm

En realidad haciendo un LD a A después del EXX lo estas haciendo al A' anterior. ¿Lo coges?

Avatar de Usuario
Alxinho
Freddy Hardest
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona
Contactar:

Re: Menuda Optimización

Mensaje por Alxinho » Vie Mar 27, 2015 9:46 pm

Lo tengo que compilar en ZxBasic integrando asm porque no podré hacer un juego en CM al completo. A ver si funciona...
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es

Soy un tío feliz, más que nada ... porque me sale más a cuenta.

Avatar de Usuario
climacus
Sabreman
Mensajes: 411
Registrado: Mar Ago 25, 2009 1:46 pm

Re: Menuda Optimización

Mensaje por climacus » Sab Mar 28, 2015 9:36 am

Alxinho escribió:Sí, pero según el curso de SRomero las instrucciones de asm sólo se pueden usar sobre los registros normales, no sirve LD A',$ff, necesitas conmutar primero el registro shadow al normal y operar sobre él.

Al menos eso es lo que he entendido :lol:
No puedes hacer algo así como

Código: Seleccionar todo


LD A,$FF
LD A',$0

LD(HL),A
LD(DE),A'

ya que estarías usando A y A' a la vez y eso es lo que no se puede hacer.

Lo correcto sería:

Código: Seleccionar todo


LD A,$FF
EX AF,AF' ;cambio al alternativo
LD A,0
LD (DE),A

EX AF,AF' ;vuelvo al original
LD (HL),A

De todas formas, no te comas la cabeza con esto. Simplemente hay dos juegos de registros HL,BC,DE y AF que puedes utilizar indistintamente siempre que sólo uses un juego a la vez
Todos mis juegos en formato físico
http://www.matranet.net/boutique/zx/zx.php

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Menuda Optimización

Mensaje por susso » Sab Mar 28, 2015 9:43 am

Tienes una caja al sol y otra a la sombra dentro de casa, puedes meter la pelota en la caja al sol pero no en la que esta dentro de la casa.
¿Cómo meto algo en la caja que esta a la sombra? Cambiándolas, ahora la caja que estaba a la sombra es la que esta al sol y la otra a la sombra.
La caja que esta ahora al sol esta vacía puedes meter ahí los patines, y sabes que la caja que esta a la sombra contiene la pelota, pero no puedes acceder a ella hasta que la vuelvas a cambiar.

Avatar de Usuario
climacus
Sabreman
Mensajes: 411
Registrado: Mar Ago 25, 2009 1:46 pm

Re: Menuda Optimización

Mensaje por climacus » Sab Mar 28, 2015 10:06 am

susso escribió:Tienes una caja al sol y otra a la sombra dentro de casa, puedes meter la pelota en la caja al sol pero no en la que esta dentro de la casa.
¿Cómo meto algo en la caja que esta a la sombra? Cambiándolas, ahora la caja que estaba a la sombra es la que esta al sol y la otra a la sombra.
La caja que esta ahora al sol esta vacía puedes meter ahí los patines, y sabes que la caja que esta a la sombra contiene la pelota, pero no puedes acceder a ella hasta que la vuelvas a cambiar.
Interesante...
Todos mis juegos en formato físico
http://www.matranet.net/boutique/zx/zx.php

susso
Jack The Nipper
Mensajes: 146
Registrado: Mar May 07, 2013 9:42 am

Re: Menuda Optimización

Mensaje por susso » Sab Mar 28, 2015 10:18 am

Es para Alxinho, mas gráfico imposible [emoji28]

Avatar de Usuario
climacus
Sabreman
Mensajes: 411
Registrado: Mar Ago 25, 2009 1:46 pm

Re: Menuda Optimización

Mensaje por climacus » Sab Mar 28, 2015 10:30 am

susso escribió:Es para Alxinho, mas gráfico imposible [emoji28]
Por eso lo decía.
Es un buen ejemplo!!!
Todos mis juegos en formato físico
http://www.matranet.net/boutique/zx/zx.php

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: Ahrefs [Bot] y 6 invitados