Test Foro de elhacker.net SMF 2.1

Programación => Programación General => ASM => Mensaje iniciado por: snowspring en 16 Mayo 2018, 16:35 PM

Título: ensamblador dudas
Publicado por: snowspring en 16 Mayo 2018, 16:35 PM
Hola, buenas.
Quería ver si alguien me podría ayudar con un pequeño programita en ensamblador asm 6809.
El programa consiste en pedir una semilla inicial para generar tantos numeros aleatorios como indique la semilla y se van imprimiendo dichos números en pantalla. Despues de esto se tienen que mostrar de nuevo esa lista de numeros pero que dichos numeros aparezcan de manera ordenada.
Tengo ya las subrutinas en ficheros a parte hechas (leer_decimal, rand, srand, imprimir_decimal_ imprimir_cadena) y todas ellas por separado funcionan correctamente.
A la hora de hacer el main para llevar a cabo lo descrito antes con tan solo el codigo que dejo aqui abajo me da un error: "invalid opcode"
       
Código (asm) [Seleccionar]
 .module main

           ;definimos constantes
teclado     .equ 0xFF02
fin         .equ 0xFF01
pantalla    .equ 0XFF00

           ;.org 0x100
   .globl programa
   .globl rand
   .globl srand
   .globl leer_decimal
   .globl imprime_cadena
   

cont: .word 0

introduc_sem: .ascii "Introduce semilla:"
     .byte 0


programa:
ldx #0xE000
lda introduc_sem
jsr leer_decimal
std cont
jsr srand
std ,--x


bucle: jsr rand
      std ,--x
      ldd cont
      addd #0xFFFF
      cmpd #0
      bne bucle
     

acabar:
clra
sta fin

.area FIJA (ABS)
.org 0xFFFE ; vector de RESET
.word programa





Se me ha olvidado mencionar que lo que se supone que estoy intentando hacer en este fragmento de codigo es pedir la semilla, generar los numeros aleatorios y guardarlos en el registro X para no perder los numeros generados


· No se debe hacer doble post
>aquí las reglas del foro (http://foro.elhacker.net/reglas.htm)
-Engel Lex
Título: Re: ensamblador dudas
Publicado por: ivancea96 en 17 Mayo 2018, 13:53 PM
Invalid OpCode, ¿dónde?
Título: Re: ensamblador dudas
Publicado por: snowspring en 18 Mayo 2018, 18:18 PM
Cita de: ivancea96 en 17 Mayo 2018, 13:53 PM
Invalid OpCode, ¿dónde?
Muchas gracias por preguntar pero ya lo he conseguido corregir. De todas maneras te respondo, me daba invalid opcode al final del programa, no recuerdo ya exactamente el lugar