Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: jim12328 en 11 Mayo 2014, 20:15 pm



Título: ayuda con este código en ensamblador
Publicado por: jim12328 en 11 Mayo 2014, 20:15 pm
Código
  1.  
  2. .model small
  3. .stack
  4. code segment para
  5. assume cs:code,ds:code
  6. org 100h
  7. start:
  8. mov cx,0h
  9. unlock:
  10. mov ah,45h
  11. mov al,01h
  12. mov dl,cl
  13. int 13h
  14. eject:
  15. mov ah,46h
  16. mov al,0
  17. mov dl,cl ;s.o.
  18. int 13h
  19. cmp ah,0b1h
  20. je unlock
  21. inc cl
  22. jnz unlock
  23. mov ax,4c00h
  24. int 21h
  25. code ends
  26. end start  
  27.  
  28.  
hola tengo este código que se supone que abre la bandeja del cd rom, compila bien pero al final no hace nada, alguien que me pueda decir que le hace falta para abrir la bandeja del cd rom por favor alguien que me pueda ayudar


Título: Re: ayuda con este código en ensamblador
Publicado por: Eternal Idol en 11 Mayo 2014, 21:13 pm
¿Un S.O. arcaico de 16 bits como MS-DOS? Depuralo con debug para ver que retorna cada interrupcion de la BIOS ...

http://www.ctyme.com/intr/rb-0713.htm
http://www.ctyme.com/intr/rb-0606.htm#Table234


Título: Re: ayuda con este código en ensamblador
Publicado por: jim12328 en 12 Mayo 2014, 00:21 am
hola !
ya lo depure en debug y es como un ciclo que nunca termina
compila bien y todo pero no me abre la bandeja del cd rom
estoy utilizando dosbox por que tengo windows 7 y es en tasm
que crees que este mal ?


Título: Re: ayuda con este código en ensamblador
Publicado por: Eternal Idol en 12 Mayo 2014, 13:44 pm
A mi me termina, siempre devuelve FF como error: FFh    sense operation failed (hard disk). No tengo ni la menor idea de si el DosBox soporta esto ... probe todas las opciones para montar el CD ...

http://www.dosbox.com/wiki/MOUNT

¿De donde sacaste el codigo? No se si funciona eso realmente ...

http://stackoverflow.com/questions/9380667/eject-cd-optical-drive-in-assembly-language

Tal vez con MSCDEX:
http://makbit.com/articles/mscdex.txt

Sino, no se, los CDs son posteriores al arcaico MS-DOS incluso ...


Título: Re: ayuda con este código en ensamblador
Publicado por: jim12328 en 12 Mayo 2014, 19:37 pm
el problema no es el dosbox, el problema es el programa la int 13h es la que maneja del cd rom y la subfuncion 45 y 46 es para abrir y ejecutar eso está bien el problema es que le hace falta algo para abrir pero no se que sea :(


Título: Re: ayuda con este código en ensamblador
Publicado por: simorg en 12 Mayo 2014, 20:47 pm
Yá tienes otro hilo abierto con el mismo problema, y con respuestas.

http://foro.elhacker.net/programacion_general/abrir_bandeja_de_cd_rom_con_ensamblador-t414361.0.html;msg1941510#msg1941510


No se deben abrir dos hilos iguales al mismo tiempo.

Te cierro el otro.


Título: Re: ayuda con este código en ensamblador
Publicado por: x64core en 12 Mayo 2014, 22:42 pm
Yo apuesto por incompatibilidad. podes preguntar aquí: http://masm32.com/board/ Ellos probablemente te daran más información.