Commit graph

72 commits

Author SHA1 Message Date
fanoI
765cc6688a Merge branch 'master' of https://github.com/CosmosOS/Cosmos
# Conflicts:
#	source/Cosmos.HAL/Drivers/VBEDriver.cs
2017-03-05 22:30:05 +01:00
fanoI
db5b713090 CGS is finally ready to be used! Let's merge it...
- To solve the slowness of the MemoryBlock Fill() method when the block has a big size I've created a new class for this MemoryOperations that for now contains only the method Fill() with a part implemented in ASM and with some overloads to semplify its usage from managed code. In future in this class will be added other methods to operate fast on memory for example Cmp() and Copy().
- Adding (not passing) test of the Color struct to the BoxingTest kernel
- Removed BoxingTest kernel inside BCL test: it was a duplicate of the BoxingTest kernel
- Restored correct TestKernelSets
- In the CGS Test kernel the last rectangle is now LimeGreen instead of another type of red (more clear that is working correctly)
- Added to X# the generation of the instruction Shuftps
- Added to X# the generation of the instruction MoveUPS
- Modified Guess Demo to wait for a key press to terminate (it closed suddenly in case the number was guessed)
- The VBE IOMemoryBlock has again size of 1920x1200 (the max usable)
- Added CGS Demo
- Code clean up
2017-03-05 20:32:55 +01:00
fanoI
73aa970508 CGS finally works!
Please note that this version works only with Bochs.

- To make it works was needed to renounce to all structures (a part for primitive types) so now Mode and Color are classes.
- Implemented methods of Canvas DrawPoint(), DrawLine() and DrawRect() for now only color depth of 32 bit and integer coordinates are supported
- Changed IoPort of Bochs / VBE to MemoryBlock and not MemoryBlock08 so I can write an 32 bit ARGB color in only an operation instead of 4, this will semplify the future
  work of RGB24 and RGB16 too. Changed the name to the correct one "LinearFrameBuffer".
- Made VBEDriver more object oriented (used enums instead of hardcoded values, created methods and so on...)
- Bugfix in the Pen class there was confusion in the setter / getter of the Color property
- In VBEScreen removed the old code that is not needed anymore, added check to method arguments (that throws in case of fatal errors)
2017-01-08 22:57:27 +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
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
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
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
Matthijs ter Woord
34ce59e238 Move memory out to a separate project. 2016-06-10 13:01:20 -04:00
Matthijs ter Woord
8dde71adf1 Clarify things a bit. 2016-06-08 19:55:48 -04:00
fanoI
a5bd158514 Merge branch 'master' of https://github.com/CosmosOS/Cosmos
# Conflicts:
#	Tests/Cosmos.Compiler.Tests.Bcl/Kernel.cs
#	source/Cosmos.Core/CPU.cs
2016-05-28 14:33:11 +02:00
sgetaz
2de222bb2d Plug attribute (#196)
Plug required attribute.
2016-05-25 09:17:06 -05:00
fanoI
58c556f085 - Initial work as for https://github.com/CosmosOS/Cosmos/issues/359
- Added Console.Clear() to Guess Demo (the boot text remained on screen)
- Added to BCL test BitConverterTest (all failing), test for single / double arithmetic operations
- Added to TestRunner BCLTest
2016-05-21 18:55:39 +02:00
Charles Betros
0bef9a8fac Updating solution config. 2016-03-13 12:27:58 -05:00
Charles Betros
4a3b6a50df Fixed up project and solution configurations and remove jetbrains annotations. 2016-03-06 17:33:21 -06:00
Charles Betros
ba6070dbe7 String and simple debugger change 2016-02-15 16:02:23 -06:00
Charles Betros
6f50b73386 Changed build configuration 2016-02-15 01:29:03 -06:00
Charles Betros
aaa0bb3eb6 Fixed string split and compare ordinal. Made some chnages to debug nessages to showmring and section. 2016-01-06 22:07:30 -06:00
Charles Betros
7268261324 Fixed bug in heap. Entry index didn't get reset. 2015-12-19 09:04:59 -06:00
Charles Betros
1a2ed6b720 Fixed speed issue with the heap. 2015-12-18 12:28:24 -06:00
fanoI
f566917239 Console modifications
- In MemoryBlock added Fill overloads that accept UInt16
- In TextScreen removed unused variables, magic number and finally the
Clear() method does what is expected!
2015-11-18 23:27:33 +01:00
Matthijs ter Woord
d9a9737608 Filesystem/VFS/FAT work by @charlesbetros has been merged into main kernel.
This does NOT mean it's fully working yet!
2015-10-02 17:12:00 +02:00
Matthijs ter Woord
4769cb2ce6 Fixes for delegates. 2015-09-04 17:51:45 +02:00
Matthijs ter Woord
e3e32744f5 Merging. 2015-09-04 14:11:35 +02:00
Matthijs ter Woord
0b8ce1b4fe Merge branch 'master' into memory_handles
Conflicts:
	source/Cosmos.Core.Plugs/CPUImpl.cs
	source/Cosmos.Core/CPU.cs
2015-09-04 13:50:11 +02:00
zdimension
9e4a11a59b Added Interrupts disabling when reboot called 2015-08-16 17:45:37 +02:00
zdimension
459a72dcad IOPort is not created in loop anymore 2015-08-12 19:12:32 +02:00
zdimension
b538a3c40b Moved the Reboot func from Power to Core.CPU.Reboot 2015-08-12 18:59:19 +02:00
Matthijs ter Woord
903369a59f Small code reformat 2015-08-06 09:02:47 -04:00
Matthijs ter Woord
0a015269a5 Revert debug messages. 2015-08-06 08:41:13 -04:00
Matthijs ter Woord
842adbfefc More fixes.. 2015-08-06 08:34:45 -04:00
Matthijs ter Woord
e030f5b850 Progress. 2015-08-05 17:32:32 -04:00
Matthijs ter Woord
2762604cbc More progress 2015-08-05 14:58:57 -04:00
Matthijs ter Woord
15f2df89b3 More progress. We have a bug in try...finally now.. 2015-08-04 15:32:18 -04:00
Matthijs ter Woord
73758c2643 Ongoing memory work. 2015-07-31 12:46:07 -04:00
Matthijs ter Woord
f2706116c3 Small fix. 2015-07-31 11:56:29 -04:00
Matthijs ter Woord
be0ace5c62 - Turns out the VMT table was not generated correctly: the _Handle datamember wasn't pointing to the actual data area
- small bugfix in heap.
2015-07-31 11:51:27 -04:00
Matthijs ter Woord
675ce71d10 Ongoing work. 2015-07-31 08:34:28 -04:00
Matthijs ter Woord
e91b500738 . 2015-07-29 18:58:42 -04:00
Matthijs ter Woord
7a35344202 More work on memory 2015-07-29 15:35:47 -04:00
Matthijs ter Woord
d6167d6e00 - Add extra logging to GlobalSystemInfo and Heap
- Fixed ldstr and string sending with memory handles
2015-07-29 10:44:52 -04:00
Matthijs ter Woord
0e05e24b9b Somehow debug stub and debug connector is broken now. 2015-07-28 20:30:15 -04:00
Matthijs ter Woord
7858e43584 Ongoing work on memory 2015-07-28 20:18:14 -04:00
Matthijs ter Woord
c442a920d1 Build fix. 2015-07-28 16:58:23 -04:00
Matthijs ter Woord
b56ce24f52 Merge branch 'master' into memory_handles
Conflicts:
	Tests/Cosmos.TestRunner.Core/DefaultEngineConfiguration.cs
2015-07-28 16:30:05 -04:00