2597 Commits

Author SHA1 Message Date
Axel Dörfler
5ea23bb0a3 Removed platform_boot_device_is_image() again; it's now replaced by a field
"booted_from_image" in the kernel_args' boot_disk structure.
Also, added fields "cd" and "user_selected".
A CHOICE_MENU menu can now have a choice text - this is automatically updated
as entries in the menu get selected.
The boot volume menu now has the initial choice text "CD-ROM or hard drive"
in case the boot loader was loaded from an image. The "Rescan volumes" item
is no longer selected by default (only if there was no boot volume found) - but
it's still functionless anyway.
The TAR fs will now appear as "Boot from CD-ROM" in the boot volume menu.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-14 21:22:19 +00:00
Axel Dörfler
e3fcb58ebb The boot loader now has special support for being booted from a boot image
like floppy or CD boot.
This allows it to reduce the number of scans needed to identify the boot
partition - when booted from a real floppy, this speeds up the boot
process by a magnitude.
Also, the loader now has a fall back in case there were no "boot" links
on the disk - the current boot floppy script doesn't create them.
With these changes, I was able to boot into a HD based Haiku installation
from a floppy disk. It's not yet enough to boot from CD (as the boot
device selection is a bit too simplistic right now), but it will eventually
come next. Testing is a lot slower here, though, as neither qemu nor
Bochs support multi-session CDs (at least I have no idea how to get them
to do this).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-14 11:34:18 +00:00
Jérôme Duval
060d9206d9 added some netdebug and netconfig files
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-13 15:49:30 +00:00
Jérôme Duval
42848b0907 added index and rindex to libroot.so
R5 ftp and telnet commands now run on Haiku


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-12 13:05:03 +00:00
Axel Dörfler
83333bf237 Missed those with the previous commit: added tarfs to the boot loader build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-11 01:17:48 +00:00
Axel Dörfler
9a63d90397 Added kernel private VFS functions vfs_entry_ref_to_vnode() and vfs_vnode_to_node_ref().
Minor cleanup of vfs.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-06 09:26:27 +00:00
Axel Dörfler
681779f1c8 Our close-on-exec flag handling was broken: it's supposed to be specified per slot, not
per file descriptor (a descriptor can be shared among several slots). There is now a
second table in the io_context structure that contains that information in a bitmap.
There are now two new (private) functions to control the close-on-exec flag, fd_close_on_exec(),
and fd_set_close_on_exec().
F_DUPFD, dup(), and dup2() are supposed to clear the close-on-exec flag on the duplicated
slot - this fixes bug #57 (no output after a redirect of a shell builtin).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-06 09:02:59 +00:00
Jérôme Duval
27c7bf1ac1 fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-30 22:32:01 +00:00
Rudolf Cornelissen
aa6505c068 removed all matrox maven TVout register and macro defines. now oly nVidia defines are left here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-29 15:37:48 +00:00
Jérôme Duval
83e02263b7 added a socketpair in libsocket.so with corresponding code in the network stack driver and the network stack
socketpair() in the network stack is empty and still to be implemented for real


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-28 12:21:42 +00:00
Rudolf Cornelissen
04d11137af expanded/modified shared_info once again (for encoder info).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-27 14:19:41 +00:00
Rudolf Cornelissen
170a41cdcb added I2C bus and TVout chip-location specific info to shared_info.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-27 10:31:05 +00:00
Rudolf Cornelissen
f282ec8116 added I2C bus #0 and #1 CRTC register defines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-24 17:57:05 +00:00
Rudolf Cornelissen
0d5dbad3ec fixed a faulty registerdefine (colorkey register). Modified some register's names to be more 'precise'.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-22 18:09:56 +00:00
Jérôme Duval
64f6fcfb1d added a socketpair prototype (part of bug #52)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-20 14:10:42 +00:00
Rudolf Cornelissen
9794c563cd updated reg define
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-17 08:45:14 +00:00
Rudolf Cornelissen
3c9e128418 minor register naming mods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-15 14:44:17 +00:00
Rudolf Cornelissen
f1616b172d smal update to overlay engine register defines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-13 19:36:07 +00:00
Jérôme Duval
ab38c90461 added a libroot sigpending, kernel support isn't implemented
(fixed partly bug #49)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-13 16:12:20 +00:00
Rudolf Cornelissen
7cb91ee94e added all VIA video overlay engine defines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-13 14:05:14 +00:00
Rudolf Cornelissen
369d6dd691 added memory type ID register define.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-13 12:35:14 +00:00
Adi Oanca
5c65e26c5b DEC_MOVETOFRONT was never used. We're using DEC_DRAG for this purpose also.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-10 16:45:15 +00:00
Jérôme Duval
96e6579454 added a libroot sigsuspend, kernel support isn't implemented
(fixed partly bug #48)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-08 12:26:16 +00:00
Jérôme Duval
e5ee1dad6a added sigaddset, sigismember, sigdelset to libroot.so from inline versions in signal.h
moved static inline to extern inline to allow this change
please someone review this (ie are they platform dependent functions ?)
should fix bug #47


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-02 11:53:43 +00:00
Jérôme Duval
008b1d9008 fix for network password
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-01 15:04:18 +00:00
Jérôme Duval
b28111564b update to freetype-2.1.10
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-01 06:40:20 +00:00
Jérôme Duval
5e7558d87c fixed password behaviour for screensaver kit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-31 15:36:40 +00:00
Jérôme Duval
f2fd129852 now uses delta escapement
improved GetBoundingBoxesAsString (just for fun, keep in mind we'll use AGGTextRenderer in the end :) )


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-30 14:53:42 +00:00
Jérôme Duval
29926b974b completes previous commit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-26 15:03:36 +00:00
Jérôme Duval
2f23ef90dd added GetBoundingBoxesAsGlyph, GetBoundingBoxesAsString, GetBoundingBoxesAsStrings
real implementation with freetype still missing


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-25 15:21:34 +00:00
Jérôme Duval
af86ce75a0 copyright update
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-24 15:08:32 +00:00
Jérôme Duval
2b1263bedf reworked BFont::GetStringWidths and BFont::StringWidth
implemented BFont::GetEdges


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-24 14:50:41 +00:00
Axel Dörfler
5793da1edc Renamed elf_lookup_symbol_address() to elf_debug_lookup_symbol_address() and
removed the locking it did, as that doesn't work anymore in the kernel debugger.
The function was not thought to be used outside the debugger, anyway.
Improved usage message from debugger command "ls".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-22 20:35:42 +00:00
Axel Dörfler
67a7102658 Fixed a pretty fatal bug in the page fault handling: interrupts were enabled
even if "kernel_startup" was "true". Page faults are now no longer allowed
during kernel startup (and could be easily avoided). The only situation where
we accept page faults with interrupts turned off now is during a kernel debugger
session.
Added a command debug_debugger_running() to test for that situation.
kernel_debugger() no longer sets kernel_startup while it's running; there should
be no situation when this could be helpful.
Interrupts are no longer enabled when a page fault happens in the kernel
debugger.
This potentially fixes all sorts of problems, and not only in the kernel debugger,
it could also have affected SMP (will test later).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-21 23:27:51 +00:00
Axel Dörfler
ef5ab08df3 Fixed keyboard navigation; it should now behave pretty much like R5 AFAICT:
- moved standard keyboard navigation into the BView::KeyDown() hook
- the window now only handles tab+option/command key
- B_COMMAND_KEY triggers group jumping, not B_CONTROL_KEY (that activates the switcher,
  but directly in the app_server)
- fixed broken group navigation: (modifiers & B_COMMAND_KEY & B_SHIFT_KEY) is different
  to (modifiers & (B_COMMAND_KEY | B_SHIFT_KEY)) and is just never true with these
  constants.
That allows the tab key completion to be used again in Terminal.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-21 14:44:53 +00:00
Marcus Overhagen
794df3bf25 This removes the inline assembly code for find_thread
from OS.h, sorry for triggering a complete rebuild.
To avoid doing a syscall for find_thread(0), the assembly
version is now in libroot. For BeOS R5 compatibility, 
_kfind_thread_ is retained. This will fix some compile 
problems, and provides a cleaner OS.h for future Haiku
versions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-20 23:57:11 +00:00
Marcus Overhagen
edde83c450 cleanup of DEBUG and NDEBUG usage in media kit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-20 23:49:39 +00:00
Jérôme Duval
e10dacf9a3 Be => Haiku
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-18 15:31:06 +00:00
DarkWyrm
d863d4bf1d Made scanning of all font folders a compile-time option
Moved the scanning of individual font folders to FontServer
Implemented server-side code for update_font_families
Removed ClientFontList from the build


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-12 14:55:46 +00:00
Ingo Weinhold
4b9ec73e99 We need to override the virtual close_fd() in BFile for binary compatibility
(bug #43).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-12 09:26:59 +00:00
Axel Dörfler
7964c56d67 Added vfs_get_cwd() call to get the mount_id and vnode_id of the current
working directory (instead of the full path).
Cleanup of some remaining "int" status variables (where it should have
been a "status_t").


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-09 16:25:01 +00:00
Michael Lotz
d35c42a0c9 Ok, hopefully fixed all problems with Message3 now. Flat buffers are so fragile...
Also cleaned up Message3.h revert it if you think its a binary compatibility issue.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-09 14:27:35 +00:00
Michael Lotz
90dc946130 Actually the Message3 implementation was broken. It still is, because we lose one (but an important) byte somewhere when resizing the flat buffer. But at least the design flaws should be corrected with this commit. You can go ahead and review it Ingo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-09 05:49:13 +00:00
Michael Lotz
3019039f4f This is the third implementation of BMessage. It operates purly on a flat buffer. It should be completely working and it is fast. See: http://haiku.mlotz.ch/messagespeed.html
Sorry to pollute the repository with all those extra files, they will be (re-)moved when the decision about which implementation to use is made.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13916 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-08 01:34:09 +00:00
Michael Lotz
54ca2a11db Moving towards more flat buffering. Speed is still lower than the original Be implementation, but it's not because of the backend, it's probably the slow BMessage::Header implementation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-06 15:03:18 +00:00
Axel Dörfler
eab435cd59 vfs_get_vnode_cache() now only allocates a new cache if requested: this
prevents the system to allocate caches for files that don't use or have
a file cache (ie. only those can be mmap()ed!).
Therefore, cache_prefetch() no longer crashes when trying to prefetch
files without a file cache.
read_into_cache() no longer does anything if the requested size is 0.
Fixed a bug in cache_prefetch_vnode(): if the cache couldn't be retrieved,
it put the vnode, but didn't own it (the caller does).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-05 11:52:22 +00:00
Axel Dörfler
95839f5c92 The file cache now has another init method that is called after the boot
device becomes available.
Currently, it opens the "launch_speedup" module (if available), later it
should consult a settings file for what to do.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-03 17:25:03 +00:00
Axel Dörfler
99c566f6c9 Added a team watching mechanism in the kernel, not yet tested (but at least doesn't cause any harm yet :-)).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-03 12:00:42 +00:00
Axel Dörfler
ed65cbe349 The kernel debugger no longer uses dprintf() but kprintf() when printing
(dprintf() locks using acquire_spinlock() which can itself drop into the
kernel debugger, causing an endless loop (until the stack was full).
Removed debug_putchar().
The gdb interface is now calling arch_debug_serial_*() directly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-02 16:25:27 +00:00
Axel Dörfler
b72cf2601f Renamed vfs_vnode_acquire_ref() to vnode_acquire_vnode().
Removed vfs_vnode_release_ref(), as vfs_put_vnode() already does the same thing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-01 14:32:23 +00:00