Re: [Simh] IS there a BASIC available for DG Nova ?

2019-06-27 Thread Peter Onion
On Thu, 2019-06-27 at 00:40 -0600, Bruce Ray wrote:
> Note that an on-line Nova emulator is available at:
> 
> http://www.novasareforever.org/novajs/index.php
> 

Thanks Bruce,

I'll pass that on :-)

PeterO






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

[Simh] IS there a BASIC available for DG Nova ?

2019-06-26 Thread Peter Onion
(Long time lurker here !)

A friend of mine has just building a paper tape reader to read some only tapes 
has has
from his college days in the 1980s.

He says "The machine at college was a Data General Nova and we only had access 
to BASIC!"
so I thought I would ask here if there is anything that might be able to run 
his old
programs again.

Once he's read a tape I'll post a sample here.

PeterO


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

Re: [Simh] Sounds

2017-02-20 Thread Peter Onion
On Mon, 2017-02-20 at 23:54 +0100, Lars Brinkhoff wrote:
> Peter Onion wrote:
> > For some machine emulations the production of correct sound is an
> > integral part of the user experience !
> >
> > https://www.youtube.com/watch?v=WLEFUA11hgs
> > https://www.youtube.com/watch?v=AIxZ1i8pvZI
> > https://www.youtube.com/watch?v=3zezUiJ8NI8
> 
> Yes!  Yes!
> 
> I implore everyone to watch these videos.  The last one is great!

Now that I have retired I hope to find some time to continue working on
that 3D OpenGLES code :-)  It's not been touched for too long !

PeterO



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

Re: [Simh] Sounds

2017-02-20 Thread Peter Onion
On Mon, 2017-02-20 at 21:34 +0100, Johnny Billquist wrote:
> Hi.
> 
> On 2017-02-20 21:12, Lars Brinkhoff wrote:
> > Johnny Billquist wrote:
> >> Not sure how meaningful sound is. In general, I would not be able to
> >> tell one computer from another.
> >
> > We may not miss those sounds now, but I figure it could be a bit like
> > other historical items.  Things were considered unimportant and thrown
> > away, but now we miss some of those dearly.
> 
> Maybe I'm "spoiled" by the fact that I've spent literally years in 
> computer halls...

For some machine emulations the production of correct sound is an
integral part of the user experience !

https://www.youtube.com/watch?v=WLEFUA11hgs
https://www.youtube.com/watch?v=AIxZ1i8pvZI
https://www.youtube.com/watch?v=3zezUiJ8NI8


PeterO


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

Re: [Simh] Custom PC formatting

2013-10-06 Thread Peter Onion
On Sun, 2013-10-06 at 11:48 -0700, Mark Pizzolato - Info Comm wrote:
> On Sunday, October 06, 2013 at 10:39 AM, Peter Onion wrote:
> > > No problem, we are now narrowing in on the right question.
> > >
> > > To address this issue, your simulator should provide a
> > "sim_vm_fprint_addr" routine.  This routine has a signature of:
> > >
> > > void sim_vm_fprint_addr (FILE *st, DEVICE *dptr, t_addr addr);
> > >
> > > The LGP simulator uses this interface.  Look there for details.
> > >
> > > - Mark
> > >
> > 
> > I'll give it a try, but I fear that is not going to be the right answer
> > because normal addresses (as in the address field in instructions) are
> > only 13 bits and don't have the "half bit" at the least significant end.
> > It is only the SCR that has the extra bit.
> > 
> > The machine has 8K words, but 16K instructions !
> 
> If that does not work for reasons you've just described, then there are
> still a couple more approaches:  One alternative might be to leverage
> the SIM_SW_STOP flag switches which your fprint_sym routine will be
> invoked with when the simulator stops execution.
> 
> The last alternative would be for your sim_instr routine can handle
> any/all message generation prior to returning to the scp framework and
> set the SCPE_NOMESSAGE bit in the return status.  This will suppress
> scp's message generation for any command which invokes run_cmd (i.e.
> START, RUN, GO, STEP, etc.).  
> 
> This may be messier depending on the set of conditions you exit
> sim_instr with.  You may want to copy  parts of run_cmd_message and
> fprintf_stopped_gen from scp.c to implement your message generation.
> 
> - Mark
> 

Ok, thinks for those ideas Mark.   

Currently I'm having to wrestle with the non-standard integer types that
are defined in sim_defs.h   All my code uses the types defined
in /usr/include/stdint.h   which is consistent with it's naming upto 64
bits, where as the defines in sim_defs.h are not consistent (uint32 but
t_uint64).  And /usr/include/stdbool.h is the way to go for booleans !

Peter Onion
Elliott 803 Team leader 
The National Museum of Computing


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


Re: [Simh] Custom PC formatting

2013-10-06 Thread Peter Onion

> No problem, we are now narrowing in on the right question.
> 
> To address this issue, your simulator should provide a "sim_vm_fprint_addr" 
> routine.  This routine has a signature of:
> 
> void sim_vm_fprint_addr (FILE *st, DEVICE *dptr, t_addr addr);
> 
> The LGP simulator uses this interface.  Look there for details.
> 
> - Mark
> 

I'll give it a try, but I fear that is not going to be the right answer
because normal addresses (as in the address field in instructions) are
only 13 bits and don't have the "half bit" at the least significant end.
It is only the SCR that has the extra bit.

The machine has 8K words, but 16K instructions !

Peter Onion
Elliott 803 Team leader 
The National Museum of Computing


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


Re: [Simh] Custom PC formatting

2013-10-06 Thread Peter Onion
On Sun, 2013-10-06 at 09:37 -0700, Mark Pizzolato - Info Comm wrote:
>  >
> > 
> > I'll reply to the list this time !
> > 
> > Ok, so I guess this is done via HRDATADF and the psl_bits
definition ?
> > 
> > HRDATADF is not mentioned in the docs and from that one example it
is
> > rather hard to see how to use it to do what I need.
> 
> I believe that these are mentioned in the doc files in the doc
directory at github.com/simh/simh.

I've looked, but I can't find any reference to them. 

> > I have a 14 bit SCR register and I want to print ((SCR >> 1) & 8191)
and a
> > decimal, and add a "+" on the end if ((SCR & 1) == 1).
> > 
> > I've tried to define my PC using HRDATADF, and it picks up the name
string
> > OK but it isn't doing anything with the bit/field definitions as far
as I can tell,
> > it's still just printing it out a decimal.
> 
> Please provide your code.
> 
> I'll take a shot, not knowing precisely what you really want to see:
> 
> It seems like this register has two fields.  Lets say it is a 16 bit

14 bits actually...

> register with the high 15 bits the PCValue and the Low Bit this extra
> flag bit you want to see as a "+" when it is set.  And you'd like to
> see the high 15 bits displayed in octal.

Decimal actually...

> I'd define the low bit as a selector on two strings:
> 
> uint16 scr;
> 
> char *lowbit_values[] = {"", "+"};
> 
> BITFIELD SCR_bits {
> BITFNAM(LOW,1, lowbit_values),
> BITFFMT(PCV,15,"%o") ,
> ENDBITS
> };
> 
> REG cpu_reg[] = {
>
> { HRDATADF(SCR,scr, 16, "sequence control register",
SCR_bits) },
>
>NULL
> };
> 

That's close to the code I had already, but it doesn't affect the way
that the SCR is printed out after the "stop message" when sim_instr
returns.  When it reaches a dynamic stop in the second instruction in
location 4 it prints

"Dynamic Stop, SCR: 0009"
when it should print 
"Dynamic Stop, SCR: 0004+"


Thanks for trying to help :-)

Peter Onion
Elliott 803 Team leader 
The National Museum of Computing



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


Re: [Simh] Custom PC formatting

2013-10-06 Thread Peter Onion
On Sun, 2013-10-06 at 08:46 -0700, Mark Pizzolato - Info Comm wrote:
> On Sunday, October 06, 2013 at 7:54 AM, Peter Onion wrote:
> > I'm just having a look at porting an existing emulation into the simh
> > framework.
> > 
> > My first problem is that there seems to be no way to provide a custom
> > "print" routine for the value of the PC.
> > 
> > Why do I need one ?
> > 
> > Because the least significant bit of the Sequence Control Register in my
> > machine has the value "half" as there are 2 instructions in each word.
> > 
> > I'm sure I'll have lots more questions soon !
> 
> Hi Peter,
> 
> Actually there is a custom way to display the contents of any simh device 
> register.
> 
> This is available on the most recent simh codebase on github:  
> https://github.com/simh/simh
> 
> In the latest code, registers can have an optional bit field description for 
> the register.  The bitfields can be formatted in a variety of flexible ways.
> 
> An example of a register which uses a custom formatting paradigm is the PSL 
> register definition in the VAX CPU module at 
> https://github.com/simh/simh/blob/master/VAX/vax_cpu.c
> 
> FYI a zip of the current code base is available at: 
> https://github.com/simh/simh/archive/master.zip
> 
> Please come back with more questions as you encounter them.
> 

I'll reply to the list this time !

Ok, so I guess this is done via HRDATADF and the psl_bits definition ?

HRDATADF is not mentioned in the docs and from that one example it is
rather hard to see how to use it to do what I need.

I have a 14 bit SCR register and I want to print ((SCR >> 1) & 8191) and
a decimal, and add a "+" on the end if ((SCR & 1) == 1).

I've tried to define my PC using HRDATADF, and it picks up the name
string OK but it isn't doing anything with the bit/field definitions as
far as I can tell, it's still just printing it out a decimal.


Peter Onion
Elliott 803 Team leader 
The National Museum of Computing


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


[Simh] Custom PC formatting

2013-10-06 Thread Peter Onion
I'm just having a look at porting an existing emulation into the simh
framework.

My first problem is that there seems to be no way to provide a custom
"print" routine for the value of the PC.  

Why do I need one ?

Because the least significant bit of the Sequence Control Register in my
machine has the value "half" as there are 2 instructions in each word.

I'm sure I'll have lots more questions soon !

Peter Onion
Elliott 803 Team leader 
The National Museum of Computing



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