Commit Graph

167 Commits

Author SHA1 Message Date
Kevin Lange
fae00075b2 Experimental DMA reads 2015-05-26 23:30:18 -07:00
Kevin Lange
badc2f375c Accept SATA-on-IDE-controller as equivalent to PATA. 2015-05-26 11:13:25 -07:00
Kevin Lange
25807666f9 Merge branch 'strawberry-dev' of https://github.com/graphitemaster/toaruos into graphitemaster-strawberry-dev 2015-05-21 14:33:22 -07:00
Kevin Lange
b53f123948 This is a bad idea and you should never use this. 2015-05-21 14:23:18 -07:00
Dale Weiler
0dbd5ab089 Cleanup and improve spin lock code 2015-05-21 04:28:14 -04:00
Dale Weiler
cb0e217c31 Cleaned up, optimized and rewrote crucial parts of libc for the kernel, fixed a few bugs as well. 2015-05-21 03:12:09 -04:00
Kevin Lange
9d41b3fc25 Merge branch 'mixer-rebase' of https://github.com/gerow/toaruos into gerow-mixer-rebase 2015-05-18 21:15:25 -07:00
Kevin Lange
740ec2ede7 Merge branch 'mixing-fix' of https://github.com/gerow/toaruos into gerow-mixing-fix 2015-05-18 21:10:53 -07:00
Kevin Lange
9a72bfc4cd Add half-assed support for IRQ chaining.
We only support 4 total chain entries at the moment, but that can be
"easily expanded"... We don't really have a lite dynamic vector, just
the big fat dynamic lists, so improving on this needs some extra effort.

This commit also drags in a bunch of random network work by necessity.
2015-05-18 21:07:06 -07:00
Kevin Lange
331e0f0ad1 All debug lines to go straight to serial rather than TTY 2015-05-18 21:05:52 -07:00
Mike Gerow
2ac9f8a9ea Fix the way that buffers are mixed
The previous method was failing to actually mix the samples as signed
16-bit values and just adding the individual bytes. This works out fine
for single buffers but creates weird artifacting if multiple buffers are
being mixed and there is a carry between the bytes.
2015-05-18 02:00:57 -07:00
Mike Gerow
0f35a5bfe3 Add ioctl interface for snd mixer 2015-05-17 20:31:36 -07:00
Mike Gerow
f53ea98e05 Implement snd mixer interface in ac97.c 2015-05-17 20:31:36 -07:00
Mike Gerow
ad708efd5a Add support for managing mixer knobs to snd interface 2015-05-17 20:31:36 -07:00
Kevin Lange
5d4f63356a Fix warning in lfbvideo module 2015-05-17 15:00:49 -07:00
Kevin Lange
e703c8761b removing log calls from timing-sensitive sound functions 2015-05-17 14:12:10 -07:00
Kevin Lange
bebb58b189 Fix audio delays 2015-05-15 22:21:53 -07:00
Kevin Lange
141ca495d9 Write to buffers in sequence instead of splitting in half 2015-05-15 15:01:51 -07:00
Mike Gerow
320925d0d9 Convert ac97 module to use snd 2015-05-15 01:04:07 -07:00
Mike Gerow
b06b4af8b9 Add snd sound subsystem.
It's got a long way to go, but this provides basic mixing between
applications.
2015-05-15 01:04:07 -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
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
59d0481db4 Fix pcspkr timing 2015-04-30 16:34:23 -07:00
Kevin Lange
4fd1ae9aa3 Support scrollwheel mice 2015-04-26 18:05:14 -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
b54e2d1b54 Several ridiculous hacks for networking 2015-04-04 12:19:10 -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
Kevin Lange
f33f723735 Remove ext2 debug stuff 2015-02-15 17:40:31 -08:00
Kevin Lange
a9f5727a8b sketchy incorrect unlink and truncate on open 2015-02-12 21:43:20 -08:00
Kevin Lange
e64eb6c90c Cleanup and bugfixes for previous ext2 work 2015-02-12 21:02:02 -08:00
Kevin Lange
25df3dfe0e File permissions when writing ext2 2015-02-12 20:34:40 -08:00
Kevin Lange
ba65120b0a More experimental ext2 write support - vfs linkage 2015-02-12 20:24:29 -08:00
Kevin Lange
a73a033a29 Experimental updates to write support in ext2 (incomplete, internals only) 2015-02-11 23:12:01 -08:00
Kevin Lange
4b1778293b Add a silly module for debugging on my netbook 2015-02-04 19:53:16 -08:00
Kevin Lange
a7eb739963 Support notably slower drives 2015-02-04 19:53:02 -08:00
Kevin Lange
91c51272bc Copyright years (hello 2015) 2015-02-03 19:43:04 -08:00
Kevin Lange
f631283fb2 minor keyboard module cleanup 2015-02-03 15:19:09 -08:00
Kevin Lange
724a58930f Fix rtl_ircd startup sequence 2014-08-05 22:33:56 -07:00
Kevin Lange
87c212017b Various bits of cleanup to unbreak mounting 2014-06-09 21:21:46 -07:00
Kevin Lange
17e332b5e7 expose mounting to userspace 2014-06-09 20:13:11 -07:00
Kevin Lange
d3cddf169a And then some more magic to merge the vimhints and the copyright headers 2014-06-07 23:58:31 -07:00
Kevin Lange
1287af81ef Reinsert vim hints magically 2014-06-07 23:51:01 -07:00