Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #42089

Re: Abersoft Forth disassembled

From Marcos Cruz <null_email_so_use_my_contact_page@programandala.net>
Newsgroups comp.lang.forth
Subject Re: Abersoft Forth disassembled
Date 2015-09-19 19:09 +0000
Organization Aioe.org NNTP Server
Message-ID <mtkbta$b4q$1@speranza.aioe.org> (permalink)
References <msht75$ci6$1@speranza.aioe.org> <m2io7j7pxo.fsf@gmail.com>

Show all headers | View raw


En/Je/On 2015-09-09, Alexander Skobelev <al.skobelev@gmail.com>
escribió/skribis/wrote:

> The ZX Spectrums came to USSR relatively lately. I saw the first one
> in 1989

Several clones have been built in Russia, with much improved features
and TR-DOS included (Pentagon, Scorpion...). They are still used and
several emulators support them.

> 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.

If I remember correctly, TR-DOS uses some memory near the system
variables. If so, the whole Forth system has to be moved up as you say.
That is not a trivial task.

That reminds me Abersoft Forth has an undocumented free space, 856
bytes, at the top of the memory, between the user defined graphics and
the RAM-disc:

| 0xFFFF (65535) |         | Top of memory
| ...            |         | User defined graphics (168 bytes)
| 0xFF58 (65368) | `UDG`   | Start of user defined graphics (168 bytes)
| ...            |         | Unused space (856 bytes)
| 0xFBFF (64511) | `HI`    | End of screens area (RAM-disc)
| ...            |         | RAM-disc (11 KiB)
| 0xD000 (53248) | `LO`    | Start of screens area (RAM-disc)
| 0xD000 (53248) | `LIMIT` | End of buffer area plus 1
| ...            |         | Disk buffers
| 0xCBE0 (52192) | `FIRST` | Start of buffer area (lowest buffer start)

856 bytes is a useful chunk of memory, because Abersoft Forth has only
18919 bytes free!  I wonder why the author didn't move everything up
from the data stack, to make that free space part of the dictionary.  I
did it with a module of a library I wrote for the system.

> to implement support for TR-DOS to work with disks from Forth.

Did you modify the system just to use the disk instead of the tape, to
read and write the internal RAM-disk?  Or did you a deeper modification
to use the real disk instead of the RAM-disk, thus removing the
RAM-disk?  I did only the first modification, for GDOS and G+DOS, also
optionally moving the RAM-disk to paged memory on the 128K model.

Regards,

-- 
Marcos Cruz
http://programandala.net

Back to comp.lang.forth | Previous | Next — Previous in thread | Find similar | Unroll thread


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