Page 1 of 5

Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 4:57 am
by kmurta
I introduce here my last project, a DTC forth implementation to the ZX81. Enjoy! ;)

http://zx81.eu5.org/toddysofte.html#Toddy_Forth

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 5:00 am
by kmurta

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 10:39 am
by RWAP
You have some really interesting software on that page - can you please provide permission for me to include your software and details on my own website - http://www.rwapsoftware.co.uk/zx81/zx81_software.html

I will need to know which of the software has your own copyright, as I will not offer the copyright software (such as Quicksilva titles and magazine titles) for download unless their permission has been obtained, although I can of course list them and offer a link to your site :-)

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 12:54 pm
by Moggy
kmurta wrote:I introduce here my last project, a DTC forth implementation to the ZX81. Enjoy! ;)

http://zx81.eu5.org/toddysoft.html#Toddy_Forth
Hi Kmurta many thanks for this as I am really into forth can You confirm this is emulator only or can it be ported onto a real ZX81?

Regards Moggy

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 2:51 pm
by XavSnap
Hi,
No way on Vb81 XuR !!! ( lol ... french Forth is better... )
Perhaps on the sZ81 emulator.(wrx+zonx)

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 4:34 pm
by kmurta
RWAP wrote:You have some really interesting software on that page - can you please provide permission for me to include your software and details on my own website - http://www.rwapsoftware.co.uk/zx81/zx81_software.html
Of course, you has my permission.
RWAP wrote:I will need to know which of the software has your own copyright, as I will not offer the copyright software (such as Quicksilva titles and magazine titles) for download unless their permission has been obtained, although I can of course list them and offer a link to your site :-)
The programs that I developed and now are public domain:

ZX81 Toddy Forth
ZX81 Dancing Demon
Pink Panther
Micro Sistemas Forth V2.0
ZX81 Music Interpreter
Cartoons
Clock
HRPICTURES

Regards,
Kelly Murta

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 6:02 pm
by kmurta
Moggy wrote: Hi Kmurta many thanks for this as I am really into forth can You confirm this is emulator only or can it be ported onto a real ZX81?

Regards Moggy
Toddy Forth was developed with the purpose of creating programs for use on my TK85, adapted with characters board mapped at address 3000h and ZON-X compatible sound board. But it can be used in a standard ZX81 too, just disable the UDG's with

Code: Select all

HEX 1E 461C C! COLD
and save it with CSAVE.

Indeed, 4 programs supplied with Toddy Forth was compiled for use in a standard ZX81:

HANOI.P / BREAKOUT-STD.P / MANCALA.P / PLOT-TEST.P

The forth programs can be written in a plain text file (see examples at Progs directory) and loaded in Eightyone emulator to be compiled:

Image Image Image

The display file is fixed in memory at address 4092h (first screen position) and the forth system variables are:

Code: Select all

43AB   S0:       Base value of the parameter stack
43AD   R0:       Base value of the return stack
43AF   RSP:      Return Stack Pointer
43B1   TIB:      Terminal Input Buffer
43B3   LBP:      Line Buffer Pointer
43B5   STATE:    Contain the compilation state
43B7   BASE:     Current number base, used for input and output conversion
43B9   HLD:      Holds the address of the last character during numeric output conversion
43BB   CUR_POS:  Position of cursor on the screen
43BD   DP:       Dictionary Pointer
43BF   CONTEXT:  A pointer to the vocabulary within which dictionary searches will first begin
43C1   CURRENT:  A pointer to the vocabulary where new definitions are created
43C3   LAST:     Last word defined in CURRENT vocabulary
More informations at source files.

At last, a note about the programs saved with CSAVE: the Eightyone has a bug at LOAD patch so EO resets after load the program. To deal with it, are two options: 1- use the EO V0.43C that works fine with CSAVE or 2- add a zero byte at end of the p file, with a hex editor (I have chosen the second option).
XavSnap wrote:Hi,
No way on Vb81 XuR !!! ( lol ... french Forth is better... )
Perhaps on the sZ81 emulator.(wrx+zonx)
It works for me in Vb81 XuR:
tfvb81xur.jpeg
(24.79 KiB) Downloaded 5100 times

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 6:50 pm
by RWAP
Could you upload the version which works with the standard ZX81 onto your website as well - that would make it easier for everyone :-)

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Fri Jan 07, 2011 8:33 pm
by kmurta
RWAP wrote:Could you upload the version which works with the standard ZX81 onto your website as well - that would make it easier for everyone :-)
Ok, it's done!

http://zx81.eu5.org/files/soft/toddy/tforth.zip

I includes the file tforth10-std.p for standard zx81.

Re: Toddy Forth - a new ZX81 forth implementation

Posted: Sat Jan 08, 2011 1:08 am
by RWAP
I can see that I need to update the page on the forums listing all the programs which use hi-res graphics

Can you clarify which scheme your software adaptations support please - see the definitions at the start of that topic.