Kevin Lange
7d5eb42400
Userspace keyboard handling
...
Kernel driver sends raw scancodes, compositor or terminal handle the
rest. Support for F* keys will be added soon, in the mean time userspace
applications can know about the status of modifiers (control, shift,
alt, and super).
Compositor actions have been changed to Alt+Left Click for move and
Alt+Middle Click for resize. I'll work on adding more mouse events once
I get them to be faster (they're annoyingly slow at the moment... I want
more accuracy and less latency).
2012-10-14 19:53:16 -07:00
Kevin Lange
82d41b5e8e
Clean up the RPG's handling of resizes a bit.
...
Not perfect, still got some things that need to be cleaned up.
[ci skip]
2012-10-13 22:19:06 -07:00
Kevin Lange
9d84988778
Bump version number to 0.3.7
...
Getting close to the big 0.4.0, but I really want to fix my ATA drivers
and possibly get some CD/ISO stuff in before then.
[ci skip]
2012-10-13 22:06:51 -07:00
Kevin Lange
fd259230b6
Change color of resize outline
2012-10-13 21:24:12 -07:00
Kevin Lange
79ec8ccdb7
Support resizing in all graphics apps
...
Sort of. game has issues.
2012-10-13 20:44:59 -07:00
Kevin Lange
ba7bacf054
Julia fractals can handle resizes
2012-10-13 20:20:52 -07:00
Kevin Lange
217f66e23e
Mouse-driven window resizing
2012-10-13 20:19:43 -07:00
Kevin Lange
dcd4a5ad64
Add an option to spew debug output with run-config
2012-10-13 20:19:09 -07:00
Kevin Lange
8996ccb592
Merge terminal settings commands into esh
...
They are now part of the built-in set.
set scale [n]
set size [w] [h]
set alpha [0 or 1]
2012-10-13 20:17:29 -07:00
Kevin Lange
d56ba02437
Resizing is working okay.
2012-10-13 13:02:58 -07:00
Kevin Lange
8b69e7ef68
Get rid of the awkward mouse acceleration
2012-10-12 00:17:23 -07:00
Kevin Lange
0387b2d2c3
Allow windows to disable alpha transparency.
...
Also add functionality to the terminal to toggle it on and off.
There's a small, but nice-to-have performance increase from disabling
alpha transparency in the terminal.
Also, the display server sets DISPLAY=... to the shmem endpoint for the
compositor, so if getenv("DISPLAY") returns a pointer, you can assume
you are in a graphical environment, instead of having to rely on things
like arguments. Good for those applications that want to be able to run
both full-screen and windowed.
2012-10-11 23:55:53 -07:00
Kevin Lange
a60a78d157
Updated toolchain stuff with some new headers.
...
I'm working on termios support... it's stubs for now, though.
2012-10-09 21:02:43 -07:00
Kevin Lange
8a49cae410
Some new TODO items
2012-10-09 21:01:38 -07:00
Kevin Lange
391201eba7
For now, ignore the toaru-pdfviewer directory
2012-10-09 21:01:32 -07:00
Kevin Lange
c8b3a480c7
Scripts to run the clang analyzer
2012-10-09 21:00:50 -07:00
Kevin Lange
66a35ba224
Separate out keyboard stuff into a library.
...
Eventually this will be used to do ALL keyboard interpreting, so we can
ditch the kernel map and support proper input and special keys.
2012-10-08 22:33:46 -07:00
Kevin Lange
5f869316c1
Remove keyboard test
2012-10-08 20:09:43 -07:00
Kevin Lange
b1c6919b53
Deprecate full-screen applications
...
Rename game-win to game and julia-win to julia.
2012-10-08 20:08:02 -07:00
Kevin Lange
1a648129cb
Fix import for dirent.h
2012-10-08 19:37:46 -07:00
Kevin Lange
5249138dcd
Environment variables, integrated with newlib.
...
* Patched crt0 to support a pre_main
* pre_main sets up environment variables, can do other things later,
but then just jumps to main with the same arguments.
* Updated a bunch of apps to pass environment variables around.
2012-10-08 00:17:50 -07:00
Kevin Lange
147f112151
Updated toolchain scripts for better libc builds
2012-10-08 00:17:32 -07:00
Kevin Lange
99b48f72e0
Fix cursor position after tab-tab complete
2012-10-07 20:57:58 -07:00
Kevin Lange
ad6d8f013e
Fix some things I missed previously.
...
- Environment loading in esh was broken.
- I dropped the 'exit' command from esh somewhere along the line.
2012-10-07 20:54:11 -07:00
Kevin Lange
deaa6ad513
Rough support for environment variables
...
- libc functions not implemented yet
- see `env` for an example of reading variables
- see `esh` for an example of how to set and maintain variables for
sending to other applications
Both of the above will be the basis for the libc implementation.
2012-10-07 20:46:35 -07:00
Kevin Lange
272a2a3809
Fix history bugs from previous.
...
- Fix history scrolling after ^L
- Fix duplicate entry pruning.
2012-10-07 15:58:30 -07:00
Kevin Lange
484cf903cd
Fixes for multiline history
...
(Also fixed a bug with backspace handling in the terminal)
2012-10-07 12:22:39 -07:00
Kevin Lange
b37fa0180f
Good catch, ayust
2012-10-07 11:09:51 -07:00
Kevin Lange
609a43c15c
Command parser with quotation support.
2012-10-07 11:01:00 -07:00
Kevin Lange
1fba6661f8
reverse-i-search
...
- Also fix history
2012-10-07 09:34:10 -07:00
Kevin Lange
8374d09c3c
Make tab completion slightly better
...
- Link with the list library.
- Use lists to make match evaluation faster.
2012-10-07 08:45:00 -07:00
Kevin Lange
478e7c31f1
Fill in remaining for tab completion.
...
This is pretty inefficient...
[ci skip]
2012-10-07 00:18:55 -07:00
Kevin Lange
e496060b3e
Fix up tab completion
2012-10-06 23:48:46 -07:00
Kevin Lange
c0b29c365a
History and better line editing for esh.
2012-10-06 23:01:39 -07:00
Kevin Lange
f26ad85965
Update README.md
...
[ci skip]
2012-10-06 01:10:28 -05:00
Kevin Lange
77ed41c225
kernel vga term, commas in arguments, ide fixes
2012-10-03 22:03:21 -07:00
Kevin Lange
742a6e7448
Fix up style in system.c, fix some bugs, too
2012-10-03 22:01:45 -07:00
Kevin Lange
987fdf2959
Fix one last libpng 1.5.12 / 1.5.13 issue
2012-09-29 16:32:28 -07:00
Kevin Lange
e199e30efd
Update toolchain libpng
2012-09-29 15:57:41 -07:00
Kevin Lange
2eb953f1f1
Massive fixes to the EXT2 driver.
...
* Works with different block sizes
* Works with different inode sizes
* Tested on a real EXT2 file system made with mkfs.ext2
* MBR reading is available
* You can specify a partition with hdd=0 or hdd=1 etc.
* If you make a "real" disk image, you can get GRUB installed in
its MBR, toss in a suitable config file, and boot right off the
disk rather than having to use QEMU to boot the kernel or using
some silly CDROM ramdisk nonsense.
2012-09-29 00:39:01 -07:00
Kevin Lange
8c20e96fb6
reboot syscall will sync disks
2012-09-29 00:38:45 -07:00
Kevin Lange
ac997d0a48
Screenshot utility (testing/brokenish)
2012-09-29 00:38:11 -07:00
Kevin Lange
5e218b1272
Ramblings about microkernels
2012-09-29 00:37:30 -07:00
Kevin Lange
2b3076d0bb
[meta] Fix some spelling mistakes in README
...
Perhaps not my strong suit...
I need to learn to `:set spell` more often.
[ci skip]
2012-09-19 21:54:17 -07:00
Kevin Lange
65e4353399
Icons on desktop, no terminal at login
2012-09-19 21:16:21 -07:00
Kevin Lange
f79f345956
Giant ramdisks (works on my desktop)
...
But not on my laptop...
2012-09-18 22:20:04 -07:00
Kevin Lange
e0e7b8a7ed
Double ramdisk size.
...
8MB can fit some freetype fonts or a dozen extra applications.
[ci skip] since Travis doesn't deal with ramdisks.
2012-09-18 20:00:50 -07:00
Kevin Lange
9f282a7916
Fix alloc init bug, bump version.
...
We'll keep that graphic testing thing in there just in case.
2012-09-18 01:19:30 -07:00
Kevin Lange
57534cf009
Fix things up to prepare a working ramdisk.
2012-09-18 00:06:32 -07:00
Kevin Lange
a212a93942
Draw some pretty stuff and halt without a disk img
...
Don't push this to master!
[ci skip]
2012-09-17 22:58:49 -07:00