Woot. We're deep into freeldr. Printf is working, etc.
authorArt Yerkes <art.yerkes@gmail.com>
Wed, 28 Jun 2006 01:14:23 +0000 (01:14 +0000)
committerArt Yerkes <art.yerkes@gmail.com>
Wed, 28 Jun 2006 01:14:23 +0000 (01:14 +0000)
Forgot .bss.  TODO: retrieve .bss size in build step.

svn path=/branches/powerpc/; revision=22670

reactos/boot/freeldr/bootsect/ofwboot.s
reactos/boot/freeldr/freeldr/arch/powerpc/mach.c

index 3e69c82..62ced40 100644 (file)
@@ -34,7 +34,9 @@ _begin:
        addi    %r4,%r4,_binary_freeldr_tmp_end@l
        lis     %r5,_binary_freeldr_tmp_start@ha
        addi    %r5,%r5,_binary_freeldr_tmp_start@l
+       /* Make sufficient room for .bss */
        sub     %r4,%r4,%r5
+       addi    %r4,%r4,0x6000
                
        xor     %r5,%r5,%r5
        li      %r5,0x1000
index 90895d2..7c5c733 100644 (file)
@@ -284,14 +284,26 @@ void PpcInit( of_proxy the_ofproxy ) {
 
     chosen_package = ofw_finddevice( "/chosen" );
 
+    ofw_print_string("Chosen package: ");
+    ofw_print_number(chosen_package);
+    ofw_print_string("\n");
+
     ofw_getprop( chosen_package, "stdin",
                  (char *)&stdin_handle, sizeof(stdin_handle) );
 
-    stdin_handle = REV(stdin_handle);
+    ofw_print_string("ofw_getprop done\n");
+
+    /* stdin_handle = REV(stdin_handle); */
+
+    ofw_print_string("Populating MachVtbl: ");
+    ofw_print_number((int)&MachVtbl);
+    ofw_print_string("\n");
 
     MachVtbl.ConsPutChar = PpcPutChar;
     MachVtbl.ConsKbHit   = PpcConsKbHit;
     MachVtbl.ConsGetCh   = PpcConsGetCh;
+
+    ofw_print_string("About to do printf\n");
     
     printf( "stdin_handle is %x\n", stdin_handle );