Andrew Morton

akpm@osdl.org  Yes, I know these pages are boring.  But they load faster than yours do!

Linux things

A few things which I'm working on or maintaining.

The Applix 1616 project

The 1616 is a 68000-based personal computer which I developed in the late eighties.  It ran an EPROM-based Unix-like operating system called 1616/OS.  Read all about it!

CS++: a bytecoded compiler and interpreter for a C++-like language

CS++ is quite feature rich, mature and useful.  Application development in this language is very rapid.

For more information and download please see the CS++ page.

An editor, Dde

Despite all the competition, Dde remains my editor of choice.  I started it no less than thirteen years ago, so the source isn't pretty. A few features have been put in by my old friend Conal Walsh.

Dde is non-modal, fast, light and feature rich. The wonderfully obscure command set is originally based on WordStar (I said it was old).  Once you've used Dde it's hard to go back to other editors - I guess this is why Conal ported it to WiNTendo.

Dde is terminfo-based. I have a hacked version of xvt (an xterm clone) with which Dde cooperates to give mouse-based functions.

There is a separate CS++ application (cs++tags) which generates tag files for Dde, although Exuberant-Ctags does a much better job.

Dde can be found here.

A TMS34010 development system

The Texas Instruments 34010 is a discontinued 32 bit CISC microprocessor with an on-board graphics engine.

The 34010 is quite bizarre in that it is bit addressable: to advance a pointer by a byte you must add eight to it. When I discussed this with Richard Stallman he said that gcc would cope with it easily.  He was wrong - at all levels gcc is littered with the assumption that

char *p;
p = p + 1;
and
char *p
p = (char *)((long)p + 1);
are equivalent.

This development system includes a port of gcc and g++ (2.5.8), a YACC-based assembler, a linker, an archiver, an nm equivalent, a disassembler, a download utility and various other bits and pieces.

The 34k development system may be accessed here.

A real-time kernel

This is a hard-realtime message passing kernel with and not much else.

It's written in C++ (g++) for the TMS34010.  There's also infrastructure for the Motorola 68000, although I haven't used that for a while.  This kernel should be quite portable, given that the 34010 is little-endian and the 68k is big-endian. The 68k-specific code is only 130 lines.

The realtime kernel source is in the lib/libk/ directory of the 34010 source tree, available here.

 


This site constructed with    tar xvfz /dev/tty
Andrew Morton - akpm - 14 Nov 2001