Commit Graph

9728 Commits

Author SHA1 Message Date
Ingo Weinhold
6c2560b50e team_ids are now aligned with the team main thread IDs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 18:18:10 +00:00
Ingo Weinhold
5939c4d7a9 Added functions allocate_thread_id() and peek_next_thread_id() and a
threadID parameter to spawn_kernel_thread_etc(). It's now possible to
set the ID of a new thread. Used in team.c to make team ID and the ID of
the main thread equal.

Fascinatingly the two added functions prompt my compiler to issue
`missing prototype' warnings, although those are obviously there. It would
be nice if someone could solve that riddle.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 18:16:16 +00:00
Stefano Ceccherini
7730601a59 Implemented Get/SetLimits() and fixed scripting stuff
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 14:52:43 +00:00
Axel Dörfler
7f67a70cfe Now builds under Dano/Zeta as well.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 12:44:03 +00:00
Axel Dörfler
fa900c88f7 Fixed warnings.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 12:43:15 +00:00
Axel Dörfler
3f687b627a mkbfs now also writes a standard boot block to disk (works for images only).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 12:29:09 +00:00
Axel Dörfler
9fcf97f229 Added a binary copy of BFS's boot block code (as used in BeOS). This will
be used by our R5 mkbfs replacement for now, until someone replaced that
boot loader code :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 01:39:44 +00:00
Ingo Weinhold
08f3210dcf Added empty implementations of tc{get,set}pgrp().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 22:07:26 +00:00
Ingo Weinhold
5141596a69 Added ffs().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 22:02:50 +00:00
Adi Oanca
d29c4f5287 Some objects must be destroyed on server quit.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 21:52:41 +00:00
Stefano Ceccherini
a85419eec3 That wasn't my day, obviously.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 12:47:13 +00:00
Stefano Ceccherini
e949e4cf18 As the semaphore acquisition is done "benaphore style", the semaphore should be created with an initial count of 0.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 11:04:46 +00:00
Stefano Ceccherini
20c7c2f958 Testing BChannelSlider showed that BChannelControl's implementation had some issues:
1. StuffValues returned B_BAD_INDEX for legal values. Fixed.
2. SetAllValue was needed. Implemented.
3. The constructor used memset() to initialize an array of int32 to 100. YUCK! That's a novice mistake (and that's my fault, obviously). Fixed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 09:54:46 +00:00
Stefano Ceccherini
016e74b2c5 Fixed a crash on exit (Attached views are deleted automatically), finished some missing stuff, corrected some issues.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 08:45:18 +00:00
beveloper
6f9446b32a modified warning text
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 20:39:38 +00:00
Ingo Weinhold
a8e00c29fe Add the newly introduced src/build/cpp_support.cpp to the sources when building under Linux.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 16:51:58 +00:00
Ingo Weinhold
8b737816c4 Added KERNEL_C++_SUPPORT_LIBS to the libs the kernel links against. Required under Linux.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 16:50:24 +00:00
Ingo Weinhold
a8bd76eb3f Required for the build under Linux. Defines dl_iterate_phdr() which is a Linux specific glibc dependency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 16:49:13 +00:00
Ingo Weinhold
61f6087c2a Define _GNU_SOURCE for GNU extensions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:42:17 +00:00
Ingo Weinhold
9c523f7e48 * Added source for scripting support under Linux.
* Define _GNU_SOURCE for GNU extension.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:40:54 +00:00
Ingo Weinhold
0adb8b09ca Implemented fs_shell scripting under UNIX using UNIX sockets. Refactored
the platform independent code out of fs_shell_command_beos.cpp.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:39:17 +00:00
Ingo Weinhold
58183b99ff * dirent::d_dev is not POSIX. Use it only under BeOS.
* Make return value of implementations of Directory::GetNextEntry()
  match the base class version.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:36:25 +00:00
Ingo Weinhold
19de31b510 B_OK -> FS_OK
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:33:25 +00:00
Ingo Weinhold
76a14666e0 * As read_pos() and write_pos() are supposed to be platform functions,
they return the respective error codes.
* Fixed the open mode conversion function.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:32:33 +00:00
Ingo Weinhold
7d0617a836 Er, the last change was quite wrong. Correctly define O_NOTRAVERSE to O_NOFOLLOW, if available.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:31:26 +00:00
Ingo Weinhold
cc13340e9a Fixed struct stat conversion functions for non-BeOS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:09:50 +00:00
Ingo Weinhold
16157ab59e ioctx::lock was not initialized properly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:08:58 +00:00
Ingo Weinhold
875d890122 O_NOTRAVERSE is called O_NOFOLLOW under Linux.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 13:07:41 +00:00
Ingo Weinhold
6ff9fee56f Improved the output in case the command failed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 00:13:39 +00:00
Ingo Weinhold
a34fce7356 Rewrote the mkdir command to support option -p and multiple directories.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 21:37:09 +00:00
Ingo Weinhold
6bc2ff3471 Reverted the kludge introduced to wrap the build platform fstat() and
switch to Axel's hack to just redefine the critical functions via macro
definition in the Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 21:01:56 +00:00
Ingo Weinhold
0bd9d4d1c0 Added new source files xcp.cpp, path_util.cpp, stat_util.cpp.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:59:47 +00:00
Ingo Weinhold
4a91298cbb * Use our open mode flags and seek modes instead of the build platform
ones.
* Added listattr command.
* Added cd command. It can change the CWD of the emulated as well as of
  the host OS (prefix `:').
* Changed do_dir() to print symlinks with their target.
* Rewrote the rm command. It now support the options -r and -f
  and multiple files.
* Rewrote the symlink command (and renamed it to link, alias ln). It now
  supports creating hardlinks and understands the options -s and -f.
* Added command xcp, with support for options -r, -f, -d, and pretty
  close approximation of the shell command cp, save for the fact, that it
  copies attributes and can freely copy in the emulated and host OS
  (and between them, of course; prefix `:').

Now it should be possible to change makehdimage to use a scripted
bfs_shell instead of UserlandFS to build a HD image.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:58:58 +00:00
Ingo Weinhold
c5126c5985 * Write buffers should be const.
* Added sys_stat_attr().
* Added sys_open_attr_dir(). Extended the directory functions to be able
  to deal with attribute directories.
* Init the current directory, so we can use it (the support is there
  already).
* Use our open modes instead of the platform ones.
* Added O_NOTRAVERSE support to sys_open().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:45:45 +00:00
Ingo Weinhold
e19f027e30 Change into the root dir of the FS directly after mounting.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:39:02 +00:00
Ingo Weinhold
f64fcd3794 attr_info -> my_attr_info
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:38:01 +00:00
Ingo Weinhold
3eb4c2e0cd We also need to take care of the open flags, seek constants and the
BeOS specific structure attr_info (it contains an off_t).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:37:04 +00:00
Ingo Weinhold
edbadbb0f3 * The build platform fstat() wrapper moved into stat_util.cpp/h.
* Added wrappers for open(), close(), and read_pos().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:34:39 +00:00
Ingo Weinhold
d29e55d8ec Functions for converting between the build platform and emulated platform stat structures.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:32:40 +00:00
Ingo Weinhold
740f995468 Paths related utility functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 20:31:39 +00:00
Axel Dörfler
6f5d035e3a Temporarily fixed the build by commenting the two new files. They need
non-POSIX functions that we have disabled from the build. Not sure if
we really want to change that (ie making those functions public).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 14:13:55 +00:00
Axel Dörfler
7873a9806c Explicetly added top header directory to the search path to make it build again.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 13:52:05 +00:00
Axel Dörfler
61621fc546 Explicetly added top header directory to the search path in order to let
it compile (some recent change in the Jumrules must have revealed these
build errors).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 13:46:33 +00:00
Axel Dörfler
f51f1dda88 Fixed some weird includes (no need or even support to specify "posix" as part of the include path).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-05 13:37:13 +00:00
Jérôme Duval
f95d0b421a added a setpgrp impl
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 13:56:49 +00:00
Stefano Ceccherini
2c323083e4 Implemented BChannelControl's InvokeChannel and Archive(). Actually this code was sitting somewhere on my hard driver for some time already...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 12:30:16 +00:00
Ingo Weinhold
2645d1f338 Use the fstat() wrapper only on non-BeOS systems.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 00:37:10 +00:00
Ingo Weinhold
d139bc986a The st_rdev field was missing in our my_stat structure, so it wasn't binary compatible with R5 struct stat.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 00:36:14 +00:00
Ingo Weinhold
c64ead1580 Accidentially gave a empty commit message when committing the changes to
the bfs_shell related files:
* Fixed a couple of `friend without struct/class' errors gcc 3
  complains about.
* Several adjustments do make the FS add-on build in a BeOS-like
  environment. E.g. the fs_shell header "myfs.h" is not longer included.
  For "cache.h" and "proto.h" the local copies are included.
* additional_commands.c must is part of the fs_shell and must be build in
  the same environment as the fs_shell. The fs_shell definitions must be
  used for system dependencies.
* The FS add-on has a platform dependency, since it opens and fstat()s
  the underlying device. open() is harmless, but we must wrap fstat().
* We don't longer compile in kernel_cpp.cpp, but rather use the
  platform C++ support directly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:48:52 +00:00
Ingo Weinhold
105d7373e9 *** empty log message ***
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11568 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:36:57 +00:00
Ingo Weinhold
efaa1f0e73 We now build a static library from the fs_shell sources. No need to compile them again for each FS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:35:57 +00:00
Ingo Weinhold
bc421eb5c9 Jam rule SetupFSShellIncludes that sets up the include search dirs for building the fs_shell. Reused, hence in a separate file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:34:29 +00:00
Ingo Weinhold
e6f3010336 A whole bunch of changes to make the fs_shell build (and work) under
Linux:
* Corrected use of error code. We consequently use the errors we
  defined to be compatible with BeOS and translate error code to and from
  the build platform where necessary.
* Consequently use the structs my_stat and my_dirent and the type
  fs_off_t when dealing with the guest FS. my_dirent had to be adjusted
  to be BeOS compatible.
  We wrap the platform fstat() now to translate the struct stat to the
  BeOS representation.
* Fixed a bug introduced with the last checkin: The fs_shell crashed after
  executing a command.
* Fixed printf() format warnings under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:32:35 +00:00
Adi Oanca
74d5a8f70e Fixed a couple of crashes. app_server nicely quits now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:21:36 +00:00
Ingo Weinhold
9b3fd9f88c Support for translating error codes between the build platform and the
emulated system (i.e. the FS).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:18:54 +00:00
Ingo Weinhold
81d91d7fcb Missing header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:16:35 +00:00
Jérôme Duval
a15b332e3b added an implementation for strptime from FreeBSD (1.35, 1.25, 1.11)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 15:51:05 +00:00
Axel Dörfler
f7eefd8207 Fixed warnings: possibly uninitialized variable, missing friend classifier (struct/class).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:18:12 +00:00
Axel Dörfler
cc8aae32ee We're using now Ingo's new doubly linked list implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:15:16 +00:00
Axel Dörfler
0cbd4edc72 Fixed warning in the real time stuff. Added empty user debugger functions
to keep things building.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:04:59 +00:00
Axel Dörfler
1f6dcd134f write_cached_block() would write the wrong block in case there was
a previous and unfinished transaction. It should now work correctly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 01:10:16 +00:00
Ingo Weinhold
d2df6f5a20 We compile the fs_shell with BuildPlatformMain, which is more correct. We
use all Haiku headers save the POSIX and STL headers. Let's see how we
fare on Linux with this change...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:47:39 +00:00
Ingo Weinhold
2585523bed Changed since the fs_shell additional command mechanism has changed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:44:59 +00:00
Ingo Weinhold
fc5863cce5 * Renamed fsh.c to fsh.cpp to have a more usable static initialization at
hand. Fixed all compiler errors.
* Changed the mechanism for including additional commands. Now an array
  is exported by the instance code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:43:23 +00:00
Nathan Whitehorn
3ca956b5bb Fixed a bug in executing control methods without return values.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:40:21 +00:00
Ingo Weinhold
ea8e6dbaab Made C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:40:03 +00:00
Ingo Weinhold
25209a1365 Commented out iso9660 and udf tests for the time being.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:39:20 +00:00
Nathan Whitehorn
92ba8215d2 Added basic (i.e. argumentless) control method execution. Now we can read fan speeds, cpu temperatures, laptop lid states, and all sorts of other glorious things.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:01:35 +00:00
Ingo Weinhold
a57bb4edc8 Added fs_shell (for fs_shell_command).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:23:54 +00:00
Ingo Weinhold
50329cd67c Added a BeOS specific command (using ports) to send commands to the
fs_shell. A Linux specific one will follow as soon as the fs_shell builds
under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:23:11 +00:00
Ingo Weinhold
ce13a6d573 Follow-up changes to make the fs_shell instances build after adding the scripting extension.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:20:51 +00:00
Ingo Weinhold
87580cd7ab Extended fs_shell by an interface for external scripting.
This is the first step towards getting rid of the UserlandFS dependency
for building a HD image. Which is in turn the first step to being able to
build one under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:19:03 +00:00
Nathan Whitehorn
53403b7edc ACPI bus manager interface, revision 3. Now allows full namespace traversal. Next is AML control method execution.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 19:31:30 +00:00
Axel Dörfler
23b6e06ac6 While the block list was written sorted to the log, the blocks were in
transaction order which caused corrupted disks when a log was replayed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 17:55:49 +00:00
Axel Dörfler
4bb67ad318 Added small test tool to dump the contents of a BFS log.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 17:26:01 +00:00
Jérôme Duval
d4fe9d12d0 added missing posix error messages
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 16:46:24 +00:00
Ingo Weinhold
121f7fb374 Allow setting a couple of EFLAGS bits.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 14:53:11 +00:00
Stefano Ceccherini
41d64d6792 Looks like I _HAD_ screwed something. Fixed some wrong stuff about printjob's settings, implemented more functions. Communication with the print_server should be ok, and also settings. Now comes the hard part: setting up the spool file. Any hint ?
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 14:03:28 +00:00
Ingo Weinhold
59ad83d0d9 Don't allow changing the segment registers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 11:52:53 +00:00
Stefano Ceccherini
6bb758a26f Implemented some basic BPrintJob methods (hope I didn't screw anything, is there any print server guy around ?). Is there any reason why it is left out of the build (besides being incomplete) ?
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 11:15:41 +00:00
Nathan Whitehorn
c11886dbbe Now we have a nice structure for handling ACPI fixed events. This means we can do things like make acpi_button block, instead of polling it. Direct register access has gone away. The next revision of the bus manager interface should include namespace traversal and AML control method execution.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 05:05:18 +00:00
Axel Dörfler
47761c4786 Adapted to match our style guide.
Fixed warnings.
Made gArchiveNameField static (and therefore changed the prefix to 's').


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 03:44:14 +00:00
Nathan Whitehorn
b53df54f50 Made the status register clear code work. Apparently you need to write 1 to the register to set it to zero. It doesn't make any sense to me either.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 01:45:02 +00:00
Ingo Weinhold
5d2536d2af * Added functions for clearing/destroying the arch-specific thread debug
info.
* Implemented arch_set_cpu_state() (Axel, please check, what registers
  the debugger should actually be allowed to modify).
* Fixed arch_get_cpu_state(). We now explicitly copy the registers
  manually instead of using memcpy(). Added support for extended
  registers (FPU,...).
* Completed break- and watchpoint support.
* Implemented handling of debug and breakpoint exceptions.

The x86 specific part of the userland debugging support should be complete
now. That is in theory the entire debugging interface is available on x86
machines now. It's almost completely untested yet, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 00:14:38 +00:00
Ingo Weinhold
edd0aaeaee * Stop user debugging when entering the kernel and init it when leaving
it.
* Handle debug and breakpoint exceptions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:59:23 +00:00
Ingo Weinhold
98b14f8a6a * Made i386_get_current_iframe() static again, since it wasn't what was
needed to get the topmost user iframe. Added i386_get_user_iframe() for
  exactly that purpose.
* Added reinitialization of user debugging for the new thread when
  switching the context.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:56:52 +00:00
Ingo Weinhold
c8d7534e5d * Made C++ save.
* Made the parameter for restoring the FPU state const.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:52:09 +00:00
Ingo Weinhold
ae7c619aae * Added architecture specific structure to thread_debug_info.
* Added event callbacks for break- and watchpoints and single stepping.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:47:59 +00:00
Jérôme Duval
e6d5cc8d84 added binary keymap loading. Now you can type 'keymap -b /etc/Keymap/French'
it also checks for binary version number in case you try to load anything else (who knows ...)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 14:30:29 +00:00
Jérôme Duval
c7cbf33821 added small error checking on keymap source loading
checks only the version number (should be 3 at the moment)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 01:07:48 +00:00
Stefano Ceccherini
1b26b72dba Fixed warnings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 23:50:08 +00:00
Adi Oanca
e438905abd New window manager comming in.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 20:23:51 +00:00
Stefano Ceccherini
f8411ab138 Implemented handler for B_APP_ACTIVATED and (but not really) for _SHOW_DRAG_HANDLES_
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 16:27:49 +00:00
François Revol
b1bfc5c69f if you want to return something at least be consistent with the version of usleep which returns an int... (return -1 and set errno)
see http://www.die.net/doc/linux/man/man3/usleep.3.html


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 11:41:39 +00:00
Ingo Weinhold
feeee8dff5 Added function for setting the CPU state (not implemented yet) and
functions for setting break-/watchpoints (implemented).
Break-/watchpoints don't work yet, though. Missing is still the setting
of the debug control register DR7 somewhere in the interrupt code and
the handling of debug exceptions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:48:31 +00:00
Ingo Weinhold
336b15cf0f Added musings about where to deal with debug registers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:42:01 +00:00
Ingo Weinhold
d906f5fc4b * Atomic access to team debug flags.
* thread_exit_args::teamID -> original_team_id.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:39:51 +00:00
Ingo Weinhold
9707863cc9 * Changes due to new team debug info locking strategy.
* In team_delete_team() we no longer explicitly destroy the team debug
  info. It is not necessary, since the terminating debug nub thread will
  do that anyway. Moreover we access the debugger port in a safer manner
  now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:37:16 +00:00
Ingo Weinhold
a7ad39fe09 * New locking strategy for the team debug info. It's no longer protected
by the team lock, but by a lock in the structure. This is necessary
  since we can't acquire the team lock while thread switching, for then the
  thread lock is already held.
* Added support for single stepping and break-/watchpoints.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:34:06 +00:00
Ingo Weinhold
bd3b16ee7b Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:21:59 +00:00
Axel Dörfler
a2634a4246 Actually, ports do support both, B_RELATIVE_TIMEOUT and B_ABSOLUTE_TIMEOUT -
thanks to Ingo for the hint.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-27 16:18:07 +00:00
beveloper
8496c38a3d MediaRoster::Roster() now sets out_error to B_OK if everything is OK
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-26 23:21:52 +00:00
Ingo Weinhold
37f7862ffb Missing \n at the end of the usage message.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11498 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 22:35:54 +00:00
Ingo Weinhold
71a0e3788d Compile the template madness with -O0. This significantly (by an order of
magnitude) reduces the compile time. It's almost acceptable now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 22:35:13 +00:00
Ingo Weinhold
11fcd6e40a The size of the strace executable was ridiculous (1.8 MB). This attempt
to trim the templatized interface improves the situation, but we're still
quite heavy (400 KB).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 22:33:21 +00:00
Ingo Weinhold
50ff751805 * Don't use int32 in sources to be compiled for the build platform
(Daniel Furrer).
* The strace interface for the generated file changed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 22:30:50 +00:00
Ingo Weinhold
35e49f2582 Initial version of our debug server. This is the guy that hangs around
waiting for teams to crash to show our favorite alert.
Due to the missing app_server we don't show a alert yet. We just print
something to /dev/dprintf and kill the team. Unlike R5's debug server
ours will probably not provide any debugging functionality itself, but
rather employ gdb directly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:37:36 +00:00
Ingo Weinhold
6d3794c0a1 * Correctly set debug_origin::nub_port in all concerned functions.
* Now a debugged thread and the debug nub thread are not longer blocking
  on ports when they receive a SIGKILL[THR] (we couldn't kill a debugged
  team before).
* Small fixes. More correct cleanup when the debug nub thread terminates.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:30:16 +00:00
Ingo Weinhold
3b28d367cb Implemented get_why_stopped_string().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:25:10 +00:00
Ingo Weinhold
f75dc555fd * handle_signals(): If a SIGKILL[THR] is pending, ignore other signal.
* Added is_kill_signal_pending(). Can anyone tell me why the compiler
  complains about a missing previous prototype for it? <ksignal.h> is
  included, and when only preprocessing the file, the prototype is clearly
  there. I'm clueless.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:20:47 +00:00
Ingo Weinhold
8c37e2348e Added support for new flag B_KILL_CAN_INTERRUPT. (Do ports really not support absolute timeouts?)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:13:00 +00:00
Ingo Weinhold
013d79a1b9 Added support for new flag B_KILL_CAN_INTERRUPT.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:11:52 +00:00
Ingo Weinhold
448e975c5b Some simplifications and cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 18:50:24 +00:00
Ingo Weinhold
433e1959ae Introduced a debug_origin structure consisting of thread and team ID of the concerned thread, and being first member of all messages sent to the debugger. This simplifies handling of messages in the debugger a good deal.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 18:47:04 +00:00
Ingo Weinhold
013765b30a Added ToDo regarding the handling of search paths like PATH.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:34:00 +00:00
Ingo Weinhold
b9f16dcd93 Update due to debugger interface changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:32:15 +00:00
Ingo Weinhold
71a2d54820 In case of a page fault we now notify the debugger.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:30:17 +00:00
Ingo Weinhold
260ba6fdd3 * Dealt with two debugging related ToDos:
- If the thread's B_THREAD_DEBUG_STOP flag is set, it is now always
    stopped before handling the signals. Unless a SIGKILL[THR] signal is
    pending.
  - Also notify the debugger, when a signal is ignored.
* The signal's sigaction structure is additionally passed to the debugger
  now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:28:45 +00:00
Ingo Weinhold
9c448e2414 * Added debugger notifications for thread creation/deletion events.
* Now we deal correctly with thread debug flags (child threads inherit
  the parent ones, save for syscall tracing in which case it needs to
  be specified explicitly).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:14:18 +00:00
Ingo Weinhold
2ee487c82a Added debugger notifications for team creation/deletion events.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:11:25 +00:00
Ingo Weinhold
43ad09219b Added debugger notifications when images are registered/unregistered.
In the first case this is probably too early, since the image is not
really loaded at that time by the loader. We should probably introduce
a syscall the loader can invoke for that purpose.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:10:24 +00:00
Ingo Weinhold
e988d66022 * Added B_TEAM_DEBUG_DEFAULT_FLAGS and B_THREAD_DEBUG_DEFAULT_FLAGS for
convenience.
* Added/implemented callbacks for almost all missing debug events (team,
  thread, image creation/deletion, exceptions/faults, signals).
* The debugger can now specify how to deal with the event that stopped an
  event (ignore or handle signals, exceptions/faults).
* Implemented B_DEBUGGED_THREAD_GET_WHY_STOPPED debugger message.
* The cpu_state is now passed to the debugger with
  B_DEBUGGER_MESSAGE_THREAD_STOPPED notifications.
* Completed _user_debugger() implementation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:07:19 +00:00
Ingo Weinhold
05916979f9 Export i386_get_current_iframe() so it can be used in arch_user_debugger.cpp.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 15:49:41 +00:00
Ingo Weinhold
08fd6d69aa Beginning of the x86 debugging support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 15:46:20 +00:00
Nathan Whitehorn
d86d43eba2 Added the beginnings of our power management daemon. Currently does nothing except tell the roster to shut down when you press the power button (in conjuction with acpi_button, of course). Eventually will do things like display low power warnings, spin down hard disks, and display the requisite power info deskbar replicant.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 03:05:53 +00:00
Nathan Whitehorn
0a60ca24de Fixed a hang on boot problem with bus manager initialization. Apparently the BeOS kernel doesn't seem to like using spinlocks as the ver first thing in the boot process, so I rolled my own. Everything is now working consistently.
I also fixed my power button, so I don't need to test acpi_button by shorting motherboard contacts with a screwdriver...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 02:40:06 +00:00
Nathan Whitehorn
a28a2204fb Made acpi_button clear the button status register, if not properly, at least in a way that works.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 02:12:42 +00:00
Nathan Whitehorn
20a7c7863d Fixed a crashing bug in GPE interrupt handlers, and cleaned up the error reporting code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 20:38:24 +00:00
Nathan Whitehorn
91fbc56d75 Reworked ACPI button routines to make them more flexible, and remove the need for the power management daemon to care about ACPI in particular.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 20:36:33 +00:00
Stefano Ceccherini
a84dde4cde Implemeted some methods for BBitmaps which accepts views, got rid of "NOT_IMPLEMENTED". Fixed a warning in ListView.cpp
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 11:23:41 +00:00
Nathan Whitehorn
94e3125a61 Fixed a stupid bug in setting registers
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 05:57:16 +00:00
Nathan Whitehorn
3a3a6bb0a7 Added an ACPI power and sleep button driver, similar in purpose to the one on BeBits. Will be used by a power management daemon that is not yet in CVS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 04:26:23 +00:00
DarkWyrm
918a22d990 BTextControl labels use the plain font, not bold :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 01:57:29 +00:00
DarkWyrm
348f28e773 Removed the locking from RootLayer::Buttons -- caused a hang in the one place it is called. (doh!)
Implemented ServerApp handler for BFont::CountTuned and added a standby handler for BFont::Direction
Tweaked the ServerWindow debug output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 01:45:48 +00:00
DarkWyrm
135c6d41e1 A couple tweaks for testing without the registrar running - eliminates a crash
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 01:42:32 +00:00
Rudolf Cornelissen
860d572c2e finalized documentation for driver release (as V0.41). All my cards confirmed OK and very fast compared to 'the old days'.
It's confirmed BTW that GeForce PCIe/AGP 6600GT is working OK (tested on 3 cards), and also GeForce AGP 6800GT is OK (one card tested).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 20:52:21 +00:00
Adi Oanca
0eed276cf7 'Attach' hooks are now called after the complete tree of children of the BView to be added is completely known by app_server
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 20:08:27 +00:00
Jérôme Duval
abd010bc61 Moved mbstate to wchar.h
Restored glibc/wcsmbs/wchar.h


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 18:06:35 +00:00
Ingo Weinhold
2a862ff06f Got rid of the temporary BMessage in BMessage::_send_().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11450 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 13:07:55 +00:00
Ingo Weinhold
592cc30168 * Implemented colorized output.
* Implemented finding programs in the PATH.
* Added human readable error codes for status_t and ssize_t return values.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 12:37:24 +00:00
Ingo Weinhold
c9b3d41977 The Type class now knows the name of the type.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 12:34:38 +00:00
Ingo Weinhold
3f38375acc Write return and parameter type names into the generated strace file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 12:33:49 +00:00
Nathan Whitehorn
baf98f1cd8 The ACPI bus manager backend is now fully operational, tested on a Tyan Tiger i7505. Next up: adding useful operations to the public interface, and writing drivers for ACPI hardware.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 02:34:01 +00:00
Nathan Whitehorn
fe5117f99d AML table parsing and discovery now works. AcpiEnableSubsystem() is still hangin
g my machine hard, probably due to it mucking with the PCI controller way after
boot. I'm going to try inserting it earlier in the boot process. Also added bett
er debugging tracers, and removed the kernel_debugger() trace calls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 02:06:13 +00:00
Nathan Whitehorn
ddbd7b91b5 ACPI Bus Manager module, derived from Intel's ACPI CA. Has some very rough edges and the bus manager interface is currently incomplete.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 20:29:17 +00:00
Michael Pfeiffer
5fc71589cf Implemented RLE compression
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 17:45:24 +00:00
Michael Pfeiffer
e2bfe39dea Unrolled most inner loop of ColorRasterizer::MergePlaneBuffersToCurrentLine to gain a total speed up of about 5 percent.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 17:43:59 +00:00
Michael Pfeiffer
b2086ea837 Removed debugging code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11439 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 17:39:33 +00:00
Michael Pfeiffer
367817c939 Added function pack_bits_size().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 17:34:21 +00:00
Michael Pfeiffer
5d4b78560b Rewrote get_valid_rect because it contained bugs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11437 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 17:33:16 +00:00
Michael Pfeiffer
be79e3899d Checked in missing function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 17:25:37 +00:00
Rudolf Cornelissen
4879571b0d doc update. Version is now 0.41.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 16:24:41 +00:00
Rudolf Cornelissen
7540371dbb the DMA acc sub-cmd-lists are now issued to a single engine command (except for blit because it's hardware can't do that), instead of to multiple issued engine commands. (one could say 'parallel processing' but that's not the case: it remains serial: it's just faster).
DMA acceleration speed is up another 10% for rect and span commands.
commencing more testing now: code is complete (I hope).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 16:20:40 +00:00
Rudolf Cornelissen
dffca5825b doc update, version is now 0.40.
(still one more speed update to do before testing and release :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 14:36:51 +00:00
Rudolf Cornelissen
d0ef756a52 optimized DMA acc code more by splitting up command lists into sublists before issuing them to the engine. this further improves speed with upto about 70 percent, for a total of about doubling the speed by pure software optimation.
Note: code is now working the same as Thomas's ATI driver: he minimized calls in the same ways. (Curious how a benchmark contest would hold up now.. ;-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 14:34:09 +00:00
Stefano Ceccherini
28362fed33 I just noticed this file had a weird license header...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11430 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:47:12 +00:00
Rudolf Cornelissen
361b304a02 ... on slow CPU's it's also upto 15% gain apparantly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:15:42 +00:00
Rudolf Cornelissen
0702e3f652 (doc update..)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:02:05 +00:00
Rudolf Cornelissen
1554e5cb4c applied DMA mode speed optimations 'step 1.5': incorporated all top-level acceleration functions inside the engine's code so minimal nested calls are made. Confirmed further speedup of about 15% on fast CPU's...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:00:14 +00:00
Stefano Ceccherini
e605d52661 Finally we draw something with our own code. It works only with vertical sliders, and it's still buggy, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 10:07:30 +00:00
Jérôme Duval
af095d7ba1 style fix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 09:19:32 +00:00
Rudolf Cornelissen
9e7390ba4a bumped version to 0.38.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 17:42:58 +00:00
Rudolf Cornelissen
18dfc8a2b0 optimizing DMA acc for speed ('step 1'). Also simplifies code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 17:40:56 +00:00
Rudolf Cornelissen
27fe7559f1 updated doc once more.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 12:57:54 +00:00
Rudolf Cornelissen
10988528d1 added fix (not yet completely tested) for NV40/NV45 artifacts on heavy acc engine use. Bumped driverversion to 0.37.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 12:50:09 +00:00
Rudolf Cornelissen
cb49723124 added one (still disabled) register for framebuffer config(?) on NV40/NV45 (in test)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 09:54:56 +00:00
Rudolf Cornelissen
93ae86bf61 replaced some occurances of BeOS with Haiku :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 20:48:09 +00:00
Rudolf Cornelissen
813524fb5a updated driver documentation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 20:40:26 +00:00
Jérôme Duval
8ac049a845 Wacom devices are now not handled, uses devices preferences devices list
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 20:29:19 +00:00
Jérôme Duval
91437c9ef8 added usb devices and vendors list from NetBSD version 1.395
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 20:27:26 +00:00
Jérôme Duval
834f7878aa FindString is better than FindData (thanks axeld)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 17:27:34 +00:00
Stefano Ceccherini
2f197f3340 BHandler::MessageReceived handles also B_GET_SUPPORTED_SUITES as it should, and prints the message to the stream if it doesn't understand it. Restyled the function to follow our guidelines (more or less).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 11:34:52 +00:00
Jérôme Duval
997aa9ac18 error handling
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 11:05:33 +00:00
Axel Dörfler
db5fbf2a6b Fixed a possible crashing bug in case of a corrupt inode: the vnode was
removed twice from its mount's list.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 03:57:08 +00:00
Jérôme Duval
76fa831165 fixes sscanf for decimal values, enables keymap to actually load source keymaps
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 16:57:12 +00:00
Rudolf Cornelissen
29e629c82e shutdown panel DPMS for laptops: I don't like the looks of that!. Confirmed DPMS working OK for all DVI panels though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 16:51:35 +00:00
Stefano Ceccherini
0677ddf4a7 Now the slider correctly moves on mousedown/mousemoved. Note that currently it works only if the BWindow was created with the B_ASYNCHRONOUS_CONTROLS flag. Fixed drawing of the thumb when pressed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 14:10:52 +00:00
Rudolf Cornelissen
6072aa9f44 fixed PLL locking trouble on NV36 (confirmed) and problably more cards (NV31, NV40 and higher): those with extended PLL's.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 13:47:54 +00:00
Jérôme Duval
cb9c0a693e added a default constructor to init attributes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 13:43:19 +00:00
François Revol
c8cfedef94 undo showing major/minor (hmm that's a very bad idea...)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 13:37:37 +00:00
Rudolf Cornelissen
ecaef637fa added preliminary DPMS support for all panels (still in test)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 13:34:13 +00:00
Rudolf Cornelissen
4157b3aeec -added the NV40 arch screen connections limitations to the doc;
-added a fixme comment in the kerneldriver: it seems we must try to map cardBIOSes to memory ourselves if possible after all (should be PCI config manager work I'd say): encountered two systems now that don't have that done (by BIOS I guess). A old PCI-only system (Pentium200), and a brand new PCIe system: Both PCI and PCIe cardBIOSes don't get mapped here which prevents us from using coldstarts on secondary cards :-/


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 11:53:25 +00:00
Rudolf Cornelissen
36ad4411a8 added some comments about NV40 architecture. We have several new unknown factors:
- DAC2 always detects a analog screen connected;
- it seems like there are at least two new registers we don't know about. One extra switch to place output on connectors, and one (extra) switch for pixelclock PLL to CRTC connections (one PLL drives both CRTC's in some cases, pre-programmed by the card BIOS determined on the screen configuration found at power-up.
- in a known register (TSTCTRL) b20 blocks/moves output on connectors (?).
All confirmed on NV43, GeForce PCIe 6600GT.

Driver status:
- one DVI monitor connected is OK;
- one analog screen connected on the DB15 connector is OK,
- two analog screens connected is OK and can be used for dualhead.
other combinations don't work well or at all. This is the status confirmed on
the NV43. Assuming same for other cards of NV40 architecture.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 11:39:07 +00:00
François Revol
1c5ea92404 don't mangle UTF-8 chars for __BEOS__, from the GG patch
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 10:39:40 +00:00
François Revol
5bea2b386b we don't use major/minor, but that's not a reason to change the display. device sizes as reported by stat() are always 0 anyway.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 10:15:46 +00:00
Stefano Ceccherini
93d52f14af Now we fill BMenu::sMenuInfo with some default values. This should fix the problems with our BMenus on our app server. DarkWyrm, please check.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 08:26:20 +00:00
Axel Dörfler
be6b98a967 Since the mode commands are ignored anyway, we're now also accepting a "?"
starting parameter (or better, we silently ignore it) that's used for
private DEC modes. Vim uses those for whatever reason.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 21:56:14 +00:00
Axel Dörfler
a7c89acd59 Some style cleanup. The usage text now looks more like those from other shell commands.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 20:58:42 +00:00
Axel Dörfler
b7624725ef Added --copy-from option to take over the indexes of another volume.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 19:34:57 +00:00
Stefano Ceccherini
f32c74752d A couple of small style changes, fixed a problem with some compilers
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 08:27:27 +00:00
Axel Dörfler
a5b1bafc0b New "error" command; unlike the previous, this should work :)
Added it to the build.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 04:15:14 +00:00
Axel Dörfler
4b72e95292 getcwd() is actually implemented like elsewhere, and not strictly after
POSIX demands: if you pass in a NULL pointer, a buffer will now be
allocated for you.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 03:51:34 +00:00
Axel Dörfler
86e404324f Fixed the build of the boot floppy and removed all input_server headers
when USE_INPUT_SERVER is not defined.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 03:22:12 +00:00
Axel Dörfler
a1537049b7 Changed the way we're resetting the machine: we're now first trying the
keyboard controller method, and only if that fails we fall back to what
we have before.
At least my SiS laptop now properly reboots, and doesn't just halt
anymore - doesn't seem to have a negative impact on other machines, but
please report any regressions :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 02:12:14 +00:00
DarkWyrm
6a1a734c5f A small crash fix whilst testing with a stock People app
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 00:48:07 +00:00
Jérôme Duval
7c49936aa6 Simplified pci bus manager Jamfiles
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 22:27:58 +00:00
Jérôme Duval
82698ec120 added support for arrows (from our Terminal impl)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 16:58:28 +00:00
Axel Dörfler
133c5b73a2 Obviously, my laptop (SiS 630 based) only reports all VESA modes when there
was one mode change before - took me quite some time to figure this out; now
we just do a mode change to the standard text mode; this is probably a good
idea anyway to make sure we're running in the correct text mode for the boot
menu.
The error check for the VESA BIOS calls were not really correct, even if
they worked. The vbe_mode_info structure is now cleared before the mode
info is requested (as suggested in Ralf Brown's interrupt list).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 15:35:59 +00:00
Axel Dörfler
f7958e552d Now only echoes the input if ECHO is defined.
Ignores a "--login" argument (that's what consoled does).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 01:18:58 +00:00
Axel Dörfler
23cf00de23 Now starts consoled instead of a shell directly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 01:17:52 +00:00