Commit Graph

154 Commits

Author SHA1 Message Date
Axel Dörfler
a8ee1dbc56 Added Marcus version of __swap_int16(); it's commented out for now, though,
but we might want to add it later.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 12:23:03 +00:00
Axel Dörfler
d8018ea5b1 Fixed a build bug I introduced earlier.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 03:54:36 +00:00
Axel Dörfler
7cde8a9d7f Implemented __swap_int16/32/64() (float/double are missing right now, but should
be the same as __swap_int32/64()).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-07 17:22:15 +00:00
Axel Dörfler
c3b3abea79 some style cleanups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-02 23:54:14 +00:00
beveloper
188b5de0bf renamed atomic_read() into atomic_get() (since we already have atomic_set(), but not a atomic_write())
renamed user_??? functions into the new _user_??? naming style.
changed implementation of PPC 64 bit atomic functions to use (un)lock_memory()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 01:21:56 +00:00
Axel Dörfler
d7ef3fc59c Now ignores the ending of ordered numbers (1st, 2nd, 3rd, ...).
Added the "week[s]" keyword to accept strings like "5 weeks", doesn't work
right yet in the "next/last week" case - that extra case should be added to
computeRelativeUnit().
Removed an unused variable.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-27 01:12:51 +00:00
Axel Dörfler
13e966c78e Big (and final for now) update to the code, it's now complete and working better
and faster than the R5 code as far as I have checked it.
Refactored the source a bit, it's now much clearer: divided the heavily overloaded
type field into type/unit/flags.
Introduced some new methods to track everything we have to to provide a
useful date in hopefully all cases.
Now supports using a dash to mark negative values as well.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-26 02:21:19 +00:00
Axel Dörfler
770108b448 Added alternate identifier strings (mostly abbreviations).
Mixed up comma/colon/semicolon in some stupid ways...
Fixed a bug that prevented weekday/month names to be matched correctly.
Temporarily enabled some debug output.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-24 11:48:16 +00:00
Axel Dörfler
cb19965e13 Added an initial implementation of parsedate(), parsedate_etc(), get_dateformats(),
and set_dateformats().
It's not complete yet, but already quite useful.
Added a "d.m.y" to the R5 set of formats.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-23 18:32:09 +00:00
beveloper
5fe840b9b5 fixed address checking in ppc atomic functions.
fixed compilation on x86.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-21 23:36:06 +00:00
beveloper
50e0ce4bee Implemented new syscalls for 32 and 64 bit atomic operations.
They are only used if the architecture doesn't support them directly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-21 23:02:00 +00:00
beveloper
fb16941a02 added atomic_read
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-21 17:55:56 +00:00
beveloper
0163e36659 Added 32 bit atomic read.
Implemented all 64 bit atomic operations.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 23:21:26 +00:00
Axel Dörfler
2f096f5a3e Added/changed/fixed area syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 15:58:06 +00:00
beveloper
ea8af9630a renamed test_and_set into atomic_test_and_set
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:56:22 +00:00
beveloper
40ac5c5195 cvs server: Up-to-date check failed for `src/kernel/core/vm/vm.c'
cvs [server aborted]: correct above errors first!
cvs commit: saving log message in /tmp/cvsFPtfaj


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:48:15 +00:00
beveloper
6f54d569e9 added 64 bit atomic functions (implementation still pending),
removed non atomic functions from this file


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:19:42 +00:00
beveloper
a36eac86ac Removed system_time from atomic.S file and added it in a separate one.
The atomic and system_time function are now included in the kernel_os_arch_x86.o file


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:16:43 +00:00
beveloper
890b96d5c5 removed system_time from atomic.S file and added it in a separate one.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:15:23 +00:00
Axel Dörfler
fe8a9052c0 Updated for the new BeOS compatible syscalls - create_area() is no longer
broken.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-19 14:20:06 +00:00
Axel Dörfler
beb1a1b992 Now uses the new BeOS compatible area calls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-19 14:18:30 +00:00
Axel Dörfler
f3514075a1 opendir() did not correctly set "errno" if sys_open_dir() failed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-18 02:08:58 +00:00
shatty
84e10936b8 fixed implementation to match new posix/beos compatible prototype for tolower/toupper, also added isblank implementation
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-16 07:14:04 +00:00
shatty
e9004ce2e9 include sys/param.h for MAXPATHLEN
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 08:11:16 +00:00
Axel Dörfler
9d67600e03 Forgot to complete the comment :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-05 13:40:37 +00:00
Axel Dörfler
af1cb3f2da Fixed strlcat(); the old version assumed to have "maxLength" (3rd parameter)
bytes space *after* the dest string in the copy loop.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-05 13:30:06 +00:00
Axel Dörfler
1792510380 Fixed the pipe creation and made it secure against very fast threads, as
suggested by Ingo.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 02:44:20 +00:00
Axel Dörfler
e59c643b47 Implemented the pipe() command - ready for the upcoming pipefs implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 02:55:15 +00:00
Axel Dörfler
dcec969499 get_driver_settings_string() now returns the new B_BUFFER_OVERFLOW code
if the buffer is too small for the settings string.
Added/changed some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 22:17:09 +00:00
Axel Dörfler
5133bded7f Fixed some warnings that occured with -Wall - the tests should be compiled
with this by default, like the whole project, too.
Removed the B_FILE_NAME_LENGTH definition, since our headers are now correct.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 19:56:33 +00:00
Axel Dörfler
b1b0cf9114 The '=' symbol can now be used without surrounding white space: it will
be accepted between the parameter name and its first value - but it will
be added to any other values for compatibility reasons.
put_string() now correctly quotes strings if needed - the new put_chars()
function puts out a string unchanged (both only used internally anyway).
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 17:13:10 +00:00
Axel Dörfler
2c67210865 Added two more ToDo items so that I do not forget about them.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 21:14:27 +00:00
Axel Dörfler
1907b4d0ca Added libroot/os/driver_settings.c to the build - this is now also part
of the new kernel_os_main.o object file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:14:36 +00:00
Axel Dörfler
7fc8f0544e Fixed addition of empty parameters in certain situations.
Improved the output of get_driver_settings_string().
Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:03:49 +00:00
Axel Dörfler
b959dda1b7 This replaces kernel/core/driver_settings.c - its functionality will now
be available to userland applications as well.
Furthermore, the API & grammar has been extended. There is now a '=' allowed
between the key and its values. Also, '\n' can now be replaced with ';'. These
changes allow flat driver_settings strings.
It doesn't work perfectly right now, but it's a start. A test application
will be added soon, the kernel file will be removed soon as well, and the
build updated.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 04:06:43 +00:00
Axel Dörfler
f3df767f76 Added a BeOS compatible strdup() implementation; unlike other strdup()
implementations (and against its standard behaviour), it does now
handle a NULL string parameter gracefully.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 19:35:33 +00:00
Axel Dörfler
0c6fce04e6 Removed the BSD strdup() routine since it is not BeOS compatible.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 19:34:03 +00:00
Axel Dörfler
db44cc624c Fixed a typo: don't use copy&paste...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 05:52:41 +00:00
Axel Dörfler
ed6b39346e Added dumb implementations for system_time() and TLS: system_time() currently
just returns the contents of the time base register, and the TLS implementation
is only working correctly for single threaded applications. Enough for testing,
at least.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 05:44:12 +00:00
Axel Dörfler
1f78a92b12 Implemented the atomic functions to get in touch with PPC assembly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 02:17:54 +00:00
Daniel Reinhold
cb25a0921b implemented tcsetattr()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-04 09:11:25 +00:00
Daniel Reinhold
15474ec36c added stubs for the termios speed control functions
they are stubs because the BeOS does not support them


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-04 08:06:33 +00:00
Daniel Reinhold
f291226628 initial implementation of ttyname()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-04 07:13:44 +00:00
Daniel Reinhold
789a8d2791 add termios to the build
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-04 03:29:59 +00:00
Daniel Reinhold
d122daf52a initial support for termios in libroot
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-04 03:25:10 +00:00
Daniel Reinhold
953aa0fc95 fleshed out some tty stuff...
isatty() is fixed - altho this is basically academic since we don't have any
drivers for terminal devices written yet (but at least the code is ready when we do)

also, ctermid() is implemented - which is of no big consequence


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-04 00:53:22 +00:00
Axel Dörfler
64aebcff0e Added glibc's proprietary strchrnul() function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 14:50:10 +00:00
Axel Dörfler
6e5e43433e atexit() is now thread-safe.
Now calls _IO_cleanup() instead of __cleanup() to be able to be compiled
against glibc stdio as well.
Renamed variables to be much nicer.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 14:47:56 +00:00
Axel Dörfler
f57208999e Renamed __cleanup() to _IO_cleanup() to be able to compile the glibc version
as well.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 14:40:53 +00:00
Axel Dörfler
2b64308b14 Removed an unused header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 14:39:26 +00:00