|
Mostrar Mensajes
|
Páginas: [1] 2 3
|
1
|
Programación / ASM / Carga de un kernel
|
en: 10 Octubre 2010, 20:11 pm
|
Hola como estan?¿ veran hasta hace poco realize una practia que consistia en crear un BootLoader que cargase un kernel,todo fue de maravilla gracias a bosotros ,lo que ahora me surge un serio problema,veran el kernel que cargue fue este: MOV AH,9 MOV AL,'=' MOV BX,7 MOV CX,10 INT 0x10 HANG: JMP HANG
Eso si me lo carga y me muestra 10 veces ese caracter,pero si hago este por ejemplo: XOR AX,AX MOV DS,AX MOV ES,AX MOV SI,MENSAJE JMP ESCRIBE ESCRIBE: LODSB OR AL,AL JZ FINAL MOV AH,0xE INT 0x10 ...
Ese no lo carga ni de broma,se queda como colgado,por que sucede esto?¿ i este kernel que he hecho no lo cargo,es decir si es ejecutado directamente como Boot si fucniona pero cuando lo cargo desde un BootLoader no se carga,y programas en C tampoco se me cargan,que sucede?¿ saludos y muchas gracias
|
|
|
2
|
Programación / ASM / Re: Leer Sectores
|
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: MOV AH,9 MOV AL,'=' MOV BX,7 MOV CX,10 INT 10H hang: JMP hang
Eso muestra 10 veces el caracter "==========" y yo probe con este: [BITS 16] [ORG 0] start: MOV AX,0 MOV ES,AX MOV DS,AX MOV SI,MENSAJE JMP ESCRIBE ESCRIBE: LODSB OR AL,AL JZ FINAL MOV AH,0x0E INT 0x10 JMP ESCRIBE FINAL: RET MENSAJE DB 'Hola mundo',0 TIMES 510 -($-start) DB 0 DW 0xAA55
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
|
|
|
3
|
Programación / ASM / Re: Leer Sectores
|
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
|
|
|
4
|
Programación / ASM / Re: Leer Sectores
|
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
|
|
|
5
|
Programación / ASM / Re: Leer Sectores
|
en: 18 Septiembre 2010, 18:32 pm
|
Hola Eternal,gracias por tu respuesta,entonces deberia hacer lo siguiente: JMP [ES:BX]
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
|
|
|
6
|
Programación / ASM / 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: [BITS 16] [ORG 0X7C00] resetdisk: mov ah, 0x00 ; Preparamos unidad mov dl, 0x03 ; Unidad DVD?¿ int 0x13 ; Ejecuta jc resetdisk readdisk: mov ah, 0x02 ; Leer Funcion mov al, 0x03 ; Sectores mov ch, 0x00 ; cilindro mov cl, 0x02 ; Sector mov dh, 0x00 ; Cabecera mov dl, 0x03 ; Unidad DVD?¿ int 0x13 ; Ejecutar jc readdisk jmp 0X8000:0000
El programa a cargar este: [bits 16] [org 0x8000] main: mov ah, 0x0E mov al, '.' int 0x10 jmp $
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!!!
|
|
|
8
|
Programación / Programación C/C++ / Crear proyectos binarios en C++
|
en: 12 Septiembre 2010, 19:54 pm
|
Bunas tardes a todos/as
desde hace una semana me puse a usar el IDE de Borland Builder C++,por el momento me va muy bien,pero me a surjido una duda,es posible realizar un proyecto pequeño y que me genere un archivo BIN en vez de un EXE?¿
y otra cosa que me surgio,por que con MAS32 no pueod hacer esto:
JMP 1000H:0000
?¿ saludos
|
|
|
10
|
Programación / Programación C/C++ / Re: Controles no visibles wxDev c++
|
en: 16 Agosto 2010, 19:01 pm
|
Que raro...ami eosme pasaba antes cuando usava el Dev-Cpp normal,tenia que crear los controles a base de Api CreateWindowEx,i no se me mostraban por que no usaba bien el commctrl32,en ese IDE (almenos el que tenia yo) tenias que ir a Opciones de proyecto i alli en parametros agregar : -lcomctrl32
creao que era asin pero eso es en caso de que uses un archivo manifest (para usar el estilo Windows XP en tus controles) yo solo te lo comento por que ami me paso algo parecido veo.
de todas formas espera a que te responda gente mas experta que yo
saludos
|
|
|
|
|
|
|