Karoshi MSX Community
05 de Julio de 2021, 07:37:07 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: 1 [2]
  Imprimir  
Autor Tema: Estrellado con el Assembler...  (Leído 11645 veces)
0 Usuarios y 1 Visitante están viendo este tema.
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #15 : 31 de Mayo de 2007, 02:34:23 pm »

Jejejeeeee, ¡menudo vinazo que se está cascando el Vader!, ¿o es un pacharancito? Cheesy
En línea

Doom dee doom dee doom
Jon_Cortazar
Administrator
Karoshi Forum's God
********
Mensajes: 2777



WWW Email
« Respuesta #16 : 31 de Mayo de 2007, 02:38:05 pm »

Yo es que me voy a poner esa foto en el avatar YA mismo! Grin Grin Grin Grin Grin Grin Grin Grin Grin Grin
En línea

Jon Cortázar Abraido (aka El Viejo Archivero)
RELEVO Videogames
[Dioniso: La cafeína está haciendo su trabajo; yo espero hacer el mío.]
[pitpan: Me sigue pareciendo más productivo jugar al SNAIL MAZE que seguir esta discusión.]
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #17 : 31 de Mayo de 2007, 04:12:16 pm »


Citar
De ese ordenador salieron los samples del BEEPERTRON, una versión metal con guitarraca del tema intro del mismo juego y ...  Roll Eyes

...¿y?

No nos dejes ya así, hombre  Wink
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Dioniso
Visitante
« Respuesta #18 : 31 de Mayo de 2007, 07:34:21 pm »

Todo a su tiempo ...
En línea
Shinzon
Karoshi Lover
***
Mensajes: 116


Email
« Respuesta #19 : 01 de Junio de 2007, 06:14:07 am »

Vale, me pongo a sus pies, señor Oscuro! jejejeje

Joe, la cantidad de tiempo libre que teneis, jajajajajajajaja

En fin. Yo lo de conocerte lo decía metaforicamente, pero bueno... Ya veo que estás mal de lo tuyo jajajajaja Wink

Bueno, al tema, que me liais de mala manera, y al final me veo en un super levantando carritos con el poder de la fuerza.

- Entiendo las funciones lógicas (AND, OR y XOR), pero hay algo que no entiendo. Para limpiar el registro A -lease, ponerlo a 0- se hace un XOR A. Vale, aplicando la misma fe ciega que en Dionisio, me lo creo y como si nada. Pero si no me equivoco -lo que dudo sinceramente- la función XOR tiene una tabla de la verdad como:

x1  x2  Salida
0    0     0
1    0     1
0    1     1
1    1     0

Es decir, que los bits independientes del dato y del acumulador, para que este se ponga a 0, deben ser o ambos 1, ó ambos 0. La pregunta surge... ¿quien me dice a mi que esto va a ser así? El acumulador puede tener cualquier valor, ¿no?

Dicho esto, me pongo con la rutina de ayer de Robsy, que estoy en racha.

Darth Fistro, Dionisio & Cia: ¡Estais podridos! Pero me gusta el olor Wink

jajajaja. Saludos cordiales a todos Smiley
En línea
pitpan
Karoshi Forum's Guru
*******
Mensajes: 1812


« Respuesta #20 : 01 de Junio de 2007, 06:44:20 am »

XOR A es la notación oficial de ZILOG para referirse a XOR A,A. Por lo tanto, la tabla asociada es la siguiente:

A  A  A^A
--------------
0  0     0
1  1     0
--------------

Es decir, como hacer un XOR a A consigo mismo, lo que puede pasar es que cada bit del acumulador sea 1 o sea 0. En cualquier caso, el resultado de hacer una disyunción exclusiva resultará siempre en 0.

La única diferencia entre LD A,0 y XOR A es que LD A,0 no modifica las banderas de estado y XOR A sí que lo hace, dejándote las condiciones Z, NC y alguna más.

A seguir trabajando...
En línea
Shinzon
Karoshi Lover
***
Mensajes: 116


Email
« Respuesta #21 : 01 de Junio de 2007, 09:42:34 am »

El caso es que justo antes de entrar, me he dado cuenta de la tonteria que he dicho. Totalmente cierto.

Dicho esto... ¿cuando se hace XOR A, hay alguna forma de "resetear" los Flags ó o estos se resetea cuando se utiliza alguna otra instrucción?

Bueno, me voy coscando del tema Smiley

Por cierto, por ahora no tengo planteado savar ningun juego -no tengo el nivel, ni las ganas ni el tiempo-, aunque si alguien está esperando un NEMESIS ó algo así, tendría un planteamiento bastante "especial". Lo digo porque:

En línea
Shinzon
Karoshi Lover
***
Mensajes: 116


Email
« Respuesta #22 : 01 de Junio de 2007, 09:44:58 am »

... -continua-...

El pobre Doctor Venom, estará usando muletas.
Tendrá unas muelas que me rio yo de los agujeros negros.
Etc...

Vamos, que si saco algo, será bastante mas sencillo.

Dicho esto, sigo con mis estudios. Mas salu2.
En línea
Dioniso
Visitante
« Respuesta #23 : 01 de Junio de 2007, 09:52:05 am »

Dicho esto... ¿cuando se hace XOR A, hay alguna forma de "resetear" los Flags ó o estos se resetea cuando se utiliza alguna otra instrucción?

No te compliques y en ese caso haz simplemente un LD A,0.
En línea
Shinzon
Karoshi Lover
***
Mensajes: 116


Email
« Respuesta #24 : 01 de Junio de 2007, 11:28:06 am »

Vale, si eso es lo que tenía pensado, pero ¿hay alguna forma de resetear los Flags? Es que ahora que me pica el gusanillo... Smiley

De todas formas, y como conclusión personal, deduzco que:

- Se suele utilizar mas XOR A porque sólo ocupa 1 byte. Por contrapartida, afecta a los Flags Z y NC, los cuales, habría que resetear... Eso implicaría que:

* Habría que inserta alguna línea más de código, lo que sería contraproducente, ya que queremos optimizar y ahorrar memoria. Esto sería así en el caso, de que, por ejemplo, posteriormente queramos efectuar alguna operación, y al estar estos dos Flags afectados, podría darnos un error en la operación que efectuemos.

- Por parte de LD A, 0, tiene la desventaja que usa 2 bytes (una para el nemónico y otra para el dato). Sin embargo no afecta a ningún Flag, por lo que no habría que añadir más código.

Decidme si tiene alguna falla este razonamiento -es que como le doy al coco yo solo...- y así ver si estoy haciendo progresos.

Seguiremos Smiley
En línea
Dioniso
Visitante
« Respuesta #25 : 01 de Junio de 2007, 11:57:43 am »

Vale, si eso es lo que tenía pensado, pero ¿hay alguna forma de resetear los Flags? Es que ahora que me pica el gusanillo... Smiley

Pues no estoy seguro pero ... AND A no reseteaba las banderas?  Huh

Voy a buscar por internet pero creo que era así ... si mal no recuerdo.
En línea
Dioniso
Visitante
« Respuesta #26 : 01 de Junio de 2007, 12:02:34 pm »

Bueno, me autorespondo:

Después de un XOR A, para resetear las banderas haz un CP A.
En línea
Shinzon
Karoshi Lover
***
Mensajes: 116


Email
« Respuesta #27 : 01 de Junio de 2007, 01:54:37 pm »

¡Tenía que ser! Una autocomparación, que da una verdad como resultado. Si es que, parezco lerdo jajajajajaja

Vale, aunque quizás no sea el método más apropiado,  es bueno saber como funcionan las cosas. Así poco a poco, me voy metiendo de lleno.

Una vez mas, -para variar- me aprovecho, y solicito de algún editor de Sprites y Caracteres que dé los códigos en Hex, Bin ó Dec. Es para hacer unas pruebas con las rutinas de movimiento de Sprites, y empezar a definirlos, y todo eso.

Como decimos por aquí: Mila Esker! (mil gracias)

Windows nunca tendrá la magia de un público tan unido como nosotros. Smiley
En línea
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #28 : 01 de Junio de 2007, 02:44:23 pm »

Citar
Una vez mas, -para variar- me aprovecho, y solicito de algún editor de Sprites y Caracteres que dé los códigos en Hex, Bin ó Dec

Pues para no complicarte mucho puedes empezar con este:

TinySprite version 0.4.5

o este otro más simple:

MSX Sprite Draw, ver.3.0
« Última modificación: 01 de Junio de 2007, 02:45:56 pm por jltursan » En línea

Doom dee doom dee doom
Páginas: 1 [2]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!