Stephan Aßmus
2762b0cecd
Work in progress... improvements on font stuff, reverted to using Painter to get the string width. Since it actually uses glyph caching, it is about 20 times faster than the implementation in ServerFont (and a about twice the time as R5). I added a StringWidth method to Painter and AGGTextRenderer which works as correct as ServerFont::StringWidth, which btw was broken, because I mixed up glyph count and byte count...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-20 19:52:38 +00:00
Stephan Aßmus
38c5a7b7fa
Implemented StringWidth in ServerFont, updated ServerApp to use it, and removed a -1 from TextView in the char location calculation, which I didn't understand and without which the cursor location and related stuff now finally work.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-20 17:36:55 +00:00
Stephan Aßmus
9962b67e5f
DisplayDriver::DrawBitmap() takes no more region, the clipping is expected to be already set, as with all other drawing functions. Moved bitmap drawing message dispatching in the drawing messages area, where the correct clipping is set too. Moved cases for messages that don't need clipping applied, ie which don't draw anything, into the normal dispatch function. This means SetHighColor() and so on will no longer rebuild the clipping in Painter. Would be interesting to know how much performance this had cost...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-20 00:09:59 +00:00
Andrew Bachmann
42b25a64ad
for libroot's trig functions we need PI2 = 2*pi, so undef the math definitions. this affects only this private header (trig.h) and the files that include it from libroot (sincos.c, tan.c). fixes sin/cos/tan problems.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 21:39:36 +00:00
Axel Dörfler
c1fc0493cb
Added missing wctype.h header - R5 does not include this header, but its
...
libroot.so exports the functions declared therein.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 15:02:09 +00:00
Axel Dörfler
62d6961672
Renamed vm.c to vm.cpp and made all the changes to let it compile without
...
errors. Also made the VM headers C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-16 23:17:45 +00:00
Axel Dörfler
4393552b4d
The heap is now located at 384 MB, and creates a reserved range that spans over the
...
following 1152 MB - that area only guarantees that the heap can grow this much before
the application need the memory for something else. And even then, the heap range
is reused from top-to-bottom, allowing for maximum heap usage. Of course, if the
memory after the heap range is not claimed yet, it can still be claimed by the heap,
too. Added new syscall to create the reserved range.
Fixed a bug in vm_delete_areas(): when it removed reserved areas, the area list
could get messed up.
Fixed a bug in resize_area(): resized areas could never be deleted (missing vm_put_area())!
resize_area() now supports reserved regions (but not perfectly yet, see ToDo items).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-16 22:15:13 +00:00
Axel Dörfler
a3e9996e9d
Added support for special reserved address ranges: they will be used
...
only if memory becomes tight, and then the range is used from end to
start.
This is useful to reserve heap address ranges.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-15 15:56:55 +00:00
Axel Dörfler
20a6e5473b
Renamed RESERVED_REGION_ID to RESERVED_AREA_ID.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-15 15:06:57 +00:00
Axel Dörfler
ccc8865ba2
Added an additional flag B_OVERCOMMITTING_AREA (currently to be specified
...
along the protection flags).
Changed the handling of B_STACK_AREA types and anonymous vm_areas: now
every area can overcommit if B_OVERCOMMITTING_AREA was specified.
B_STACK_AREA areas are still automatically overcommitting, but
B_KERNEL_STACK_AREA areas no longer.
vm_store_anonymous_noswap.c now only tests for guard pages if there were
any specified which is only done for B_STACK_AREA areas.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-15 15:03:44 +00:00
Axel Dörfler
d5b04e50f8
First step into a new block allocation strategy for the block_cache
...
(right now, it's still malloc/free, just encapsulated in an allocator class).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-13 18:18:28 +00:00
Stephan Aßmus
1db49f8a7a
added a function to count the bytes in a string if the number of UTF8 chars is already known
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-13 17:30:59 +00:00
Axel Dörfler
879d9c6b6e
Renamed the "blkman" module to "block_io".
...
Also renamed some defines and structures, although the structure and some other names are still odd.
This module should probably be moved into the kernel anyway, as it provides basic and crucial services.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 15:43:02 +00:00
Stephan Aßmus
9bdb0522c1
Implemented BFont::GetEscapments() float version. It is pretty rough yet, but appears to handle UTF8 correctly. The optional escapement_delta is currently ignored. I didn't touch other functionality too much, until I know more about it.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 15:09:30 +00:00
Rudolf Cornelissen
d4189794fe
more DMA 3D related engine command defines (completed).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 08:24:06 +00:00
Axel Dörfler
6094d89f2f
Merged branches/developer/axeld/driver_recognition changed r12307:12637 into trunk.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 03:27:44 +00:00
Rudolf Cornelissen
50fdc6cbe7
adding 3D DMA cmd offset defines: in progress.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-11 20:25:13 +00:00
Rudolf Cornelissen
e22e2de123
added new 'register'definitions needed for largest number of acceleration engine commands ever defined simultaneously (AFAIK) (3D DMA attempt).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-10 20:16:41 +00:00
Stephan Aßmus
f6f44f5538
incorporated fix from AGG mailing list, the problem only showed on Sun hardware though...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-10 11:34:26 +00:00
DarkWyrm
cd0ddd03fb
Added a code for the float version of GetEscapements()
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-07 16:44:06 +00:00
Stephan Aßmus
fbf48e6437
Enabled HW acceleration for CopyRegion(). Tested on Haiku and it works. I also implemented FillRegion and InvertRegion. But using different acceleration hooks after one another freezes Haiku, app_server, the accelerant or whatever. I have no clue about accelerants, so if a knowledgable someone would have a look at AccelerantHWInterface.cpp, that'd be great. The software cursor stuff has a cosmetical bug with regards to CopyRegion() too, I don't understand it yet. I also tried to improve StringWidth() and DrawString() preformance. I confirmed that the glyph cache is actually used, but AGGTextRenderer::RenderString() is a dog.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-04 23:48:19 +00:00
DarkWyrm
4a03616356
Added a StringWidth method variant
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-04 09:40:32 +00:00
Stephan Aßmus
dd3b1653a0
rearranged some functions, removed unused ones
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-03 21:50:14 +00:00
Stephan Aßmus
924b7ab22c
the clipping BRegion is now always allocated, added shortcut for determining if there is a valid clipping
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-03 21:39:03 +00:00
Axel Dörfler
b07ce77575
BDiskDeviceList now has a default value for the "useOwnLocker" argument - it defaults
...
to using its own locker.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-03 00:28:31 +00:00
Stefano Ceccherini
541a224df8
No need to include that stuff, a forward declaration will do
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:41:21 +00:00
Stefano Ceccherini
0405ef356f
Added AS_SCREEN_GET/SET_MODE
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:28:53 +00:00
Axel Dörfler
d4112f6bc5
Applied some changes suggested by mmu_man, more to come, though:
...
- has_signals_pending() is not declared in Be headers, and it isn't declared in
our KernelExport.h anymore, too
- removed snooze_etc() from KernelExport.h, as it's already defined in OS.h
(and really exported by libroot.so).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 11:41:12 +00:00
Stephan Aßmus
db7226db9d
work in progress to get scrolling working, so Adi can have a look, no changes to existing functionality, cleanup in Layer.cpp
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 17:26:57 +00:00
Axel Dörfler
b20667b35b
{install|remove}_io_interrupt_handler() now correctly handle the B_NO_ENABLE_COUNTER flag.
...
Lots of cleanup:
- moved B_NO_ENABLE_COUNTER flag definition out of int.h to KernelExport.h, as it's
described in the BeBook (although it's probably not really used that often :))
- int.c no longer has any platform dependent code (+ 0x20 on interrupt numbers is gone);
it's now entirely handled in the arch/x86/ section.
- the io_vectors[] is now statically initialized, instead of allocated from the heap
- removed {install|remove}_interrupt_handler(); they weren't that useful, arch_smp_init()
is now calling install_io_interrupt_handler() correctly instead
- introduced a new arch_int.h header file that currently contains NUM_IO_VECTORS only
(though on x86, it also has ARCH_INTERRUPT_BASE == 0x20).
- changed the return type from {install|remove}_io_interrupt_handler() from "long" to
"status_t"
- rearranged and cleaned the PIC initialization code, made the PIC code more prominent
- changed comments that talk about a non existing 8239 (the PIC chip is actually 8259)
- moved arch/x86/interrupts.h to the source directory, as it's not used outside
- added BeOS compatible interrupts_enabled() function, that should replace our
equivalent (and private) are_interrupts_enabled()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 01:08:35 +00:00
Rudolf Cornelissen
9c3c151715
added second flag for 3D add-on indicating 2D modechanges
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:48:41 +00:00
Stephan Aßmus
93a2cfd43c
Correct implementation of BView::CopyBits() in ServerWindow, implementation of CopyRegion in DisplayDriverPainter that sorts the rects topologically depending on direction and does the copy in place, obtaining a speedup of about 250%. TODO: extract the sorting algorithm so that it can be reused for the hardware accelerated version later.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 13:50:34 +00:00
Adi Oanca
997865348b
added AS_ROOTLAYER_DO_CHANGE_WINBORDER_FEEL
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-21 18:56:53 +00:00
Jérôme Duval
875d858766
added a tablet_movement struct
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 21:53:21 +00:00
Stephan Aßmus
ded5874ea2
Implemented changes necessary for single buffered mode, it is turned off for now, because the soft cursor is currently not being taken care of. We will still use double buffering if the screen color space is not 32 bits, too.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 09:27:15 +00:00
Rudolf Cornelissen
83d94df950
added a fixme note with regard to multiple 3D add-ons
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-19 18:37:22 +00:00
Stephan Aßmus
e742e3e106
refactoring and cleanup in LayerData and friends, it shows what I mean by "forced code paths" for example in coupled font size and view scale, added a couple TODOs, disabled decoupled frame buffer transfers, it is buggy and deadlocks for some reason...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-19 00:42:42 +00:00
Stephan Aßmus
387242437d
moved more old stuff which isn't used anymore
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12439 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 19:16:11 +00:00
Stephan Aßmus
3dea4bb659
cleanup the defines, move old DisplayDriver implementations out because they are currently unused and won't build
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 18:48:19 +00:00
Rudolf Cornelissen
300af26345
Added a flag indicating a modeswitch happened/is happening so the 3D add-on can block rendering and re-inits.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 11:26:37 +00:00
Jérôme Duval
5258e67dff
Courtesy of Olivier Coursiere (aka oco), based on documentation (feel free to check against real hardware)
...
Adds latests IDs from Intel docs
Adds some Sempron IDs
Renamed Athlon 64 to be consistent with Intel names
Adds IDs in cpu_type.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-17 22:46:08 +00:00
Stephan Aßmus
8877eb5444
sorry
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 15:32:21 +00:00
Stephan Aßmus
1e1b1675de
really implement BitsLength() inline, I have no idea why it compiled for me...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 15:31:57 +00:00
Stephan Aßmus
00802b496b
even more convenience functions
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 12:26:10 +00:00
Stephan Aßmus
0c926a191f
reuse DrawingMode instances
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 12:25:25 +00:00
Stephan Aßmus
18f3859aed
cosmetical change
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 11:53:22 +00:00
Stephan Aßmus
4da1508aa9
added convenience functions to PatternHandler and refactored the setting of the DrawingMode in Painter
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 10:20:53 +00:00
Stephan Aßmus
3d16cf4bce
Painter drawing functions now return the BRect enclosing all pixels that have changed, use this for invalidating the correct area in the backbuffer
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 09:55:15 +00:00
Stephan Aßmus
5e33f6e551
pattern is not passed to the drawing functions anymore, it is expected to be set in SetDrawData
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 08:53:28 +00:00
Stephan Aßmus
026470a78c
no more fOrigin and fScale in Painter, everything is now expected in absolute (screen) coordinates
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 08:37:52 +00:00
Stephan Aßmus
17360617d2
fixed a really lame bug in the StrokeLine call that caused all these problems with line drawing and or invalidation afterwards, avoid transforming the clipping region into another format used by AGG by using a special BRegion based renderer
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-15 08:15:04 +00:00
Stephan Aßmus
a52667ee9c
added a comment about how it would be nice if ServerFont could be guaranteed to be valid (ie it doesn't crash if you call one of it's functions from outside code, I like it when a C++ class is an encapsulated object, maintaining a valid internal state, and whatever client code does, it should just never crash)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:22:01 +00:00
Stephan Aßmus
ec668ad701
Cosmetical changes and quite a few bug fixes along the way - B_RGB24 is definitely not supposed to be 32 bits per pixel. For example. Added another constructor to take on bitmap data from somewhere else
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:06:01 +00:00
Stephan Aßmus
9afc50fd98
cosmetical changes and some bug fixes along the way, added another constructor to take on bitmap data from somewhere else
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:04:26 +00:00
Axel Dörfler
3e15f83d9e
Added a BenaphoreLocker.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 22:40:48 +00:00
Stephan Aßmus
1f9c8f7df0
I must compile before I commit. I must compile before I commit. I must compile before I commit...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 19:38:25 +00:00
Stephan Aßmus
4c90b41029
If you don't declare the destructor virtual in the base class, you will leak memory and the destructor of an inherited class might not be called at all. Removed unnecessary comments. Enhanced readability, because I felt like it...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 19:31:24 +00:00
Axel Dörfler
29b949de52
GCC 3 conforms to ISO-C-99 so _Bool is a built-in type; we should not try to redefine it.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 16:51:55 +00:00
Axel Dörfler
92ec9b2fbc
Added our old "new" header again, as I can't build anything without it under Linux (PPC and x86).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 16:50:25 +00:00
Michael Lotz
4ce3301a57
This should now actually fix the recursive lookup of the net_stack_driver. We must only load the networking core once.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 14:19:20 +00:00
Axel Dörfler
ef2b38e7a9
Added a simple ring buffer implementation to be used by the mouse
...
and keyboard drivers, as well as pipefs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 12:57:42 +00:00
Stephan Aßmus
6697162d5c
just a slightly more robust default font handling... should now work on Haiku even if you didn't install fonts from BeOS.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 13:15:38 +00:00
Stephan Aßmus
643d10bb64
Added a big TODO comment, StrokeLine takes now non-const DrawData.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:28:25 +00:00
Axel Dörfler
f80b1fa5b5
Moved the kernel_startup variable declaration from int.h to kernel.h (it's defined in main.c).
...
Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 06:09:13 +00:00
Michael Lotz
8dfbc5e088
Prepare for native installation on Haiku. The net_stack is located under dev/net_stack to avoid recursive lookup, the network core is at add-ons/kernel/network instead of obos_network.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-11 19:37:09 +00:00
Adi Oanca
08bd2fdfa2
added AS_ROOTLAYER_WINBORDER_SET_WORKSPACES
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-10 18:48:48 +00:00
Michael Pfeiffer
68ca240b53
Added missing comment.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-09 17:09:08 +00:00
Axel Dörfler
a5ff23c727
Moved the vesa.h and vga.h headers to the private vesa driver header directory
...
for future use.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-08 15:14:32 +00:00
Axel Dörfler
93ee21046d
Added very basic VESA driver. Will be improved in the future (right now
...
it doesn't really do anything, it just passes the initial frame buffer
on to the app_server).
While it seems to work on real hardware (if you set the video mode to
640x480x32, app_server restriction), under Bochs, the app_server crashes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-08 15:11:32 +00:00
Axel Dörfler
219dacab3c
Changed our read link syscall and FS interface call to make it easily possible to be POSIX compliant.
...
Also changed readlink() to be POSIX compliant with those changes.
"ls -l" does now resolve links properly again (the new coreutils version outlined the problems).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-06 16:07:10 +00:00
Axel Dörfler
bc440dcb46
No longer used.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-05 14:09:08 +00:00
Axel Dörfler
ec5a9998df
Added a B_NOT_SUPPORTED synonym for EOPNOTSUPP.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-05 13:56:16 +00:00
Axel Dörfler
f05e261fd7
The VM can now ask the platform dependent part if it supports a specified protection.
...
create_area() and friends should fail if it's not supported.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-05 13:50:37 +00:00
Axel Dörfler
ae614d48fc
Some minor cleanup.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 23:00:48 +00:00
Ingo Weinhold
8e26b085e5
Fixed double fault handler. Personally I disclaim all responsiblity
...
for these changes. I was mostly just staring in amazement at the screen
while Axel and Thomas were discussing IA32 internals. A particularly
fascinating moment was when Thomas produced the cause of a bug we had
been trying to track down for hours off the top of his head (of course
iret behaves specially when the NT bit is set :-). His slowness must be
excused though, since he hadn't slept for more then 30 hours. ;-)
The code doesn't wholeheartedly deal with multi-processor machines yet.
Axel will certainly do some cleanup...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 21:43:47 +00:00
Axel Dörfler
e5b0e0b5e3
Changed the set_segment_descriptor()'s usage of the limit/granularity
...
flag. Now, it will choose how to set the granularity by evaluating the
limit.
This call was actually already used this way in the kernel, so that
the TLS and TSS segments were much too large (harmless but incorrect).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 14:34:18 +00:00
Axel Dörfler
9d06770cdc
The iframe stack is now in a special structure iframe_stack.
...
Introduced a gBootFrameStack that is used until the first thread structure
is available - this allows stack crawls and useful register dumps during
early startup. Could also be solved differently by making sure there is
always a thread structure installed in %dr3 (ie. the boot thread would
get a static thread structure instead of a static iframe stack only).
This might be a better solution as i386_handle_trap() would no longer
need to check for an existing thread structure.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 14:13:25 +00:00
Axel Dörfler
edb5566393
Fixed struct tss; there is no ss3/sp3.
...
Moved ptentry/pdentry to arch_vm_translation_map.c and renamed them to
page_table_entry and page_directory_entry.
Fixed a race condition that happened when memory was remapped (which
can currently happen because lock_memory() does not work correctly, and
there might be other conditions as well, like certain vm_store fault
handlers). Now, page table and directory entries are updated atomically.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 14:07:24 +00:00
Axel Dörfler
d305ab35ac
Added the get_boot_item() call similar to what BeOS exports (have a look at
...
the APM driver to see it at work).
The frame buffer console now creates such a boot item to give a potential
VESA driver access to the boot frame buffer configuration.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 15:09:09 +00:00
Axel Dörfler
e02e12de8a
Updated radeon driver to the latest BeBits release 5.1.0.1.
...
Probably only works under Haiku due to the new area flags.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 14:16:38 +00:00
Michael Lotz
7d5778defa
Added support for GetEscapements() too. Still unfinished. Maybe this should be moved elsewhere?
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 09:18:25 +00:00
Michael Lotz
c2da902f2e
Implemented BPortLink::AttachShape and BPortLink::ReadShape and used them for passing the shapes in AS_GET_GLYPH_SHAPES.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 07:29:04 +00:00
Michael Lotz
ebf8af66c9
Added support for BFont::GetGlyphShapes. Not finished yet and untested, delivery method as to be changed.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 07:00:32 +00:00
Axel Dörfler
914c87ccea
No longer defines ENABLE_INPUT_SERVER_EMULATION if DISPLAYDRIVER is set to HWDRIVER.
...
Added a ToDo comment about the forgotten find_directory().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 19:29:57 +00:00
Stefano Ceccherini
370ca4b97c
Corrected forward declaration
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 15:21:34 +00:00
Axel Dörfler
2d7ad656ec
Added "Disable IDE DMA" safemode option.
...
MenuItem::SetData() now asks for a const parameter.
The safemode menu options now set their MenuItem::Data() to the safemode option string.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 15:16:09 +00:00
Ingo Weinhold
d832aa7efc
We must just the same naming as in DiskDeviceTypes.cpp for the intel partition types, since the implementation relies on it.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 11:22:02 +00:00
Stephan Aßmus
a356096dba
massive performance improvements. On my ancient 2xPII 350, the DisplayDriverPainter with the ViewHWInteface is pretty much usable now. It could be even better if app_server culmulated update requests more.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 10:46:02 +00:00
Michael Lotz
bb72ccac74
The Painter now uses a special version of the agg_font_engine that uses the FontServer ftlib and the already loaded FT_Facees from ServerFont/FontStyle instead of doing it all again.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 06:08:37 +00:00
Stephan Aßmus
15b391f607
more correct implementation, forgot header again
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 22:24:40 +00:00
Axel Dörfler
9f90fa0e3a
Introduced new B_KERNEL_AREA_FLAGS and B_USER_AREA_FLAGS that can be used
...
instead B_KERNEL_PROTECTION and B_USER_PROTECTION.
Unlike before, B_USER_CLONEABLE_AREA is now only in B_KERNEL_AREA_FLAGS,
but no longer in B_KERNEL_PROTECTION. This fixes a couple of problems
when B_USER_CLONEABLE_AREA was defined without specifing read/write
access.
PAGE_PRESENT|MODIFIED|ACCESSED are in the same "namespace" as the
protection flags, and therefore, shouldn't overlap.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 06:34:17 +00:00
Stephan Aßmus
d01b623805
some improvements to font handling, but Miniterminal still renders only black blocks
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 23:42:52 +00:00
Stephan Aßmus
0cabce17c3
fixed some font related problems, Painter should now rely on the app_server font manager. maybe I fixed some compile problems too. Sorry if that was the case.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:58:09 +00:00
Stephan Aßmus
127b4b0a4b
moved more of the old stuff from DisplayDriver into DisplayDriverImpl
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:22:44 +00:00
Stephan Aßmus
e33b8950a0
removed const declaration to allow locking in DisplayDriverPainter, as I think access to this needs to be serialized
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:00:48 +00:00
Stephan Aßmus
a91f954cd8
this does not belong here
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:00:21 +00:00
Michael Lotz
bccfa80b9b
Changed radeons memory manager to use areas instead of malloc. Now the radeon.driver should work without hacking the kernel heap bigger.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 21:09:05 +00:00
Michael Lotz
9775bf33cf
TEST_MODE is now disabled on Haiku too. So app_server is not a BApplication anymore and doesn't depend on itself.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 19:49:55 +00:00
Axel Dörfler
74bc93bf37
DISPLAYDRIVER can now be overridden by a previous definition.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:57:50 +00:00
Stephan Aßmus
0985210969
added this very useful compare function
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:30:46 +00:00