  
====================
1.| MODE #APPLICATION TYPE#
2.| $APP
3.| Start:
4.| hlt
====================
 1     .   3 
	Console -  .      (Terminal) ,    
	Window  -  .       (Descktop) ,      
	Deamon  - .      (Terminal),     (Desctop) .        
    .       ,    
====================
1.| #code parameter
====================
:
	# -  ,      
	code -  .     
	parameter -     ( )
   
	include -   ,      .     ,      .       "headers" . : #include winapi.h
 ,         $APP,    ,     .     .

  !  gASM
      .    . 
=====================
1.| LabelName:
=====================
        
=====================
1.| code par1, par2, ...
=====================
:
	code -   (   )
	par1, par2, ... -    .      
	
     2  #  $.  (#) -          ,  -    .       ,       .      
=====================
1.| ...
2.| mov #myVar, $5
3.| ...
=====================
     #myVar        5.        .    :
=====================
1.| ...
2.| db a1,0,0
3.| db a2,0,2
4.| db a3,0,15
5.| mov #r0, @a1 ;   a1   
6.| add $r0, 5 ; add #a1, 5
7.| inc #r0
8.| add $r0, @a2 ; add #a2, @a2
9.| ...
=====================
  ,   ,       ,   
   .    ,    -  ( ).     15 .        rN,  N -   ,      [0,14]
  gAsm  .     ;      . 
=====================
1.| ...
2.| ;This is comment
3.| mov #r0, $1 ;This is comment too
4.| mov #r1, "my ;This is comment too string"
5.|
=====================
    ,  ;   .   1     : my, ..    

	! 
   
	mov a1, a2 		-      a1,    a2   a2,    .        ,  @varName. !!!:       
	db a1, a2, a3 	-         a1,  a2 {0 - integer; 1 - real; 2 - string}     a3 ( ,    )
	uns a1			-       a1
	call			-     (   )
	jmp a1			-      -  \.          ^LabelName.    N     ,  N     . !!!:  a1   ,    .
							:
							=====================
							1.| jmp ^Start	;   
							2.| jmp 5		;  5  
							3.| jmp -3		;  3  
							=====================
	cmp a1, a2		-  2      a1  a2.       a1 a2.     0,     jnz.      jz. ( )
	jz a1			-  jmp,      ,  cmp  0
	jnz a1 			-  jmp,      ,  cmp     0
	ret 			-     .       .
							:
							=====================
							1.| MyFunction:
							2.| mov #r0, #r1 ;  
							3.| call debug
							4.| ret ;   
							5.| Start:
							6.| mov #r1, "Hello"
							7.| jmp ^MyFunction
							=====================
	hlt				-   
	{          a1.       string}
	sub a1, a2		- a1 - a2
	add a1, a2		- a1 + a2
	div a1, a2		- a1 / a2 !!!:    a1    real
	idiv a1, a2		- a1 div a2 !!!:    a1  a2    integer
	mul a1, a2		- a1 * a2
	dec a1			- a1 - 1 !!!:    a1    integer
	inc a1			- a1 + 1 !!!:    a1    integer
	and a1, a2		- a1 and a2 !!!:    a1  a2    integer
	or a1, a2		- a1 or a2 !!!:    a1  a2    integer
	shl a1, a2		- a1 shl a2 (  )  !!!:    a1  a2    integer
	shr a1, a2		- a1 shr a2 (  ) !!!:    a1  a2    integer
	not a1			- not a1 !!!:    a1    integer
	neg a1			-       a1
	
	! 
     call.          .      
	      :
		write 			-   (r0)       
		writeln			-   (r0)       
		read			-   (r1)     (r0)     
		readln			-   (r1)     (r0)     
		clrscr			-   
	   (    ):
		fileexists		-      (r0).  (r1) 1 - ; 0 - 
		getdirlist		-  (r1)     (r0),   |
		getfilelist 	-  getdirlist,   
		getdisklist 	-  (r0)  ,   |
		sleep			-  (r0) 
		strpos			-  (r2)   (r1)   (r0).  Pos  MP
		strcop			-     r1  r2   r0     r3.  Copy  MP
		strdel			-  strcop,       
		strcmp			-  2  r0  r1,  (r2) 1 -    0 -  
		concat			-  2  r0  r1    r2
		cos				-  r0     r1
		sin				-  r0     r1
	{   0.2}
		FileOpen		-     r0   (r1) ID    -1   
		FileClose		-    ID   r0
		FileSeek		-      r1    ID   r0
		FileReset		-     0     ID r0
		FileFlush		-        ID r0
		FileWriteByte	-     c ID r0  r1
		FileWrite		-      ID r0 ,   r1
		FileRead		-   r2 r1 -     ID r0
		FileReadByte	-   r1      ID r0
		FileReadString	-     0A  r1    ID r0
		FileEOF			-   r1     ID r0 1 -
		
		
		
	
	
	


