John Hodge [Thu, 24 Mar 2011 08:02:58 +0000 (16:02 +0800)]
Usermode/ld-acess - x86_64 support
John Hodge [Thu, 24 Mar 2011 02:35:02 +0000 (10:35 +0800)]
Fixing gitigore, added a config file for the 'host' architecture
- Used for using clang's scan-build tool
John Hodge [Thu, 24 Mar 2011 02:31:13 +0000 (10:31 +0800)]
Usermode - Changed build system to separate different arch builds
- Now all object files are put in a directory for each architecture
> e.g. 'obj-i386/main.o'
- Fixed a compile error in telnet
John Hodge [Thu, 24 Mar 2011 02:28:28 +0000 (10:28 +0800)]
Usermode/ld-acess - Reworked build structure and syscall files
- Fixed up many places that used Uint in place of a pointer
- Converted the *.asm files into common and architecture-dependent parts
> Some hackery with $(CPP) was used :)
John Hodge [Wed, 23 Mar 2011 05:56:59 +0000 (13:56 +0800)]
Usermode/axwin2 - Commenting
John Hodge [Wed, 23 Mar 2011 05:45:58 +0000 (13:45 +0800)]
Fiddling with build system
John Hodge [Wed, 23 Mar 2011 05:44:17 +0000 (13:44 +0800)]
NE2000 - Cleaning up code, moved to a semaphore
John Hodge [Wed, 23 Mar 2011 05:36:08 +0000 (13:36 +0800)]
Usermode/telnet - Moved to new routing API
John Hodge [Wed, 23 Mar 2011 05:35:22 +0000 (13:35 +0800)]
Usermode/libnet - Added support for change to routing API
John Hodge [Wed, 23 Mar 2011 05:34:28 +0000 (13:34 +0800)]
IPStack - Working on removing future packet cache
- Replacing with a ring buffer (faster to work with and more reliable)
John Hodge [Wed, 23 Mar 2011 05:33:04 +0000 (13:33 +0800)]
Cleaning up mostly
- Fixed makefiles to not assume that environment is correctly set (I.e. $(ARCH))
- Changed GCC to CC and NASM to AS in makefile trace output
- Cleaned up top-of-file externs
- Improved Heap_Dump output
John Hodge [Wed, 23 Mar 2011 05:26:28 +0000 (13:26 +0800)]
Fiddling with the x86_64 port
John Hodge [Mon, 21 Mar 2011 08:21:01 +0000 (16:21 +0800)]
IPStack - Slight header updated
John Hodge [Mon, 21 Mar 2011 08:20:08 +0000 (16:20 +0800)]
IPStack - Added ability to use /Devices/ip/routes/* as a shortcut to the interface node
John Hodge [Mon, 21 Mar 2011 08:19:36 +0000 (16:19 +0800)]
IPStack - Working on implementing IPv6
John Hodge [Mon, 21 Mar 2011 08:18:55 +0000 (16:18 +0800)]
IPStack - Cleanup to ARP code (slight)
John Hodge [Mon, 21 Mar 2011 08:18:35 +0000 (16:18 +0800)]
IPStack - Cleaning IPv4 code, implemented routing
John Hodge [Mon, 21 Mar 2011 08:17:59 +0000 (16:17 +0800)]
IPStack - Fiddling with firewall
John Hodge [Mon, 21 Mar 2011 08:17:29 +0000 (16:17 +0800)]
IPStack - Cleaning up TCP code
John Hodge [Mon, 21 Mar 2011 08:15:32 +0000 (16:15 +0800)]
IPStack - Fiddling with firewall code
John Hodge [Wed, 2 Mar 2011 16:08:21 +0000 (00:08 +0800)]
Bedtime commit, misc changes
- Debugging in threads
- TCP fixes
- Overhaul of IRC client
> TODO: GUI instead of stream based (or at least implement a consistent prompt)
- Fixed type error in strchr() and friends
John Hodge [Wed, 2 Mar 2011 06:12:13 +0000 (14:12 +0800)]
Overhaul of TCP code (still messy, but now WORKS!!!!)
John Hodge [Wed, 2 Mar 2011 06:11:45 +0000 (14:11 +0800)]
IRC Client - Added Readline support, error catching
John Hodge [Wed, 2 Mar 2011 06:10:15 +0000 (14:10 +0800)]
Added telnet to root Makefile
John Hodge [Wed, 2 Mar 2011 06:09:46 +0000 (14:09 +0800)]
Upgrading telnet client to new TCP code
John Hodge [Wed, 2 Mar 2011 05:06:26 +0000 (13:06 +0800)]
Updated test client for Qemu user network
John Hodge [Wed, 2 Mar 2011 05:05:33 +0000 (13:05 +0800)]
Fixed default minium size in vsnprintf being 1 (should be 0)
- Fixes empty strings being inserted as one space
John Hodge [Wed, 2 Mar 2011 05:04:09 +0000 (13:04 +0800)]
Added debug (disabled) to Semaphore_Signal
- Used to find bugs in keyboard interrupt handler
John Hodge [Wed, 2 Mar 2011 05:03:31 +0000 (13:03 +0800)]
Fixed bug in kernel script parsing (uninitialised value)
John Hodge [Wed, 2 Mar 2011 05:02:39 +0000 (13:02 +0800)]
Bugfix in NE2K driver (didn't wait for the DMA to be ready)
John Hodge [Wed, 2 Mar 2011 05:01:47 +0000 (13:01 +0800)]
*partial commit* - Added debut name to VFS_SelectNode
John Hodge [Wed, 2 Mar 2011 05:00:44 +0000 (13:00 +0800)]
Bugfix in Ring buffer (embarrasing)
John Hodge [Tue, 1 Mar 2011 07:13:25 +0000 (15:13 +0800)]
Cleaning up (committing stuff)
- Stub proc.h for AcessNative
- SIF format spec
John Hodge [Tue, 1 Mar 2011 07:02:09 +0000 (15:02 +0800)]
Added telnet client
John Hodge [Tue, 1 Mar 2011 06:58:09 +0000 (14:58 +0800)]
Made IRC use select()
- Also fixed filesystem xMKDIR
John Hodge [Tue, 1 Mar 2011 06:57:55 +0000 (14:57 +0800)]
ld-acess - Exported select()
John Hodge [Tue, 1 Mar 2011 06:42:05 +0000 (14:42 +0800)]
Usermode implementation of select()
John Hodge [Tue, 1 Mar 2011 06:40:01 +0000 (14:40 +0800)]
Fixed vsnprintf
- '-' is padding, not '+'
- Added precision
John Hodge [Tue, 1 Mar 2011 06:39:34 +0000 (14:39 +0800)]
Fixing select() implementation (and usage)
John Hodge [Tue, 1 Mar 2011 06:38:03 +0000 (14:38 +0800)]
Kernel - Added backtrace for user segfault
John Hodge [Tue, 1 Mar 2011 06:35:35 +0000 (14:35 +0800)]
Mental note, adding resources is a good idea
John Hodge [Tue, 1 Mar 2011 06:35:13 +0000 (14:35 +0800)]
axwin2 - Little cleanup
John Hodge [Tue, 1 Mar 2011 06:32:44 +0000 (14:32 +0800)]
AcessNative - Compile fixes after select() implementation
John Hodge [Tue, 1 Mar 2011 06:31:03 +0000 (14:31 +0800)]
libreadline - Rework of library (less sucky now!)
John Hodge [Mon, 28 Feb 2011 06:30:17 +0000 (14:30 +0800)]
Kernel - Implemented select(), partially debugged
- There is quite likely a couple of bugs in there
John Hodge [Mon, 28 Feb 2011 06:27:29 +0000 (14:27 +0800)]
Moved to using a perl syscall generation script
- Goodbye php
John Hodge [Mon, 28 Feb 2011 03:17:35 +0000 (11:17 +0800)]
Implementing (and using) select() at kernel level
John Hodge [Sun, 27 Feb 2011 14:37:54 +0000 (22:37 +0800)]
Kernel - Some rational comments to select
John Hodge [Sun, 27 Feb 2011 13:54:09 +0000 (21:54 +0800)]
Kernel - Implementing select()
- Fully untested, but it does compile
- TODO: Complete the helpers (flag setting), and port blocking calls
to use select() instead of using their own semaphores.
- TODO: Implement an alarm in threads (or timer) to implement the timeout
argument to select()
John Hodge [Sun, 27 Feb 2011 11:13:45 +0000 (19:13 +0800)]
Modules/FDD (minor) - Removed defunct code
John Hodge [Sun, 27 Feb 2011 11:13:27 +0000 (19:13 +0800)]
Notes on how to implement select()
John Hodge [Sun, 27 Feb 2011 10:51:27 +0000 (18:51 +0800)]
Misc changes, fixing problems with long log strings
- Added a very early boot indicator (for RHW tests)
- Fixed some warning messages
John Hodge [Sun, 27 Feb 2011 10:50:16 +0000 (18:50 +0800)]
Modules/FDD - Moved head settle delay to SeekTrack, speeds up reads
John Hodge [Sun, 27 Feb 2011 10:49:33 +0000 (18:49 +0800)]
Modules/ATA - Debugging issue with VBox, problem still there
John Hodge [Sun, 27 Feb 2011 10:48:35 +0000 (18:48 +0800)]
libc - Fixed an embarrasing bug in strchr :|
John Hodge [Sun, 27 Feb 2011 10:47:00 +0000 (18:47 +0800)]
Fixing makefiles
- Ignoring if $(xMKDIR) fails (darn mtools)
- Fiddling with warning flags
- Added axwin and others to /Makefile
John Hodge [Sun, 27 Feb 2011 10:46:15 +0000 (18:46 +0800)]
IPStack - Bugfixing (and testing IRC client)
John Hodge [Sun, 27 Feb 2011 10:44:54 +0000 (18:44 +0800)]
axwin2 - Working on GUI, implemented image loading
- Also fixed URI/URL handling code (needs correctness though)
John Hodge [Sun, 27 Feb 2011 10:42:34 +0000 (18:42 +0800)]
Modules/Display/VESA - Fixes to mode select
- Also cleaned up write function
John Hodge [Sun, 27 Feb 2011 10:41:38 +0000 (18:41 +0800)]
Moved to using semaphores in VTerm
John Hodge [Thu, 17 Feb 2011 13:19:33 +0000 (21:19 +0800)]
Fixed `make install` issues, bugs with VESA
John Hodge [Mon, 14 Feb 2011 09:35:00 +0000 (17:35 +0800)]
Added some very pedantic warning flags
John Hodge [Sun, 13 Feb 2011 07:10:02 +0000 (15:10 +0800)]
Reworked semaphores to be symetric
- Can block on Signal now
- Removing busy waits
John Hodge [Sun, 13 Feb 2011 04:28:32 +0000 (12:28 +0800)]
Working on x86_64 build
John Hodge [Sun, 13 Feb 2011 04:28:04 +0000 (12:28 +0800)]
Fixed a bug where stack was accessed after address space switch
John Hodge [Sun, 13 Feb 2011 04:27:49 +0000 (12:27 +0800)]
cleanup (removed debug comment)
John Hodge [Sun, 13 Feb 2011 04:26:15 +0000 (12:26 +0800)]
Fixed crt0.o not creating its output directory
John Hodge [Sun, 13 Feb 2011 04:25:43 +0000 (12:25 +0800)]
Cleanup (debug statements removed)
John Hodge [Sun, 13 Feb 2011 04:24:07 +0000 (12:24 +0800)]
Fixed gitignore to skip x86_64 objects
John Hodge [Sun, 13 Feb 2011 04:22:47 +0000 (12:22 +0800)]
Changed to a classfull sequential allocation algo
- Means that addresses end up being allocated sequentially (instead
of in reverse), cleans up the memory dumps.
John Hodge [Sat, 12 Feb 2011 04:29:50 +0000 (12:29 +0800)]
TSC backed timekeeping, 64-bit integer printing
- Improved 64-bit division (using the FPU)
John Hodge [Sat, 12 Feb 2011 02:25:00 +0000 (10:25 +0800)]
Cleaned up places where MM_Allocate was used without checks
John Hodge [Sat, 12 Feb 2011 01:28:35 +0000 (09:28 +0800)]
Big bugfixes from trying a Clone/fork bomb
- User heap bugfixes (why was I using sbrk?)
- Threads_Kill (handling non-active threads)
- Proc_Clone (Error handling from MM)
- MM_NewKStack (OOM handling)
John Hodge [Wed, 2 Feb 2011 13:50:27 +0000 (21:50 +0800)]
Fixed compile errors, added Semaphore code
I will compile before committing
I will compile before committing
I will compile before committing
John Hodge [Wed, 2 Feb 2011 12:33:49 +0000 (20:33 +0800)]
Updated InitRD to new usermode layout, cleanups in networking
John Hodge [Sat, 29 Jan 2011 04:32:28 +0000 (12:32 +0800)]
Usermode - Starting on a text editor
John Hodge [Tue, 25 Jan 2011 14:25:50 +0000 (22:25 +0800)]
Slight bugfixes and output cleanups
John Hodge [Tue, 25 Jan 2011 13:41:13 +0000 (21:41 +0800)]
IPStack / ifconfig - Routing changes
- Implemented implicit routes in interface.c/routing.c
> Implicit routes are routes that are constructed on the fly from
an interface.
- Vastly improved the route support in ifconfig
- (Misc) Added some missing syscalls to Usermode/acess/sys.h
John Hodge [Tue, 25 Jan 2011 13:39:59 +0000 (21:39 +0800)]
ld-acess - Fixed bugs due to not testing from AcessNative changes
- Possibly some edge cases left in if someone tries to link against
libld-acess.so or ld-acess.so and the name does not match the
hard coded value.
John Hodge [Tue, 25 Jan 2011 13:38:44 +0000 (21:38 +0800)]
Kernel - Fixed page fault Proc_ReturnToUser
John Hodge [Mon, 24 Jan 2011 15:01:35 +0000 (23:01 +0800)]
IPStack - Routing improvement
- When creating an boot config, routes are set up too
> TODO: Implement a static route for each interface (as part of
tInteface), removing the need to set a route when creating.
> Problem, maintaining?
> No real problem, just not have those in the main route list (if
you want an interface route to be more important than another,
just set it manually)
John Hodge [Sun, 23 Jan 2011 15:08:11 +0000 (23:08 +0800)]
IPStack - Heaps of network fixes
- Also reduced verbosity
John Hodge [Sun, 23 Jan 2011 13:34:53 +0000 (21:34 +0800)]
Kernel - So... should remember to initialise structures
- Forgot to clear the ret->Lock in IOCache_Create
> Caused random locks if the lock protector was not 0 when
malloc'd
- Set up fractal mappings from boot
> Exposed by trying to use Log_Debug before VMem was fully initialised
John Hodge [Sun, 23 Jan 2011 08:41:43 +0000 (16:41 +0800)]
AcessNative - Bugfixing
- Still have heaps of syscalls to implement
John Hodge [Sun, 23 Jan 2011 02:41:09 +0000 (10:41 +0800)]
AcessNative - Reworked protocol to be simpler
- Completed the interface code, not tested yet
- Switched to a single list of parameters, with flags for returned values
John Hodge [Sat, 22 Jan 2011 15:32:39 +0000 (23:32 +0800)]
AcessNative - Getting there... (Bedtime commit)
John Hodge [Sat, 22 Jan 2011 12:59:13 +0000 (20:59 +0800)]
Lots of work on the AcessNative kernel
- Fixed some bugs (and possibly introduced some) in the main kernel
- Cleaned up a heap of other stuff in AcessNative/ld-acess
- Fixed a bug in the TCP code that could cause a deadlock
John Hodge [Tue, 18 Jan 2011 23:48:16 +0000 (07:48 +0800)]
Renamed ld-acess.so_src directory to ld-acess_src
John Hodge [Tue, 18 Jan 2011 23:44:34 +0000 (07:44 +0800)]
- Misc changes
- Tracing case where interrupts are disabled
> In the x86 build, somewhere (in some cases) IF is cleared when it should
not be, causing a system lock up.
- Sped up Heap_Allocate with __Bytes == 0 (returns an non-null invalid pointer)
John Hodge [Tue, 18 Jan 2011 12:47:12 +0000 (20:47 +0800)]
Big changes to AcessNative
- ld-acess can now execute an application
> the syscall interface is not yet completed, so nothing happens
- Getting ld-acess working required some changes to the Usermode build
system, specifically making ld-acess.so actually a shared library.
> It was being linked statically, causing the AcessNative versions of
syscalls to not be used (and causing segfaults on "int 0xAC")
John Hodge [Thu, 30 Dec 2010 10:12:55 +0000 (21:12 +1100)]
AcessNative - Work on the ELF Loader
- Still not working, but does load now
- Updated gitignore to ignore vim swap files
John Hodge [Mon, 20 Dec 2010 01:55:59 +0000 (10:40 +0845)]
AcessNative - Cleaned up some of acesskernel's code
- Moved logging etc out to a helper function to keep main.c clean
- Added a common syscalls header to aid maintaining the syscall
interface.
John Hodge [Mon, 20 Dec 2010 01:54:45 +0000 (10:39 +0845)]
AcessNative - ld-acess - Woking on ELF loading
John Hodge [Mon, 20 Dec 2010 01:52:13 +0000 (10:37 +0845)]
Fixed bad handling of VFS_AllocHandle_
John Hodge [Fri, 10 Dec 2010 11:04:38 +0000 (19:04 +0800)]
Through many hacks, AcessNative now compiles
- Still doesn't do anything
John Hodge [Fri, 10 Dec 2010 09:00:37 +0000 (17:00 +0800)]
Fixed places where char* was used in place of const char*
> Still need to update filesystem Write functions to take const void*
> Also started on AcessNative threads.c clone
John Hodge [Fri, 10 Dec 2010 05:02:21 +0000 (13:02 +0800)]
Merge branch 'master' of serenade.mutabah.net:acess2
John Hodge [Fri, 10 Dec 2010 04:57:57 +0000 (12:57 +0800)]
AcessNative - ld-acess initial commmit (non-compile)
John Hodge [Fri, 10 Dec 2010 04:52:02 +0000 (12:52 +0800)]
AcessNative - Wine equivalent for Acess
- Allows native Acess applications to be run on Windows/Linux
- Uses large parts of the main kernel, reducing code duplication
- Still incomplete, will use SDL for video, and a UDP server for
User->Kernel requests.
John Hodge [Fri, 10 Dec 2010 04:47:46 +0000 (12:47 +0800)]
Cleaning up code, and separating a little to allow native code to share
> Split vfs/open.c into handle.c, allowing the handle code to be
replaced in the native emulation code.
> Changed a few referenes to Uint to tVAddr
These changes were made to allow the kernel to be compiled as a
user mode executable for windows/linux, to improve turnover speed
for user applications.
UCC git Repository :: git.ucc.asn.au