[SCM] applications.git branch, master, updated. 676a902425dd32f84226308aa601f4c7d6227b15

ontologiae ontologiae at gmail.com
Mon Nov 22 18:53:54 UTC 2010


The following commit has been merged in the master branch:
commit 676a902425dd32f84226308aa601f4c7d6227b15
Author: ontologiae <ontologiae at gmail.com>
Date:   Mon Nov 22 19:52:44 2010 +0100

    install compiles

diff --git a/isaacos/x86/bootloader/boot.li b/isaacos/x86/bootloader/boot.li
index 7e7ee8e..f4ef4ec 100755
--- a/isaacos/x86/bootloader/boot.li
+++ b/isaacos/x86/bootloader/boot.li
@@ -52,24 +52,24 @@ Section Mapping
   + sectors_per_fat:UINTEGER_16;
   + sectors_per_track:UINTEGER_16;
   + nb_head:UINTEGER_16;
-  + hidden_sectors:UINTEGER_32
-  + nb_sectors_big:UINTEGER_32
+  + hidden_sectors:UINTEGER_32;
+  + nb_sectors_big:UINTEGER_32;
   
   // ( Fat 32bits )
-  + sectors_per_fat32:UINTEGER_32 // Nbr Secteur par FAT - 1
+  + sectors_per_fat32:UINTEGER_32;// Nbr Secteur par FAT - 1
   + flags_fat:UINTEGER_16; 
   + version_fat:UINTEGER_16;
-  + cluster_start_root:UINTEGER_32
-  + reserved_00:UINTEGER_32
-  + reserved_01:UINTEGER_32
-  + reserved_02:UINTEGER_32
-  + reserved_03:UINTEGER_32
+  + cluster_start_root:UINTEGER_32;
+  + reserved_00:UINTEGER_32;
+  + reserved_01:UINTEGER_32;
+  + reserved_02:UINTEGER_32;
+  + reserved_03:UINTEGER_32;
   
   // Drive information
   + bios_drive:UINTEGER_8;
   + reserved_04:UINTEGER_8;
   + ext_boot_signature:UINTEGER_8; // 29h
-  + serial_number:UINTEGER_32
+  + serial_number:UINTEGER_32;
   
   + vol_label_00:CHARACTER;
   + vol_label_01:CHARACTER;
@@ -94,16 +94,16 @@ Section Mapping
   
   // Isaac data
   
-  + sector_cluster:UINTEGER_32 // First cluster position.
-  + sector_root   :UINTEGER_32 // Root position.
-  + sector_fat    :UINTEGER_32 // FAT position.
-  + cluster       :UINTEGER_32 // Cluster current.
+  + sector_cluster:UINTEGER_32; // First cluster position.
+  + sector_root   :UINTEGER_32; // Root position.
+  + sector_fat    :UINTEGER_32; // FAT position.
+  + cluster       :UINTEGER_32; // Cluster current.
 
 Section Public  
   
   - is_fat32:BOOLEAN <- (ext_boot_signature=29h);
   
-  - put_isaac_data begin_partition:UINTEGER_32drive drv:UINTEGER_8 <-
+  - put_isaac_data begin_partition:UINTEGER_32 drive drv:UINTEGER_8 <-
   // Static Compute `sector_cluster', `sector_root' and `sector_fat'.
   (
     bios_drive:=drv;
diff --git a/isaacos/x86/bootloader/install.li b/isaacos/x86/bootloader/install.li
index 9c20379..243a853 100755
--- a/isaacos/x86/bootloader/install.li
+++ b/isaacos/x86/bootloader/install.li
@@ -14,9 +14,8 @@
 ///////////////////////////////////////////////////////////////////////////////
 Section Header
   
-  - name         := INSTALL;
+  + name         := INSTALL;
   
-  - category     := MACRO;
   
   - bibliography := "http://www.lisaac.org";
   - author       := "Sonntag Benoit (benoit.sonntag at lisaac.org)";
@@ -103,7 +102,7 @@ Section Private
   + isaac_head:UINTEGER_8;
   + isaac_cylinder:UINTEGER_16;
   + isaac_sector:UINTEGER_16;
-  + isaac_begin_partition:UINTEGER_32
+  + isaac_begin_partition:UINTEGER_32;
   
   //
   // Generic manager.
@@ -169,7 +168,7 @@ Section Private
     
     drive   := isaac_drive;
     storage := buf.storage;
-    `biosdisk(0x02, at drive, at head, at cylinder, at sector,1, at storage)`:BOOLEAN(TRUE,FALSE).if {
+    `biosdisk(0x02, at drive, at head, at cylinder, at sector,1, at storage)`:BOOLEAN{TRUE,FALSE}.if {
       crash_with_message "Error read bios disk 13h.\n";
     };
   );
@@ -180,7 +179,7 @@ Section Private
     
     drive   := isaac_drive;
     storage := buf.storage;
-    `biosdisk(0x03, at drive, at head, at cylinder, at sector,1, at storage)`:BOOLEAN(TRUE,FALSE).if {
+    `biosdisk(0x03, at drive, at head, at cylinder, at sector,1, at storage)`:BOOLEAN{TRUE,FALSE}.if {
       crash_with_message "Error write bios disk 13h.\n";
     };
   );
@@ -270,7 +269,8 @@ Section Private
       } else {
 	read_sector (isaac_head,isaac_cylinder,isaac_sector) in buffer;
       };
-      boot := BOOT.force_conversion (buffer.storage);  
+      // brutforce
+      boot := CONVERT(NATIVE_ARRAY(UINTEGER_8),BOOT).on (buffer.storage);  
       boot.display_all;
       // Saving old boot sector.
       (isaac_drive=080h).if {
@@ -328,9 +328,9 @@ Section Private
       // Write Boot signature. 
       buffer2.put 055h to 510;
       buffer2.put 0AAh to 511;
-      
+          
       // Calcul isaac data.
-      boot:=BOOT.force_conversion (buffer2.storage);  
+      boot:= CONVERT(NATIVE_ARRAY(UINTEGER_8),BOOT).on (buffer2.storage);  
       boot.put_isaac_data isaac_begin_partition drive isaac_drive;
       
       "New boot Isaac :\n".print;
@@ -393,11 +393,12 @@ Section Public
     \\t\t= Isaac install for x86 (01/2006) =\n\
     \\t\t=====================================\n\n".print;
     
-    title "Choice drive.";
+   /* title "Choice drive.";
     choice := choice 
     "1. Hard Disk.\n\
     \2. Floppy Disk.\n\
-    \Choice: " from '1' to '2';
+    \Choice: " from '1' to '2';*/
+    choice='1';
     
     (choice='1').if {
       title "Partition manager.";
@@ -410,6 +411,7 @@ Section Public
       isaac_sector:=1;
       isaac_begin_partition:=0;
     };
+
     title "Boot manager.";
     boot_manager;
     
diff --git a/isaacos/x86/bootloader/int13h.li b/isaacos/x86/bootloader/int13h.li
index e7779d3..e1d5956 100755
--- a/isaacos/x86/bootloader/int13h.li
+++ b/isaacos/x86/bootloader/int13h.li
@@ -38,31 +38,31 @@ Section Inherit
   
 Section Mapping
   
-  + packet_size:USMALLINT;
-  + reserved:USMALLINT;
+  + packet_size:UINTEGER_8;
+  + reserved:UINTEGER_8;
   
-  + nb_sector:USHORTINT;
+  + nb_sector:UINTEGER_16;
   
-  + offset_buffer :USHORTINT;
-  + segment_buffer:USHORTINT;
+  + offset_buffer :UINTEGER_16;
+  + segment_buffer:UINTEGER_16;
   
-  + sector_lba:ULONGINT;
+  + sector_lba:UINTEGER_64;
   
 Section Public
   
-  - read buf:FAST_ARRAY(USMALLINT) sector sec:ULONGINT :BOOLEAN <-
-  ( + buffer_adress:USHORTINT;
-    + packet_adress:USHORTINT;
-    + storage:NATIVE_ARRAY(USMALLINT);
-    + result:USHORTINT;
+  - read buf:FAST_ARRAY(UINTEGER_8) sector sec:UINTEGER_64 :BOOLEAN <-
+  ( + buffer_adress:UINTEGER_16;
+    + packet_adress:UINTEGER_16;
+    + storage:NATIVE_ARRAY(UINTEGER_8);
+    + result:UINTEGER_16;
         
     storage := buf.storage;    
     `{
       int (buffer_selector1,buffer_selector2);
       __dpmi_regs registres;`;
       
-      buffer_adress := `__dpmi_allocate_dos_memory(32,&buffer_selector1)`:USHORTINT; // Alloc DOS 512 bytes
-      packet_adress := `__dpmi_allocate_dos_memory( 1,&buffer_selector2)`:USHORTINT; // Alloc DOS  16 bytes 
+      buffer_adress := `__dpmi_allocate_dos_memory(32,&buffer_selector1)`:UINTEGER_16; // Alloc DOS 512 bytes
+      packet_adress := `__dpmi_allocate_dos_memory( 1,&buffer_selector2)`:UINTEGER_16; // Alloc DOS  16 bytes 
       
       packet_size    := 10h;
       reserved       := 0;
@@ -79,7 +79,7 @@ Section Public
       `registres.x.si=0`;
       `__dpmi_int(0x13,&registres)`;
   
-      result := `registres.x.ax`:USHORTINT;
+      result := `registres.x.ax`:UINTEGER_16;
             
       `dosmemget(@buffer_adress*16,512, at storage)`;
       
@@ -89,19 +89,19 @@ Section Public
     result = 0
   );
   
-  - write buf:FAST_ARRAY(USMALLINT) sector sec:ULONGINT :BOOLEAN <-
-  ( + buffer_adress:USHORTINT;
-    + packet_adress:USHORTINT;
-    + storage:NATIVE_ARRAY(USMALLINT);
-    + result:USHORTINT;
+  - write buf:FAST_ARRAY(UINTEGER_8) sector sec:UINTEGER_64 :BOOLEAN <-
+  ( + buffer_adress:UINTEGER_16;
+    + packet_adress:UINTEGER_16;
+    + storage:NATIVE_ARRAY(UINTEGER_8);
+    + result:UINTEGER_16;
         
     storage := buf.storage;    
     `{
       int (buffer_selector1,buffer_selector2);
       __dpmi_regs registres;`;
       
-      buffer_adress := `__dpmi_allocate_dos_memory(32,&buffer_selector1)`:USHORTINT; // Alloc DOS 512 bytes
-      packet_adress := `__dpmi_allocate_dos_memory( 1,&buffer_selector2)`:USHORTINT; // Alloc DOS  16 bytes 
+      buffer_adress := `__dpmi_allocate_dos_memory(32,&buffer_selector1)`:UINTEGER_16; // Alloc DOS 512 bytes
+      packet_adress := `__dpmi_allocate_dos_memory( 1,&buffer_selector2)`:UINTEGER_16; // Alloc DOS  16 bytes 
       
       packet_size    := 10h;
       reserved       := 0;
@@ -119,7 +119,7 @@ Section Public
       `registres.x.si=0`;
       `__dpmi_int(0x13,&registres)`;
   
-      result := `registres.x.ax`:USHORTINT;
+      result := `registres.x.ax`:UINTEGER_16;
             
       //`dosmemget(@buffer_adress*16,512, at storage)`;
       

-- 
applications.git



More information about the Lisaac-commits mailing list