Commit Graph

10526 Commits

Author SHA1 Message Date
Axel Dörfler
74272e4c46 mutex_lock() will no longer panic() if acquire_sem() failed and the mutex
holder did not change (required for booting properly).
Also added a ToDo comment about a required mutex API change in order to
be able to return a status that indicates failure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:46:48 +00:00
Axel Dörfler
3278ab8475 Made header C++ safe. Added new function prototype for arch_dbg_con_init_settings().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:43:48 +00:00
Axel Dörfler
486c7eddeb Added driver_settings support: it will now read in the vesa kernel driver
settings and use that one as standard video size (but ignores the depth
parameter for now).
It will be the app_server's responsibility to keep this file up to date.
This file should no longer be edited by users.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:41:01 +00:00
Axel Dörfler
4c89c923bf For now doesn't switch to text mode and back to the logo anymore when the
menu is shown - the logo is now shown after the menu anyway.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:38:01 +00:00
Axel Dörfler
0d4ea07bd7 Added driver_settings support to the kernel_args structure.
The driver settings are put into the kernel_args memory section and
copied on kernel startup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:36:08 +00:00
Axel Dörfler
78c5ef46fc Added driver_settings support.
It will now load all settings in the kernel driver settings directory
and pass them over to the kernel (unparsed).
Additionally, it allows other parts of the boot loader to access
driver_settings just like in the kernel.
Moved the switch to the logo in the boot loader much further to the end
of the boot loader's life cycle. This is done so that the boot loader
can directly use the video mode as configured in Haiku, without a jumping
logo. Since the delay will be noticeable on a real system, we might want
to introduce a second different boot logo, though. We'll see.
stdio.cpp now also exports errno (and _errnop). Might be changed to a
different approach later as well (it's now done this way so that strtol.o
can be taken over unchanged from libroot.so).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10634 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:32:54 +00:00
Axel Dörfler
a2940337b4 Added strcasecmp(), strlcat(), and strtol() to the boot loader in order to
be able to use the driver settings in a useful way.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:26:50 +00:00
Axel Dörfler
f753d9c494 Updated to export all the functionality we need from within the kernel
and the boot loader.
When compiled in the kernel, driver settings are cached and may be used
without disk access at all.
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:25:23 +00:00
Axel Dörfler
42340683af The identify hook must return an error in case of an error, not 0.0f - or
else the scan partition hook will be called with an invalid cookie.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:22:36 +00:00
Axel Dörfler
381c5247e0 Fixed compilation in debug mode.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10630 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:21:08 +00:00
Axel Dörfler
f04715b8fe Command queueing is now generally disabled in PIO modes. No matter what
the cause is, it didn't work over here at all in this combination.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10629 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:17:55 +00:00
Axel Dörfler
c776c35a04 Added a temporary way to differentiate between kernel and userland builds for
parts of kernel_os_main.o.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 01:32:11 +00:00
Axel Dörfler
0f6c560eec Removed the upper restriction of maximum cache transfers (was restricted
to 32 pages at a time out of pure lazyness).
Also fixed a potential bug when reading across page bounds (pageOffset
might not have been properly reset).
Added some more comments and ToDo items.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 22:40:30 +00:00
Rudolf Cornelissen
c442f9acd1 added cursor sync register define
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10626 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 20:34:24 +00:00
Rudolf Cornelissen
7d457f8e19 added new cursor sync for CRTC1: it turns out the cards have hardware for that. This will lower CPU load much when moving the mouse around :-)
Still testing, will finalize and add CRTC2 soon I hope..


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 20:32:10 +00:00
Michael Pfeiffer
4259e26f8a Disabled building of PCL6 printer driver until we get permission from HP to include the jetlib\!\!\!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 18:07:48 +00:00
Michael Pfeiffer
fca41c6c35 Added Hartmut Reh to list of authors. Updated copyright information.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:55:32 +00:00
Michael Pfeiffer
d24243b3d4 Updated copyright information
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:54:15 +00:00
Michael Pfeiffer
be15dcda7f Added class PagesView for visualization of the options Reverse and Collate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:46:28 +00:00
Michael Pfeiffer
a4d61ba325 import/export function instantiate_printer_driver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:45:26 +00:00
Michael Pfeiffer
d225778e9a Added scaling ability and visualization of the options Reverse and Collate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:42:53 +00:00
Michael Pfeiffer
1c921c1e06 Added class PagesView for visualization of the options Reverse and Collate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:39:30 +00:00
Michael Pfeiffer
2b7e5e87bd Added scaling ability to libprint.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-09 17:37:46 +00:00
Michael Pfeiffer
0826cc43ae Added first/last page buttons contributed by Dr.H.Reh.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-08 14:08:54 +00:00
Michael Pfeiffer
66a207d9bd Set upper bound for scaling factor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-08 14:07:23 +00:00
Michael Pfeiffer
43a3d8de3f Changed the scaling ability to mimic the scaling behaviour of the Epson printer driver.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-08 09:12:12 +00:00
Jérôme Duval
034a4d2e0d we now keep a copy of modifiers and key_states around to be able to fill incomplete messages and get_key_info requests
because of this, 4th bug from axeld is fixed, and R5 Keymap preferences is now working correctly


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-08 01:50:11 +00:00
Rudolf Cornelissen
0bc112be60 more reg defines
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 21:48:11 +00:00
Rudolf Cornelissen
ea71c0b480 added some unknown stuff for NV45(?)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 21:46:58 +00:00
Rudolf Cornelissen
7d52f9d6a4 DMA related register defines
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 21:08:55 +00:00
Rudolf Cornelissen
adafd6c770 mode DMA related programming (currently disabled I hope..)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 21:07:11 +00:00
Michael Pfeiffer
dc8938772a Show current displayed page number and added ability to scale the page contents contributed by Dr.H.Reh.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 17:11:35 +00:00
Michael Pfeiffer
fe970f9d5d Added method GetScale
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10607 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 17:07:41 +00:00
Michael Pfeiffer
5eb50e4689 Fixed printing related bug. Image was offset by the left, top corner of the printable rectangle.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 17:02:23 +00:00
Jérôme Duval
34720c47f1 Added kernel benchmarks from bsd
The purpose is to compare Haiku and BeOS R5 on specific operations


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 15:28:48 +00:00
Stephan Aßmus
36351e2d44 cosmetic changes, and removal of some unnecessary vector conversion pipelines in Stroke and FillRoundRect
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 02:43:24 +00:00
Stephan Aßmus
4569b90da0 Initial version of the Painter framework, which should be usable as a drawing backend.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 01:58:36 +00:00
Axel Dörfler
4b0c008cc5 Added some definitions for the generic syscalls. Cache modules should currently
be located in the "file_cache" directory - this might or might be changed later.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 00:56:50 +00:00
Axel Dörfler
f3d2f0ffa2 cache_module_info::node_opened() was called with the wrong argument order.
Added generic syscall to control the cache. Right now, only setting/removing
cache modules is implemented.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 00:55:08 +00:00
Axel Dörfler
2a5dafa804 recurse_directory() is no longer part of the build if SUPPORT_BOOTFS is
not defined. It will now also skip about all entries called "boot" (to
not load the boot modules again).
The path of preloaded images is now hacked together so that the module
image hash contains the correct path in case the images get replaced
while being used.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 21:46:03 +00:00
Axel Dörfler
b1e252f77f Added a SUPPORT_BOOTFS definition and made the vfs_get_module_path() the new
standard mechanism - recurse_directory() is now only used if SUPPORT_BOOTFS
is defined and vfs_get_module_path() failed.
Added standard system kernel add-ons directory to the search path list.
Renamed USER_MODULE_PATHS to FIRST_USER_MODULE_PATH as that's what it is.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 20:31:22 +00:00
Axel Dörfler
fb77bc372f vfs_get_module_path() now actually works: it failed to create a valid full
path, since it didn't take into account that vnode_path_to_vnode() may
actually change the provided buffer.
Also fixed a potential buffer overrun in that function (bufferSize was
not correctly changed), and added a comment about a previously undocumented
property of vnode_path_to_vnode() that vfs_get_module_path() relies on.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 20:20:48 +00:00
Rudolf Cornelissen
75f591f5c0 more NV40 arch register defines.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 19:16:19 +00:00
Rudolf Cornelissen
a3d7b2a4ad more NV40 arch stuff for the acc engine (not yet working)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 19:13:39 +00:00
haydentech
e25d0ac8e6 Change FT cache manager calls to conform to the new FreeType 2.1.8 API
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 18:29:02 +00:00
Rudolf Cornelissen
110351f212 added NV40 arch specific register defines
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 16:22:10 +00:00
Rudolf Cornelissen
cc3ced500f added NV40 arch specific engine init stuff (not finished, not working yet).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 16:17:11 +00:00
Axel Dörfler
73bcca6b32 Added a small command to set the volume of the master gain in the audio mixer.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 15:32:59 +00:00
Rudolf Cornelissen
d96acb0dde more DMA related info, modified PLL type detection: all NV40+ have extended PLL's.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 15:09:11 +00:00
Rudolf Cornelissen
2bfa04fe4a added some info about possible DMA setup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 10:10:07 +00:00