Programación General > ASM (Ensamblador)
Como Bootear Una Maquina
© Jonathan ©:
Eternal, me parecio interesante el comentario que has hecho, te enojas si te pido el codigo para verlo?... solo es una consulta :) .. estoy buscando info al respecto para ver si logro hacer algo similar. Saludos y Gracias de antemano :)
bob esponja:
aca hay algo que hice hace un tiempo como una broma con un amigo.
habiamos teniado la idea de un sistema operativo llamado diOS y quedo todo en la ruina, les paso el codigo fuente con unos bat que creo que lo construyen y lo copian a un disquete, despues de eso reinicien con el disquete puesto y veran algo simple pero que ayuda un poco.
espero comentarios
si no funciona o falta algo avisen
Eternal Idol:
--- Cita de: "© Jonathan ©" --- Eternal, me parecio interesante el comentario que has hecho, te enojas si te pido el codigo para verlo?... solo es una consulta :) .. estoy buscando info al respecto para ver si logro hacer algo similar. Saludos y Gracias de antemano :)
--- Fin de la cita ---
¿Como me va a molestar? Para nada, solo me jode un poco que me digas "has hecho" en vez de hiciste :D
Estoy pensando en hacer un mini tutorial al respecto ya que veo a bastantes personas interesadas en este tema. Se podria poner un poco de teoria, desarrollar el loader y explicar como lograr probarlo. :devil:
Aclaro que no soy un experto ni mucho menos en la materia, ni siquiera me gusta programar en 16 bits :whistling:
De cualquier manera aca tenes el codigo, NO REVISADO NI COMENTADO:
--- Código: Text --- .186.model tiny Codigo segment 'code' reset equ DB 0EAh, 0h, 0h, 0FFh, 0FFh IFDEF LOADER org 07C00hELSEIFNDEF org 0100hENDIF main: IFDEF LOADER mov ax, 0FFFFh mov ds, ax ENDIF mov ax, cs mov ds, ax mov si, offset msg call prints call getchar IFDEF LOADER reset ELSEIFNDEF call exit ENDIF exit : mov ah, 4Ch int 21h putchar: pusha mov ah, 0Eh xor bh, bh int 10h poparet prints: prints_bucle: lodsb cmp al, 0 jz prints_fin call putchar jmp prints_bucle prints_fin:ret getchar: xor ah, ah int 16hret msg db "Presione una tecla para continuar", 0 Codigo ends End Main
Eternal Idol:
--- Cita de: "bob esponja" --- aca hay algo que hice hace un tiempo como una broma con un amigo.
habiamos teniado la idea de un sistema operativo llamado diOS y quedo todo en la ruina, les paso el codigo fuente con unos bat que creo que lo construyen y lo copian a un disquete, despues de eso reinicien con el disquete puesto y veran algo simple pero que ayuda un poco.
espero comentarios
si no funciona o falta algo avisen
--- Fin de la cita ---
Muy interesante realmente, mi PC no tiene diskettera pero para algo esta Virtual PC (o VMWARE en su defecto).
Logre probarlo creando un disco virtual, esta muy bien, carga en memoria cuatro sectores apartir del segundo y salta ahi (en este caso es el kernel).
Eso si, no me apaga la maquina virtual, queda bloqueada. El reset funciona tal como en mi 'nano loader', saltando a la direccion de comienzo de la BIOS.
Las funciones para sacar por pantalla son muy parecidas a las que hice, me alegro :smartass:
En resumen, muy bueno, lastima que no lo hayan seguido.
Eternal Idol:
Recapitulando, parece que hay bastante interes por este tema en Argentina, no solo ustedes dos sino tambien Enko que fue el culpable de que haya hecho este 'nano loader', no se burlen demasiado que solo perdi una tarde en el :ph34r:
Si les interesa podriamos hacer un tutorial, esto va dirigido tanto a los que quieren aprender a hacerlo como a bob esponja que evidentemente podria ayudar muchisimo a su elaboracion.
PD. bob, si lo queres seguir ... no me molestaria en colaborar. Ademas me parecio muy gracioso! :smartass:
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa