
*******************************************************************************
***********+----------------------------------------+**************************
***********|                                        |!*************************
***********|             K o l i b r i O S   |!*************************
***********|                                        |!*************************
***********+---+-------------+----------------------+!*************************
************!!!|             |                      |!*************************
***************|   3   | 29  2008  |!*************************
***************|             |                      |!*************************
***************+-------------+----------------------+!*************************
****************!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*************************
*******************************************************************************



   ,    Kolibri.



===============================================================================
  
===============================================================================

 Some info about KolibriOS

 MeView  Nable

 Table -    

   

      .   

  

   



===============================================================================
 Some info about KolibriOS

 Albom, albom85@yandex.ru
===============================================================================

 1)KolibriOS (KOS) is an alternative MenuetOS-based operating system. It runs
on IA-32 processors (IA - Intel architecture).
 2)It is an open source project (GPL).
 3)The system has a built-in Graphical User Interface (GUI) similar to
Windows.
 4)The kernel, drivers, libraries and most of programs are written in
assembler.
 5)You can use FASM under KOS. Under other platforms besides assembler (FASM,
NASM, MASM, TASM, ...) you can use high-level language compilers (GCC, MSVC,
FreePascal, MBasic, Menuet Pascal Compiler, Sphinx C--, ...).
 6)Some programs are already ported to KOS. There are some games (Doom and
Quake), assembler FASM, DOS-emulator DOSbox and ScummVM emulator.
 7)KOS has own programs such as:
 -file managers (KFAR, KFM, LC, SysXTree, Eolite)
 -simple shells (SHELL, CMD)
 -text editor (tinypad)
 -painting tools (animage, paint)
 -calculator (calc)
 -screenshot maker (screenshot)
 -WAV and MP3 player (AC97SND)
 -development tools (BOARD, H2D2B, KEYASCII, SCANCODE, cObj)
 -FORTH (meforth)
 -archivers and packers (kpack, KERPACK, MHC, MtApPack)
 -simple antivirus program (AV)
 -ICQ client (ki)
 -simple HTML viewer (HTMLv)
 -ZX Spectrum emulator (e80)
 -many network applications (AIRC, FTPS, DNSR, JMAIL, HTTPC, HTTPS, MP3S,
POPC, PPP, SMTPS, TELNET, TERMINAL, ...)
 -utilites to view BMP, GIF, JPEG, PNG, ICO, CUR (MV, @RCHER, GIFVIEW,
JPEGVIEW, imgview)
 -a lot of simple games (tetris, mine, pong, arcanii, xonix, socoban, piton,
mblocks, 15, checkers, click, fara, pipes, lines, kox, kosilka, donkey, ...)
 -demos (aclock, eyes, fire, life2, plasma, tinyfrac, tube, ...)
 -3D demos (3DCUBE2, CUBETEXT, CROWNSCR, FLATWAV, VIEW3DS, ...)
 8)Some programs are still required. For example developers need a C compiler
such as port of GCC, a Pascal compiler such as Free Pascal, a BASIC
interpreter. And of course users need some utilites. 
 9)Possible using of KolibriOS: in schools and universities for learning
computers and assembler... 
 10)It is possible to run KOS programs under Windows using KOS-emulator
(KlbrInWin, meosemul, meosdebug).



===============================================================================
 MeView  Nable

 Nable
===============================================================================

 ,    ,   ,    (   ,
  )      , 
        ,   
   .
     MeView (    
 BMP) ,  JpegView      ,  
 ,    (@rcher, Bmp Viewer  MenuetOS,
GifView,  ..)     .  , 
  MeView.
             ,
   ,        
(      ,       
    ).  ,    
,   GIF  Willow (Willow -  ).  
 'gif_lite.inc'   MV     ,   
    ,       
 .
  ,       GIF (
,    ,    'gif_lite.inc'  Willow),
    BMP 32bpp   4-  ('interlaced')
 GIF (   ,   ,  
,    ,   ).   
 JPEG (JFIF),   ,     
   (       
).      PCX 8  24bpp, 
 PCX      ,   , 
        
 PCX.       .
      .  BMP, PCX
 GIF   ICO  CUR, TGA,   , 
     (SCR, S  $C).  
 ,   ,   ,   
 ,   .    
,     ,    
 .  ,  ,  , 
KPack',     , .. .
  MeView   .    
    , PgUp  PgDn    
100    ,    Home    .
 MeView      -, .. 
  ,       .
         
.         .
 ,    ,  MeView -  ,  
       
.
           
     .



===============================================================================
 Table -    

 barsuk
===============================================================================

  : C (, C++  ).
  : MS Visual C++ 6.0.


 :

 - ,      ;
 -    ;
 -   ;
 -  .


 :

  Table 1.0    :
 -    CSV (comma-separated values);
 -   (    
    );
 -   graph (    );
 - ;
 -   (    
 ).


 :

           
 ,   MSExcel  OpenOffice Calc.
     .
 -      Enter;
 -,         
  ,  ;
 -       , 
CTRL-F.


  :

  ,     ,   ,  
  "=".        
 .


 1. 

   - double.   1.0 (  ,  
0.0),  - 0.0.      ( 1e-6). 
    -  (    
       ).


 2.

 2.1.: +, -, *, /, ^ (), % (  ),  + 
-.
 2.2. ( - ): =, !=, # ( " ",  
 ), <, <=, >, >=.
 2.3.:   !.    
( "")   ( "").
 , ,  .


 3.

 3.1.. pi()    . eps() 
  .
 3.2.. ceil, floor  round (  2.5 3).
 3.3.. and, or, xor ().
 3.4.. sin, cos, tg, ctg, arcsin, arccos.
 3.5.  . exp, log. 
  pow(x,y) = x^y. 
  sqrt(x) = x^0.5.
 3.6.. isnull(_)  1.0,   , 
0.0,     .     , , 
, 1.0.
  Table      ,   
   , : B5, AA17.     
   $ (       ).
 3.7.. sum, min, max, avg.    .
 3.8. . if(, __, __).
  .    0.0,  __, 
 __.
  case(, _, 1, 2, ..., N,
1, 2, ..., _N [, __]). 
    1..N  ,    
 .  - __ (
,    ,   ,   ).
 3.9.. rand(_) -      0
 _.      .


 4.

     ,  0,  
    ..,      
       
.
 ,  ,   (!).


   :

 =A1*sin(B5)
 =1
 =sin(pi()) +    exp(1)
 =ceil($AA$34)
 =if(A4>A5,A4,A5)
 =max(A4,A5,A6,A7)
 =if(isnull(B5),0,B5)
 =if(or(isnull(D9),isnull(D2)),0,D9*D2)
 =case(B4,4,1,2,3,4,B5,B6,B7,B8,-1)



===============================================================================
   

 Albom, albom85@yandex.ru
===============================================================================

 ,    ,    CMD  KolibriOS 
.      .    
?

  :
 1)   - ;  - gcc (MinGW).
 2)      UNIX.
 3)   console.obj.
 4)    .
 5)    .

  5        - .

      (0.4):
 1)     .
 2)      (  
con_gets).
 3)  5 (   )  .
 4)19 : about, alias, cd, date, echo, exit, free, help, kill, ls,
mkdir, more, ps, pwd, reboot, rm, rmdir, touch, ver.
 5) ,    alias ( 256 ), 
, ,   .
 6)   (    
 .shell,     #SHS,     #, 
   ).
 7)  more    
    (     
,     ,     
).

      :
 1)   ,     int argc 
char* argv[].     (about, alias, cd, date, ...) 
  .
 2)    Tab.
 3)  .

          
 console.obj:
 1)  .
 2) /   .
 3)       .
 4)   .
 5)   (, 8x16   ,  1020 -
;    9x18,    ?).

      :
 1)     clear  top.
 2)       exit.

          ,
 . , ,     .



===============================================================================
      .   .

 barsuk
===============================================================================

 :    -  IPC-.

     @clip (),   cliptest   
 test2 ( ).

 1.  @clip   

  @clip   ,    (  ), 
  IPC-.    16 (MAX_FORMAT) 
   ,   16,7  (MAX_SIZE)    
(  ).
 Id   -   0  65534 ( 65535 ).
        @clip.
 ,  ,  :

 [ Cmd: word | Format: word | Reserved: Dword | Data: ...]

  Cmd -  ,
 Format - id  ,
 Reserved -   ( ),
  Data - ,     .


    :

 1. Set Size.       .  
        IPC-
(      ).
  Data: 1 Dword,     .
  : 12 .

 2. Set.  .       
.
  Data: ,   .
  : 8 + ( ) .

 3. Get Size.   ,      id
.       IPC-  4
,     .     , 
   0.
  : 8 .

  4. Get.       id .   
   IPC-      . 
   ,    .
  : 8 .

  5. Delete.     id .   id 
= 0xFFFF,    .
  : 8 .

   - @clip.asm.   
 ;define DEBUG TRUE 
   ,       , 
  -    .

 DEFAULT_SIZE -   IPC-
 MAX_SIZE -   
 MAX_FORMAT -   ,     
 (  , .   ).
 DELAY -     , *1/100 .
 ATTEMPT -        
. 
 2. clip.inc -         @clip

       .

   - cliptest.asm (   )  test2.asm.

   clip.inc     (,
,   ):

 DEFAULT_MASK = 7  ;  (.  40)    
                   ; . ,    
                   ;IPC- (    01000000b)
                   ;  
 SEND_DELAY = 10   ;     
                   ;
 RECV_DELAY = 100  ;     (   
                   ;  ,  );
                   ; -    (   5)
 ATTEMPT = 5       ;   , 
                   ; 

   clip.inc   :

 clipboard_init() -   @clip.    
 (,       ),  1 
  .
  1    0   (  ).

 clipboard_write(esi      CLIP_BUFFER (. ), ax
() - id ) -     . 
   1  2.  1    0   (
 :        ..).

 clipboard_read(esi      CLIP_BUFFER (. ), ax
() - id ) -     .   3 
4.   eax 1  , -1     -
(     )  0   .  edx ( eax=1
 -1)      .

 .     IPC     
 ,     @clip , ..
    :     
          
.

    (  clipboard_init)  
  :

 _ipc_send (esi    , edx -  ) -
 IPC- .    60/2  ,  _ipc_send
  (, ATTEMPTS)   ,   
 ( 2)   ( 3),    SEND_DELAY/100 .
  1  , 0  .

 _ipc_recv(esi      CLIP_BUFFER (. ), edx -
    ) -      
RECV_DELAY/100 .      esi. 
  1  , 0  .

       :
CLIP_BUFFER
(+0)	.size	dd	?	;     
				;   (N)
				;     ,  
				;    ,
				;     
				; (.  test2)

(+4)	.sys1	dd	?	; \      clip.inc
				;  -      
(+8)	.sys2	dd	?       ; /   

(+12)	.data	db	N dup(?);   

     !



===============================================================================
  
===============================================================================

 http://kolibrios.org/ -   KolibriOS. 
 http://board.kolibrios.org/ -   KolibriOS. 
 http://www.wasm.ru/ - ,  .
 http://flatassembler.net/ -   FASM.
 http://www.c--sphinx.narod.ru/ -   C--.



===============================================================================
   

 Albom, albom85@yandex.ru
===============================================================================

         .   
     ,    
,     . ,  , .
,       - .    :

 1)     .
 2)  - 3-6    txt.
 3)   PNG.  -  320  320.

 !
