home .. forth .. machineforth mail list archive ..

Re: [machineforth] SeaForth Simulator


An older version supported external memory simulation
with a model that matched the driver in ROM on node 0.
In fact three versions were done with different
simulated external memory to test the external memory
drivers in ROM on node 0.

In the current version there is no external ram driver
in ROM and one needs to load one into RAM.  Furthermore
there is no simulation of external memory although memory
is allocated for external memory in an xram array.
The original simulation ignored what happened on the
control bus on node 0.  It looked at whatever address
was present on the address bus and provided the data
from that target address in the external memory array
on the external data bus.  It looked at whatever address
was present on the adresss bus and wrote whatever was
in T to the xram array when a write to external memory
was done.

The real code had to have the correct control bus
states in between read and write commands for the code
to work on real external memory chips and this has been
tested.  But the present version of the simulator does
not have the code to simulate external memory enabled.

Your readdata command is correct assuming it is not
intended to work on any real chip that would require
control pin states. But since there is no external
memory simulated the effect would be the same as
reading from an external memory bus with no external
memory chip.

Analog data can be fed to the analog to digital
ports from files and captured from the digital to
analog ports to files as can digital data written
to and from memory.   Complete testbeds will
also provide hooks to the ports between processors
so that one can capture data there or feed data
from a file.  However that code is not present
in the current release.

> Hello all,
>
> I am working hard the last couple of monthes to make sense of
> VentureForth, and I am using the Seaforth simulator program for my
> testing.
>
> The problem I am facing with this simulator is how to use it to read
> and write to and from memory in node 0. When I fill the address ( $171
> ) or data ( $141 ) register the simulator blocks. I probably have to
> do something in the iocs ( $15D ) register first.
>
> I tried things like this:
>
> : readData ( addr -- n )
>    $141 a! ( addr ) !a \ memory
>    $171 b! @b \ data
> ;
>
> $a readData
>
> Also I would be interested to know how to test other I/O possibilities
> using the simulator.
>
> Some example code would be greatly appreciated.
>
> Kind regards,
>
> Leon Konings
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: machineforth-unsubscribe@xxxxxxxxxxxxxxxxxx
> For additional commands, e-mail: machineforth-help@xxxxxxxxxxxxxxxxxx
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: machineforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: machineforth-help@xxxxxxxxxxxxxxxxxx