@@ -27,7 +27,7 @@ fn second_stage_end() -> *const u8 {
2727#[ no_mangle]
2828#[ link_section = ".start" ]
2929pub extern "C" fn _start ( disk_number : u16 , partition_table_start : * const u8 ) {
30- write ! ( screen:: Writer , "\n SECOND STAGE: " ) . unwrap ( ) ;
30+ writeln ! ( screen:: Writer , " -> SECOND STAGE " ) . unwrap ( ) ;
3131
3232 // parse partition table
3333 let partitions = {
@@ -59,28 +59,33 @@ pub extern "C" fn _start(disk_number: u16, partition_table_start: *const u8) {
5959 fat_partition. partition_type,
6060 PartitionType :: Fat12 ( _) | PartitionType :: Fat16 ( _) | PartitionType :: Fat32 ( _)
6161 ) ) ;
62- writeln ! ( screen:: Writer , "1" ) . unwrap ( ) ;
6362
6463 // load fat partition
6564 let mut disk = disk:: DiskAccess {
6665 disk_number,
6766 base_offset : u64:: from ( fat_partition. logical_block_address ) * 512 ,
6867 current_offset : 0 ,
6968 } ;
70- writeln ! ( screen:: Writer , "2" ) . unwrap ( ) ;
7169
7270 let mut fs = fat:: FileSystem :: parse ( disk. clone ( ) ) ;
73- writeln ! ( screen:: Writer , "3" ) . unwrap ( ) ;
7471
7572 let kernel = fs
7673 . find_file_in_root_dir ( "kernel-x86_64" )
7774 . expect ( "no `kernel-x86_64` file found" ) ;
78- writeln ! ( screen:: Writer , "4" ) . unwrap ( ) ;
7975
8076 for cluster in fs. file_clusters ( & kernel) {
81- writeln ! ( screen:: Writer , "kernel cluster: {cluster:?}" ) . unwrap ( ) ;
77+ let cluster = cluster. unwrap ( ) ;
78+ writeln ! (
79+ screen:: Writer ,
80+ "kernel cluster: start: {:#x}, len: {}" ,
81+ cluster. start_offset,
82+ cluster. len_bytes
83+ )
84+ . unwrap ( ) ;
8285 }
8386
87+ writeln ! ( screen:: Writer , "DONE" ) . unwrap ( ) ;
88+
8489 // TODO: Retrieve memory map
8590
8691 // TODO: Set up protected mode, or unreal mode
0 commit comments