Commit Graph

16439 Commits

Author SHA1 Message Date
Axel Dörfler
2fd8de2415 Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-26 16:40:38 +00:00
Axel Dörfler
c14a34a65f * Improved kernel ELF loader (and made it more similar to the one from the boot
loader): it now supports holes between segments, and accepts any segment order.
* Renamed elf.c to elf.cpp and fixed warnings.
* Renamed elf_image_info::dynamic_ptr and eheader to dynamic_section and elf_header.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-26 15:58:43 +00:00
Axel Dörfler
29e8a73a07 * No longer ignores the screen refresh limits from the driver.
* Now builds under R5, but looks ugly (for testing only).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-25 20:10:34 +00:00
Axel Dörfler
7a3806ce87 Now you can also select the refresh rate you like under R5. Looks like there is
room for improvements left in our screen preferences application, which ignores
the pixel clock values completely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-25 17:47:10 +00:00
Axel Dörfler
a796facf49 Filled the hole between 60 and 75 Hz for the refresh rates.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-25 16:48:24 +00:00
Axel Dörfler
690b893c1e * The saved screen position is now checked; if not at least 40 pixels of the
window are on screen in any direction, it will fall back to the default
  position (ie. centered on screen).
* Centering the window now takes an eventual screen offset into account.
* Cleanup, added license.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-25 16:46:20 +00:00
Axel Dörfler
943578b15b Added some debug output - the driver is actually working under R5 as well, I just
didn't test it correctly last time...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-25 16:29:02 +00:00
Axel Dörfler
e404297e56 Very basic driver for the "Intel Extreme Graphics 2" chips, only supports i865G for now.
Only mode switches do work, doesn't yet make sure the mode is valid, though.
At this point, this driver only works on Haiku, the R5 app_server is crashing for some
reason I need to investigate some day (maybe tomorrow :)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-24 21:46:40 +00:00
Axel Dörfler
342c2a73ab Improved debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-24 21:27:01 +00:00
Axel Dörfler
5ba2a3839d Improved the filter capabilities of the "ports", "port", "sems", and "areas" debugger commands.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-24 12:59:23 +00:00
Axel Dörfler
45fd48cd1e Fixed the build under Haiku, ie. corrected the previous macro.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-24 10:09:05 +00:00
DarkWyrm
0598d0bd05 Fix build under R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-24 03:55:43 +00:00
Stefano Ceccherini
7abe70f1b4 Hopefully cleaned up a bit the locking in BMenu::_show()/_hide()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-23 15:33:28 +00:00
Axel Dörfler
cfa91cc4cb * Reverting the screen mode now reverts to the one applied last, not the
one that was active when the application was launched (which was lost
  on workspace change, anyway).
* Fixed on-screen centering of the AlertWindow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-23 15:17:54 +00:00
Axel Dörfler
c5d80d47d8 * Changed the signature of "Backgrounds" to follow how those signatures
are supposed to look like.
* Fixed Screen to have the correct signature for Backgrounds (had the
  one from Be before).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-23 15:11:07 +00:00
Stefano Ceccherini
68ead3ea06 BLooper uses a benaphore style lock, should save some cycles. I hope this wasn't left out on purpose
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 21:56:31 +00:00
Stefano Ceccherini
37cf3d970d Avoid attaching a menu to the BMenuWindow when not needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 21:07:35 +00:00
Stefano Ceccherini
b781587aff BMenuItems are invoked if needed when they are child of a menubar. Fixes bug 343
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 20:52:25 +00:00
Stefano Ceccherini
b80eb9d443 Partially reverted axel's change, because it brings more troubles than benefits (menus lock when they reuse the supermenu's menuwindow). I'll try to resolve the various problems in another way. Some cleanups
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 20:47:52 +00:00
Stephan Aßmus
2297a36b5b * added functions to improve binary compatibility with old apps
-> Guido (for which there is source available though) is now
  running fine on Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 20:33:02 +00:00
Rudolf Cornelissen
2a898ff7a5 finalized docs for 0.74 release
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 18:59:39 +00:00
Axel Dörfler
8d4005f236 * Added Travis Geiselbrecht for his NewOS kernel.
* Moved Adi Oanca and Matthijs Hollemans to the list of contributors, as they are
  no longer active developers.
* Moved Michael Lotz to the list of active developers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 12:55:31 +00:00
Axel Dörfler
32379481e3 Added Bryan Varner to the list of developers in anticipation of things to come :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-22 12:08:29 +00:00
Axel Dörfler
e87965deed * Fixed a possible crash when removing and adding items from a window.
* This does not yet close bug #233, but could also be a reason for this crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-21 17:49:42 +00:00
Stefano Ceccherini
7a2c9b35cd Reverted to r16487 due to various problems. I'll recommit the code once it's fully working.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-21 16:06:46 +00:00
Axel Dörfler
8c86105b9a If you still think this is informative, just have a look in the SVN history :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-20 23:35:25 +00:00
Stefano Ceccherini
ebaeaa1224 BMenu::InvalidateLayout() now just marks the cached layout as invalid, instead of recalculating it. This results in less computations. Reorganized the layout calculation due to that. Now it's done once in AttachedToWindow(), and in Draw(), only if needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-20 21:49:11 +00:00
Stefano Ceccherini
65b4fb8ab1 Check if alt is the command key on BMenu::AttachedToWindow instead of doing it for every BMenuItem::Draw()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-20 20:20:29 +00:00
Marcus Overhagen
b1e7bed203 made interrupt flag volatile
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-20 19:37:01 +00:00
Marcus Overhagen
f7c354d7ee not sure if this helps: when the file end is reached, playback should be stopped.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-20 19:28:03 +00:00
Marcus Overhagen
c572fade42 Rewrote playsound, it now uses BFileGameSound
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16844 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-20 17:44:35 +00:00
Stephan Aßmus
4ec7e19751 * fixed filling B_CMAP8 bitmaps with white (255 was the wrong
color index)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 22:35:20 +00:00
Stephan Aßmus
d7e9392e25 forgot I made this change... added locking to
the lookup of a cursor


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 22:34:05 +00:00
Stephan Aßmus
8e56a3ff2e * some cleanup (removed unsued functions, regrouped others)
* FillRect() doesn't use the HW acceleration if the rects
  are too small (< 100 pixel area, about the sweet spot on
  my box) -> the same change should be used for FillRegion as
  well. (4x speed up of rendering large amounts of small rects)
* replaced dynamic allocation and freeing of blit_params and
  fill_rect_params in the accalerant based HWInterfaces on the
  heap with caching to make using the accelerated functions a
  little less expensive
* fixed a bug in bypassing Painter for B_OP_OVER when the
  pattern was B_SOLID_LOW (nothing should be rendered)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 22:33:00 +00:00
Stephan Aßmus
af3ac4e80f replaced usage of floor() and ceil() to convert from
BRect to clipping_rect with simple C casts. I think this
is more adequate, since clipping_rects are used for
pixel indices. This change fixes some graphics problems too,
it appears that cursor coords are fractional on Haiku, even
with a normal mouse. In Playground, this resulted in the
hit points being rendered wrongly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 22:26:17 +00:00
Axel Dörfler
5eae27a4d0 Fixed ValueForPoint() to correctly limit the value to the slider bounds.
This fixes bug #294.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16839 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 21:42:29 +00:00
Axel Dörfler
db823da57e * Even though our current heap is a temporary solution, the heap size depends
now on the amount of memory installed in the system. Ie. if you have only
  128 MB the kernel heap will be only half in size.
* Minor cleanup in vm_page.c, renamed some variables to match our style guide.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 15:02:21 +00:00
Axel Dörfler
93c49610b5 Improved error output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-19 14:34:21 +00:00
Axel Dörfler
bd3c41fe37 Stripped down the fake_app_server a bit more, so that breaking the build
while working on the app_server should less likely happen - hopefully.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 20:53:06 +00:00
Axel Dörfler
99d94ad2e0 Added fegetround() and fesetround(), disabled special SSE support for the latter, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 20:32:17 +00:00
Axel Dörfler
5f0bf2a3e1 We now track how many pages are in a vm_cache. Therefore, the area_info.ram_size
now reflects the number of pages in the areas cache, instead of just the size of the
area.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 20:17:31 +00:00
Axel Dörfler
bc9902cf98 Implemented freeing of blocks, though it's not very efficient yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 18:37:37 +00:00
Axel Dörfler
16c7939643 Somehow svn messed up my local copy and didn't let me commit this before (needed
to checkout private headers again).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 16:49:24 +00:00
Axel Dörfler
16ed1e1d15 * Removed headers/private/servers/app - everything is in src/servers/app now.
* Removed DisplaySupport.h, wasn't needed anymore.
* Removed private color set functions from InterfaceDefs.cpp - we might want
  something similar, but definitely not like that.
* Minor cleanup, added some missing licenses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 16:42:14 +00:00
Axel Dörfler
38a6ea1d98 * Removed the old AS_AREA_MESSAGE stuff - it's currently not used at all, and
even though we might need something similar, we can't use it (since it was
  based on BGet++).
* Removed BGet++, it's not used anymore.
* Removed ServerMemIO class, was never used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 15:59:23 +00:00
Axel Dörfler
0476838149 The test environment should now build okay again, as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 15:48:12 +00:00
Axel Dörfler
c7c61938c0 We should delete our server memory as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 15:31:29 +00:00
Axel Dörfler
d3b71f5562 Who said I couldn't break the build?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 14:43:29 +00:00
Axel Dörfler
9a44fdc97c * Implemented a new client allocation method: instead of having all bitmaps of
all teams in serveral server areas, and instead of having to eventually clone
  them all several times in BBitmap, we now have one or more areas per team,
  and BBitmap will only clone areas once if needed. As a side effect, this
  method should be magnitudes faster than the previous version.
* This method is also much more secure: instead of putting the allocation
  maintenance structures into those everyone-read-write areas, they are now
  separated, so that faulty applications cannot crash the app_server this
  way anymore. This should fix bug #172.
* Freeing memory is not yet implemented though! (although all memory will
  be freed upon app exit)
* There are now 3 different bitmap allocation strategies: per ClientMemoryAllocator
  (ie. via ServerApp), per area (for overlays, not yet implemented), and using
  malloc()/free() for server-only bitmaps.
* ServerBitmap now deletes its buffers itself.
* Cleaned up BBitmap and BApplication a bit.
* The test environment currently doesn't build anymore, will fix it next.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 13:43:26 +00:00
Axel Dörfler
66b7a0f477 Renamed the _kern_init_heap_address_range() syscall to _kern_reserve_heap_address_range()
and made it more powerful.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16825 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 12:52:01 +00:00