Bienvenido a mi rincon MSX ! ¡
Welcome to my MSX corner !
   

API Symbos SDK

STANDARD (symbos.h)
CODEBASE
GET_DATA_AREA_ADDR()
GET_TRANSFER_AREA_ADDR()
GET_TIMER_0()
GET_TIMER_1()
GET_TIMER_2()
GET_TIMER_3()
GET_APPLICATION_BANK()
GET_APPLICATION_ID()
GET_MAIN_PROC_ID()
symbos_app.startAddr
symbos_app.processID
symbos_app.msgBuffer

DESKTOP (symbos_desktop.h)
unsigned char Window_Open (unsigned char bank, SYMBOS_WINDOW *win);
void Window_Close (unsigned char winID);
void Window_Redraw (unsigned char winID, unsigned char content, unsigned char firstControl);
void Window_Redraw_Menu (unsigned char winID);
void Window_Redraw_Toolbar (unsigned char winID, unsigned char content, unsigned char firstControl);
void Window_Redraw_Title (unsigned char winID);
void Window_Redraw_Statusbar (unsigned char winID);
char Clipboard_Put (unsigned char bank, unsigned char *addr, unsigned int len, unsigned char type);
unsigned char Desktop_GetScreenMode (void);
void Desktop_SetScreenMode (unsigned char mode);
unsigned short Desktop_GetColor (unsigned char ix);
void Desktop_SetColor (unsigned char ix, unsigned short value);
char Desktop_Stop (unsigned int winID);
void Desktop_Continue (void);


SYSTEM (symbos_system.h)
MESSAGEBOX(string)
Sys_FileDialog_MakePath(p,fn,ext);
unsigned char Sys_Program_Run (unsigned char bank, char *path, unsigned char showError, SYS_PROGRAM_INFO *pInfo);
void Sys_Program_End (unsigned char aID);
void Sys_RunDialog (void);
void Sys_ControlPanel (unsigned char subMod);
void Sys_TaskManager (void);
unsigned char Sys_MessageBox (unsigned char bank, MESSAGE_BOX *mb, unsigned char mode);
char Sys_FileDialog (unsigned char bank, char *path, unsigned char filter);
void Sys_GetComputerType (unsigned char *computerType);

DEVICE (symbos_device.h)
unsigned char Device_KeyPut (unsigned char asciiCode);
unsigned int Device_KeyStatus (unsigned char scanCode);
unsigned char Device_KeyTest (unsigned char scanCode);
unsigned char Device_MouseKeyStatus (void);
unsigned long Device_MousePosition (void);
void Device_TimeSetEx (TIME *t);
void Device_TimeSet (unsigned char second, unsigned char minute, unsigned char hour, unsigned char day, unsigned char month, unsigned int year, unsigned char timeZone);
void Device_TimeGet (TIME *t);

FILE (symbos_file.h)
int File_New (unsigned char bank, char *path, char attrib);
int File_Open (unsigned char bank, char *path);
int File_Close (int handle);
unsigned int File_Read (int handle, unsigned char bank, unsigned char *buffer, unsigned int bytes);
unsigned int File_Write (int handle, unsigned char bank, unsigned char *buffer, unsigned int bytes);
unsigned long File_Seek (int handle, unsigned long pos, unsigned char ref);
int File_GetLine (int handle, unsigned char bank, char *buffer);
unsigned long File_Size (int handle);

KERNEL (symbos_kernel.h)
void Multitasking_SoftInterrupt (void) ;
unsigned short Message_Sleep_And_Receive (unsigned char recID, unsigned char sendID, unsigned char *msg);
unsigned char Message_Send (unsigned char sendID, unsigned char recID, unsigned char *msg);
unsigned short Message_Receive (unsigned char recID, unsigned char sendID, unsigned char *msg);
unsigned char Multitasking_Add_Process (unsigned char bank, APP_INFO *info, unsigned char prio);
void Multitasking_Delete_Process (unsigned char pID);
unsigned char Multitasking_Add_Timer (unsigned char bank, APP_INFO *info);
void Multitasking_Delete_Timer (unsigned char pID);
unsigned long Multitasking_GetCounter (void);


MEMORY (symbos_memory.h)
MEMORY_GETBANK(m)
MEMORY_GETLEN(m)
MEMORY_GETADDR(m)

void Banking_Copy (unsigned char bankSrc, unsigned int src, unsigned char bankDst, unsigned int dst, unsigned int len);
unsigned short Banking_ReadWord (unsigned char bank, unsigned int addr);
void Banking_WriteWord (unsigned char bank, unsigned int addr, unsigned short word);
unsigned char Banking_ReadByte (unsigned char bank, unsigned int addr);
void Banking_WriteByte (unsigned char bank, unsigned int addr, unsigned char byte);
unsigned long Memory_Summary (void);
MEMORY_PTR Memory_New (unsigned int len, unsigned char type);
void Memory_Delete (MEMORY_PTR data);
void Memory_Copy (MEMORY_PTR dst, MEMORY_PTR src, unsigned int len);

SHELL (symbos_shell.h)
int Shell_CharInput (unsigned char shellPID, unsigned char channel);
void Shell_CharOutput (unsigned char shellPID, unsigned char channel, unsigned char byte);
int Shell_StringInput (unsigned char shellPID, unsigned char channel, unsigned char bank, char *str);
void Shell_StringOutput (unsigned char shellPID, unsigned char channel, unsigned char bank, unsigned char *str, int len);
void Shell_Exit (unsigned char shellPID, int mode);
char *Shell_StartParam (unsigned short startCodeAddr);
char *Shell_NextParam (char *param, char *str);