Enviado em 08/06/2019 - 08:59h
Olá pessoal !
//-------------------------------------------------------------------
//
// GENESIS OS:
//
// A BootLoader with Operating System ...
//
//
// COMPILE:
// gcc -s -c boot.s -o boot.o -Wall
// ld boot.o -o boot.bin -Ttext=0x7c00 -e _start
// objcopy -O binary boot.bin bkernel
// OR:
// make
//
//
// TESTING WITH QEMU:
// qemu-system-i386 bkernel
//
//
// CREATE A BOOTABLE CDROM:
// mkdosfs -C floppy.flp 1440 || exit
// dd status=noxfer conv=notrunc if=bkernel of=floppy.flp || exit
// mkisofs -R -b floppy.flp -o /temp/hello_boot.iso /temp/hello_boot
//
//
// REFERENCE:
// 01: https://github.com/mig-hub/mikeOS
// 02: https://github.com/mit-pdos/xv6-public
// 03: https://github.com/benchlab/benOS-Bootloaders
// 04: http://www.sde.cs.titech.ac.jp/~gondow/udos/index.html
// 05: https://github.com/microsoft/MS-DOS
// 06: https://github.com/cirosantilli/x86-bare-metal-examples
// 07: https://github.com/devversion/CKernel
//
//
// START DATE: 07/06/2019 - 17:20
//
//-------------------------------------------------------------------
//
.code16
.text
.globl _start;
_start:
jmp boot
nop
boot:
cli
//-----------------------------------------------
// basic setup:
//-----------------------------------------------
//
mov $0, %ax // set up segments
mov %ax, %ds
mov %ax, %es
mov %ax, %ss // setup stack
mov %ax, %si
//-----------------------------------------------
mov $0x7c00, %sp // stack grows downwards from 0x7C00
// Display: "Hello"
//
mov $0xe,%ah
mov $72,%al
int $0x10
mov $101,%al
int $0x10
mov $108,%al
int $0x10
int $0x10
mov $111,%al
int $0x10
label_forever:
hlt
jmp label_forever
//-----------------------------------------------
// strings:
//-----------------------------------------------
//
msg:
.asciz "Hello World"
//-----------------------------------------------
//--------- BOOT SIGNATURE 512 BYTES ----------
//-----------------------------------------------
. = _start + 510
.byte 0x55
.byte 0xaa
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Melhorando a precisão de valores flutuantes em python[AJUDA] (3)
Instalação Uefi com o instalador clássico do Mageia (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta