Commit Graph

10433 Commits

Author SHA1 Message Date
Rudolf Cornelissen df7dbd1d4e completed cursor hardware retrace syncing, confirmed working fully OK on FX5200. Other cards will be tested shortly. Note: this also seems to fix losing screen sync for short bursts with DVI connectors on some DVI encoders.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 10:38:53 +00:00
Axel Dörfler 57af9fc29e Added a small program to control the cache (using the generic syscall mechanism).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 08:08:14 +00:00
Axel Dörfler 104de70bd8 Oops, the driver name was not propagated as needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 08:01:39 +00:00
Axel Dörfler 00fb471d52 Fixed typo.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:59:14 +00:00
Axel Dörfler c51144040d The BOCHS_DEBUG_HACK definition now only enables support for the bochs
debug output - to activate it, you now have to enable it in the kernel
settings file ("bochs_debug_output true").
Reimplemented the serial output so that it's flexible towards the base
port at run time.
Implemented support for kernel settings "serial_debug_port" (which can
now also be an index in the BIOS provided serial ports list), and
"serial_debug_speed".
That also means that you can finally use the same kernel executable
under BeOS Bochs and on a real system without any restrictions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:53:22 +00:00
Axel Dörfler 163338aef6 Now calls the new arch_dbg_con_init_settings() function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:48:44 +00:00
Axel Dörfler b15a7e8e0a Now initializes the driver_settings services (so that it can find the
settings passed over by the boot loader).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:47:51 +00:00
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