start messing with fat32
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
# Define the object files
|
||||
OBJS = bin/boot.o bin/kernel.o bin/idt.o bin/isr.o bin/screen.o bin/utils.o bin/string.o bin/stdio.o bin/disk.o bin/pic.o bin/pit.o bin/keyboard.o bin/paging.o bin/page.o
|
||||
OBJS = bin/boot.o bin/kernel.o bin/idt.o bin/isr.o bin/screen.o bin/utils.o bin/string.o bin/stdio.o bin/disk.o bin/pic.o bin/pit.o bin/keyboard.o bin/paging.o bin/page.o bin/fat.o
|
||||
|
||||
# Define the compiler and assembler
|
||||
CC = gcc -D__is_katauos
|
||||
@@ -10,7 +10,7 @@ CFLAGS = -std=gnu99 -ffreestanding -O0 -Wall -Wextra -m32 -g
|
||||
ASFLAGS = -f elf32
|
||||
|
||||
# Define the linker flags
|
||||
LDFLAGS = -ffreestanding -O0 -nostdlib -m32 -g
|
||||
LDFLAGS = -ffreestanding -O0 -nostdlib -m32 -g -lgcc
|
||||
LDSCRIPT = link.ld
|
||||
|
||||
# Define the output file
|
||||
@@ -18,9 +18,32 @@ OUTPUT = myos.bin
|
||||
|
||||
all: $(OUTPUT)
|
||||
|
||||
image:
|
||||
create-image:
|
||||
cp myos.bin grubshit/boot/
|
||||
grub-mkrescue -o boot.iso grubshit
|
||||
#grub-mkrescue -o boot.iso grubshit
|
||||
dd if=/dev/zero of=boot.iso bs=1M count=256
|
||||
fdisk boot.iso
|
||||
#sudo mkdosfs -F 32 -I boot.iso
|
||||
sudo losetup /dev/loop0 boot.iso
|
||||
sudo losetup /dev/loop1 boot.iso -o 1048576
|
||||
#sudo mkdosfs -F32 -f 2 /dev/loop1
|
||||
sudo mkfs.vfat -F 32 -f 2 /dev/loop1
|
||||
sudo mount /dev/loop1 /mnt
|
||||
sudo grub-install --root-directory=/mnt --no-floppy --modules="normal part_msdos ext2 multiboot biosdisk" /dev/loop0 #there was biosdev also
|
||||
sudo cp -r grubshit/boot/ /mnt/
|
||||
sync
|
||||
sudo umount /mnt
|
||||
sudo losetup -D
|
||||
|
||||
image:
|
||||
cp myos.bin grubshit/boot
|
||||
sudo losetup /dev/loop0 boot.iso
|
||||
sudo losetup /dev/loop1 boot.iso -o 1048576
|
||||
sudo mount /dev/loop1 /mnt
|
||||
sudo cp -r grubshit/boot /mnt/
|
||||
sync
|
||||
sudo umount /mnt
|
||||
sudo losetup -D
|
||||
|
||||
test:
|
||||
qemu-system-i386 -drive file=boot.iso,media=disk,format=raw -m 512M -d int
|
||||
@@ -73,6 +96,9 @@ bin/paging.o: src/paging.c
|
||||
bin/page.o: src/page.asm
|
||||
$(AS) $(ASFLAGS) $< -o $@
|
||||
|
||||
bin/fat.o: src/fat.c
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
clean:
|
||||
rm -rf bin/
|
||||
rm -f $(OUTPUT)
|
||||
|
||||
Reference in New Issue
Block a user