idk what i added

This commit is contained in:
2025-12-30 22:52:30 +00:00
parent 0222a7adb9
commit e0809f84dc
10 changed files with 491 additions and 112 deletions

58
source/kernel/data.asm Normal file
View File

@@ -0,0 +1,58 @@
; Define Fat12 header
bdb_oem: db 'MSWIN4.1' ; ignore
bdb_bytes_per_sector: dw 200h ; = 512d
bdb_sectors_per_cluster: db 01h ; sector = cluster
bdb_reserved_sectors: dw 01h
bdb_fat_count: db 02h ; We've got a fat1 and fat2
bdb_dir_entries_count: dw 0E0h ; Maximum number of root directory entries
bdb_total_sectors: dw 0B40h ; = 2880d
bdb_media_descriptor_type: db 0F0h ; ignore
bdb_sectors_per_fat: dw 09h
bdb_sectors_per_track: dw 12h ; = 18d
bdb_number_of_heads: dw 02h ; top and bottom of the floppy disk
bdb_hidden_sectors: dd 0 ; ignore
bdb_large_sector_count: dd 0 ; total sector count for fat32 (0 for fat12 or fat16)
; extended boot record
ebr_drive_number: db 0 ; ignore
db 0 ; ignore
ebr_signature: db 29h ; boot signature, indicates that the next three fields are present (0x29)
ebr_volume_id: db 12h, 34h, 56h, 78h ; unique id for volume tracking
ebr_volume_label: db 'CRAWOS0.0.6' ; must be 11 bytes
ebr_system_id: db 'FAT12 ' ; must be 8 bytes
fat12_file_name: db ' ' ; 11 free bytes to store a filename in
boot_message: db 'OK] Kernel successfully loaded!\n\n', 0
user_input: times 20 db 0
prompt_length: db 20
prompt: db 'sh > ', 0
help_string: db 'HELP', 0
clear_string: db 'CLEAR', 0
reboot_string: db 'REBOOT', 0
pong_string: db 'PONG', 0
cat_string: db 'CAT', 0
ls_string: db 'LS', 0
help_text: db 'This is for Cowards:\n"LS" to list the directory,\n"CAT" to output the contents of a file,\n"HELP" for this helpful text,\n"CLEAR" to clear the screen,\n"REBOOT" or esc to reboot\n', 0
command_result_text: db 'You typed: ', 0
unknown_command: db 'Error: Unkown Command..\n ', 0
; Disk operations
disk_read_fail: db 'Error: Could not read disk\n', 0
file_not_found: db 'File not found\n', 0
too_long_filename: db 'Filename too long for Fat12\n', 0
file_found: db 'File found\n', 0
loading_root: db 'Loading root diretory\n', 0
read_only: db 'Read Only', 0 ; 1
hidden: db ' Hidden ', 0 ; 2
system: db ' System ', 0 ; 4
volume: db ' Volume ', 0 ; 8
directory: db 'Directory', 0 ; 10
archive: db ' Archive ', 0 ; 20
file_name_length: db 0
file_cluster: dw 0
file_length: dd 0
read_write_flag: db 02
empty_byte: db 0
empty_word: dw 0
empty_dword: dd 0