Last updated May 10 2010. Edited by Herb Johnson, (c) Herb Johnson, except for content written by Lee Hart and others. Contact Herb at www.retrotechnology.com, an email address is on that page..
Ode to Eight Bits, by Lee Hart
Lee Hart and I have been friends and colleagues since the 1980's. Since the 21st century, he's become known for at least two things: electric cars, and the low-low-power COSMAC CMOS microprocessor from RCA, the 1802. Go to my Lee Hart Web page to look at some of those activities. This page is about Lee Hart's "8th" FORTH-like language. Another Web page is about Lee Hart's 1802-based "membership" card and other 1802 activities and history. Other 1802 software is available from this linked Web page.
The ressurection of 8th was discussed and coordinated through the Yahoo! cosmacelf discussion group.. I've exerpted Lee Hart's posts and emails to me (with his permission) and edited them into what amounts to his design documents and discussions. This page indexes into that edited material in the links in the sections below.
- Herb Johnson
In May 2008, Lee Hart wanted to resurrect his old reduced FORTH for the 1802, which he called "8th". His version is trapped on some VERY incompatible 8-inch diskettes. I had the ROM for 8th version 1.2, and a copy of his two-page 8th vocabulary sheet. Then Lee sent me the printed 8th V1.0 source, which I scanned into a ZIPped PDF file. It's not really OCR-readable, so Lee started to hand-enter it. I encouraged Lee to ask others to help him, and he did and they did, as described below.
As of Jan 2010, V1.0 source and V1.2 ROM binary, and vocabulary docs, are in a ZIP file right here. Lee said after the source was re-established: "As I read the 8TH source, I find myself thinking about how I could change or improve it, based on what I've learned in the past 28 years. :-)" See this link for the latest news and progress on 8th. Also see these notes on an 1802 cross-assembler under MS-DOS. - Herb
Nov 17 - entry of 8th 1802 source code
Lee Hart asked his colleagues on cosmacelf, to enter in parts of the 8th 1802 programming language he developed, from a PDF copy of a paper source listing. Here's what he's posted in cosmacelf, about that effort. He's using an Avocet 1802 cross assembler: I suggested he look at other assemblers as discussed in cosmacelf. - Herb Johnson
Nov 17th 2009: Lee posts in cosmacelf a request for assistance.
Dec 1: pages 1-10 Lee Hart; pages 11-20 Richard; pages 21-30 Ray Sills; pages 31-40 William McKee; pages 41-50 Chris Elmquist; pages 51-60 Steven Valin; pages 71-80 c t wardell; page 81 Doug Jackson
I copied the files onto a floppy, and assembled them on my old Zenith XT clone with DOS 6.20. Worked just fine. I may also try assembling it on a Win98se computer just for fun. I also found that Microsoft's WordPad and Notepad editors bugger up the tabs. I went back to Vedit, which lets me use the "good old fashioned" tab every 8 columns.
The source 8TH.ASM and assembled 8TH.PRN files are attached [to this email]. - Lee Hart
As of Dec 2009, Lee is editing the sources as typed, so there's a mix of edited and "raw" sources until he's done.
Dec 9th: Lee is also looking at the 8th dictionary document, a list of 8th words and their definitions, again from my 8th V.12 setup. "It's pretty hard to understand. Have to think about improving it. Maybe teach by example?".
On what to do with 8th without hardware: "I'm sure 8th could be run *now* on one of the 1802 emulators. But that's not particularly interesting to me, I couldn't do much of anything useful with it. For example, it would have no real I/O. Hmmm... maybe if it were modified to do its I/O to one of the PC's actual serial or parallel port? The beauty of 8TH was to type something like
REPEAT 0 Q! 1 Q! KEYS UNTIL
and the 1802's Q output starts toggling high/low until you press a key. Within seconds you can be reading and writing data to I/O. " I said "This sounds like a Tech Note to me." But it's also a matter of manipulating some emulator's PC based code to support real or fake I/O in some fashion.
Jan 5: Entry of revision 1.0 source completed and assembles without errors. This ZIP file contains 8th V1.0 source, V1.2 ROM binary, and vocabulary docs. The Zip file includes a binary/hex version 1.2 from a ROM and board I [Herb] have from Lee, decades ago. I asked Lee about the version differences. Lee said "I haven't had time to look for differences. When we had the Hughes development system working, it had a bigger version of 8TH that could compile itself (what FORTH calls target compiling). So, we made a number of versions that had various words added or removed for various applications." - Lee Hart
Jan 22: someone wrote:
> What is the 8Th interpreter status? Are you still cleaning it up for
> your current assembler environment? Is there a newer version up on
> Herb's page now?
Lee responded: I finished collating and editing the individual contributions from almost a dozen contributors. The source assembles with no errors, and produces the same hex file as the original listing with my Avocet assembler.
But since this assembler is a commercial product, Herb found a cross assembler written in C, and modified it to work for the 1802. Now it too can produce a correctly assembled file. Almost... there are a couple gotchas he's working on. For example, it is case-sensitive; it thinks GLO and glo are two different opcodes. And, it doesn't recognize the 1802 register names without you manually equating them (R3 equ 3).
The goal is to have a public domain assembler that anyone can use. - Lee Hart
See these notes on that cross-assembler. - Herb
See this Web page about the freely available A18 cross assembler written in C. - Herb Johnson
This page and edited content is copyright Herb Johnson (c) 2010. Contents written by Lee Hart, are copyright Lee Hart (c) 2010. Copyright of other contents beyond brief quotes, is held by those authors. Contact Herb at www.retrotechnology.com, an email address is available on that page..