Commit Graph

98 Commits

Author SHA1 Message Date
Jeremy Soller cf46a3b5fc Fallback in ahci driver when disk: not available, ability to list disk devices 2017-01-02 08:53:50 -07:00
Jeremy Soller fd16415383 Revert change that incorrectly overshifts char data 2016-12-30 21:30:24 -07:00
xTibor 34708d4290 Fix vesad text rendering 2016-12-28 02:37:10 +01:00
Jeremy Soller 04813e3e6e Update orbutils 2016-12-17 15:05:07 -07:00
Jeremy Soller f3fa07ded9 Add BGA driver stub 2016-12-14 08:34:45 -07:00
Jeremy Soller a876a2925f Remove replacement for libc 2016-12-06 15:15:08 -07:00
Jeremy Soller b7b861de84 Activate orbital screen on load 2016-11-29 21:25:45 -07:00
Jeremy Soller 4efc72b0a8 Remove rand replace 2016-11-27 16:49:29 -07:00
Jeremy Soller 159fdd0e7d Clean up cfg rusttype 2016-11-25 17:01:19 -07:00
Jeremy Soller 3667c0ffd9 Use mmio, disable timer interrupt 2016-11-22 17:05:23 -07:00
Jeremy Soller 68a2fe57bc WIP: Predictable naming 2016-11-21 12:23:17 -07:00
Jeremy Soller aa5f12c302 Fix printing of escape codes 2016-11-20 11:51:37 -07:00
Jeremy Soller ccaf9636cf Update syscall and rust, add fcntl for permissions 2016-11-15 16:12:51 -07:00
Jeremy Soller bac443482a Switch to real standard, fix daemonization on real standard 2016-11-10 20:02:51 -07:00
Jeremy Soller 03abcd0e0e Update for new rustc-serialize 2016-11-10 11:28:43 -07:00
Jeremy Soller 60f880817f Invert on cursor 2016-11-10 10:35:43 -07:00
Waylon Cude febfbfedb3 Added dvorak keymap (#752)
Keymaps are passed as arguments to ps2d.
To select the dvorak keymap use `ps2d dvorak`,
otherwise the kymap will default to english.
2016-11-10 08:56:38 -07:00
Jeremy Soller 08557a7c13 Fix build, remove cfg(redox) 2016-11-09 17:00:48 -07:00
Jeremy Soller db37769a8b Update to use upstream libc and rand 2016-11-09 10:43:05 -07:00
Jeremy Soller 428e34f77d Disable power management 2016-11-07 20:46:34 -07:00
Jeremy Soller 8daf977c58 Fix eventing in kernel 2016-11-03 16:02:44 -06:00
Jeremy Soller 9064550f6a Fix rustc-serialize 2016-11-03 15:47:54 -06:00
Jeremy Soller 0fdebfd4a1 Update syscall lib, update submodules and dependencies 2016-11-03 15:10:32 -06:00
Jeremy Soller 621e557174 Remove resource_sceme, Fix syscall crate name, add fmap 2016-11-02 19:48:25 -06:00
Jeremy Soller e4b4eb5a83 Update terminal emulator 2016-11-02 14:17:11 -06:00
Jeremy Soller 81c4b8c998 Smp (#23)
* Fire up multiple processors

* Use IPIs to wake up secondary processors

* Much better exception information

* Modifications to show more information on fault

* WIP: Use real libstd

* Add TLS (not complete)

* Add random function, export getpid, cleanup

* Do not spin APs until new context

* Update rust

* Update rust

* Use rd/wrfsbase

* Implement TLS

* Implement compiler builtins and update rust

* Update rust

* Back to Redox libstd

* Update rust
2016-10-31 10:49:00 -06:00
Jeremy Soller e71e27a3c6 Update vesad ransid branch 2016-10-26 14:17:57 -06:00
Jeremy Soller fe339a9362 Redo networking (#22)
* Rewriting network functions

* Add buffer to dup
Fix non-blocking handling by triggering once on enabling events to read to EOF

* Modifications for UDP API

* Implement TCP client side

* Add active close

* Add DMAR parser

* Implement basic TCP listening. Need to improve the state machine

* Reduce debugging

* Fixes for close procedure

* Updates to fix path processing in libstd
2016-10-26 13:19:56 -06:00
Jeremy Soller 891a8a85b3 Update submodules 2016-10-23 19:01:30 -06:00
Jeremy Soller 87a7261781 Add O_NONBLOCK 2016-10-23 15:38:49 -06:00
Jeremy Soller 9c94a5cd86 Event based ethernetd 2016-10-23 15:26:36 -06:00
Jeremy Soller a1acadd373 More debugging of writes in ahcid 2016-10-22 22:23:09 -06:00
Jeremy Soller b18653c57d Debug all driver activity to display:1, use format to avoid line splitting 2016-10-22 19:35:23 -06:00
Jeremy Soller 5724bacd2b Set mac address on boot 2016-10-22 19:13:57 -06:00
Jeremy Soller cb5f38dfdc Do not throw pcid into background - this prevents ethernetd from exiting if it tries to open network: too early 2016-10-22 19:00:36 -06:00
Jeremy Soller 04266d6438 WIP: Make network drivers send fevent packets 2016-10-22 17:14:52 -06:00
Jeremy Soller 8ee024b34f Simplify vesad by using SchemeMut 2016-10-22 14:54:13 -06:00
Jeremy Soller 4d3580f0f2 Fix tx and rx 2016-10-20 16:48:09 -06:00
Jeremy Soller 1f0ba2b945 Do not block on IRQ read, add more debugging to RTL8168/9 2016-10-20 15:49:17 -06:00
Jeremy Soller 71a9795139 Do not ack IRQ in ahcid, as it does not enable IRQs 2016-10-20 14:37:05 -06:00
Jeremy Soller 6b60fd6c59 Fix buffers by using two 32-bit high and low parts 2016-10-20 14:28:58 -06:00
Jeremy Soller d78981ded6 Add rtl8168 driver, make drivers use O_NONBLOCK 2016-10-20 12:52:58 -06:00
Jeremy Soller 571c5ac641 Less output in pcid, fix e1000d crate name 2016-10-19 13:19:37 -06:00
Jeremy Soller f0664243c3 Remove question mark where not required 2016-10-15 20:56:32 -06:00
Jeremy Soller b69014a48a Correct size of data 2016-10-14 22:06:20 -06:00
Jeremy Soller 9eb092a215 Significant improvements for events - switch to event queue in orbital 2016-10-14 20:12:21 -06:00
Jeremy Soller e089cffc39 Add specification to vesad
Fix piping
Fix bug where resources are not closed
Add arpd
Remove question_mark features
2016-10-14 18:22:57 -06:00
Jeremy Soller ea59208002 Use a single thread for ps/2 driver 2016-10-14 12:54:37 -06:00
Jeremy Soller d494576d59 Move IRQ ack higher in mouse driver 2016-10-14 12:42:02 -06:00
Jeremy Soller 815c471aed Orbital (#16)
* Port previous ethernet scheme

* Add ipd

* Fix initfs rebuilds, use QEMU user networking addresses in ipd

* Add tcp/udp, netutils, dns, and network config

* Add fsync to network driver

* Add dns, router, subnet by default

* Fix e1000 driver. Make ethernet and IP non-blocking to avoid deadlocks

* Add orbital server, WIP

* Add futex

* Add orbutils and orbital

* Update libstd, orbutils, and orbital
Move ANSI key encoding to vesad

* Add orbital assets

* Update orbital

* Update to add login manager

* Add blocking primitives, block for most things except waitpid, update orbital

* Wait in waitpid and IRQ, improvements for other waits

* Fevent in root scheme

* WIP: Switch to using fevent

* Reorganize

* Event based e1000d driver

* Superuser-only access to some network schemes, display, and disk

* Superuser root and irq schemes

* Fix orbital
2016-10-13 17:21:42 -06:00