* In grayscale mode, the AccelerantHWInterface now sets the palette correctly.
* HWInterface now has a fVGADevice set by AccelerantHWInterface which will be used
to talk to the VESA driver.
* Completed planar blitting for all 4 planes; we now have a perfect 16 color
grayscale mode when you choose "Standard VGA mode" in the boot loader with
an unsupported graphics card (such as in Qemu).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19567 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added an "owner" field that stores the team which created the socket (for netstat only);
we would need a different storage for SIGURG if we ever want to support that.
* Improved netstat address output: now prints "*" instead of INADDR_ANY.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19562 a95241bf-73f2-0310-859d-f6bbb57e9c96
within the library - theoretically, this mechanism could be extended to
turn the compatibility layer on and off based on the images that call the
functions (allowing to mix R5 and BONE network add-ons in a single executable).
This change fixes R5 networking apps such as Vision, and NetworkTime (both
now seem to work fine under Haiku).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19431 a95241bf-73f2-0310-859d-f6bbb57e9c96
commented the insertion of the attribute name in patterns in the case of a string attribute
notify_probe_by_file chooses a module based on a bus specific suffix
dm_register_child_device has a parameter to optionally check the support for the node
added scanning of bus devices after the boot filesystem is mounted
fixed dm_rescan, locking was misbehaving
fixed SYSTEM_DRIVER_REGISTRATION definition
added B_DRIVER_MAPPING attributes for PCI and ACPI devices:
%vendor%_%device% for PCI, hid_%hid% and type_%type% for ACPI
moved acpi_device_module_info definition to public ACPI.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19394 a95241bf-73f2-0310-859d-f6bbb57e9c96
* cancel_timer() cancels a timer, and returns true if the timer was running
* is_timer_active() determines if the timer is currently running or not.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19393 a95241bf-73f2-0310-859d-f6bbb57e9c96
by the TCP implementation for its reorder and retransmit queues.
* The ipv4_fragment is no longer needed, as we can use the above field there
as well - this saves one extra allocation per received fragment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19369 a95241bf-73f2-0310-859d-f6bbb57e9c96
pretty close, and the number of loaded modules have a direct influence on
this (even though we're currently loading the symbols by default).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19320 a95241bf-73f2-0310-859d-f6bbb57e9c96
various places. Implemented SetLineMode op for BPicture, fixed shape
drawing (I accidentally broke it in the previous commit).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19264 a95241bf-73f2-0310-859d-f6bbb57e9c96
* added a generic syscall for device_manager
it enables to iterate the device manager tree from userland
* the listdev tool is now using it: it's still incomplete as it only dumps nodes and attributes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19260 a95241bf-73f2-0310-859d-f6bbb57e9c96
and cancel_notification() functions.
* Completey dropped the old select code, as well as any R5 compatibility stuff. If
we ever need it again, it's still in SVN history.
* The socket module was put in uninit_driver() for no reason.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19256 a95241bf-73f2-0310-859d-f6bbb57e9c96
is not supposed to be called for accepted sockets, only for those created via
a call the userland socket() function.
* Renamed net_socket_module_info::socket() to open_socket() to make this distinction
a bit clearer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19254 a95241bf-73f2-0310-859d-f6bbb57e9c96
Hopefully fixed all the problems. Reported by
Marc Flerackers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19241 a95241bf-73f2-0310-859d-f6bbb57e9c96
only TCP needs this, other stream oriented protocols might too, in the future.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19236 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Corrected wrong ID association (0x4e50 is M11-based, not M10-based).
- Implemented fixed dividers support for laptop panel refresh rate.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19209 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added some missing result checks, mostly for allocations.
* Fixed a wrong precendence with the ?: operator
* Some minor cleanup.
* Renamed sBufferModule to gBufferModule - the header expects it to be a global,
so it should be named like one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19178 a95241bf-73f2-0310-859d-f6bbb57e9c96
This allowes to actually execute the boot loader now.
Need to use Ingo's remote_disk_server now for booting.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19113 a95241bf-73f2-0310-859d-f6bbb57e9c96
* removed leagcy _sstream-header, we now use sstream, as both compilers provide it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19109 a95241bf-73f2-0310-859d-f6bbb57e9c96
in the code before).
* Added a SetTo() method to NetBufferHeader.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19069 a95241bf-73f2-0310-859d-f6bbb57e9c96
* a vm_cache now maintains a list of its "consumer" caches.
* introduced to new functions that add/remove consumer to a cache (instead
of only maintaining the vm_cache::source field).
* fixed the incorrect reference counting when doing copy-on-write; we kept
one ref too many of the lower cache.
* minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19035 a95241bf-73f2-0310-859d-f6bbb57e9c96
this closes ticket #811.
* Added notification support to IPv4 and UDP.
* Implemented reading out SO_ERROR.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19017 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Fixed R5 socket definitions to match their actual definitions.
* libnetwork.so now detects at runtime wether or not R5 compatibility should be
enabled or not.
* All socket functions should now be R5 net_server compatible.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19012 a95241bf-73f2-0310-859d-f6bbb57e9c96
to determine linkage of libnet.so vs. libsocket.so/libbind.so in the libnetwork.so.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19008 a95241bf-73f2-0310-859d-f6bbb57e9c96
under Haiku, though. If someone has access to this card, feel free to fix this :-)
I renamed the driver to s3savage (from BeSavage), and added the license text
separately (dunno if that's really needed, though).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18978 a95241bf-73f2-0310-859d-f6bbb57e9c96
This also fixes the issue of exporting a C++ API from the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18974 a95241bf-73f2-0310-859d-f6bbb57e9c96
of a team to avoid confusion. It now also accepts a NULL session pointer in
which case the actual group's session doesn't matter.
* Fixed the race condition in send_signal_etc() that could allow accessing an
invalid team pointer.
* Jerome's earlier change already fixed bug #841, and this also fixed bug #855.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18941 a95241bf-73f2-0310-859d-f6bbb57e9c96
the next step would be to rescan the partition tree with a job to recognize unrecognized partitions (asynchronously ?)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18737 a95241bf-73f2-0310-859d-f6bbb57e9c96
in several steps:
1. early pre-registration with the registrar ("I wanna launch the
app, make sure noone interferes.")
2. load the app image
3. finish pre-registration with the registrar ("I have launched
the app, here is its team ID.")
4. start app main thread
5. send "on launch" messages to the app (argv, refs, others)
If the app is already running or being launched, 1. fails with a
conclusive error code and returns the team ID and the pre-registration
token of the app. Steps 2 - 4 are skipped and only the messages are
delivered using the team ID returned by 1.
This change fixes a race condition: The failed early pre-registration
request obviously cannot return the team ID, if the other thread
launching the app has not finished step 3 yet. Thus the argv/refs
message would not get delivered and Launch() would not return the
correct team ID.
Now we wait for the pre-registration to be finished in this case, using
the former _IsAppPreRegistered() mechanism, which already provided
such a waiting feature for one request. It has been extended to
accomodate an arbitrary number of waiting requests and renamed to
_IsAppRegistered().
This fixed bug #763.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18728 a95241bf-73f2-0310-859d-f6bbb57e9c96
* additional versions of SetIcon[ForType] and GetIcon[ForType] in BMimeType
and BAppFileInfo, which handle flat vector icon data
* changes in Tracker to support scalable icons (currently broken for
non-vector icons and needs cleanup) and drawing icons correctly with alpha
channel (large parts of this work done by Michael Lotz)
If someone feels like looking over the changes, that would be much
appreciated! :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18699 a95241bf-73f2-0310-859d-f6bbb57e9c96
(that was part of the problem of bug #702).
* Fixed send_signal_etc() when you called it with a pid_t of zero: the signals should
go to all teams in the calling team's group, not only to the team (for -1, we do
the same for now).
* Made team_get_process_group_locked() public, and rewrote send_signal_etc() to use
it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18684 a95241bf-73f2-0310-859d-f6bbb57e9c96
at the comment in r5_compatibility.h.
* Intentionally broke source compatibility and removed all that outdated Nettle stuff.
* Also, I took the liberty of making m_init private and rename it to fInit - again, this
will only affect source compatibility.
* Rewrote NetEndpoint.h
* Fixed quite a few small bugs around the code that I touched, for example in NetAddress,
SetTo() never set fInit, and therefore could be wrong.
* Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18680 a95241bf-73f2-0310-859d-f6bbb57e9c96
hash. This also allows them to stay valid after the group leader died when there are
other teams left in it. This closes bug #1.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18622 a95241bf-73f2-0310-859d-f6bbb57e9c96
it waited for a specific child), as B_RELEASE_ALL opened up a race condition between
looking for an existing death entry, and waiting for the dead children semaphore.
Now we're counting all waiting threads for teams and groups separately.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18543 a95241bf-73f2-0310-859d-f6bbb57e9c96
replacing files when merging when you don't have deleted them manually (for some reason,
it only works as part of the merge operation, and we didn't copy the whole tree to
have "a fresh start" - next time we know better, at least if SVN still suffers from
that same limitation).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18456 a95241bf-73f2-0310-859d-f6bbb57e9c96
inserts the item before, and not after the given element (that's probably
what you expected anyway).
* Added ReverseIterators.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18307 a95241bf-73f2-0310-859d-f6bbb57e9c96
to take that into account.
* Introduced INTEL_TYPE_FAMILY_MASK and INTEL_TYPE_GROUP_MASK to better
differentiate the device type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18293 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added an Insert() variant that can insert an element behind another one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18199 a95241bf-73f2-0310-859d-f6bbb57e9c96
(Args were declared: width,maxWidth,minWidth while the last 2 ones were the other way around)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18083 a95241bf-73f2-0310-859d-f6bbb57e9c96
This should make our BColumnListView completely usable.
(ColumnTypes files were taken from imkit SVN)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18081 a95241bf-73f2-0310-859d-f6bbb57e9c96
change the size parameter type of several functions in sys/socket.h to match POSIX
compat libs and legacy headers keep the original R5 type (though I make a change for this)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17911 a95241bf-73f2-0310-859d-f6bbb57e9c96
syscall, but they could not know if R5 code called them (in which case the stat
size has a different size). We now always only return the R5 stat structure here.
This fixes bug #420. We might want to find a different solution to this problem,
though.
* Be got SYMLINK_MAX wrong - it's not the maximum number of links (that's SYMLOOP_MAX),
but the maximum size of a symlink buffer. Added missing SYMLOOP_MAX and SYMLINK_MAX
constants to limits.h.
* Fixes MAXSYMLINKS to use SYMLOOP_MAX, instead of SYMLINKS_MAX (which doesn't exist
in POSIX specs, but we (intentionally) break source compatibility here).
* Reenabled the Haiku versions of stat(), fstat(), and lstat() when build for Haiku.
* Removed OpenBeOS namespace stuff from the files I touched.
* Removed superfluous StorageDefs.Private.h, whyever that ended up in a public header
is beyond me.
* Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17894 a95241bf-73f2-0310-859d-f6bbb57e9c96
for some types (like "application/x-vnd.Be-elfexecutable") would fail. This fixes
bug #666 (no, I'm not the exorcist :-)).
* Renamed private methods to have the '_' prefix.
* Cleanup, added license.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17832 a95241bf-73f2-0310-859d-f6bbb57e9c96
arch dependent code (they will be removed as soon as someone else
asks for these interrupt lines).
* Added an interrupt driven keyboard handler to the kernel that uses
this technique. As a result, you can now press F12 to enter the kernel
debugger before the input_server has been started, and Control-Alt-Delete
should reboot the system (actually I did not test the latter yet).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17806 a95241bf-73f2-0310-859d-f6bbb57e9c96
when enabled, and B_NORMAL_WINDOW_FEEL when disabled. IOW when enabled, no
other windows can interfere.
* Therefore, it's no longer necessary to have the screen_blanker window
use kWindowScreenFeel - it will set its window to full screen as long
as the blanker runs.
* Added a AS_APP_CRASHED notification in the app_server that will remove
all kWindowScreenFeels from the windows of the crashed app.
* This is now used by the debugger to ensure that the debugger alert will
be visible.
* Factored out a DesktopLink class out of the BRoster::_ActivateApp()
method. This class is now also used in the new BRoster::_ApplicationCrashed()
method as used in the debug_server (via BRoster::Private).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17785 a95241bf-73f2-0310-859d-f6bbb57e9c96
representing the interface for, well, MIME sniffer add-ons.
* Implemented the respective add-on manager and make use of it in
the MIME database code. Unfortunately the MIME DB code completely
lives in libbe.so and hence I had to put my code there too.
IMHO we should (one day) remove the direct (read-only) MIME DB
access from libbe and move everything into the registrar.
Currently the add-on manager supports built-in add-ons only; it
doesn't really load anything from disk ATM.
* Added a built-in text sniffer add-on to the registrar. It's based
upon the BSD file tool code.
This closes bug #250 (plain text files are identified as such, now).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17784 a95241bf-73f2-0310-859d-f6bbb57e9c96
* simplified drawing a bit, and got rid of those scary scale*() stuff (which also
results in better looks). The monitor now looks like the one in Screen; I think
it should either be a very reduced form or a very detailed form, but anything
in between often looks just odd.
* It now also listens to B_MOUSE_DOWN incl. mouse tracking, not only to B_MOUSE_UP.
* Less flickering on state changes (and focus change).
* Loading settings no longer overwrites defaults missing from the settings.
* Renamed ScreenSaverSettings::GetBlankCorner() to BlankCorner(),
LoadSettings() to Load(), GetState() to GetModuleState(), ....
* Some more cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17783 a95241bf-73f2-0310-859d-f6bbb57e9c96
Renamed lots of things, like ScreenSaverThread to ScreenSaverRunner,
refactored code, etc. Much cleaner interfaces and code.
* Fixed a couple of bugs and in the add-on handling, especially some settings
related bugs (ie. testing a screen saver will now use its latest settings,
etc.).
* Correctly implemented DPMS support in ScreenSaverPrefs and the ScreenSaver
preferences application - screen_blanker still ignores them, though.
* It's not yet font sensitive either.
* Changed the input_server add-on to not switch to the screen blanker immediately
when it's in the "blank corner" - doesn't seem to work yet, though (only tested
under Qemu).
* Correctly implemented the "preview" function (before, a screen saver would
never know it rendered a preview).
* Evaluates the return value of BScreenSaver::StartSaver().
* The screen saver thread is no longer killed without notice - it's now
always shut down properly.
* Made the code more robust against failure.
* Introduced some new bugs as well (the screen saver list view doesn't jump to
the selection anymore, for some reason), those will be fixed later (as the
remaining issues).
* Probably some more I forgot about.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17731 a95241bf-73f2-0310-859d-f6bbb57e9c96
running team to be able to fill in the team_info::args field. Currently, only
the path is stored, there, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17646 a95241bf-73f2-0310-859d-f6bbb57e9c96
-> a USB Mass Storgage module (SCSI bus manager add-on)
-> a SiS 7018 AC97 driver (uses "old" audio driver interface)
-> a USB Serial driver
-> a USB Vision driver and media add-on (Haupauge WinTV USB)
* moved R3MediaDefs.h from usb_audio driver to common place
headers/private/audio (also used by SiS 7018 driver)
* added TV tuner frequency defines to data/settings/media/usb_vision
Some of these drivers are in unfinished state, particularily the
USB Vision driver, the VideoProducer doesn't seem to use it yet,
the USB Mass Storage module is known to work though, it also includes
add-ons for itself that add support for some "special" hardware, these
are not integrated with the Jamfile build system though.
Also I didn't much much time with the "CVS package" targets, the
ReadMes are not added, someone with more knowledge about this could
add them...
None of this stuff is added to the Haiku image, it is simply included
to be maintained in the Haiku tree from now on.
* fixed a bug in Video Producer sample inherited from Be Sample
code - the timing from the time source was not really used,
on some systems this could cause in the producer not waking
up at the correct time if the system time and audio card time
are drifting apart
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17625 a95241bf-73f2-0310-859d-f6bbb57e9c96
export those functions. The log_coll stuff now uses system_time() instead
if enabled - that should be good enough.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17567 a95241bf-73f2-0310-859d-f6bbb57e9c96
output as well.
* Obviously got the register for INTEL_DISPLAY_B_DIGITAL_PORT wrong - it's
not 0x61000 but 0x61140, maybe that can explain the fun we had at BeGeistert :)
* Renamed the analog display registers to better fit the digital ones, ie.
replaced DISPLAY with DISPLAY_A - although this might be not really correct
as it seems that the pipes can be selected arbitrarily.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17566 a95241bf-73f2-0310-859d-f6bbb57e9c96
Need to clean this up, though. It even sort of worked on tic's IBM X40
on BeGeistert - if you weren't irritated by the fact some parts of the
screen were just black, that is :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17565 a95241bf-73f2-0310-859d-f6bbb57e9c96
that at least 8 bit modes seems to work (but overlay only partially)
* Added "hardware_cursor" option to the settings file - when set to "false", you should
have a cursor in the second output now as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17498 a95241bf-73f2-0310-859d-f6bbb57e9c96
without having a VESA mode set first (thanks to Stephan for noticing
this).
* intel_set_display_mode() now calls intel_propose_display_mode() to make
sure the mode passed in is valid. Note, B_PROPOSE_DISPLAY_MODE is still
not working correctly (which will cause problems for BWindowScreen and
friends).
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17460 a95241bf-73f2-0310-859d-f6bbb57e9c96
introduced a lock that is used in B_SET_DISPLAY_MODE etc.
* Correctly implemented B_ACQUIRE_ENGINE and B_RELEASE_ENGINE now (ie. they lock
the engine now).
* The lock of the ring buffers is now deleted when the (primary) accelerant is closed.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17453 a95241bf-73f2-0310-859d-f6bbb57e9c96