Commit Graph

5608 Commits

Author SHA1 Message Date
Axel Dörfler
954da749a5 * Added SCHED_SPORADIC, and sorted the constants the way it's done in the specs.
* Also changed their numbering.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-27 13:10:17 +00:00
Axel Dörfler
d88b4037b0 * Reduce maximum priority to B_URGENT_DISPLAY_PRIORITY; real time threads isn't
really something to play with without knowing the outcome.
* Fixed indentation/coding style violations introduced with r33783. Please take
  more care when accepting patches!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-27 12:34:27 +00:00
Jérôme Duval
f386c5910b Patch from Michael Franz (ticket #4696): sched.h and pthreads to allow setting of the thread priority
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-26 22:56:43 +00:00
Axel Dörfler
86a999adfb * delete_owned_ports() no longer scans the whole port array for ports belonging
to the owning team.
* Instead, the team now maintains a list containing the ports it owns.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-26 13:34:43 +00:00
Axel Dörfler
7691a788d0 * Minor cleanup, updated copyright.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-25 15:14:49 +00:00
Rene Gollent
203049400f Also remove _B_APP_INFO_RESERVED1_ as it's used for nothing whatsoever.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33758 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-25 13:11:29 +00:00
Stefano Ceccherini
510fae5f1d Also add layout-friendly constructor for BOptionPopUp (not yet tested)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-25 10:49:28 +00:00
Stefano Ceccherini
ba69bf196e Added layout friendly constructor for BOptionControl
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33756 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-25 10:45:42 +00:00
Rene Gollent
75f60c8b38 Set default flags to B_MULTIPLE_LAUNCH only, as is the case on BeOS. This fixes issues where apps that forgot to specify flags in their resources would be unable to receive remote messages.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-25 03:34:24 +00:00
Rene Gollent
650454ae2e gcc4 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33753 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-24 01:26:14 +00:00
Jérôme Duval
505a5551a4 added SOCK_SEQPACKET
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-24 01:01:17 +00:00
Brecht Machiels
dfdfbd3eef * added support for GM45 (might work for other chips in the G4 series)
* added header for dealing with binary numbers and bitmasks (C++ templates)
   these "macro's" might not work well for long words, though


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-23 23:03:49 +00:00
Axel Dörfler
ddbe12007a * Semaphores are now put into the team struct in a doubly linked list.
* This makes sem_delete_owned_sems() a lot more efficient; before it would need
  to scan the entire semaphore table.
* This speeds up the test build of the kernel by another 2 seconds (with
  KDEBUG=2) on my laptop.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-23 02:06:51 +00:00
Axel Dörfler
f28dd36b82 * The alphabet is obviously hard, moved some tracing defines at their
(hopefully) correct place.
* It seems to be even harder to understand basic locking primitives: when you
  think about it, it shouldn't surprise you that conditional variables never
  return B_WOULD_BLOCK. This fixes gdb again.
* Added tracing support to the ports subsystem.
* get_port_message() will now resize the port heap if needed (but will also
  take timeouts into account while doing so, more or less). The initial port
  space is 4MB (as before), the growth rate is the same, and the system wide
  limit is arbitrarily set to 64 MB (all swappable). A team limit has been set
  to 8 MB, but is not enforced yet. Since ports are using up address space in
  the kernel, those seems to be proper limits.
* This also fixes a strange, and rare lockup where the mouse cursor would still
  move, but everything else would basically hang, but look perfectly normal from
  KDL on the first look. As recently happened on Brecht's laptop, and debugged
  by mmlr and me: the cbuf space got used up when lots of windows wanted to
  redraw after a workspace switch. The app_server wouldn't answer anymore to
  client requests, but thought it would have done so, as LinkSender::Flush()
  doesn't care if it got a B_NO_MEMORY (the ports will now block until memory
  is available if possible, so that should not be a problem anymore).
* Improved "port" KDL command, it now also prints the messages in the port.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-22 23:14:10 +00:00
Brecht Machiels
926e63c885 * added click to focus mouse mode; right-click for bring-to-front and send-to-back
(might cause some regressions in FFM)
* made accept first click user configurable
* updated the Mouse preflet to use the layout kit
* removed the warp and instant warp modes from the Mouse preflet
* changed internal representation of mouse modes (warp modes moved)
* coding style fixes



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-22 21:10:19 +00:00
Axel Dörfler
e8885f2097 Basically rewrote the ports subsystem to use:
* its own heap allocator instead of cbuf - this makes cbuf superfluous, and I
  therefore removed it from the kernel. The heap is swappable, so lifts the
  kernel's resource usage a bit. In the future, the heap should grow as well;
  right now it should be at least as good as before.
* it no longer uses spinlocks, but just mutexes now for better scalability - it
  was not usable with interrupts turned off anyway (due to its semaphore usage).
* it no longer uses semaphores, but condition variables.
* Needed to move the port initialization to a later point, as swappable memory
  wasn't usable that early.
* All ports test are still passing, hopefully I didn't mess anything up :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-22 13:24:12 +00:00
Axel Dörfler
e0aad96f94 * Allow to use symbols as variables (prefixed with '@'). Now only tab completion
for variable names is missing B-}


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-22 11:44:29 +00:00
Axel Dörfler
68d9d8809b * Just use the heap instead of cbuf for send_data().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-22 11:42:51 +00:00
Michael Lotz
4bee71c211 * Implement per-CPU heaps. They only get enabled in case there's enough memory.
* Allow an allocator to be created on the heap to allow for non-locked
  allocators to be created.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-22 08:57:34 +00:00
Michael Lotz
5ee1f125e5 Make use of the wait status field so it can be provided in Notify() and then
read out in the ConditionVariableEntry::WaitStatus(). That way you can notify
with a specific status that can be read out on the other end.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-21 23:44:59 +00:00
Oliver Tappe
32c8ab89a9 * added _TabExpandedStyledWidth(), which makes sure to expand all tab chars
during the width calculation
* used _TabExpandedStyledWidth() at all places that need to expand tabs,
  fixing #4822
* removed _StyledWidthUTF8Safe() as it didn't make sense - we now perform
  the same auto-scrolling horizontally as we do vertically


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-21 19:09:20 +00:00
Oliver Tappe
b18f133db3 generally overhauled non-wrapping mode of BTextView, as it was considerably broken:
* switching from wrapping to non-wrapping mode triggers a recomputation of
  the text rect
* non-wrapping mode now triggers updating of the data rect for the horizontal 
  scrollbar as needed, fixing #4705
* corrected a couple of width computations that confused bounds and text
  rect width, leading to drawing artefacts at the end of a line
* unified computation of text rect width to always take all lines into
  account (not just the first one)
* some cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-21 13:42:25 +00:00
François Revol
546376e654 Typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33671 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 23:23:33 +00:00
Oliver Tappe
571d840abf * dropped svn:keywords property from all files that carried it
to avoid recurring problems during migration of subversion checkouts
  (restored binary files that were garbled by subversions during checkout)
* added appropriate svn:mime-type property for problematic (binary) files
* removed a single (mistyped) svn:mimetype property 
* dropped svn:eol-style property for cleanup (they all contained 'native')



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 22:42:52 +00:00
François Revol
7c595f3353 ARM920T specific definitions (not done yet).
Board config file for the FreeRunner.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 21:13:46 +00:00
Clemens Zeidler
7f6d3afb1d Add ns_handle_to_pathname acpi function to the acpi module.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33663 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 19:00:26 +00:00
Clemens Zeidler
cb6cd182c4 Remove type variable from reference, it is already defined as object_type before of the union.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 17:42:18 +00:00
Scott McCreary
0869aa838f Second try, this time with the right define in the second case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33655 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 15:25:44 +00:00
Scott McCreary
f70f0cf049 Missed the Haiku specific changes in ftoption, putting them back in.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 15:13:32 +00:00
Rudolf Cornelissen
b793b9cbd0 added dithering support for DAC1. Dithering is enabled for digitally connected panels on DAC1 on laptops. This should remove the 'colorbands' displayed previously on gradients. Bumped version to 1.06.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33653 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 10:33:01 +00:00
Scott McCreary
f1b1e2fc9a updated freetype to 2.3.11
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 07:03:46 +00:00
Axel Dörfler
39e3058e5b * Reverted r33643 - while it doubled the performance for my test case (with
high contention of the read lock (I experimented with the VM page mapping
  lock)), it actually hurt the compile performance pretty obviously.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 00:16:54 +00:00
Stephan Aßmus
7d05cf36fc Revert my additions to the patch from #4733, Core 2, Core 2 Duo and Core 2
Quad are all reported as "Core 2", because the CPU count is already reported
separately.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 00:07:59 +00:00
Axel Dörfler
22ea088498 * The rw_lock is now using a mutex to protect its reader/writer counts. This
makes the reader case a lot less expensive, and should relieve the thread
  spinlock contention a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-18 19:52:09 +00:00
Axel Dörfler
b2a7fcb404 * Added an arch_debug_stack_trace() function that is called from the KDL loop
in case there aren't any KDL commands available yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-18 19:50:13 +00:00
Axel Dörfler
795bd7a697 * The save_lvds_mode() function did not correctly support the i965 chipset -
I've now removed that code, and factored out a retrieve_current_mode()
  function that can work on head A and B.
* This fixes Adrien's flickering problem on his laptop - I can't find the
  bug ticket, though. Hopefully it does not break other laptop chips. Testing
  would be welcome, as I don't have any other machine here.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-18 10:03:01 +00:00
Axel Dörfler
20a11271d0 * Added a (to be virtual) DefaultItemSpacing() method to control look. This is
what you should use in for example BGroupLayout as spacing/inset.
* Changed the label spacing to be dependent on the font size, too (and enlarged
  it a bit as well).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-17 17:01:22 +00:00
Axel Dörfler
676ef01ba7 * Applied patch by Hong Yul Yang to update linprog.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-16 12:13:07 +00:00
Axel Dörfler
9b912c694a * Cleanup, no functional change - this is now a pure C++ header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-15 10:13:02 +00:00
Axel Dörfler
3066f3dbf8 * Reverted r33547, this closes bug #4782 - this is obviously a regression in
GCC4.
* Adapted code accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-15 07:48:31 +00:00
Ingo Weinhold
2fc49d9b36 Added ColumnAt(BPoint) version.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-15 04:31:42 +00:00
Axel Dörfler
e628f41c49 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-14 12:51:19 +00:00
Oliver Tappe
41426d9bac * Moved three locale-related headers back into a safe place (where no
software looking for them will find them) as a temporary fix for #4747.
  In the long run, the functions declared in these headers should be
  implemented by means of ICU and then the headers shall be made public again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-13 17:15:49 +00:00
Axel Dörfler
b74a098352 * Got rid of the duplicated functionalities provided by RWLocker.cpp, and
Locker.cpp.
* The services are now using recursive_locks, and rw_locks instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-12 14:29:05 +00:00
Axel Dörfler
4baa865937 * Added casts to the *_INITIALIZER macros, so that they can also be used in
a member constructor list.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-12 14:27:02 +00:00
Michael Lotz
93b63126e1 Adding mutex and rw_lock with the same interface as the kernel versions to
libroot. The mutex is a simple benaphore, the rw_lock is pretty much the same
as the one from libkernelland_emu but uses a mutex per lock instead of emulating
a global thread lock. Also added MutexLocking and RWLock{Read|Write}Locking and
AutoLockers based on them. It's cased with __cplusplus so the locks are also
usable from C. Everything's currently exposed in shared/private/locks.h but I
think we should make these locking primitves public.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-12 11:19:33 +00:00
Michael Lotz
7ebd7cfc40 Add a vm_page_allocate_page_run_no_base. It bases its search on the pages found
in the free and/or clear queue. This performs better in the case where only few
pages are free/clear but performs worse in the case where there are a lot of
usable pages. It's not used anywhere but it might come in handy one time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-11 16:55:21 +00:00
Michael Lotz
44778a8a28 Introduce vm_map_physical_memory_vecs. It is like vm_map_physical_memory but
takes a list of iovecs describing the physical pages to be mapped. With it one
can map a set of physically disjoint pages into one linear virtual range. This
is a private API right now, but we might want to make it public as
map_physical_memory_vecs alongside map_physical_memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-11 16:48:03 +00:00
Axel Dörfler
6e6b0851ca * Applied (cleaned up) patch by Stefano to fix bug #4742.
* Note while this fixed running BeOS apps using BJoystick, it breaks all apps
  (and SDL) that have been compiled for Haiku R1/alpha1. It's really bad that
  r27171 went through unnoticed. We should really try harder next time (and
  try to get the ABI change detection script working in an automated way).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-11 16:40:12 +00:00
Michael Lotz
1af7d11504 * Rework page writing to combine page writes where possible. For now the pages
are required to be physically contiguos, which should be reworked to put them
  into seperate iovecs. Still this manages to combine a great deal of page
  writes into larger bursts already. Reduces the amount of IO requests being
  scheduled (and greatly benefits media where page wise writes are slow when
  they are accessed through a non-IOScheduler path, i.e. USB mass storage until
  that is properly implemented).
* Abstracted per page page writing tasks into a PageWriteWrapper class.
* Abstracted per transfer page writing tasks into PageWriteTransfer class which
  formerly was the PageWriterCallback.
* Use both classes from the PageWriterRun and from
  vm_page_write_modified_page_range to remove code duplication.
* Adjusted synchronous VMAnonymousCache::Write() to cope correctly with larger
  iovecs and more than one iovec. It assumed that there was exactly one page per
  vector previously.
* Introduced MaxPagesPerWrite() and MaxPagesPerAsyncWrite() to VMCache to allow
  a cache to specify restricitions. VMAnonymousCache does restrict the max pages
  to 1 for WriteAsync right now as I didn't feel like reworking that one to cope
  with non single page writes just yet.
* Pulled out PageWriteTransfer methods for better readability.
* Some typo fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-10 22:37:26 +00:00
Michael Lotz
793d0f340d Add a nogrow variant for new[] as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-10 22:29:11 +00:00
Stephan Aßmus
011a4cdbfc * Removed now obsolete notification (this was not even used in Tracker
anymore).
* Added interface to get the current settings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-07 19:31:57 +00:00
Stephan Aßmus
21f2402e20 Work in progress of moving the (audo-)mounting functionality from Tracker into
a dedicated mount server. This is pretty much a straight copy from the
AutoMounter code from Tracker, except
* the eject on unmount setting has been added (in Tracker, it's part of the
  general settings, not the mount specific ones),
* scripting features have been added, such that it becomes possible to trigger
  mounting the previoulsy mounted volumes from the outside, and most
  importantly block until the operation is done (waiting for the reply).

TODO:
* Change Tracker to not run it's own AutoMounter, but send messages to the
  new server.
* Move the eject when unmounting setting to the mount settings window.
* Enable the mount_server in the Bootscript.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-07 18:34:29 +00:00
Axel Dörfler
931cd377aa * Added a new flag kAcceptKeyboardFocusFlag that allows B_AVOID_FOCUS windows
to still receive keyboard events. This is now used for menu windows (before,
  the menu feel alone would trigger that behaviour).
* This also fixes bug #4691, as tool tip windows use the menu feel as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-07 16:26:32 +00:00
Oliver Ruiz Dorantes
515209e338 Merge view class in the window object
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-06 20:03:36 +00:00
Stephan Aßmus
b0488dca68 Patch by "v" to fix ticket #4733, there are Core and Core 2 Celerons. I
enhanced it to also say Core 2 Quad and Core 2 Duo again, instead of just
Core 2. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-06 17:08:24 +00:00
Axel Dörfler
fc548b41f3 * Removed the pretty useless "Multifinger scrolling" option - it's now always
the same as the two finger scrolling option (could be disabled, too, opinions
  welcome).
* Added a new settings to disable horizontal two finger scrolling, since it's
  not that easy to only scroll in one direction with this. Maybe a higher
  starting boundary would also be an option for this instead, Clemens what do
  you think?
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-06 14:30:57 +00:00
Stephan Aßmus
852e81f6cb Come to think of it, this is actually a multi-line if...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-06 12:27:19 +00:00
Stephan Aßmus
8ee28a00be Fixed a style violation that I missed, thanks Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-06 12:26:06 +00:00
Stephan Aßmus
b2e0606edc Patch by "v" to distinguish between different processors with the same CPU-ID.
Slightly enhanced coding style by myself. Should fix ticket #3541. Thanks a
bunch!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-06 11:54:28 +00:00
Ryan Leavengood
1c5a1e55c1 Suggestion from Rene:
- Make the BuildScreenSaverDefaultSettingsView function be built into
libscreensaver.so and under the BPrivate namespace. This avoids the repetition
of the compiled code in each screen saver that uses it.
- Updated the ScreenSaver preferences to use this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 20:48:14 +00:00
Ryan Leavengood
7d183c0492 Adding a private header with a method that can be used to provide a consistent
default look for the settings of screen savers without complicated settings
views. This is based on the code originally in the ScreenSaver preferences
window.

Also fixed a type in the ScreenSaverRunner header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 19:53:23 +00:00
Ingo Weinhold
7f16b78c41 Moved vmdkimage.h to a shareable place, cleaned it up a bit, and renamed it to
vmdk.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 03:08:46 +00:00
Ingo Weinhold
d6778355ee * <DiskDeviceTypes.h>: Removed kPartitionTypeIntel{Primary,Logical} constants.
* Added new header headers/private/system/disk_device_types.h, which defines
  the <DiskDeviceTypes.h> constants as macros and which can be used where the
  constants cannot be used. The constants are defined using the macros, so now
  there's only one place where the string literals should be specified.
* Use the macros in the partitioning systems. I was too lazy to also adjust the
  file systems -- most of them seem to hard-code the string literal yet.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 03:07:42 +00:00
Ingo Weinhold
a9689e8492 * VFS:
- Fixed vfs_get_vnode_from_fd() return type.
  - Added vfs_open_vnode().
  - Added a "bool traverseLeafLink" parameter to vfs_get_fs_node_from_path().
    It was always resolving symlinks.
* device manager/devfs:
  - devfs: get_node_for_path() no longer resolves leaf symlinks. That still
    doesn't help with file disk devices, as creating partition wouldn't work
    anyway.
  - Pulled the module-related implementation part of BaseDevice into new class
    AbstractModuleDevice and made all methods of BaseDevice virtual. Small
    adjustments to devfs to be happy with the new BaseDevice interface.
  - Added BaseDevice subclass FileDevice, which maps the interface to a file's
    file descriptor. Still got a few TODOs, but should basically work.
  - Use FileDevice for publishing file disk devices in devfs. Now those do
    actually work, though there's some BFS trouble with one of the images I
    tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 03:06:34 +00:00
Ingo Weinhold
be51dd0f4c Added debug_strlcpy() for use in the kernel debugger.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 03:02:34 +00:00
imker
adc602a44b Model string for Core i7 920 @2.66 added.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-30 18:01:16 +00:00
Axel Dörfler
0667145547 * Fixed indentation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-30 12:36:21 +00:00
Michael Lotz
ace6934d79 While the AutoLocker is not public at least make BAutolock a bit more useful by
also providing Lock() and Unlock(). Applied public header style.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-30 01:00:23 +00:00
François Revol
858a20cab8 Patch by Vincent Duvert:
Remove the 4 cores limit at boot, and fix the allocator to handle 8 cores.
There are still performance problems, but this allows booting with 8 cores.
WARNING: since this changes x86 platform kernel args, you really don't want to update haiku_loader and kernel_x86 separately!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-29 13:07:10 +00:00
Stefano Ceccherini
ea40a61a84 Some big changes, still not working on my laptop, since hpet interrupts
aren't routed correctly over the 8259, it seems.
- Removed passing the hpet_regs around, since there's a static variable.
- Added lots of debug dprintfs.
- Fixed setting the timer interrupt to edge
- Timer is initialized once.
- Use the timer 0 instead of 2.
- Renamed register definitions to be more readable
- Use 64 bits registers and unions where applicable.
- Other things I don't remember


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-29 08:36:36 +00:00
Stefano Ceccherini
8593bcad87 Use the hpet defines in the source.
Also shortened some defines using "TN" instead of "TIMER". It's also
the same scheme used in the specs


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-28 13:14:16 +00:00
Stefano Ceccherini
6e53324663 Added more HPET defines, not yet used in the source.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-28 05:10:43 +00:00
Ingo Weinhold
ac106be534 Inherit the disable_debugger() flag to a fork()ed child. load_image() doesn't
-- I'm undecided whether it should, too. Fixes #4642.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-28 02:54:38 +00:00
Adrien Destugues
0a255c0c6a Cleanup of the locale kit tools :
-Jamrule for collectcatkeys no longer print all the strings, only a message when it can't parse one (happens for TR(variable) basically)
-Added fingerprint check in the plaintext catalog ReadFromFile. However, the adler checksum is different each time the catalog is loaded because it relies on the string being iterated always in the same order, but this is not always the case with an HashMap ! Some rethinking is needed, so disabled the check for now so it does not breaks the build
-Some try to debug the bluetooth preflet localization. Still buggy, but I wanted to commit all this mess before I break everything up again.
-Also sorted the fr.catkeys files to be in the same order as the autogenerated en.catkeys (this is useless but makes them easier to check) and updated their fingerprint even if they are still not checked.
-Miscelaneous style fixes, small bugfixes, more error checking and error messages saying where they come from.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-27 21:19:52 +00:00
Stefano Ceccherini
3cafc2ec3e Update comments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-27 08:50:42 +00:00
Ingo Weinhold
7dde9c1dab * Added operators == and !=.
* Added "bool* _isSigned" parameter to IsInteger().
* Added static TypeIs{Number,Integer,Float}() operating on type codes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-27 04:08:45 +00:00
Rene Gollent
4e79886a59 Fix gcc4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-25 14:36:26 +00:00
Stefano Ceccherini
d54e62b2c8 Added dumping the timer configuration, and the possibility to use any of
the hpet timer, not just the first 3.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-25 05:08:22 +00:00
Philippe Houdoin
62f9de87b0 Moved Mesa libs (mesa, glu & glut) under src/libs/mesa, where it should have
been since long already.
This should help aljen reintegrate his gallium branch sooner than later, 
which after the speed improvment on softpipe made last days will 
be welcomed, I'll bet ;-)

Maybe it's possible to even have both current Mesa Software Renderer add-on 
*and* Gallium-based SoftPipe one. Will need to actually support renderer 
selection (in OpenGL preference panel or via a missing OpenGL Kit API), 
as today the first add-on found is the only one ever selected...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-25 01:50:30 +00:00
Stefano Ceccherini
cd1352fe63 Fix endianess problem: the period and capabilities bits were reversed in the hpet registers
struct definition.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 22:06:02 +00:00
Jonas Sundström
0d62f09d74 Explicitly allow not giving a relative path.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 21:35:10 +00:00
Adrien Destugues
875e7244d7 Patch by Michael Weirauch to fix bluetooth apps signatures.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 21:07:18 +00:00
Adrien Destugues
93647add85 Public headers should not hold commiter names in the licence header. Removed them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 21:03:57 +00:00
Stephan Aßmus
7ad67e708f Optimized includes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-23 10:18:24 +00:00
Ingo Weinhold
3bd94918ed Reordered Reference::SetTo() operation so that it is safe to reinitialize to
the same referenceable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-21 04:29:27 +00:00
Adrien Destugues
b254319360 -Started to localize the appearance preflet to find more locale kit bugs. It worked.
-MarkForTranslation was not scanned by collectcatkeys, improved the regexp to take it into account
-Some gristing was missing in jamrules, added a bit, still seem to miss some.
-Replaced $(var:B).ext with $(var:S=.ext) as it is the proper way in order not to loose grist and mess things up
-Removed icu include and replaced direct class nesting with pointer to avoid binary compatibility breakage on ICU updates.
-Fixed TimeFormatSettingsView to properly include needed icu things. Should not be there, actually. Needs cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-20 22:16:30 +00:00
Adrien Destugues
76065080e6 -Delete some old unused files
-Some style fixes (mostly whitespace)
-Switch to the short language list and make it build again. seems to have trouble with BStringByteSink and utf8, or is it just my build env having encoding problems ?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-20 17:57:06 +00:00
Jonas Sundström
7914280cb8 Less hardcoding of paths. Adding shared private OpenWithTracker().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-20 14:50:01 +00:00
Stefano Ceccherini
4b115815dd Removed unused headers directory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 22:28:31 +00:00
Adrien Destugues
fb581e32d1 Fixed licence headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 12:19:46 +00:00
Oliver Tappe
75f1522155 * reintegrated gsoc-locale-kit branch into trunk - there's more
work to do, but it's about time to give this code more exposure.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-18 22:23:34 +00:00
Philippe Houdoin
f0fea3556a Found a forgotten B_BEOS_*_DIRECTORY.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-18 17:40:46 +00:00
Jérôme Duval
40d6120c3b Patch from Vincent Duvert (edited by myself): Implement reboot via ACPI (#4459)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-14 17:37:53 +00:00
Stefano Ceccherini
f0bf38026a Add safemode option to disable the use of APIC timers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-14 09:02:15 +00:00
Rene Gollent
b48e7fc842 Fix Device Kit build in debug mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-13 01:30:38 +00:00
Stefano Ceccherini
9aace520df Rewrote scsi.h. This should be the last missing header.
+alphabranch, if possible


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-12 17:21:56 +00:00
Oliver Tappe
e0b7c61c46 Closing ticket #4465:
Net_server starts services by invoking fork() followed by exec(). If the latter
fails (for instance because the service isn't installed), the forked child is
invoking exit(). This in turn unloads libbe, triggering static cleanup code in 
BMessage, which deletes a couple of message ports that were inherited from the
parent during the fork. After that, net_server was desparately missing those
ports and no longer worked reliably.
* in InitTerminateLibBe, we now register an atfork-(child-)handler, which
  takes care to re-initialize the static reply ports used by BMessage code
* added BMessage::Private::StaticReInitForkedChild wrapper and 
  BMessage::_StaticReInitForkedChild() implementation which overwrites the
  inherited port IDs with a set of own ports


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-10 23:10:51 +00:00
Michael Lotz
0f4242de40 Implement a vm_block_address_range() function which creates an area with no
mapped pages and a non-read and non-write protection to block a certain address
range from being used by anything.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-10 01:40:46 +00:00
Jonas Sundström
70dc439139 Check return value also for B_ALREADY_RUNNING, or else we launch the add-on twice.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-09 01:29:45 +00:00
Rudolf Cornelissen
19a34ea09c added disabling of spread spectrum-ing DAC clocks on NV30 and later: my laptop display nolonger shivers on the secondary output. version is 1.03. +alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-06 14:42:11 +00:00
Rudolf Cornelissen
148077d71e the previous commit shifted the PLLsel problem from digitally connected screens to analog connected screens apparantly. That is now fixed and both should work OK. Bumped version to 1.01. +alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-06 10:20:42 +00:00
Stephan Aßmus
032631e54a Make the base class destructor of BCommandPipe::LineReader virtual, since
that will fix the problem fixed in r32926 for all derived classes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-06 09:53:28 +00:00
Stefano Ceccherini
3ecf187e2a Made MenuWindow::GetSteps() const.
Increased the scrollers size from 10 to 12, since at high resolutions,
they're really too small.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-04 18:16:59 +00:00
Stephan Aßmus
8dadca32b1 Refactoring and cleanup. The progress report mechanism should now be much
more flexible. May need this in the alphabranch...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-02 14:52:13 +00:00
Axel Dörfler
47000651b5 * Rewrote USB_rle.h, USB_spec.h, and midi_driver.h. I did not reproduce the
documentation found in those headers - this stuff should go into the Haiku
  Book instead (although I'm not even sure the USB_rle.h, and midi_driver.h
  are really needed any longer).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-02 12:04:00 +00:00
François Revol
7e26ad5af7 Add functions to the old-style PCI bus manager to reserve a device from an old-style driver for exclusive use. This should help making OSS and native audio drivers mutually exclusive. Used in es1370 and hda drivers as examples. OSS must still be fixed to use it too though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-01 23:56:02 +00:00
Axel Dörfler
ee0be828e4 * Rewrote USB_printer.h, and bus_manager.h (the last short ones...) :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-01 18:48:34 +00:00
Stephan Aßmus
74e8797f5e Fixed the build. Axel is probably going to commit the cleaned up header soon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-01 15:14:57 +00:00
Oliver Ruiz Dorantes
a53e31dde4 - Use Layout manager
- Styling


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 19:21:50 +00:00
Stephan Aßmus
9b37feb4a8 Some methods were unnecessarily/inconveniently protected.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 15:04:55 +00:00
Jonas Sundström
c5d2ebc76a Introducing a private method for launching a Tracker addon as a stand-alone application. Updated TextSearch to use it. Matthijs Hollemans license is MIT. Not important for alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 00:48:48 +00:00
Stefano Ceccherini
2eda0564c4 BUILD module: copied updated headers from the main module, and removed
some unneeded ones, which still had the be copyright. Also removed BufferIO
from the build and deleted the implementation, since it wasn't used.
There are still some more... +alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-30 12:31:54 +00:00
Ingo Weinhold
adbf8b25f8 * Added fdopendir() (POSIX).
* Got rid of <dirent_private.h> -- the __DIR structure is private to dirent.c,
  now. The attribute directory, index directory, and query functions use the
  the public POSIX API, so does the kernel module code. Those components were
  not initializing the structure correctly anymore since the introduction of
  telldir()/seekdir().

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-29 20:25:24 +00:00
Marcus Overhagen
781aa0f579 Fix bug introduced in r32679. The dirent buffer was to short.
This fixes ticket #4362 and probably also #4360 and #4370 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-29 17:41:42 +00:00
Stefano Ceccherini
5ce0a8a2d2 Rewrote CAM.h. Since this file is from an ANSI standard, I
kept the non-be specific comments.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-29 10:22:06 +00:00
Stefano Ceccherini
b81516b289 Rewrote SerialPort.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 19:21:26 +00:00
Stefano Ceccherini
ab83d3e932 Rewrote Joystick.h and DigitalPort.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 19:08:52 +00:00
Stefano Ceccherini
7d50125fa5 and now for the real thing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 18:54:39 +00:00
Stefano Ceccherini
d8c2849d2c Rewrote A2D.h and D2A.h. Small style changes to the source files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 18:44:17 +00:00
Oliver Ruiz Dorantes
d1966ec2c2 - Implement Trigger method to allow buffers
- Identation, 80/90, tabs & whitespaces



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 17:17:52 +00:00
Stephan Aßmus
cb5961b774 * Rewrote last of the MediaKit headers.
* Removed private types from MediaEncoder.h (These have Haiku counterparts,
  I expect MediaEncoder is not yet implemented...)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 15:06:12 +00:00
Stephan Aßmus
224f4fcd63 Rewrote header, updated source.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 14:50:09 +00:00
Stephan Aßmus
cb3f273dd2 Rewrote more headers, style updates in some
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 14:39:55 +00:00
Stephan Aßmus
17a5db77c0 * Rewrote header, adjusted source.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 14:01:15 +00:00
Stephan Aßmus
6abeda1091 * Rewrote header
* Some coding style fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 13:18:17 +00:00
Stephan Aßmus
05d5d7ad58 Rewrote header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 12:58:59 +00:00
Stephan Aßmus
d4d27fac86 * Rewrote MediaDefs.h and MediaEncoder.h
* Moved MediaKit errors into Errors.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 12:42:36 +00:00
Stephan Aßmus
81506b0100 Optimized includes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-28 12:30:04 +00:00
Stefano Ceccherini
e35a094d61 Changed the type of fClipInfo from void * to glview_direct_info in the
BGLView header. This lets us get rid of ugly casting in the implementation.
Also changed a calloc() to malloc(), since the memory is memcpy()'d right
afterwards.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 20:25:40 +00:00
Axel Dörfler
cbcc98ed56 * Obviously, the GraphicsDefs.h header is needed as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32760 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 15:45:42 +00:00
Axel Dörfler
88cf71d26a * Rewrote last Translation Kit header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 14:34:29 +00:00
Axel Dörfler
d7571ebcf7 * Rewrote headers as needed.
* Cleaned up our own headers.
* Moved translator errors into Errors.h.
* Removed extra TranslationKit.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 14:20:56 +00:00
Stephan Aßmus
d95656d79e Rewrote headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32753 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 13:49:18 +00:00
Axel Dörfler
8780d2073d * Rewrote header.
* Cleaned up sources.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 13:40:07 +00:00
Stephan Aßmus
2089178aac Rewrote header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 13:13:54 +00:00
Stephan Aßmus
2a452b95b1 Rewrote header. Don't know if this is even used/supported.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 12:45:31 +00:00
Stephan Aßmus
9d19a1c8e0 Rewrote header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 12:41:25 +00:00
Stephan Aßmus
75a6d1db99 Optimized includes. For example, BeBuild.h is almost always already included
via SupportDefs.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 12:36:35 +00:00
Stephan Aßmus
a69c16fec5 Rewrote headers.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 12:35:43 +00:00
Axel Dörfler
9fe35223cf * BWindowScreens had no sychronization mechanism whatsoever - since the
workspace activation message was asynchronous, whether or not the
  BWindowScreen stopped drawing in time was pure luck (this also caused crashes
  with the VESA driver, as that one unmaps its frame buffer during mode switch).
  Introduced a new AS_DIRECT_SCREEN_LOCK protocol for this.
* In the long term, we should let BWindowScreen use the same mechanism as
  BDirectWindows, though.
* Removed superfluous locking in BDirectWindow::_InitData().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 12:10:59 +00:00
Stephan Aßmus
89208c77f1 Finished unifying the Interface Kit headers:
* Fixed copyrights (puncuation and capitalization, removed authors from
  headers)
* Updated indentation style
* Unified pointer/reference style
* Re-ordered some methods for better grouping where it could be done
  (abd adopted source accordingly)
* Small coding style fixes here and there

No functional change intended.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 11:12:41 +00:00
Stefano Ceccherini
5aab324272 forgot this
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 08:42:31 +00:00
Stefano Ceccherini
04c2fe0b76 We don't need these either for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 08:20:46 +00:00
Axel Dörfler
4a76f8198b * Fixed style and indentation issues; Stefano, you might want to check your
editor's tab settings before doing more of those.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 08:01:57 +00:00
Stefano Ceccherini
37ad10783e I suspect we don't need those in the build system, at least for now (I actually checked,
of course :-) +alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 07:55:55 +00:00
Stefano Ceccherini
b2e0239b34 Removed unused header. +alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 07:31:35 +00:00
Stefano Ceccherini
1727c564e7 Same as the previous commit, for the build headers. (both +alphabranch).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 21:59:48 +00:00
Stefano Ceccherini
a7bd8e7b1d Rewrote PropertyInfo.h. Also got rid of R3 compatibility.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 21:56:28 +00:00
Stephan Aßmus
e597623fc8 Small cleanups.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 18:58:11 +00:00
Stephan Aßmus
0e0c81e027 Rewrote PrintJob.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 18:56:44 +00:00
Stephan Aßmus
29c26d1e57 * Indentation cleanup
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 18:46:08 +00:00
Stephan Aßmus
33d568ae09 * Indentation cleanup
* Code cleanup
* Refactoring (the unit tests still pass)
* Disabled experimental API (BAffineTransform, which is not yet publically
  available anyway)

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 18:40:04 +00:00
Stephan Aßmus
8cc8b1b7e9 * Updated indentation style
* Fixed copyright
* Reordered inherited virtuals to improve the grouping

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 14:53:06 +00:00
Stephan Aßmus
15ff16b991 * Updated indentation and pointer/reference style.
* Fixed copyright

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 14:34:56 +00:00
Stephan Aßmus
4b15b90979 * Updated indentation style.
* Fixed copyright.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 14:30:36 +00:00
Stephan Aßmus
97da0e7cfb * Updated indentation style
* Fixed copyright

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 14:25:36 +00:00
Stephan Aßmus
56f7fdc402 * Updated indentation style
* Fixed copyright


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 14:19:30 +00:00
Stephan Aßmus
a744468925 Rewritten. Note that the implementation for this class seems to be completely
missing. IIRC, I did write an app way back that used this class...

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 14:04:37 +00:00
Stephan Aßmus
a449ca33dc * Updated indentation style
* Fixed copyright

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 13:44:50 +00:00
Stephan Aßmus
42a5968afd Cannot change the ordering of the additional virtual methods, or BC is
broken.
+alphabranch (if previous commit is also applied)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 13:33:54 +00:00
Stephan Aßmus
6eb37bdef7 * Copyright fixed
* Indentation updated.
* Better grouping of methods.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 12:22:10 +00:00
Stephan Aßmus
13e50c47a2 * Indentation cleanup.
* 80 chars limit
* Copyright fixed.
* Better grouping of methods.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 12:08:09 +00:00
Stephan Aßmus
0a5897b71f * Updated indentation style
* Better grouping of methods
* Fixed copyright
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 11:47:51 +00:00
Stephan Aßmus
7e43502299 * Updated indentation.
* Better grouping.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 11:27:06 +00:00
Stephan Aßmus
f81fb0e5f6 80 chars/line
+ alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 11:19:20 +00:00
Stephan Aßmus
b87283e761 * Updated indentation and licence.
* Added experimental API warning.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 11:16:49 +00:00
Axel Dörfler
f808efaf83 * Rewrote TimeSource.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 11:13:14 +00:00
Stephan Aßmus
2d6e435398 * Updated indentation style
* Added warning about this being experimental API.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 11:10:23 +00:00
Stephan Aßmus
97e88fa432 Indentation cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 10:58:22 +00:00
Stephan Aßmus
aaa6b1228a Updated indentation style.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 10:45:36 +00:00
Stephan Aßmus
87ba0eaa2b Fixed for 80 char limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 10:32:41 +00:00
Stephan Aßmus
c5c20344eb * Cleaned up the header
* Reordered methods to group them logically
* Use nothrow version of new when instantiating BCheckBox from archive.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 10:30:27 +00:00
Ingo Weinhold
b02c147c05 Implemented seekdir() and telldir(). They were declared in <dirent.h> already.
So either +alphabranch or remove the declarations from <dirent.h>.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-25 22:16:40 +00:00
Axel Dörfler
8b581b3f23 * Changed trunk to some version behind the alpha.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32671 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-25 18:16:14 +00:00
Stephan Aßmus
d89b690d3b * Finished rewriting the header.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-25 14:13:59 +00:00
Axel Dörfler
4693495cf0 * ntohl(), and htonl() should return an uint32_t, so better cast the return
value we get from __swap_int32().
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32652 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-24 14:11:09 +00:00
Rudolf Cornelissen
9b53cf03cd implemented haiku-specific hook GET_ACCELERANT_DEVICE_INFO. Haiku's screen prefs panel now indicates the brand name of the screen and only offers fully compatible modes for a connected screen if I understand it correctly. Note: currently only working for analog connected screens, digital connected screens coming up next. Updated docs, bumped version to 0.96.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-23 08:48:58 +00:00
Ryan Leavengood
19bce7226a Remove the forced resizing to preferred size when CenterIn is called, and
instead just check if the size limits need to be set. The code that previously
did this when processing the B_LAYOUT_WINDOW message was extracted into a
private method, which is called from both places.

This may be slightly wasteful in some cases (since the size limits may be set
multiple times), but it is definitely needed because without it both of the
current test apps (DiskProbe and Screenshot) did not have properly centered
windows.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-23 03:06:44 +00:00
Jonas Sundström
893988af82 Added and modified kernel stubs and headers for arch mipsel. Correctness not included.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-23 02:52:09 +00:00
Ryan Leavengood
b0586d610a Remove useless BRect* version of CenterIn, make remaining version take a const
BRect reference.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 16:10:18 +00:00
Ryan Leavengood
2ff62714d0 Finally implemented BWindow::CenterOnScreen, with associated CenterIn(BRect)
methods as well as Size(). To avoid the problem of centering the window before
it has been resized by the layout system, I force the resizing early. If there
is a better way to do this or some way to avoid doing it repeatedly, let me
know. But I figure the Center* methods should not be called that often.

Updated Screenshot and DiskProbe to use this new method as a test. It certainly
cleaned up DiskProbe. I will update other code over the next few days (if
anyone wants to help, please do :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 14:17:29 +00:00
Alexandre Deckner
8e43b9e35e * A mouse shake detecting BMessageFilter that's easily integrated in any app.
* A test app for it. I added a src/test/kits/shared folder as i found it was the
 most logical place for it. Shake it up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 13:43:21 +00:00
Jonas Sundström
8e8130d1f0 Adding routerboard_mipsel platform stubs and linker script.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 01:48:18 +00:00
Jérôme Duval
e535c8c017 updated libpng to 1.2.39
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 21:38:50 +00:00
Jérôme Duval
dd0edf1f7c updated fluidsynth to 1.0.9
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 21:27:45 +00:00
Axel Dörfler
7c26f9d16d * Rewrote Buffer.h, and BufferConsumer.h, that's enough for a day :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 20:21:45 +00:00
Axel Dörfler
67838392dc * Applied stippi's no-patents patch, but without the ffmpeg part, as that one
is obviously already configured not to use patented code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 17:20:23 +00:00
Michael Lotz
29bd9bfd7d Remove SMP_MSG_RESCHEDULE_IF_IDLE as it is not used anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 16:14:18 +00:00
Ryan Leavengood
7f0af426b2 Fix the build. Sorry for the breakage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 13:39:42 +00:00
Axel Dörfler
e18224cdf4 * Added a new AS_GET_SCREEN_FRAME function, as getting the frame via
AS_SCREEN_GET_MODE won't work with multi-screen support anymore, and is also
  more overhead than needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 10:23:01 +00:00
Axel Dörfler
f7e005eb83 * Moved PrivateScreen.h header to headers/private/interface.
* Desktop is now including it as well to be able to use the new
  B_CURRENT_WORKSPACE_INDEX constant.
* Include order cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 09:37:54 +00:00
Rene Gollent
009ccc2962 anevilyak+mmlr:
* scheduler_enqueue_in_runqueue() now allows the scheduler to return a hint as to whether a reschedule is desirable or not. This is used in a few other places in order to relegate scheduling decisions entirely to the scheduler rather than the priority hacks previously used. There are probably other places in the kernel that could now make use of that information to more intelligently call reschedule() though.
* Switch over the default scheduler to scheduler_affine().



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 04:11:40 +00:00
Ryan Leavengood
e58f5f3d02 Extract libjpeg from the JPEGTranslator and make it a standalone lib. Added to
image and DevelopmentMin optional package. This is the original libjpeg (6b),
which I will updated to version 7 within the next few days. I need to
understand better the modifications made to it before updating.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 02:17:42 +00:00
Axel Dörfler
87da7984dc * Contrl-~ now switches between application windows. This is handier than the
mechanism used in BeOS, that is to press Control+Option-Tab (which didn't
  work on Haiku, though).
* Did not change the window switch logic, though, so it's still not really
  nice.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-19 15:45:17 +00:00
Axel Dörfler
2c69b5b6c0 * Made the libbe_test environment basically working under Haiku - to actually
make it work, one would need to use versioning for all libbe symbols. This is
  worth an 8k price per file that links against libbe.so, so I didn't want to
  commit this as is. An alternative to this solution would be to write a
  separate application that is responsible for the app_server's window. Comments
  welcome.
* Removed BeOS compatbility of the libbe_test stuff.
* Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is
  now called libbe_test.so, haiku_registrar is now test_registrar, etc.
* This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS
  compatibility should be removed, but I don't want to make Alexandre more work
  in his branch, and it's not urgent at all).
* Replaced the former "run" scripts for the test environment with a single
  run script (see updated NOTES file).
* Removed the libbe_test target from some applications - this was only to help
  developing them under BeOS, and is thus no longer necessary.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-19 14:17:13 +00:00
Michael Lotz
152132f08a mmlr+anevilyak:
* Keep track of the currently running threads.
* Make use of that info to decide if a thread that becomes ready should preempt
  the running thread.
* If we should preempt we send the target CPU a reschedule message.
* This preemption strategy makes keeping track of idle CPUs by means of a bitmap
  superflous and it is therefore removed.
* Right now only other CPUs are preempted though, not the current one.
* Add missing initialization of the quantum tracking code.
* Do not extend the quantum of the idle thread based quantum tracking as we want
  it to not run longer than necessary. Once the preemption works completely
  adding a quantum timer for the idle thread will become unnecessary though.
* Fix thread stealing code, it did missed the last thread in the run queue.
* When stealing, try to steal the highest priority thread that is currently
  waiting by taking priorities into account when finding the target run queue.
* Simplify stealing code a bit as well.
* Minor cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-19 03:19:17 +00:00
Michael Pfeiffer
58fe1b1eb0 Added missing include statements to fix build in case DBG is defined.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-18 07:19:54 +00:00
Ingo Weinhold
8bc24c13ab * Moved termcap.h to headers/libs/termcap/, where it belongs.
* Removed the headers/gnu from the default headers (the Jamfiles needing it
  use it explicitly, now) and moved it under headers/compatibility/.
* Added libgnu.so to the image. Still untested, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-17 21:13:51 +00:00
Jonas Sundström
08cd7c0c06 Defining architecture dependent endian constants for arch mipsel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-17 15:12:13 +00:00
Oliver Tappe
9946ba71ad * reordered members of BTextView to be compatible with R5 again,
although it should have been safe before, too, since BTextView neither
  has inline methods nor any friends that live outside of libbe
* added new member fLastClickOffset in order to be able to restore the 
  triple-click handling (linewise selection)
* renamed fClickOffset to fCaretOffset, as that is what it really is
  now


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-16 17:02:47 +00:00
Ingo Weinhold
9996b69b8b * Added new library libgnu.so, which will contain GNU compatibility interfaces
(analoguously to libbsd.so).
* Added an implementation of the GNU/Linux xattr interface. xattrs are mapped
  to Haiku attributes with type B_XATTR_TYPE. Haiku attributes are mapped to
  xattrs by moving them into the "user.haiku." namespace and appending the
  type to their name. Complete, but utterly untested yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-15 21:29:02 +00:00
Ingo Weinhold
c527fef824 Added type constant B_XATTR_TYPE. This is not a data type, but rather a marker
that can be used for node attributes, when those originate from Linux xattrs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-15 21:22:25 +00:00
Ingo Weinhold
7c44760049 Added ENOATTR.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-15 21:20:05 +00:00
François Revol
47eb033980 [GSoC] [ARM] Patch by Johannes Wischert.
Revert back start of kernel space to the usual place, no need to differ from other archs here.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 22:33:39 +00:00
François Revol
7db9fbfe80 Factor out the splash image display logic too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 20:51:29 +00:00
François Revol
0573d397e1 Factor out the RLE and blitting functions from bios_ia32 to platform/generic/ so it can be reused by other platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 18:15:44 +00:00
François Revol
b044ca6a19 "Haiku" -> "MIT" license.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 18:10:37 +00:00
François Revol
cf4cc90528 Fix (c) style; and use "MIT" since there is no "Haiku" license by itself.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 18:09:38 +00:00
Jonas Sundström
d61def1d46 A spelling error, I presume.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 16:24:41 +00:00
Axel Dörfler
b2a75cf56c * Fixed mixup of the VGA compatibility layer - if the bit is set, it means the
device is not compatible, after all.
* No longer accept color changes if the mode is not an 8 bit one. I think that
  BWindowScreen does that after changing the mode, so that is messes up the
  colors, at least that's the theory, will test on real iron now.
* Use VGA as a fallback if setting the palette via VBE failed. This brings back
  the colors for ParticlesII in Qemu (but not in VirtualBox, which seems to be
  completely broken in this regard).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 14:30:01 +00:00
Axel Dörfler
2384335649 * Changed the way the device type is tested/set. There shouldn't be any functional
changes.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 13:02:52 +00:00
François Revol
3f6f17cf36 [ARM]
Start of framebuffer initialization for the Verdex board.
For now it points to the data section as framebuffer for testing and shows an RGB pattern.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 12:40:16 +00:00
Axel Dörfler
bb693d7764 * Added VESA capabilities field to the kernel args.
* The vesa driver no longer uses VGA programming if the chip does not support
  VGA compatibility.
* The VESA driver now tries to set the DAC to 8 bits per color gun.
* In VESA modes, the driver no longer tries to use VGA programming; introduced
  the new vesa_set_indexed_colors() that is now used for palette programming.
  This should fix wrong colors of 8 bit BWindowScreen users with VESA on real
  hardware (emulators usually didn't mind either way).
* Note that the app_server needs to maintain a palette per 8 bit screen, as
  right now, the colors are garbled after a workspace switch. Stefano, are you
  looking into that already?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 09:49:28 +00:00
François Revol
715a9925f1 [ARM]
Move ARM MMU definitions to a separate header file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 21:09:48 +00:00
François Revol
ffb5971f0d [GSoC] [ARM] Patch by Johannes Wischert.
- fix header guard,
- add needed fields to arch kernel args to pass mmu info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 18:57:36 +00:00
François Revol
8a07056253 [ARM]
Identify cpus more precisely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 14:45:06 +00:00
Axel Dörfler
8166e6e477 * Enlarged kernel_args array even more, as network boot needs this with all the
extra kernel drivers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 11:07:57 +00:00
Ryan Leavengood
04e24ee5ba Made some char* params const to fix a GCC4 warning in ShowImage (the only
current client of this AFAIK.) They should have been const to begin with...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 07:30:48 +00:00
François Revol
01c8294cc7 [ARM]
- don't clobber the parameter regs in the entry point,
- fix entry point address for netbsd loader emulation,
- added a gUImage global to point to the uimage blob with the tgz,
- added tgz info to platform stage2 args,
- add simple uimage support, just dumps the header and gets the nth blob in the image, (seems we have a bug in the math code, some infos don't print),
- made devices.cpp use them to publish the MemoryDisk,
- add an haiku_loader_nbsd.ub target which puts both the loader and kernel_arm for now (need to replace with the tgz).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 05:28:30 +00:00
François Revol
b6d77b2e49 - cleanup,
- assign (c) to Haiku Inc as it's just empty anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 01:24:44 +00:00
Rene Gollent
db341f3691 Revert bin compat break from r32267.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 14:39:26 +00:00
Philippe Houdoin
bb1fc73715 Fixed BGLView constructor: name string argument wasn't qualified constant!
Fixed GCC4 warnings in GLInfo.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 03:01:48 +00:00
Axel Dörfler
5ffbab2aff * Made the BToolTip interface a bit more convenient to use when subclassing it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-11 12:32:12 +00:00
Axel Dörfler
fcd5021275 * Made the tool tip manager's lock available, and guarded adding/removing the
tool tip view with this lock, too.
* BTextToolTip::SetText() can now be called in all circumstances safely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-11 07:47:49 +00:00
François Revol
bad4d0ccdc [ARM]
Add an __ARM_ARCH__ macro defined to the arch version to simplify checks for >= some version.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-11 03:02:44 +00:00
Bryce Groff
1987b05aa0 * Added open_partition to disk_device_manager
* Rewrote PartitionMapWriter
* Updated style to match current style guide for the intel partitioning system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-10 22:28:47 +00:00
François Revol
f875744d56 [ARM]
Remove duplicate header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-08 02:26:01 +00:00
François Revol
a4d5e47408 [ARM]
debug UART is [0] on Verdex.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-08 02:18:29 +00:00
François Revol
afd3d7cbaa [ARM]
Map UARTs to the cpu specific addresses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-08 01:05:49 +00:00
François Revol
15317caafe [ARM]
- moved board/ folder around again, it probably belongs only to kernel stuff,
- added board_config.h templates for gumstix boards.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-08 00:35:48 +00:00
Axel Dörfler
12194e33b7 * Added missing default initializer for the message.
* Changed BMenuField::MenuBarLayoutItem::BasePreferredSize() to return the
  min size as well, instead of a fixed 100 pixels for the width...
* More minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-07 08:52:32 +00:00
Axel Dörfler
50f8cd14bb * Cleanup, no functional change.
* Remove superfluous operator=() implementations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-07 08:01:27 +00:00
Rene Gollent
102a66c3f6 BMenuField's private menu bar did not take into account the width of the popup indicator when computing its minimum size. Fixes ticket #3635.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-06 23:24:48 +00:00
Axel Dörfler
5174cb1f74 * Added copyless direct value accessors (via Iterator::NextValue(), and
Get()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-06 09:42:34 +00:00
Stefano Ceccherini
9a95658ce0 Some cleanups. Shouldn't include any functional changes, except maybe
better cleanup on exiting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 21:30:39 +00:00
Axel Dörfler
13247f3a8c * This fixes VGA mode frame buffer use, no idea when this got broken. It might
be broken in the app_server now, but I haven't checked yet.
* Fixed typo in vesa.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 17:24:23 +00:00
Axel Dörfler
a21284874f * Rewrote BBufferGroup header.
* Cleaned up the source file, no functional change (intended).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 16:08:47 +00:00
Stephan Aßmus
6780c24d36 Encoder:
* Fleshed out the Encoder API to support parameter setters/getters and returning
  a BView for configuration. (Not yet sure if this is a good idea.)

BMediaTrack:
* Implemented all but one of the unimplemented methods in BMediaTrack. It should
  be working as far as that class is concerned, unless I missed some of the
  vision. ReplaceFrames() remains a stub, added a comment on why it probably
  stays that way.
* Release the Encoder reference in the destructor.

FFmpeg plugin:
* Refactoring to delay opening the AVCodec until encoding the first chunk,
  so that we can still adjust parameters.
* Support adjusting parameters via [Set|Get]EncodeParameters(). Currently,
  only quality is supported, added TODOs about supporting the bit_rate setup
  versus the automatically calculated bit_rate.
* Extended EncoderDescription by a bit_rate scale. The Encoder calculates the
  raw bitrate needed by the current media format, and then divides that
  number by the specific codec's bit_rate_scale, while taking into account the
  desired quality. This seems to work very well already (tested with MPEG4),
  although a lot more parameters could be specified for libavcodec, depending
  on the desired quality.
* Enabled the ogg muxer in libavformat, although it is currently still disabled
  in MuxerTable.cpp, because it rejects unknown codecs. Added TODO to this
  effect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 10:21:36 +00:00
Stephan Aßmus
048d05a613 Small cleanups.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 10:11:06 +00:00
François Revol
98977abc9b Fix m68k build, still unimplemented.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 21:17:03 +00:00
Axel Dörfler
8318af01b9 * Added a basic tool tip API, and implementation.
* The BView API can probably be regarded as good enough; the implementation
  might need to be improved over time (also, some things as archivability
  aren't fully implemented yet). The ToolTip.h header should get public once
  finalized.
* Added new B_MOUSE_IDLE message that is sent to a BView after a certain
  time has passed (BToolTipManager::ShowDelay()).
* Added small test app (ToolTipTest) that shows what is already working.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 14:47:41 +00:00
François Revol
56c6c0fefb - introduced an "argumetns" field in stage2_args to hold command line args from chaining loader,
- added some multiboot support code:
	- dump some of the passed info,
	- parse command line (skip the 'kernel' name and pass the rest to stage2_args.arguments),
- added an add_stage2_driver_settings() function which takes stage2_args.arguments and translates it into safe mode driver settings, a bit dumb for now.
This allows using qemu -kernel haiku_loader -append 'debug_screen true' and get debug output without having to enter the menu (once multiboot info is used to determine the boot device too).
The idea is to allow passing driver settings and using them to pass extra stuff (like 'force_keymap fr' and other stuff for demo), and to help automate tests ('run_test /bin/sometest').
This should answer Axel's question :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 14:39:41 +00:00
Michael Lotz
255c9104e5 * Rework the heap locking strategy. Use a read-write lock for the area lock to
allow for more parallelism. Also introduce seperate locks for the bins and
  for page allocation. This greatly reduces lock contention and reduces the
  duration the locks are held due to them overall protecting less code. Now only
  allocations of the same size hitting the same allocator or allocating larger
  chunks of memory should block. Previously, basically any allocation and also
  free would be mutually exclusive, making it scale pretty badely.
* Added memalign_nogrow(). As it uses heap_memalign() anyway, there's no real
  reason not to allow for an alignment.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 13:59:45 +00:00
Ingo Weinhold
ea2abd110b * Renamed the ROUNDOWN macro to ROUNDDOWN. Also changed the implementation of
ROUNDUP to use '*' and '/' -- the compiler will optimize that for powers of
  two anyway and this implementation works for other numbers as well.
* The thread::fault_handler use in C[++] code was broken with gcc 4. At least
  when other functions were invoked. Trying to trick the compiler wasn't a
  particularly good idea anyway, since the next compiler version could break
  the trick again. So the general policy is to use the fault handlers only in
  assembly code where we have full control. Changed that for x86 (save for the
  vm86 mode, which has a similar mechanism), but not for the other
  architectures.
* Introduced fault_handler, fault_handler_stack_pointer, and fault_jump_buffer
  fields in the cpu_ent structure, which must be used instead of
  thread::fault_handler in the kernel debugger. Consequently user_memcpy() must
  not be used in the kernel debugger either. Introduced a debug_memcpy()
  instead.
* Introduced debug_call_with_fault_handler() function which calls a function
  in a setjmp() and fault handler context. The architecture specific backend
  arch_debug_call_with_fault_handler() has only been implemented for x86 yet.
* Introduced debug_is_kernel_memory_accessible() for use in the kernel
  debugger. It determines whether a range of memory can be accessed in the
  way specified. The architecture specific back end
  arch_vm_translation_map_is_kernel_page_accessible() has only been implemented
  for x86 yet.
* Added arch_debug_unset_current_thread() (only implemented for x86) to unset
  the current thread pointer in the kernel debugger. When entering the kernel
  debugger we do some basic sanity checks of the currently set thread structure
  and unset it, if they fail. This allows certain commands (most importantly
  the stack trace command) to avoid accessing the thread structure.
* x86: When handling a double fault, we do now install a special handler for
  page faults. This allows us to gracefully catch faulting commands, even if
  e.g. the thread structure is toast.

We are now in much better shape to deal with double faults. Hopefully avoiding
the triple faults that some people have been experiencing on their hardware
and ideally even allowing to use the kernel debugger normally.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 12:39:56 +00:00
François Revol
4b8d0e6856 Some ppc fixes for #4115, patch by kallisti5 (without the #ifdef _BOOT_MODE):
- stubbed out arch_cpu_init_percpu(),
- make atomic ops declarations extern "C",
- move calls to [i]sync inside the asm code that needs it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 10:10:22 +00:00
Stefano Ceccherini
dcc8ae9118 Some cleanups: made the bitmaps static, moved variables around. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-01 08:14:18 +00:00
Ingo Weinhold
671a2442d9 More work towards making our double fault handler less triple fault prone:
* SMP:
  - Added smp_send_broadcast_ici_interrupts_disabled(), which is basically
    equivalent to smp_send_broadcast_ici(), but is only called with interrupts
    disabled and gets the CPU index, so it doesn't have to use
    smp_get_current_cpu() (which dereferences the current thread).
  - Added cpu index parameter to smp_intercpu_int_handler().
* x86:
  - arch_int.c -> arch_int.cpp
  - Set up an IDT per CPU. We were using a single IDT for all CPUs, but that
    can't work, since we need different tasks for the double fault interrupt
    vector.
  - Set the per CPU double fault task gates correctly.
  - Renamed set_intr_gate() to set_interrupt_gate and set_system_gate() to
    set_trap_gate() and documented them a bit.
  - Renamed double_fault_exception() x86_double_fault_exception() and fixed
    it not to use smp_get_current_cpu(). Instead we have the new
    x86_double_fault_get_cpu() that deducts the CPU index from the used stack.
  - Fixed the double_fault interrupt handler: It no longer calls int_bottom to
    avoid accessing the current thread.
* debug.cpp:
  - Introduced explicit debug_double_fault() to enter the kernel debugger from
    a double fault handler.
  - Avoid using smp_get_current_cpu().
  - Don't use kprintf() before sDebuggerOnCPU is set. Otherwise
    acquire_spinlock() is invoked by arch_debug_serial_puts().

Things look a bit better when the current thread pointer is broken -- we run
into kernel_debugger_loop() and successfully print the "Welcome to KDL"
message -- but we still dereference the thread pointer afterwards, so that we
don't get a usable kernel debugger yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-01 01:53:54 +00:00
Stephan Aßmus
54897d5c06 * Also pass the media_codec_info to the Writer::AllocateCookie(), since that
info is not part of the media_format otherwise.
* Finished enough in the AVFormatWriter and AVCodecEncoder that we can now
  actually create AVIs and MPGs and encode MPEG1, MPEG2 and MPEG4 video.
  But no audio as of yet. Also, there is no bit-rate/quality setup, so it seems
  libavformat is using the least possible bit-rate/quality.
* Enable some more muxers and encoders in the FFmpeg libs.
* Uses pixel format conversion from libswsscale, need to read the documentation
  again, but I think it makes the plugin GPL.
* Fixed includes in libswscale/swscale.h, this is now an unmodified FFmpeg 0.5
  header again (AFAICT).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-01 01:16:12 +00:00
Michael Lotz
d7a16b238f * Fully switch to the Haiku message format so that it is also used for on-disk
storage.
* Remove reduntant information from the header (field_count vs. fields_size).
* Remove checksums previously used to validate the message passing by area
  mechanism.
* Move variables that are purely used by the instance out of the header and into
  the BMessage object.
* Use more sensible types for the different message fields.
* Reduce some field sizes to realistic values.
* Make size_t values into uint32 values so the message format will not change
  when later moving to 64 bits.
* Pack the structures used for flat message storage so it doesn't change
  because of padding.
* Fix message passing by area. It never worked because the created area was
  never actually filled with any data!
* Some more allocation checks with graceful fallbacks (should be all now).
* Some more checks for negative index values (should also be all now).
* Make printing more inline with how the rest of the class works and make some
  of the output more consistent.
* Also add the new unsigned types to PrintToStream() output.
* Fix printing of unknown types and invalid BMessages, it would always have
  printed only the first entry respectively the same error.
* Added some clarifying comments.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 22:19:36 +00:00
Rene Gollent
2252911973 Add missing definition for wcsstr. This was preventing clucene from building with wide chars enabled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 22:16:58 +00:00
Axel Dörfler
e90b90daf6 * Added desperately missing Trim() method.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 21:13:19 +00:00
Ingo Weinhold
cc77aba101 * Allocate a separate double fault stack for each CPU.
* Added x86_double_fault_get_cpu(), a save way to get the CPU index when in
  the double fault handler. smp_get_current_cpu() requires at least a somewhat
  intact thread structure, so we rather want to avoid it when handling a double
  fault. There are a lot more of those dependencies in the KDL entry code.
  Working on it...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 16:14:18 +00:00
Stephan Aßmus
4384acf6c1 * Tweaked the Writer API. Basically, we need an Init() method that takes the
media_file_format as input, so that the Writer knows what kind of file is
  needed.
* Also, since information about the stream format is going to be needed at the
  Writer level as well, the AllocateCookie() method gets the stream
  media_format.
* Fleshed out some aspects of AVFormatWriter, many TODOs are left.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 15:29:08 +00:00
Axel Dörfler
61b6f38cfc * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 14:11:12 +00:00
Stephan Aßmus
fa770e4c84 * Writer::WriteChunk() takes media_encode_info* instead of flags.
* Improved Encoder API towards what we need for the get_next_encoder() variants
  and the BMediaTrack API.
* Implemented the rest of MediaWriter. Still undecided what to make of
  AddTrackInfo(). BMediaEncoder has that as well, which hints that this is
  something the Encoder needs to support. But it could also be that this is
  only possible to support in Writer.
* Wired a lot of previously unimplemented methods in BMediaFile and BMediaTrack
  needed for write support. If I have not overlooked anything, only the
  parameter stuff is still unimplemented now.

This is all untested, since the FFMpeg Encoder and Writer are still only stubs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 10:46:58 +00:00
Stephan Aßmus
6033e52a83 Implemented support for get_next_encoder() variations from MediaFormats.h.
The AddOnManager in the media_server registers one encoder entry per
successful EncoderPlugin::RegisterNextEncoder(). This gives us a first idea
what media_format_family and input/output media_type is supported. The
mechanism may have to be extended, or the Encoder needs an API to specialize
a format further. In that case, the get_next_encoder() version that takes
optional _acceptedInput/OutputFormat needs to instantiate the plugin and
needs to ask the Encoder. But AFAIK, no app uses it like that anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 00:46:36 +00:00
Stephan Aßmus
377e95304a * This header couldn't actually be used from C code, since C doesn't support
overloading functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 22:10:11 +00:00
Stephan Aßmus
7cd2513b82 Changed the way Encoders are published by EncoderPlugins. Encoder retrieval
in PluginManager is reenabled. We use the media_codec_info.id to reference
a specific plugin, while the sub_id will be used to reference individual
Encoders that the plugin supports. No idea if that's how it was intented, but
some comments hint in this direction. I failed to mention this before, but
comments are of course very welcome on any of these commits, as always.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 20:05:11 +00:00
Ingo Weinhold
3fccf0679f C++ified the code. Introduced new trace entry flags, which will eventually be
used to mark entries after recovering a tracing log from a previous session.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31991 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 19:50:50 +00:00
Stephan Aßmus
a07b059b16 Implemented first version of MediaWriter, which is the bridge between
BMediaFile/BMediaTrack and Writer plugins.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 17:56:01 +00:00
Stephan Aßmus
c98ea33596 Let's call it WriteChunk() instead of WriteNextChunk() and make the signature
consistent everywhere (according to BMediaTracker::WriteChunk()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 17:54:03 +00:00
Stephan Aßmus
efd1469d4f Encoders will most likely be found by media_codec_info, not by media_format,
changed method signature accordingly and disabled the code for now, since
the media_server communication has not been adapted yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 17:52:14 +00:00
Stephan Aßmus
b8316d9f93 Cleanup and preparations for BPrivate::media::MediaWriter, which will soon
exist.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 17:47:54 +00:00
Stefano Ceccherini
c2c39a98a2 Moved functions declarations to InterfacePrivate.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 16:46:19 +00:00
Stephan Aßmus
ee9408a18d Re-wrote MediaFormats.h header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 16:34:06 +00:00
Axel Dörfler
753365b433 * Added new (private) calls {get|set}_workspaces_layout().
* Implemented old count_workspaces(), and set_workspace_count() using the
  new functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 14:13:14 +00:00
Ingo Weinhold
07745f2a0b Added support for new notify_io_request() function.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 14:12:47 +00:00
Axel Dörfler
617ebd8897 * Added convenience methods to add BTextControls and BMenuFields to a grid
layout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 14:03:48 +00:00
Ingo Weinhold
213d2d8f9d Added syscall _kern_kernel_debugger() to enter the kernel debugger.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 12:35:42 +00:00
Stefano Ceccherini
7a8567e61d Moved MenuPrivate implementation to its own file. Made MenuPrivate.h
self-contained. Adjusted other files accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31963 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 10:41:33 +00:00
Stefano Ceccherini
c3d7cee2d9 Instead of creating the Modifiers bitmaps on demand, for every DrawItem invocation,
for every BMenuItem, have them created in _init_interface_kit(), and keep
them cached. This required some reorganisation of the code in Menu and MenuItem.
Also has the side effect that BMenuItem doesn't have to know about the
alt/ctrl/command keys stuff.
Added a comment in BMenu::AttachedToWindow().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 10:33:46 +00:00
Ingo Weinhold
cdcacd7f9f * Added missing ToReferenceable().
* _SetTo(const BVariant&): Acquire a reference for the wrong object.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 02:34:41 +00:00
Axel Dörfler
69f9a367bc * The app_server no longer uses workspace counts internally, but only columns,
and rows.
* set_workspace_count() now uses the logic formerly found in
  WorkspacesView::_GetGrid() to determine the layout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 00:52:21 +00:00
Stephan Aßmus
60c85abee5 Resolved TODO, make it clear who maintains the allocation of the
media_file_format array (it remains with the plugin itself, as with
DecoderPlugins).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 00:11:02 +00:00
Stephan Aßmus
7c06546a8e Implement the backend of get_next_file_format(). The AddOnManager maintains
a list for known media_file_formats. The internal IDs map to plugins.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 22:49:23 +00:00
Ingo Weinhold
d3b44ccb14 Added explicit physical address parameter to vm_create_anonymous_area() and
create_area_etc(). 0 for the default behavior.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 21:30:35 +00:00
Oliver Tappe
31a41b605d Fixing #3460:
* resolved a couple of redundant function declaration in our public headers
* adjusted zipomatic accordingly - everything else built fine

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 19:45:09 +00:00
Stephan Aßmus
c30ef79def Small cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 19:11:50 +00:00
Stephan Aßmus
92d809b687 Added interface to WriterPlugin to get all supported media_format_families.
Don't yet know if that's the way it's supposed to work...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 19:11:32 +00:00
Ingo Weinhold
069b477dd7 * Introduced CREATE_AREA_DONT_CLEAR create_area_etc() flag, which allows the
call to fetch non-clear pages.
* B_PHYSICAL_BASE_ADDRESS does now imply B_CONTIGUOUS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 18:57:21 +00:00
Oliver Tappe
a64a5357f2 * added missing declarations of all the scanf() variants, as we now provide
those, too. Among other things, this should facilitate making use of wstring
  with gcc4.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 17:41:10 +00:00
Oliver Tappe
51c5e9f685 fixing #4031:
* added declaration of strtof() to stdlib.h, as we now provide it alongside
  with strtod()

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 17:33:30 +00:00
Stephan Aßmus
57bb0b9fcd * Added DataExchange message constants and server communication structs for
retrieving WriterPlugins and EncoderPlugins from the media_addon_server.
* Enabled respective code in PluginManager (and fixed the copy&paste bugs),
  the server side is still missing, though...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 16:35:37 +00:00
Stephan Aßmus
f3d79634e6 Beginnings of Encoder[Plugin] and Writer[Plugin] base classes and add-on
management.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 16:25:30 +00:00
Stephan Aßmus
3575ad0034 Small style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 16:24:00 +00:00
Stephan Aßmus
9d72a129c6 * Cleanup
* Added copyright.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 16:01:28 +00:00
Stephan Aßmus
ddcf2f7a64 Removed unused headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 15:54:56 +00:00
Stephan Aßmus
b1e235937a * Style cleanup.
* Added copyright.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31916 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 15:54:12 +00:00
Axel Dörfler
0d22b1a78c * Fixed copyright years, thanks Urias!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 14:14:08 +00:00
Rene Gollent
9fba8251e9 Since wchar support now works, the wstring typedef should now also be safe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 14:09:43 +00:00
Axel Dörfler
533cba7eff bonefish + axeld:
* Reverted r31809 as it introduced a race condition; if the I/O request had been
  notified, it could already been deleted at that point.
* Instead, we need to notify the request in each file system/driver that uses
  it. Added new notify_io_request() function that does that exactly.
* Added a TODO comment to the userlandfs where the request notification needs
  a bit more thought.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 12:16:15 +00:00
Axel Dörfler
c881516f65 * Accidently committed the wrong bash history line... these are the files that
were supposed to be deleted/changed with the previous commit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 01:31:19 +00:00
Axel Dörfler
d37f15ebee * Updated license header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 00:57:41 +00:00
Axel Dörfler
8ae594ffd4 * Introduced dedicated syscalls for the deprecated BeOS fs_attr API. Before,
each attribute access needed 3 syscalls, now only one as it should.
* Renamed the new Haiku call fs_open_attr() to fs_fopen_attr(), and added a new
  function fs_open_attr() that takes a path (same semantics as the
  fs_[f]open_attr_dir() functions already present in BeOS).
* Merged former _kern_open_attr(), and _kern_create_attr() into one syscall.
* Cleaned up vfs.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 00:34:44 +00:00
Ingo Weinhold
86e89f1207 Added BDebugEventInputStream::Seek() to seek in the stream. Works for data
buffer based stream only ATM.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 18:51:38 +00:00
Stefano Ceccherini
8752f52d71 Added an (empty) destructor. Use a const BRegion (since we can now), honour
the 80 column limit. Some comment clarification.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 16:56:29 +00:00
Stephan Aßmus
20f7be247e Actually, make B_PLAIN_BORDER look the default for simple separator lines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 15:48:51 +00:00
Stephan Aßmus
79f2db07a8 Implemented a BSeparatorView. It can be a horizontal or vertical line/border,
or also a label, optionally with a BView for the label. Some aspects of it have
not been exposed to throughrough testing, yet (archiving, label view),
the BAlignment support is also not well tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 14:15:55 +00:00
Stefano Ceccherini
2e6adc56e4 Added a _BPictureExtent_::Flatten(), moved some code from BPicture::Flatten()
into it. Renamed ImportData() to Unflatten(). Some code shuffling.
No functional change.
Some style cleanup needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 12:33:47 +00:00