Commit Graph

11846 Commits

Author SHA1 Message Date
Ingo Weinhold
bc421eb5c9 Jam rule SetupFSShellIncludes that sets up the include search dirs for building the fs_shell. Reused, hence in a separate file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:34:29 +00:00
Ingo Weinhold
e6f3010336 A whole bunch of changes to make the fs_shell build (and work) under
Linux:
* Corrected use of error code. We consequently use the errors we
  defined to be compatible with BeOS and translate error code to and from
  the build platform where necessary.
* Consequently use the structs my_stat and my_dirent and the type
  fs_off_t when dealing with the guest FS. my_dirent had to be adjusted
  to be BeOS compatible.
  We wrap the platform fstat() now to translate the struct stat to the
  BeOS representation.
* Fixed a bug introduced with the last checkin: The fs_shell crashed after
  executing a command.
* Fixed printf() format warnings under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:32:35 +00:00
Adi Oanca
74d5a8f70e Fixed a couple of crashes. app_server nicely quits now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:21:36 +00:00
Ingo Weinhold
9b3fd9f88c Support for translating error codes between the build platform and the
emulated system (i.e. the FS).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:18:54 +00:00
Ingo Weinhold
81d91d7fcb Missing header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:16:35 +00:00
Ingo Weinhold
3844cf706a * New variable DEBUG_FLAGS which can be used to specify the gcc debug
flags to be used. Defaults to -g. You might want to use -ggdb with
  gcc 3.x.
* Added variable C++_SUPPORT_LIBS. Is set to sup++ for gcc 3.x.
* ResComp can be built under BeOS only at the moment.
* Define _NO_INLINE_ASM when building for the build platform. Is not
  strictly necessary under BeOS, but helps under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:15:44 +00:00
Jérôme Duval
a15b332e3b added an implementation for strptime from FreeBSD (1.35, 1.25, 1.11)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 15:51:05 +00:00
Jérôme Duval
89104b34c4 Change the license (no no Axel doesn't change his name :))
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 10:25:24 +00:00
Axel Dörfler
f7eefd8207 Fixed warnings: possibly uninitialized variable, missing friend classifier (struct/class).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:18:12 +00:00
Axel Dörfler
cc8aae32ee We're using now Ingo's new doubly linked list implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:15:16 +00:00
Axel Dörfler
8be9e1dbae Added empty arch_user_debugger.h header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11556 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:11:08 +00:00
Axel Dörfler
96828efafc Added empty arch_debugger.h header file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:07:59 +00:00
Axel Dörfler
0cbd4edc72 Fixed warning in the real time stuff. Added empty user debugger functions
to keep things building.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 06:04:59 +00:00
Axel Dörfler
1f6dcd134f write_cached_block() would write the wrong block in case there was
a previous and unfinished transaction. It should now work correctly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 01:10:16 +00:00
Ingo Weinhold
d2df6f5a20 We compile the fs_shell with BuildPlatformMain, which is more correct. We
use all Haiku headers save the POSIX and STL headers. Let's see how we
fare on Linux with this change...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:47:39 +00:00
Ingo Weinhold
2585523bed Changed since the fs_shell additional command mechanism has changed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:44:59 +00:00
Ingo Weinhold
fc5863cce5 * Renamed fsh.c to fsh.cpp to have a more usable static initialization at
hand. Fixed all compiler errors.
* Changed the mechanism for including additional commands. Now an array
  is exported by the instance code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:43:23 +00:00
Nathan Whitehorn
3ca956b5bb Fixed a bug in executing control methods without return values.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:40:21 +00:00
Ingo Weinhold
ea8e6dbaab Made C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:40:03 +00:00
Ingo Weinhold
25209a1365 Commented out iso9660 and udf tests for the time being.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:39:20 +00:00
Ingo Weinhold
8dc98d6d85 BuildPlatformMain has a new boolean parameter to disable resetting the header search paths.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:38:19 +00:00
Nathan Whitehorn
92ba8215d2 Added basic (i.e. argumentless) control method execution. Now we can read fan speeds, cpu temperatures, laptop lid states, and all sorts of other glorious things.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 00:01:35 +00:00
Ingo Weinhold
a57bb4edc8 Added fs_shell (for fs_shell_command).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:23:54 +00:00
Ingo Weinhold
50329cd67c Added a BeOS specific command (using ports) to send commands to the
fs_shell. A Linux specific one will follow as soon as the fs_shell builds
under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:23:11 +00:00
Ingo Weinhold
ce13a6d573 Follow-up changes to make the fs_shell instances build after adding the scripting extension.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:20:51 +00:00
Ingo Weinhold
87580cd7ab Extended fs_shell by an interface for external scripting.
This is the first step towards getting rid of the UserlandFS dependency
for building a HD image. Which is in turn the first step to being able to
build one under Linux.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 22:19:03 +00:00
Nathan Whitehorn
53403b7edc ACPI bus manager interface, revision 3. Now allows full namespace traversal. Next is AML control method execution.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 19:31:30 +00:00
Axel Dörfler
23b6e06ac6 While the block list was written sorted to the log, the blocks were in
transaction order which caused corrupted disks when a log was replayed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 17:55:49 +00:00
Axel Dörfler
4bb67ad318 Added small test tool to dump the contents of a BFS log.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 17:26:01 +00:00
Jérôme Duval
d4fe9d12d0 added missing posix error messages
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 16:46:24 +00:00
Jérôme Duval
9f20e1783b added some missing posix error codes. i don't know if they exist as BeOS error codes at all
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 16:42:07 +00:00
Jérôme Duval
613757e677 added a proto for strptime
replaced copyright header with author


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 16:39:50 +00:00
Ingo Weinhold
121f7fb374 Allow setting a couple of EFLAGS bits.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 14:53:11 +00:00
Ingo Weinhold
935486a09f Added some more EFLAGS bits.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 14:51:48 +00:00
Stefano Ceccherini
41d64d6792 Looks like I _HAD_ screwed something. Fixed some wrong stuff about printjob's settings, implemented more functions. Communication with the print_server should be ok, and also settings. Now comes the hard part: setting up the spool file. Any hint ?
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 14:03:28 +00:00
Ingo Weinhold
59ad83d0d9 Don't allow changing the segment registers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 11:52:53 +00:00
Stefano Ceccherini
6bb758a26f Implemented some basic BPrintJob methods (hope I didn't screw anything, is there any print server guy around ?). Is there any reason why it is left out of the build (besides being incomplete) ?
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 11:15:41 +00:00
Nathan Whitehorn
c11886dbbe Now we have a nice structure for handling ACPI fixed events. This means we can do things like make acpi_button block, instead of polling it. Direct register access has gone away. The next revision of the bus manager interface should include namespace traversal and AML control method execution.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 05:05:18 +00:00
Axel Dörfler
47761c4786 Adapted to match our style guide.
Fixed warnings.
Made gArchiveNameField static (and therefore changed the prefix to 's').


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 03:44:14 +00:00
Nathan Whitehorn
b53df54f50 Made the status register clear code work. Apparently you need to write 1 to the register to set it to zero. It doesn't make any sense to me either.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 01:45:02 +00:00
Ingo Weinhold
5d2536d2af * Added functions for clearing/destroying the arch-specific thread debug
info.
* Implemented arch_set_cpu_state() (Axel, please check, what registers
  the debugger should actually be allowed to modify).
* Fixed arch_get_cpu_state(). We now explicitly copy the registers
  manually instead of using memcpy(). Added support for extended
  registers (FPU,...).
* Completed break- and watchpoint support.
* Implemented handling of debug and breakpoint exceptions.

The x86 specific part of the userland debugging support should be complete
now. That is in theory the entire debugging interface is available on x86
machines now. It's almost completely untested yet, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 00:14:38 +00:00
Ingo Weinhold
86cc722477 * DR3 is used for holding the pointer to the current struct thread*, so
we only have 3 debug registers available for break-/watchpoints.
* Added definitions for debug status register DR6. Reordered DR7 defs to
  ascending order. Added definitions for the EFLAGS flags we need.
* Added arch_thread_debug_info structure and related definitions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 00:05:02 +00:00
Ingo Weinhold
edd0aaeaee * Stop user debugging when entering the kernel and init it when leaving
it.
* Handle debug and breakpoint exceptions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:59:23 +00:00
Ingo Weinhold
98b14f8a6a * Made i386_get_current_iframe() static again, since it wasn't what was
needed to get the topmost user iframe. Added i386_get_user_iframe() for
  exactly that purpose.
* Added reinitialization of user debugging for the new thread when
  switching the context.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:56:52 +00:00
Ingo Weinhold
c8d7534e5d * Made C++ save.
* Made the parameter for restoring the FPU state const.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:52:09 +00:00
Ingo Weinhold
00a2b607d8 Added functions for clearing/destroying the architecture specific thread
debug info.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:49:20 +00:00
Ingo Weinhold
ae7c619aae * Added architecture specific structure to thread_debug_info.
* Added event callbacks for break- and watchpoints and single stepping.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:47:59 +00:00
Ingo Weinhold
0d3bc46a84 * Added the extended (FP, MMX, SSE...) registers.
* Removed orig_e{a,d}x. We will always report those in e{a,d}x.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:46:08 +00:00
Ingo Weinhold
2b3216fc5a Correct terminology.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:44:23 +00:00
Jérôme Duval
e6d5cc8d84 added binary keymap loading. Now you can type 'keymap -b /etc/Keymap/French'
it also checks for binary version number in case you try to load anything else (who knows ...)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 14:30:29 +00:00