Autor Tema: MICROPROCESADOR MC68000  (Leído 61473 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #15 en: 11 de Agosto de 2005, 12:59:00 »
Aqui va otro ejemplito mas, esta vez usaremos dos perifericos(switch"s y display 7 segmentos), el programa consiste en que cada switch controla un display que cada vez que pulsemos un switch se va incrementando el correspondiente display en una unidad:

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       16/julio/04    
;Programa: Switch y 7 segmentos
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado almacenar direccion de switch
;               A0:    Almacena direccion de tabla e ilumina 1º 7 segmentos
;               A1:    Almacena direccion de tabla e ilumina 2º 7 segmentos
;               A2:    Almacena direccion de tabla e ilumina 3º 7 segmentos
;               A3:    Almacena direccion de tabla e ilumina 4º 7 segmentos                                      
;
;Resumen:   Programa que enciende 7 segmento adecuado segun switch y lo incrementa de 0-9
;           Solo estan activos los 4 switch de 0-3, del 4-7 no actuan                      
;-------------------------------------------------------------------------------------------
        org     $400                    ;inicio programa
*****VARIABLES*************************
TABLA   dc.b    %00111111               ;0 on: A0=$400 ->inicio tabla
        dc.b    %00000110               ;1 on: A0=$401
        dc.b    %01011011               ;2 on: A0=$402
        dc.b    %01001111               ;3 on: A0=$403
        dc.b    %01100110               ;4 on: A0=$404
        dc.b    %01101101               ;5 on: A0=$405
        dc.b    %01111101               ;6 on: A0=$406
        dc.b    %00000111               ;7 on: A0=$407
        dc.b    %01111111               ;8 on: A0=$408
        dc.b    %01100111               ;9 on: A0=$409 ->fin tabla
SWITCH  equ     $E001                   ;direccion efectiva de los switches
*****PROGRAMA**************************
main    move.b  #%00111111,$E017        ;ilumino 0 en 1º 7 segmentos
        lea     TABLA+1,A0              ;cargo direccion segunda TABLA en A0(carga 2º direccion ya que esta iluminado 0)
        move.b  #%00111111,$E015        ;ilumino 0 en 2º 7 segmentos
        lea     TABLA+1,A1              ;cargo direccion segunda TABLA en A1(carga 2º direccion ya que esta iluminado 0)
        move.b  #%00111111,$E013        ;ilumino 0 en 3º 7 segmentos
        lea     TABLA+1,A2              ;cargo direccion segunda TABLA en A2(carga 2º direccion ya que esta iluminado 0)
        move.b  #%00111111,$E011        ;ilumino 0 en 4º 7 segmentos
        lea     TABLA+1,A3              ;cargo direccion segunda TABLA en A3(carga 2º direccion ya que esta iluminado 0)
progr   move.b  SWITCH,D0               ;cargo direccion de SWITCH en registro D0
        CMP     #%00000001,D0           ;¿primer switch on?
        BNE     second                  ;no ->ve a second
        move.b  (A0)+,$E017             ;si ->ilumina numero correspondiente en 1º 7 seg e incrementa direccion A0
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A0                ;¿A0 esta en fin TABLA?
        BEQ     uno                     ;si ->ve a uno
        BRA     progr                   ;no ->ve a progr
*****SEGUNDO 7 SEGMENTOS***************
second  CMP     #%00000010,D0           ;¿segundo switch on?
        BNE     third                   ;no ->ve a third
        move.b  (A1)+,$E015             ;si ->ilumina numero correspondiente en 2º 7 seg e incrementa direccion A1
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A1                ;¿A1 esta en fin TABLA?
        BEQ     dos                     ;si ->ve a dos
        BRA     progr                   ;no ->ve a progr
*****TERCER 7 SEGMENTOS****************
third   CMP     #%00000100,D0           ;¿tercer switch on?
        BNE     four                    ;no ->ve a four
        move.b  (A2)+,$E013             ;si ->ilumina numero correspondiente en 3º 7 seg e incrementa direccion A2
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A2                ;¿A2 esta en fin TABLA?
        BEQ     tres                    ;si ->ve a tres
        BRA     progr                   ;no ->ve a progr
*****CUARTO 7 SEGMENTOS****************
four    CMP     #%00001000,D0           ;¿cuarto switch on?
        BNE     five                    ;no ->ve a five
        move.b  (A3)+,$E011             ;si ->ilumina numero correspondiente en 4º 7 seg e incrementa direccion A3
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A3                ;¿A3 esta en fin TABLA?
        BEQ     cuatro                  ;si ->ve a cuatro
five    BRA     progr                   ;no ->ve a prog
*****SUBRUTINAS************************
uno     BSR     loop                    ;ve a subrutina uno
        BRA     progr                   ;ve a progr
dos     BSR     loop1                   ;ve a subrutina dos
        BRA     progr                   ;ve a progr                
tres    BSR     loop2                   ;ve a subrutina tres
        BRA     progr                   ;ve a progr
cuatro  BSR     loop3                   ;ve a subrutina cuatro
        BRA     progr                   ;ve a progr
loop    lea     TABLA,A0                ;carga direccion TABLA en A0(actualiza A0)
        rts                             ;fin subrutina uno
loop1   lea     TABLA,A1                ;carga direccion TABLA en A1(actualiza A1)
        rts                             ;fin subrutina dos
loop2   lea     TABLA,A2                ;carga direccion TABLA en A2(actualiza A2)
        rts                             ;fin subrutina tres
loop3   lea     TABLA,A3                ;carga direccion TABLA en A3(actualiza A3)
        rts                             ;fin subrutina cuatro
***************************************
        end     main                    ;fin programa

Hasta el siguiente ejemplito!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #16 en: 12 de Agosto de 2005, 13:06:00 »
El ejemplito de hoy es con el periferico 7segmentos, utilizaremos los 4 que estan disponibles en el simulador del IDE68k, el programa consiste en un contador ascendente que cuenta de 0000-9999:

 ;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       12/julio/04    
;Programa: Contador
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado almacenar constante de retardo
;               D1:    Registro encargado de ser contador de retardo
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;               A0:    Almacena direccion de tabla e ilumina 1º 7 segmentos
;               A1:    Almacena direccion de tabla e ilumina 2º 7 segmentos
;               A2:    Almacena direccion de tabla e ilumina 3º 7 segmentos
;               A3:    Almacena direccion de tabla e ilumina 4º 7 segmentos
;
;Notas:     Subrutina delay: Retardo de un segundo
;                                    
;
;Resumen:   Programa que cuenta de forma ascendente numeros del 0000-9999                      
;-------------------------------------------------------------------------------------------
         org     $400                   ;inicio de programa
*****VARIABLES*************************
TABLA    dc.b    %00111111              ;0 on: A0=$400
         dc.b    %00000110              ;1 on: A0=$401
         dc.b    %01011011              ;2 on: A0=$402
         dc.b    %01001111              ;3 on: A0=$403
         dc.b    %01100110              ;4 on: A0=$404
         dc.b    %01101101              ;5 on: A0=$405
         dc.b    %01111101              ;6 on: A0=$406
         dc.b    %00000111              ;7 on: A0=$407
         dc.b    %01111111              ;8 on: A0=$408
         dc.b    %01100111              ;9 on: A0=$409
RET      equ     $FFFFF                 ;constante de retardo
*****PROGRAMA**************************        
main     move.b  #%00111111,$E015       ;0 on en 2º 7seg
         move.b  #%00111111,$E013       ;0 on en 3º 7seg
         move.b  #%00111111,$E011       ;0 on en 4º 7seg
         lea     TABLA+1,A3             ;carga segunda direccion tabla en A3.Segunda direccion porque el 0 ya esta encendido
ini2     lea     TABLA+1,A2             ;carga segunda direccion tabla en A2.Segunda direccion porque el 0 ya esta encendido
ini1     lea     TABLA+1,A1             ;carga segunda direccion tabla en A1.Segunda direccion porque el 0 ya esta encendido
ini0     lea     TABLA,A0               ;carga direccion de tabla en A0
*****PRIMER 7 SEGMENTOS****************
loop     move.b  (A0)+,$E017            ;ilumina numero correspondiente en 1º 7seg e incrementa direccion A0
         BSR     delay                  ;salta subrutina delay
         CMP     #$40A,A0               ;¿A0 esta en fin de tabla??
         BNE     loop                   ;no es fin tabla ->ve a loop
         BEQ     next                   ;si es fin tabla ->ve a next ->2º 7 segmentos
*****SEGUNDO 7 SEGMENTOS***************
next     CMP     #$40A,A1               ;¿A1 esta en fin de tabla?
         BNE     loop1                  ;no es fin tabla ->ve a loop1
         BEQ     next1                  ;si es fin tabla ->ve a next1 ->3º 7 segmentos
loop1    move.b  (A1)+,$E015            ;ilumina numero correspondiente e incrementa A1
         BRA     ini0                   ;ve a ini0
*****TERCER 7 SEGMENTOS****************
next1    move.b  #%00111111,$E015       ;0 on en 2º 7 segmentos
         CMP     #$40A,A2               ;¿A2 esta en fin de tabla?
         BNE     loop2                  ;no es fin tabla ->ve a loop2
         BEQ     next2                  ;si es fin tabla ->ve a next2 ->4º 7 segmentos
loop2    move.b  (A2)+,$E013            ;ilumina numero correspondiente e incrementa A2
         BRA     ini1                   ;ve a ini1
*****CUARTO 7 SEGMENTOS****************
next2    move.b  #%00111111,$E013       ;0 on en 3º 7 segmentos
         CMP     #$40A,A3               ;¿A3 esta en fin de tabla?
         BNE     loop3                  ;no es fin tabla ->ve a loop3
         BEQ     main                   ;si es fin tabla ->ve a main ->no hay mas 7 segmentos
loop3    move.b  (A3)+,$E011            ;ilumina numero correspondiente e incrementa A3
         BRA     ini2                   ;ve a ini2
*****RETARDO DE 1SEG***********
delay   move.b  #0,D1                   ;D1=0: contador para conseguir un retardo de un segundo
loop4   move.l  #RET,D0                 ;D0=RET
        add.b   #1,D1                   ;D1=D1+1
loop5   sub.l   #1,D0                   ;D0=D0-1
        TST.l   D0                      ;¿D0==0?
        BNE     loop5                   ;no es igual a cero ->ve a loop5
        CMP     #4,D1                   ;¿es un segundo?Para que sea un segundo D1=4
        BNE     loop4                   ;no es un segundo ->ve a loop4
        rts                             ;si es un segundo ->fin de subrutina
*******************************        
        end     main                    ;fin programa

Nos vemos en el siguiente ejemplito!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado xootraoox

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 248
RE: MICROPROCESADOR MC68000
« Respuesta #17 en: 13 de Agosto de 2005, 03:22:00 »
Ufff... amigazo.... que decirte ... la verdad es que esta forma de informar es bastante practica y sirve de mucho en realidad es asi como se aprende con facilidad... bueno al parecer por estos lados no es de mucho interes hablar de motorola o freescale (como prefieras) pero la verdad es que por lo que he visto es bastante mas interesante que los pic... a la vez tambien es muyyyy poca la informacion que se encuentra comparado con los pics, lo que lo hace mas dificil de aprender de forma independiente...

bueno sin mas que decir te felicito por la iniciativa que has tomado y a la ves te pido que no pares ya que de verdad que es de utilidad este material....

despide

-==XooTRAooX==-

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #18 en: 13 de Agosto de 2005, 14:51:00 »
Por finn!!! jeje a la entrada nº 17 ha contestado alguien!!!jeje ya creia que estaba solo con el 68k jeje, bueno la verdad es que informacion de otros dispositivos, ya sean microcontroladores o microprocesadores, son bastante inferior a la informacion que te puedes encontrar para PIC"s, pero dentro de lo que cabe, el 68K fue en su momento(y sigue siendo) un poderoso microprocesador que aunque llego tarde al mercado(ya que la tecnologia avanzaba) fue muy popular por su facilidad de programacion y manejo, bueno gracias por tu respuesta y a seguir con este "cacharrito" que cuanto mas lo usas mas lo quieres jeje

-----------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------

El programa Slider & Bar
Código: ASM
  1. ;---------------------------------------------------------
  2. ;       VsZeNeR'05      
  3. ;      14/Agosto/05    
  4. ;Programa: Slider & Led's
  5. ;Simulador MC68000: IDE68K(vs1.35)    
  6. ;
  7. ;Entrada:       Slider
  8. ;Salida:        Led's
  9. ;
  10. ;Resumen: Programa que maneja el Slider y se refleja Led's                      
  11. ;---------------------------------------------------------
  12.  
  13.         org     $400          ;inicio programa
  14. SLIDER  equ         $E005               ;etiqueta direccion slider
  15. BAR       equ       $E007         ;etiqueta direccion Bar
  16.        
  17. main    move.b  SLIDER,BAR    ;mueve contenido del slider a Bar display
  18.         bra     main          ;vuelve a main (bucle infinito)
  19.  
  20.         end     main


Suerte!!! :wink:
« Última modificación: 15 de Julio de 2006, 09:48:32 por vszener »
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #19 en: 13 de Agosto de 2005, 15:11:00 »
Desde esta direccion s epueden descargar los tres programas anteriores:
          1º.Switch y 7 segmentos
          2º.Contador
          3º.Slider & Bar




Suerte!!! :wink:
« Última modificación: 15 de Julio de 2006, 09:46:42 por vszener »
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #20 en: 14 de Agosto de 2005, 08:41:00 »
Hoy voy a explicar de forma basica como manejar el simulador IDE 68k, para ello utilizare el ultimo ejemplo del Slider&Bar. Empezamos!!!

1º. Arrancar el programa 68000 IDE


2º. Escribimos el programa y le damos al iconito del disco para guardar el programa

Arriba saldra al lado de 68000 el nombre que le hemos puesto al programa

3º.Compilar: para ello pulsamos el iconito que tiene cruzado un martillo y otra cosa que no se que es jeje Vamos en la ilera de iconitos el priemro de los 4 ultimos

De todas formas pasad el puntero del raton sobre los iconitos y saldra su nombre(asamble/buil all) es para compilar

4º. Simularlo: Para ello pulsamos el iconito que esta al lado del icono de compilar, es una lupa con rayitas amarillas chicas en la mitad del icono(Run visual simulator)


5º. Perifericos: Seleccionamos los perifericos que programamos, para ello en el menu pinchamos peripherals y alli seleccionamos los perifericos, en este caso slider y bar display


6º Simulamos el programa para ello pulsamos la flecha grande verde que apunta hacia abajo

Si queremos simularlo paso a paso la primera flecha verde
Si queremos simularlo despacio la segunda flecha verde

Bueno, esta es la pekeñita introduccion a manejar el simulador, ya explicare como crear proyectos y compilar en alto nivel como c y demas cositas, espero que me explicara bien jeje!!! ya nadie tiene excusa de utilizar el programa y hacer algun que otro ejemplito ennn jejeGiño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado xootraoox

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 248
RE: MICROPROCESADOR MC68000
« Respuesta #21 en: 14 de Agosto de 2005, 08:50:00 »
Una pregunta amigazo....

el hardware necesario para trabajar con el ya mencionado es muy complicado??

la verdad es que no he leido nada aun sobre el pero quisiera tener una referencia para ver si es que puedo empezar a experimentar con el.....

es posible armarlo por uno mismo

o solo basta con un simple programador como es en el caso de los hc08 (MON08)

bueno espero todo el desarrollo sea tan accequible como con otros micros lo es

despide nuevamente
-==XooTRAooX==-

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #22 en: 14 de Agosto de 2005, 09:23:00 »
Ummmm la verdad que el hardware no es que sea muy complicado, no va ser como el hardware de un pic, ten en cuenta que estamos hablando de un microprocesador, es decir de un "sistema abierto" el cual necesita memoria externa y demas dispositivos para un optimo funcionamiento, aun asi con algunos conocimientos de electronica podemos hacer una "placa base" para el 68k funcione correctamente. Sobre el tema de programar el dispositivo la verdad que yo conozco los TM-683 que aparte son entrenadores del mismo Ic, que es el que yo utilizo. Si tienes en mente en meter mano a una aplicacion con este dispositivo ten en cuenta que es un microprocesador, por lo demas no tienes que tener muxos inconvenientes en armar un circuito practico con el, lo dificil es encontrar un programador....pero vamos estamos manos a la obra!!!Giño


PD: Aunque creo que existen programadores para este dispositivo e incluso los venden...haber si encuentro algo y te comento.
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #23 en: 14 de Agosto de 2005, 09:30:00 »
Aqui la nueva entrega de programitas calentitos al dia!!!jeje bien este es muy similar al anterior por no decir que es igual, lo unico que cambia es el periferico a tratar, esta vez utilizaremos el slider y los led"s, son 8 led"s y el slider esta comprendido entre valores de 0-255....8 led"s pueden ser bit"s 8 bits se pueden representar hasta 256 mas o menos lo que abarca el slider, asi que aki tenemos una representacion en binario, cada led encendido representa un 1 y los apagados un 0....asi ke tenemos un numero de 8 bits en binario que dara el valor del slider en decimal jeje:

;---------------------------------------------------------
;       VsZeNeR"05      
;      14/Agosto/05    
;Programa: Slider & Led"s
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       Slider
;Salida:        Led"s
;
;Resumen: Programa que maneja el Slider y se refleja Led"s                      
;---------------------------------------------------------

        org     $400          ;inicio programa
SLIDER  equ       $E005      ;etiqueta direccion slider
LED     equ       $E003         ;etiqueta direccion led
       
main    move.b  SLIDER,LED    ;mueve contenido del slider a led
        bra     main          ;vuelve a main (bucle infinito)

        end     main

Hasta la proxima!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado xootraoox

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 248
RE: MICROPROCESADOR MC68000
« Respuesta #24 en: 14 de Agosto de 2005, 09:36:00 »
opppssss... ok... en realidad no me gusta eso de los microprocesadores por el momento, asi que por ahota esta descartado hasta nuevo aviso...

desde ya en todo caso se agradece el aorte que estas haciendo `para esta gran comunidad

Desconectado Modulay

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 2651
RE: MICROPROCESADOR MC68000
« Respuesta #25 en: 08 de Septiembre de 2005, 19:22:00 »
Pues tengo un pequeño problemilla a ver si alguien me puede ayudar.No tengo demasiado claro que condición ó condiciones se deben dar para que se produzca el salto a la rutina B_R

Codigo:

FUNCION2          LEA        INICIO_CADENA,A0
      MOVE.L  #$10,D0
B_REPRE      CMPI.B  #$0D,(A0)
      DBEQ    D0,B_R
      SUBI.L  #1,D0
                                .
      .
      .
B_R      MOVE.B  (A0)+,CODIGO
      .
      .
      .
      RTS



A mi entender,las condiciones para saltar a B_R son que D0 sea distinto de 0 y que el byte apuntado por A0 sea distinto de $0D.En el momento en que alguna de las dos ya no se cumpla,no se produce el salto.Pues bien,lo he simulado y no hace eso ni por asomo

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #26 en: 17 de Septiembre de 2005, 18:02:00 »
Ke tal Modulay!!!haber visto por encima el codigo, creo que el fallo esta en la instruccion DBEQ D0,B_R si lo que quieres es que salte a B_R cuando D0 sea distinto de 0 entonces no debes poner EQ en DBcc ya que EQ=equal=igual a cero, por lo tanto esa instruccion salta a B_R cuando vale cero(todo lo contrario a lo que tu deseas), para saltar cuando D0 sea distinto de cero debes poner NE es decir DBNE D0,B_R.....espero que sea lo que pedias!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado Modulay

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 2651
RE: MICROPROCESADOR MC68000
« Respuesta #27 en: 17 de Septiembre de 2005, 19:15:00 »
Si,he expresado justo lo contrario de lo que tenía en mente.
A ver,antes de entrar a decrementar D0,comprueba el contenido de A0.Si éste fuera $0D se produciría el salto al primer paso por el DBEQ ¿no?.Si dicha comparación no provoca el salto sería la llegada de D0 a 0 quien lo provocaría ¿no?
Hay una cosa que sigo sin entender.Se supone que estos saltos condicionales se basan en el estado del bit Z.Si tras la comparación del registro A0,este bit se pusiera a 1...¿que pasaría al ejecutar DBEQ? ¿se comprobaría en primera instancia el contenido de Z y se realizaría el salto sin decrementar D0? ¿se decrementaría pero no se comprobaría si ha llegado a 0?
Lo digo pq se me antoja la posibilidad de machacar el resultado de la primera comprobacion con el obtenido en la segunda y basarse unicamente en el valor de D0 para realizar o no el salto

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: MICROPROCESADOR MC68000
« Respuesta #28 en: 19 de Septiembre de 2005, 03:57:00 »
¡Qué raro hablas desde que dejaste los PIC! loco

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: MICROPROCESADOR MC68000
« Respuesta #29 en: 19 de Septiembre de 2005, 17:44:00 »
Haber las instrucciones de comparacion utilizan el bit Z, eso si en tu programa falta lo que quieres comparar, es decir, en el trozo de codigo:
Codigo:
CMPI.B #$0D,(A0)
DBEQ D0,B_R

debajito del COMPI.B debes poner el salto a realizar es decir si quieres que salte si es cero a la siguiente instruccion debes poner BEQ sig
Codigo:
          CMPI.B #$0D,(A0)
           BEQ      sig
           BNE      sig_out
sig      DBEQ D0,B_R
sig_out .....


Es decir, debes especificar los saltos, aqui te puedes descargar las instrucciones resumidas:
http://miarroba.com/foros/ver.php?foroid=348538&temaid=3442593

Vamos para hacer el codigo mas optimo seria algo asi asi:
Codigo:
          CMPI.B #$0D,(A0)
           BNE      sig_out
           DBEQ D0,B_R
           ........
sig_out .....


Mejor asi que ir comprobando el bit Z del CCR....recordar que el bit Z se pone a 1 cuando el resultado de una operacion o de una transferencia(MOVE) es CERO.
Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte


 

anything