Let me start my Cemetech membership with an announcement of the release of Punix beta 3.
You can download the TIB file or read the release notes. Punix is hosted on SourceForge.
Punix is a Unix-like OS for the TI-92+ and maybe later for the TI-89(Ti). The goal is to build a completely functional kernel and then port some small *nix utilities (shell, cat, echo, etc) to it. I'd like it to be as close to POSIX compliant as is practical on such a small platform.
Punix currently supports preemptive multi-tasking (with a scheduler that supports nice/priority levels), a VT100/VT220 style terminal (supports most escape codes), and device drivers for I/O port (one for audio and another for data transfer). It does not currently have a file system. That is the last major piece I have to write. I have a good design in mind already, but I have to integrate it into the actual kernel code. The file system will be stored entirely in FlashROM. (I might add a temporary filesystem in RAM some day. Who knows?)
Given the lack of a file system, I wrote some simple user programs inside the kernel. They run in user mode just as they would if they were loaded from binary files, but the executable code happens to be located inside the kernel. This includes the init program, a small shell, and a handful of simple *nix utilities. These are all stripped-down versions, as they are basically a demo, and they will be discarded (or moved outside the kernel) once there is a working file system.
Here's an animated screenshot:
(That was from a couple days ago, before vfork() worked, and before I added a CPU busy status indicator, but it's otherwise current.)
You can download the TIB file or read the release notes. Punix is hosted on SourceForge.
Punix is a Unix-like OS for the TI-92+ and maybe later for the TI-89(Ti). The goal is to build a completely functional kernel and then port some small *nix utilities (shell, cat, echo, etc) to it. I'd like it to be as close to POSIX compliant as is practical on such a small platform.
Punix currently supports preemptive multi-tasking (with a scheduler that supports nice/priority levels), a VT100/VT220 style terminal (supports most escape codes), and device drivers for I/O port (one for audio and another for data transfer). It does not currently have a file system. That is the last major piece I have to write. I have a good design in mind already, but I have to integrate it into the actual kernel code. The file system will be stored entirely in FlashROM. (I might add a temporary filesystem in RAM some day. Who knows?)
Given the lack of a file system, I wrote some simple user programs inside the kernel. They run in user mode just as they would if they were loaded from binary files, but the executable code happens to be located inside the kernel. This includes the init program, a small shell, and a handful of simple *nix utilities. These are all stripped-down versions, as they are basically a demo, and they will be discarded (or moved outside the kernel) once there is a working file system.
Here's an animated screenshot:
(That was from a couple days ago, before vfork() worked, and before I added a CPU busy status indicator, but it's otherwise current.)