
DexOS 0.05 SYSTEM CALLS FOR APPLICATIONS

ebx      = function number
int 0x40 = sys call
;=======================================================  
;  01 = GET MENU BACKGROUND BUFFER ADDRESS            
;=======================================================  
 Output: 
       ESI = Address of menu background buffer
 Note: 
       Read only, Do not write to this buffer.

;=======================================================  
;  02 = JPEG DECODER                                         
;=======================================================  
 Input:
       esi = Compressed Image Buffer (Source buffer)
       edi = Uncompressed Image Buffer (Dest buffer)
       ecx = Size of file (Compressed)

 Output: 
       ReSized Image Buffer + 0 = X
       ReSized Image Buffer + 4 = Y
       ReSized Image Buffer + 8 = Uncompressed image (32bpp format)

 error:    
       Sets CF to 1
 Note: 
       Jpeg image size must be multply of 16

;=======================================================  
;  03 = DIF decoder                                        
;=======================================================  
 input:
       esi = DIF file (Source buffer)
       edi = DIF file uncompressed (Dest buffer)
       ecx = Temp buffer, the same size as the (Dest buffer)

 output:
       dest buffer + 0 = X
       dest buffer + 4 = Y
       dest buffer + 8 = Uncompressed image (32bpp format 0xAARRGGBB)

 error:    
       sets CF to 1   (ax = error code, 0 = OK, 1 = not a dif file, 2 = jpeg error)
 regs:
       all regs saved (unless error, then ax = error code)

;=======================================================  
;  04 = DIF decoder                                        
;======================================================= 
 input:
       esi = DFF file (Source buffer)
       edi = DFF file uncompressed (Dest buffer)
       ecx = Temp buffer, the same size as the (Dest buffer)

 output:
       dest buffer + 0 = X
       dest buffer + 4 = Y
       dest buffer + 8 = Uncompressed image (32bpp format 0xAARRGGBB)

 error:    
       sets CF to 1   (ax = error code, 0 = OK, 1 = not a dff file, 2 = jpeg error)
 regs:
       all regs saved (unless error, then ax = error code) 
 
;=======================================================  
;  05 = PUT IMAGE TO Y X                                        
;=======================================================  
 Input:                                           
       edi = Dest buffer                            
       esi = Source buffer                          
       eax = Start X                                
       ecx = Start Y

 Source buffer:                                     
       Buffer     = X of image size   (1 dword)     
       Buffer + 4 = Y of image size   (1 dword)     
       Buffer + 8 = image start (32bpp)
             
 Output:                                            
       image.                                       

;=======================================================  
;  06 = PUT IMAGE TO Y X WITH ALPHA BLENDING                                       
;=======================================================  
 Input:                                            
       edi = Dest buffer                           
       esi = Source buffer                         
       eax = Start X                                
       ecx = Start Y   
                             
 Source buffer:                                     
       Buffer     = X of image size   (1 dword)     
       Buffer + 4 = Y of image size   (1 dword)     
       Buffer + 8 = image start (32bpp) 
            
 Output:                                            
       image.                                       
 Notes:
       Same as above function, but supports         
       images with Alpha channal.                  

;=======================================================  
;  07 =                                      
;=======================================================  








