Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

Can't open /usr/share/games/fortunes/fortunes.dat.


computers / alt.folklore.computers / Open source x86 emulator anywhere?

SubjectAuthor
* Open source x86 emulator anywhere?Vir Campestris
+- Re: Open source x86 emulator anywhere?J. Clarke
+- Re: Open source x86 emulator anywhere?meff
+- Re: Open source x86 emulator anywhere?Ahem A Rivet's Shot
+* Re: Open source x86 emulator anywhere?Andreas Kohlbach
|`* Re: Open source x86 emulator anywhere?Vir Campestris
| +* Re: Open source x86 emulator anywhere?J. Clarke
| |`* Re: Open source x86 emulator anywhere?Vir Campestris
| | +* Re: Open source x86 emulator anywhere?Bob Eager
| | |`- Re: Open source x86 emulator anywhere?John Levine
| | `- Re: Open source x86 emulator anywhere?Ahem A Rivet's Shot
| `* Re: Open source x86 emulator anywhere?Johnny Billquist
|  `* Re: Open source x86 emulator anywhere?Vir Campestris
|   `* Re: Open source x86 emulator anywhere?Johnny Billquist
|    `* Re: Open source x86 emulator anywhere?Vir Campestris
|     +* Re: Open source x86 emulator anywhere?Peter Flass
|     |`* Re: Open source x86 emulator anywhere?J. Clarke
|     | `* Re: Open source x86 emulator anywhere?Charlie Gibbs
|     |  `* Re: Open source x86 emulator anywhere?J. Clarke
|     |   `- Re: Open source x86 emulator anywhere?Bob Eager
|     `- Re: Open source x86 emulator anywhere?Johnny Billquist
+* Re: Open source x86 emulator anywhere?Scott Lurndal
|`* Re: Open source x86 emulator anywhere?Peter Maydell
| `* Re: Open source x86 emulator anywhere?Vir Campestris
|  `- Re: Open source x86 emulator anywhere?Peter Maydell
`- Re: Open source x86 emulator anywhere?Acceptable Name

Pages:12
Open source x86 emulator anywhere?

<t1aq7n$ju0$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4923&group=alt.folklore.computers#4923

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: vir.campestris@invalid.invalid (Vir Campestris)
Newsgroups: alt.folklore.computers
Subject: Open source x86 emulator anywhere?
Date: Mon, 21 Mar 2022 21:20:54 +0000
Organization: A noiseless patient Spider
Lines: 14
Message-ID: <t1aq7n$ju0$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 21 Mar 2022 21:20:55 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="ef15bfc93430ad936eb39955fe278f97";
logging-data="20416"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/oDW35inA1LmilnLgr+NIx/FfNibqf8yg="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
Cancel-Lock: sha1:DWffDNYrQonueI2cOYK/1/4kbKc=
Content-Language: en-GB
 by: Vir Campestris - Mon, 21 Mar 2022 21:20 UTC

This is something I've thought about for a while.

I have an old computer here which runs a '286 in real address mode with
an off-chip memory manager. I have fond memories of the project, and
would like to get an emulator of it running.

But I'm not about to write a '286 emulator from the ground up. I tried
it once for an 8080, and that was painful enough - it never worked
properly even though I could just about get CP/M to run DDT.

Is there a decent open source '286 emulator, ideally written in C++
although C would do fine, that I could use to build my emulator around?

Andy

Re: Open source x86 emulator anywhere?

<2ush3h9go3f5m3tdnme1ijmioqqftuorc0@4ax.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4925&group=alt.folklore.computers#4925

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!news.freedyn.de!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx47.iad.POSTED!not-for-mail
From: jclarke.873638@gmail.com (J. Clarke)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Message-ID: <2ush3h9go3f5m3tdnme1ijmioqqftuorc0@4ax.com>
References: <t1aq7n$ju0$1@dont-email.me>
User-Agent: ForteAgent/8.00.32.1272
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 23
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Mon, 21 Mar 2022 17:57:13 -0400
X-Received-Bytes: 1903
 by: J. Clarke - Mon, 21 Mar 2022 21:57 UTC

On Mon, 21 Mar 2022 21:20:54 +0000, Vir Campestris
<vir.campestris@invalid.invalid> wrote:

>This is something I've thought about for a while.
>
>I have an old computer here which runs a '286 in real address mode with
>an off-chip memory manager. I have fond memories of the project, and
>would like to get an emulator of it running.
>
>But I'm not about to write a '286 emulator from the ground up. I tried
>it once for an 8080, and that was painful enough - it never worked
>properly even though I could just about get CP/M to run DDT.
>
>Is there a decent open source '286 emulator, ideally written in C++
>although C would do fine, that I could use to build my emulator around?

There are three x86 emulators with source code available that I am
aware of. Bochs starts at 80386--what would have to be done to it to
make it accurately emulate an 80286 I have no idea. PCEmu and
IBMUlator both claim to emulate 80286 but with what accuracy I have no
idea. They both emulate specific systems and require ROM images, so
may not be what you want. OTOH you might be able to beat one of them
into what you need.

Re: Open source x86 emulator anywhere?

<t1asng$7q9$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4926&group=alt.folklore.computers#4926

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: email@example.com (meff)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 21 Mar 2022 22:03:28 -0000 (UTC)
Organization: That of fools
Lines: 8
Message-ID: <t1asng$7q9$1@dont-email.me>
References: <t1aq7n$ju0$1@dont-email.me>
Injection-Date: Mon, 21 Mar 2022 22:03:28 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="d1b15419d73fe301b7d4d3c96c3ca32d";
logging-data="8009"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19vwCeB2MLjFUXVcyxH1khd"
User-Agent: slrn/1.0.3 (Linux)
Cancel-Lock: sha1:JHjvR5000OyMGWbVucB0WyAuXkQ=
 by: meff - Mon, 21 Mar 2022 22:03 UTC

On 2022-03-21, Vir Campestris <vir.campestris@invalid.invalid> wrote:
> Is there a decent open source '286 emulator, ideally written in C++
> although C would do fine, that I could use to build my emulator around?
>
> Andy

Does [QEMU](https://www.qemu.org/) work for your needs?

Re: Open source x86 emulator anywhere?

<20220321221921.a87054e8c8cd76d53b558f5b@eircom.net>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4927&group=alt.folklore.computers#4927

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: steveo@eircom.net (Ahem A Rivet's Shot)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 21 Mar 2022 22:19:21 +0000
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <20220321221921.a87054e8c8cd76d53b558f5b@eircom.net>
References: <t1aq7n$ju0$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: reader02.eternal-september.org; posting-host="8a07a5c13ef1d4ef222e668e25cc4f26";
logging-data="7366"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/sHgmffO5yt3wTjerQDGzGJOXFNdljdUc="
Cancel-Lock: sha1:f7k9a1JFxHSAF0jr8lzhJbxw9ok=
In-Reply-To: <t1aq7n$ju0$1@dont-email.me>
X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd13.0)
X-Newsreader: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd13.0)
X-Clacks-Overhead: "GNU Terry Pratchett"
 by: Ahem A Rivet's - Mon, 21 Mar 2022 22:19 UTC

On Mon, 21 Mar 2022 21:20:54 +0000
Vir Campestris <vir.campestris@invalid.invalid> wrote:

> This is something I've thought about for a while.
>
> I have an old computer here which runs a '286 in real address mode with
> an off-chip memory manager. I have fond memories of the project, and
> would like to get an emulator of it running.

In addition to the ones jclarke mentioned there's dosbox
(dosbox.sourceforge.net) that emulates a 286 or 386 PC in real or protected
mode.

--
Steve O'Hara-Smith
Odds and Ends at http://www.sohara.org/

Re: Open source x86 emulator anywhere?

<87mthj0w6y.fsf@usenet.ankman.de>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4928&group=alt.folklore.computers#4928

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ank@spamfence.net (Andreas Kohlbach)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 21 Mar 2022 18:36:53 -0400
Organization: A noiseless patient Spider
Lines: 31
Message-ID: <87mthj0w6y.fsf@usenet.ankman.de>
References: <t1aq7n$ju0$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="2e9e4f8de0ca8e83f79a712a7cfd637f";
logging-data="28920"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/WI+kCJMXBfWTU0vNEtbes"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
Cancel-Lock: sha1:jJrOuUHooz9bjWmxUJ8GHJAIjXI=
sha1:fK+ViIrK6l6Ygpf9+qWXZSwJSdc=
 by: Andreas Kohlbach - Mon, 21 Mar 2022 22:36 UTC

On Mon, 21 Mar 2022 21:20:54 +0000, Vir Campestris wrote:
>
> This is something I've thought about for a while.
>
> I have an old computer here which runs a '286 in real address mode
> with an off-chip memory manager. I have fond memories of the project,
> and would like to get an emulator of it running.
>
> But I'm not about to write a '286 emulator from the ground up. I tried
> it once for an 8080, and that was painful enough - it never worked
> properly even though I could just about get CP/M to run DDT.
>
> Is there a decent open source '286 emulator, ideally written in C++
> although C would do fine, that I could use to build my emulator
> around?

MAME emulates any computer using a microprocessor as CPU. No idea if it
allows you to only emulated a 286. But you can emulate the IBM PC/AT which
sports a 80286. You only need the BIOS rom (which I happen to have :-)
and floppy or hard disk images with the software you intend to run.

<https://www.mame.net/>

No idea what a "off-chip memory manager" is though.

https://www.youtube.com/watch?v=eF-uFIN06Ck emulating IBM 5150 on MAME
running CP/M-86.
--
Andreas

https://news-commentaries.blogspot.com/

Re: Open source x86 emulator anywhere?

<1G7_J.273507$t2Bb.260490@fx98.iad>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4929&group=alt.folklore.computers#4929

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!news.freedyn.de!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx98.iad.POSTED!not-for-mail
X-newsreader: xrn 9.03-beta-14-64bit
Sender: scott@dragon.sl.home (Scott Lurndal)
From: scott@slp53.sl.home (Scott Lurndal)
Reply-To: slp53@pacbell.net
Subject: Re: Open source x86 emulator anywhere?
Newsgroups: alt.folklore.computers
References: <t1aq7n$ju0$1@dont-email.me>
Lines: 14
Message-ID: <1G7_J.273507$t2Bb.260490@fx98.iad>
X-Complaints-To: abuse@usenetserver.com
NNTP-Posting-Date: Mon, 21 Mar 2022 23:15:09 UTC
Organization: UsenetServer - www.usenetserver.com
Date: Mon, 21 Mar 2022 23:15:09 GMT
X-Received-Bytes: 1271
 by: Scott Lurndal - Mon, 21 Mar 2022 23:15 UTC

Vir Campestris <vir.campestris@invalid.invalid> writes:
>This is something I've thought about for a while.
>
>I have an old computer here which runs a '286 in real address mode with
>an off-chip memory manager. I have fond memories of the project, and
>would like to get an emulator of it running.
>
>But I'm not about to write a '286 emulator from the ground up. I tried
>it once for an 8080, and that was painful enough - it never worked
>properly even though I could just about get CP/M to run DDT.

qemu will emulate the '286.

https://www.qemu.org/docs/master/system/target-i386.html

Re: Open source x86 emulator anywhere?

<t1nhv2$3eo$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4957&group=alt.folklore.computers#4957

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: vir.campestris@invalid.invalid (Vir Campestris)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Sat, 26 Mar 2022 17:19:30 +0000
Organization: A noiseless patient Spider
Lines: 37
Message-ID: <t1nhv2$3eo$1@dont-email.me>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 17:19:30 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="57f4684d1a0995d5785599593e266f26";
logging-data="3544"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19VsLMAJZZN2cGjMBMNpwIRnSFK7073+9s="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:mmUaWRqOuUBjWHHkfLaBGo8yQW4=
In-Reply-To: <87mthj0w6y.fsf@usenet.ankman.de>
Content-Language: en-GB
 by: Vir Campestris - Sat, 26 Mar 2022 17:19 UTC

On 21/03/2022 22:36, Andreas Kohlbach wrote:
> MAME emulates any computer using a microprocessor as CPU. No idea if it
> allows you to only emulated a 286. But you can emulate the IBM PC/AT which
> sports a 80286. You only need the BIOS rom (which I happen to have:-)
> and floppy or hard disk images with the software you intend to run.
>
> <https://www.mame.net/>
>
> No idea what a "off-chip memory manager" is though.
>
> https://www.youtube.com/watch?v=eF-uFIN06Ck emulating IBM 5150 on MAME
> running CP/M-86.

Thanks all for the pointers. I'll have a look when I get time. Which
ought to be in May, when I've retired!

Off-chip memory manager - well, you all know that when the '286 came out
it was an attempt to get a bigger address space on top of the 8086 which
was limited to 1MB.

Except Intel did it in such a way almost nobody could use it. OS/2 was
about the only one I know of, and that wouldn't really run 8086 programmes.

What we did was to take the top address bits and use them to index into
a fast RAM; the output of the RAM became new address bits.

More address bits.

Which means that within the scope of one process you have the full 1MB
address space of the 8086, but the computer can run more than one
process, each with their own address space. You can even do proper
paging if you want. Sadly virtual addressing wasn't possible; there was
no way to restart the current instruction after a page fault.

Concurrent CP/M was designed with such systems in mind.

Andy

Re: Open source x86 emulator anywhere?

<ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4958&group=alt.folklore.computers#4958

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!news-out.netnews.com!news.alt.net!fdc2.netnews.com!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx11.iad.POSTED!not-for-mail
From: jclarke.873638@gmail.com (J. Clarke)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Message-ID: <ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de> <t1nhv2$3eo$1@dont-email.me>
User-Agent: ForteAgent/8.00.32.1272
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 44
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Sat, 26 Mar 2022 21:18:54 -0400
X-Received-Bytes: 2667
 by: J. Clarke - Sun, 27 Mar 2022 01:18 UTC

On Sat, 26 Mar 2022 17:19:30 +0000, Vir Campestris
<vir.campestris@invalid.invalid> wrote:

>On 21/03/2022 22:36, Andreas Kohlbach wrote:
>> MAME emulates any computer using a microprocessor as CPU. No idea if it
>> allows you to only emulated a 286. But you can emulate the IBM PC/AT which
>> sports a 80286. You only need the BIOS rom (which I happen to have:-)
>> and floppy or hard disk images with the software you intend to run.
>>
>> <https://www.mame.net/>
>>
>> No idea what a "off-chip memory manager" is though.
>>
>> https://www.youtube.com/watch?v=eF-uFIN06Ck emulating IBM 5150 on MAME
>> running CP/M-86.
>
>Thanks all for the pointers. I'll have a look when I get time. Which
>ought to be in May, when I've retired!
>
>Off-chip memory manager - well, you all know that when the '286 came out
>it was an attempt to get a bigger address space on top of the 8086 which
>was limited to 1MB.
>
>Except Intel did it in such a way almost nobody could use it. OS/2 was
>about the only one I know of, and that wouldn't really run 8086 programmes.

Novell and AT&T did it. SVR2 (I think it was 2) would run on a '286
and address 16 meg if installed. Novell Advanced Netware/286 could
even run a DOS session.

>What we did was to take the top address bits and use them to index into
>a fast RAM; the output of the RAM became new address bits.
>
>More address bits.
>
>Which means that within the scope of one process you have the full 1MB
>address space of the 8086, but the computer can run more than one
>process, each with their own address space. You can even do proper
>paging if you want. Sadly virtual addressing wasn't possible; there was
>no way to restart the current instruction after a page fault.
>
>Concurrent CP/M was designed with such systems in mind.
>
>Andy

Re: Open source x86 emulator anywhere?

<t1qi39$u7d$2@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4961&group=alt.folklore.computers#4961

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: vir.campestris@invalid.invalid (Vir Campestris)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Sun, 27 Mar 2022 21:40:09 +0100
Organization: A noiseless patient Spider
Lines: 15
Message-ID: <t1qi39$u7d$2@dont-email.me>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 27 Mar 2022 20:40:09 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="835f8fa74a38db64d289818f038457e5";
logging-data="30957"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19CiN11uuaeeXl+xflGe+EJdJT9AwUv17Y="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:BGqjsYLFqXYk10pK2QfdJKc83C8=
In-Reply-To: <ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com>
Content-Language: en-GB
 by: Vir Campestris - Sun, 27 Mar 2022 20:40 UTC

On 27/03/2022 02:18, J. Clarke wrote:
> Novell and AT&T did it. SVR2 (I think it was 2) would run on a '286
> and address 16 meg if installed. Novell Advanced Netware/286 could
> even run a DOS session.

I'd forgotten about Netware (even though I once went to Provo to work on
a bugfix with them) and I'd clean forgotten about the DOS mode.

IIRC it put the chip back into real address mode while it ran, using the
keyboard controller reset line to reset the processor. But it's a long
time ago.

I didn't know about SVR2.

Andy

Re: Open source x86 emulator anywhere?

<jac2ptFnf22U2@mid.individual.net>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4962&group=alt.folklore.computers#4962

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!2.eu.feeder.erje.net!feeder.erje.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: news0009@eager.cx (Bob Eager)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: 27 Mar 2022 21:21:01 GMT
Lines: 25
Message-ID: <jac2ptFnf22U2@mid.individual.net>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com>
<t1qi39$u7d$2@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: individual.net IgpufMDg8xq5lOEZoEXeDAbXJx0e01U2/mnO+d9uAO+Ib8YfTU
Cancel-Lock: sha1:z9c371eXUIZRxSBXrWLp/Xze4RI=
User-Agent: Pan/0.145 (Duplicitous mercenary valetism; d7e168a
git.gnome.org/pan2)
 by: Bob Eager - Sun, 27 Mar 2022 21:21 UTC

On Sun, 27 Mar 2022 21:40:09 +0100, Vir Campestris wrote:

> On 27/03/2022 02:18, J. Clarke wrote:
>> Novell and AT&T did it. SVR2 (I think it was 2) would run on a '286
>> and address 16 meg if installed. Novell Advanced Netware/286 could
>> even run a DOS session.
>
> I'd forgotten about Netware (even though I once went to Provo to work on
> a bugfix with them) and I'd clean forgotten about the DOS mode.
>
> IIRC it put the chip back into real address mode while it ran, using the
> keyboard controller reset line to reset the processor. But it's a long
> time ago.
>
> I didn't know about SVR2.

Did anyone mention PC/IX? I have a book on that, that a colleague wrote.

--
Using UNIX since v6 (1975)...

Use the BIG mirror service in the UK:
http://www.mirrorservice.org

Re: Open source x86 emulator anywhere?

<4vx*6JdKy@news.chiark.greenend.org.uk>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4963&group=alt.folklore.computers#4963

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!nntp.terraraq.uk!nntp-feed.chiark.greenend.org.uk!ewrotcd!.POSTED!not-for-mail
From: pmaydell@chiark.greenend.org.uk (Peter Maydell)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: 27 Mar 2022 23:23:36 +0100 (BST)
Organization: SGO
Lines: 37
Message-ID: <4vx*6JdKy@news.chiark.greenend.org.uk>
References: <t1aq7n$ju0$1@dont-email.me> <1G7_J.273507$t2Bb.260490@fx98.iad>
NNTP-Posting-Host: chiark.greenend.org.uk
X-Trace: chiark.greenend.org.uk 1648419818 14639 212.13.197.229 (27 Mar 2022 22:23:38 GMT)
X-Complaints-To: abuse@chiark.greenend.org.uk
NNTP-Posting-Date: Sun, 27 Mar 2022 22:23:38 +0000 (UTC)
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: pmaydell@chiark.greenend.org.uk ([212.13.197.229])
 by: Peter Maydell - Sun, 27 Mar 2022 22:23 UTC

In article <1G7_J.273507$t2Bb.260490@fx98.iad>,
Scott Lurndal <slp53@pacbell.net> wrote:
>Vir Campestris <vir.campestris@invalid.invalid> writes:
>>This is something I've thought about for a while.
>>
>>I have an old computer here which runs a '286 in real address mode with
>>an off-chip memory manager. I have fond memories of the project, and
>>would like to get an emulator of it running.
>>
>>But I'm not about to write a '286 emulator from the ground up. I tried
>>it once for an 8080, and that was painful enough - it never worked
>>properly even though I could just about get CP/M to run DDT.
>
>qemu will emulate the '286.
>
>https://www.qemu.org/docs/master/system/target-i386.html

No, the oldest x86 CPU type QEMU has support for is the 486.

TBH, I wouldn't really recommend QEMU for this kind of retrocomputing
emulation task anyway. QEMU is more focused on running guest code
quickly and without worrying about anything like timing accuracy.
That works fine for running Linux and other comparatively modern code
which has been written to cope with a wide range of CPU speed and
timing anyway, and you need the performance. But older systems more
often had software that accidentally or deliberately relied on timing
specifics of the hardware, and were so slow that you can get
better-than-hardware performance on a modern PC even using slow
timing-accurate emulation approaches. Plus QEMU is not an easy
emulator to add new machine types to (largely because the APIs
and design approaches to do so are not documented and you have
to spend a lot of time reading source code of existing models).

I've never worked with MAME, but it would be high on my shortlist
of possibilities to investigate if I were doing this.

-- PMM

Re: Open source x86 emulator anywhere?

<t1qomi$j2u$1@gal.iecc.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4964&group=alt.folklore.computers#4964

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!not-for-mail
From: johnl@taugh.com (John Levine)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Sun, 27 Mar 2022 22:32:50 -0000 (UTC)
Organization: Taughannock Networks
Message-ID: <t1qomi$j2u$1@gal.iecc.com>
References: <t1aq7n$ju0$1@dont-email.me> <ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com> <t1qi39$u7d$2@dont-email.me> <jac2ptFnf22U2@mid.individual.net>
Injection-Date: Sun, 27 Mar 2022 22:32:50 -0000 (UTC)
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970";
logging-data="19550"; mail-complaints-to="abuse@iecc.com"
In-Reply-To: <t1aq7n$ju0$1@dont-email.me> <ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com> <t1qi39$u7d$2@dont-email.me> <jac2ptFnf22U2@mid.individual.net>
Cleverness: some
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: johnl@iecc.com (John Levine)
 by: John Levine - Sun, 27 Mar 2022 22:32 UTC

According to Bob Eager <news0009@eager.cx>:
>On Sun, 27 Mar 2022 21:40:09 +0100, Vir Campestris wrote:
>
>> On 27/03/2022 02:18, J. Clarke wrote:
>>> Novell and AT&T did it. SVR2 (I think it was 2) would run on a '286
>>> and address 16 meg if installed. Novell Advanced Netware/286 could
>>> even run a DOS session.
>>
>> I'd forgotten about Netware (even though I once went to Provo to work on
>> a bugfix with them) and I'd clean forgotten about the DOS mode.
>>
>> IIRC it put the chip back into real address mode while it ran, using the
>> keyboard controller reset line to reset the processor. But it's a long
>> time ago.
>>
>> I didn't know about SVR2.
>
>Did anyone mention PC/IX? I have a book on that, that a colleague wrote.

PC/IX ran in real mode on an 8086 or 286. I wrote small bits of it. Interactive Systems,
which wrote PC/IX, never wrote a protected mode 286 system.

There were versions of Xenix that ran in 286 protected mode.

--
Regards,
John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
Please consider the environment before reading this e-mail. https://jl.ly

Re: Open source x86 emulator anywhere?

<t1rsns$b5v$1@news.misty.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4969&group=alt.folklore.computers#4969

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!.POSTED.77-58-244-139.dclient.hispeed.ch!not-for-mail
From: bqt@softjar.se (Johnny Billquist)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 28 Mar 2022 10:47:53 +0200
Organization: MGT Consulting
Message-ID: <t1rsns$b5v$1@news.misty.com>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 28 Mar 2022 08:47:56 -0000 (UTC)
Injection-Info: news.misty.com; posting-host="77-58-244-139.dclient.hispeed.ch:77.58.244.139";
logging-data="11455"; mail-complaints-to="abuse@misty.com"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.7.0
Content-Language: en-US
In-Reply-To: <t1nhv2$3eo$1@dont-email.me>
 by: Johnny Billquist - Mon, 28 Mar 2022 08:47 UTC

On 2022-03-26 18:19, Vir Campestris wrote:
> Thanks all for the pointers. I'll have a look when I get time. Which
> ought to be in May, when I've retired!
>
> Off-chip memory manager - well, you all know that when the '286 came out
> it was an attempt to get a bigger address space on top of the 8086 which
> was limited to 1MB.
>
> Except Intel did it in such a way almost nobody could use it. OS/2 was
> about the only one I know of, and that wouldn't really run 8086 programmes.
>
> What we did was to take the top address bits and use them to index into
> a fast RAM; the output of the RAM became new address bits.
>
> More address bits.
>
> Which means that within the scope of one process you have the full 1MB
> address space of the 8086, but the computer can run more than one
> process, each with their own address space. You can even do proper
> paging if you want. Sadly virtual addressing wasn't possible; there was
> no way to restart the current instruction after a page fault.

If you can't restart an instruction, you can't do paging. You'll have to
swap all memory in before execution, so no page faults happen.
Virtual memory is fine though (I think you reversed what paging and
virtual memory is :-) ).

But yeah, I think pretty much noone every used the 286 much, for these
reasons.

Johnny

Re: Open source x86 emulator anywhere?

<4f59cc74-4d06-463c-944a-9b1832f02c54n@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4971&group=alt.folklore.computers#4971

  copy link   Newsgroups: alt.folklore.computers
X-Received: by 2002:a05:6214:cc3:b0:440:f5fc:f1ab with SMTP id 3-20020a0562140cc300b00440f5fcf1abmr20817802qvx.59.1648483581739;
Mon, 28 Mar 2022 09:06:21 -0700 (PDT)
X-Received: by 2002:a05:622a:10:b0:2e1:c3b3:4317 with SMTP id
x16-20020a05622a001000b002e1c3b34317mr22476596qtw.39.1648483580997; Mon, 28
Mar 2022 09:06:20 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: alt.folklore.computers
Date: Mon, 28 Mar 2022 09:06:20 -0700 (PDT)
In-Reply-To: <t1aq7n$ju0$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=73.135.80.169; posting-account=IMhPVwkAAAD8unuH5mrS21Rp71MGwkPe
NNTP-Posting-Host: 73.135.80.169
References: <t1aq7n$ju0$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4f59cc74-4d06-463c-944a-9b1832f02c54n@googlegroups.com>
Subject: Re: Open source x86 emulator anywhere?
From: metta.crawler@gmail.com (Acceptable Name)
Injection-Date: Mon, 28 Mar 2022 16:06:21 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 27
 by: Acceptable Name - Mon, 28 Mar 2022 16:06 UTC

On Monday, March 21, 2022 at 5:20:56 PM UTC-4, Vir Campestris wrote:
> This is something I've thought about for a while.
>
> I have an old computer here which runs a '286 in real address mode with
> an off-chip memory manager. I have fond memories of the project, and
> would like to get an emulator of it running.
>
> But I'm not about to write a '286 emulator from the ground up. I tried
> it once for an 8080, and that was painful enough - it never worked
> properly even though I could just about get CP/M to run DDT.
>
> Is there a decent open source '286 emulator, ideally written in C++
> although C would do fine, that I could use to build my emulator around?
>
> Andy

These are the two I know of that nobody mentioned here yet.

PCem is still maintained despite rumors of its death.
http://pcem-emulator.co.uk/
https://github.com/sarah-walker-pcem/pcem
https://github.com/BaRRaKudaRain/PCem-ROMs

86Box
https://86box.net/
https://github.com/86Box
https://86box.readthedocs.io/en/latest/index.html

Re: Open source x86 emulator anywhere?

<20220328201741.28f3bbeabff875c6ebc958a5@eircom.net>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4973&group=alt.folklore.computers#4973

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: steveo@eircom.net (Ahem A Rivet's Shot)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 28 Mar 2022 20:17:41 +0100
Organization: A noiseless patient Spider
Lines: 13
Message-ID: <20220328201741.28f3bbeabff875c6ebc958a5@eircom.net>
References: <t1aq7n$ju0$1@dont-email.me>
<87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me>
<ujev3hhqgoq8d2l2nl36qcmevj15lsgkfp@4ax.com>
<t1qi39$u7d$2@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: reader02.eternal-september.org; posting-host="8a2e24939991b68e0592b334cf4efc6a";
logging-data="6822"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19uHov97mktuaQronHpJdHTnJ7f1Bt7vZc="
Cancel-Lock: sha1:pMVId/KUlcgdsoQUXHGmHSSYSU8=
X-Newsreader: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd13.0)
X-Clacks-Overhead: "GNU Terry Pratchett"
 by: Ahem A Rivet's - Mon, 28 Mar 2022 19:17 UTC

On Sun, 27 Mar 2022 21:40:09 +0100
Vir Campestris <vir.campestris@invalid.invalid> wrote:

> IIRC it put the chip back into real address mode while it ran, using the
> keyboard controller reset line to reset the processor. But it's a long
> time ago.

That was the hardware mechanism provided for exiting protected mode
on the AT - everything based 286 used it.

--
Steve O'Hara-Smith
Odds and Ends at http://www.sohara.org/

Re: Open source x86 emulator anywhere?

<t1t6fv$8fu$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4974&group=alt.folklore.computers#4974

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: vir.campestris@invalid.invalid (Vir Campestris)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 28 Mar 2022 21:40:31 +0100
Organization: A noiseless patient Spider
Lines: 41
Message-ID: <t1t6fv$8fu$1@dont-email.me>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 28 Mar 2022 20:40:31 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="b4ab62e0bd91269b0f7d80c1d62af3cf";
logging-data="8702"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/wuM6pIjfIk9IJV1dSBASqU+VWLl3chMQ="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:N42Hz1OA1BIsIAA2pgI2/NnfgUk=
In-Reply-To: <t1rsns$b5v$1@news.misty.com>
Content-Language: en-GB
 by: Vir Campestris - Mon, 28 Mar 2022 20:40 UTC

On 28/03/2022 09:47, Johnny Billquist wrote:
> On 2022-03-26 18:19, Vir Campestris wrote:
>> Thanks all for the pointers. I'll have a look when I get time. Which
>> ought to be in May, when I've retired!
>>
>> Off-chip memory manager - well, you all know that when the '286 came
>> out it was an attempt to get a bigger address space on top of the 8086
>> which was limited to 1MB.
>>
>> Except Intel did it in such a way almost nobody could use it. OS/2 was
>> about the only one I know of, and that wouldn't really run 8086
>> programmes.
>>
>> What we did was to take the top address bits and use them to index
>> into a fast RAM; the output of the RAM became new address bits.
>>
>> More address bits.
>>
>> Which means that within the scope of one process you have the full 1MB
>> address space of the 8086, but the computer can run more than one
>> process, each with their own address space. You can even do proper
>> paging if you want. Sadly virtual addressing wasn't possible; there
>> was no way to restart the current instruction after a page fault.
>
> If you can't restart an instruction, you can't do paging. You'll have to
> swap all memory in before execution, so no page faults happen.
> Virtual memory is fine though (I think you reversed what paging and
> virtual memory is :-) ).
>
I think we're disagreeing on terminology.

You can have lots of pages on a '286 with the MMU we built. What you
can't have is a page fault. Which means you can't have virtual memory -
everything the app needs must be in real RAM all the time.

> But yeah, I think pretty much noone every used the 286 much, for these
> reasons.
>
And we used it just as a faster 8086.

Andy

Re: Open source x86 emulator anywhere?

<t1t6no$a44$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4975&group=alt.folklore.computers#4975

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: vir.campestris@invalid.invalid (Vir Campestris)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Mon, 28 Mar 2022 21:44:39 +0100
Organization: A noiseless patient Spider
Lines: 33
Message-ID: <t1t6no$a44$1@dont-email.me>
References: <t1aq7n$ju0$1@dont-email.me> <1G7_J.273507$t2Bb.260490@fx98.iad>
<4vx*6JdKy@news.chiark.greenend.org.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 28 Mar 2022 20:44:40 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="b4ab62e0bd91269b0f7d80c1d62af3cf";
logging-data="10372"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19mHoUqcmMdNEMASPLhaW9AMzEU1K8VHps="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:u5o/wmZtzGBz3uV94BbHHxyW/j0=
In-Reply-To: <4vx*6JdKy@news.chiark.greenend.org.uk>
Content-Language: en-GB
 by: Vir Campestris - Mon, 28 Mar 2022 20:44 UTC

On 27/03/2022 23:23, Peter Maydell wrote:
> No, the oldest x86 CPU type QEMU has support for is the 486.
>
> TBH, I wouldn't really recommend QEMU for this kind of retrocomputing
> emulation task anyway. QEMU is more focused on running guest code
> quickly and without worrying about anything like timing accuracy.
> That works fine for running Linux and other comparatively modern code
> which has been written to cope with a wide range of CPU speed and
> timing anyway, and you need the performance. But older systems more
> often had software that accidentally or deliberately relied on timing
> specifics of the hardware, and were so slow that you can get
> better-than-hardware performance on a modern PC even using slow
> timing-accurate emulation approaches. Plus QEMU is not an easy
> emulator to add new machine types to (largely because the APIs
> and design approaches to do so are not documented and you have
> to spend a lot of time reading source code of existing models).
>
> I've never worked with MAME, but it would be high on my shortlist
> of possibilities to investigate if I were doing this.

MAME doesn't sound right for me.

This is a retirement project (I put away my card punch next month) and a
'486 in real mode should do the job.

I _know_ I would have trouble with IO delay loops - if, that is, I was
driving real hardware. But I won't be, so I won't have to allow for IO
recovery times on slow devices. Emulating a SCSI disc on a SCSI
controller should be the most painful bit!

Thanks

Andy

Re: Open source x86 emulator anywhere?

<b1p*XSiKy@news.chiark.greenend.org.uk>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4976&group=alt.folklore.computers#4976

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!nntp.terraraq.uk!nntp-feed.chiark.greenend.org.uk!ewrotcd!.POSTED!not-for-mail
From: pmaydell@chiark.greenend.org.uk (Peter Maydell)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: 28 Mar 2022 22:46:45 +0100 (BST)
Organization: SGO
Lines: 37
Message-ID: <b1p*XSiKy@news.chiark.greenend.org.uk>
References: <t1aq7n$ju0$1@dont-email.me> <1G7_J.273507$t2Bb.260490@fx98.iad> <4vx*6JdKy@news.chiark.greenend.org.uk> <t1t6no$a44$1@dont-email.me>
NNTP-Posting-Host: chiark.greenend.org.uk
X-Trace: chiark.greenend.org.uk 1648504007 16212 212.13.197.229 (28 Mar 2022 21:46:47 GMT)
X-Complaints-To: abuse@chiark.greenend.org.uk
NNTP-Posting-Date: Mon, 28 Mar 2022 21:46:47 +0000 (UTC)
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: pmaydell@chiark.greenend.org.uk ([212.13.197.229])
 by: Peter Maydell - Mon, 28 Mar 2022 21:46 UTC

In article <t1t6no$a44$1@dont-email.me>,
Vir Campestris <vir.campestris@invalid.invalid> wrote:
>On 27/03/2022 23:23, Peter Maydell wrote:
>> No, the oldest x86 CPU type QEMU has support for is the 486.
>>
>> TBH, I wouldn't really recommend QEMU for this kind of retrocomputing
>> emulation task anyway. QEMU is more focused on running guest code
>> quickly and without worrying about anything like timing accuracy.
>> That works fine for running Linux and other comparatively modern code
>> which has been written to cope with a wide range of CPU speed and
>> timing anyway, and you need the performance. But older systems more
>> often had software that accidentally or deliberately relied on timing
>> specifics of the hardware, and were so slow that you can get
>> better-than-hardware performance on a modern PC even using slow
>> timing-accurate emulation approaches. Plus QEMU is not an easy
>> emulator to add new machine types to (largely because the APIs
>> and design approaches to do so are not documented and you have
>> to spend a lot of time reading source code of existing models).
>>
>> I've never worked with MAME, but it would be high on my shortlist
>> of possibilities to investigate if I were doing this.
>
>MAME doesn't sound right for me.
>
>This is a retirement project (I put away my card punch next month) and a
>'486 in real mode should do the job.

Well, as I say, I've never worked with MAME. But even if a 486 is
close enough I dunno that I'd care to try to implement the ad-hoc
pager you describe with QEMU (the only approaches I can think of
are either really ugly or else hacking up the bit of the code
that does the x64 mmu emulation to do something else instead).
Something that does a better job of providing flexible building
blocks to put together into an emulated system seems like it
would be a better fit.

-- PMM

Re: Open source x86 emulator anywhere?

<t1uvq3$4el$1@news.misty.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4977&group=alt.folklore.computers#4977

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!.POSTED.46.20.243.28!not-for-mail
From: bqt@softjar.se (Johnny Billquist)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Tue, 29 Mar 2022 14:58:43 +0200
Organization: MGT Consulting
Message-ID: <t1uvq3$4el$1@news.misty.com>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com>
<t1t6fv$8fu$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 29 Mar 2022 12:58:44 -0000 (UTC)
Injection-Info: news.misty.com; posting-host="46.20.243.28";
logging-data="4565"; mail-complaints-to="abuse@misty.com"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.7.0
Content-Language: en-US
In-Reply-To: <t1t6fv$8fu$1@dont-email.me>
 by: Johnny Billquist - Tue, 29 Mar 2022 12:58 UTC

On 2022-03-28 22:40, Vir Campestris wrote:
> On 28/03/2022 09:47, Johnny Billquist wrote:
>> On 2022-03-26 18:19, Vir Campestris wrote:
>>> Thanks all for the pointers. I'll have a look when I get time. Which
>>> ought to be in May, when I've retired!
>>>
>>> Off-chip memory manager - well, you all know that when the '286 came
>>> out it was an attempt to get a bigger address space on top of the
>>> 8086 which was limited to 1MB.
>>>
>>> Except Intel did it in such a way almost nobody could use it. OS/2
>>> was about the only one I know of, and that wouldn't really run 8086
>>> programmes.
>>>
>>> What we did was to take the top address bits and use them to index
>>> into a fast RAM; the output of the RAM became new address bits.
>>>
>>> More address bits.
>>>
>>> Which means that within the scope of one process you have the full
>>> 1MB address space of the 8086, but the computer can run more than one
>>> process, each with their own address space. You can even do proper
>>> paging if you want. Sadly virtual addressing wasn't possible; there
>>> was no way to restart the current instruction after a page fault.
>>
>> If you can't restart an instruction, you can't do paging. You'll have
>> to swap all memory in before execution, so no page faults happen.
>> Virtual memory is fine though (I think you reversed what paging and
>> virtual memory is :-) ).
>>
> I think we're disagreeing on terminology.

Very likely. But I'll do one attempt at "converting" you. :-)

> You can have lots of pages on a '286 with the MMU we built. What you
> can't have is a page fault. Which means you can't have virtual memory -
> everything the app needs must be in real RAM all the time.

Pages basically means the virtual memory is not necessarily all
contiguous in physical memory. I think we can agree on that part. It
also means that you can have a setup where not all of your virtual
memory are mapped somewhere into physical memory at some point in time.
Paging is the action of reading in a page after a page fault. A page
fault happens when a page is not resident in memory.

I do think we can agree on things so far. Possibly you might have some
other definition of what paging is, which would be interesting to hear,
since you think you can do paging.

But the usual definition of paging is that you read/write individual
pages as needed. Which is different than swapping, which is dealing with
all the process memory in one go. With swapping you are either in
memory, or not. You swap a whole process in or out. You don't swap
individual pages. Then we're back to paging again. But even when you
have pages, swapping as such can take place. Nothing says that swapping
cannot be done on an address space that is divided into pages.

Now, virtual memory is a completely different thing. Virtual memory is,
as the name suggest, memory which is virtual, ie. not real/physical. And
it's not real in the sense that the address space your program have
might have an address 0, and you might have some data there. Another
process might also have an address 0, and some data there. But this is
not the same address 0, and it's not the same data. Both processes
thinks they have a bunch of memory which is their own, and it acts like
memory, and can be used. But in the actual machine, there is just
physical memory, and there is an address 0, but it's not the address, or
the data either of these processes are thinking about, referring to, or
using. Each process have its own virtual memory. From time to time, that
virtual memory might map to physical memory, but that might not always
be the case. Further, the actual physical memory address used for
virtual 0 might be anything. And for each process, virtual 0 might map
to a different physical address.
But the point is, from the process point of view, it appears that he has
a full address space with memory, and it's his alone, he can do anything
in there, and it's completely isolated, and the address space as such is
private. He might not even see the OS memory, even though it obviously
also do exist.

The size of physical memory compared to virtual memory is actually
irrelevant. However, if you want to have more virtual memory than there
is physical memory, not only do you need virtual memory, but you also
need paging. Because without paging, you cannot exceed physical memory.
But you can still have virtual memory.

In you head, I bet you are thinking that virtual memory means paging.
But as you observed yourself, you cannot even have page faults if you
can't restart instructions, so at that point your process cannot have
more virtual memory than physical memory. Does that then mean you
actually do not have virtual memory either. You obviously do not have
page faults. What does "paging" mean for you then?

And to make some practical examples: the PDP-11 have a 16 bit virtual
address space, but a 22-bit physical address space. It divides the
16-bit address space into 8 pages, and you can even restart
instructions. So in theory you could do a system with paging, but as far
as I know, none have been done. However, you do have virtual addressing,
and virtual memory in pretty much all operating systems that are
multiuser ones. (They all just do swapping. But total memory used by all
processes might easily exceed the available physical memory, but a
single process have to have all it's memory in physical space before
executing. I could go into more details why this is, if anyone is
interested.)
But in your view then, do the PDP-11 have or not have virtual memory?
Would it change if you were to implement demand paging? Or will it never
have virtual memory, no matter what, just because of the basic fact that
it has a larger physical address space than virtual? After all, apart
from that detail, it would be doing exactly the same thing as another
computer you would claim do have virtual memory.

Similar on VAX. The original VAX had a 32-bit virtual address space, but
a 30-bit physical one. So you would think/argue that this machine then
have virtual memory, as well as paging (well, not all operating systems
on the VAX did paging. Classical example is the first Unix port, which
only did swapping on the VAX, and did not do any demand paging - did it
not have virtual memory then?). However, the last revision to the VAX
architecture allowed the physical address space to go up to 34 bits. So
in theory you could then see a machine with more physical memory than
virtual memory could address. Does this then mean that the VAX no longer
have virtual memory? Because of that extension? Or would it just stop
having virtual memory the moment you actually inserted that much
physical memory?

Sorry for such a long post. It's just that it always bothers me when
people use virtual memory for a term that is paging, and think that
virtual memory can only exist if the virtual address space is larger
than the physical address space. It leads to funny and strange
conclusions, and redefinition of machines in some situations, as well as
disagreeing with age old documented usage of the terms. Check any PDP-11
processor handbook for virtual addresses. It's in there.

>> But yeah, I think pretty much noone every used the 286 much, for these
>> reasons.
>>
> And we used it just as a faster 8086.

Yeah. That might have been a popular use. :-D

Johnny

Re: Open source x86 emulator anywhere?

<t22fpc$fuc$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4981&group=alt.folklore.computers#4981

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: vir.campestris@invalid.invalid (Vir Campestris)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Wed, 30 Mar 2022 21:49:47 +0100
Organization: A noiseless patient Spider
Lines: 144
Message-ID: <t22fpc$fuc$1@dont-email.me>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com>
<t1t6fv$8fu$1@dont-email.me> <t1uvq3$4el$1@news.misty.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 30 Mar 2022 20:49:48 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="b491a174bb59286f1bf91b123f524f2f";
logging-data="16332"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19nLntOBs9Brf/AbRRiOiKia5ULxo4y7bY="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:t6ZXchc43wjxfg1gCxdNqXU+SRI=
In-Reply-To: <t1uvq3$4el$1@news.misty.com>
Content-Language: en-GB
 by: Vir Campestris - Wed, 30 Mar 2022 20:49 UTC

On 29/03/2022 13:58, Johnny Billquist wrote:
> On 2022-03-28 22:40, Vir Campestris wrote:
>> On 28/03/2022 09:47, Johnny Billquist wrote:
>>> On 2022-03-26 18:19, Vir Campestris wrote:
>>>> Thanks all for the pointers. I'll have a look when I get time. Which
>>>> ought to be in May, when I've retired!
>>>>
>>>> Off-chip memory manager - well, you all know that when the '286 came
>>>> out it was an attempt to get a bigger address space on top of the
>>>> 8086 which was limited to 1MB.
>>>>
>>>> Except Intel did it in such a way almost nobody could use it. OS/2
>>>> was about the only one I know of, and that wouldn't really run 8086
>>>> programmes.
>>>>
>>>> What we did was to take the top address bits and use them to index
>>>> into a fast RAM; the output of the RAM became new address bits.
>>>>
>>>> More address bits.
>>>>
>>>> Which means that within the scope of one process you have the full
>>>> 1MB address space of the 8086, but the computer can run more than
>>>> one process, each with their own address space. You can even do
>>>> proper paging if you want. Sadly virtual addressing wasn't possible;
>>>> there was no way to restart the current instruction after a page fault.
>>>
>>> If you can't restart an instruction, you can't do paging. You'll have
>>> to swap all memory in before execution, so no page faults happen.
>>> Virtual memory is fine though (I think you reversed what paging and
>>> virtual memory is :-) ).
>>>
>> I think we're disagreeing on terminology.
>
> Very likely. But I'll do one attempt at "converting" you. :-)
>
>> You can have lots of pages on a '286 with the MMU we built. What you
>> can't have is a page fault. Which means you can't have virtual memory
>> - everything the app needs must be in real RAM all the time.
>
> Pages basically means the virtual memory is not necessarily all
> contiguous in physical memory. I think we can agree on that part. It
> also means that you can have a setup where not all of your virtual
> memory are mapped somewhere into physical memory at some point in time.
> Paging is the action of reading in a page after a page fault. A page
> fault happens when a page is not resident in memory.
>
> I do think we can agree on things so far. Possibly you might have some
> other definition of what paging is, which would be interesting to hear,
> since you think you can do paging.
>
> But the usual definition of paging is that you read/write individual
> pages as needed. Which is different than swapping, which is dealing with
> all the process memory in one go. With swapping you are either in
> memory, or not. You swap a whole process in or out. You don't swap
> individual pages. Then we're back to paging again. But even when you
> have pages, swapping as such can take place. Nothing says that swapping
> cannot be done on an address space that is divided into pages.
>
> Now, virtual memory is a completely different thing. Virtual memory is,
> as the name suggest, memory which is virtual, ie. not real/physical. And
> it's not real in the sense that the address space your program have
> might have an address 0, and you might have some data there. Another
> process might also have an address 0, and some data there. But this is
> not the same address 0, and it's not the same data. Both processes
> thinks they have a bunch of memory which is their own, and it acts like
> memory, and can be used. But in the actual machine, there is just
> physical memory, and there is an address 0, but it's not the address, or
> the data either of these processes are thinking about, referring to, or
> using. Each process have its own virtual memory. From time to time, that
> virtual memory might map to physical memory, but that might not always
> be the case. Further, the actual physical memory address used for
> virtual 0 might be anything. And for each process, virtual 0 might map
> to a different physical address.
> But the point is, from the process point of view, it appears that he has
> a full address space with memory, and it's his alone, he can do anything
> in there, and it's completely isolated, and the address space as such is
> private. He might not even see the OS memory, even though it obviously
> also do exist.
>
> The size of physical memory compared to virtual memory is actually
> irrelevant. However, if you want to have more virtual memory than there
> is physical memory, not only do you need virtual memory, but you also
> need paging. Because without paging, you cannot exceed physical memory.
> But you can still have virtual memory.
>
> In you head, I bet you are thinking that virtual memory means paging.
> But as you observed yourself, you cannot even have page faults if you
> can't restart instructions, so at that point your process cannot have
> more virtual memory than physical memory. Does that then mean you
> actually do not have virtual memory either. You obviously do not have
> page faults. What does "paging" mean for you then?
>

I can have a bunch of discontinuous pages in memory which appear to be
contiguous to the process running.

I can add individual pages to a process as it requests. A small process
doesn't have to have the whole megabyte that's available.

So a malloc call can end up increasing the physical memory available to
a process - and it will just grab the first physical page from the free
list, then map it into the process.

So I have paging. Of a sort.

What I cannot do is write _some_ of those pages out to disc, and then
allow a VSI to bring them in.

(In practice we never wrote any of them to disc; Digital Research's
dispatcher would get upset if setting up the pages for a process took
significant time.)

The machine I have here has 5MB of RAM.

I could run 8 processes on it, each taking half a meg, and all would be
well. Each process has "an address space" of a megabyte, and would be
happy thinking it could go ahead and malloc to fill up its entire megabyte.

That would be true of one of them. But only one.

Because we don't have virtual memory.

(actually I have a vague feeling there was a way of sharing pages
between processes, but it's a long time ago...)

It's kind of scary that I started out with mainframes where a cabinet
8ft tall and 3ft square was needed for a megabyte of RAM.

There's a device sitting on my desk the size of my thumb with a gigabyte
in it.

(It's an ARM based device BTW, and runs Linux, and everything is there
for virtual memory. But we don't because it would wreck the flash storage)

>
>>> But yeah, I think pretty much noone every used the 286 much, for
>>> these reasons.
>>>
>> And we used it just as a faster 8086.
>
> Yeah. That might have been a popular use. :-D
>
>   Johnny

Re: Open source x86 emulator anywhere?

<83728405.670371921.156833.peter_flass-yahoo.com@news.eternal-september.org>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4982&group=alt.folklore.computers#4982

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: peter_flass@yahoo.com (Peter Flass)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: Wed, 30 Mar 2022 15:26:40 -0700
Organization: A noiseless patient Spider
Lines: 155
Message-ID: <83728405.670371921.156833.peter_flass-yahoo.com@news.eternal-september.org>
References: <t1aq7n$ju0$1@dont-email.me>
<87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me>
<t1rsns$b5v$1@news.misty.com>
<t1t6fv$8fu$1@dont-email.me>
<t1uvq3$4el$1@news.misty.com>
<t22fpc$fuc$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Info: reader02.eternal-september.org; posting-host="d633ade4cfb66ebf4bdd8b23163d159d";
logging-data="27006"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+zGVqmtTp64A8PmtsIQ1/m"
User-Agent: NewsTap/5.3.1 (iPad)
Cancel-Lock: sha1:Xb3tsnbOCDgPGXnIPiYCbQvCs3M=
sha1:k57Be7Z7WU5XRZFQfPS98B8HXGw=
 by: Peter Flass - Wed, 30 Mar 2022 22:26 UTC

Vir Campestris <vir.campestris@invalid.invalid> wrote:
> On 29/03/2022 13:58, Johnny Billquist wrote:
>> On 2022-03-28 22:40, Vir Campestris wrote:
>>> On 28/03/2022 09:47, Johnny Billquist wrote:
>>>> On 2022-03-26 18:19, Vir Campestris wrote:
>>>>> Thanks all for the pointers. I'll have a look when I get time. Which
>>>>> ought to be in May, when I've retired!
>>>>>
>>>>> Off-chip memory manager - well, you all know that when the '286 came
>>>>> out it was an attempt to get a bigger address space on top of the
>>>>> 8086 which was limited to 1MB.
>>>>>
>>>>> Except Intel did it in such a way almost nobody could use it. OS/2
>>>>> was about the only one I know of, and that wouldn't really run 8086
>>>>> programmes.
>>>>>
>>>>> What we did was to take the top address bits and use them to index
>>>>> into a fast RAM; the output of the RAM became new address bits.
>>>>>
>>>>> More address bits.
>>>>>
>>>>> Which means that within the scope of one process you have the full
>>>>> 1MB address space of the 8086, but the computer can run more than
>>>>> one process, each with their own address space. You can even do
>>>>> proper paging if you want. Sadly virtual addressing wasn't possible;
>>>>> there was no way to restart the current instruction after a page fault.
>>>>
>>>> If you can't restart an instruction, you can't do paging. You'll have
>>>> to swap all memory in before execution, so no page faults happen.
>>>> Virtual memory is fine though (I think you reversed what paging and
>>>> virtual memory is :-) ).
>>>>
>>> I think we're disagreeing on terminology.
>>
>> Very likely. But I'll do one attempt at "converting" you. :-)
>>
>>> You can have lots of pages on a '286 with the MMU we built. What you
>>> can't have is a page fault. Which means you can't have virtual memory
>>> - everything the app needs must be in real RAM all the time.
>>
>> Pages basically means the virtual memory is not necessarily all
>> contiguous in physical memory. I think we can agree on that part. It
>> also means that you can have a setup where not all of your virtual
>> memory are mapped somewhere into physical memory at some point in time.
>> Paging is the action of reading in a page after a page fault. A page
>> fault happens when a page is not resident in memory.
>>
>> I do think we can agree on things so far. Possibly you might have some
>> other definition of what paging is, which would be interesting to hear,
>> since you think you can do paging.
>>
>> But the usual definition of paging is that you read/write individual
>> pages as needed. Which is different than swapping, which is dealing with
>> all the process memory in one go. With swapping you are either in
>> memory, or not. You swap a whole process in or out. You don't swap
>> individual pages. Then we're back to paging again. But even when you
>> have pages, swapping as such can take place. Nothing says that swapping
>> cannot be done on an address space that is divided into pages.
>>
>> Now, virtual memory is a completely different thing. Virtual memory is,
>> as the name suggest, memory which is virtual, ie. not real/physical. And
>> it's not real in the sense that the address space your program have
>> might have an address 0, and you might have some data there. Another
>> process might also have an address 0, and some data there. But this is
>> not the same address 0, and it's not the same data. Both processes
>> thinks they have a bunch of memory which is their own, and it acts like
>> memory, and can be used. But in the actual machine, there is just
>> physical memory, and there is an address 0, but it's not the address, or
>> the data either of these processes are thinking about, referring to, or
>> using. Each process have its own virtual memory. From time to time, that
>> virtual memory might map to physical memory, but that might not always
>> be the case. Further, the actual physical memory address used for
>> virtual 0 might be anything. And for each process, virtual 0 might map
>> to a different physical address.
>> But the point is, from the process point of view, it appears that he has
>> a full address space with memory, and it's his alone, he can do anything
>> in there, and it's completely isolated, and the address space as such is
>> private. He might not even see the OS memory, even though it obviously
>> also do exist.
>>
>> The size of physical memory compared to virtual memory is actually
>> irrelevant. However, if you want to have more virtual memory than there
>> is physical memory, not only do you need virtual memory, but you also
>> need paging. Because without paging, you cannot exceed physical memory.
>> But you can still have virtual memory.
>>
>> In you head, I bet you are thinking that virtual memory means paging.
>> But as you observed yourself, you cannot even have page faults if you
>> can't restart instructions, so at that point your process cannot have
>> more virtual memory than physical memory. Does that then mean you
>> actually do not have virtual memory either. You obviously do not have
>> page faults. What does "paging" mean for you then?
>>
>
> I can have a bunch of discontinuous pages in memory which appear to be
> contiguous to the process running.
>
> I can add individual pages to a process as it requests. A small process
> doesn't have to have the whole megabyte that's available.
>
> So a malloc call can end up increasing the physical memory available to
> a process - and it will just grab the first physical page from the free
> list, then map it into the process.
>
> So I have paging. Of a sort.
>
> What I cannot do is write _some_ of those pages out to disc, and then
> allow a VSI to bring them in.
>
> (In practice we never wrote any of them to disc; Digital Research's
> dispatcher would get upset if setting up the pages for a process took
> significant time.)
>
> The machine I have here has 5MB of RAM.
>
> I could run 8 processes on it, each taking half a meg, and all would be
> well. Each process has "an address space" of a megabyte, and would be
> happy thinking it could go ahead and malloc to fill up its entire megabyte.
>
> That would be true of one of them. But only one.
>
> Because we don't have virtual memory.
>
> (actually I have a vague feeling there was a way of sharing pages
> between processes, but it's a long time ago...)
>
> It's kind of scary that I started out with mainframes where a cabinet
> 8ft tall and 3ft square was needed for a megabyte of RAM.

When I started out, a megabyte was a large memory. Bigger systems had 256K
or 512K.

>
> There's a device sitting on my desk the size of my thumb with a gigabyte
> in it.
>
> (It's an ARM based device BTW, and runs Linux, and everything is there
> for virtual memory. But we don't because it would wreck the flash storage)
>
>>
>>>> But yeah, I think pretty much noone every used the 286 much, for
>>>> these reasons.
>>>>
>>> And we used it just as a faster 8086.
>>
>> Yeah. That might have been a popular use. :-D
>>
>>   Johnny
>
>

--
Pete

Re: Open source x86 emulator anywhere?

<072c4hhv8l8rqc9u20kdqrhhob00835gsa@4ax.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4983&group=alt.folklore.computers#4983

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.roellig-ltd.de!open-news-network.org!peer03.ams4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx97.iad.POSTED!not-for-mail
From: jclarke.873638@gmail.com (J. Clarke)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Message-ID: <072c4hhv8l8rqc9u20kdqrhhob00835gsa@4ax.com>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de> <t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com> <t1t6fv$8fu$1@dont-email.me> <t1uvq3$4el$1@news.misty.com> <t22fpc$fuc$1@dont-email.me> <83728405.670371921.156833.peter_flass-yahoo.com@news.eternal-september.org>
User-Agent: ForteAgent/8.00.32.1272
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Lines: 158
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Thu, 31 Mar 2022 16:04:05 -0400
X-Received-Bytes: 8751
 by: J. Clarke - Thu, 31 Mar 2022 20:04 UTC

On Wed, 30 Mar 2022 15:26:40 -0700, Peter Flass
<peter_flass@yahoo.com> wrote:

>Vir Campestris <vir.campestris@invalid.invalid> wrote:
>> On 29/03/2022 13:58, Johnny Billquist wrote:
>>> On 2022-03-28 22:40, Vir Campestris wrote:
>>>> On 28/03/2022 09:47, Johnny Billquist wrote:
>>>>> On 2022-03-26 18:19, Vir Campestris wrote:
>>>>>> Thanks all for the pointers. I'll have a look when I get time. Which
>>>>>> ought to be in May, when I've retired!
>>>>>>
>>>>>> Off-chip memory manager - well, you all know that when the '286 came
>>>>>> out it was an attempt to get a bigger address space on top of the
>>>>>> 8086 which was limited to 1MB.
>>>>>>
>>>>>> Except Intel did it in such a way almost nobody could use it. OS/2
>>>>>> was about the only one I know of, and that wouldn't really run 8086
>>>>>> programmes.
>>>>>>
>>>>>> What we did was to take the top address bits and use them to index
>>>>>> into a fast RAM; the output of the RAM became new address bits.
>>>>>>
>>>>>> More address bits.
>>>>>>
>>>>>> Which means that within the scope of one process you have the full
>>>>>> 1MB address space of the 8086, but the computer can run more than
>>>>>> one process, each with their own address space. You can even do
>>>>>> proper paging if you want. Sadly virtual addressing wasn't possible;
>>>>>> there was no way to restart the current instruction after a page fault.
>>>>>
>>>>> If you can't restart an instruction, you can't do paging. You'll have
>>>>> to swap all memory in before execution, so no page faults happen.
>>>>> Virtual memory is fine though (I think you reversed what paging and
>>>>> virtual memory is :-) ).
>>>>>
>>>> I think we're disagreeing on terminology.
>>>
>>> Very likely. But I'll do one attempt at "converting" you. :-)
>>>
>>>> You can have lots of pages on a '286 with the MMU we built. What you
>>>> can't have is a page fault. Which means you can't have virtual memory
>>>> - everything the app needs must be in real RAM all the time.
>>>
>>> Pages basically means the virtual memory is not necessarily all
>>> contiguous in physical memory. I think we can agree on that part. It
>>> also means that you can have a setup where not all of your virtual
>>> memory are mapped somewhere into physical memory at some point in time.
>>> Paging is the action of reading in a page after a page fault. A page
>>> fault happens when a page is not resident in memory.
>>>
>>> I do think we can agree on things so far. Possibly you might have some
>>> other definition of what paging is, which would be interesting to hear,
>>> since you think you can do paging.
>>>
>>> But the usual definition of paging is that you read/write individual
>>> pages as needed. Which is different than swapping, which is dealing with
>>> all the process memory in one go. With swapping you are either in
>>> memory, or not. You swap a whole process in or out. You don't swap
>>> individual pages. Then we're back to paging again. But even when you
>>> have pages, swapping as such can take place. Nothing says that swapping
>>> cannot be done on an address space that is divided into pages.
>>>
>>> Now, virtual memory is a completely different thing. Virtual memory is,
>>> as the name suggest, memory which is virtual, ie. not real/physical. And
>>> it's not real in the sense that the address space your program have
>>> might have an address 0, and you might have some data there. Another
>>> process might also have an address 0, and some data there. But this is
>>> not the same address 0, and it's not the same data. Both processes
>>> thinks they have a bunch of memory which is their own, and it acts like
>>> memory, and can be used. But in the actual machine, there is just
>>> physical memory, and there is an address 0, but it's not the address, or
>>> the data either of these processes are thinking about, referring to, or
>>> using. Each process have its own virtual memory. From time to time, that
>>> virtual memory might map to physical memory, but that might not always
>>> be the case. Further, the actual physical memory address used for
>>> virtual 0 might be anything. And for each process, virtual 0 might map
>>> to a different physical address.
>>> But the point is, from the process point of view, it appears that he has
>>> a full address space with memory, and it's his alone, he can do anything
>>> in there, and it's completely isolated, and the address space as such is
>>> private. He might not even see the OS memory, even though it obviously
>>> also do exist.
>>>
>>> The size of physical memory compared to virtual memory is actually
>>> irrelevant. However, if you want to have more virtual memory than there
>>> is physical memory, not only do you need virtual memory, but you also
>>> need paging. Because without paging, you cannot exceed physical memory.
>>> But you can still have virtual memory.
>>>
>>> In you head, I bet you are thinking that virtual memory means paging.
>>> But as you observed yourself, you cannot even have page faults if you
>>> can't restart instructions, so at that point your process cannot have
>>> more virtual memory than physical memory. Does that then mean you
>>> actually do not have virtual memory either. You obviously do not have
>>> page faults. What does "paging" mean for you then?
>>>
>>
>> I can have a bunch of discontinuous pages in memory which appear to be
>> contiguous to the process running.
>>
>> I can add individual pages to a process as it requests. A small process
>> doesn't have to have the whole megabyte that's available.
>>
>> So a malloc call can end up increasing the physical memory available to
>> a process - and it will just grab the first physical page from the free
>> list, then map it into the process.
>>
>> So I have paging. Of a sort.
>>
>> What I cannot do is write _some_ of those pages out to disc, and then
>> allow a VSI to bring them in.
>>
>> (In practice we never wrote any of them to disc; Digital Research's
>> dispatcher would get upset if setting up the pages for a process took
>> significant time.)
>>
>> The machine I have here has 5MB of RAM.
>>
>> I could run 8 processes on it, each taking half a meg, and all would be
>> well. Each process has "an address space" of a megabyte, and would be
>> happy thinking it could go ahead and malloc to fill up its entire megabyte.
>>
>> That would be true of one of them. But only one.
>>
>> Because we don't have virtual memory.
>>
>> (actually I have a vague feeling there was a way of sharing pages
>> between processes, but it's a long time ago...)
>>
>> It's kind of scary that I started out with mainframes where a cabinet
>> 8ft tall and 3ft square was needed for a megabyte of RAM.
>
>When I started out, a megabyte was a large memory. Bigger systems had 256K
>or 512K.

I remember when someone described the large data center where he
worked as a "2 gigabyte shop". My phone has a terabyte (I don't
_need_ a terabyte of storage in my phone, but it cracks me up every
time I think about it).
>
>>
>> There's a device sitting on my desk the size of my thumb with a gigabyte
>> in it.
>>
>> (It's an ARM based device BTW, and runs Linux, and everything is there
>> for virtual memory. But we don't because it would wreck the flash storage)
>>
>>>
>>>>> But yeah, I think pretty much noone every used the 286 much, for
>>>>> these reasons.
>>>>>
>>>> And we used it just as a faster 8086.
>>>
>>> Yeah. That might have been a popular use. :-D
>>>
>>>   Johnny
>>
>>


Click here to read the complete article
Re: Open source x86 emulator anywhere?

<2or1K.271097$z688.112479@fx35.iad>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4984&group=alt.folklore.computers#4984

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx35.iad.POSTED!not-for-mail
Newsgroups: alt.folklore.computers
From: cgibbs@kltpzyxm.invalid (Charlie Gibbs)
Subject: Re: Open source x86 emulator anywhere?
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com>
<t1t6fv$8fu$1@dont-email.me> <t1uvq3$4el$1@news.misty.com>
<t22fpc$fuc$1@dont-email.me>
<83728405.670371921.156833.peter_flass-yahoo.com@news.eternal-september.org>
<072c4hhv8l8rqc9u20kdqrhhob00835gsa@4ax.com>
User-Agent: slrn/1.0.3 (Linux)
Lines: 44
Message-ID: <2or1K.271097$z688.112479@fx35.iad>
X-Complaints-To: https://www.astraweb.com/aup
NNTP-Posting-Date: Fri, 01 Apr 2022 00:08:30 UTC
Date: Fri, 01 Apr 2022 00:08:30 GMT
X-Received-Bytes: 2543
 by: Charlie Gibbs - Fri, 1 Apr 2022 00:08 UTC

On 2022-03-31, J Clarke <jclarke.873638@gmail.com> wrote:

> On Wed, 30 Mar 2022 15:26:40 -0700, Peter Flass
> <peter_flass@yahoo.com> wrote:
>
>> Vir Campestris <vir.campestris@invalid.invalid> wrote:
>>
>>> It's kind of scary that I started out with mainframes where a cabinet
>>> 8ft tall and 3ft square was needed for a megabyte of RAM.

The core boxes on the 360/67 at university were that big, but each one
only stored 256K.

>> When I started out, a megabyte was a large memory. Bigger systems
>> had 256K or 512K.

I worked on smaller mainframes, e.g. Univac 90/30. You could hang
256K on one, but most users settled for 192K to save money.

A predecessor, the 9400, had cabinets half the size of one of those
8x3x3 boxes mentioned above; each held two 64K modules.

> I remember when someone described the large data center where he
> worked as a "2 gigabyte shop". My phone has a terabyte (I don't
> _need_ a terabyte of storage in my phone, but it cracks me up every
> time I think about it).

That 360/67 had two 2314 subsystems. Call it 400MB.

>>> There's a device sitting on my desk the size of my thumb with a gigabyte
>>> in it.

The one in my pocket holds 16GB; newer ones hold much more.

I remember in my first job when we expanded our machine from 16K to 32K.
We wondered what we were going to do with all that space...

Is it time to start the Four Yorkshiremen skit yet?

--
/~\ Charlie Gibbs | Microsoft is a dictatorship.
\ / <cgibbs@kltpzyxm.invalid> | Apple is a cult.
X I'm really at ac.dekanfrus | Linux is anarchy.
/ \ if you read it the right way. | Pick your poison.

Re: Open source x86 emulator anywhere?

<8f3d4ht7eu54krs8jun8n4qujqsbu3os8o@4ax.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4985&group=alt.folklore.computers#4985

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!feeder1.feed.usenet.farm!feed.usenet.farm!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!news-out.netnews.com!news.alt.net!fdc2.netnews.com!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx31.iad.POSTED!not-for-mail
From: jclarke.873638@gmail.com (J. Clarke)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Message-ID: <8f3d4ht7eu54krs8jun8n4qujqsbu3os8o@4ax.com>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de> <t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com> <t1t6fv$8fu$1@dont-email.me> <t1uvq3$4el$1@news.misty.com> <t22fpc$fuc$1@dont-email.me> <83728405.670371921.156833.peter_flass-yahoo.com@news.eternal-september.org> <072c4hhv8l8rqc9u20kdqrhhob00835gsa@4ax.com> <2or1K.271097$z688.112479@fx35.iad>
User-Agent: ForteAgent/8.00.32.1272
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 44
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Fri, 01 Apr 2022 01:30:42 -0400
X-Received-Bytes: 2756
 by: J. Clarke - Fri, 1 Apr 2022 05:30 UTC

On Fri, 01 Apr 2022 00:08:30 GMT, Charlie Gibbs
<cgibbs@kltpzyxm.invalid> wrote:

>On 2022-03-31, J Clarke <jclarke.873638@gmail.com> wrote:
>
>> On Wed, 30 Mar 2022 15:26:40 -0700, Peter Flass
>> <peter_flass@yahoo.com> wrote:
>>
>>> Vir Campestris <vir.campestris@invalid.invalid> wrote:
>>>
>>>> It's kind of scary that I started out with mainframes where a cabinet
>>>> 8ft tall and 3ft square was needed for a megabyte of RAM.
>
>The core boxes on the 360/67 at university were that big, but each one
>only stored 256K.
>
>>> When I started out, a megabyte was a large memory. Bigger systems
>>> had 256K or 512K.
>
>I worked on smaller mainframes, e.g. Univac 90/30. You could hang
>256K on one, but most users settled for 192K to save money.
>
>A predecessor, the 9400, had cabinets half the size of one of those
>8x3x3 boxes mentioned above; each held two 64K modules.
>
>> I remember when someone described the large data center where he
>> worked as a "2 gigabyte shop". My phone has a terabyte (I don't
>> _need_ a terabyte of storage in my phone, but it cracks me up every
>> time I think about it).
>
>That 360/67 had two 2314 subsystems. Call it 400MB.
>
>>>> There's a device sitting on my desk the size of my thumb with a gigabyte
>>>> in it.
>
>The one in my pocket holds 16GB; newer ones hold much more.
>
>I remember in my first job when we expanded our machine from 16K to 32K.
>We wondered what we were going to do with all that space...

Who was it that said "the data to be stored will expand to fill the
storage available"?
>
>Is it time to start the Four Yorkshiremen skit yet?

Re: Open source x86 emulator anywhere?

<jao2hoFnf22U5@mid.individual.net>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=4986&group=alt.folklore.computers#4986

  copy link   Newsgroups: alt.folklore.computers
Path: i2pn2.org!i2pn.org!aioe.org!news.mixmin.net!news2.arglkargh.de!news.karotte.org!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: news0009@eager.cx (Bob Eager)
Newsgroups: alt.folklore.computers
Subject: Re: Open source x86 emulator anywhere?
Date: 1 Apr 2022 10:30:16 GMT
Lines: 20
Message-ID: <jao2hoFnf22U5@mid.individual.net>
References: <t1aq7n$ju0$1@dont-email.me> <87mthj0w6y.fsf@usenet.ankman.de>
<t1nhv2$3eo$1@dont-email.me> <t1rsns$b5v$1@news.misty.com>
<t1t6fv$8fu$1@dont-email.me> <t1uvq3$4el$1@news.misty.com>
<t22fpc$fuc$1@dont-email.me>
<83728405.670371921.156833.peter_flass-yahoo.com@news.eternal-september.org>
<072c4hhv8l8rqc9u20kdqrhhob00835gsa@4ax.com>
<2or1K.271097$z688.112479@fx35.iad>
<8f3d4ht7eu54krs8jun8n4qujqsbu3os8o@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: individual.net XkwStChw++8++Hv1pNlrkAr6prfEnuP/g0WdW878yM1eCpjXW5
Cancel-Lock: sha1:z7pdDQytNxK1Kccxy3GQ7eTSBAQ=
User-Agent: Pan/0.145 (Duplicitous mercenary valetism; d7e168a
git.gnome.org/pan2)
 by: Bob Eager - Fri, 1 Apr 2022 10:30 UTC

On Fri, 01 Apr 2022 01:30:42 -0400, J. Clarke wrote:

> Who was it that said "the data to be stored will expand to fill the
> storage available"?

Whoever it was, it was just a corollary of Cyril Northcote Parkinson's
"Parkinson's Law", which was:

"work expands so as to fill the time available for its completion."

And that was in 1955.

Cyril was a nice man. I knew him, and occasionally even had dinner with
him.

--
Using UNIX since v6 (1975)...

Use the BIG mirror service in the UK:
http://www.mirrorservice.org


computers / alt.folklore.computers / Open source x86 emulator anywhere?

Pages:12
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor