The Boston Diaries

The ongoing saga of a programmer who doesn't live in Boston, nor does he even like Boston, but yet named his weblog/journal “The Boston Diaries.”

Go figure.

Wednesday, November 18, 2015

The Psychotherapy of Racter might be possible

I may have spoken too soon. Today I came across a reference to vm86(2), a Linux-only system call (which is okay because I'm running Linux) for the x86 32-bit architecture (which is okay because I'm running the x86 32-bit architecture). It can run x86 code in 16-bit mode (which is okay because the version of Racter I have is x86 16-bit code) and while I don't have MS-DOS (which is okay because who runs that any more?) I can probably fake enough of it to get Racter running.

The tricky part of this was to figure out how to set up and successfully call vm86(). And like most things related to this project, there's not a lot of documentation on what I'm trying to do. I finally got a test program working, so I know in theory I can do what I want to do (and it says something that using an obscure non-portable system call and writing my own half-baked version of MS-DOS system calls is the easiest approach, but I don't think I want to know what that something is).

I had to dust off my copy of The MS-DOS Encyclopedia to read in and properly load an MS-DOS executable into memory (which I think I got right—the relocation records appear to be simple but the devil is always in the details) And Racter did make a valid MS-DOS system call, and better yet, it was one I was expecting Racter to make.

So it looks promising.

I also found what claims to be a faithful implementation of the original Eliza program which requires rewriting my Eliza implementation but that's okay since it seems to be a bit more fleshed out than the version I used.

So it may be that a second attempt at this is warranted. We shall see.

Obligatory Picture

[“I am NOT a number, I am … a Q-CODE!”]

Obligatory Contact Info

Obligatory Feeds

Obligatory Links

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or entry, if there is only one entry). The titles are the permanent links to that entry only. The format for the links are simple: Start with the base link for this site:, then add the date you are interested in, say 2000/08/01, so that would make the final URL:

You can also specify the entire month by leaving off the day portion. You can even select an arbitrary portion of time.

You may also note subtle shading of the links and that's intentional: the “closer” the link is (relative to the page) the “brighter” it appears. It's an experiment in using color shading to denote the distance a link is from here. If you don't notice it, don't worry; it's not all that important.

It is assumed that every brand name, slogan, corporate name, symbol, design element, et cetera mentioned in these pages is a protected and/or trademarked entity, the sole property of its owner(s), and acknowledgement of this status is implied.

Copyright © 1999-2024 by Sean Conner. All Rights Reserved.