[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linrad] RE: Architecture of Linrad

Hi Leif,

>Everything that exists is published. I think porting to Windows
>or anywhere else should be pretty straightforward because Linrad
>uses very few system calls.
yes, true, but maybe if one has a firm grasp of how the control flow of 
the program is
structured, some functions (user interface comes to mind) could be moved 
to a separate
thread. This would require not a simple recompilation under Windows,  
but some
rearranging of the logic of the program.

>Basically Linrad needs a function setpixel(x,y,colour) to write the
>specified pixel on screen and another call xy_write(x,y,char) to write
>a character on the screen. 
Those functions do exist under Windows, but maybe here also a splitting 
of the screen in
more than one window could be useful, e.g. keep the menus in a separate 
window, the waterfall
in another, and so on. This breakdown of the user interface needs too a 
complete understanding
of the structure of the program.

>>I browsed briefly the source code,
>>but the comments are almost non existant.
>I think this is a little unfair. There is a text block for each 
>processing block describing what the block is intended to do.
>There are no comments at the level of individual instructions,
>I do not think it would be cost efficient. Far more work for me
>writing them than work they would save to others.
I should have used a different wording, sorry... what I meant is 
precisely what you
mentioned, i.e. comments at the instructions level, which could be of 
help in better
understanding how the program works.

>"such document" is a bit unspecific. I am not a programmer and
>I do not know what the word "architecture" stands for in this
Architecture is just a fancy word to indicate the program structure, 
what is the flow of
control of the program, what the dependencies are, etc. etc.  In other 
words, all what
is needed for a person who didn't write the code to understand what it 
does and,
more important, how it does it.

Thanks for your answer Leif. I will study the source code to see if I am 
able to understand
from it what mentioned in the previous paragraph.

73  Alberto  I2PHD