Commit Graph

11907 Commits

Author SHA1 Message Date
Ingo Weinhold
1bd7e1b36c Fixed stupid mistake. RUN_WITHOUT_APP_SERVER is to be set when it is NOT yet set.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12243 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 23:19:42 +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
b8a9276a89 Simplified the include paths by fine-tuning what is included.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 21:47:36 +00:00
Ingo Weinhold
f3eaafc2f5 Include the thread ID in the debug output of thread_atkernel_exit().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12240 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 21:44:57 +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
Jérôme Duval
3a2b5bfc6d * don't rely on fchdir-stub.c anymore to provide fchdir as we support it
* #undef DEBUG in plib/physmem.c to avoid debug code
* comment out #define mktime rpl_mktime, don't know why it wasn't detected
* now links mv, chown, chgrp, rm, chmod, du, mkdir, pwd against libroot.so for fchdir



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 19:33:37 +00:00
Axel Dörfler
8c6be7fa23 Changed some odd strings, added missing ones.
In case of an unknown error, it will now also take the error base definitions
into account (ie. it could return "Unknown Application Kit Error (x)").


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 19:25:21 +00:00
Stephan Aßmus
30f5afc8a9 I'm keeping the version which can be used as a BView replacement here. The API for the one used in app_server will change for it to be come more efficient.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 17:47:41 +00:00
Axel Dörfler
d3ff9cc39a The boot menu no longer changes the meaning of the default video mode once
you choose it in the menu.
The boot loader now always switches into a graphics mode unless it's in
debug mode (currently triggered by pressing the escape key on startup).
That means, "Standard VGA" now actually means mode 0x12 (640x480x4)
instead of text mode.
Since the current limited boot logo code would do stupid things with VGA
planes, there will now only be some colored blocks visible during boot.
Implemented support for monochrome modes in the frame buffer console.
Additionally, the frame buffer console now has support for the VGA mode; it
will treat all 4 bit modes as monochrome for now (the VGA 0x12 mode is a
planar mode so this works nicely).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 16:56:18 +00:00
Axel Dörfler
56aa0c51dc _user_get_safemode_options() would touch the provided buffer even if there was
an error (and thus, would trash it).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 16:15:02 +00:00
Axel Dörfler
4d5f980d99 The boot loader MMU can now also unmap/free memory - this is needed if the frame
buffer resolution changes during execution (ie. if the boot menu is opened late
and you change the video mode).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 16:10:09 +00:00
Axel Dörfler
8b618fc01c The mouse add-on got the meaning of COMPILE_FOR_R5 a bit wrong.
Now, it will always link against our libbe.so, so it might not work under
R5 anymore at all (which is okay since it can now be run natively).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 14:36:17 +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
311049d751 Added a new PartitionMap::CountNonEmptyPartitions() - now, a partition map
is only accepted when there is at least one valid partition in it.
Before, the module would accept even the BFS boot loader which is now less
likely (IOW you can now boot with Bochs again).
Also, if there was one invalid partition, the partitions that come after
it are no longer ignored.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 14:01:34 +00:00
Axel Dörfler
597c7235b9 Made the current debug stuff in our two keyboard drivers (one is used
by consoled by default, the other is used by the input_server) more consistent:
Now, F12 will get you into the kernel debugger. The escape key was somehow not
too happy with vim before :))


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 13:58:19 +00:00
Axel Dörfler
b31c89d6e3 elf_lookup_symbol_address() can now safely be called before elf_init() has been called.
This is helpful in getting a stack crawl during early startup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 13:40:10 +00:00
Axel Dörfler
0c2ca2f1bf shutdown() is the main kernel shutdown function that also syncs disks, etc.
It cannot be called with interrupts off, and is likely to fail in the debugger;
arch_cpu_shutdown() reboots the machine directly which is what we want here.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-04 13:38:31 +00:00
Andrew Bachmann
6e061f37b4 document and support both -h and --help for help
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-03 00:53:23 +00:00
Andrew Bachmann
1c7379cd43 remove annoying warnings provoked by echo headers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-02 23:56:22 +00:00
Andrew Bachmann
1f13471244 support -h in addition to --help for help
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-02 22:18:07 +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
7cac40a1f2 A tiny cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 14:24:19 +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
Axel Dörfler
eb2068515f This fixes the build again; due to the glibc includes, math.h would not
be used from posix/math.h but some glibc headers. This is not nice, but
it works.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 13:12:19 +00:00
Stephan Aßmus
8940f93c1d AccelerantHWInterface now uses a MallocBuffer as RenderingBuffer for the back buffer instead of a BitmapBuffer, which under Haiku does not work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 10:36:23 +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
Michael Lotz
3661cae99c Aren't these supposed to be chars?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 04:03:11 +00:00
Michael Lotz
69353f3c4c Added ColorControl.cpp to the build. Also enabled PrintJob.cpp again, it doesn't break anything, why was it disabled? Sample applications can now be compiled unmodified using libopenbeos.so.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 03:33:43 +00:00
Michael Lotz
20337f3165 Corrected reply handling of FlushWithReply in many places what should fix some strange bugs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 03:02:15 +00:00
Michael Lotz
54f7283aa0 Appearantly StrokeLineArray is used in BButton rendering.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 02:06:07 +00:00
Ingo Weinhold
c6ba97963c We didn't Unlock(), if setting the display mode failed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 01:11:38 +00:00
Ingo Weinhold
3aae5bd9a5 Added floorf() and ceilf() (from FreeBSD, style-adjusted). Needed by the Painter.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 01:10:42 +00:00
Ingo Weinhold
07f6a74c53 There is no <math_ldbl.h> at the moment, so we shouldn't include it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 01:09:43 +00:00
Ingo Weinhold
73d3cc98f6 Be a bit more robust, when encountering partition descriptors that
describe partitions that are out of bounds. We simply ignore those now,
instead of letting the complete scanning fail.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 01:07:30 +00:00
Axel Dörfler
929db8377e Minor tweaks to the menu.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 23:33:08 +00:00
Axel Dörfler
c1e0d8cf5e The safe mode options now actually do what they should do, ie. the
selected "/safemode/" options are now passed to the kernel.
Added help texts to some safe mode options.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 20:10:19 +00:00
Axel Dörfler
29150acff7 console_set_cursor() now clips to screen size. This actually works around a
possible compiler bug that exposes with -O2 only.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 20:06:31 +00:00
Axel Dörfler
207fb0b1ea Fixed _user_get_safemode_option(): the bufferSize passed in got overwritten
with the number of the actual string length, but it was still used for a
subsequent user_strlcpy() to the user buffer - therefore, it cut off one
byte from the result string.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 19:32:50 +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
Axel Dörfler
b58f01cef7 Fixed the buggy hoard lock implementation:
- we must not use static C++ locks: the heap is initialized before the
  global constructors are called which means that our sLockList was
  initialized twice, and lost all locks added inbetween
- *but* the lock implementation was completely wrong anyway: Hoard used
  to allocate superblocks, but it never freed them - instead, their memory
  was recycled when their time came. That caused semaphores to be in fact
  thrown away, but also corrupted the lock list
- I've now implemented the locks like they are implemented in the other
  architectures supported by Hoard: via a spinning (busy waiting) lock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 19:18:37 +00:00
Axel Dörfler
d3be3f2cb1 The open_count/close hook stuff is now (hopefully) finally correct:
- vfs_exec_io_context() did not close descriptors
- no variant of dup() did increment the open_count

This allows "VARIABLE=`command`" bash lines to work again.
Removed redundant PRINT() macro from fd.c.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 17:22:33 +00:00
Adi Oanca
c737183da9 Updated test app as app_server clears the BViews' background color now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 16:51:07 +00:00
Adi Oanca
a2bc7be9ed This fixes up the last known remaining issues with the update code. It works perfectly now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 16:48:51 +00:00
Adi Oanca
9f7e77bd63 Forgot a warning message
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 16:39:18 +00:00
Adi Oanca
52bd978684 Send only one AS_BEGIN/END_UPDATE message, not for every view
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 16:36:34 +00:00
Jérôme Duval
a39f4c6365 updated version info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 15:43:58 +00:00