> B. Technical part: > > About the greatest tehnical problem: > A solution could be to implement the new parts with subcircuits, as it > is done in SPICE. For each new part, the following would be needed: > - the symbol and the possible interactive parts of the symbol > (switches, scroll bars, buttons, maybe other stuff) > - the equivalent subcircuit of the new part; the interactive elements > could be modeled by a variable (for instance, the value of a scroll). > - the parameters of the new part. > For these to work, an intensive parametrisation is needed -- for > example, we should be able to set the value of a resistance not only to 5k > ohms, but also to A*B +C, where A,B,C are paremeters of a part / circuit. > > In this way only a minimal set of components should be implemented in > C++ code, all the others could be drawn and stored in an xml file. I guess > that would be easier to manage for everybody. The drawback of this > implementation is the increased number of elments in the circuit -- if you > see 10 elements in the circuit, actually there might be 20-30. > > For the digital part, VHDL and Verilog could be also used to implement > components, and then reuse them. > > About the implementation: the base parts are mostly done; as far as I > remember, a subcircuit stuff also exists; what needs to be implemented is > the adding / removal of the part parameters and the evaluation of > mathematic expressions. > > > On long therm, a very important thing would be to make/keep the code base > of the project maintainable.
At the dawn of time, (about 25 years ago), there was a game called Robot Odesy (which doesn't run on anything newer than Dos 2.2 on a 8088); I've tried. It was a game that is shockingly like ktechlab in that it gave you parts and a soldering iron and told you to wire up digital logic elements to give your robot the behavior it needs to solve the various problems... It was pretty much unplayable on the 486 I tried it on. But I was able to play it enough to get a real appreciation for it. As the problems became more complex, it allowed you to mint your own microchips to let you hide some of the complexity. =) You would go into the chip, wire it up as you liked, then go out again and wire it into your circuit. =P I think the intended approach is to be able to wire together pages of circuits in ktechlab in the same way using the "external connection" feature... We have to fix up a lot of other stuff first.... =\ A bunch of stuff in the Node hierarchy needs to be refactored for instance... -- Ron Paul: A man of Peace. Chemistry.com: A total rip-off. Powers are not rights. We did not invade Iraq, the government did. ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ Ktechlab-devel mailing list Ktechlab-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ktechlab-devel