Rudolf Cornelissen
e09808e0d4
added some register info I found out concerning 2D and 3D surfaces, useable as backup if programming doesn't work via the FIFO (PIO mode) or cmd buffer (DMA mode).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-28 11:35:42 +00:00
Adi Oanca
67c26792aa
Added some support for WinBorders. support B_DOCUMENT_WINDOW_LOOK remains to implemented as the border in this case overlaps the white view area with the resize box
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-28 08:53:19 +00:00
Adi Oanca
1afd64e8b1
Added some support for WinBorders. support B_DOCUMENT_WINDOW_LOOK remains to implemented as the border in this case overlaps the white view area with the resize box
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-28 08:51:09 +00:00
Axel Dörfler
2724858b5b
Added global app_server port, so that other parts of the server don't have
...
to search for it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 13:36:05 +00:00
Axel Dörfler
a4ad43aa83
Fixed some more cases of "error != specific error ==> everything alright, then".
...
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 13:34:52 +00:00
Stefano Ceccherini
5e9441bed9
Removed leftovers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 10:57:25 +00:00
Stefano Ceccherini
6af8fc0973
Added a TODO item with the possible solution to a bug (which I can't verify at the moment), improved error checking.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 06:34:20 +00:00
Axel Dörfler
140e3bb026
Instead of the ugly and unnecessary cookie union, we now have a cookie for
...
opened devices, and one for opened directories.
Also adds and removes those directory cookies correctly now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 00:43:01 +00:00
Axel Dörfler
b716c3307f
Removing the cookie must be locked as well, of course.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 00:41:00 +00:00
Axel Dörfler
7c17001c77
Implemented BPartition::GetPath() much like KPartition::GetPath().
...
The "mountvolume" command can now actually mount file systems :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 20:44:33 +00:00
Axel Dörfler
96cfeb706a
Now prints "<unknown>" as the name of unrecognized file/partitioning systems.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 20:13:33 +00:00
Axel Dörfler
b674940baa
No longer shows "<unnamed>" for partitioning systems that have no name.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:58:36 +00:00
Axel Dörfler
0f04de87a7
The directory cookies of open directories are now correctly maintained and
...
removed when no longer used (the same bug is still present in devfs, btw,
and can potentially cause crashes).
Cleanup of the cookie code, it's now using util/list.h.
Now issues B_STAT_CHANGED notifications when directory entries changed.
rootfs_rename() was completely broken for "inter-directory" movements.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:56:41 +00:00
Rudolf Cornelissen
b602e341ca
added bool for engine AGP/PCI transfer selection to shared_info
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:50:58 +00:00
Rudolf Cornelissen
0188d8661e
added shared_info flag to assess PCI or AGP mode. Engine (if in DMA mode) selects PCI or AGP transfers accordingly (pre-NV40 only for now). It seems the combination of the 1Mb cmd buffer size and it being in main mem makes it all fast. (1Mb in gfx card remains at same speed at 32kb.). Maybe we can even use AGP engine transfers for placing textures on the gfx card in the future: who knows.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:49:18 +00:00
Jérôme Duval
50461e314f
added top
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 15:22:15 +00:00
Axel Dörfler
d7c08b7d2e
Tried to make the ServerApp aware when a client dies: the main communication
...
port is now transferred to the client, so that it goes away automatically.
Unfortunately, this doesn't seem to work. This code is truly a big mess :-/
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 15:06:31 +00:00
Axel Dörfler
280d1aac5b
Tried something, didn't work, some cleanup left.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 15:04:45 +00:00
Rudolf Cornelissen
1e7ae0559f
forgot to tell the DMA cmd fetch engine it may write-back as well as read. Seems to not have influence on speed, as expected I'd say. Anyway: just tried enabling AGP transfers for cmd fetches: that actually works over here!. I just saw GLteapot spinning at over 400fps because of it. Note however that this doesn't mean we can reach that speed with a local DMA command buffer: the real reason for the higher speed might be the large size (1Mb compared to 32kB). testing some more..
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12844 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 14:38:09 +00:00
Rudolf Cornelissen
5b5ef87b84
on pre-NV40 I have activated the main mem DMA command buffer at size = 1Mb. It's working OK and is way faster on TNT1 (using the local-DMA-via-mainmem workaround) - of course. For all other cards however (so which have working local DMA command buffers) the mainmem implementation is actually a bit slower, and places a higher burder on the bus slowing down 2D a lot when 3D maxes out. All in all, I am not sure this is the way to go. It might be best to make this all a switch for nv.settings, disabled by default. Still testing... (Curious how AGP transfers will do - if possible, currently using PCI transfers)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 14:08:36 +00:00
Axel Dörfler
0c7e8ef8f4
Renamed "cl" to fCurrentLayer.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 13:56:42 +00:00
Stefano Ceccherini
2a7798ca69
Fix unzip's build after byteorder.h removal.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 12:09:17 +00:00
Axel Dörfler
8cd812c172
Forgot to uncomment this line: the "depth" argument of the vesa file is now also
...
evaluated, so that you can specify something different than 8 bit in there.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 12:05:31 +00:00
Axel Dörfler
028aae6c9c
Another improvement of the debug code - it seems to has a different cause than I thought.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12839 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 12:02:29 +00:00
Rudolf Cornelissen
e8f7b5623e
updated shared_info once more for DMA cmdbuffer in main mem.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 11:42:16 +00:00
Rudolf Cornelissen
37dd6ec29e
updated kerneldriver again for DMA cmdbuffer in mainmem: added MTRR-WC mapping now. Actually copying some stuff from Thomas :-), interesting read. I'll try to go without further cloning of that DMA area for now. (learning..)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 11:41:33 +00:00
Rudolf Cornelissen
395332ac33
small update to keep accelerant working with already modified kerneldriver and shared_info for mainmem DMA buffer.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 11:38:35 +00:00
Axel Dörfler
b82b759368
Additional debug stuff in order to have the power to fix an annoying bug
...
(mostly happens in the kernel debugger). Not tested, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 10:39:12 +00:00
Rudolf Cornelissen
9c9a94038a
modified shared_info for mainmem DMA command buffer use.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:31:12 +00:00
Rudolf Cornelissen
8d87804ed6
added creation of 1Mb DMA command buffer in main mem. Hopefully this will further speedup DMA acceleration when finished in accelerant.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:30:20 +00:00
Rudolf Cornelissen
8e02d400d1
added global var for DMA command buffer area clone in mainmem.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:28:38 +00:00
Axel Dörfler
e5b4782b4e
Made some necessary enhancements to class Screen; the app_server also
...
has to care about refresh rates. Also changed Screen::GetMode() (formerly
Resolution()) to return all interesting values, so that hopefully no one
will call it anymore like RootLayer::SetScreens() did.
Greatly improved the horrible RootLayer::SetScreens().
The app_server is now able to deal with failing HWInterface::SetMode() calls;
in this case, it will fall back to the hardware's current mode. This now
also works correctly in combination with the vesa driver, so that you don't
have to compile the app_server with the same resolution you boot in anymore.
SetMode() now always returns if it succeeded or not.
Renamed RootLayer::fScreenXYResolution to fScreenWidth/Height respectively.
Removed the useless DisplayDriver::DisplayMode() method.
Added B_GET_DISPLAY_MODE to the required accelerant hooks.
Some minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:21:51 +00:00
Axel Dörfler
18b6200e54
Enlarged the kernel heap to 16 MB.
...
This will keep it alive longer until a) the block cache no longer
uses the heap, and b) we get a better heap without a fixed size.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:11:30 +00:00
Axel Dörfler
d260b2c469
Made the header C++ safe.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:08:54 +00:00
Axel Dörfler
5cc1406383
The libfs_shell.a is no longer built with DEBUG turned on by default.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 08:24:00 +00:00
Axel Dörfler
09b83e5cec
Removed the obsolete byteorder.h header (it just included ByteOrder.h).
...
Fixed the remaining references to that header in our repository.
Note, this might break source compatibility - please update your sources :-)
Slightly converted UBS_audio_utils.c to use our style guide while I were at it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 08:12:59 +00:00
Axel Dörfler
69aaf3f39b
Fixed some stupid problems with the stat::st_mode field; the type of
...
a node was not always correctly determined (or set) - the recent change
of the attribute (directory) modes made these bugs a bit more obtrusive.
This also fixes a drop to the kernel debugger when doing a
"zip -r config.zip config/" in the home directory, as reported by Korli.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 08:09:27 +00:00
Axel Dörfler
a9d0f0e576
Fixed a minor bug in the file system check code: it was not always correctly
...
determined if the parent directory had the wrong type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12825 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 08:06:30 +00:00
Axel Dörfler
fa7ec9d4e9
FATAL() now does a sync() before it panics, so that the on disk data
...
is up to date for later inspection.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 08:02:07 +00:00
Axel Dörfler
8bd36612dc
First try to get the boot logo displayed properly in all color spaces.
...
For some reason, the colors are wrong for anything but 8bit modes, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12823 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 07:47:19 +00:00
Axel Dörfler
bae7c12dba
bfs_read_link() did not report the correct link size (it did not take the
...
terminating null byte into account) - thanks to Korli for reporting this.
Inode::Create() will no longer publish symlink vnodes; instead, bfs_create_symlink()
will publish the link when it is complete (ie. the actual link data had been
written).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 02:05:44 +00:00
Axel Dörfler
1333009e1c
{rootfs|devfs}_read_link() did not report the correct link size on
...
success (they just kept the passed in buffer size unchanged).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12821 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 02:04:00 +00:00
Axel Dörfler
a460a8f084
More or less rewrote the heap wall stuff:
...
- it's now much cleaner than before
- it now actually works in combination with realloc() (the fix from before didn't work)
- got rid of the WALL_ALIGNMENT definition
- can now handle different WALL_SIZEs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 01:39:38 +00:00
Stephan Aßmus
d593ad8f06
added a little debugging facility for printing on-screen debugging info on Haiku. For those like me without serial debugging... also made RootLayer use the desktop background color.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 23:59:23 +00:00
Axel Dörfler
d85db27509
Screw source compatibility. Cleaning up the legacy.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 23:57:47 +00:00
Stephan Aßmus
74994d1307
added license headers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 23:47:05 +00:00
Axel Dörfler
da8c77faa3
The wall checking code now also works in combination with realloc(), and
...
it's a tiny bit cleaner, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:38:36 +00:00
Stephan Aßmus
55d6f1b792
Many efficiency improvements to text rendering. Moved stuff from Painter into AGGTextRenderer which didn't belong in Painter. AGGTextRenderer now has an embedded transformation, which expresses the font rotation and (in future) shear settings. Removed direct support for BBitmaps from Painter (supposed to draw ServerBitmaps). Tested drawing of bitmaps other than B_RGB32. (only B_CMAP8 and B_GRAY8 so far, but they work). Right now, these colorspaces are supported by on the fly conversion. So every colorspace supported by BBitmap::ImportBits() should work, which are a lot more than the R5 app_server can display.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:20:45 +00:00
Stephan Aßmus
85b226041a
Added B_BITMAP_NO_SERVER_LINK to the BBitmap flags. It constructs a BBitmap without a server link, which consequently cannot be drawn by the app_server, but which is nevertheless very useful. It essentially does the same thing as RUN_WITHOUT_APP_SERVER. I also added a CleanUp() function and moved the cleanup code from InitObject() there. CleanUp() is now called in the destructor, which means that the app_server now knows when to free the server side bitmap.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:10:20 +00:00
Stephan Aßmus
7c5f224338
fixed a possible segfault in an out of mem condition. Fixed build for Haiku, since libpng.a and libz.a are not build for Haiku it seems. Is there a specific reason to link them statically? These are system libs after all.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:04:34 +00:00