Commit Graph

1558 Commits

Author SHA1 Message Date
Kevin Lange
ee978f3dbe Fix freeing keys, add another test 2013-12-01 23:50:13 -08:00
Kevin Lange
902b0342b9 Add some more hashmap functions
And port kernel console command lookup to use a hashmap.
2013-12-01 23:29:40 -08:00
Kevin Lange
204d9bb6ce Remove debug logging from hashmap 2013-12-01 21:46:23 -08:00
Kevin Lange
6fde2533a1 Better hash function 2013-12-01 21:40:39 -08:00
Kevin Lange
26cfa78f89 Use hashmap for args
There, now it's fast.
2013-12-01 21:22:06 -08:00
Kevin Lange
68941f6afd Simple hashmap 2013-12-01 21:19:09 -08:00
Kevin Lange
a376ab2563 Fix some weirdness 2013-12-01 20:07:31 -08:00
Kevin Lange
56ad9598d0 New kernel args parser
I know, this is a lot slower than the old one, but it's a transition to
a new-new args parser that will use a hashmap... as soon as I get around
to writing a hashmap implementation.
2013-12-01 19:37:22 -08:00
Kevin Lange
1cbd26689b Some FS navigation in the debug console
Since I'm working on VFS rewrites...
2013-11-30 22:27:45 -08:00
Kevin Lange
da1eb69d6c Fix a link in a doc file 2013-11-30 15:14:22 -08:00
Kevin Lange
89cb3c8dbd A reasonable shell command system 2013-11-30 00:09:04 -08:00
Kevin Lange
774f757265 Move 'analyze' to util/ 2013-11-29 19:25:02 -08:00
Kevin Lange
694c9c2c21 Move 'trying it out' to a separate doc file 2013-11-29 19:13:14 -08:00
Kevin Lange
6ee5fa2bc6 Some quick rewrites to the README 2013-11-28 23:07:19 -08:00
Kevin Lange
5cad7326cb Totally got that backwards 2013-11-28 20:05:15 -08:00
Kevin Lange
610936ae80 Docs cleanup
- Nuke the old latex docs (They are really, really old, and I have no
  plans to keep them up to date)
- Remove LaTeX docs targets from Makefile
- Move extraneous markdown docs to docs/ and update README links
- Move styleguide to docs/
2013-11-28 19:30:46 -08:00
Kevin Lange
3ed327f549 Also that 2013-11-28 18:55:46 -08:00
Kevin Lange
279eca8b17 Some random cleanup
Get rid of travis support files, move some other things around, trying
to clean up the root directory a bit.
2013-11-28 18:51:10 -08:00
Kevin Lange
a9d5009060 Fix terminal alpha rendering in fullscreen mode 2013-11-28 16:14:41 -08:00
Kevin Lange
d1bb6d4304 Update README - newer screenshots 2013-11-28 16:13:56 -08:00
Kevin Lange
382a24adb8 Fix run-config to work with serial tty 2013-11-28 15:58:57 -08:00
Kevin Lange
2978d31461 Unrecognized command 2013-11-27 22:47:05 -08:00
Kevin Lange
283ac3c824 Add some tokenizing 2013-11-27 22:41:27 -08:00
Kevin Lange
8c469883bc Wrap serial console in a TTY 2013-11-27 22:24:58 -08:00
Kevin Lange
3c9a717429 Tasklet cleanups, make kttydebug useful 2013-11-27 21:21:39 -08:00
Kevin Lange
e95c9eb40b Fix procfs when no cmdline is present 2013-11-27 21:21:09 -08:00
Kevin Lange
6d1ea12ad7 Automatic installer for automake-1.11
This is the last version of automake without a warning for Cygnus-style
trees, and is the recommended version for building newlib. An older
autoconf is not necessary to make things work. Just run this, it should
install correctly to your local build directory.
2013-11-27 21:17:55 -08:00
Kevin Lange
5a422a58c7 Bump version number 2013-11-27 19:15:36 -08:00
Kevin Lange
bed7567508 Add a 'headless' pseudo target 2013-11-27 19:15:28 -08:00
Kevin Lange
10f4cc6811 Tasklets; fix dead sleep; kernel serial console
- Tasklets are essentially kernel threads. Still working on passing
  arguments to them, but they essentially just run functions and have
  special names like [[kttydebug]]. Eventually, I want disk scheduling
  and various (non-interrupt-driven) drivers running on these, but I'm
  still not sure how stable they are.
- Fix the scheduler so it supports not having anything to run. This took
  some tracking of what's running, and then inserting some liberal
  sleeps. Doesn't appear to break anything. Makes the system work when
  you try to sleep with only one process "running", so that's good.
- Start working on reimplementing the old kernel shell, but this time as
  a tasklet running in the background over serial. Probably going to try
  to add all the same features as before (tab completion, history, rich
  editing), but it may take some time to get it all in there. This
  console is mostly focused on helping with debugging EXT2 and other
  future stuff.
2013-11-27 19:11:58 -08:00
Kevin Lange
8dfd4ff20a Make serial devices more useful
They now use interrupts and thus can be blocked on without sitting in a
busy loop. Not sure if they still work perfectly, need to debug. Works
fine with the console "serial" stuff in qemu.

Todo: Investigate further.
2013-11-27 19:10:38 -08:00
Kevin Lange
1e2ed1e89a Add a clock to the VGA warning
mostly so it doesn't immediately quit, but also so it's not eating CPU
cycles while being useless
2013-11-27 19:08:07 -08:00
Kevin Lange
a024385a3c Fix some missing termios stuff 2013-11-22 21:54:47 -08:00
Kevin Lange
fa4af42294 run-config also needs -sdl 2013-11-03 22:54:26 -08:00
Kevin Lange
59cdfbe9a6 Make teapot close with q like everyone else 2013-10-19 00:29:00 -07:00
Kevin Lange
19b5da23f7 WHO BROKE MY QEMU, I WILL FIND YOU 2013-10-18 22:07:35 -07:00
Kevin Lange
5d1aa1f6b8 Special-case some block drawing to make it look better 2013-09-01 18:32:46 -07:00
Kevin Lange
974beaa017 This build of mesa has been deprecated, but we still use it 2013-08-22 00:46:13 -07:00
Kevin Lange
a1784a5da1 Fix handling of line endings at right side of screen 2013-08-21 18:30:20 -07:00
Kevin Lange
922fdd5f38 None of this actually works, but whatever 2013-08-19 19:38:15 -07:00
Kevin Lange
9b130b916d Fix up signals, add SIGTTOU 2013-08-19 19:37:55 -07:00
Kevin Lange
1e50d39d67 kill nlcr/no-nlcr stuff from terminal 2013-08-19 19:37:13 -07:00
Kevin Lange
7351fa308b Various fixes to help get bash working 2013-08-04 00:04:22 -07:00
Kevin Lange
948813d0be Fix buffer clearing and dumping when switching modes 2013-07-27 22:21:04 -07:00
Kevin Lange
720a62d6aa ICANON support (still a bit rough)
This is a massive hack and I admit it.
2013-07-27 22:01:08 -07:00
Kevin Lange
40f0c41932 Preliminary termios support
This is some initial work on support real PTYs.
Canonical mode is not supported at the moment.
2013-07-27 00:18:29 -07:00
Kevin Lange
fd259ce8ab Rough screenshot support
Still needs to be moved to the print screen key. Ctrl+Shift+P for whole
screen, Ctrl+Shift+Alt+P for active window.
2013-07-22 22:42:24 -07:00
Kevin Lange
9f50d7a3bf WHY AM I PRINTING THIS 2013-07-22 22:41:56 -07:00
Kevin Lange
6ad55d68d2 (debugging) export files to sdb with a sysfunc 2013-07-22 22:41:14 -07:00
Kevin Lange
ee90317940 bump version for new development line 2013-07-22 20:50:49 -07:00