-:
 128 (48K?)
    ,    ( ,   16!      )
  (   hl',   ,   ),      
      (     )
  
  
   

         
  :
1.   ( ?)
2.  
3.     
4.  ,     (     (       ),   )
5.   , ,   (  ,  ?    ,      ?) (   ?)

    (..    )     ,          256 .
    (DS n      ,   
   >=#xxfa  jp #(xx+1)00.   xxfa  ,  
 4- ,  jp  .
    jr .
jr      jp  .
djnz      Z, ..  - dec b:jp nz).
       .
      ,         (   ).
     ( zxrar)     256  ( 
   ),
       ,     
  .

   (     ):
 
   
  "   "
    
  "   " (     )

 ,  ,       -      "   -   "
     ,   ,     
   ""   "  NULL", .. 0   ,     
  ?
exd  ,   de!= hl,     
ld h,(hl)  ,  . hl!=. hl,     
ld l,(hl)  ,  . hl!=. hl,      (  ?)
ld hl,(hl) -   ,      A
    .
     push:pop,   jr,     .
   .

  (, setpage)          
(   : 1.     ( ,  );
2.   /          )

     -  4 ,   2  (),  2  ()
: push af:call [z,]...:pop af
  bc: push bc,bc:...:pop bc(),bc
  hl: push af,hl:...:pop hl(),af


   ,      IX, IY,   
      ?
:
ld (pointer1),ix
pointer1=$+2 ;H ,  
ld iy,(0)
;40t

:
ld (pointer1),ix
pointer1=$+2 ;H ,  
ld (0),iy
;40t

    (ix+...),     :(
push ix ;,     
ld de,...
add ix,de
ld (pointer1),ix
pointer1=$+2 ;H ,  
ld iy,(0)
pop ix
;94t

:
push ix ;,     
ld de,...
add ix,de
ld (pointer1),ix
pointer1=$+2 ;H ,  
ld (0),iy
pop ix
;94t

   :
ld a,ly
ld (ix+...),a
???ld (pointer1),ix ;?????????
ld (ix+(...+1)),0
pointer1=$-1-1 ;,   ( H)

  IX,IY,    LDIR   - (256  (DE),(HL)).
   -,   ,   ?
 ?        -  
-  ,      ?


        .
     .





  (  )    ,       .
   ,          .
     , ..    
   .
   , ..       (,      , ..         ).

        
  .     .
   (  )    ( ),
      .
      ,   
     .
          ,
         .
         ,
    ,    .
      :
(1 )    
(1 )   
       <.   >(<   >)
  .

       ,   
      ,      ,  
     (     )

  :
==================
   
{
,     
 ,   ,   ,     
}
   
{
,     
 , 
{
      
       (  ,  )
      
    
}
,    
 ,   ,    
}
      < .   >(< .   >)
   ,       
   
    
 

 :
1.   (     )
2.     (  - 256 ?  16?)
3.     (     ,            ,     )
4.     ( 256 )
5.   (       ,        )
6.  ? (     ,   //,  256 )
7. ? (   )
8.    (  ;             ) (  - 256     ?   16   ?)
9.     ( ?)

    (,  ...)     ,   -  .
        /      .
         !
       ,  :
   -     .
      .
     ,        .    ,       !       ,     .
         ,       .            .

   16 ,   49152/16=3072     ( . 256    ).   ?

        .
        .
       ,    ,
      (  ?).   ,         .      -  , ..    .

  ,         .


  hl' (    -   (SP),   (hl')  (IY)):
         #c000...#ffff   
  8192   
  +   

call:
exx
ld (hl),nnH
dec l
ld (hl),nnL
call z,os_growstack
dec l ;   ,     (   )
ld (hl),d?? ;pgH
dec l
ld (hl),e?? ;pgL
call z,os_growstack
dec l ;   ,     (   )
exx

ret:
jp os_ret
os_ret:
exx
inc l
call z,os_reducestack
ld e,(hl)
inc l
ld d,(hl)
call os_setpage
inc l
call z,os_reducestack
ld e,(hl)
inc l
ld d,(hl)
exd
ld a,(hl)
inc l
ld h,(hl)
ld l,a ;   jp?
exd
push de
exx
ret

  ,     !

  :
(     ,    -   )
(     ,          ,   )
 ,      (    - !)
)  .->. (   !!!), ,  ,     
!       !
1)    
2)        (  -   ( - ),      )
3)        (   !!!) -   
)   ->. (   !!!) -   
