Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/04/2010, 14:15
Riki_89D
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 15 años
Puntos: 5
BootLoader en ASM

Hola soy nuevo en este foro espero me puedan ayudar por que lo necesito urgentemente :(

me hacen hacer un ejercicio de escribir un BootLoader en ASM para luego ejecutarlo desde un CD/DVD al arranque del PC,solo tiene que decirme "Hola"

el codigo que tengo es el siguiente:
Código ASM:
Ver original
  1. .286P
  2. .MODEL TINY,STDCALL
  3. .CODE
  4. ORG 7C00H
  5. START:
  6. XOR AX,AX
  7. MOV DS,AX
  8. LEA SI,MENSAJE
  9. JMP ESCRIBE
  10. ESCRIBE:
  11. LODSB
  12. OR AL,AL
  13. JZ FINAL
  14. MOV AH,0EH
  15. INT 10H
  16. JMP ESCRIBE
  17. FINAL:
  18. RET
  19. MENSAJE DB 'Hola',0H
  20. DB 510-($-START) DUP(0)
  21. DW 0AA55H
  22. END START

Bien una vez tengo ese code echo con el masm32) pongo el archivo .asm en la carpeta bin,despues ejecuto desde la consola el ejecutable ml para ensamblar con la siguiente linea:

ml -c Boot.asm

i me lo ensambla bien!

despues ejecuto el link16 de la siguiente forma

link16 Boot.OBJ,Boot.BIN,MODEL/TINY

i me sale todo bien,afinal me queda un archivo BIN de 512 bytes,que es lo que tiene que ocupar el sector de arranque los primeros 512 bytes!

despues de todo eso pruebo el archivo BIN con un maquina virtual,en mi caso qemu ago lo siguiente:

qemu -fda Boot.BIN

i efectivamente!! funciona! y con virtualbox tmb funciona si le digo que cargue una imagen de disquette,pero nose como hacerlo para grabarlo en un DVD :( el nero no me deja,me dice que el archivo esta vacio o que no cotiene pistas o algo asin no lo entiendo :(


salu2