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
Kevin Lange
b58f7ed353
Strip vim hints from modules
2014-06-07 23:45:54 -07:00
Kevin Lange
d3b4a7c5dc
Tweak a few extraneous copyright headers
2014-06-07 23:29:17 -07:00
Kevin Lange
ef7d72c1e1
License headers and a tool to generate them
2014-06-07 23:13:29 -07:00
Kevin Lange
09c8678953
add a debug shell command to replace with a login shell
2014-06-07 20:44:13 -07:00
Kevin Lange
dfc5901575
Cleanup module loading command (messages in particular)
2014-06-07 19:48:37 -07:00
Kevin Lange
77761d0266
Fix double free in kdebug ls
2014-06-07 19:42:19 -07:00
Kevin Lange
d532f0350a
Only include binary name, and not path, in /proc/x/status
2014-06-07 18:07:23 -07:00
Kevin Lange
c843c60888
Fix permission masks on procfs
2014-06-07 15:05:12 -07:00
Kevin Lange
24e34911bf
Some net cleanup, still working on generic interface
2014-06-07 13:25:28 -07:00
Kevin Lange
02dbc0e1f4
some vague attempt at revealing links in stat
2014-06-07 12:58:45 -07:00
Kevin Lange
871da8a2d4
Reset tty after divine-size
2014-06-06 11:37:47 -07:00
Kevin Lange
9d389c52d5
Add PPid to procfs
2014-06-05 23:41:21 -07:00
Kevin Lange
4c199aa6b8
close previous wd on kdebug cd
2014-06-05 22:22:17 -07:00
Kevin Lange
34d81fca37
Probably fix mkdir in tmpfs
2014-06-05 19:08:07 -07:00
Kevin Lange
99ca785025
Fix warning in ps2mouse module
2014-06-01 12:56:47 -07:00
Kevin Lange
d7b7d17a00
That assertion should be a warning
2014-05-31 20:35:23 -07:00
Kevin Lange
f317b18a25
Add a debug command to maybe fix mouse if it gets stuck
2014-05-30 22:27:45 -07:00
Kevin Lange
04fa7a39b7
Support ^D in debug shell; make VINTR ^B for serial console
2014-05-29 22:01:53 -07:00
Kevin Lange
54cd6e4547
Hm. Not sure why that's happening.
2014-05-28 20:17:23 -07:00
Kevin Lange
84420f9e5c
Support closing packetfs connections
2014-05-28 19:21:56 -07:00
Kevin Lange
d696f51f8b
Real unix pipes
2014-05-27 21:38:30 -07:00
Kevin Lange
ad1074184c
Fix an IRC bail fprintf that was dropping a unit
2014-05-23 13:26:03 -07:00
Kevin Lange
3743d0e311
Fix irc prompt
2014-05-23 12:44:14 -07:00
Kevin Lange
290eb0f344
Some IRC cleanup
2014-05-19 19:39:04 -07:00
Kevin Lange
c5f256a4d3
terrible hack - kernel irc client
2014-05-18 20:23:21 -07:00
Kevin Lange
4c99c387f5
Expose pc speaker as device file
2014-05-18 16:11:14 -07:00
Kevin Lange
1dfa71aee9
A start on cleaning up network stack
2014-05-17 23:16:30 -07:00
Kevin Lange
25af2c88eb
minor cleanup
2014-05-17 18:50:52 -07:00
Kevin Lange
216a26e6c4
fix NICK/USER
2014-05-17 16:45:15 -07:00
Kevin Lange
7b05a869a5
Silly IRC client
2014-05-17 15:08:50 -07:00
Kevin Lange
03f8f5062c
Interactive IRC connection
2014-05-17 12:40:01 -07:00
Kevin Lange
39787e16f3
Additional cleanup, fix multiple messages
2014-05-15 20:45:14 -07:00
Kevin Lange
372ded0b4d
cobbled-together mess of an irc packet sending thing
2014-05-14 23:24:43 -07:00
Kevin Lange
f074cbd8b1
More broken TCP stuff
2014-05-14 21:26:53 -07:00
Kevin Lange
63b51a566a
Working acks
2014-05-14 21:02:10 -07:00
Kevin Lange
4f289bd594
tcp syn :D
2014-05-14 16:34:05 -07:00
Kevin Lange
a252e54ce5
more general DNS cleanup
2014-05-14 01:44:31 -07:00
Kevin Lange
21b6454ba4
Cleanup DNS client a bit and query freenode
2014-05-14 01:23:12 -07:00
Kevin Lange
ff2cf9ee72
Fix mac addresses I accidentally zero'd
2014-05-14 00:13:36 -07:00
Kevin Lange
e9c05fa216
terrible DNS client
2014-05-13 23:56:54 -07:00
Kevin Lange
a3df5f1e22
IP convenience functions
2014-05-13 22:59:36 -07:00
Kevin Lange
98d6516cd4
Craft our own packets instead of using prebuilt ones
2014-05-13 22:09:15 -07:00
Kevin Lange
913c4b004f
make the video panic screen display a message
2014-05-10 19:12:31 -07:00
Kevin Lange
ba46564785
Add a cheap, terrible vignette to the panic screen
2014-05-10 14:46:18 -07:00
Kevin Lange
7be6baffa4
Add a debug shell command to force a kernel panic
2014-05-10 14:16:35 -07:00
Kevin Lange
898c5f23d3
Desaturate entire display on kernel panic
2014-05-10 14:03:13 -07:00
Kevin Lange
56592bb600
Fix silly issue with not setting fd count in debug shell
2014-05-08 20:24:26 -07:00
Kevin Lange
e37fdd2b4b
Various bits of cleanup; actually examine packets
2014-05-08 19:29:23 -07:00
Kevin Lange
6b8c425000
Minor cleanup, embed a DNS request
2014-05-07 23:08:34 -07:00
Kevin Lange
1ed5be7bc7
There are actually 5 of those, not 4, mr. cantcount
2014-05-07 00:17:31 -07:00
Kevin Lange
80fef4f1cb
test sending multiple packets
2014-05-06 23:29:17 -07:00
Kevin Lange
e5a8ed3a68
Not the cleanest, but better than before...
2014-05-06 22:38:21 -07:00
Kevin Lange
b824abf250
Kill lwip stuff; add back in native rtl driver
...
Now with actual working stuff.
2014-05-06 22:14:05 -07:00
Kevin Lange
7d84693b95
Make ext2 driver should magic on magic mismatch
2014-05-03 02:06:26 -07:00
Kevin Lange
e838019d67
fix ata driver for devices not providing sectors_48
2014-05-03 02:06:08 -07:00