Page 1 of 1

A Few more Sugggestions...

Posted: Sat Mar 06, 2010 12:38 am
by jac
Hi,

Firstly may I compliment you on an awesome piece of software.
It is an amazing learning/teaching tool.

I would like to suggest the following:

Primitive Gate (e.g. AND Gate) I/O orientation as per the splitter widget. I know you can do this
by using a circuit block, but it is cumbersome.

Standard icons for primitive gates.

Ability to modify colors of icons (color property).

Text block for comments in circuit.

Drop-down (expand/contract) type structure for left hand side Project items (less clutter).

The ability to read/write RAM to disk (Disk I/O block).

Keyboard interface block. (I've built a Hex keyboard and it's quite a mission) .

A primitive pixel block for display purposes (say 128X80 pixels).
The 8-Segment LED is quite limiting.

Cheers,
Jac

Re: A Few more Sugggestions...

Posted: Sat Mar 06, 2010 5:29 pm
by admin
Hi Jac,
Thank you for your suggestions.
Can you please clarify a couple things?
What do you mean by standard icons? If it is about a shape of gate then have you tried to select shaped gates in the Options dialog (in the menu click Tools/Options)?
What scenario you have in mind for RAM read/write? Do you mean sort of hard drive in addition to RAM/ROM or something else?
Thank you,
Eugene

Re: A Few more Sugggestions...

Posted: Sun Mar 07, 2010 2:28 am
by jac
Hi Eugene,

Yes it was about the shape of the gate. Thanks for pointing me in the right direction.

Regarding the RAM I/O:
Maybe you could have circuit blocks roughly as follows:
Input block
a 2-bit source pin (00 = keyboard, 01 = hard drive, and 10, 11 spare)
a 8-bit file name pin (if source is 01). The byte must be ASCII. This will allow 1 character file names (no extension)
a 8-bit (n-bit?) data pin. Data is binary.
a 1-bit flag for data available/not available.

Output block
a 8-bit file name pin. The byte must be ASCII. This will allow 1 character file names (no extension)
a 8-bit (n-bit?) data pin. Data is binary.
a 1-bit flag for ready to accept data or busy.

Files will be created to/read from the folder where the project is located.
If a file exists (on create), it will be over-written.
On error, do nothing.

Why would this be cool?
I could build a micro instruction based machine. I could create instructions in a file and read
them using a routine in ROM. I can execute these instructions using some command from the keyboard.
I can write results to disk. I can even write an assembler in say C# to generate an executable file.

I don't know if this makes sense...

Cheers,
Jacques

Re: A Few more Sugggestions...

Posted: Sun Mar 07, 2010 1:02 pm
by admin
Hi Jacques,
It is possible even right now to load ROM from file. If you double click symbol of ROM on your circuit then in the dialog there is a Load… button. Click this button and choose the file you want to load in the memory.
Eugene

Re: A Few more Sugggestions...

Posted: Sun Mar 07, 2010 10:39 pm
by jac
Hi Eugene,

Thanks for the info...

In fact I am using ROM as 3/8 and 4/16 line decoders - its quite a mission to create these from scratch.
Also my hex keyboard uses ROM for decoding keystrokes to the relative 8-segment LED pin inputs.
I've created the code in file and loaded the ROM(s) where required.

With the I/O blocks I mentioned; I guess I'm just looking for the creative options that these
would provide.

Cheers,
Jacques