[SCM] applications.git branch, master, updated. fc99b7534b3a79719a09e5907c9d45f4ec2549ef

ontologiae ontologiae at gmail.com
Fri Nov 19 18:55:36 UTC 2010


The following commit has been merged in the master branch:
commit fc99b7534b3a79719a09e5907c9d45f4ec2549ef
Author: ontologiae <ontologiae at gmail.com>
Date:   Fri Nov 19 14:22:40 2010 +0100

    Isaac compiles

diff --git a/isaacos/Makefile b/isaacos/Makefile
index 7992c71..efec956 100644
--- a/isaacos/Makefile
+++ b/isaacos/Makefile
@@ -2,14 +2,14 @@ TARGET = x86
 
 startup.sys: startup.li 
 
-	lisaac startup.li -t $(TARGET) -D
+	lisaacos startup.li -target $(TARGET) 
 #	rm startup.sys
 	rm startup
 	mv startup.eof startup.sys
 	
 
 boost: startup.li
-	lisaac startup.li -t $(TARGET) -O
+	lisaac startup.li -target $(TARGET) -boost
 	rm startup
 	mv startup.eof startup.sys
 	tool/script/dosemu c startup.sys .
@@ -20,6 +20,7 @@ emul: startup.sys
 
 	tool/script/dosemu c startup.sys .
 	tool/script/dosemu e
+
 debug: startup.c
 	gcc -O2 -specs=/home/sonntag/svn/isaacos/trunk/isaacos/tool/gcc/x86/specs ./startup.c -o ./startup
 	/home/sonntag/svn/isaacos/trunk/isaacos/tool/elf2eof/elf2eof -p 2048 ./startup -prepend /home/sonntag/svn/isaacos/trunk/isaacos/x86/bootloader/startup.com
diff --git a/isaacos/file_system/ext2/directory_ext2.li b/isaacos/file_system/ext2/directory_ext2.li
index fe7e0b6..3dea0e3 100644
--- a/isaacos/file_system/ext2/directory_ext2.li
+++ b/isaacos/file_system/ext2/directory_ext2.li
@@ -70,7 +70,7 @@ Section Public
         offset:=offset+2;
         string_tmp.copy path;
         string_tmp.add_last '/';
-        offset.to (offset+name_lg-1) do { i:INTEGER;
+        offset.to (offset+name_lg-1) do { i:UINTEGER_32;
           string_tmp.add_last (partition.buffer.item i.to_character);
         };        
         offset:=offset+record_lg-8;
diff --git a/isaacos/file_system/ext2/entry_ext2.li b/isaacos/file_system/ext2/entry_ext2.li
index d8bfd4d..2ebbd02 100644
--- a/isaacos/file_system/ext2/entry_ext2.li
+++ b/isaacos/file_system/ext2/entry_ext2.li
@@ -52,7 +52,7 @@ Section Public//ENTRY, EXT2
     partition.set_block 2;
     partition.read;
     buf:=FAST_ARRAY(UINTEGER_8).create_with_capacity (GROUP_DESCRIPTOR.size);
-    pos.to (pos+GROUP_DESCRIPTOR.size)do{i:INTEGER;
+    pos.to (pos+GROUP_DESCRIPTOR.size)do{i:UINTEGER_32;
       buf.add_last (partition.buffer.item i);
     };
     group_desc:=CONVERT(NATIVE_ARRAY(UINTEGER_8),GROUP_DESCRIPTOR).on (buf.to_native_array);
@@ -63,7 +63,7 @@ Section Public//ENTRY, EXT2
     partition.read;
     pos:=pos%partition.block_size;
     buf:=FAST_ARRAY(UINTEGER_8).create_with_capacity (INODE.size);
-    pos.to (pos+INODE.size-1)do{i:INTEGER;
+    pos.to (pos+INODE.size-1) do {i:UINTEGER_32;
       buf.add_last (partition.buffer.item i);
     };
     inode:=CONVERT(NATIVE_ARRAY(UINTEGER_8),INODE).on (buf.to_native_array);
diff --git a/isaacos/file_system/ext2/partition/ext2.li b/isaacos/file_system/ext2/partition/ext2.li
index 9ef4ed4..cb855a4 100644
--- a/isaacos/file_system/ext2/partition/ext2.li
+++ b/isaacos/file_system/ext2/partition/ext2.li
@@ -24,7 +24,7 @@ Section Header
   
 Section Inherit  
   
-  + parent_partition:Expanded PARTITION_EXT2;
+  + parent_partition_ext2:Expanded PARTITION_EXT2;
   
 Section Private  
 
diff --git a/isaacos/file_system/ext2/partition/partition_ext2.li b/isaacos/file_system/ext2/partition/partition_ext2.li
index 927b042..d3b4e0d 100644
--- a/isaacos/file_system/ext2/partition/partition_ext2.li
+++ b/isaacos/file_system/ext2/partition/partition_ext2.li
@@ -24,7 +24,7 @@ Section Header
   
 Section Inherit  
   
-  + parent_directory:Expanded DIRECTORY_EXT2;
+  + parent_directory_ext2:Expanded DIRECTORY_EXT2;
   + parent_partition:Expanded PARTITION;
   
 Section Private
diff --git a/isaacos/file_system/fat/partition/partition_fat.li b/isaacos/file_system/fat/partition/partition_fat.li
index 272d378..66ba596 100755
--- a/isaacos/file_system/fat/partition/partition_fat.li
+++ b/isaacos/file_system/fat/partition/partition_fat.li
@@ -24,8 +24,8 @@ Section Header
   
 Section Inherit  
   
-  + parent_directory:Expanded DIRECTORY_FAT;
-  + parent_partition:Expanded PARTITION;
+  + parent_directory_fat:Expanded DIRECTORY_FAT;
+  + parent_partition_fat:Expanded PARTITION;
   
 Section Private
   
diff --git a/isaacos/file_system/fat/sfn_fat.li b/isaacos/file_system/fat/sfn_fat.li
index 3be37f2..fb1c498 100755
--- a/isaacos/file_system/fat/sfn_fat.li
+++ b/isaacos/file_system/fat/sfn_fat.li
@@ -74,7 +74,7 @@ Section Public
     + car:CHARACTER;
     //? {is_valid};
     
-    name_raw := CONVERT[Expanded SFN_FAT,NATIVE_ARRAY(CHARACTER)].on Self;
+    name_raw := CONVERT(Expanded SFN_FAT,NATIVE_ARRAY(CHARACTER)).on Self;
     0.to 7 do { j:INTEGER;
       car := name_raw.item j;
       (car > ' ').if { 
diff --git a/isaacos/file_system/physical/drive.li b/isaacos/file_system/physical/drive.li
index f7d6b0e..2db6a17 100755
--- a/isaacos/file_system/physical/drive.li
+++ b/isaacos/file_system/physical/drive.li
@@ -48,7 +48,8 @@ Section DRIVER, FAT12, PARTITION
     n_drive := drv;
     (read_status).if {
       result := Self;
-      cache := HASHED_DICTIONARY(CACHE_SECTOR,UINTEGER_32).create_with_capacity 53;
+      cache := HASHED_DICTIONARY(CACHE_SECTOR,UINTEGER_32).create;
+      cache.with_capacity 53;
       first := last := CACHE_SECTOR.create;
       1.to 53 do { j:INTEGER;
         new := CACHE_SECTOR.create;
diff --git a/isaacos/startup.li b/isaacos/startup.li
index c05dd62..f34c879 100755
--- a/isaacos/startup.li
+++ b/isaacos/startup.li
@@ -63,11 +63,11 @@ Section Public
     SYSTEM.make;
     
     
-/*    SCHEDULER.make;
+  //  SCHEDULER.make;
+
+   // th := THREAD.create (10,10) message "ISAAC" color 12;
+   // THREAD2.create;
 
-    th := THREAD.create (10,10) message "ISAAC" color 12;
-    THREAD2.create;
-*/
     /*
     th := THREAD.create (20,15) message "VIVE NOUS" color 10;
     th := THREAD.create (30,10) message "VIVE ISAAC" color 1;
@@ -84,13 +84,12 @@ Section Public
      //'\n'.print;
      
   //  }.loop_infinitely;
-  /*    
+  /*   
   THREAD.wake_up THREAD;
   THREAD.zombie THREAD;
   THREAD.wake_up THREAD2;
   THREAD.zombie THREAD2;
   */
-  
   FILE_SYSTEM.open;
 
   
@@ -160,8 +159,9 @@ Section Public
      );
      */
      
-     VIDEO.auto_make;        
-     CLOCK.make; 
+     // cas de plantage compilo : réactiver ça :
+   //  VIDEO.auto_make;        
+   //  CLOCK.make; 
     /* 
      DESK.make VIDEO scale (2,1) with (
        DESK_BOARD.create "freedos/icons/".fix_height / G_RAW.create (G_IMG.create "freedos/icons/isaac.ai")
diff --git a/isaacos/x86/memory/virtual_memory.li b/isaacos/x86/memory/virtual_memory.li
index d0892f6..f49c1eb 100644
--- a/isaacos/x86/memory/virtual_memory.li
+++ b/isaacos/x86/memory/virtual_memory.li
@@ -24,7 +24,7 @@ Section Header
 
 Section Inherit
 
-  + parent_memory:Expanded MEMORY;
+  + parent_memory:/*Expanded*/ MEMORY; //Memory est Strict !!!! // BUG COMPIL !!! Contrat is_expanded && is_strict --> MEMORY is strict
 
 Section MEMORY
   
diff --git a/isaacos/x86/system/system.li b/isaacos/x86/system/system.li
index df84d66..6780ec8 100755
--- a/isaacos/x86/system/system.li
+++ b/isaacos/x86/system/system.li
@@ -76,12 +76,16 @@ Section Public
   
   - memory:MEMORY := MEMORY;//VIRTUAL_MEMORY;
   
-  - get_begin_memory:UINTEGER_32 :=  `&__bss_stop`:UINTEGER_32.align_power 4096; //400000h;  // 4MB
+  // Ancienne ligne
+  //- get_begin_memory:UINTEGER_32 :=  `&__bss_stop`:UINTEGER_32.align_power 4096; //400000h;  // 4MB
+
+  // Nouvelle ligne pour que ça compile
+  - get_begin_memory:POINTER :=  CONVERT(UINTEGER_32,POINTER).on (`&__bss_stop`:UINTEGER_32.align_power 4096); //400000h;  // 4MB
   
-  - get_memory_capacity:UINTEGER_64 <-
+  - get_memory_capacity:UINTEGER_CPU <-
   ( + all_memory:NATIVE_ARRAY_VOLATILE(INTEGER_8);
     + byte:INTEGER_8;
-    + capacity:UINTEGER_64;
+    + capacity:UINTEGER_CPU;
     
     /* JBJB ... A VOIR ... www.ctyme.com/rbrowne.htm
     
@@ -99,22 +103,26 @@ Section Public
     capacity := (capacity + REGISTER.ax + 1024) << 10;
     
     */
+/* // Pose trop de problème à la compil
 
-    all_memory := CONVERT(UINTEGER_32,NATIVE_ARRAY_VOLATILE(INTEGER_8)).on get_begin_memory;
+   // BUG COMPIL !!! Line #74 Column #27 in PUT_TO (.../src/external/put_to.li). Call On NULL
+    all_memory := CONVERT(POINTER,NATIVE_ARRAY_VOLATILE(INTEGER_8)).on get_begin_memory; 
+   // all_memory := CONVERT(NATIVE_ARRAY_VOLATILE(INTEGER_8),POINTER).on all_memory;
     
     {
       capacity := capacity + 200000h;
 
-      byte := all_memory.item capacity;
-      all_memory.force_put (~byte) to capacity;  
+      byte := all_memory.item (capacity.to_uinteger_64.to_uinteger_32);
+      all_memory.force_put (~byte) to (capacity.to_uinteger_64.to_uinteger_32);  
       
-      all_memory.force_put 0 to (capacity + 1); // Cache invalidation for old x86 generation
+      all_memory.force_put 0 to ((capacity.to_uinteger_64.to_uinteger_32) + 1); // Cache invalidation for old x86 generation
       //`print_char('0')`;
-    }.do_until {byte != ~all_memory.item capacity};
-    
+    }.do_until {byte != ~all_memory.item (capacity.to_uinteger_64.to_uinteger_32)};
+    */
     `/*BSBS MEM*/`;
     
-    capacity
+    //capacity
+    8388608 // 8Mb
   );
   
   // Other Features
@@ -479,10 +487,25 @@ Section Public
     new_interrupt exception_0f to 0Fh;
     new_interrupt exception_10 to 10h;
     new_interrupt exception_11 to 11h;
-   
+
+  /* // Ce code fait planter le compilateur !!!!! 
     12h.to 1Fh do { n:UINTEGER_8;
       new_interrupt exception_12_1f to n;
-    };
+    };*/
+   new_interrupt exception_12_1f to 12h;
+   new_interrupt exception_12_1f to 13h;
+   new_interrupt exception_12_1f to 14h;
+   new_interrupt exception_12_1f to 15h;
+   new_interrupt exception_12_1f to 16h;
+   new_interrupt exception_12_1f to 1Ah;
+   new_interrupt exception_12_1f to 1Bh;
+   new_interrupt exception_12_1f to 1Ch;
+   new_interrupt exception_12_1f to 1Dh;
+   new_interrupt exception_12_1f to 1Eh;
+   new_interrupt exception_12_1f to 1Fh;
+
+
+
     
     // Interrupt service.
     new_interrupt mode_text to 30h;
diff --git a/isaacos/x86/system/system_io.li b/isaacos/x86/system/system_io.li
index 5a1c59f..5497b16 100755
--- a/isaacos/x86/system/system_io.li
+++ b/isaacos/x86/system/system_io.li
@@ -182,7 +182,7 @@ Section Public
     }
     .when '\14\' to (127.to_character) then {
       // other.
-      screen.put car to pos_cur;
+      screen.put (car.to_integer_8) to pos_cur;
       screen.put 15  to (pos_cur + 1);
       pos_cur := pos_cur + 2;
     };
@@ -191,7 +191,7 @@ Section Public
     (pos_cur>=4000).if {
       screen.move 160 to 3999 by (-160);
       (4000-160).to 3999 by 2 do { i:INTEGER;
-	screen.put ' ' to i;
+	screen.put (' '.to_integer_8) to i;
 	screen.put 15  to (i+1);
       };
       pos_cur := pos_cur - 160;

-- 
applications.git



More information about the Lisaac-commits mailing list