Commit Graph

2082 Commits

Author SHA1 Message Date
Kevin Lange
e1720dbc8a Fix allocation of common symbols in modules
Fixes #87
2015-05-14 09:47:23 -07:00
Kevin Lange
66938e3123 Fix symbols not marked extern 2015-05-14 09:32:52 -07:00
Kevin Lange
6acef2ab41 Add audio player 2015-05-14 09:25:48 -07:00
Kevin Lange
456cbf1016 hacky, but working, /dev/dsp interface 2015-05-13 23:28:47 -07:00
Kevin Lange
3e605ec2d8 Crank the volume a bit 2015-05-13 18:58:24 -07:00
Kevin Lange
034cd38cf4 Gracefully handle failures to load audio files 2015-05-13 18:52:00 -07:00
Kevin Lange
5573199c4e Actually let the file finish playing instead of cutting it off 2015-05-13 18:39:56 -07:00
Kevin Lange
a3ca443492 Don't bind shell functions if we didn't find it 2015-05-13 15:27:41 -07:00
Kevin Lange
fb9e02fbd8 Clean up AC97 driver for merge 2015-05-13 15:26:28 -07:00
Mike Gerow
3b60e8c36f Added experimental ac97 driver.
This doesn't include a userland interface, but it does include a couple
of commands for the debug shell. ac97_status, which shows some register
and port values for the ac97 and ac97_noise which attempts to play a
(very annoying) 440Hz sine wave through the sound card.
2015-05-13 01:35:55 -07:00
Mike Gerow
ac17214207 Added ability to check if an IRQ is already occupied.
A proper solution would probably be to introduce shared IRQs at some
point in time.
2015-05-13 01:33:05 -07:00
Kevin Lange
eb3e865036 Update pong description 2015-05-12 23:29:24 -07:00
Kevin Lange
de3e405b52 Make pong prettier 2015-05-12 20:51:07 -07:00
Kevin Lange
2a59b09a9a This is terrible: Yutani Pong 2015-05-11 22:20:27 -07:00
Kevin Lange
f0f286acb7 Yield after flipping display after glogin
Fixes very common issue where artifacts of the login widget were visible
after logging in before the desktop started up.
2015-05-09 22:11:55 -07:00
Kevin Lange
85795869f2 Add an early boot testing module 2015-05-03 18:36:57 -07:00
Kevin Lange
0cdcef9b3e When requesting larger video modes, map more memory 2015-05-03 18:36:02 -07:00
Kevin Lange
8100af2d70 Recent dev changes to Makefile 2015-05-03 18:35:40 -07:00
Kevin Lange
c661e3073d Add more icon search paths 2015-05-02 18:57:49 -07:00
Kevin Lange
648aedc0a4 Use a different resynch strategy for timer 2015-05-01 23:01:12 -07:00
Kevin Lange
a6f071f9c8 New scroll rows should set background colors. 2015-05-01 00:36:50 -07:00
Kevin Lange
365295010c Make animations in Yutani faster. 2015-04-30 18:06:36 -07:00
Kevin Lange
49952347d6 add a piano app 2015-04-30 16:34:30 -07:00
Kevin Lange
59d0481db4 Fix pcspkr timing 2015-04-30 16:34:23 -07:00
Kevin Lange
dd74cdcec2 Map Vim config'd tab/space characters in VGA terminal 2015-04-29 16:29:36 -07:00
Kevin Lange
cf2bd4cb22 Fix missing in return in 'set' command 2015-04-26 18:14:52 -07:00
Kevin Lange
4fd1ae9aa3 Support scrollwheel mice 2015-04-26 18:05:14 -07:00
Kevin Lange
c360ca695a Enable ttymouse=xterm2 for toaru terminals by default in vim 2015-04-26 17:21:32 -07:00
Kevin Lange
a3f9ab465b Basic xterm (?1000 and ?1002) mouse support 2015-04-26 17:14:14 -07:00
Kevin Lange
278059d6a2 Use timers for animations (compositor, desktop)
Yutani, glogin, and wallpaper now use timing information from the kernel
to perform animations. Some animation lengths have been adjusted. The
animations should run at the same speed, though with varying
"smoothness" across different hardware (including non-KVM emulators).
2015-04-14 23:09:54 -07:00
Kevin Lange
7344a50fe0 Major changes to timing interfaces
- The kernel version has been bumped to 0.9.0
- The timer resolution in the kernel has been increased to millseconds.
- The preemptive scheduling interval has been descreased to one
  millisecond.
- Relative sleep continues to use 10 millsecond intervals for legacy
  reasons.
- `gettimeofday` now uses the internal tick counter to calculate the
  current time. Drift is calculated from the CMOS every 5 seconds and
  applies only to `gettimeofday` and other places that use it.
- The resolution of timing information provided by debug functions has
  been increased to three digits (milliseconds).
- The resolution of timing information provided by the procfs uptime
  virtual file has been increased to three digits (milliseconds).
- Functions have been added to the debug shell to read the TSC. The TSC
  is not used in timing functions at this time.
2015-04-14 23:05:07 -07:00
Kevin Lange
4a36d6bb9e Fix a potential deadlock and improve irq on/off 2015-04-13 23:39:23 -07:00
Kevin Lange
a27444656c Disable notice for travis IRC notifications 2015-04-11 18:51:14 -07:00
Kevin Lange
e7ff3e20f8 Wallpaper from config, readd old wallpapers 2015-04-11 18:22:26 -07:00
Kevin Lange
78db32cb6f Config files, theming in glogin 2015-04-11 18:06:54 -07:00
Kevin Lange
e95cbda703 Merge pull request #83 from lioncash/leaks
compositor: get rid of a leak in window_actually_close
2015-04-10 17:02:55 -07:00
Lioncash
99c907bf95 compositor: get rid of a leak in window_actually_close
The function call allocates on the heap, so this would cause a leak.
2015-04-10 19:21:28 -04:00
Kevin Lange
dec9a0f031 Superfluous terminal size programs 2015-04-07 08:53:28 -07:00
Kevin Lange
1147d45cdb Don't blink the cursor in unfocused terminals 2015-04-05 15:50:52 -07:00
Kevin Lange
a243bb2849 Mouse warping and hiding (for games) 2015-04-05 15:41:00 -07:00
Kevin Lange
27365b99dc Yet another new wallpaper
Because I didn't really like the Paris-at-night wallpaper.

This one was taken while in the air, roughly over San Jose.
2015-04-04 22:57:23 -07:00
Kevin Lange
a9c0f36a0c Add a nifty animation when an application is started on the desktop. 2015-04-04 22:19:14 -07:00
Kevin Lange
f938569a77 Handle window move in TTK 2015-04-04 22:19:01 -07:00
Kevin Lange
9065454a75 Yutani now sends WINDOW_MOVE when windows move.
Window moves are non-lazy, so continuous updates are received while a
window is being dragged. Prior to this change, a client would not have
any idea where a window was outside of its own idea of when it last
requested a move (which may have been denied, or immediately overriden).
This allows applications to produce child windows in appropriate
locations, or to drag child windows (undocked toolbars, etc.) while they
are being moved.

This uses the same message format as the request format, as well as the
same message type, as has been previously done for various events.
2015-04-04 21:29:29 -07:00
Kevin Lange
338174a75c Various improvements to glogin 2015-04-04 18:39:55 -07:00
Kevin Lange
8a1430879a Break out rline, add ^W support 2015-04-04 12:33:30 -07:00
Kevin Lange
b54e2d1b54 Several ridiculous hacks for networking 2015-04-04 12:19:10 -07:00
Kevin Lange
5f84e679ca Add more flags to <ipv4.h> 2015-04-04 12:18:36 -07:00
Kevin Lange
c11a871ad5 Support PCI init from VirtualBox BGE 2015-04-04 12:18:09 -07:00
Kevin Lange
d44289b593 empty stub intel hda module 2015-04-04 11:48:57 -07:00