Commit Graph

13201 Commits

Author SHA1 Message Date
Marcus Overhagen
487f65913b converted ps2_hid driver into ps2 bus manager
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 21:07:12 +00:00
Marcus Overhagen
079a1529f7 simplified ps2_hid driver, only used to load the ps2 bus manager right now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 21:06:34 +00:00
Marcus Overhagen
f5ed14bbfa copied some files from ps2_hid driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 21:02:49 +00:00
Marcus Overhagen
4ebe921a7a that was stupid, removed it again
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 20:39:01 +00:00
Marcus Overhagen
536b4943a2 copied from common.c
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 20:37:45 +00:00
Marcus Overhagen
d61a52a78d copied some files from ps2_hid driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 20:31:08 +00:00
Marcus Overhagen
c2f9bd7dda basic ps/2 bus manager
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 20:13:32 +00:00
Marcus Overhagen
5d273583ea bugfix, noticed that releasing a semaphore 0 times isn't very useful
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 17:56:42 +00:00
Marcus Overhagen
c7a1eae1aa more debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 15:45:27 +00:00
Axel Dörfler
9a96efa92a Fixed build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 14:43:50 +00:00
Marcus Overhagen
39c5ec1669 connected service thread's loose ends
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 14:22:01 +00:00
Marcus Overhagen
f7831e0a16 added debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 14:21:22 +00:00
Marcus Overhagen
7593e461e3 allow communication with non-active ps2 devices
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 13:43:23 +00:00
Marcus Overhagen
f21b0edf83 bugfix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 13:42:33 +00:00
Marcus Overhagen
cba0addf98 prepared periodic services
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 13:13:38 +00:00
Marcus Overhagen
16160d6099 bugfix of devfs_publish_device parameter
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 13:13:18 +00:00
Stephan Aßmus
7023b103b3 I took the liberty to revert Stefanos patch in 15953 since you all seem busy, it is ok and even required for the Desktop window to be able to have focus
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 11:44:18 +00:00
Philippe Houdoin
e2450cedbc Added Polish(Programmer's).keymap at the request of michalg.
See his forum post at http://haiku-os.org/forums/viewtopic.php?t=648&highlight=
This keymap file come from Takayuki ITO's Internation Keymap Pack available at
http://www.bebits.com/app/698 and is licensed as Public Domain.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-16 09:54:30 +00:00
Alexander G.M. Smith
3b287239c2 More Japanese and other small items from SourceForge. To be integrated into
the build system...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:55:07 +00:00
Alexander G.M. Smith
2a7acda66e Japanese version of the README, slightly out of date, UTF-8 encoding.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:52:52 +00:00
Jérôme Duval
f38c267be6 time is beos compatible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:38:22 +00:00
Jérôme Duval
618a88bc18 desklink is beos compatible (provided it uses some haiku headers)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:27:37 +00:00
Jérôme Duval
6462ba1115 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:12:07 +00:00
Jérôme Duval
4aded202be keyboard prefs is beos compatible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:05:25 +00:00
Jérôme Duval
79a3f78fb5 fixes build for beos
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:02:46 +00:00
Jérôme Duval
7f781bfbf2 Sounds and Media prefs are beos compatible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 22:01:43 +00:00
Jérôme Duval
843a7d9da4 make libmedia.so beos compatible (including several public headers)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 21:59:21 +00:00
Jérôme Duval
7316ee50f0 media and media addon servers are beos compatible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 21:57:40 +00:00
Jérôme Duval
3df0e46f12 fix include
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 21:28:11 +00:00
Stefano Ceccherini
3532dd20d5 Now the kDesktopWindowFeel means also that the window doesn't want focus.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 19:36:16 +00:00
Axel Dörfler
ddb7d0b6a6 Implemented force unmounting - by passing the "-f" option to "unmount" you
can now safely unmount volumes that are still in use by some applications.
Minor fixes to the FD disconnection implementation:
* put_fd() checked the condition for being able to disconnect a descriptor
  incorrectly (causing the FD to never be disconnected).
* remove_fd() would hand out disconnected descriptors (but should have
  returned NULL for them).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 19:26:42 +00:00
Axel Dörfler
60e5ea42e0 Quick fix for a crashing bug I just introduced.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 18:30:07 +00:00
Marcus Overhagen
9c23fc9631 bugfix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 17:16:50 +00:00
Axel Dörfler
128165101a Implemented disconnecting file descriptors: this will be used by the
force unmounting code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 17:11:48 +00:00
Marcus Overhagen
e0ad7cc913 started mouse and keyboard device abstraction as ps2_dev
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 17:08:34 +00:00
Marcus Overhagen
ecc5f8d78c added ps2 service thread, and some small changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 14:07:33 +00:00
Marcus Overhagen
7c446ef048 In wait_for_thread allow userReturnCode to be NULL regardless whether NULL is a valid IS_USER_ADDRESS
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-15 13:26:18 +00:00
Stefano Ceccherini
ade091f23e Don't activate a window (in FFM mode) if it has the B_AVOID_FOCUS flag
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-14 22:51:10 +00:00
Stefano Ceccherini
5364573ebd Partially reverted to 15464 to have less code duplication, now that the special case is handled in BMenu::CalcFrame()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-14 21:50:35 +00:00
Marcus Overhagen
80d2048e81 cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-14 13:21:10 +00:00
Stefano Ceccherini
b5cd88a5c7 Small changes, nothing important
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 20:49:41 +00:00
Stefano Ceccherini
fc3a8a1c73 Fixed popup menus opened at the wrong position (mostly noticed in Installer) with a horrible hack which I can't see how to avoid
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 20:48:48 +00:00
Marcus Overhagen
89fb2ae90c cleanup of keyboard and mouse handling
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 19:18:53 +00:00
Stefano Ceccherini
201381d6ab Menus make a better use of windows: when a child menu is opened, it asks the parent for a window, which is then cached for every other child for that parent menu. This avoids multiple creation/deletion of BWindows in a row. This also makes menus much nicer to use in qemu (together with the slight change in locking in BMenuBar (Lock() instead of LockWithTimeout))
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 17:47:35 +00:00
Marcus Overhagen
cf97e60972 Added tests, I don't think this will work as intended...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 17:17:14 +00:00
Marcus Overhagen
124a7ec381 made typesave
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 13:45:40 +00:00
Marcus Overhagen
8f0970fa79 experimental keybaord controller command execution
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 13:42:43 +00:00
Marcus Overhagen
6c718e9525 removed some functions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 11:45:52 +00:00
Marcus Overhagen
fb8a44691f reimplemented waiting for read/write, added flush function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 11:17:12 +00:00
Ingo Weinhold
7afc16f059 * Fixed a bug regarding storing/restoring FPSCR in the interrupt
code. The stack pointer was not adjusted, hence we were
  overwriting the previous register value. But it looks like I
  missed to check in the arch_cpu.h with the iframe structure
  including the floating point registers anyway.
* Backported the ELF PPC relocation code from the boot loader to
  the kernel.
* Fixed the PPC version of arch_thread_switch_kstack_and_call().
  Apparently the signature had changed, but the assembly
  implementation was not adjusted accordingly.
* sc prints more registers now (LR, CR, CTR, XER,...).
* Fixed several occurences of not-working fault handlers.
  Apparently the compiler realized, that the "error" label was
  never jumped to (by the code it knew), and optimized the
  respective code away. Now we use a trick to make it think the
  error label might actually be jumped to. I wonder whether the
  x86 version has the same problem when being compiled with GCC4.
* Adopted the x86 page fault handling interrupt code.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 00:49:13 +00:00
Ingo Weinhold
76cd432c36 Relaxed the timeout constraint a bit. Sometimes, when the server
was busy, booting failed because of that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-13 00:29:33 +00:00
Marcus Overhagen
582d6d64ae combined mouse and keyboard interrupt handler, work in progress...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 23:01:17 +00:00
Marcus Overhagen
741e5c2d81 preparing experimental driver...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 22:58:47 +00:00
Jérôme Duval
17a014aaf7 added rmindex to the build
improve style following our guidelines
removed dependency on libbe.so


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 19:44:44 +00:00
Stephan Aßmus
55f6067fcd * I thought it was a good idea to Flush() the server link
in all drawing methods in case the parent window was
  not in a "transaction" (fInTransaction). For ordinary
  updates, nothing has changed, but if you call drawing
  methods outside of an update, they will happen "immediately"
  rather than when the link is sporadically full and auto
  flushes. The effect is that the cursor in Terminal blinks
  reliably, the selection in BTextViews follows the mouse
  right on the spot (and so on). BWindow::BeginViewTransaction()
  and EndViewTransaction() now have a meaning in Haiku too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 12:22:34 +00:00
Stephan Aßmus
df19082398 * cleaned up ServerApp header a bit
* added support for nested cursor showing/hiding


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 11:59:24 +00:00
Stephan Aßmus
cf6fe303d6 * I decided having the cursor obscuring feature in the HWInterface class
was not such a bad idea after all.
* Reenabled obscuring the cursor in ServerApp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 11:46:49 +00:00
Rudolf Cornelissen
96cc308448 added timeouts for all retrace-sync waiting loops in accelerant to prevent software from hanging if trying to use a card that isnt' coldstarted.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-12 11:18:32 +00:00
Axel Dörfler
118828e772 shutdown now defaults to returning to the caller (ie. runs asynchronously), as it
does in BeOS.
If you want it to wait until the shutdown process fails (or the system is actually
shut down), use the new "-s" option.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 23:17:40 +00:00
Axel Dörfler
0248f7e099 Fixed typo: asynchronous shutdown is now working (ie. Deskbar doesn't block
the shutdown process any longer).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 23:15:49 +00:00
Axel Dörfler
238ba7d321 The last change accidently put messages to invalid targets back into the game.
_DetermineTarget() is no longer called for these messages, "handler" will stay
NULL and the message will be dropped.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 22:38:43 +00:00
Axel Dörfler
54354618d5 BWindow::_DetermineTarget() now defaults to the window, instead of no target at
all in case the window doesn't have a current focus view.
That allows shortcuts like Command+q/w to work again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 22:30:41 +00:00
Stephan Aßmus
74ae324849 * when the parent ServerApp of the focus window changes,
it's Activate() method is called, if there is no
  new focus app, the cursor is unhidden for safety. The
  most notable difference: After having run a screen
  saver, the cursor will be visible again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 22:30:12 +00:00
Stephan Aßmus
bd5f895aa6 * made hiding and unhiding the cursor actually work
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 22:28:19 +00:00
Stephan Aßmus
b073091ab3 * small cleanups
* reworded Activate and commented out all code
  that actually tries to change the cusor shape


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 22:27:51 +00:00
Jérôme Duval
d72cb8f8d7 added pcmcia-cs to the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15916 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 20:28:18 +00:00
Axel Dörfler
81202ff522 Imported DialogPane.cpp 1.3 from the OT repository: shouldn't crash anymore
under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 20:16:28 +00:00
Axel Dörfler
67c3d9ebe5 Fixed building of the UHCI and OHCI modules [reported by AndyBe].
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 20:04:40 +00:00
Stephan Aßmus
5a2b3bac82 Axel wants to check up on something, and I had added the testbed for that already
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 19:34:57 +00:00
Stefano Ceccherini
3d453d2da3 Fixed redrawing when alignment is center or right. Extended a comment to a bug which I can't reproduce anymore
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 17:44:22 +00:00
Ingo Weinhold
71848dd62f arch_elf.c -> arch_elf.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 14:26:15 +00:00
Ingo Weinhold
b33f1804ea Faster/shorter way of aligning something.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 14:14:50 +00:00
Ingo Weinhold
b7ba8a182f We enable the FPU now, store the non-volatile FPU registers on
context switches and all FPU registers in an iframe. We might want
to rethink this, though.
The kernel initialization runs to the end now. No boot volume is
found yet, but that is expected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 13:51:38 +00:00
Axel Dörfler
92b292f540 Implemented B_NO_POINTER_HISTORY. Window moving/resizing uses this mechanism
as well now, and makes quite a difference in Qemu.
Not tested for standard BViews, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 12:25:06 +00:00
Stefano Ceccherini
f9f970d98c Yesterday's commit triggered some other visual bugs: hopefully fixed them all. A disabled menufield now doesn't open its associated menu anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 09:31:27 +00:00
Ingo Weinhold
9b6eaae234 * Fixed thread support. The entry and exist functions are now called,
too -- introduced a function ppc_kernel_thread_root() which calls the
  three functions (entry, start, exit) in sequence. This brings us well
  into the second part of the kernel initialization.
* Replaced stmw/lmw in ppc_context_switch() by individual stwu/lwzu
  sequences. The former ones are documented to perform suboptimal on
  some architecture implementations.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 02:17:29 +00:00
Ingo Weinhold
31ac264b1e Added TODO regarding the use of arch_cpu_global_TLB_invalidate().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 02:05:29 +00:00
Ingo Weinhold
d0648592ca It appears I misjudged the availability of the "tlbia" instruction. Put
the previous implementation of arch_cpu_global_TLB_invalidate() back in
place (as fallback).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-11 01:31:15 +00:00
Axel Dörfler
40be0d5583 Quick fix to make the Qemu experience less bad :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 23:18:36 +00:00
Axel Dörfler
ba61df6d0b Beginnings of APM support: we now connect to the APM BIOS in 32 bit protected mode.
We don't do anything with it yet, though, so the BIOS will probably ignore us since
we are supposed to poll for events.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 22:54:36 +00:00
Axel Dörfler
5143d99bb0 Removed timeout in the EventDispatcher, clarified TODO about the message queue
of messages that failed to be sent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 20:47:16 +00:00
Rudolf Cornelissen
face6fcd0a overlay code now respects the B_OVERLAY_COLOR_KEY cmd flag.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 20:24:46 +00:00
Rudolf Cornelissen
86ca91abfb overlay code now respects the B_OVERLAY_COLOR_KEY cmd flag.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 20:23:57 +00:00
Rudolf Cornelissen
4c0f752c68 added 'accelerant_device_info struct to shared_info, now containing more detailed info about the card in use. This info is returned via hook GET_ACCELERANT_DEVICE_INFO in case someone uses that :).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 20:06:52 +00:00
Rudolf Cornelissen
bd3f19ae33 added 'accelerant_device_info struct to shared_info, now containing much more detailed info about the card in use. This info is returned via hook GET_ACCELERANT_DEVICE_INFO in case someone uses that :).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 19:42:14 +00:00
Stefano Ceccherini
797d1a66fa menufields should default to B_ITEMS_IN_COLUMN. This fixes the workspaces menu (in Screen) opened at the wrong position. As a consequence of this, I had to change the drawing code a bit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 16:00:07 +00:00
Stefano Ceccherini
b120bcd665 Don't quit tracking the menu even if OverSuper() returns true, if HitTestItems() doesn't return NULL. This should fix (at least in part) bug #85
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 09:40:28 +00:00
Ingo Weinhold
6c678c57c7 * The exception vector offset is now also part of the iframe.
* Cloned iframe stack management from x86.
* Reimplemented arch_thread_{get,set}_current_thread(). The
  thread structure is stored in SPRG2. It is set to NULL in
  arch_cpu_preboot_init(), now. A non-null current thread
  causes all kinds of undesired behavior in early boot code.
* We establish the address space mappings we know from the
  Open Firmware as areas. At least those in kernel address
  space. The ones in userland address space are tougher.
  Fortunately on my Mac mini there aren't any save the
  boot_loader stack, which is not needed any longer anyway.
* Added stack trace support to the kernel debugger. Mostly
  cloned and adjusted the x86 code. Some bits are still
  missing, like stack traces for other threads.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 03:00:33 +00:00
Ingo Weinhold
1777154c14 * Fixed tracing build.
* In reserve_boot_loader_ranges() we skip ranges that lie without
  the kernel address space (we failed and panic()ed before). The
  architecture specific code has to deal with those, if they are
  of any importance.
* sAvailableMemoryLock.sem was not set to -1 in vm_init() so code
  executed after semaphores were available but before the semaphore
  was created caused semaphore 0 to be acquired.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 02:22:24 +00:00
Ingo Weinhold
1cf0c3b3f2 Clear the back pointer in the root kernel stack frame, so stack traces
will end there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-10 00:49:31 +00:00
Stephan Aßmus
93d1b9f406 * quick fix for when fBitmap has been recomposed
partly, fDisplayBitmap is not correctly re-established...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 11:24:08 +00:00
Stephan Aßmus
37a3ed9263 * quick hack to hide the cursor in fullscreen
(TODO: do this after a time out)
* quick hack to display bitmaps containing an
  alpha channel with a checker background
  (TODO: rework filters to be alpha channel
  aware and compose the checker background
  independently of the filter)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 11:18:01 +00:00
Stephan Aßmus
c9a5153a00 fix building for BeOS
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 11:14:37 +00:00
Ingo Weinhold
42e94eb9b8 Give a bit more info, if a symbol could not be found.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 05:23:50 +00:00
Ingo Weinhold
e2f7a6d61f Missed that one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 03:42:39 +00:00
Ingo Weinhold
48fe700d70 arch_debug.c -> arch_debug.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 03:38:09 +00:00
Ingo Weinhold
7176dd57e5 Reworked the exception handling code. The former one ran into the
void after turning off BAT for the segment containing itself.
The monster macro for the exception vector code was not really
elegant besides being too long for the 32 byte performance
monitor exception slot. Furthermore wasting three of the SPRG*
registers as cheap scratch memory wasn't that nice either.

We now have a three-step approach: The exception vectors
themselves contain only five instructions which branch to common
code at the beginning of the same physical page. That one sets
up BAT for itself, turns address translation back on and jumps
into the kernel. There we turn off BAT again, dump an iframe,
and enter the actual exception handler (/dispatcher). Upon return
the registers are restored from the iframe and we get back to the
place where the exception occurred.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 03:30:52 +00:00
Ingo Weinhold
e525ca0a4d Fixed relocation of negative 14, 16, or 24 bit values. In case of 14
and 24 bits the set upper bits were overwriting the upper bits of
the word at the target location (usually something like a branch
instruction).
This is the kind of bug that easily take six hours to find, especially
when working with interrupt code and being convinced that the problem
must be related.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-09 02:47:18 +00:00
Stephan Aßmus
7afc7c5074 ServerFont:
* fixed weird pointer conversion in SetStyle()
* fixed a potential mix up in operator=() in case the
  other ServerFont has fStyle == NULL

ServerWindow:
* the WindowLayer fTopLayer cannot be deleted by
  client request, just for safety reasons
* the link is flushed if there is no drawing engine,
  but this case is theoretical only
* deleting the ServerWindow object syncs with the
  client, so that when BBitmaps are deleted, they
  can be sure there are no pending messages (which
  would be executed in a nother thread)
* there is no timeout anymore when sending messages
  to the client, which made absolutely no sense

AGGTextRenderer:
* renamed fFontManager to fFontCache, because that's
  what it really is
* fLastFamilyAndStyle defaulted to the system plain
  font and therefor that font was never loaded when
  the font never changed meanwhile

DrawingMode:
* I'm not quite sure but I think there was the
  potential of a division by zero, at least I
  had crashes with "divide error"

HWInterface:
* fix update when the cursor shape changed in
  double buffered mode
 
ViewLayer:
* since the top layer is never really deleted
  before its time has come, it is not necessary
  to set it to NULL in the ViewLayer destructor

ViewLayer/WindowLayer:
* added a function to collect the view tokens
  that are affected by an update session

EventDispatcher:
* use the importance of the message for the timeout
  in _SendMessage()
* drop mouse moved events in the server if we're
  lagging behind more than 5 ms (Axel, maybe review)

View:
* there were some problems with the locking
  of the BWindow looper in RemoveSelf(), since
  this is called from the window destructor,
  also of BWindows from BBitmaps, which have
  never been run (this might need review), at
  least I seem to have solved the crashing
  problems introduced by actually deleting the
  view hirarchy in the BWindow destructor
* fixed _Draw() for being used non-recursively,
  temporarily disabled DrawAfterChildren, which
  didn't work yet anyways (because views cannot
  draw over children in the server yet)

Window:
* small cleanup when deleting shortcuts
* sync with the server when having send
  AS_DELETE_WINDOW (see ServerWindow above)
* fixed locking in Begin/EndViewTransaction()
* removed folding of _UPDATE_ messages, since
  there is only one ever in the queue
* set the fInTransaction flag during an update,
  I plan to use this in BView later to
  flush the link when drawing outside of an
  update
* BView::_Draw() is now called by view token,
  this gives the next leap forward in speed,
  the overhead because of drawing clean views
  was considerable



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-08 22:04:52 +00:00
Stephan Aßmus
f15ba33751 synced with version 1.59 of the OpenTracker rep
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-08 18:00:25 +00:00