Commit Graph

3788 Commits

Author SHA1 Message Date
Ingo Weinhold
f2d34b2994 Added unary - operator.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-12 16:15:20 +00:00
Ingo Weinhold
0473808ce2 Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-12 15:49:01 +00:00
Stefano Ceccherini
140334f858 Added error checking using exceptions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-12 08:46:56 +00:00
Axel Dörfler
6be1e37d94 * Cleaned up SCSI headers a bit.
* scsi_cmds.h declared several variables instead of naming enums.
* the CD-ROM standard retrieval was broken (always checked index 0).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-10 14:13:37 +00:00
Hugo Santos
36880dfbed make tcphdr public, it is used by several applications.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-08 13:10:45 +00:00
Axel Dörfler
d00539e3ba * Revamped BPathMonitor API as suggested by Ingo - we could rename it to BNodeMonitor
and add wrappers for watch_node() as well, though.
* Implemented more or less all what is needed for the path monitoring to work.
* Added a test application: works fine under Haiku, but somewhat flaky under BeOS,
  dunno why yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-08 00:30:59 +00:00
Ingo Weinhold
e23824d781 Surprising how much gcc 4 compilers on Linux differ. Another attempt to
make both gcc 2.95.3 and the plethora of gcc 4s happy: Typedefed
struct fssh_stat to fssh_struct_stat, thus hopefully avoiding spurious
errors concerning clashes with the function or regarding namespacing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-07 13:41:12 +00:00
Hugo Santos
9534d90eb9 added IFM_AUTO to if_media and ifconfig.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-07 05:28:55 +00:00
Hugo Santos
cdb3eb762a the previously added IO interrupt handling routines are no longer necessary, at least for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-06 22:40:52 +00:00
Hugo Santos
5502e596dc added io_interrupt_handler methods for dynamic handling of IO interrupts, including enabling/disabling without allocation and in interrupt context.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-06 15:07:56 +00:00
Axel Dörfler
ed1589a568 Fixed binary compatibility problem I introduced yesterday.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-05 05:46:08 +00:00
Axel Dörfler
e5bc3cb9b4 Added virtual desctructor to calm down GCC 4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-04 16:59:23 +00:00
Axel Dörfler
f30198a051 * Implemented PathMonitor class - untested, but compiles.
* The API is just a proposal at this time, please comment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-04 16:02:04 +00:00
Ingo Weinhold
81149059e2 Removed kludge that was only necessary for building the old bfs_shell.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-04 07:59:47 +00:00
Axel Dörfler
a5667a5b8b * Renamed nv.driver to "nvidia", nm.driver to "neomagic", and mga.driver to "matrox";
also renamed their accelerants and settings files accordingly.
* Added Mandelbrot and GLDirectMode as demo applications.
* Moved CortexAddOnHost to /bin.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-04 07:49:53 +00:00
Axel Dörfler
8c40c83fa1 Renamed net_device::{add|rem}_multi() to {add|remove}_multicast for consistency and clarity.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-04 06:57:26 +00:00
Hugo Santos
6d043beb03 freebsd compat. layer: added mii placeholders, callout implementation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-03 21:18:21 +00:00
Stefano Ceccherini
4bfa8f22df completes previous commit. Sorry for breaking the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-03 16:34:31 +00:00
Ingo Weinhold
8dcb250c8a Thou shall not leave a blank line between copyright header and header
guard.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-02 14:26:29 +00:00
Hugo Santos
f6cfc5af19 set ValueIterator's fIndex to the next slot so OpenHashTable's Iterator properly gets it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-02 14:08:55 +00:00
François Revol
8c5d3c422a Kernel socket helper funcs, with BONE compatibility. Shared by at laest 2 fs addons, and soon other drivers, so move it in here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-02 00:31:45 +00:00
Hugo Santos
09b89797af added ADDMULTI/REMMULTI support to ipro1000. Also cleaned up the compat. layer a bit to reuse some of the system's definitions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-02 00:10:00 +00:00
Hugo Santos
954038303d added add_multi/rem_multi to net_devices. Glued the interface protocol multicast handling with net_device via add_multi/rem_multi.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-01 12:26:03 +00:00
Hugo Santos
8465a06910 added a ValueIterator to MultiHashTable to present a limited view in result of Lookup()s.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-01 12:16:36 +00:00
Hugo Santos
8aa4c7e370 prepared the ipv4 multicast code for full multicast support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-01 11:38:59 +00:00
Hugo Santos
1a41adbcd2 added join_multicast/leave_multicast to datalink protocols, preparing for full multicast support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-01 11:38:39 +00:00
Stefano Ceccherini
f96bec013d small cleanups. Moved some code into a _DrawLine() method.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 19:49:43 +00:00
Hugo Santos
73f1548be1 some getsockopt/setsockopt and multicast fixes.
* allow an ipv4 bind() to a multicast address.
 * bumped getsockopt/setsockopt kernel driver buffers to 256 bytes to at least handle structures which take one sockaddr_storage.
 * convert generic multicast delta API names to IPv4 ones before handling the specific option.
 * changed ipv4_getsockopt/ipv4_setsockopt a bit as the code gcc 2.95 was generating was a bit too funky.
 * properly pass setsockopt/getsockopt to handling protocols.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 19:42:12 +00:00
Ingo Weinhold
a4d337d5dd Undefine macros defined under BeOS before redefining them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 17:11:04 +00:00
Ingo Weinhold
f067335f51 Added atomic_*() functions missing under BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 17:02:53 +00:00
Hugo Santos
75f1f9e04a added two more test multicast applications: multicat/multisend. sockaddr_in6/in6_addr must be visible through <netinet/in.h>, fixed that as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 16:56:58 +00:00
Hugo Santos
0e30c21c70 ipv4: changed the multicast filter to use an hash table to keep source states.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 12:31:31 +00:00
Axel Dörfler
4231541414 * Implemented atomic commit support to the clipboard as described by #1187.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 10:50:15 +00:00
Jérôme Duval
c25f230cb6 added _get_key_map() to get the character map size
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 10:07:34 +00:00
Hugo Santos
698b6d7195 cache/slab: when CACHE_DURING_BOOT is specified, use vm_allocate_early to obtain pages for slabs, and create the associated areas on post bootup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 22:58:46 +00:00
Hugo Santos
39af445966 added object_cache_reserve to allow cache users to pre-allocate slabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 21:45:23 +00:00
Hugo Santos
11debaf6e4 added CACHE_UNLOCKED_PAGES flag to allow caches' pages to be created with no locking instead of full locking.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 20:55:44 +00:00
Hugo Santos
cf5d9f4b8d added 'udp_endpoints' debugger command.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 19:03:06 +00:00
Hugo Santos
0be6e97788 minimal cleanups
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 13:11:30 +00:00
Ingo Weinhold
dac7faad8d Added volume initialization support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 07:22:22 +00:00
Hugo Santos
6bad493439 pushed the slab init a bit deeper. added a object cache based allocator, including a bootstrap mechanism to have it init during bootup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-29 02:23:37 +00:00
Ingo Weinhold
3b8715d804 Provide a way to convert FS shell error codes to host platform error
codes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-28 23:40:04 +00:00
Hugo Santos
6e31ae98f9 some object cache / slab improvements.
- call the reclaimer callback when low on memory.
 - use the depot when on multi-cpu setups (for scalability).
 - fixed the amount of memory spent on slabs for very large objects.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-28 21:35:23 +00:00
Hugo Santos
11b5020f2f rewrote the object cache (slab) implementation a bit, preparing for further integration.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-28 18:53:58 +00:00
Hugo Santos
8a96ba39e3 some slab cleanups, split the C interface to another file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-28 09:37:38 +00:00
Hugo Santos
4e8a1b331f miniature cleanups.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-28 09:37:26 +00:00
Ingo Weinhold
90c0876839 FS shell changes:
* Added basic built-in module support.
* Added rootfs.
* Added "kernel" initialization.
* Exposed the FS syscalls.
* Mounting/unmounting the FS works now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 22:37:01 +00:00
Hugo Santos
505e98538a introduced MultiHashTable, similiar to multimap, but with hash table semantics.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 15:06:30 +00:00
Hugo Santos
01a10fc527 fixed OpenHashTable::Iterator, it wasn't working for a single item.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 14:47:34 +00:00
Ingo Weinhold
a38a92c955 Beginnings of a new, better portable FS shell with Haiku FS interface.
Doesn't do anything ATM, but already provides the required system
interface (VFS, caches, POSIX functions).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 12:17:22 +00:00
Ingo Weinhold
f38eff6aa2 Added a few more functions to the host platform BeOS compatibility layer:
* thread related functions,
* semaphore related functions,
* atomic_*() functions,
* readv_pos(), writev_pos().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 12:11:30 +00:00
Hugo Santos
8ac2dba331 added iterator to OpenHashTable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 08:07:38 +00:00
Hugo Santos
5084c83901 addressed Axel's suggestion regarding SocketAddress' GetPort() name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 07:20:43 +00:00
Hugo Santos
25a2744f9e adapted UDP to use AddressUtilities, for readability.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 07:10:11 +00:00
Hugo Santos
4b55736dde added new helper ProtocolSocket. Moved some stuff together to achieve better inlining.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-27 07:09:46 +00:00
Marcus Overhagen
4b095722c7 new debug header for media kit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 20:40:27 +00:00
Marcus Overhagen
a4c8b51d3a changed header guard
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 20:39:30 +00:00
Hugo Santos
5d6551d69f removed some of the slab's initial heavy debugging. we now merge the links into the slab itself resulting in zero overhead per buffer with MergedLink strategy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 15:40:53 +00:00
Hugo Santos
e6fb3d3947 more slab fixes, also introduced a new strategy optimized for medium sized buffers (64 >= x < 512) with lengths other than power of 2 (has an overhead of 2 words per buffer).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20839 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 11:38:24 +00:00
Hugo Santos
dd89ad0e7e added locking to slab's Cache<>. Now we react to system's low memory conditions freeing up empty slabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 07:31:19 +00:00
Hugo Santos
b8c0d6618e gcc 4 compilation fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 06:32:25 +00:00
Hugo Santos
81bc570922 assorted slab fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 06:05:08 +00:00
Hugo Santos
81423c91c7 added initial slab code to the kernel. It is still unused, and there is still no VM interaction.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-26 03:41:24 +00:00
Hugo Santos
77e70865e1 moved the storage requirements (i.e. ParentType *) to OpenHashTable's Definition which we now instantiate per OpenHashTable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 19:21:06 +00:00
Hugo Santos
2586c25e31 use Chaining in OpenHashTable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 18:55:05 +00:00
Hugo Santos
66a4a42802 added Recv-Q/Send-Q output to netstat.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 17:41:18 +00:00
Hugo Santos
585195c28d introduced SocketAddress wrappers and use them in TCP.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 17:41:01 +00:00
Jérôme Duval
c36e4d4c9f updated freetype to 2.3.4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 17:18:01 +00:00
Hugo Santos
53f23f85a2 partially rewrote TCP's endpoint manager. Fixes #1173
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 16:14:14 +00:00
Axel Dörfler
5c03270bea Added block_cache_sync_etc() that allows you to sync single blocks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20811 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-25 12:07:30 +00:00
Hugo Santos
85dbe747c4 open addressing self-extending hash table implementation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-24 11:04:35 +00:00
Jérôme Duval
56490cf3b7 virtualized DirectConnected() and EnableDirectMode()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-23 22:08:34 +00:00
Hugo Santos
8a819b17e4 retrieve the incoming interface on the domain_receive_adapter(). This should fix potential issues with packets addressed to the IP broadcast address, such as in with some DHCP implementations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-20 04:40:53 +00:00
Hugo Santos
74b0e85845 merged a bit more of functionality into DatagramSocket so we don't require a custom ReadData in the link protocol.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-20 02:13:54 +00:00
Hugo Santos
2445c00e64 some internal reorganization of getsockopt()/setsockopt() handling. TCP is now able to fully use the application requested sender/receiver buffer sizes for improved performance.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-20 01:58:14 +00:00
Stephan Aßmus
375dc591e6 * thought of an extension for the icon editor protocol
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-19 19:28:57 +00:00
Stephan Aßmus
f591eb8ba0 * cleanup license header (and convert Jérôme to UTF8)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-19 19:26:44 +00:00
Stephan Aßmus
66cd7e6cc6 * define some more stuff
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20753 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-19 19:22:49 +00:00
Jérôme Duval
31ebfe61e4 added default sound events
implemented system_beep() by sending an event to the media addon server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-16 19:15:46 +00:00
Hugo Santos
d5b5a2c2f8 introduced Checksum::PseudoHeader helper.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 23:18:15 +00:00
Hugo Santos
1408d1f0ce introduced datalink's send_datagram to perform route and source address selection and dispatch the datagram to appropriate domain/protocol.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 22:11:12 +00:00
Hugo Santos
624c52d8b7 ARP now queues packets while resolving a destination instead of blocking on send_data(). This fixes several issues:
- TCP now behaves correctly when receiving new connections as its SYN/ACK is queued, or if lost correctly retransmitted when the peer resends a SYN.
 - The first ICMP Replies from an external on-link host pinging Haiku are no longer lost.
 - Reduced the number of ARP messages Haiku needs to generate until resolving an entry.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 21:00:12 +00:00
Jérôme Duval
33c487a43e implemented add_system_beep_event()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 20:40:12 +00:00
Jérôme Duval
88ec4b1dbe fixed some warnings
code style of MMediaFilesManager.* 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 13:59:59 +00:00
Hugo Santos
6a60618094 glued the multicast filter handling to the receive path: we are now capable of receiving multicast frames in datagram sockets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 07:31:04 +00:00
Hugo Santos
6c501a4085 support RFC 3678's Protocol-Independent setsockopt()s for IPv4 multicast.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 03:07:28 +00:00
Hugo Santos
46527f6806 initial steps towards IPv4 Multicast Filter Delta API (RFC 3678)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 02:44:01 +00:00
Axel Dörfler
ffcc37a0aa * Added and implemented B_INVALIDATE as available on Dano; to invalidate only a certain
part of the view, you can add a BRect "be:area" to that message - very handy.
* Cleaned up AppDefs.h a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-14 18:11:42 +00:00
Hugo Santos
49f3c71e21 respect SO_BROADCAST for received and sent datagrams.
- check if the destination address is specified in IPv4's SendData()
 - minor cleanups to IPv4's TRACE()s.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-13 21:33:13 +00:00
Marcus Overhagen
36e0e8a8bd Interface definition of DVB drivers. Currently private API.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-13 15:52:58 +00:00
Hugo Santos
658a550639 use module_dependencies to load the required modules by udp, tcp, ipv4, icmp and arp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20676 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-13 14:37:48 +00:00
Hugo Santos
57e2a3d584 only deliver frames to IPv4 raw sockets of the specified protocol.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-13 04:20:39 +00:00
Hugo Santos
d438fa4c12 added buffer, datalink and socket module references to the stack module so we don't have to load them in each other module.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-13 03:06:36 +00:00
Hugo Santos
bfb45f717c introduced a new helper class DatagramSocket which provides a consistent base interface and functionality for the implementation of datagram-based sockets.
- made the ipv4 raw, udp and link protocols use DatagramSocket.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-13 00:55:32 +00:00
Jérôme Duval
72b4b94081 use __builtin_offsetof for gcc4 and superior, it avoids a gcc4 broken build with template use of offsetof()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-12 18:36:37 +00:00
Jérôme Duval
b342ed59fb gcc4 is picky with in-template symbols, they must be qualified
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20668 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-12 18:17:31 +00:00
Jérôme Duval
b12aab90c7 fixed typo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-12 18:11:11 +00:00
Hugo Santos
6c35350908 moved address selection logic to a new 'get_buffer_route'.
- IPv4 now assumes the addresses it is supplied in send_routed_data are already the appropriate ones.
 - made the Data(), operator* and operator-> methods in NetBufferFieldReader const so we can use them in the same expression as the constructor.
 - fixed an issue with UDP where the wrong source address could be used in the calculating the checksum.
 - changed ipv4_print_address to use the more common 0.0.0.0 format.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20660 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-11 22:24:12 +00:00
Hugo Santos
87001e059c some NetBufferUtility revamp.
- introduced base NetBufferFieldReader which deals with obtaining a continuguous field to deal with.
 - renamed Detach() to Sync() to better express the fact that we may be writing to the buffer.
 - Fixed IPv4's and ICMP's checksum calculation as it assumed the underlying header was contiguous.
 - ICMP is now able to reply to ICMP Echo Requests which were split across data nodes.
 - in split_buffer(), make sure we were able to trim() the new buffer before damaging the original one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-11 16:40:40 +00:00
Hugo Santos
af56b5b233 fixed add_tcp_header() as it wasn't considering the possibility that prepending data would not result in a contiguous buffer. This would result in wrong checksums for apparent no reason.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-10 19:04:13 +00:00
Hugo Santos
8107b19403 Fixed some more TCP issues.
- Properly flag sockets using non-blocking connects() when in SYN SENT.
 - and when in LISTEN, we should use the socket's connection queue size.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-10 05:28:56 +00:00
Hugo Santos
e53357d57a Prepared net_device_monitor to accept device removal events.
- Introduced public net_device_monitor.
 - Changed the link protocol to maintain a lock per instance instead of inside the FIFO. Now all of the link instance data is protected.
 - Adapted the link protocol to use net_device_monitor.
 - Introduced a private Fifo class which doesn't maintain it's own lock.
  - Maybe we should add something like a public net_protocol_implementation which maintains a fifo and a benaphore? With the fifo using the structure's lock instead of maintaining it's own.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-08 09:15:52 +00:00
Ingo Weinhold
d307e81230 Added ENOATTR.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20607 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-08 02:01:07 +00:00
Jérôme Duval
0c93c0a807 change the way FileGameSound works : avoid using a port
code style, some clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-06 22:40:23 +00:00
Hugo Santos
0d5afa4dec introduced fifo_socket_enqueue_buffer which clones the buffer, enqueues it to the fifo and notifies the socket.
- changed the link, ipv4 and udp modules to use fifo_socket_enqueue_buffer


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-05 17:56:20 +00:00
Hugo Santos
17b77c3b92 consolidate all RECV/SEND ioctls into a single RECEIVE/SEND pair
- changed the socket module to use thew new RECEIVE/SEND in all forms of recv() and send()
 - changed libnetwork to use the new RECEIVE/SEND
 - remove transfer_args processing from strace since the structure was removed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-05 14:26:46 +00:00
Hugo Santos
dae7f8ea46 initial recvmsg and sendmsg implementations
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-04 17:39:43 +00:00
Hugo Santos
36883c5516 ipro1000: added ETHER_GET_LINK_STATE support
* use em_media_status to get link status
 * added IFM_1000_SX (Fiber Optic) to net/if_media.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-04 12:50:54 +00:00
Axel Dörfler
9206bb3779 * Changed ETHER_GET_LINK_STATE ethernet driver interface, added ETHER_SET_LINK_STATE_SEM.
* The device interface list now uses class DoublyLinkedList instead of struct list.
* Implemented SIOC[SG]IFMEDIA for setting (not supported by any device yet), and
  retrieving the device media information.
* Fixed a locking bug in list_domain_interfaces().
* Added new stack function device_link_changed() that should be called in case the
  link state (media) changed.
* The ethernet device module now spawns a thread and will periodically check the media
  state of all ethernet devices that support this (if any).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-04 09:41:04 +00:00
Axel Dörfler
1a3ab92b81 * Rewrote ether_driver.h, removed some BONE stuff we don't support at this point;
it might also be a good idea to change the constants to better match the usual
  style.
* Added a BSD-style if_media.h.
* Added interface flags IFF_LINK, IFF_AUTO_CONFIGURED, and IFF_CONFIGURING. The
  former will be set automatically by the stack, the rest will be set by the
  net_server depending on the current state.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-03 14:42:07 +00:00
Ingo Weinhold
ed07b9c7e3 The last missing hooks -- get_vnode_name(), write_attr_stat() and
rewind_query() -- are passed to the userland. get_vnode_name() has an
emulation in userland, in case the client FS doesn't implement it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-03 04:40:54 +00:00
Axel Dörfler
2d55afcdf7 Support getting route information for a specific destination
using SIOCGETRT. Patch by Hugo Santos.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 12:06:16 +00:00
Ingo Weinhold
27d37d4d24 * Optional debug feature for tracking which page queue a page should be
in.
* New debugger command "find_page", which searches all page queues to
  find out, which one a page is actually in.
* Solved nasty race condition between the page scrubber and
  vm_page_allocate_page_run(): The page scrubber didn't mark the pages
  it was processing busy, so that vm_page_allocate_page_run() could claim
  them in the meantime. They would end up in the clear pages queue,
  although being assigned to a cache at the same time. This should
  finally solve bug #1056.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 19:48:51 +00:00
Axel Dörfler
9c62a6ed7d Rewritten Debug.h by Vasilis Kaoutsis.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 14:43:25 +00:00
Ingo Weinhold
b8ba8f58d7 Added the disk device API to the libbe_haiku.so, so that libtracker.so builds
again for target libbe_test. Added respective syscall stubs and other functions
to libhaikucompat.a.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-28 15:20:08 +00:00
Ingo Weinhold
2b2ec4382a * Moved the AutoLocker class out of the kernel/utils/AutoLock.h header
into its own shared/AutoLocker.h. It can be used by userland code too.
* Removed headers/private/shared/ObjectLocker.h and replaced all uses of
  BObjectLocker by AutoLocker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-27 12:05:33 +00:00
Axel Dörfler
c6a7ff7a9f * The new vm_page_mappings weren't updated correctly in many cases.
* Added a comment to vm_remove_all_page_mappings() that shows that we need to
  change the mapping spinlock into a mutex.
* Pointed out some potential problems in the code.
* Added vm_page_at_index(), vm_clear_map_activation(), and vm_test_map_activation()
  in preparation of the page scanner rewrite.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-23 11:48:37 +00:00
Ingo Weinhold
27810ccf5e Added the last useful features I dare imagine: A Lock() method and the
possibility to initialize the AutoLocker without locking the object even
if it is unlocked yet. Especially in loops Lock()/Unlock() come handy
when an otherwise constantly hold lock needs to be unlocked for a short
time.

I suppose we should move the kernel utils AutoLocker implementation
to headers/private/shared, and drop the less powerful ObjectLocker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-23 00:03:59 +00:00
Axel Dörfler
bdfc47dbcd * Fixed the test for equality when a known ARP reply came in - you should no longer
see the "ARP entry updated with different address" message.
* sockaddr_dl::sdl_data is now unsigned (uint8_t instead of char).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-20 22:21:36 +00:00
Ingo Weinhold
44b5d72b5a Added new functions to the debugger API:
{set,clear}_debugger_{break,watch}point(), allowing to set/clear break
and watchpoints for the calling team. When a break/watchpoint is hit,
the team enters the debugger. Handy in situations when the program in
question can't really be started in a debugger (or it would be
complicated to do so). The functions work only as long as no debugger is
installed for the team.

We clear the arch specific team and thread debug infos now, when a new
debugger is installed, thus clearing break- and watchpoints.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-20 16:20:13 +00:00
Ingo Weinhold
2c97a8d164 Use -I instead of -isystem for system header directories when building
with gcc 4. Fixed resulting build errors (gcc is more lenient for
headers in -isystem directories).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-14 20:36:42 +00:00
Jérôme Duval
4d275b2b21 added some Haiku media definitions
made mpglib beos compatible


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-13 23:10:19 +00:00
Stefano Ceccherini
a3d758e369 Added support for font settings in PictureDataWriter. Not used yet
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-13 11:14:47 +00:00
Ingo Weinhold
d0c61f232b More distinctive header guard.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-11 21:20:23 +00:00
Axel Dörfler
826e857cf0 Implemented hash_remove_current() which removes the current iterator position
from the hash - not yet tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-11 21:18:49 +00:00
Ingo Weinhold
9781d591cb Include <util/kernel_cpp.h> in DoublyLinkedList.h only when compiling
for the kernel. Added missing includes in userland code that uses the
header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-11 13:56:45 +00:00
Axel Dörfler
6e601ee88f get_memory_map() now panics (and fails) in case it was called on unmapped memory as
suggested by Ingo; before it would just fill the physical pages with NULL pointers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-11 13:27:42 +00:00
Axel Dörfler
1594e83f84 * All mapped pages that are not wired (ie. locked) now have a vm_page_mapping object
that points to both, the page and the area the page is in. This will allow a page
  scanner to steal unused pages when necessary.
* The locking is currently done with a spinlock which we might want to have another
  look at one day.
* dump_page() and dump_area_struct() now dump the page mappings as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-08 14:35:26 +00:00
Ingo Weinhold
2f92537221 One unremove_vnode() prototype shall suffice.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-06 01:22:47 +00:00
Axel Dörfler
863634b83f Patch by Euan Kirkhope:
* Initial support for Rage Theatre 200.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 21:16:15 +00:00
Axel Dörfler
76b5213f47 Patch by Euan Kirkhope:
* Use AGP Bus manager module
* Fixed wrong framebuffer address computation; this should fix bug #1079.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 17:06:27 +00:00
Ingo Weinhold
4e0e80ed6c We analyze a client FS's capabilities -- i.e. which hooks it provides or
can be emulated -- and pass this info to the kernel add-on. Thus we can
avoid passing requests to the userland that can't be serviced anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 05:16:08 +00:00
Ingo Weinhold
cf4ccd6575 Renamed the FS interface hook read_link() to read_symlink().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 03:52:57 +00:00
Ingo Weinhold
12d359b85a * Removed write_link from the FS module interface. Adjusted all FS
add-ons accordingly and removed the syscall.
* Removed send_notification().
* Reimplemented notify_listener(). It used the unimplemented
  send_notification(). Now it has a chance to work. Note that
  notify_listener() is obsolete. I would already have removed it, if
  there weren't lots of FS implementations still using it (Hint!).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 00:46:57 +00:00
Ingo Weinhold
6aeea78c6e Made the UserlandFS code gcc4 friendly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 08:26:45 +00:00
Ingo Weinhold
eb9b19800b Fixed gcc 4(.1.2) build problems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 05:00:40 +00:00
Ingo Weinhold
30589be58b Added C++ guard. I don't know, why we define the <wctype.h> protos both
there and in <wchar.h>. Any reason for not removing them in <wctype.h>? Or
maybe even nicer reverse the inclusion direction, i.e. remove the
duplicate protos in <wchar.h> and include <wctype.h> instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 02:31:43 +00:00
Ingo Weinhold
97dd0fe3c8 * Adjusted according to the is_vnode_removed() -> get_vnode_removed()
change.
* The new notification functions are used instead of send_notification()
  and notify_listener() now. Mapped them in the BeOS kernel emulation
  accordingly. RamFS node monitoring seems to work now. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:41:09 +00:00
Ingo Weinhold
9481e62bdb is_vnode_removed() is now known as get_vnode_removed() and returns its
answer through a reference parameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:34:20 +00:00
Marcus Overhagen
0b0ecfab90 Added "const" to many parameters.
Removed most data allocations/copying from PicturePlayer, ServerPicture now has to do this when converting coordinates.
Added additional functions to ViewLayer to copy&convert multiple BPoint, BRect, BRegion to Screen coordinates, those should be further optimized.
Removed some function call overhead.
Note: some functions of PicturePlayer don't appear to be implented by PictureDataWriter,


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 23:17:40 +00:00
Marcus Overhagen
a20cecff60 removed unnecessary use of const_cast<> and (global) do_playback() function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 18:37:55 +00:00
Axel Dörfler
0c12332715 * vm_map_physical_memory() now sets the wiring/locking type of the area created
to B_FULL_LOCK.
* vm_clone_area() now respects the source area's wiring and inherits it. This
  should fix bug #1055.
* vm_cache::type is now duplicated in vm_area::cache_type - this allows looking
  it up without having to lock a vm_cache_ref; this also solves a locking bug
  in vm_unmap_pages() in this regard.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 13:44:55 +00:00
Axel Dörfler
7ce2eaa1e0 Patch by Euan Kirkhope:
* VIP FIFO functions for Rage Theater200 support


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:43:33 +00:00
Axel Dörfler
0caeca2af7 Patch by Euan Kirkhope:
Sync overlay with x.org


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:41:37 +00:00
Axel Dörfler
df647a5c3d Patch by Euan Kirkhope:
* Laptop LCD Backlight rework + powermanagement


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:38:11 +00:00
Axel Dörfler
b8fb3d1705 Patch by Euan Kirkhope:
Monitor Routing rework
 * mostly to fix my issues with dual monitors VGA + DVI which didn't work! ;)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:35:22 +00:00
Axel Dörfler
19cadc2f7d Patch by Euan Kirkhope:
* Kernel settings configuration added


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:33:08 +00:00
Axel Dörfler
a85694c375 Patch by Euan Kirkhope:
* option for PIO engine instead of DMA (for dodgy X700s)
* misc RAM config changes inline with x.org codebase


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:28:25 +00:00
Axel Dörfler
300bef5821 Patch by Euan Kirkhope:
* New "ATOM" BIOS Support for radeons X-series
* This also removes scanning for the BIOS signature for other cards


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:05:12 +00:00
Axel Dörfler
8841d8bcd1 First of a set of patches by Euan Kirkhope:
* Headers updated
 * PLL errata workarounds
 * Radeon asic type overhaul (consolidated)
 * Device IDs Updated.
 * support for X-series devices with legacy bios type
 * minor tidy ups / compiler warnings (casts)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 09:00:49 +00:00
Travis Geiselbrecht
0098867364 this seems to solve the 'lock up on bootup on core 2' problem.
Basically, there was a pretty subtle race between the cpus in main where if the main cpu released the AP cpus and then before the AP cpus had a chance to run the boot cpu started creating the main thread (which causes smp ici messages to be created) the system would livelock, where the boot cpu waited forever for the AP cpu to acknowledge the ICI (for a TLB flush when creating the kernel stack).
Added smp_cpu_rendezvous(), used to synchronize all the cpus to a particular point, and used it a few times in main().
While i was at it i fixed another race that'll probably never happen, but what the hey. Make sure the kernel args are copied into kernel space by the main cpu before letting any other ones use it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 08:09:28 +00:00
Ingo Weinhold
042eb16896 * More debug output in the kernel module.
* Made publish_vnode() available in userland. For old style FS add-ons
  publish_vnode() is used when they request a new_vnode(). The semantics
  of new_vnode() changed considerably in Haiku, but publish_vnode()
  seems to do pretty much what the old new_vnode() did.
* The UserlandFS hosted RamFS begins to work under Haiku. It runs pretty
  soon out of memory though (under vmware with 256 MB) and node
  monitoring is broken ATM.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 04:56:08 +00:00
Ingo Weinhold
617ed3e4a9 Implemented the new attribute open/close/... FS hooks. The mapping to the
old interface is completely done in userland ATM.

It becomes more and more obvious that we probably need to provide
the kernel add-on with a bit more information about what the client FS
interface supports in the first place, so we can save unnecessary trips to
the userland. Opening/closing attributes for a FS using the old style
interface could be handled completely in the kernel add-on, for instance
(even if we lose a bit of accuracy wrt to open modes etc.).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 01:16:13 +00:00
Ingo Weinhold
223bba10f3 Resurrected is_vnode_removed().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-28 22:24:28 +00:00
Ingo Weinhold
c10705cbda We do now provide the BeOS style FS add-ons with the kernel interface they
need via library libuserlandfs_beos_kernel.so. Fine-tuned the legacy headers
so they can by used by the the kernel interface emulation code as well as by
the add-ons. This is actually a bit hacky, since we build everything in the
Haiku build environment and thus mix these old headers and Haiku's.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-28 22:07:40 +00:00
Jérôme Duval
52710d6211 fixed the build; I also changed MoveFrom(), untested
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-28 19:35:57 +00:00
Axel Dörfler
ca954b7816 Another work-in-progress towards having extra structures per mapping per page:
* vm_area and vm_page now have a new field "mappings" where they will store lists
  of vm_page_mapping structures. vm_page::ref_count is gone, as it's no longer
  needed (it was never updated correctly, anyway).
* vm_caches now have a type field, ie. CACHE_TYPE_RAM for anonymous areas - this
  makes the stores a bit less independent, but is quite handy in several places.
* Added new vm_map_page() and vm_unmap_pages() functions to be used whenever you
  map in or unmap pages into/from an area. They don't do much more than handling
  vm_page::wired_count correctly right now, though (ie. B_LAZY_LOCK is now working
  as expected as well).
* Moved the device fault handler to vm_map_physical_memory(); it was not really
  used as a fault handler, anyway.
* Didn't notice Ingo's changes to the I/O space region broke lock_memory(). It
  now checks the type of the area that contains the memory, and doesn't lock
  anymore if not needed which solves the problem in a platform independent way.
* Implemented lock_memory() and unlock_memory() for real: they now change the
  vm_page::wired_count member to identify pages that shouldn't be paged out.
* vm_area_for() now uses vm_area_lookup() internally.
* Fixed various potential overflow conditions with areas that reach 0xffffffff.
* Creating anonymous areas with B_FULL_LOCK no longer causes vm_soft_fault()
  to be called, instead, the pages are allocated and mapped (via vm_map_page())
  directly.
* Removed the _vm_ prefix for create_area_struct() and create_reserved_area_struct().
* Fixed a bug in vm_page_write_modified() that would not have enqueued pages that
  failed to be written to the modified queue again when needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-28 13:24:53 +00:00
Axel Dörfler
91f1fe44d2 It really should only have an fFirst member :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-28 11:31:19 +00:00
Axel Dörfler
c210cfeb9a Added a doubly linked queue that is similar to the list, but only has a pointer
to its header. Not yet used or tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-28 08:21:02 +00:00
Ingo Weinhold
8474904ee0 Adjusted the FileSystem, Volume, and UserlandRequestHandler to the new FS
interface. The classes actually interfacing with the client FS add-on still
need to be adjusted.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-27 23:27:27 +00:00
Axel Dörfler
3eca858515 * Moved the early startup VM allocation functions from vm_page.c to vm.cpp.
* Renamed them, made everything static besides vm_allocate_early() (previous
  vm_alloc_from_kernel_args()) which now allows you to specify a different
  virtual than physical size, and therefore makes vm_alloc_virtual_from_kernel_args()
  superfluous (which isn't exported anymore, and is now called allocate_early_virtual()).
* Enabled printing a stack trace on serial output on team crash - it doesn't hurt
  for now, anyway.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20244 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-27 19:26:40 +00:00
Ingo Weinhold
b12d25d15d First walk through the userlandfs kernel add-on to port it to the Haiku
FS interface. Adjusted old hooks, but didn't add the new ones yet. The
module builds now at least.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-26 02:54:05 +00:00
Ingo Weinhold
b881d6401c B_VECTOR_ICON_TYPE is already defined for target libbe_test.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-26 02:48:58 +00:00
Marcus Overhagen
a090257d09 Add volatile keyword to apic memory access, cleanup, add timeout to arch_smp_send_ici.
But this still doesn't help with bug #1018...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-25 23:32:21 +00:00
Ingo Weinhold
1fbe3ccd4e * Reformatted to honor 80 chars/line limit.
* Renamed a few parameters of the FS module hooks:
  - *file in the attribute functions to *vnode
  - v to vnode
  - I could barely restrain myself from renaming the "_*" parameters. I
    understand this marks return parameters, but I'd prefer a nicer prefix
    or suffix (that doesn't makes you think this is a private/internal
    identifier) like "out", "ret", "return", "result", or something similar.

I'd also like to propose renaming {read,write}_link() to
{read,write}_symlink(). Er, and do we need write_link() at all?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-24 23:05:18 +00:00
Ingo Weinhold
0b9da247dc Intermediate check-in. I've decided I rather want to use Pe instead of
Kate for this job. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-24 15:01:34 +00:00
Ingo Weinhold
83812f6752 Copied userlandfs code from the test tree to the haiku source tree,
where it will be ported to Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-24 00:30:19 +00:00
Ingo Weinhold
24f10d18b1 Added missing B_ATOM_TYPE AND B_ATOMREF_TYPE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-23 23:16:31 +00:00
Marcus Overhagen
9e8dd0a713 added PCI express capability
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-22 17:46:44 +00:00
Axel Dörfler
cf2aeb201f * Implemented BDragger::{Show|Hide}AllDraggers() and its backend in the app_server.
This fixes bug #242. The value is currently stored in a separate file.
* Removed some unused codes from ServerProtocol.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-21 07:57:21 +00:00
Jérôme Duval
d4d9831990 merge both commpage.h into the private header
Travis, I hope this fits your needs :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-20 00:21:45 +00:00
François Revol
2dedc014e3 Use same figures as BeOS for soft and ahrd maximums on fd and mon tables (even though we don't use a table for mons).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-19 15:43:20 +00:00
Travis Geiselbrecht
1cbf8f4b3c initial support for a commpage, which is a chunk of memory in high kernel space with user readonly permissions.
The first use is to let the kernel decide what the preferred syscall mechanism is at boot time and copy the
appropriate user space code there. Can be used for routines the kernel can decide best how to use (memcpy, some
timing routines, etc).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-19 00:32:44 +00:00
Travis Geiselbrecht
badc7b674e yet another fix for #1018, which has at this point blossomed into a reorg of how AP cpus are initialized.
the new cpuid stuff was apparently exacerbating an existing problem where various bits of low level
cpu code (specifically get_current_cpu) weren't really initialized before being used. Changed the
order to set up a fake set of threads to point each cpu at really early in boot to make sure that at
all points in code it can get the current 'thread' and thus the current cpu.
A probably better solution would be to have dr3 point to the current cpu which would then point to the 
current thread, but that has a race condition that would require an int disable, etc.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-19 00:11:24 +00:00
Marcus Overhagen
3f8d7bce7c added PCI capability support to bus api
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-18 00:18:13 +00:00
Marcus Overhagen
13dbe1c7ff Added support function to find a PCI capability offset in the configuration data, needed for SATA support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-17 22:57:59 +00:00
François Revol
0ba2462a6d Added a stub BTextParameter as in Dano, I'd need that for ESDSink at least.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-16 23:40:49 +00:00
Jérôme Duval
c34e204a4e updated mesa to 6.5.2
updated the mesa software addon to work again (maybe would need more work)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-15 23:40:43 +00:00
Travis Geiselbrecht
dfb5375d18 clean up TSS initialization.
Now two complete tss structures exist within the per-cpu structure. Instead
of having to create a seperate area per each one, initialize them in place.
Also, the old mechanism to getting all of the cpus to get initialized was 
subtly broken, but still managed to work. Now, just force all the cpus to
initialize at boot, which makes the actual swapping of esp0 somewhat simpler.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-14 06:24:59 +00:00
Axel Dörfler
aa547f5fbb * mutex_lock() and recursive_lock_lock() now return a status_t and report failure.
* recursive_lock_unlock() now returns a void to mirror it's counterpart better;
  use recursive_lock_get_recursion() if you're interested in the lock depth.
* switch_sem(), and release_sem() now don't do anything anymore in kernel startup
  mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 14:07:31 +00:00
Axel Dörfler
eb117b4bfd Reworked the way thread_yield() works: just setting the thread to B_LOWEST_ACTIVE_PRIORITY
for one quantum wasn't really a good idea, as this could get quite expensive for the thread
(depending on the system load, it might have taken a long time until the thread was scheduled
again, no matter what priority it was).
Also, calling thread_yield() in a loop would have taken 100% CPU time.
Now, we sort the thread into the queue as with any other thread, but we'll ignore it once.
This now guarantees an actual context switch, as well as a much fairer rescheduling policy
for threads calling that function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 02:29:17 +00:00
Travis Geiselbrecht
dcdc4f4b43 pulled over some stuff from newos:
at boot, per cpu, detect the cpu, pull down all the relevant cpuid bits and
save them into the per-cpu structure. Changed most of the code scattered here
and there that reads the cpuid to use a new api, x86_check_feature, which looks
at the saved bits.
Also changed the system_info stuff to read from these bits.
While i was at it, refreshed all the bits to be current.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-05 01:46:28 +00:00
Travis Geiselbrecht
ea4ff0f689 is_computer_on() lives again as a true syscall.
Replaced the _kern_null syscall with _kern_is_computer_on.
is_computer_on_fire is a bit harder, since it returns a float from kernelland, which
at the moment isn't supported in haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 21:08:35 +00:00
Axel Dörfler
815c38625d Applied patch by Vasilis Kaoutsis:
* replaced new[] with malloc()/realloc() where appropriate - since we're messing with
  the bits anyway, this makes the code slightly faster.
* however, we might want to throw some std::bad_alloc exceptions to deal correctly with
  low memory situations.
* cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 13:32:36 +00:00
Axel Dörfler
f6c0820638 * The BHandler observer mechanism was completely broken in Haiku for remote targets;
this fixes bug #1005. As a result, the Disks icon will now appear in file panels
  when you change that setting with a panel open.
* _ObserverList is now in the BPrivate namespace (and renamed to ObserverList).
* its BHandler map is now only temporarily used for handlers that do not belong to
  a looper yet; when BHandler::SendNotices() is called, they will be transferred
  into the BMessenger map.
* Invalid messengers are now removed from the map when encountered.
* Added TODO comments about a possible reference counting if a handler is added
  twice to a list (right now, this will be ignored).
* All {Start|Stop}Watching() methods are now more or less safe to be used in low
  memory situations (adding some items to the map can still throw an exception...).
* Renamed BHandler::InitData() to _InitData().
* Some refactoring and cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-01 16:08:01 +00:00
Axel Dörfler
fe70b87d91 Fixed a couple of issues in our VM:
* we now always flush the TLBs after having unmapped some pages.
* vm_soft_fault() could traverse to a source cache while it was being collapsed
  by vm_cache_remove_consumer() - this is now no longer possible as the latter
  marks the cache as busy when doing so, and the former now tests this flag and
  locks the cache (via the new fault_acquire_locked_source() function).
* if fault_acquire_locked_source() fails with B_BUSY, the current cache is locked
  again, and tested again for the page - as it might have been moved upwards to it
  with the destruction of its former source.
* The cache delivering the page for vm_soft_fault() is now locked until the end;
  it can no longer go away before having actually mapped the page into the area.
* This also fixes the issue where pages would get lost as vm_soft_fault() put the
  page in the active list, no matter if its cache still existed.
* Also, we now keep a reference of to a cache in case a dummy page is inserted; this
  makes again sure that it doesn't go away during the execution of vm_soft_fault()
  (which could even add this page to the free list...).
* divided vm_soft_fault() into several smaller functions which should make it much
  more readable.
* Added a "cache_chain" KDL command that dumps the whole chain until the bottom
  when giving a pointer to a vm_cache as parameter.
* now usually call vm_cache_acquire_ref() before map_backing_store(), even though
  it shouldn't be really needed (I added it for debugging purposes).
* Some minor cleanup.
* NOTE: a major problem still persists: when removing a vm_cache, it's possible
  that some of its pages are still mapped, and there is currently no mechanism
  to get rid of these mappings! I've added TODO comments into vm_cache.c where
  appropriate.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-01 12:12:54 +00:00
Ryan Leavengood
e3e76a3af9 Added convenience methods to allow a group or grid layout's insets to be set
while it is being built.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-31 20:30:20 +00:00
Axel Dörfler
2e27874523 * wait_for_child() now behaves correctly when waiting for children of a specific
process group. This fixes bug #996.
* As a result, the process group stuff and wait_for_child() got much simpler;
  get_death_entry() and update_wait_for_any() could go away completely.
* If a team goes away, all of its children are now "reparented" to the kernel team,
  instead of the team's parent - this follows common implementations (and POSIX if
  I understand it correctly), but not BeOS anymore. The OpenGroup Base says this
  about this topic: "If a parent process terminates without waiting for all of its
  child processes to terminate, the remaining child processes shall be assigned a
  new parent process ID corresponding to an implementation-defined system process."
* We wait too long in wait_test_4 which at least puts us on par with Linux; see
  comment in _user_setpgid().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-29 15:33:31 +00:00
Axel Dörfler
1beeb96080 setpgrp() returns a pid_t, not an int.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-29 13:31:24 +00:00
Axel Dörfler
a6cba27756 Turned off patented colored subpixel rendering.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-29 12:36:08 +00:00
Axel Dörfler
6af9dcbfe5 Another cleanup patch by Vasilis Kaoutsis - thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-28 21:35:08 +00:00
Axel Dörfler
4a50aa51f2 Applied another patch by Vasilis: this one replaces all C++ style comments with
C style ones, as this is a C header, too (and a very basic one).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-27 16:26:37 +00:00
Axel Dörfler
686bdd59d3 Rewritten Errors.h, courtesy of Vasilis Kaoutsis - thanks for all the work!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-26 22:11:00 +00:00
Axel Dörfler
087882c26e * Rewrote headers as necessary; only Errors.h and Debug.h still originate from a Be header now;
feel free to change that ;-)
* Cleaned up existing headers.
* Coding style guide update to BBufferIO (renamed m_* members to f*).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-26 16:36:29 +00:00
Axel Dörfler
9dbe170a69 Implemented direct message passing for local targets; this fixes a deadlock
with PostMessage() in case the message queue is full.
Some notes:
* for synchronous replies, we don't use this mechanism yet, but it could be
  extended to do that as well.
* the code looks so complicated because we need a way to access the looper's
  queue without locking it (to prevent deadlocks); like Dano's solution, I've
  abused BTokenSpace to store a BDirectMessageTarget with a BHandler.
* we also need to decouple the lifetime of a looper's queue from its target,
  as we cannot lock the looper, and therefore, can't guarantee it stays valid
  as long as we're accessing it outside of BLooper.
* init_clipboard() now needs to be done after the global constructors have
  been called - since sending messages now needs gDefaultTokens to be initialized.
  Since this is done per image, it shouldn't cause any troubles, though.
* some minor cleanup, removed unused _msg_cache_cleanup_() and friends.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-26 13:59:56 +00:00
Axel Dörfler
c01f349e6d Cleanup:
* Got rid of unused BLooper members
* renamed fTaskID to fThread
* Removed private and deprecated AddLooper()/RemoveLooper()/... stuff; BLooper is now
  directly calling BLooperList methods.
* Got rid of extensive and useless comments
* Made a few TODOs more clear
* Merged InitData() and InitData(...) to _InitData(...)
* BLooper::Team() now uses BPrivate::current_team(), sTeamID is gone now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-26 12:42:18 +00:00
Axel Dörfler
aa33d0a928 Got rid of the looper ID stuff - it seems nowhere to be used.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-26 12:11:33 +00:00
Jérôme Duval
76b72c03e8 updated freetype to 2.3.0
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-25 19:12:34 +00:00
Axel Dörfler
ca9b91886d * Added a Dano extension to BMessageQueue: IsNextMessage().
* BLooper::AddMessage() is now using this method to determine wether or not to
  update its looper thread.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-25 17:08:16 +00:00
François Revol
6181d22fb0 Change IPPROTO_* from enum to #defines. This fixes #992.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-25 16:37:06 +00:00
François Revol
ea62eb1bc9 This should fix intermitent KDLs (at least with console debug output).
Use the size of the struct instead of checking a pointer that is never NULL...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-24 00:24:51 +00:00
François Revol
f9c52afd6a Remove old usb kit fro Be in favor of the new rewritten one. At least we have one now :D
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-23 17:14:35 +00:00
Michael Lotz
3a630146d2 * Minor cleanup
* Fixed wrong wording in comment

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-23 16:44:37 +00:00
Michael Lotz
3c0b8e7fff Commiting reimplemented USBKit that is compatible with the old Be sample code version.
It is supposed to be cleaner and more object oriented. It also adds some features (like a string getter for the interface) that were appearantly left out in the Be implementation.
It is currently built as a small static library from src/libs.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-23 15:55:34 +00:00
François Revol
2781a652ae Let it B, let it B...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-22 16:55:37 +00:00
François Revol
9b84f25119 The original (sample code version) USB Kit from Be, as from ftp.be.com/samples/usb_kit/usbkit_99-03-23.tgz
Some files renamed. Won't build yet with our usb_raw driver due to different namings. classes need to be B-prefixed anyway. USBKit.h needs to be split like in zeta as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-22 15:59:44 +00:00
Axel Dörfler
9ecaa867f7 Applied patch by Vasilis Kaoutsis: now checks for the MSR feature as well; obviously
some Pentium 200 MMX pretend to support MTRRs.
This should fix bug #553.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-22 14:45:50 +00:00
DarkWyrm
9e88e05b1f Fixed non-Haiku build targets for libicon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-21 03:19:27 +00:00
Michael Pfeiffer
fcccd8b759 Some printing related improvements:
* libprint based drivers can now show a preview window and show progress
  window while printing contributed in part by Hartmut Reh.
* Libprint and PCL6 driver bug fixes.
* Code clean-up (removed code duplications, coding style, copyright text)

Builds under Linux. Not tested under BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-20 15:52:37 +00:00
Axel Dörfler
6a50382249 * Mixed consumer with consumerRef to identify the cache in the consumer list;
this fixes bug #227 again (which I recently opened again accidently).
* We actually switched the last consumer's source without having acquired its
  lock! This fixes some rare random app crashes as well as potential kernel
  crash ("cache to be deleted still has consumers").
* Some more comments to explain why things are done and can be done the way they
  are done :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-20 12:49:44 +00:00
Axel Dörfler
dff7fdee70 Now it's self-containing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-19 22:59:28 +00:00
Axel Dörfler
c2f641f2e5 Turns out the whole "active app" mechanism in the registrar wasn't used at all; the
Switcher now works as expected.
* Renamed TRoster::ActivateApp() to UpdateActiveApp(), as the app is already activated
  at that point (the registrar only keeps track of it).
* BWindow::DispatchMessage() now calls the new BRoster::Private::UpdateActiveApp()
  method when it receives a B_WINDOW_ACTIVATED message.
* Added BRoster::_UpdateActiveApp() which calls the new B_REG_UPDATE_ACTIVE_APP.
* Removed now unused B_REG_ACTIVATE_APP.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-18 17:45:08 +00:00
Axel Dörfler
2a720453e1 One step closer to the Switcher - still doesn't work, though, but at least the
BWindow code looks okay now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-17 19:38:58 +00:00
Axel Dörfler
849de6ef97 Added another GetStyledText() function to force a specific encoding.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-17 12:04:02 +00:00
Axel Dörfler
8acdd17f08 Added WriteStyledEditFile() variant that gets an encoding argument; it will automatically
encode the text in the BTextView accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-17 09:10:16 +00:00
Bruno G. Albuquerque
e62e6bd5a7 Implemented support for hardware cache flush. This is based on code I originally
did for yellowTAB GmbH when I worked for then and is being used under permission.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-17 01:39:59 +00:00
Marcus Overhagen
ebb02063bd Fixed documentation, uint16 was wrong and doesn't work. Also checked other usage of this items, but they are already correct.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-17 00:19:59 +00:00
Stefano Ceccherini
68fb266820 get rid of the now useless trackTime parameter
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-16 15:22:31 +00:00
Axel Dörfler
f39acd678c * Made vm_area_lookup() part of the kernel private API.
* "sc"/"where"/"bt" now prints the area where the function of the stack frame
  is located in case there is no other information (using the above function).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-14 23:26:20 +00:00
Philippe Houdoin
af1c1a0a03 Renamed the public api to underline the DPC *queue* mechanism handled.
Pending DPCs at queue death time are now called too, to avoid possible leaks.
Meanwhile, queue_dpc() will refuse to add another DPC and returns B_CANCELLED.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-14 21:58:19 +00:00
Axel Dörfler
647b1f70a5 * vm_copy_on_write_area() did not always correctly divide the ref_count of the
two cache_refs - it needs to count the consumers of the lower cache to find
  its actual number of references; the upper cache could still be in use by
  someone else.
* There were several locking bugs in the VM code; since cache_ref::cache can
  change, we must not access it without having the cache_ref locked.
* As a result, map_backing_store() now requires you to have the lock of the
  store's cache_ref held.
* And therefore, some functions in vm_cache.c must no longer lock the cache_ref
  on their own, but require the caller to have it locked already.
* Added the -s option to the cache/cache_ref KDL commands: it will only print
  the requested structure, and not its counterpart (useful if accessing one
  structure results in a page fault, as was possible previously).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-14 18:41:57 +00:00
Axel Dörfler
00d65a521d Added Eric Petit's VMware graphics driver - thanks!
Made the following changes from the version I got from Eric:
* made BppForSpace() in DriverInterface.h inline to remove some warnings
* renamed driver source files to lower case.
* removed Be Inc. copyright from kernel driver as I couldn't see anything coming
  from Be Inc. there - correct me if I was wrong, Eric.
* Minor other changes like added missing header guards.
* The README provided in the main directory is only included in the accelerant
  directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-14 14:16:06 +00:00
Jérôme Duval
5efe9479fe ACPI boot menu item is for bios_ia32
added a kernel settings option to disable ACPI



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-13 19:55:14 +00:00
Axel Dörfler
dc237c7990 ref_count should be vint32, as we're accessing it at least once directly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-13 17:21:47 +00:00
Axel Dörfler
ce51da52b6 Added a kernel socket API module which exports the usual BSD socket API to kernel modules.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-13 13:18:54 +00:00
Marcus Overhagen
43792b9eed propagate required settings for the remote disk from boot loader to kernel (client-ip, server-ip, server-port)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-12 22:27:48 +00:00
Axel Dörfler
fa4858af26 Didn't notice that x86_enter_userspace() also copied the thread entry's arguments to
the userland stack in an unsafe way - moved that stuff to arch_thread_enter_userspace(), too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-12 20:40:39 +00:00
Jérôme Duval
173acea776 added a boot menu option "Disable ACPI" and code to avoid loading the ACPI module when it's active. untested (because of sudden reboots when boot menu is used).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-12 20:01:08 +00:00
Axel Dörfler
8fc075ac5c * There was no reason to copy the "userland calls exit_thread()" stub with interrupts
turned off - accessing userland memory. Now, arch_thread_enter_userspace() does that
  job, and as a result, may also fail.
* dump_thread() now directly prints the info of the current thread when used without
  argument (rather than iterating the thread list to look for the current thread).
* If arch_thread_init_tls() fails upon thread creation, the function will now return
  an error.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-12 18:26:32 +00:00
Marcus Overhagen
f5fa54f798 Improved error reporting when a failure to find/mount the root device occurs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-12 18:09:15 +00:00
Axel Dörfler
d1b0be94b0 * Private and temporary vm_caches now maintain their new virtual_base field, which allows
them to commit substantially less memory (we we're committing about 40 MB (!) too much
  after a complete system boot). This means you'll run out of memory less likely now.
* fill_area_info() no longer filters out kernel protection flags - we may want to keep
  filtering them when called from userland, though, dunno.
* Added new debugger command "avail" which shows how much memory has been committed, and
  how much is regarded as free space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-12 15:07:18 +00:00
Axel Dörfler
7ed5e61cdb arch_thread_init_tls() now accesses user memory safely, and therefore could now
fail.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-11 18:21:35 +00:00
Philippe Houdoin
a5347f68f8 Moved public interface into its own header file.
Fixed most obvious issues, as reported by Marcus and Axel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-10 20:28:45 +00:00
Axel Dörfler
cdcb059571 * Renamed get_team_death_entry() to team_get_death_entry() and make it available
to other kernel components.
* wait_for_thread_etc() will now search the team's death entries in case the
  thread is already gone; also resume_thread() is now done later, and its return
  code will no longer matter (as we already have our death entry, no matter if
  the thread is gone now or not).
* The fibo_load_image test now works as expected (only tested with low numbers
  yet, though - the mean testing comes later (first comes functionality) :-))


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19758 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-09 23:58:59 +00:00
Jérôme Duval
9481ed48de updated to tzcode2007a
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-09 23:16:26 +00:00
Jérôme Duval
a2758a418b replaced size_t with socklen_t where appropriate following POSIX
Axel, I hope you don't mind :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-08 20:57:28 +00:00
Axel Dörfler
86e355a227 Enlarged all memory range arrays to 6, just in case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-08 12:14:58 +00:00
Axel Dörfler
3e161fb661 * Instead of its home-brewn solution, mmu_init() now uses the functions declared
in addr_range.h to add ranges to the arrays. This fixes the crashing bug reported
  by Larry Baydak.
* Added some more exported functions to kernel_args.cpp (prototypes are in addr_range.h).
* TODO: let the PPC/OpenFirmware implementation use those as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-08 12:14:06 +00:00
Axel Dörfler
43cca04a9a Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-06 18:06:38 +00:00
Axel Dörfler
83e805ad15 * Added a note that the flock() definitions are misplaced here.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-06 17:25:52 +00:00
Axel Dörfler
ccf137b886 BWindow::IsFront() was implemented incorrectly - we actually need to query the
app_server for this; added a new AS_IS_FRONT_WINDOW command for this.
For example, clicking on the menu bar to bring windows to front in FFM mode
does work now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-06 17:08:19 +00:00
DarkWyrm
3cb015b1ee Added the public header to allow apps to take advantage of the services daemon's app restart capabilities
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-06 02:27:52 +00:00
Axel Dörfler
fb29f5b0fb Changes to let updates happen less frequently:
* _ContrainPoint() was broken as it could never change the point it was supposed
  to contrain.
* MouseDown() no longer sends a notification message automatically (only if it
  changed something)
* MouseMoved() and synchronous MouseDown() will now only send modification messages
  if something actually changed (not for every mouse update).
* After key presses, the invokation message is only sent when the value changed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-04 14:25:13 +00:00
Stefano Ceccherini
25df172b72 Implemented auto horizontal scrolling (by fixed steps for now), moved
auto scrolling to its own method, introduced a new private 
StyledWidthUTF8Safe method.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-04 10:44:29 +00:00
Stefano Ceccherini
c733893846 Greatly improved scrolling, and simplified the code too. Now scrolling
is done from inside the BMenu::_track() function, and not inside Pulse() 
anymore. Patch by Lucasz Zemczak


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19653 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-29 07:01:08 +00:00
Marcus Overhagen
2f9a049400 add array indexed access to mac_addr_t
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-26 14:57:21 +00:00
Michael Lotz
f3001f6a1d Corrected comments. It's a 0 byte, not a NULL pointer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-25 22:02:01 +00:00
Michael Lotz
3379428150 * Made UTF8 functions overflow safe
* Unified UTF8CountChars and UTF8ToLength and removed the latter
* Rewrote UTF8CountBytes to use the more safe algorithm from UTF8CountChars
* Removed the unsafe count_utf8_bytes() function

This should fix bug #839. Marcus can you please review?

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-25 21:58:00 +00:00
Ryan Leavengood
a06480efcb Addition of constant used when restarting the input_server within the
app_server. I added it at the end. Feel free to move it to a better spot, if
there is one. Note that putting it in the middle with require recompiling a lot
of things.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-23 22:56:18 +00:00
Marcus Overhagen
aa88acd003 added define for SATA AHCI
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-23 02:39:58 +00:00
Axel Dörfler
97584f7d11 * Made header C++ safe.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-20 21:13:59 +00:00
Axel Dörfler
0c6f77951e * Moved VGA planar mode blitting into the VESA kernel driver.
* In grayscale mode, the AccelerantHWInterface now sets the palette correctly.
* HWInterface now has a fVGADevice set by AccelerantHWInterface which will be used
  to talk to the VESA driver.
* Completed planar blitting for all 4 planes; we now have a perfect 16 color
  grayscale mode when you choose "Standard VGA mode" in the boot loader with
  an unsupported graphics card (such as in Qemu).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-19 22:57:56 +00:00
Axel Dörfler
79608a2de7 * Moved some private members of net_socket into the new net_socket_private structure.
* Added an "owner" field that stores the team which created the socket (for netstat only);
  we would need a different storage for SIGURG if we ever want to support that.
* Improved netstat address output: now prints "*" instead of INADDR_ANY.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-19 03:01:18 +00:00
Axel Dörfler
8dfd7ea7bf * Implemented a basic infrastructure for a netstat command.
* Started a netstat command.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-19 02:06:07 +00:00
Axel Dörfler
c2c739ce33 * Removed superfluous prototypes from in.h. Minor cleanup.
* Fixed in6.h header. to be able to be compiled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-18 17:12:54 +00:00
Stephan Aßmus
10f6ed940b * implemented "false bold" for text rendering. It is a new property
of BFont. You can BFont::SetFalseBoldWidth(float) a width on a
  BFont object, and it will cause the glyph shapes to be run through
  an AGG "contour converter" so that they become thicker or thinner.
  IIRC, this is commonly referred to as "false bold". The "width" value
  is the distance in pixels that the new glyph outline will be offset
  from the original outline.

It would be nice if someone could look at my change to View.h with
regards to the B_FONT_ALL flag.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-18 05:22:13 +00:00
Axel Dörfler
8f813eeb9d More tweaks to the libbsd.so compatibility library:
* added sigsetmask(), and sigblock()
* added ALIGN(), ALIGNBYTES, and howmany() macros


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 16:26:43 +00:00
Axel Dörfler
caddb025c9 Added sys/un.h header file - AF_UNIX is still unsupported, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 16:12:17 +00:00
Axel Dörfler
a7854360ac Added vfork() as a wrapper to fork().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 14:50:14 +00:00
Axel Dörfler
9d6d3fcf5f Some tweaks, made libutil a bit more complete.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 13:06:42 +00:00
Stefano Ceccherini
8b91b40ae6 Try to split the tracking function into smaller ones. Please bear with
me for the absolutely UGLY names. Also, if someone can suggest better 
ones...
I seem not to have introduced any new bug. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-12 16:05:16 +00:00
Stefano Ceccherini
cd1cef8aab moved synchronous waiting to _WaitMenu(). Renamed private methods to our
style guidelines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-12 14:49:32 +00:00
Philippe Houdoin
fb2b8194c2 Moved GLRenderer instanciation at window attachment time, not GLView creation time.
Hardware GLRenderers will surely needs to check which screen device (so which window)
a GLView beg him to render to as fast as possible.
Unless such hardware is not serving this screen...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-12 00:59:23 +00:00
Axel Dörfler
26cbcedb9c Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-06 18:38:38 +00:00
Axel Dörfler
bcb0dd2b3b The R5 compatibility is now turned off when the socket functions are used
within the library - theoretically, this mechanism could be extended to
turn the compatibility layer on and off based on the images that call the
functions (allowing to mix R5 and BONE network add-ons in a single executable).
This change fixes R5 networking apps such as Vision, and NetworkTime (both
now seem to work fine under Haiku).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-05 03:03:15 +00:00
Ingo Weinhold
20fa6fad79 FreeBSD build fix. Must have overlooked this one. Thanks to Samuel Rodriguez Perez.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-02 16:13:15 +00:00
Jérôme Duval
c20e9eefcd added a jam rule AddDriverRegistrationToHaikuImage to add device mappings on the image
commented the insertion of the attribute name in patterns in the case of a string attribute
notify_probe_by_file chooses a module based on a bus specific suffix
dm_register_child_device has a parameter to optionally check the support for the node
added scanning of bus devices after the boot filesystem is mounted
fixed dm_rescan, locking was misbehaving
fixed SYSTEM_DRIVER_REGISTRATION definition
added B_DRIVER_MAPPING attributes for PCI and ACPI devices:
  %vendor%_%device% for PCI, hid_%hid% and type_%type% for ACPI
moved acpi_device_module_info definition to public ACPI.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-29 19:09:45 +00:00
Axel Dörfler
2bd388f696 Added two more utility functions to the timer service:
* cancel_timer() cancels a timer, and returns true if the timer was running
* is_timer_active() determines if the timer is currently running or not.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-29 19:09:19 +00:00
Ingo Weinhold
69b1f76d66 FreeBSD build platform support. Original patches courtesy of
Samuel Rodriguez Perez, somewhat hacked by myself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-29 18:08:00 +00:00
Axel Dörfler
0ce94a8f47 * Rewrote tcp.h header - however, I think it should only include the TCP options
that can be set via setsockopt().
* For now, the struct tcphdr and its definitions are also part of the header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-28 23:02:30 +00:00
Stefano Ceccherini
0c48fc7c74 Enable state synching for ServerPictures. Fixes bug 520
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-28 14:52:51 +00:00
Axel Dörfler
224e38e302 Added function to append cloned data from another buffer (to be used by TCP).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-25 14:30:54 +00:00
Axel Dörfler
604d21a600 * Added an offset/sequence field to the net_buffer - this can and will be used
by the TCP implementation for its reorder and retransmit queues.
* The ipv4_fragment is no longer needed, as we can use the above field there
  as well - this saves one extra allocation per received fragment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-25 11:29:36 +00:00
Axel Dörfler
2628e60cbc Moved BMenuWindow, BMenuFrame, and BMenuScroller into the BPrivate namespace.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-22 11:52:18 +00:00
Stefano Ceccherini
27cc25083e First try at menu scrolling, courthesy of Łukasz Zemczak. Works more or less, although a bit buggy
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-20 20:19:55 +00:00
Axel Dörfler
3e30cbdb1e Added option to the NetBufferPrepend constructor to prepend an arbitrarily sized
piece of data, instead of the type size.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-20 17:56:17 +00:00
Jérôme Duval
ea71f2e7b8 acpi now uses a simple pci layer instead of the pci bus manager
added a new style module to publish acpi devices ("listdev -d" to list them)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-18 20:46:58 +00:00
Axel Dörfler
35d3421dc5 Greatly enlarged the number of possible kernel_arg ranges as we were already
pretty close, and the number of loaded modules have a direct influence on
this (even though we're currently loading the symbols by default).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-17 15:42:42 +00:00
Stephan Aßmus
61e693903c * invented a small protocol for use by FileTypes when it wants to
use Icon-O-Matic to create or edit icons

note to axeld: I'm messing with it right now, hope you're sleeping
and not messing with it too! :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-17 03:04:08 +00:00
Stephan Aßmus
9f5078060d * fixed a couple of remaining issues with vector icons,
there is some unfortunate code duplication in AppFileInfo,
  because it cannot use BMimeType/BNode alone to retrieve icons,
  now it works closer to the code in BIconUtils, this fixes
  R5 icons not displaying for other icon sizes
* implemented a bilinear scaling function, I don't know if
  it is very fast, but I hope it is reasonable. Now that I
  see the results though, I wonder if R5 icons should be
  scaled with nearest neighbor instead...
* corrected a small bug in the icon format stuff...
  7 bit coords are -32-+95, not 96
* improved comment for BIconUtils function


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 04:53:24 +00:00
Stephan Aßmus
c8a976202c * added new icon specific verions of GetIcon and SetIcon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 00:12:15 +00:00
Axel Dörfler
8c34572bab Somehow the vector icon version of GetIconForType() was missing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-15 17:37:26 +00:00
Jérôme Duval
07d5767dec get_class_info takes a size argument
listdev displays scsi devices


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 19:37:11 +00:00
Axel Dörfler
7f721ea14d Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 18:08:53 +00:00
Jérôme Duval
91b1b84abd factorized pcihdr.h search code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 20:31:04 +00:00
Axel Dörfler
fdd0f4ce10 * Made copy constructor and assign public and implemented them.
* Added BBitmap(const BBitmap&, uint32 flags) constructor as found in Dano/Zeta.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 18:56:44 +00:00
Stefano Ceccherini
7022e7903a added license
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 07:28:19 +00:00
Jérôme Duval
94acebc5d2 fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 23:25:40 +00:00
Stefano Ceccherini
420fe80e5c Moved picture data writing to its own class, thus simplifying code in
various places. Implemented SetLineMode op for BPicture, fixed shape 
drawing (I accidentally broke it in the previous commit).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 20:00:36 +00:00
Jérôme Duval
bef4e1fc77 * each device manager node has now an autogenerated identifier
* added a generic syscall for device_manager
it enables to iterate the device manager tree from userland
* the listdev tool is now using it: it's still incomplete as it only dumps nodes and attributes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 15:28:09 +00:00
Axel Dörfler
d47eebf30b * The select()/deselect() hooks now actually call the socket's request_notification()
and cancel_notification() functions.
* Completey dropped the old select code, as well as any R5 compatibility stuff. If
  we ever need it again, it's still in SVN history.
* The socket module was put in uninit_driver() for no reason.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-11 12:27:30 +00:00
Axel Dörfler
b70a062dc5 * Separated create_socket() and the call to the protocol's open() function - open()
is not supposed to be called for accepted sockets, only for those created via
  a call the userland socket() function.
* Renamed net_socket_module_info::socket() to open_socket() to make this distinction
  a bit clearer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-11 11:56:52 +00:00
Stefano Ceccherini
ab757c7a3a our BPicture stream format wasn't compatible with R5 one.
Hopefully fixed all the problems. Reported by 
Marc Flerackers. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-09 21:53:45 +00:00
Axel Dörfler
1a0e92a33b Implemented backlog/pending connection support to the sockets - while currently
only TCP needs this, other stream oriented protocols might too, in the future.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-09 18:53:18 +00:00
Stefano Ceccherini
68048706d7 fixed build of the buildtools under linux
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-07 14:06:23 +00:00
Axel Dörfler
bae87c9140 Added a new type for the vector icon format 'VICN' or B_VECTOR_ICON_TYPE.
It's hopefully now used everywhere instead of B_RAW_TYPE where appropriate.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-07 02:46:25 +00:00
Bruno G. Albuquerque
707e075a41 - Added support for Radeon Mobility 9600/9700 (0x4e50).
- Corrected wrong ID association (0x4e50 is M11-based, not M10-based).
- Implemented fixed dividers support for laptop panel refresh rate.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-05 01:54:11 +00:00
Bruno G. Albuquerque
73d0124dbb Fix ZETA build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-04 20:11:29 +00:00
Rudolf Cornelissen
def587e463 test commit. Just a comment update. Greetings..
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-03 22:49:32 +00:00
Jérôme Duval
5b5dd5e24c 0X1167 is an AMD Duron
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-02 21:37:55 +00:00
Axel Dörfler
c35b04de31 * Moved the TCPConnection class into its own file.
* Added some missing result checks, mostly for allocations.
* Fixed a wrong precendence with the ?: operator
* Some minor cleanup.
* Renamed sBufferModule to gBufferModule - the header expects it to be a global,
  so it should be named like one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-02 17:27:13 +00:00
Axel Dörfler
9d00b1d56d * The "no theme available" string is now resized as needed.
* Rewrote header, cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-02 12:54:33 +00:00
Stefano Ceccherini
938519a667 oops forgot to commit this
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-30 21:34:59 +00:00
Stefano Ceccherini
2f9eca855a moved Shape related defines to their own header
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-30 21:20:38 +00:00
Stefano Ceccherini
34633cab94 patch by Lucasz Zemczak which adds BShape drawing support to BPicture. Actually we should use a ShapeIterator subclass (like Lucasz did here) in Painter too instead of having duplicating code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-30 20:42:54 +00:00
DarkWyrm
59463a9aa1 Added set_ui_color to act as counterpart to ui_color.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-30 01:50:37 +00:00
Axel Dörfler
e2db304337 * Added new Haiku method IsRunning().
* Rewrote header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-29 16:45:16 +00:00
Jérôme Duval
d39c286399 added some endpoints constants
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-29 13:31:17 +00:00
Axel Dörfler
fe23fb6699 * Renamed private BMenu::SelectItem() to _SelectItem(), and made its arguments a bit more sane.
* Fixed two GCC 4 warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-29 11:22:14 +00:00
Axel Dörfler
7430a5bea6 Removed the superfluous (doubled) AS_MOVEPENTO as well. Also removed those old constants
from the ServerProtocol.h header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-26 22:48:31 +00:00
Marcus Overhagen
a1939ee423 Modified the pxe_ia32 stage 1 loader to load stage 2 at the same address as bios_ia32 stage 1 does.
This allowes to actually execute the boot loader now. 
Need to use Ingo's remote_disk_server now for booting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-24 20:53:30 +00:00
Oliver Tappe
6b376d6055 * fixed all compilation issues of printkit-stuff with gcc4 on Linux
* removed leagcy _sstream-header, we now use sstream, as both compilers provide it



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-23 22:57:37 +00:00
Jérôme Duval
d03f6d5c29 some more gcc4 fixes for print addons
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-23 22:39:57 +00:00
Stefano Ceccherini
e372c1ba81 renaming...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-23 09:28:44 +00:00
Axel Dörfler
8a93edb60c Made all server version and signatures consistent, and thus closing bug #909.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-22 17:56:02 +00:00
Axel Dörfler
81435928fb * Fragmenting IP packets is now working as expected (there were several bugs
in the code before).
* Added a SetTo() method to NetBufferHeader.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-15 09:52:54 +00:00
Axel Dörfler
cf1f73778d Fixed PPC boot loader build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-13 12:10:55 +00:00
Axel Dörfler
134f3f10ac Fixed GCC 4 warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-13 10:35:04 +00:00
Axel Dörfler
d593e74a27 First steps towards being able of collapse vm_cache objects after forking:
* a vm_cache now maintains a list of its "consumer" caches.
* introduced to new functions that add/remove consumer to a cache (instead
  of only maintaining the vm_cache::source field).
* fixed the incorrect reference counting when doing copy-on-write; we kept
  one ref too many of the lower cache.
* minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-10 17:16:06 +00:00
Michael Pfeiffer
5c3281f91b Write print job to spool file. Not tested under Haiku. Seems to work fine with a simple R5 test application.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-08 18:08:12 +00:00
Axel Dörfler
a7028ce680 * Implemented select support for sockets and notifications, not yet tested, though;
this closes ticket #811.
* Added notification support to IPv4 and UDP.
* Implemented reading out SO_ERROR.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 12:32:02 +00:00
Axel Dörfler
153b2845d2 * Added a link from libnet.so to libnetwork.so for R5 compatibility.
* Fixed R5 socket definitions to match their actual definitions.
* libnetwork.so now detects at runtime wether or not R5 compatibility should be
  enabled or not.
* All socket functions should now be R5 net_server compatible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 13:07:05 +00:00
Axel Dörfler
7f4e6824df Added a private call to get the dependencies of a loaded image. This will be used
to determine linkage of libnet.so vs. libsocket.so/libbind.so in the libnetwork.so.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 11:40:20 +00:00
Axel Dörfler
b9ecaef57a Added the S3 Savage driver from BeBits - accoring to Siarzhuk it doesn't work yet
under Haiku, though. If someone has access to this card, feel free to fix this :-)
I renamed the driver to s3savage (from BeSavage), and added the license text
separately (dunno if that's really needed, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-29 13:44:54 +00:00
Axel Dörfler
02cc779b7d Moved datastore implementation into net_buffer.cpp - there is no reason to clobber the kernel with it.
This also fixes the issue of exporting a C++ API from the kernel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 18:27:30 +00:00
Axel Dörfler
d9766fe30b * Changed team_get_process_group_locked() to have a session parameter instead
of a team to avoid confusion. It now also accepts a NULL session pointer in
  which case the actual group's session doesn't matter.
* Fixed the race condition in send_signal_etc() that could allow accessing an
  invalid team pointer.
* Jerome's earlier change already fixed bug #841, and this also fixed bug #855.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 12:51:59 +00:00
Michael Lotz
17f83b219d * Switched from the old v2 callback status codes to the new v3 codes
This means that the usb_callback_func now takes a status_t instead of a uint32 status.
Also the error codes are now different. I don't see this as a real problem in binary compatibility, as the status codes were never really documented and most drivers just assumed that a nonzero status meant an error.
Source compatibility breaks for callback functions and error defines. I fixed (hopefully) all places in the tree that are currenty included in the image and affected by the change.
* Corrected error reporting in UHCI and EHCI using the new status codes.
* Fixed a memory leak in EHCI where the async advance interrupt was not triggered in time.
* Fixed another race condition in usb_raw that could cause a crash when a device is removed while a transfer is pending.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18916 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-24 20:17:56 +00:00
Jérôme Duval
80f3aa2d2b style cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 13:04:59 +00:00
Jérôme Duval
c332e7f74e fixed build for R5 : now uses inttypes.h because it's present on R5 also
HaikuBuildCompatibily.h exposes INT64_MAX based on limits.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 12:29:49 +00:00
Andrew Galante
b425ce77ad A helper datastructure for network buffers. Defines a fixed-size region of same-size data blocks, and maintains a reference count for each
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 02:40:20 +00:00
Marcus Overhagen
891a127fec various gcc 4 related build fixes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 17:34:22 +00:00
Marcus Overhagen
12cf623f5c unified callback parameter definition of size_t and uint32, now uses size_t
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-16 23:35:26 +00:00
Jérôme Duval
d655064c93 drop class names in docs
various style fixes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-14 10:04:11 +00:00
Jérôme Duval
deb109cc84 fix some signatures, cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-13 14:11:42 +00:00
Jérôme Duval
41bcef87e5 fix some signatures, clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-13 13:59:46 +00:00
Jérôme Duval
769952f1a1 clean method signature to match the doc
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-13 13:30:33 +00:00
Stephan Aßmus
59deaf10bc various changes to improve integration of vector icons
* Deskbar uses 32 bit icons now
* vector icons are now correctly converted to B_CMAP8 bitmaps
  if no B_CMAP8 icon is available
* small fixes in Tracker (window mode menu)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-11 10:52:01 +00:00
Marcus Overhagen
c8443ce024 Replaced "ide_channel_cookie channel" and "ide_adapter_channel_info *" with "void *channel_cookie".
This improves abstraction and allows bus drivers that are independant of ide_adapter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-10 18:55:00 +00:00
Jérôme Duval
1d08e70ac5 added a call to _mesa_make_current
not yet working but a bit better : 
GLTeapot display is now white instead of black :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-07 21:13:53 +00:00
Jérôme Duval
fe86a04667 and forgot these ones
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-07 14:37:31 +00:00
Jérôme Duval
35c2c27e98 forgot this one
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-07 07:47:22 +00:00
Jérôme Duval
07a6f763c2 moved GLRenderer.h to public opengl headers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-06 09:47:34 +00:00
Jérôme Duval
4c3702d42a moved rescan call to vfs_mount_boot_file_system() as suggested by axeld :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-04 13:10:08 +00:00
Jérôme Duval
d564275ba7 added disk systems rescan to DiskDeviceManager, and called it in the post init phase
the next step would be to rescan the partition tree with a job to recognize unrecognized partitions (asynchronously ?)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-04 12:37:56 +00:00
Jérôme Duval
4ffbc8700c seems this one is useless too
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-01 12:24:51 +00:00
Jérôme Duval
7a5fa89446 drop old fsproto.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-01 08:01:38 +00:00
Ingo Weinhold
6bfd06d1ff BRoster::Launch() eventually launches the application in question
in several steps:
1. early pre-registration with the registrar ("I wanna launch the
   app, make sure noone interferes.")
2. load the app image
3. finish pre-registration with the registrar ("I have launched
   the app, here is its team ID.")
4. start app main thread
5. send "on launch" messages to the app (argv, refs, others)

If the app is already running or being launched, 1. fails with a
conclusive error code and returns the team ID and the pre-registration
token of the app. Steps 2 - 4 are skipped and only the messages are
delivered using the team ID returned by 1.

This change fixes a race condition: The failed early pre-registration
request obviously cannot return the team ID, if the other thread
launching the app has not finished step 3 yet. Thus the argv/refs
message would not get delivered and Launch() would not return the
correct team ID.

Now we wait for the pre-registration to be finished in this case, using
the former _IsAppPreRegistered() mechanism, which already provided
such a waiting feature for one request. It has been extended to
accomodate an arbitrary number of waiting requests and renamed to
_IsAppRegistered().

This fixed bug #763.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-31 17:54:16 +00:00
Jérôme Duval
df076a3f69 added B_BAD_DATA (it doesn't exist on R5)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-31 16:23:09 +00:00
Axel Dörfler
9b906ccf04 * You can now create the block cache in read-only mode (using an additional
parameter during construction).
* Doing so will now result in a kernel panic whenever your file system tries to
  write to a block.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:18:31 +00:00
Jérôme Duval
2761c5ae55 replaced with PCI.h definitions, added PCI_usb_ehci
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 08:36:53 +00:00
Axel Dörfler
e04ec8626e * UTF8ToCharCode() only skipped 3 bytes for a 4 byte character.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 22:20:18 +00:00
Michael Lotz
641309e8d0 Obviously forgot this in the last commit...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 18:27:00 +00:00
Stephan Aßmus
7fb6186f3c * integration of vector icons with the registrar and the mime data base
* additional versions of SetIcon[ForType] and GetIcon[ForType] in BMimeType
  and BAppFileInfo, which handle flat vector icon data
* changes in Tracker to support scalable icons (currently broken for
non-vector icons and needs cleanup) and drawing icons correctly with alpha
channel (large parts of this work done by Michael Lotz)

If someone feels like looking over the changes, that would be much
appreciated! :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 17:06:23 +00:00
Axel Dörfler
be0e738496 * send_signal_etc() now handles a pid_t of -1 specially, but not yet really correct
(that was part of the problem of bug #702).
* Fixed send_signal_etc() when you called it with a pid_t of zero: the signals should
  go to all teams in the calling team's group, not only to the team (for -1, we do
  the same for now).
* Made team_get_process_group_locked() public, and rewrote send_signal_etc() to use
  it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18684 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 01:41:16 +00:00
Axel Dörfler
241b048033 * Fixed build of libnetapi.so - it probably won't work for now, though, have a look
at the comment in r5_compatibility.h.
* Intentionally broke source compatibility and removed all that outdated Nettle stuff.
* Also, I took the liberty of making m_init private and rename it to fInit - again, this
  will only affect source compatibility.
* Rewrote NetEndpoint.h
* Fixed quite a few small bugs around the code that I touched, for example in NetAddress,
  SetTo() never set fInit, and therefore could be wrong.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 00:19:23 +00:00
Axel Dörfler
036caeb9cf Those two aren't needed here (we don't need that level of source compatibility,
ie. if someone included net/socket.h he's doomed to change his sources).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-28 21:52:07 +00:00
Jérôme Duval
551b4152f6 added the format expected by panic to throw warnings on compilation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-26 17:49:43 +00:00
Ingo Weinhold
9ecf9d1c1d Merge from layout management branch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18649 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-26 16:21:15 +00:00
Marcus Overhagen
2ed840d564 cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-26 09:16:56 +00:00
Axel Dörfler
6961cdf6f2 Process groups are no longer searched via their team/session, but by using a separate
hash. This also allows them to stay valid after the group leader died when there are
other teams left in it. This closes bug #1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 22:58:48 +00:00
Jérôme Duval
1e8adb7d89 added core and core 2 ids
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 10:33:50 +00:00
Axel Dörfler
fa407130aa Now this should nail down bug #762 pretty well: BView::GetMouse() no calls the
private BWindow::_StealMouseMessage() which makes sure only messages for the
preferred handler are stolen, and also, that nothing gets lost that shouldn't
get lost.
Also updates the fLastMouseMoved view in case the message is actually removed
due to GetMouse().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 09:52:12 +00:00
Axel Dörfler
2b6a368811 wait_for_child() could eventually hang until another team exited (or forever if
it waited for a specific child), as B_RELEASE_ALL opened up a race condition between
looking for an existing death entry, and waiting for the dead children semaphore.
Now we're counting all waiting threads for teams and groups separately.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-20 21:27:12 +00:00
Michael Lotz
5b0ec61f97 * Added USB API Version 3. It's put into USB3.h while the v2 API resides in USB2.h. USB.h just includes USB2.h for now.
* Rewrote both headers on the way.
* The usb module now exports both, the v2 and v3 module_info.
* Changed the internals of the USB Stack to give out usb_ids instead of opaque handles to internal classes.
* Cleaned up some more of the Stack by moving members into other classes and removing unused stuff.
* Updated the usb_raw driver from v2 to v3 API.

Since both usb_hid (which still uses the v2 API) and usb_raw (which now uses the v3 API) work, I'd call it a success ;-)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-19 23:09:05 +00:00
Jérôme Duval
25160e5093 restored sys/ioccom.h in headers/compatibility/bsd/
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-17 12:58:01 +00:00
Axel Dörfler
6e0e4ca6b2 * Fixed bug that let the dragger not hide in the Deskbar (was in ListManage(), now
in _AddToList()).
* Cleaned up BDragger and BShelf a bit, moved private classes into the BPrivate
  namespace, renamed private methods to have the '_' prefix.
* Rewrote Dragger.h.
* Is that static dragger list needed at all? And if so, for what?`


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-11 19:26:37 +00:00
Jérôme Duval
8511cd2ff3 update third party lib : libpng-1.2.12
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-09 10:17:13 +00:00
Jérôme Duval
5f3c583050 moved definition of B_FIRST_REAL_TIME_PRIORITY to HaikuBuildCompatibility.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-09 09:53:10 +00:00
Axel Dörfler
c22d69bf1f * Completed the previous commit and merger of the team/network/new_stack branch.
* Removed ppp_up and pppcontrol from the image for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-08 13:07:07 +00:00
Axel Dörfler
5adca30a18 Merge of branches/team/network/new_stack - not yet complete as SVN does only support
replacing files when merging when you don't have deleted them manually (for some reason,
it only works as part of the merge operation, and we didn't copy the whole tree to
have "a fresh start" - next time we know better, at least if SVN still suffers from
that same limitation).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-08 12:33:33 +00:00
Axel Dörfler
844f23f9ba Added the BSD-ish libcrypt.h for your convenience.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-07 22:48:08 +00:00
DarkWyrm
eef409055a Fixed the R5 StyledEdit build -- removed B_BAD_DATA as it was defined in Errors.h, unbeknownst to me
Added Alt+W shortcuts to the Find and Replace windows in StyledEdit
Fixed the Escape key shortcut hack


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-07 18:24:18 +00:00
Axel Dörfler
576e825227 Added ncurses headers for later use.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18437 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-07 16:53:53 +00:00
Axel Dörfler
275d9d80a9 Some more functions for our BSD compatibility library.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-07 16:46:24 +00:00
DarkWyrm
1920c5bc7d This time I've really fixed the R5 DiskProbe build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-07 12:45:56 +00:00
Axel Dörfler
1564b19c80 Extended libbsd.so a bit more. All sources (if not written by me) were taken from
the FreeBSD 6.1 release.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-07 11:15:01 +00:00
Axel Dörfler
340ac5d007 After Ingo's changes, fixed build for target Dano and probably more.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-06 12:51:10 +00:00
Axel Dörfler
2560808990 * Fixed typo.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-06 12:42:05 +00:00
Jérôme Duval
cd270b7da8 added microsoft usage page
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-05 17:45:33 +00:00
Axel Dörfler
1d9d47fc72 Started a libbsd.so with some useful stuff for porting applications.
Very limited right now, but might even be enough. We might want to move arc4random.c
from traceroute over, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-03 21:28:46 +00:00
DarkWyrm
53108d8ba3 Removed B_REDO definition - it's actually not needed under R5 now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-03 18:34:22 +00:00
DarkWyrm
374fa7fc08 Moved Haiku-specific defs for the Translation Kit to the proper file
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-03 18:28:52 +00:00
DarkWyrm
146cf2137b Added a fix for DiskProbe under R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-03 15:56:12 +00:00
Axel Dörfler
0dd2e9c328 * Changed Insert() to not only compile but also work differently in that it
inserts the item before, and not after the given element (that's probably
  what you expected anyway).
* Added ReverseIterators.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-29 17:58:17 +00:00
Axel Dörfler
3ef31db042 * Obviously, the i9xx family has changed the order of the PCI mappings, so we need
to take that into account.
* Introduced INTEL_TYPE_FAMILY_MASK and INTEL_TYPE_GROUP_MASK to better
  differentiate the device type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-27 08:32:36 +00:00
Oliver Tappe
b66ae2c9c8 - moved dumpBlock() into debug.c, renamed it to dump_block() and added it
to kernel-exports.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-25 19:46:36 +00:00
Bruno G. Albuquerque
92c6f0417b How could we live without this?
Added B_DONT_DO_THAT error define.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-24 22:52:56 +00:00
Axel Dörfler
c47f661799 * Added a template class to bridge over to the struct list C stuff.
* Added an Insert() variant that can insert an element behind another one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-18 21:08:52 +00:00
Axel Dörfler
2ee47d3ff9 * Made B_V_SCROLL_BAR_WIDTH & B_H_SCROLL_BAR_HEIGHT float constants.
* Added a TODO to some stuff that probably shouldn't be in a public header.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-17 19:18:38 +00:00
Jérôme Duval
860cab293d added the utf8 bullet character
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-13 07:38:15 +00:00
Jérôme Duval
67bdea52ce hope no one minds with this Dano-like version of BMessage::PrintToStream()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-10 20:00:07 +00:00
Ithamar R. Adema
d3eab0eb78 * Fix typo in declaration of BStringColumn.
(Args were declared: width,maxWidth,minWidth while the last 2 ones were the other way around)




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-09 22:04:16 +00:00
Ithamar R. Adema
f9d5f90ecc Added missing ColumnTypes.cpp/.h to sourcetree, and added it to the build.
This should make our BColumnListView completely usable.
(ColumnTypes files were taken from imkit SVN)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-09 17:09:25 +00:00
Stefano Ceccherini
931aebe962 Deleting replicants now works
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-07 19:16:50 +00:00
Jérôme Duval
8703696801 input_server saves its settings on change, sending itself a 'Save' request message
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-07 15:38:53 +00:00
Ithamar R. Adema
62b4effa0a * Fixup some more headers, following axeld's lead with stdint.h (new_stack didn't compile for me without these).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-03 03:27:04 +00:00
Axel Dörfler
64f10d7d89 Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-30 12:40:15 +00:00
Axel Dörfler
3505a2a792 Moved gdb.h header file into debug directory, no other component needs to access it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-29 16:04:24 +00:00
Axel Dörfler
13e6b02018 * Removed some unused headers.
* Removed unused pools implementation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-29 15:24:40 +00:00
Axel Dörfler
89ae57ba77 Removed sysctl(), there is no need for this BSD-ish call.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-29 09:37:06 +00:00
Axel Dörfler
9150d65c83 Removed some unused old networking stuff, cleaned syscalls.c.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-28 14:54:58 +00:00
Jérôme Duval
46cd0b32c5 it seems this freetype release doesn't work without this flag, sorry for the trouble :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 14:56:56 +00:00
Jérôme Duval
a4b2ff90d8 revert memory optimization to its previous state
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 12:11:51 +00:00
Jérôme Duval
4894b87045 updated freetype to 2.2.1, tested ok, please forgive me for possible left issues :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 11:34:35 +00:00
Axel Dörfler
fe7f3a2f1d Now supports symbolic links correctly, and no longer loads the same shared
library twice.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 00:07:42 +00:00
Jérôme Duval
58ad2aba29 added BColumnListView to libbe.so
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-26 15:53:41 +00:00
Jérôme Duval
fb8a578c0a setsockopt and getsockopt use int as others functions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 14:19:11 +00:00
Jérôme Duval
4e0eae1865 patch from Olivier Coursiere for better error output in ping
change the size parameter type of several functions in sys/socket.h to match POSIX
compat libs and legacy headers keep the original R5 type (though I make a change for this)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 12:22:26 +00:00
Jérôme Duval
6c61b2841f moved B_PROPERTY_INFO_TYPE definition to TypeConstants.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-22 12:21:46 +00:00
Axel Dörfler
63a9a8f72a Enabling the extended stat() versions had unforeseen consequences (broke the build,
src/bin/coreutils/src/cp.c, line 542 needs stat() exported), therefore, I disabled
it for now again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 21:19:37 +00:00
Axel Dörfler
f62d3b77aa Added a list_get_last_item() call - one day we should make most of them inline.
Or use the C++ list implementation where possible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 16:13:34 +00:00
Jérôme Duval
954f408f50 * PTHREAD_MUTEX_INITIALIZER inits to NULL, pthread_mutex_lock now call pthread_mutex_init to support this PTHREAD_MUTEX_INITIALIZER
* pthread_key_create and pthread_key_delete now manages correctly a list of key/destructor
* pthread_create now uses a private thread function to add a "on_exit_thread" call for destructors
* pthread_join now returns B_OK in every case, and, as a joinable thread could already be gone, wait_for_thread would not find it


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 14:07:34 +00:00
Axel Dörfler
7b3d36e5aa * BEntry::GetStat() and BNode::GetStat() used sizeof(struct stat) for the kernel
syscall, but they could not know if R5 code called them (in which case the stat
  size has a different size). We now always only return the R5 stat structure here.
  This fixes bug #420. We might want to find a different solution to this problem,
  though.
* Be got SYMLINK_MAX wrong - it's not the maximum number of links (that's SYMLOOP_MAX),
  but the maximum size of a symlink buffer. Added missing SYMLOOP_MAX and SYMLINK_MAX
  constants to limits.h.
* Fixes MAXSYMLINKS to use SYMLOOP_MAX, instead of SYMLINKS_MAX (which doesn't exist
  in POSIX specs, but we (intentionally) break source compatibility here).
* Reenabled the Haiku versions of stat(), fstat(), and lstat() when build for Haiku.
* Removed OpenBeOS namespace stuff from the files I touched.
* Removed superfluous StorageDefs.Private.h, whyever that ended up in a public header
  is beyond me.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 13:49:16 +00:00
Jérôme Duval
1f11178f97 added posix thread specific data functions
added a pthread_detach skeleton


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-20 12:27:46 +00:00
Jérôme Duval
a23efdfa79 added some pthread_* and pthread_attr_* naive functions
I mapped pthread_t to thread_id for simplicity


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-20 11:05:58 +00:00
Jérôme Duval
4810cdcdbc code style update to match ours (kind of)
license header update
minor clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-19 13:24:04 +00:00
Jérôme Duval
bafde775b9 made midi server beos compatible
fix binary compatibility for several classes (I missed this before)
the soft synth loads by default /boot/beos/etc/synth/big_synth.sy (which I locally linked to a General Midi sf2 bank
tested with MidiSynth 1.6 on Haiku


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-17 14:04:46 +00:00
Axel Dörfler
9a3c8b14fd Rewrote BAlert button layout routine. Made it much simpler, and it's now
also font sensitive (really, it wasn't before).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-16 16:22:53 +00:00
Jérôme Duval
60d1530802 midi2 kit clean up: license header, code style
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-16 15:38:29 +00:00
Axel Dörfler
075e65c78c * Rewrote StatusBar.h. This fixes bug #419 due to a missing "virtual" declaration.
* More or less rewrote BStatusBar, too:
  - Draw() now only redraws something when it's part of the updateRect.
  - no more flickering (uses B_TRANSPARENT_COLOR now), this fixes bug #530.
  - added Dano/Zeta-style SetTo() method.
  - big cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-16 12:40:15 +00:00
Jérôme Duval
98c9e9e897 some fixes for dano
fix SoftSynth::PlayHandler, offset and incr are counted in samples


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-15 23:41:26 +00:00
Jérôme Duval
1ad334ed89 uint => unsigned int
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-15 23:39:15 +00:00
Axel Dörfler
a6c9722d73 Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-14 18:31:15 +00:00
Stephan Aßmus
e39da397f5 * long overdue update to AGG 2.4
* removed the useless parts of AGG (which are only needed for the
  interactive examples)
* make sure to jam -a libagg.a to solve any linking issues


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-14 14:30:17 +00:00
Axel Dörfler
1b0c0ad7e9 * InstalledTypes did not preserve the case of the MIME types, and thus, Tracker queries
for some types (like "application/x-vnd.Be-elfexecutable") would fail. This fixes
  bug #666 (no, I'm not the exorcist :-)).
* Renamed private methods to have the '_' prefix.
* Cleanup, added license.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-14 09:30:55 +00:00
Axel Dörfler
b66c623116 * AddItem() versions did not work correctly at all: maximum insertion index
was limited by the visible list count, it did not care if the insertion
  failed, it didn't maintain the BListItem::fHasSubitems field, neither
  fVisible, and it didn't invalidate the latch of the parent, if needed.
* The "add item at end" also did not care if the item should be added to the
  visible list, too, it always did.
* AddUnder() would have crashed with a NULL superitem.
* _RemoveItem() now updates the fHasSubitems field as well.
* _SuperitemForIndex() can now return the index of the superitem as well.
* SortItemsUnder() did not check if the "underItem" if the items should be
  added to the visible list or not, it also just did.
* SortItemsUnder() now invalidates the part of the visible list that may
  have been changed.
* This fixed bug #662, and possibly #663, too (at least I could never
  reproduce it).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17812 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-13 10:11:11 +00:00
Axel Dörfler
d51ce54011 * Added the opportunity to add temporary debug interrupt handlers for
arch dependent code (they will be removed as soon as someone else
  asks for these interrupt lines).
* Added an interrupt driven keyboard handler to the kernel that uses
  this technique. As a result, you can now press F12 to enter the kernel
  debugger before the input_server has been started, and Control-Alt-Delete
  should reboot the system (actually I did not test the latter yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-12 22:24:53 +00:00
Jérôme Duval
2814f73c87 imported a stripped down fluidsynth 1.0.7
* a shared library is built, no audio driver is included
* implemented some platform specific functions (fluid_sys.*)
* a test app is provided in fluidsynth.c
* on target Haiku, posix mutex are used, else mutexes are implemented with simple semaphores (I could be wrong here)
well I hope it can provide a good enough backend for a softsynth
Note that needed SF2 banks would probably not be included.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-12 15:55:38 +00:00
Axel Dörfler
f025617d21 Forgot to commit this header - should have been part of r17785.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-10 09:25:30 +00:00
Axel Dörfler
82584ab9c2 * Implemented AS_DIRECT_WINDOW_SET_FULLSCREEN so that it sets kWindowScreenFeel
when enabled, and B_NORMAL_WINDOW_FEEL when disabled. IOW when enabled, no
  other windows can interfere.
* Therefore, it's no longer necessary to have the screen_blanker window
  use kWindowScreenFeel - it will set its window to full screen as long
  as the blanker runs.
* Added a AS_APP_CRASHED notification in the app_server that will remove
  all kWindowScreenFeels from the windows of the crashed app.
* This is now used by the debugger to ensure that the debugger alert will
  be visible.
* Factored out a DesktopLink class out of the BRoster::_ActivateApp()
  method. This class is now also used in the new BRoster::_ApplicationCrashed()
  method as used in the debug_server (via BRoster::Private).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-09 21:46:40 +00:00
Ingo Weinhold
e4f35acf7c * Added new (currently private) API class BMimeSnifferAddon,
representing the interface for, well, MIME sniffer add-ons.
* Implemented the respective add-on manager and make use of it in
  the MIME database code. Unfortunately the MIME DB code completely
  lives in libbe.so and hence I had to put my code there too.
  IMHO we should (one day) remove the direct (read-only) MIME DB
  access from libbe and move everything into the registrar.
  Currently the add-on manager supports built-in add-ons only; it
  doesn't really load anything from disk ATM.
* Added a built-in text sniffer add-on to the registrar. It's based
  upon the BSD file tool code.

This closes bug #250 (plain text files are identified as such, now).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-09 20:48:50 +00:00
Axel Dörfler
642090fdc6 * ScreenCornerSelector is now a BControl and fully keyboard navigable.
* simplified drawing a bit, and got rid of those scary scale*() stuff (which also
  results in better looks). The monitor now looks like the one in Screen; I think
  it should either be a very reduced form or a very detailed form, but anything
  in between often looks just odd.
* It now also listens to B_MOUSE_DOWN incl. mouse tracking, not only to B_MOUSE_UP.
* Less flickering on state changes (and focus change).
* Loading settings no longer overwrites defaults missing from the settings.
* Renamed ScreenSaverSettings::GetBlankCorner() to BlankCorner(),
  LoadSettings() to Load(), GetState() to GetModuleState(), ....
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-09 16:03:16 +00:00
Axel Dörfler
41158aaf91 * Renamed the ScreenSaverPrefs class to the more Be-like ScreenSaverSettings.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-07 12:43:31 +00:00
Axel Dörfler
af55bae2f6 * Implemented DPMS support.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-07 12:31:28 +00:00
Axel Dörfler
7cae4a1ee0 * Big time cleanup of the screen saver stuff, not yet finished yet, though.
Renamed lots of things, like ScreenSaverThread to ScreenSaverRunner,
  refactored code, etc. Much cleaner interfaces and code.
* Fixed a couple of bugs and in the add-on handling, especially some settings
  related bugs (ie. testing a screen saver will now use its latest settings,
  etc.).
* Correctly implemented DPMS support in ScreenSaverPrefs and the ScreenSaver
  preferences application - screen_blanker still ignores them, though.
* It's not yet font sensitive either.
* Changed the input_server add-on to not switch to the screen blanker immediately
  when it's in the "blank corner" - doesn't seem to work yet, though (only tested
  under Qemu).
* Correctly implemented the "preview" function (before, a screen saver would
  never know it rendered a preview).
* Evaluates the return value of BScreenSaver::StartSaver().
* The screen saver thread is no longer killed without notice - it's now
  always shut down properly.
* Made the code more robust against failure.
* Introduced some new bugs as well (the screen saver list view doesn't jump to
  the selection anymore, for some reason), those will be fixed later (as the
  remaining issues).
* Probably some more I forgot about.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-06 08:16:46 +00:00
Axel Dörfler
8265e1210c Implemented mandatory file locking, BeOS style. BNode::Lock() and BNode::Unlock()
are now working as expected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-02 14:16:13 +00:00
François Revol
e61dfc9edb Start of a cirrus gfx driver (for qemu), mostly a copy of skel for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-31 13:23:52 +00:00
François Revol
6210a1dd4c Add an ioctl B_GET_PATH_FOR_DEVICE,
this should simplify big times implementing ttyname() for ex, and could be handy anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17655 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-30 19:52:19 +00:00
Axel Dörfler
c8882988b7 The kernel's struct team now has a field to remember where the arguments of a
running team to be able to fill in the team_info::args field. Currently, only
the path is stored, there, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-30 00:21:22 +00:00
Axel Dörfler
b2c5594fd2 B_SYSTEM_TEAM is now 1 under Haiku which refers to the real kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-30 00:18:50 +00:00
Stephan Aßmus
b3d94504c2 * added a bunch of drivers by Siarzhuk Zharski
-> a USB Mass Storgage module (SCSI bus manager add-on)
-> a SiS 7018 AC97 driver (uses "old" audio driver interface)
-> a USB Serial driver
-> a USB Vision driver and media add-on (Haupauge WinTV USB)
* moved R3MediaDefs.h from usb_audio driver to common place
  headers/private/audio (also used by SiS 7018 driver)
* added TV tuner frequency defines to data/settings/media/usb_vision

Some of these drivers are in unfinished state, particularily the
USB Vision driver, the VideoProducer doesn't seem to use it yet,
the USB Mass Storage module is known to work though, it also includes
add-ons for itself that add support for some "special" hardware, these
are not integrated with the Jamfile build system though.

Also I didn't much much time with the "CVS package" targets, the
ReadMes are not added, someone with more knowledge about this could
add them...

None of this stuff is added to the Haiku image, it is simply included
to be maintained in the Haiku tree from now on.

* fixed a bug in Video Producer sample inherited from Be Sample
  code - the timing from the time source was not really used,
  on some systems this could cause in the producer not waking
  up at the correct time if the system time and audio card time
  are drifting apart



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-29 09:54:03 +00:00
Stefano Ceccherini
cd39decc44 Added a filter to MenuField, so that mousedown messages caught by the inner menubar are redirected to the BMenuField's MouseDown() like happens on beos. That way we can track and invalidate correctly. Implemented Show/HidePopUpMarker
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-28 07:48:53 +00:00
Stefano Ceccherini
e061d1bae5 an eventually opened menu is now quit in BWindow::DispatchMessage()
before sending a B_MOUSE_DOWN message to any other view. This fixes bug 
594 for real and another bug in BMenuBar.  BMenuBar tracking will also 
be simplified a bit because of this. Install items to a NULL window on 
Show() as does R5 (although I don't know why yet). 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-27 09:57:14 +00:00
Stephan Aßmus
a502e8cd6e sorry, forgot about this change... fixes build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-27 09:28:59 +00:00
Stephan Aßmus
39c991c0f3 Added BPositionIO::GetSize() and implemented it by means of Seek() and
Position(). This used up a virtual slot of BPositionIO. GetSize() needed to be
implemented in BFile, which uses the BStatable version as before. This should
hopefully be binary compatible. The only problem could be in source
compatibility when there are classes inheriting from BPositionIO implementing
their own GetSize().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 13:27:53 +00:00
Stephan Aßmus
b30e90211e added a way for BWindow to store and restore arbitrary decor settings,
currently those include only the tab location


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-25 12:01:28 +00:00
Axel Dörfler
48f09a2bd2 Removed the BeOS specific perfmon_kernel.h header - Haiku's kernel doesn't
export those functions. The log_coll stuff now uses system_time() instead
if enabled - that should be good enough.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-23 19:04:55 +00:00
Axel Dörfler
c5f5d8347e * B_MOVE_DISPLAY and B_SET_INDEXED_COLORS should now work for the digital
output as well.
* Obviously got the register for INTEL_DISPLAY_B_DIGITAL_PORT wrong - it's
  not 0x61000 but 0x61140, maybe that can explain the fun we had at BeGeistert :)
* Renamed the analog display registers to better fit the digital ones, ie.
  replaced DISPLAY with DISPLAY_A - although this might be not really correct
  as it seems that the pipes can be selected arbitrarily.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-23 16:51:40 +00:00
Axel Dörfler
a0902420ff Some work to support output on the digital interface like laptop panels.
Need to clean this up, though. It even sort of worked on tic's IBM X40
on BeGeistert - if you weren't irritated by the fact some parts of the
screen were just black, that is :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-23 16:16:16 +00:00
François Revol
c2be814ab5 added an Haiku-specific RLIMIT (NumOpenVnodeMONitors) (UNIMPLEMENTED yet) (we might want to renumber it),
and used that one and NOFILE to implement R5 private calls _kset_[fd|mon]_limit_()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 19:37:40 +00:00