6800 fig-FORTH?

dwight dkelvey at hotmail.com
Sat Jun 23 19:52:31 CDT 2018


The double characters is most likely how you set up you serial. Normally A Forth will echo your typing so you want to set it for duplex.

You might look at the locations it uses for things like TIB, return stack and data stack. I suspect at least the return and data stack may be working but it is also possible your memory isn't fully decoded and you are over writing your code.

It may not be seeing the right character for a end of line. Most expect a 0Dh and a 0Ah. check your serial setup for that as well.

Dwight


________________________________
From: cctech <cctech-bounces at classiccmp.org> on behalf of Stephen Pereira via cctech <cctech at classiccmp.org>
Sent: Saturday, June 23, 2018 12:16:34 PM
To: cctech at classiccmp.org
Subject: 6800 fig-FORTH?

Hi folks,

I know there's not much 6800 activity here, but I figure this would be worth a try.

Has anyone here ever seen or ever had fig-FORTH for the 6800 working?

I have a SWTPC replica system from Bob Applegate / Corsham Technologies, and I love it. It came with a complete 64K RAM, as well as the SWIBUG monitor, and the monitor code has been extended by Bob/Corsham to interface with an SD Card sub-system for floppy disk emulation. This provides the original terminal access to the machine with the simple system monitor, and also the FLEX OS for running programs. It is a blast to use.

Recently, I took a look around and found the fig-FORTH listing as originally published back in 1979, and also a Source Forge site that holds an electronic copy:

https://sourceforge.net/projects/asm...th_6800-stuff/ <https://sourceforge.net/projects/asm68c/files/fig-forth_6800-stuff/>

I've managed to get the source code to assemble with a cross-assembler supplied by Bob/Corsham. It does not produce an exact copy of the original code, because the code uses the JMP instruction pretty much exclusively, and the assembler substitutes a relative BRA instruction sometimes. So my code ends up being several bytes shorter because of saving one byte each time a JMP is replaced by a BRA. That said, it appears to me that the code matches up with the original listing otherwise.

So my problem is this: When I run the code on my system, fig-FORTH seems to sign on, and will accept input from the keyboard (double echos of each key typed) but it then does not proceed to interpret the command entered. The interesting thing I see by winding my way around in the code is that it has already properly performed a bunch of setup and produces the initial "Forth-68" sign on, and that has required it to already be using many of the Forth commands that were defined by machine language. This indicates to me that some of the command interpretation is working. The I/O from/to the terminal is by calls to the system monitor I/O routines, and that seems to be also working, despite the double echos of the typed characters. It just does not proceed to interpret what is typed in at all.

Of course, I have no idea if this code ever worked properly, or if I am encountering early buggy code. So I'm looking to see if anyone else has ever seen the fig-FORTH working on a 6800 system? Any pointers to good working code?

Thanks for listening!

smp
- - -
Stephen Pereira
Bedford, NH  03110
KB1SXE




More information about the cctech mailing list