Commit graph

3273 commits

Author SHA1 Message Date
fanoI
74534282bc Merge pull request #448 from jp2masa/TestsUpdate
Tests Update
2016-08-30 13:56:11 +02:00
fanoI
81402241c0 Fixed Template for Visual Basic kernel
- Visual Basict projects do not accept ';' as separator between the constant definitions they accept instead ','
- The example kernel was wrong as nothing was really echoed back!
2016-08-29 15:44:57 +02:00
José Pedro
479c5ed8ff Comment failing tests 2016-08-27 17:25:25 +01:00
Charles Betros
85103e9d9b RAT progress 2016-08-26 07:02:18 -05:00
fanoI
84f628614f Merge branch 'master' of https://github.com/CosmosOS/Cosmos 2016-08-25 15:47:54 +02:00
fanoI
0dbb621c5d Fixed DataMember to handle long / ulong values (that is the correct NASM type 'dq' is emitted) 2016-08-25 15:43:52 +02:00
Charles Betros
4ab093e732 Merge pull request #394 from MichaelTheShifter/fat-stuff
Adds plug for System.IO.File.Delete(), and adds deletion capabilities to FAT.
2016-08-24 20:17:55 -05:00
José Pedro
74ccda1ffc Finished merging 2016-08-24 20:04:07 +01:00
José Pedro
a3b055fa7c Merge branch master into KeyboardUpdate 2016-08-24 19:45:25 +01:00
José Pedro
3238ebce24 Small change 2016-08-24 19:39:04 +01:00
fanoI
4dbad9501d Merge pull request #435 from Unknown6656/date-time-functions
Added Stopwatch, Thread.Sleep and some CPUID implementation
2016-08-24 19:39:12 +02:00
José Pedro
92dad7b905 Merge branch 'master' of https://github.com/CosmosOS/Cosmos into TestsUpdate 2016-08-23 16:48:19 +01:00
fanoI
e2f363a200 Merge branch 'master' of https://github.com/CosmosOS/Cosmos
# Conflicts:
#	Tests/Cosmos.Compiler.Tests.Bcl/System/DoubleTest.cs
#	Tests/Cosmos.Compiler.Tests.Bcl/System/SingleTest.cs
2016-08-22 17:12:59 +02:00
fanoI
ad960c9a1a Continuation of Float work
- Fixed Single.ToString() on special cases (infinities, NaN and 0) and aumented the range of printable values
- Fixed Double.ToString(): it always printed "Double Overrange" for a bug in opcode ldarga
- Fixed opcode ldarga: the displacement of the argument variable was off of 4 bytes
- Fixed opcodes shr, shr_un and shl when the shift was more that 32 bytes, added to BCL relative tests
- Added BLC tests regarding BitConverter and unsafe code
- Moved the meat of the code of Single.ToString() and Double.ToString() to the class StringHelper together with the analogous methods for numer types
- Re-added _floatsignbit to CosmosAssembler.cs so the neg test should not fail anymore
- Removed all code relative to x87 that I had left under #if false
- Clean up
2016-08-22 16:31:22 +02:00
Unknown6656
bc8e7a7659 Reverted the changed XOR-call 2016-08-19 19:38:05 +02:00
Unknown6656
a7f72cc2e6 Fixed bool-bool-operations 2016-08-19 18:50:03 +02:00
Unknown6656
4030c1336b Changed XOR call, as it is not implemented for boolean 2016-08-19 18:20:37 +02:00
Unknown6656
f246908358 Added the german keyboard layout
* Added the German keyboard layout and made the keyboard implementation
more scalable and modular to permit future foreign keyboards.
* Added support for ALTGR-keypresses
* Added support for the OEM-102-key
* Cleaned up some code
2016-08-19 18:12:25 +02:00
Unknown6656
3ae267a1d5 Switched to expression-bodied methods
Used C#6's feature of expression-bodied methods due to readability and
code size reduction
2016-08-19 16:52:26 +02:00
Unknown6656
a0bfff9f37 Fixed time measurement 2016-08-19 09:59:14 +02:00
Charles Betros
045fe549fb Merge branch 'master' 2016-08-18 16:55:23 -05:00
Charles Betros
565053414d Merge pull request #369 from fanoI/master
- Initial work as for https://github.com/CosmosOS/Cosmos/issues/359
2016-08-18 16:32:23 -05:00
fanoI
ec6e231ac9 - Bugfix Shr_un does not really did a shift right unsigned
- Bugfix Shr does not really did a shift right signed
- Bigfix ShiftRighDouble was implemented as  ShiftLeftDouble
2016-08-18 20:10:10 +02:00
José Pedro
153cde7d5e - CosmosVFS.GetDirectoryListing(DirectoryEntry): "Argument is null or empty" error - Fixed
- File.Delete and Directory.Delete implementations - Fully Working

- Change Guess demo references to Project References - Done
2016-08-18 15:32:29 +01:00
Charles Betros
73b81c7bcc Working on rat. 2016-08-18 07:32:45 -05:00
Unknown6656
593aefad6c sry ... forgot to rename one function occurence
well ... this is awkward ....
2016-08-18 13:18:40 +02:00
Unknown6656
743b6c9a6f Rewritten ASM code to use the XS-class
I have rewritten the code to use the `XSharp.Compiler.XS`-class inside
the plug-file and I have renamed the internal functions
2016-08-18 13:15:33 +02:00
Unknown6656
c950605c71 removed the PlugRequired-Property for the CPUID-functions 2016-08-14 19:46:18 +02:00
Unknown6656
037cfcf459 Implemented Thread::sleep(int) and StopWatch::GetTimestamp() 2016-08-14 19:05:23 +02:00
Unknown6656
d31ac91b97 Added CPUID functions 2016-08-14 18:19:31 +02:00
Unknown6656
19bc57bf7f Revert "Added Stopwatch and Thread.Sleep implementation + added some cpuid-functions"
This reverts commit 1d53deb45e.
2016-08-14 18:04:11 +02:00
Unknown6656
1d53deb45e Added Stopwatch and Thread.Sleep implementation + added some cpuid-functions 2016-08-14 17:54:03 +02:00
Unknown6656
1fd7a0367c Added ASM instructions and basic DateTime-implementation
Added the x86-instructions 'LEA', 'RDTSC' and 'RDMSR'.
Added a simplistic plug for 'system::datetime', which now contains the
method for fetching the current date/time
2016-08-14 06:06:30 +02:00
José Pedro
ed181c503c Added "Save Log" button to the Test Runner UI. Added tests for StreamReader, StreamWriter, BinaryReader and BinaryWriter for FAT. Added MemoryStream tests. 2016-08-11 17:02:23 +01:00
Charles Betros
b8f35da19c Merge branch 'master' into rat 2016-08-10 22:22:22 -05:00
Charles Betros
00ae14ab24 Fix newobj for char[] 2016-08-10 19:27:52 -05:00
Charles Betros
98528fabc2 Remove temp breakpoints and commented lines. 2016-08-10 19:27:28 -05:00
Charles Betros
c8dfbd8127 Fix array copy. 2016-08-10 18:06:18 -05:00
Kevin
23c7e4c01e Fixed (short-short) op bug 2016-08-10 13:15:12 -04:00
fanoI
e6143b75df Source lose some changes... forced them! 2016-07-31 19:55:12 +02:00
fanoI
e36aeefd1a Trying to enanche the constant variables declaration:
- Added a version of XS.SSE.MoveSS that accepts a String as source (to use the constant variable name)
- Added XS.SSE2.XorPd
- Neg opcode declares the constant inline and not uses XS.LiteralCode anymore

Please note that this code actually fails the second float neg test for no valid reason!
2016-07-31 17:01:50 +02:00
José Pedro
47222a3a96 Keyboard update: KeyboardManager static class to manage different keyboards. 2016-07-18 21:26:35 +01:00
José Pedro
eede1e6675 Better keyboard implementation 2016-07-18 02:42:33 +01:00
fanoI
6e1bfb8d92 - Implemented Neg Opcode for floating point
- Added test for Neg OpCode for float and double
- Conv.U8 wrongly changed the sign of double before converting it to ulong
- Div_Un, Add_Ovf and Add_Ovf_Un had code for floating point but they should not have that for ECMA specs
2016-07-17 17:05:00 +02:00
José Pedro
2408319b41 Keyboard Update: now it's possible to change keyboard layout(it wasn't due to Rings); Fix typo in Cosmos.System.Plugs.RuntimeTypeImpl.cs; Implement op_Inequality(implemented as op_Equality and not sure if it's needed with the changes but needed it's needed by many system methods) 2016-07-12 22:38:37 +01:00
fanoI
0af7c5b78f - Finally the conversion of an ulong to a double works (IL opcode conv.r.un is completed)
- TestRunner should not be Run in process!
- Removed all unused 'variables' in CosmosAssembler.cs
- Fixed X#: FloatStoreAndPop() ignored the RegisterSize value
2016-07-03 15:00:04 +02:00
Charles Betros
37a4e71deb Merge some compiler changes from master. 2016-06-29 23:18:04 -05:00
Charles Betros
b7cd470c33 Merge 2016-06-28 23:36:03 -05:00
Charles Betros
607db8f5ff Merge missing stuff from plug manager. 2016-06-28 23:32:53 -05:00
Matthijs ter Woord
c74800a073 Merge branch 'master' into rat 2016-06-28 10:29:07 -04:00
Charles Betros
1bb7d6335f Merge from master. 2016-06-26 13:44:56 -05:00
Matthijs ter Woord
218f3ef03a Merge pull request #395 from jp2masa/ConsoleUpdate
Implemented some console methods and fixed a bug in the console, copying the behaviour of background color in windows console applications.
2016-06-26 20:27:26 +02:00
Matthijs ter Woord
5ba4fa9913 Merge pull request #391 from jp2masa/master
Replace PXE interface textbox with a combobox, filled with local machine interfaces
2016-06-26 19:27:15 +02:00
Matthijs ter Woord
8cfa0b89ca Merge pull request #389 from MichaelTheShifter/console
Added more keys to the ConsoleKeyEx -> ConsoleKey converter.
2016-06-26 19:09:01 +02:00
fanoI
56beccb8af Merge branch 'master' of https://github.com/CosmosOS/Cosmos
# Conflicts:
#	source/Cosmos.sln
2016-06-26 15:09:13 +02:00
fanoI
4e1c505e52 Merge branch 'master' of https://github.com/CosmosOS/Cosmos
# Conflicts:
#	Tests/Cosmos.Compiler.Tests.SingleEchoTest/Kernel.cs
#	source/Cosmos.Assembler/Assembler.cs
#	source/Cosmos.IL2CPU/IL/Add.cs
#	source/Cosmos.IL2CPU/IL/Ceq.cs
#	source/Cosmos.IL2CPU/IL/Cgt.cs
#	source/Cosmos.IL2CPU/IL/Cgt_Un.cs
#	source/Cosmos.IL2CPU/IL/Clt.cs
#	source/Cosmos.IL2CPU/IL/Clt_Un.cs
#	source/Cosmos.IL2CPU/IL/Conv_I2.cs
#	source/Cosmos.IL2CPU/IL/Conv_I4.cs
#	source/Cosmos.IL2CPU/IL/Conv_I8.cs
#	source/Cosmos.IL2CPU/IL/Conv_R4.cs
#	source/Cosmos.IL2CPU/IL/Conv_R_Un.cs
#	source/Cosmos.IL2CPU/IL/Conv_U1.cs
#	source/Cosmos.IL2CPU/IL/Conv_U2.cs
#	source/Cosmos.IL2CPU/IL/Div.cs
#	source/Cosmos.IL2CPU/IL/Mul.cs
#	source/Cosmos.IL2CPU/IL/Sub.cs
2016-06-26 15:02:38 +02:00
jp2masa
9b6bd665be Fix String.EndsWith and add reference to PlugsInspector project (#393)
* Fix String.EndsWith

* Add Cosmos.Core.Plugs as Reference to PlugsInspector so the list includes every plug.
2016-06-26 01:49:23 -05:00
Matthijs ter Woord
c083c8f35f Add kernel panic method to debugstub. 2016-06-25 19:33:26 -04:00
Matthijs ter Woord
6e5d7620a9 Little progress. 2016-06-25 17:37:45 -04:00
Matthijs ter Woord
38e897543b Ongoing progress integrating new memory model. 2016-06-25 15:30:58 -04:00
Matthijs ter Woord
3bfaf7f670 Make plugmanager not throw exceptions when plug targets are not found. 2016-06-25 12:16:51 -04:00
Matthijs ter Woord
c4330ffcc2 Remove fat kernel from msbuild build. 2016-06-25 11:50:31 -04:00
Matthijs ter Woord
16e57658f0 Fix project settings. 2016-06-25 11:30:33 -04:00
Matthijs ter Woord
626c96eb40 Merge branch 'master' of https://github.com/CosmosOS/Cosmos 2016-06-25 10:52:56 -04:00
Matthijs ter Woord
1433340ba5 Generic plugs work now. 2016-06-25 10:52:50 -04:00
Matthijs ter Woord
0af938b0b8 Disable boot projects of the tests, so they don't get built on normal builds. 2016-06-25 09:18:10 -04:00
Charles Betros
1550c86a05 Merge branch 'master' of https://github.com/CosmosOS/Cosmos.git 2016-06-24 23:59:58 -05:00
Charles Betros
4bd3c44060 Fix call stack in the core dump. 2016-06-24 23:59:51 -05:00
Charles Betros
222426bfa2 Merge branch 'rat' of https://github.com/CosmosOS/Cosmos.git 2016-06-24 21:39:02 -05:00
Charles Betros
f3bb974712 Progress on memory. Fix ldelem_ref. 2016-06-24 21:38:55 -05:00
Kudzu
39cdcad275 Heap 2016-06-24 15:56:58 -04:00
Matthijs ter Woord
19160c30d4 Now plugs which aren't being used aren't being compiled anymore. 2016-06-24 15:26:31 -04:00
José Pedro
8788205719 Replace PXE interface textbox with a combobox, filled with local machine interfaces 2016-06-24 20:01:18 +01:00
Charles Betros
bae772237f Added missing debugstub plug. 2016-06-24 10:27:00 -05:00
Matthijs ter Woord
9c3a2dd6d5 Merge branch 'master' of https://github.com/CosmosOS/Cosmos 2016-06-24 10:12:48 -04:00
Matthijs ter Woord
bcf4b08719 Ongoing progress to get z-machine going. 2016-06-24 09:22:43 -04:00
Charles Betros
a18c034163 Merge branch 'master' of https://github.com/CosmosOS/Cosmos.git 2016-06-24 01:47:32 -05:00
Charles Betros
117a4b9053 Created a simple core dump 2016-06-24 01:47:18 -05:00
José Pedro
fbac0cabcf Implemented some console methods and fixed a bug in the console, copying the behaviour of background color in
windows console applications.
2016-06-24 00:41:30 +01:00
Matthijs ter Woord
610f2b652a Geting closer on zork. 2016-06-23 18:12:28 -04:00
Matthijs ter Woord
3bc4ea78dd Some basic improvements. 2016-06-23 16:36:08 -04:00
Matthijs ter Woord
a6afa5b785 Enable magic breakpoints in bochs debugger. 2016-06-23 16:34:20 -04:00
Kudzu
af5f0230a9 Merge branch 'rat' of https://github.com/CosmosOS/Cosmos into rat 2016-06-23 15:14:41 -04:00
Kudzu
8320a6dee7 heap 2016-06-23 15:03:04 -04:00
Matthijs ter Woord
989cc0cb4b . 2016-06-23 11:04:34 -04:00
Matthijs ter Woord
83e1ae9edc Progress. 2016-06-22 16:32:16 -04:00
Matthijs ter Woord
96bf9209de Ongoing fixes. 2016-06-22 15:55:32 -04:00
Matthijs ter Woord
e97100d4e6 More progress. 2016-06-22 11:27:21 -04:00
Matthijs ter Woord
8a40af1b87 More ongoing progress. Getting closer to being able to run again.. 2016-06-21 21:03:46 -04:00
Matthijs ter Woord
7f94d132be Even more ongoing progress. 2016-06-21 20:34:27 -04:00
Matthijs ter Woord
1ac8619640 More ongoing progress. 2016-06-21 20:00:33 -04:00
MichaelTheShifter
903860a77d FAT File Deletion work.
Yet again, my hands are typing words. Jokes aside, deleting doesn't work
yet - but at least using System.IO.File.Delete() won't cause a plug
issue.
2016-06-21 19:38:44 -04:00
Matthijs ter Woord
ada707f1d6 Ongoing progrss. 2016-06-21 19:19:08 -04:00
Matthijs ter Woord
4641286f0f More progress on ram. 2016-06-21 18:57:38 -04:00
Matthijs ter Woord
5e8a93b0c3 Ongoing work on memory. 2016-06-21 18:34:23 -04:00
Matthijs ter Woord
b5ff4a75db Ongoing memory work. 2016-06-21 17:16:51 -04:00
Matthijs ter Woord
d592b2dc0d Ongoing memory work. 2016-06-21 17:16:44 -04:00
fanoI
49192ffa24 - Conv.r.un is now partially implemented: an uint can be converted to double, not working code for ulong to double conversion
- Added (not working) test for ulong to double conversion
- Added to Assembler.cs costants needed for floating point conversions
2016-06-21 23:03:37 +02:00
Charles Betros
14f6f6247c Merge 2016-06-21 10:45:33 -05:00
Charles Betros
a94c40f605 Fixed some issues with ldelema and stfld. 2016-06-21 10:42:02 -05:00