Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #41894
| From | Alexander Skobelev <al.skobelev@gmail.com> |
|---|---|
| Newsgroups | comp.lang.forth |
| Subject | Re: Abersoft Forth disassembled |
| Date | 2015-09-09 15:11 +0300 |
| Organization | A noiseless patient Spider |
| Message-ID | <m2io7j7pxo.fsf@gmail.com> (permalink) |
| References | <msht75$ci6$1@speranza.aioe.org> |
Marcos Cruz <null_email_so_use_my_contact_page@programandala.net> writes: > Some months ago I disassembled Abersoft Forth, a fig-Forth 1.1 > implementation customized for ZX Spectrum, written by John Jones-Steele > and published by Melbourne House in 1983. > > The data input files required by the Z80 disassembler (labels, branches, > zones...) were created by programs I wrote in Abersoft Forth, then > postprocessed by some programs written in Vim. Most of the complex > toolchain is automatic, done by `make` and a Makefile. The final Z80 > source is tidy and ready to be assembled back. I added some notes about > bug fixes and possible optimizations. You can browse the result source > code on the webpage and download a ZIP archive with all the files of the > project: > > http://programandala.net/en.program.abersoft_forth.html > > Regards, > > -- > Marcos Cruz > http://programandala.net The ZX Spectrums came to USSR relatively lately. I saw the first one in 1989, when I returned home from military service. Those were the clones of the original computer made by local artisans. In Leningard (now Saint-Petersburg) you can bought them on the local radio-market near the Avtovo subway station. There were also a lot of software for them on the tape cassettes and 5" disks. When I initially found Abersort Fig-Forth on the one cassette I bought there, I thought it was some implementation of FORTRAN. And was very surprised after I had loaded it and didn't find anything relevant to it. That was how I knew about Forth. :) Then I found a pair of books about Forth: Starting Forth by Leo Brodie and Design and Programming Personal Expert Systems by Carl Townsend and Dennis Feucht, translated to Russian. The second one was dedicated to the expert systems, but the authors used Forth to implement the Lisp programming language, which they used in turn to implement Prolog. They alos write a lot about how the Forth works internally. I still have these two books on my bookshelf. I modified the Abersoft fig-Forth, moved it by 256 bytes above to get space for my LP driver so a could print and added words to work with 5" disks. Or I moved it because of disk support. I don't rememeber. But I was impressed that I was able to do it at all by means of Forth itself in semi-authomatic way. In fact those were the only more or less practical tasks I solved in Forth: to debug my printer driver and to implement support for TR-DOS to work with disks from Forth. But it was a lot of fun! :)
Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Abersoft Forth disassembled Marcos Cruz <null_email_so_use_my_contact_page@programandala.net> - 2015-09-06 17:30 +0000
Re: Abersoft Forth disassembled Coos Haak <chforth@hccnet.nl> - 2015-09-07 00:21 +0200
Re: Abersoft Forth disassembled Marcos Cruz <null_email_so_use_my_contact_page@programandala.net> - 2015-09-07 00:20 +0000
Re: Abersoft Forth disassembled Hans Bezemer <the.beez.speaks@gmail.com> - 2015-09-07 17:54 +0200
Re: Abersoft Forth disassembled Marcos Cruz <null_email_so_use_my_contact_page@programandala.net> - 2015-09-07 20:58 +0000
Re: Abersoft Forth disassembled Alexander Skobelev <al.skobelev@gmail.com> - 2015-09-09 15:11 +0300
Re: Abersoft Forth disassembled Mark Wills <markwills1970@gmail.com> - 2015-09-09 08:47 -0700
Re: Abersoft Forth disassembled hughaguilar96@gmail.com - 2015-09-10 21:32 -0700
Re: Abersoft Forth disassembled "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-09-11 01:30 -0400
Re: Abersoft Forth disassembled Marcos Cruz <null_email_so_use_my_contact_page@programandala.net> - 2015-09-19 19:09 +0000
csiph-web