[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