elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  Leer Sectores
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Leer Sectores  (Leído 5,262 veces)
JaimeAsm

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Leer Sectores
« en: 17 Septiembre 2010, 21:23 pm »

Hola gente como andan?¿

Veran debo realizar un ejercicio con un BootLoader,tengo que hacer que me carge un Kernel,el kernel tambien lo he echo en Assembly,concreatemente el NASM,solo dice Hi Word,el caso es que nose como saltar al programa,pero les dire una cosa,debo hacerlo con un DVD,es decir el BootLoader lo grabo en un DVD (y fucniona perfectamente como si de un diskete se tratara) lo e probado i funciona pero no me carga el prgrama siguiente,alomejor no pongo bien los sectores a leer,o la unidad que va en el registro DL,asta lo que se el valor añadido a DL es la unidad a leer no?¿ osea 0 = A 1 = B y asin sucesivamente no?¿

pues yo puse el 3 que representaria la D (El DVD) seria correcto?¿

ayuda porfavor :(

les pongo el codigo aqui:

Código
  1. [BITS 16]
  2. [ORG 0X7C00]
  3.  
  4. resetdisk:
  5.  mov ah, 0x00 ; Preparamos unidad
  6.  mov dl, 0x03  ; Unidad DVD?¿
  7.  int 0x13   ; Ejecuta
  8.  jc resetdisk
  9.  
  10. readdisk:
  11.  
  12.  mov ah, 0x02  ; Leer Funcion
  13.  mov al, 0x03  ; Sectores
  14.  mov ch, 0x00  ; cilindro
  15.  mov cl, 0x02  ; Sector
  16.  mov dh, 0x00  ; Cabecera
  17.  mov dl, 0x03  ; Unidad DVD?¿
  18.  int 0x13   ; Ejecutar
  19.  jc readdisk
  20.  jmp 0X8000:0000
  21.  


El programa a cargar este:
Código
  1. [bits 16]
  2. [org 0x8000]
  3.  
  4.  
  5. main:
  6.  mov ah, 0x0E
  7.  mov al, '.'  
  8.  int 0x10  
  9.  
  10.  jmp $
  11.  

pero nada señores no hace nada!! llevo ya 2 dias rompiendome la cabeza por esta maldita practica :(

alguna ayuda?¿
por que no salta?¿


Grachies!!!




En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Leer Sectores
« Respuesta #1 en: 18 Septiembre 2010, 13:40 pm »

No le estas pasando la direccion donde cargar esos sectores ...

http://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D02h:_Read_Sectors_From_Drive

ES:BX    Buffer Address Pointer

¿¿Para que haces esos saltos con carry??


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
JaimeAsm

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Leer Sectores
« Respuesta #2 en: 18 Septiembre 2010, 18:32 pm »

Hola Eternal,gracias por tu respuesta,entonces deberia hacer lo siguiente:
Código
  1. JMP [ES:BX]
  2.  

no?¿

quedando en ES = SEGMENTO y en BX = DIRECCIÓN

creo vamos...:S

y otra cosa,para la unidad DVD seria 82h no?

teniendo en cuenta k el HDD es 80h....

saludos

« Última modificación: 18 Septiembre 2010, 19:29 pm por JaimeAsm » En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Leer Sectores
« Respuesta #3 en: 18 Septiembre 2010, 21:09 pm »

No me referia a eso sino que tenes que especificar en donde cargar esos sectores, la interrupcion espera parametros de entrada ahi, lee la referencia que te deje.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
JaimeAsm

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Leer Sectores
« Respuesta #4 en: 19 Septiembre 2010, 19:58 pm »

Ola eternal mira e probado este codiigo

http://www.organicdesign.co.nz/Writing_a_boot_loader_in_assembler


i a final de todo lo grabe en un CD pero no no carga,el Boot es un archivo BIN y el otro tambien(o no?¿)


que sucede?¿ esta mal ese codigo?¿

EI: juntando mensajes.

Hola como andan

bueno Eternal ya me repase de nuevo el link que me dejaste y bueno tambien consulte en un libro de Ensamblador a parte del BIOS i bueno finalmente entendi que en ES:BX va la direccion del buffer donde despues con JMP se salta lo probe i funciono mas o menos,solo me surje una duda,esta practica debo realizarla en un DVD,yo como se el sector exacto i la pista exacta donde se encuentra los datos que quiero cargar?¿ es posible saber eso?¿ :S funcionan igual los DVD?¿?¿

a y otra cosa,los datos que cargue tienen que ser igual k el BootLoader?¿ osea tienen que ser archivos cone xtension .BIN?¿

saludos y gracias
« Última modificación: 21 Septiembre 2010, 10:18 am por Eternal Idol » En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Leer Sectores
« Respuesta #5 en: 21 Septiembre 2010, 10:20 am »

¿Generas una imagen .iso para grabar en el DVD? Si es asi ahi podes ver en que sector lo generaste ...

¿Que datos? La extension es irrelevante ... grabas un conjunto de bytes en cualquier caso ...
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
JaimeAsm

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Leer Sectores
« Respuesta #6 en: 21 Septiembre 2010, 14:13 pm »

Hola Eternal,lo que genero son 2 archivos BIN,entonces que hago,me descargo un programa para unirlos y luego lo convierto en ISO?¿
 si es asin como veo el sector onde se grabo el programa que quiero cargar?¿

saludos
En línea

Arkangel_0x7C5


Desconectado Desconectado

Mensajes: 361



Ver Perfil
Re: Leer Sectores
« Respuesta #7 en: 23 Septiembre 2010, 10:53 am »

Hola Eternal,lo que genero son 2 archivos BIN,entonces que hago,me descargo un programa para unirlos y luego lo convierto en ISO?¿
 si es asin como veo el sector onde se grabo el programa que quiero cargar?¿

saludos
Tienes que buscar en el sistema de archivos del CD/DVD
El sistema de archivos es CDFS
En línea

JaimeAsm

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Leer Sectores
« Respuesta #8 en: 23 Septiembre 2010, 19:25 pm »

Hola como andan?¿

bueno finalmente consegui ue funcionara todo!! ya me carga el mini programa :) lo hacia mal con el NERO,:) pero solo hay un problema ahora,el por el momento solo me carga este programa:
Código
  1. MOV AH,9
  2. MOV AL,'='
  3. MOV BX,7
  4. MOV CX,10
  5. INT 10H
  6.  
  7. hang:
  8. JMP hang
  9.  


Eso muestra 10 veces el caracter "=========="

y yo probe con este:
Código
  1. [BITS 16]
  2. [ORG 0]
  3.  
  4. start:
  5.  
  6. MOV AX,0
  7. MOV ES,AX
  8. MOV DS,AX
  9. MOV SI,MENSAJE
  10. JMP ESCRIBE
  11.  
  12. ESCRIBE:
  13. LODSB
  14. OR AL,AL
  15. JZ FINAL
  16. MOV AH,0x0E
  17. INT 0x10
  18. JMP ESCRIBE
  19.  
  20. FINAL:
  21. RET
  22.  
  23. MENSAJE DB 'Hola mundo',0
  24.  
  25. TIMES 510 -($-start) DB 0
  26. DW 0xAA55
  27.  
  28.  

Este no me lo carga :S por que uno si y el otro no?¿ :S que yo sepa no hace falta por ese codigo pasar a modo protegido no?¿


saludos y muchisimas gracias pro toda la ayuda sin bosotros no seria posible gracias


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
sectores reubicados ubuntu 12.04
GNU/Linux
alex007 2 2,053 Último mensaje 23 Junio 2013, 19:45 pm
por RyogiShiki
Tarjeta RFID 1K con sectores 16 y 17
Hacking
Luisdp 3 2,979 Último mensaje 12 Junio 2023, 09:47 am
por C13
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines