Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Did you know that for the price of a 280-Z you can buy two Z-80's? -- P. J. Plauger


devel / comp.lang.forth / Re: Why is that (fig-Forth for x86)?

SubjectAuthor
* Why is that (fig-Forth for x86)?Zbig
+* Re: Why is that (fig-Forth for x86)?Marcel Hendrix
|`- Re: Why is that (fig-Forth for x86)?Zbig
+* Re: Why is that (fig-Forth for x86)?Anton Ertl
|`* Re: Why is that (fig-Forth for x86)?Zbig
| +- Re: Why is that (fig-Forth for x86)?Zbig
| `* Re: Why is that (fig-Forth for x86)?dxforth
|  +- Re: Why is that (fig-Forth for x86)?dxforth
|  `* Re: Why is that (fig-Forth for x86)?Zbig
|   `* Re: Why is that (fig-Forth for x86)?dxforth
|    `* Re: Why is that (fig-Forth for x86)?Jan Coombs
|     `- Re: Why is that (fig-Forth for x86)?Zbig
+* Re: Why is that (fig-Forth for x86)?Jan Coombs
|+- Re: Why is that (fig-Forth for x86)?Zbig
|`- Re: Why is that (fig-Forth for x86)?none
`* Re: Why is that (fig-Forth for x86)?S Jack
 `* Re: Why is that (fig-Forth for x86)?dxforth
  `- Re: Why is that (fig-Forth for x86)?none

1
Why is that (fig-Forth for x86)?

<63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17833&group=comp.lang.forth#17833

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a0c:f10b:0:b0:458:4209:f79 with SMTP id i11-20020a0cf10b000000b0045842090f79mr10473992qvl.61.1652029789083;
Sun, 08 May 2022 10:09:49 -0700 (PDT)
X-Received: by 2002:a37:68cd:0:b0:69f:d9f5:add3 with SMTP id
d196-20020a3768cd000000b0069fd9f5add3mr9236781qkc.378.1652029788899; Sun, 08
May 2022 10:09:48 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 8 May 2022 10:09:48 -0700 (PDT)
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
Subject: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Sun, 08 May 2022 17:09:49 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Zbig - Sun, 8 May 2022 17:09 UTC

Hello,
Examining old fig-Forth I noticed a strange thing at its very beginning. Its code starts with a sequence:
ORIG: NOP ; (ORIGIN)
JMP CLD
NOP
JMP WRM

So while it looks obvious, it's also obvious that there is little chance that second jump will be ever performed. I examined the whole listing — there is no reference to that place in code; there's not anything like "ORIG+4" (nor "ORIG+6", to take just jump address), for example.
Using debugger I set a trap on that fourth line — no chance to get there neither by starting the Forth system, nor by performing COLD, ABORT, QUIT. In the end I simply replaced that "JMP WRM" with three NOPs — so far noticed no change in the functionality of the system.
So it seems it's really kind of "leftover". But I posted this question because I could see similar sequence in the other listing. So what does it mean, actually? Is it kind of "tradition" to leave that useless(?) jump there, or I'm still missing something?

Re: Why is that (fig-Forth for x86)?

<f8a69801-21a7-4c35-8a97-980ba661ae87n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17834&group=comp.lang.forth#17834

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:5905:0:b0:2f3:9fdd:22f1 with SMTP id 5-20020ac85905000000b002f39fdd22f1mr11686893qty.191.1652030408953;
Sun, 08 May 2022 10:20:08 -0700 (PDT)
X-Received: by 2002:a05:622a:14d:b0:2f3:cf07:3065 with SMTP id
v13-20020a05622a014d00b002f3cf073065mr6951180qtw.388.1652030408794; Sun, 08
May 2022 10:20:08 -0700 (PDT)
Path: i2pn2.org!i2pn.org!paganini.bofh.team!pasdenom.info!nntpfeed.proxad.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 8 May 2022 10:20:08 -0700 (PDT)
In-Reply-To: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:1c05:2f14:600:24c4:c4ab:6673:901e;
posting-account=-JQ2RQoAAAB6B5tcBTSdvOqrD1HpT_Rk
NNTP-Posting-Host: 2001:1c05:2f14:600:24c4:c4ab:6673:901e
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <f8a69801-21a7-4c35-8a97-980ba661ae87n@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: mhx...@iae.nl (Marcel Hendrix)
Injection-Date: Sun, 08 May 2022 17:20:08 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Marcel Hendrix - Sun, 8 May 2022 17:20 UTC

On Sunday, May 8, 2022 at 7:09:49 PM UTC+2, Zbig wrote:
> Hello,
> Examining old fig-Forth I noticed a strange thing at its very beginning. Its code starts with a sequence:
> ORIG: NOP ; (ORIGIN)
> JMP CLD
> NOP
> JMP WRM
>
[..]
> So what does it mean, actually? Is it kind of "tradition" to leave that useless(?) jump there,
> or I'm still missing something?

Maybe it was used for debugging or single-stepping?

-marcel

Re: Why is that (fig-Forth for x86)?

<71a2fe29-c66e-41ab-86cc-833e4baa4b2dn@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17835&group=comp.lang.forth#17835

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:d48:b0:45a:9629:d5ea with SMTP id 8-20020a0562140d4800b0045a9629d5eamr10626394qvr.127.1652031004941;
Sun, 08 May 2022 10:30:04 -0700 (PDT)
X-Received: by 2002:ac8:5755:0:b0:2f3:be35:59c with SMTP id
21-20020ac85755000000b002f3be35059cmr12009664qtx.249.1652031004827; Sun, 08
May 2022 10:30:04 -0700 (PDT)
Path: i2pn2.org!rocksolid2!i2pn.org!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 8 May 2022 10:30:04 -0700 (PDT)
In-Reply-To: <f8a69801-21a7-4c35-8a97-980ba661ae87n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com> <f8a69801-21a7-4c35-8a97-980ba661ae87n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <71a2fe29-c66e-41ab-86cc-833e4baa4b2dn@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Sun, 08 May 2022 17:30:04 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Zbig - Sun, 8 May 2022 17:30 UTC

> Maybe it was used for debugging or single-stepping?

Well, that's why I've raised my question. No reference to that specific line anywhere, which has no label. I'm confused.

Re: Why is that (fig-Forth for x86)?

<2022May8.193446@mips.complang.tuwien.ac.at>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17836&group=comp.lang.forth#17836

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Sun, 08 May 2022 17:34:46 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 19
Message-ID: <2022May8.193446@mips.complang.tuwien.ac.at>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
Injection-Info: reader02.eternal-september.org; posting-host="6e4f0170b8a8cb5da03a1add0c771453";
logging-data="18553"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+nKf+sHng1g9m5xiwcWfD3"
Cancel-Lock: sha1:wVNal5kyXwJGhcsrwtOG5XW3amw=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sun, 8 May 2022 17:34 UTC

Zbig <zbigniew2011@gmail.com> writes:
>Hello,
>Examining old fig-Forth I noticed a strange thing at its very beginning. It=
>s code starts with a sequence:
>ORIG: NOP ; (ORIGIN)
> JMP CLD
> NOP
> JMP WRM

Wild guess: Interrupt vectors? If you press reset, the CPU jumps to
ORIG (or uses ORIG+2 asvector address. And for some other interrupt,
the same with ORIG+4/6.

- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2021: https://euro.theforth.net/2021

Re: Why is that (fig-Forth for x86)?

<16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17837&group=comp.lang.forth#17837

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a37:68ca:0:b0:6a0:4bd:6098 with SMTP id d193-20020a3768ca000000b006a004bd6098mr9568555qkc.605.1652033114832;
Sun, 08 May 2022 11:05:14 -0700 (PDT)
X-Received: by 2002:a05:622a:170d:b0:2f3:caca:d394 with SMTP id
h13-20020a05622a170d00b002f3cacad394mr10559995qtk.209.1652033114683; Sun, 08
May 2022 11:05:14 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 8 May 2022 11:05:14 -0700 (PDT)
In-Reply-To: <2022May8.193446@mips.complang.tuwien.ac.at>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com> <2022May8.193446@mips.complang.tuwien.ac.at>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Sun, 08 May 2022 18:05:14 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Zbig - Sun, 8 May 2022 18:05 UTC

> Wild guess: Interrupt vectors? If you press reset, the CPU jumps to
> ORIG (or uses ORIG+2 asvector address. And for some other interrupt,
> the same with ORIG+4/6.

Both the Forths where I found that sequence are "hosted Forths" for DOS (ordinary "com" binaries).
So rather not this case, it seems. That ORIG means just ORIGIN for address space of fig-Forth system.
I understand that much more experienced Forthers are (almost) as confused as I am?

Re: Why is that (fig-Forth for x86)?

<aebdfc79-07fa-483b-8ab2-1d95f10a064an@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17838&group=comp.lang.forth#17838

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:20cc:b0:45a:fde1:5247 with SMTP id 12-20020a05621420cc00b0045afde15247mr5829790qve.113.1652034000536;
Sun, 08 May 2022 11:20:00 -0700 (PDT)
X-Received: by 2002:a37:9b83:0:b0:6a0:9ab4:35b2 with SMTP id
d125-20020a379b83000000b006a09ab435b2mr765170qke.272.1652034000333; Sun, 08
May 2022 11:20:00 -0700 (PDT)
Path: i2pn2.org!i2pn.org!paganini.bofh.team!pasdenom.info!nntpfeed.proxad.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 8 May 2022 11:20:00 -0700 (PDT)
In-Reply-To: <16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at> <16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <aebdfc79-07fa-483b-8ab2-1d95f10a064an@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Sun, 08 May 2022 18:20:00 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Zbig - Sun, 8 May 2022 18:20 UTC

OK, if anyone's willing to take a closer look, I mean (first of all) this file: http://www.forth.org/fig86new.zip

Have a look at the lines 136 to 139.

Another strange thing seem to me code section from line 164 to 186 (including).
These lines also don't seem to be referenced anywhere(?).

Re: Why is that (fig-Forth for x86)?

<20220509002344.69e3765a@t530>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17839&group=comp.lang.forth#17839

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: jan4comp...@murray-microft.co.uk (Jan Coombs)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Mon, 9 May 2022 00:23:44 +0100
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <20220509002344.69e3765a@t530>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable
Injection-Info: reader02.eternal-september.org; posting-host="bb9f39a206763b6672cea49e54f05fab";
logging-data="5003"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/L95C5xX75PSehswkbJXsfmAFQhIiqkFs="
Cancel-Lock: sha1:EOwjFkWT5hu/Rkrsq5DOxXdxJbw=
X-Newsreader: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-pc-linux-gnu)
 by: Jan Coombs - Sun, 8 May 2022 23:23 UTC

On Sun, 8 May 2022 10:09:48 -0700 (PDT)
Zbig <zbigniew2011@gmail.com> wrote:

> Hello,
> Examining old fig-Forth I noticed a strange thing at its very beginning.
> Its code starts with a sequence:

ORG 100H
> ORIG: NOP ; (ORIGIN)
> JMP CLD
> NOP
> JMP WRM

With the NOP these vectors are accessible at 4 byte boundaries in the 16b
DR/PC/MS-DOS systems this is designed to run on. (search 'org 100h')

From 'Fig Forth Systems Guide.pdf':
"ABORT call ABORT, the warm start procedure" WRM?
[...] Using COLD will remove the user program.

From 'fig86new/FIG86NEW/FORTH1.TXT':
"COLD sets the <CTRL-C> interrupt vector (MS-DOS function 25h)
to the address of a code fragment which vectors the interpreter
to (ABORT)."

As happens here (from 'fig86new/FIG86NEW/FORTH.ASM'):

CTRLC:
WRM: MOV SI,OFFSET WRM1
JMP NEXT
WRM1 DW PABOR

And enters ABORT here:

DB 87H,"(ABORT",")"+80h
DW DFIND - 8
PABOR DW DOCOL
DW ABORT, SEMIS

> So what does it mean, actually?

If your code crashes, or locks up, then pressing ^C may return
you to your runnable system with user compiled code intact, or
at least get you back to DOS.

Jan Coombs
--

Re: Why is that (fig-Forth for x86)?

<e38a704b-4aef-405b-9127-faed18761144n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17840&group=comp.lang.forth#17840

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:7e94:0:b0:2f3:ce2b:c320 with SMTP id w20-20020ac87e94000000b002f3ce2bc320mr8472593qtj.670.1652055230387;
Sun, 08 May 2022 17:13:50 -0700 (PDT)
X-Received: by 2002:ac8:5f0a:0:b0:2f3:b18d:bad1 with SMTP id
x10-20020ac85f0a000000b002f3b18dbad1mr12963934qta.150.1652055230240; Sun, 08
May 2022 17:13:50 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 8 May 2022 17:13:50 -0700 (PDT)
In-Reply-To: <20220509002344.69e3765a@t530>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com> <20220509002344.69e3765a@t530>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e38a704b-4aef-405b-9127-faed18761144n@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Mon, 09 May 2022 00:13:50 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Zbig - Mon, 9 May 2022 00:13 UTC

> > Examining old fig-Forth I noticed a strange thing at its very beginning..
> > Its code starts with a sequence:
> ORG 100H
> > ORIG: NOP ; (ORIGIN)
> > JMP CLD
> > NOP
> > JMP WRM
> With the NOP these vectors are accessible at 4 byte boundaries in the 16b
> DR/PC/MS-DOS systems this is designed to run on. (search 'org 100h')

Indeed that's self-understandable — my problem to be solved is: there isn't neither any label
before "JMP WRM" nor there is anywhere in the code any reference to that line even in the
form "ORIG+4" or the like. So it doesn't seem to be used at all — but it's present there, so
if I'm missing anything, I'd like to learn more.
Found such sequence in other fig-Forth too, also it's described in "Programmiersprache Forth"
(AKA "Forth for Professionals") by Ronald Zech (chapter 7.3. pages 228-229).. Mentioned and
shown in the listing — but unfortunately NOT explained.

> From 'Fig Forth Systems Guide.pdf':
> "ABORT call ABORT, the warm start procedure" WRM?
> [...] Using COLD will remove the user program.
>
> From 'fig86new/FIG86NEW/FORTH1.TXT':
> "COLD sets the <CTRL-C> interrupt vector (MS-DOS function 25h)
> to the address of a code fragment which vectors the interpreter
> to (ABORT)."
>
> As happens here (from 'fig86new/FIG86NEW/FORTH.ASM'):
>
> CTRLC:
> WRM: MOV SI,OFFSET WRM1
> JMP NEXT
> WRM1 DW PABOR

The above is interrupt handler, which is set by lines 1876 to 1879.
Still no reference to line at "ORIG+4".

> And enters ABORT here:
>
> DB 87H,"(ABORT",")"+80h
> DW DFIND - 8
> PABOR DW DOCOL
> DW ABORT, SEMIS
> > So what does it mean, actually?
> If your code crashes, or locks up, then pressing ^C may return
> you to your runnable system with user compiled code intact, or
> at least get you back to DOS.

Yes, I understand, why there is CTRL-C handler — but the above still isn't answer
to my question.

Re: Why is that (fig-Forth for x86)?

<t5a576$4r9$1@gioia.aioe.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17841&group=comp.lang.forth#17841

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!rocksolid2!i2pn.org!aioe.org!7AktqsUqy5CCvnKa3S0Dkw.user.46.165.242.75.POSTED!not-for-mail
From: dxfo...@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Mon, 9 May 2022 14:27:20 +1000
Organization: Aioe.org NNTP Server
Message-ID: <t5a576$4r9$1@gioia.aioe.org>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at>
<16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="4969"; posting-host="7AktqsUqy5CCvnKa3S0Dkw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.8.1
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: dxforth - Mon, 9 May 2022 04:27 UTC

On 9/05/2022 04:05, Zbig wrote:
>> Wild guess: Interrupt vectors? If you press reset, the CPU jumps to
>> ORIG (or uses ORIG+2 asvector address. And for some other interrupt,
>> the same with ORIG+4/6.
>
> Both the Forths where I found that sequence are "hosted Forths" for DOS (ordinary "com" binaries).
> So rather not this case, it seems. That ORIG means just ORIGIN for address space of fig-Forth system.
> I understand that much more experienced Forthers are (almost) as confused as I am?

FIG was designed to be portable across CPUs and host systems. Patch locations
for jumps and debugging are to be expected. IIRC +ORIGIN was used as a reference
to other fields in a Fig system. While a DOS-hosted system may have had little
need of JMP WRM there was no harm leaving it in - nor gain removing it.

Re: Why is that (fig-Forth for x86)?

<t5ae16$rko$1@gioia.aioe.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17842&group=comp.lang.forth#17842

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!aioe.org!7AktqsUqy5CCvnKa3S0Dkw.user.46.165.242.75.POSTED!not-for-mail
From: dxfo...@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Mon, 9 May 2022 16:57:44 +1000
Organization: Aioe.org NNTP Server
Message-ID: <t5ae16$rko$1@gioia.aioe.org>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at>
<16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
<t5a576$4r9$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="28312"; posting-host="7AktqsUqy5CCvnKa3S0Dkw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.8.1
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-GB
 by: dxforth - Mon, 9 May 2022 06:57 UTC

According to the Fig-FORTH Installation Manual:

Boot-up Parameters
This area consists of 34 bytes containing a jump to the cold start,
jump to the warm re-start and initial values for user variables and
registers. These values are altered as you make permanent
extensions to your installation.
SCR # 12
0 ( COLD AND WARM ENTRY, USER PARAMETERS WFR-79APR29 )
1 ASSEMBLER OBJECT MEM HEX
2 NOP, HERE JMP, ( WORD ALIGNED VECTOR TO COLD )
3 NOP, HERE JMP, ( WORD ALIGNED VECTOR TO WARM )
4 0000 , 0001 , ( CPU, AND REVISION PARAMETERS )
5 0000 , ( TOPMOST WORD IN FORTH VOCABULARY )
6 7F , ( BACKSPACE CHARACTER )
7 3BA0 , ( INITIAL USER AREA )
8 009E , ( INITIAL TOP OF STACK )
9 01FF , ( INITIAL TOP OF RETURN STACK )
10 0100 , ( TERMINAL INPUT BUFFER )
11 001F , ( INITIAL NAME FIELD WIDTH )
12 0001 , ( INITIAL WARNING = 1 )
13 0200 , ( INITIAL FENCE )
14 0000 , ( COLD START VALUE FOR DP )
15 0000 , ( COLD START VALUE FOR VOC-LINK ) -->

Being gospel, one's duty is to implement - not question :)

Re: Why is that (fig-Forth for x86)?

<ef272827-b9f2-4fb9-8ee7-d0207b3254a6n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17843&group=comp.lang.forth#17843

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:40e:b0:2f3:db3b:7d4d with SMTP id n14-20020a05622a040e00b002f3db3b7d4dmr3298817qtx.655.1652081961401;
Mon, 09 May 2022 00:39:21 -0700 (PDT)
X-Received: by 2002:a05:622a:1823:b0:2f3:df29:7588 with SMTP id
t35-20020a05622a182300b002f3df297588mr569094qtc.429.1652081961251; Mon, 09
May 2022 00:39:21 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Mon, 9 May 2022 00:39:21 -0700 (PDT)
In-Reply-To: <t5a576$4r9$1@gioia.aioe.org>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at> <16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
<t5a576$4r9$1@gioia.aioe.org>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ef272827-b9f2-4fb9-8ee7-d0207b3254a6n@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Mon, 09 May 2022 07:39:21 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Zbig - Mon, 9 May 2022 07:39 UTC

> FIG was designed to be portable across CPUs and host systems. Patch locations
> for jumps and debugging are to be expected. IIRC +ORIGIN was used as a reference
> to other fields in a Fig system. While a DOS-hosted system may have had little
> need of JMP WRM there was no harm leaving it in - nor gain removing it.

Thanks, so it seems my initial „wild guess” that it's kind of „tradition” to keep that there (never mind is it later used at all) was proper. :)

Re: Why is that (fig-Forth for x86)?

<t5ajm4$19tq$1@gioia.aioe.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17844&group=comp.lang.forth#17844

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!aioe.org!7AktqsUqy5CCvnKa3S0Dkw.user.46.165.242.75.POSTED!not-for-mail
From: dxfo...@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Mon, 9 May 2022 18:34:14 +1000
Organization: Aioe.org NNTP Server
Message-ID: <t5ajm4$19tq$1@gioia.aioe.org>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at>
<16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
<t5a576$4r9$1@gioia.aioe.org>
<ef272827-b9f2-4fb9-8ee7-d0207b3254a6n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="42938"; posting-host="7AktqsUqy5CCvnKa3S0Dkw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.8.1
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: dxforth - Mon, 9 May 2022 08:34 UTC

On 9/05/2022 17:39, Zbig wrote:
>> FIG was designed to be portable across CPUs and host systems. Patch locations
>> for jumps and debugging are to be expected. IIRC +ORIGIN was used as a reference
>> to other fields in a Fig system. While a DOS-hosted system may have had little
>> need of JMP WRM there was no harm leaving it in - nor gain removing it.
>
> Thanks, so it seems my initial „wild guess” that it's kind of „tradition” to keep that there (never mind is it later used at all) was proper. :)

A potential use is systems which had a monitor ROM.

MON
Exit to the system monitor, leaving a re-entry to Forth,
if possible.

Forth could be re-entered using either COLD or WARM vectors. WARM entry would
ensure user-additions didn't get wiped.

Re: Why is that (fig-Forth for x86)?

<20220509113831.32073b4e@t530>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17845&group=comp.lang.forth#17845

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: jan4comp...@murray-microft.co.uk (Jan Coombs)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Mon, 9 May 2022 11:38:31 +0100
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <20220509113831.32073b4e@t530>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at>
<16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
<t5a576$4r9$1@gioia.aioe.org>
<ef272827-b9f2-4fb9-8ee7-d0207b3254a6n@googlegroups.com>
<t5ajm4$19tq$1@gioia.aioe.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Injection-Info: reader02.eternal-september.org; posting-host="bb9f39a206763b6672cea49e54f05fab";
logging-data="7035"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX197nruJM5TeXBnukUnMVTz2kqp13a3ceDk="
Cancel-Lock: sha1:0QfuL1Cx6hkM4oQ+QdM9E+JK8gA=
X-Newsreader: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-pc-linux-gnu)
 by: Jan Coombs - Mon, 9 May 2022 10:38 UTC

On Mon, 9 May 2022 18:34:14 +1000
dxforth <dxforth@gmail.com> wrote:

> On 9/05/2022 17:39, Zbig wrote:
> >> FIG was designed to be portable across CPUs and host systems. Patch locations
> >> for jumps and debugging are to be expected. IIRC +ORIGIN was used as a reference
> >> to other fields in a Fig system. While a DOS-hosted system may have had little
> >> need of JMP WRM there was no harm leaving it in - nor gain removing it.
> >
> > Thanks, so it seems my initial „wild guess” that it's kind of „tradition” to keep that there (never mind is it later used at all) was proper. :)
>
> A potential use is systems which had a monitor ROM.
>
> MON
> Exit to the system monitor, leaving a re-entry to Forth,
> if possible.
>
> Forth could be re-entered using either COLD or WARM vectors. WARM entry would
> ensure user-additions didn't get wiped.

Similarly, and also:

When fig forth was being developed, a typical board would have discrete
EPROM and RAM chips. The EPROM would contain the system monitor and
interrupt vectors.

The faster method is to develop the new forth image would be in RAM,
if you had enough. This can be quickly re-written using the monitor.
The development process, adding and removing test and debug code
snippets will likely change the cold and warm start handler locations,
as these are generally located at the top of the image. (This was
likely inherited from the code originally being built using a cross
compiler written in Forth.)

Having the location of a warm start vector at a constant address in
the forth image avoided the need to hook out the monitor ROM and
update the vector content there.

Probably if you were debugging fig-forth on a PC board without the
BIOS installed you would want exactly the same setup?

Jan Coombs
--

Re: Why is that (fig-Forth for x86)?

<nnd$633c013b$6da8e794@b212692c9ef393f7>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17846&group=comp.lang.forth#17846

 copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com> <20220509002344.69e3765a@t530>
Subject: Re: Why is that (fig-Forth for x86)?
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: alb...@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$633c013b$6da8e794@b212692c9ef393f7>
Organization: KPN B.V.
Date: Mon, 09 May 2022 14:11:47 +0200
Path: i2pn2.org!rocksolid2!i2pn.org!aioe.org!news.uzoreto.com!feeder.usenetexpress.com!tr3.eu1.usenetexpress.com!94.232.112.246.MISMATCH!abe006.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 90
Injection-Date: Mon, 09 May 2022 14:11:47 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Mon, 9 May 2022 12:11 UTC

In article <20220509002344.69e3765a@t530>,
Jan Coombs <jan4comp.lang.forth@murray-microft.co.uk> wrote:
>On Sun, 8 May 2022 10:09:48 -0700 (PDT)
>Zbig <zbigniew2011@gmail.com> wrote:
>
>> Hello,
>> Examining old fig-Forth I noticed a strange thing at its very beginning.
>> Its code starts with a sequence:
>
> ORG 100H
>> ORIG: NOP ; (ORIGIN)
>> JMP CLD
>> NOP
>> JMP WRM
>
>With the NOP these vectors are accessible at 4 byte boundaries in the 16b
>DR/PC/MS-DOS systems this is designed to run on. (search 'org 100h')
>
>From 'Fig Forth Systems Guide.pdf':
> "ABORT call ABORT, the warm start procedure" WRM?
> [...] Using COLD will remove the user program.
>
>From 'fig86new/FIG86NEW/FORTH1.TXT':
> "COLD sets the <CTRL-C> interrupt vector (MS-DOS function 25h)
> to the address of a code fragment which vectors the interpreter
> to (ABORT)."
>
>As happens here (from 'fig86new/FIG86NEW/FORTH.ASM'):
>
> CTRLC:
> WRM: MOV SI,OFFSET WRM1
> JMP NEXT
> WRM1 DW PABOR
>
>And enters ABORT here:
>
> DB 87H,"(ABORT",")"+80h
> DW DFIND - 8
> PABOR DW DOCOL
> DW ABORT, SEMIS
>
>
>> So what does it mean, actually?
>
>If your code crashes, or locks up, then pressing ^C may return
>you to your runnable system with user compiled code intact, or
>at least get you back to DOS.

ciforth inherits these vectors from fig-Forth and they are still
usable.

-2 CELLS +ORIGIN is the cold start vector
-1 CELLS +ORIGIN is the warm start vector

If anything untowards happens in a linux executable, you
have a last change to do something, using a "signal handler".
Signals are e.g. ^C interrupt, invalid address etc.
It is a simple address where the executable is restarted, so
a jump.

So you have such code as:
\ Make sure any traps restart Forth at ADDRESS .
: SET-TRAPS 32 1 DO I OVER 0 __NR_signal XOS DROP LOOP DROP ;

\ Still fig tradition: warm and cold starts below origin
: SET-TRAPS-WARM -2 CELLS +ORIGIN SET-TRAPS ;

This doesn't differentiate between traps, it just executes the
word COLD.
If you want something more sophisticated then that, you must
provide code to replace COLD, to take care of specific signal
behaviour. You are wildly into system programming.

In 1980 you were required two perform two diskette changes to reboot and
this was useful. Nowadays you would be more inclined to restart
the Forth from the command line. The usefulness is ca. limited to be
able to type ^C to end an infinite loop.

>
>Jan Coombs
>--
>

Groetjes Albert
--
"in our communism country Viet Nam, people are forced to be
alive and in the western country like US, people are free to
die from Covid 19 lol" duc ha
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

Re: Why is that (fig-Forth for x86)?

<3aae1ecc-4a8c-4171-856c-393fa5b80fe7n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17847&group=comp.lang.forth#17847

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:16a2:b0:6a0:68e2:b7a4 with SMTP id s2-20020a05620a16a200b006a068e2b7a4mr5398507qkj.374.1652100956271;
Mon, 09 May 2022 05:55:56 -0700 (PDT)
X-Received: by 2002:a05:620a:c4f:b0:67d:4996:fd8 with SMTP id
u15-20020a05620a0c4f00b0067d49960fd8mr11049697qki.518.1652100956097; Mon, 09
May 2022 05:55:56 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Mon, 9 May 2022 05:55:55 -0700 (PDT)
In-Reply-To: <20220509113831.32073b4e@t530>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a;
posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 2a02:a31d:a141:5b00:3176:cc50:14b9:1f4a
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<2022May8.193446@mips.complang.tuwien.ac.at> <16c10bd1-820b-471c-9a60-cbdb81d7727en@googlegroups.com>
<t5a576$4r9$1@gioia.aioe.org> <ef272827-b9f2-4fb9-8ee7-d0207b3254a6n@googlegroups.com>
<t5ajm4$19tq$1@gioia.aioe.org> <20220509113831.32073b4e@t530>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <3aae1ecc-4a8c-4171-856c-393fa5b80fe7n@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: zbigniew...@gmail.com (Zbig)
Injection-Date: Mon, 09 May 2022 12:55:56 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Zbig - Mon, 9 May 2022 12:55 UTC

> Probably if you were debugging fig-forth on a PC board without the
> BIOS installed you would want exactly the same setup?

Conceivably. Thanks!

Re: Why is that (fig-Forth for x86)?

<29127926-ca6d-4c5a-b32d-f728d12129d3n@googlegroups.com>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17852&group=comp.lang.forth#17852

 copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1351:b0:2f3:b1e4:9d2e with SMTP id w17-20020a05622a135100b002f3b1e49d2emr24594780qtk.412.1652283179424;
Wed, 11 May 2022 08:32:59 -0700 (PDT)
X-Received: by 2002:ad4:4e05:0:b0:456:50a4:7494 with SMTP id
dl5-20020ad44e05000000b0045650a47494mr22743554qvb.6.1652283179223; Wed, 11
May 2022 08:32:59 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Wed, 11 May 2022 08:32:59 -0700 (PDT)
In-Reply-To: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=67.61.77.94; posting-account=V5nGoQoAAAC_P2U0qnxm2kC0s1jNJXJa
NNTP-Posting-Host: 67.61.77.94
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <29127926-ca6d-4c5a-b32d-f728d12129d3n@googlegroups.com>
Subject: Re: Why is that (fig-Forth for x86)?
From: sdwjac...@gmail.com (S Jack)
Injection-Date: Wed, 11 May 2022 15:32:59 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2014
 by: S Jack - Wed, 11 May 2022 15:32 UTC

On Sunday, May 8, 2022 at 12:09:49 PM UTC-5, Zbig wrote:
> So it seems it's really kind of "leftover". But I posted this question because I could see similar sequence in the other listing. So what does it mean, actually? Is it kind of "tradition" to leave that useless(?) jump there, or I'm still missing something?

Not much help here I forget the details but I'm almost sure I used both
cold and warm with DOS. I know I used warm with the Atari OS with its
system error vector pointed to warm start which printed message and
aborted. Nice that I didn't have to restart and reload the Forth.
I still have them in current system but don't have anything pointed to
the warm start; SEVG points to code that pushes an error number and
executes ERROR .
Didn't use them for debug; Fig has stack trace (which I never used).
--
me

Re: Why is that (fig-Forth for x86)?

<t5hqo9$t09$1@gioia.aioe.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17854&group=comp.lang.forth#17854

 copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!aioe.org!7AktqsUqy5CCvnKa3S0Dkw.user.46.165.242.75.POSTED!not-for-mail
From: dxfo...@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: Why is that (fig-Forth for x86)?
Date: Thu, 12 May 2022 12:17:44 +1000
Organization: Aioe.org NNTP Server
Message-ID: <t5hqo9$t09$1@gioia.aioe.org>
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com>
<29127926-ca6d-4c5a-b32d-f728d12129d3n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="29705"; posting-host="7AktqsUqy5CCvnKa3S0Dkw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.8.1
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: dxforth - Thu, 12 May 2022 02:17 UTC

On 12/05/2022 01:32, S Jack wrote:
> On Sunday, May 8, 2022 at 12:09:49 PM UTC-5, Zbig wrote:
>> So it seems it's really kind of "leftover". But I posted this question because I could see similar sequence in the other listing. So what does it mean, actually? Is it kind of "tradition" to leave that useless(?) jump there, or I'm still missing something?
>
> Not much help here I forget the details but I'm almost sure I used both
> cold and warm with DOS. I know I used warm with the Atari OS with its
> system error vector pointed to warm start which printed message and
> aborted.
> ...

That's a credible use. For reasons unknown MVP-FORTH (based on Fig-FORTH) removed
both the WARM start vector and the built-in divide-by-zero checks. Anything that
triggered the div-zero interrupt would drop you out of Forth. The worry with
redirecting system interrupts is what happens to the system when forth does crash.

Re: Why is that (fig-Forth for x86)?

<nnd$64b9e03f$725056ba@9acbdb54e723db21>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=17858&group=comp.lang.forth#17858

 copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <63375d68-0da6-489c-86aa-b418ed7a5f5dn@googlegroups.com> <29127926-ca6d-4c5a-b32d-f728d12129d3n@googlegroups.com> <t5hqo9$t09$1@gioia.aioe.org>
Subject: Re: Why is that (fig-Forth for x86)?
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: alb...@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$64b9e03f$725056ba@9acbdb54e723db21>
Organization: KPN B.V.
Date: Thu, 12 May 2022 12:53:59 +0200
Path: i2pn2.org!i2pn.org!aioe.org!feeder1.feed.usenet.farm!feed.usenet.farm!news-out.netnews.com!news.alt.net!fdc2.netnews.com!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!abe006.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 33
Injection-Date: Thu, 12 May 2022 12:53:59 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 2223
 by: none - Thu, 12 May 2022 10:53 UTC

In article <t5hqo9$t09$1@gioia.aioe.org>, dxforth <dxforth@gmail.com> wrote:
>On 12/05/2022 01:32, S Jack wrote:
>> On Sunday, May 8, 2022 at 12:09:49 PM UTC-5, Zbig wrote:
>>> So it seems it's really kind of "leftover". But I posted this
>question because I could see similar sequence in the other listing. So
>what does it mean, actually? Is it kind of "tradition" to leave that
>useless(?) jump there, or I'm still missing something?
>>
>> Not much help here I forget the details but I'm almost sure I used both
>> cold and warm with DOS. I know I used warm with the Atari OS with its
>> system error vector pointed to warm start which printed message and
>> aborted.
>> ...
>
>That's a credible use. For reasons unknown MVP-FORTH (based on
>Fig-FORTH) removed
>both the WARM start vector and the built-in divide-by-zero checks.
>Anything that
>triggered the div-zero interrupt would drop you out of Forth. The worry with
>redirecting system interrupts is what happens to the system when forth
>does crash.

It is the same with exceptions that are caught.
If you can't fix the situation, that is a crash.
If you catch the exception, that by itself changes nothing to the crash.

Groetjes Albert
--
"in our communism country Viet Nam, people are forced to be
alive and in the western country like US, people are free to
die from Covid 19 lol" duc ha
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

1
server_pubkey.txt

rocksolid light 0.9.7
clearnet tor