Re: [Simh] VAX 8200/8250

2019-04-08 Thread Peter Allan
Hi Ray,

You make have made the same "minor mistake" that I just did. The VAX8200 is
on a branch called vax820, so you need to do "git checkout vax820" (on
Linux) first.

Once I did that, it built just fine.

Cheers

Peter Allan

On Sun, 7 Apr 2019 at 11:19, Matt Burke  wrote:

> On 07/04/2019 02:18, Ray Jewhurst wrote:
> > What is the simulator called in the Makefile?  I cannot seem to find
> > either a vax8200 or vax820.
> >
>
> The target is called vax820. It's defined here:
>
> https://github.com/9track/simh/blob/vax820/makefile#L2059
>
> There is also a project file included for Visual Studio. I realise now
> though that I forgot to add vax820 to the descrip.mms file for VMS.
>
> Matt
> ___
> Simh mailing list
> Simh@trailing-edge.com
> http://mailman.trailing-edge.com/mailman/listinfo/simh
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-07 Thread Matt Burke
On 07/04/2019 02:18, Ray Jewhurst wrote:
> What is the simulator called in the Makefile?  I cannot seem to find
> either a vax8200 or vax820.
>

The target is called vax820. It's defined here:

https://github.com/9track/simh/blob/vax820/makefile#L2059

There is also a project file included for Visual Studio. I realise now
though that I forgot to add vax820 to the descrip.mms file for VMS.

Matt
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Ray Jewhurst
What is the simulator called in the Makefile?  I cannot seem to find either
a vax8200 or vax820.

On Sat, Apr 6, 2019 at 1:21 PM Matt Burke  wrote:

> Here is a new simulator for the VAX 8200/8250 systems. Most of the key
> features are there including the DWBUA BI-Unibus adapter which allows
> all the existing Unibus devices to be used. The console RX50 is also
> implemented.
>
> The console processor is not simulated so it uses the same VMB trick as
> the VAX-11/7xx simulators i.e. you boot directly from a device "boot
> rq0" rather than "boot cpu".
>
> You can get the code from:
>
> https://github.com/9track/simh/tree/vax820
>
> And Windows executable from:
>
> http://www.9track.net/simh/vax820
>
> Please try it out and let me know how you get on.
>
>
> Matt
> ___
> Simh mailing list
> Simh@trailing-edge.com
> http://mailman.trailing-edge.com/mailman/listinfo/simh
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Bob Supnik
The 8200 (V11) doesn't have a console processor; the console is 
implemented in microcode (as in the F11/J11) and some macrocode (as in 
MicroVAX II). That's one of the reasons the V11's microstore was 15KW, 
plus a 1 KW patch store, and MicroVAX II's was 1.6KW, with no patch 
store. (The other drivers of V11 microword consumption were the string, 
decimal, and soft floating instructions.) V11 and MicroVAX II have 
essentially identical microwords, although the capabilities of the main 
data path differ slightly, particularly around shifting.


I did not work on the V11 microcode directly. Close to release, when it 
was clear that the patch store would be half empty, I developed a patch 
to optimize CALL/RET using techniques lifted from the 8800 (Nautilus) 
microcode; these were also included in CVAX. I don't have a listing of 
the V11 microcode.


/Bob

On 4/6/2019 6:14 PM, simh-requ...@trailing-edge.com wrote:

Message: 2
Date: Sat, 6 Apr 2019 18:20:37 +0100
From: Matt Burke
To: Simh Trailing-Edge Mailing List
Subject: [Simh] VAX 8200/8250
Message-ID:
Content-Type: text/plain; charset=utf-8

Here is a new simulator for the VAX 8200/8250 systems. Most of the key
features are there including the DWBUA BI-Unibus adapter which allows
all the existing Unibus devices to be used. The console RX50 is also
implemented.

The console processor is not simulated so it uses the same VMB trick as
the VAX-11/7xx simulators i.e. you boot directly from a device "boot
rq0" rather than "boot cpu".

You can get the code from:

https://github.com/9track/simh/tree/vax820

And Windows executable from:

http://www.9track.net/simh/vax820

Please try it out and let me know how you get on.


Matt


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Johnny Billquist

On 2019-04-07 01:14, Matt Burke wrote:

On 06/04/2019 23:50, Timothy Stark wrote:

Does simh use threads to handle MP processors?  I have other SIMH versions 
(vaxmp and turbovax) that uses threads to take advantage of CPU cores.

I looked through your 782 code and did not see any threads handle that vaxmp 
and turbovax uses.


For the VAX 8300/8350 I just run both processors in the same thread and
alternate between them on each instruction cycle. Things get a lot more
complicated when threads are involved because you have to think about
locking and synchronisation.

The VAX-11/782 is quite different as you actually run two separate
copies of the VAX-11/780 simulator and they communicate with each other
using a shared memory interconnect (simulated by shared memory on the
host operating system). One VAX-11/780 runs as the master and this is
the one that you interact with. It has access to all the I/O devices
such as disks/tapes. The other VAX-11/780 is non-interactive and can
only process workloads which are handed over from the master. This is
asymmetric multiprocessing.


Unless you also have some synchronization mechanisms in there, this 
might not actually work right, but it can take time for issues to show 
up. Some VAX instructions can be rather complex, and are guaranteed to 
be atomic to memory. I believe that holds true also on the 11/782, which 
means that instructions like the interlocked queue instructions will not 
naturally be interlocked if you just have two threads with shared memory 
for a simulation. And so, you run the risk that if both CPUs would want 
to modify the same data interlocked, the simulation will actually end up 
corrupting memory. But this is probably a rare occurrence, so chances 
are that you have gotten away with it, even if you don't do proper 
interlocking.


  Johnny

--
Johnny Billquist  || "I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip" - B. Idol
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Matt Burke
On 06/04/2019 23:50, Timothy Stark wrote:
> Does simh use threads to handle MP processors?  I have other SIMH versions 
> (vaxmp and turbovax) that uses threads to take advantage of CPU cores. 
>
> I looked through your 782 code and did not see any threads handle that vaxmp 
> and turbovax uses.
>
For the VAX 8300/8350 I just run both processors in the same thread and
alternate between them on each instruction cycle. Things get a lot more
complicated when threads are involved because you have to think about
locking and synchronisation.

The VAX-11/782 is quite different as you actually run two separate
copies of the VAX-11/780 simulator and they communicate with each other
using a shared memory interconnect (simulated by shared memory on the
host operating system). One VAX-11/780 runs as the master and this is
the one that you interact with. It has access to all the I/O devices
such as disks/tapes. The other VAX-11/780 is non-interactive and can
only process workloads which are handed over from the master. This is
asymmetric multiprocessing.

Matt
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Timothy Stark
Ok, I now got it.  Yes, you are right about too much global data in SIMH that 
is not good design for multiprocessors. 

Tim

-Original Message-
From: Simh  On Behalf Of Johnny Billquist
Sent: Saturday, April 6, 2019 6:43 PM
To: simh@trailing-edge.com
Subject: Re: [Simh] VAX 8200/8250

On 2019-04-06 22:28, Timothy Stark wrote:
> I was surprised to see that!  Very good news!!  Good job!  I will try that 
> soon.
> 
> For 8250/8350, you need two MP processors.  Does vax820 emulate two MP 
> processors like VAX-11/782?

The 8250 multiprocessor uses VAXBI for interconnection, and it's a symmetric 
multiprocessor system.
The VAX-11/782 was a very different beast with shared memory, and asymmetric 
multiprocessing.

But as far as I know, simh supports neither, as it don't really manage multiple 
processors that easily in general. Too much global data, if I remember right.

   Johnny

> 
> Tim
> 
> -Original Message-
> From: Simh  On Behalf Of Matt Burke
> Sent: Saturday, April 6, 2019 1:21 PM
> To: Simh Trailing-Edge Mailing List 
> Subject: [Simh] VAX 8200/8250
> 
> Here is a new simulator for the VAX 8200/8250 systems. Most of the key 
> features are there including the DWBUA BI-Unibus adapter which allows all the 
> existing Unibus devices to be used. The console RX50 is also implemented.
> 
> The console processor is not simulated so it uses the same VMB trick as the 
> VAX-11/7xx simulators i.e. you boot directly from a device "boot rq0" rather 
> than "boot cpu".
> 
> You can get the code from:
> 
> https://github.com/9track/simh/tree/vax820
> 
> And Windows executable from:
> 
> http://www.9track.net/simh/vax820
> 
> Please try it out and let me know how you get on.
> 
> 
> Matt
> ___
> Simh mailing list
> Simh@trailing-edge.com
> http://mailman.trailing-edge.com/mailman/listinfo/simh
> 
> ___
> Simh mailing list
> Simh@trailing-edge.com
> http://mailman.trailing-edge.com/mailman/listinfo/simh
> 


-- 
Johnny Billquist  || "I'm on a bus
   ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip" - B. Idol
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Timothy Stark
Does simh use threads to handle MP processors?  I have other SIMH versions 
(vaxmp and turbovax) that uses threads to take advantage of CPU cores. 

I looked through your 782 code and did not see any threads handle that vaxmp 
and turbovax uses.

Tim

-Original Message-
From: Simh  On Behalf Of Matt Burke
Sent: Saturday, April 6, 2019 6:18 PM
To: simh@trailing-edge.com
Subject: Re: [Simh] VAX 8200/8250

On 06/04/2019 21:28, Timothy Stark wrote:
> I was surprised to see that!  Very good news!!  Good job!  I will try that 
> soon.
>
> For 8250/8350, you need two MP processors.  Does vax820 emulate two MP 
> processors like VAX-11/782?
>
No, but I have got another branch which does. It's a fairly nasty hack just to 
test the theory. Basically the two processors are run in lock-step and it 
saves/restores the context of each CPU between instruction cycles. There's a 
lot of overhead in that so the performance is quite poor once you start the 
secondary CPU.

Bob Supnik created a simulator for the SiCortex SC1 several years ago which 
shows a better way to do multiple processors in lock-step but that would 
involve significant changes to the VAX CPU and MMU modules.

Matt
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Johnny Billquist

On 2019-04-06 22:28, Timothy Stark wrote:

I was surprised to see that!  Very good news!!  Good job!  I will try that soon.

For 8250/8350, you need two MP processors.  Does vax820 emulate two MP 
processors like VAX-11/782?


The 8250 multiprocessor uses VAXBI for interconnection, and it's a 
symmetric multiprocessor system.
The VAX-11/782 was a very different beast with shared memory, and 
asymmetric multiprocessing.


But as far as I know, simh supports neither, as it don't really manage 
multiple processors that easily in general. Too much global data, if I 
remember right.


  Johnny



Tim

-Original Message-
From: Simh  On Behalf Of Matt Burke
Sent: Saturday, April 6, 2019 1:21 PM
To: Simh Trailing-Edge Mailing List 
Subject: [Simh] VAX 8200/8250

Here is a new simulator for the VAX 8200/8250 systems. Most of the key features 
are there including the DWBUA BI-Unibus adapter which allows all the existing 
Unibus devices to be used. The console RX50 is also implemented.

The console processor is not simulated so it uses the same VMB trick as the VAX-11/7xx simulators 
i.e. you boot directly from a device "boot rq0" rather than "boot cpu".

You can get the code from:

https://github.com/9track/simh/tree/vax820

And Windows executable from:

http://www.9track.net/simh/vax820

Please try it out and let me know how you get on.


Matt
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh




--
Johnny Billquist  || "I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip" - B. Idol
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Matt Burke
On 06/04/2019 21:28, Timothy Stark wrote:
> I was surprised to see that!  Very good news!!  Good job!  I will try that 
> soon.
>
> For 8250/8350, you need two MP processors.  Does vax820 emulate two MP 
> processors like VAX-11/782?
>
No, but I have got another branch which does. It's a fairly nasty hack
just to test the theory. Basically the two processors are run in
lock-step and it saves/restores the context of each CPU between
instruction cycles. There's a lot of overhead in that so the performance
is quite poor once you start the secondary CPU.

Bob Supnik created a simulator for the SiCortex SC1 several years ago
which shows a better way to do multiple processors in lock-step but that
would involve significant changes to the VAX CPU and MMU modules.

Matt
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] VAX 8200/8250

2019-04-06 Thread Timothy Stark
I was surprised to see that!  Very good news!!  Good job!  I will try that soon.

For 8250/8350, you need two MP processors.  Does vax820 emulate two MP 
processors like VAX-11/782?

Tim

-Original Message-
From: Simh  On Behalf Of Matt Burke
Sent: Saturday, April 6, 2019 1:21 PM
To: Simh Trailing-Edge Mailing List 
Subject: [Simh] VAX 8200/8250

Here is a new simulator for the VAX 8200/8250 systems. Most of the key features 
are there including the DWBUA BI-Unibus adapter which allows all the existing 
Unibus devices to be used. The console RX50 is also implemented.

The console processor is not simulated so it uses the same VMB trick as the 
VAX-11/7xx simulators i.e. you boot directly from a device "boot rq0" rather 
than "boot cpu".

You can get the code from:

https://github.com/9track/simh/tree/vax820

And Windows executable from:

http://www.9track.net/simh/vax820

Please try it out and let me know how you get on.


Matt
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh