Configurable RTOS For x86 Systems

Copyright © (2007 - 2008) Vladimir Antunovic.

--- Interrupt Support ---

void setvect( int interruptno, void (*isr)() )

void *wrap_ifunc( int interruptno, void (*isr)() )

void *getvect( int interruptno )

--- I/O Support ---

void outportb(int portid, unsigned char value)

unsigned char inportb(int portid)

--- Video Support ---

int putchar(int c)

int puts(const char *s)

void clrscr( void )

void textbackground( int newcolor )

void textcolor( int newcolor )

int cputs( const char *s )

void gotoxy( int x, int y )

void window( int left, int top, int right, int bottom )

int putch( int c )

int puttext( int left, int top, int right, int bottom )

void _setcursortype( int cur_t )

void textattr( int newattr )

int _gettextattr( void )

int wherex( void )

int wherey( void )

void textbackground_cons( int newcolor )

void textcolor_cons( int newcolor )

void textattr_cons( int newattr )

void window_console( int left, int top,

void gettextinfo( struct text_info *CurrentWindow )

--- Keyboard Support ---

int getch( void )

int kbhit( void )

char *gets(char *s)

--- String Support ---

int sprintf(char *buffer, const char *format, ...)

char *strncpy( char *dest, const char *src, int maxlen )

char *strchr( const char *s, int c)

char *strrchr( const char *s, int c )

char *strcpy( char *dest, const char *src )

int strcmp( const char *s1, const char *s2 )

int strncmp( const char *s1, const char *s2,

int atoi( const char *s)

int isupper(int c)

int islower(int c)

int isgraph(int c)

int isalpha(int c)

int sscanf(const char *buffer, const char *format, ...)

char *strcat(char *dest, const char *src)

int stricmp( const char *s1, const char *s2 )

int strlen( const char *s )

char *strncat( char *dest, const char *src, int maxlen )

char *strstr( const char *s1, const char *s2 )

long strtol( const char *s, char **endptr, int radix )

char *strupr( char *s )

int tolower( int ch )

int toupper( int ch )

char *strtok(char *s1, const char *s2)

--- Memory Support ---

void free(void *block)

void *malloc( int size )

void *memcpy( void *dest, const void *src, size_t n )

void *memset( void *s, int c, size_t n )

void Init_MemMngr( void *MemMngr,

--- Time Support ---

void GetTime_RTC( struct tm *time )

void SetTime_RTC( struct tm *time )

time_t mktime( struct tm *time )

void delay( int time )

struct tm *localtime(const time_t *timer)

time_t time(time_t *timer)

char *ctime(time_t *timer)

int stime(time_t *timer)

int strftime( char *s, int maxsize, const char *fmt,

unsigned int GetMillisecs( void )

---Floppy Disk Support ---

int ReadSectorsFloppy( unsigned int uiDrive

void vFloppyEnable( int iDriveIndex )

void vFloppyDisable( int iDriveIndex )

--- Hard Disk Support ---

void ReadSector( unsigned char *ucDest,

void WriteSector( unsigned char *ucSrc,

unsigned int IDE_ReadSectors( unsigned int

unsigned int IDE_IdentifyDevice( unsigned int

unsigned int IDE_WriteSectors( unsigned int

unsigned int IDE_WriteSectors_Fill( unsigned int

void *HeaderReturn_HardDisk( void )

int SetPIO_Mode( unsigned int uiDevice,

--- File Support ---

int FormatPartition_FAT32( unsigned int uiPartition

unsigned int MountDevice( unsigned int

unsigned int UnmountDevice( unsigned int

unsigned int RemoveDeviceEntry( char *

unsigned int AddDeviceEntry( char *

unsigned int RemoveFileSystemEntry( char *

unsigned int AddFileSystemEntry( char *

unsigned int GetMountObject( unsigned int

void *HeaderReturn_DiskRam( void )

void *HeaderReturn_FAT32( void )

void *GetFreeMountObject( void )

unsigned int ReadClusterSectors( unsigned char *

unsigned int WriteClusterSectors( unsigned char *

int write(int handle, void *buf, unsigned len)

int read(int handle, void *buf, unsigned len)

unsigned int RAM_IdentifyDevice( unsigned int

void *Init_Mount( void )

void *HeaderReturn_Mount( void )

int open(const char *path, int access,

int close(int handle)

long lseek( int handle, long offset, int

long tell(int handle)

long int filelength( int handle )

int mkfile(const char *path)

--- Directory Support ---

int _antos_findfirst(const char *path,

int _antos_findnext( _antos_ffblk *ffblk)

int mkdir(const char *path)

int rmdir(const char *path)

int unlink(const char *path)

int chdir( const char *path )

--- Run Time Linker Support ---

unsigned int RunAppEntry( void *

unsigned int RunApp( void *

unsigned int OMD_Database_Display ( void *

void Init_OMD_PE( tInitOMD *InitOMD )

void OCOS_FindAndBind( void *OMD

--- Serial Port Support ---

unsigned int GetSerPortHandle( unsigned

char *SendTxChar( unsigned Handle,

char *GetRxChar( unsigned Handle,

unsigned GetLSR( unsigned Handle )

unsigned IsCharAvailable( unsigned LSR )

unsigned IsOverrun( unsigned LSR )

unsigned IsParityError( unsigned LSR )

unsigned IsFramingError( unsigned LSR )

unsigned IsLineSpacingAlarm( unsigned LSR )

unsigned IsTxReady( unsigned LSR )

unsigned IsLastCharSent( unsigned LSR )

unsigned ResetSelfTest( unsigned Handle )

unsigned SetSelfTest( unsigned Handle )

unsigned SetIntConditions( unsigned Handle,

unsigned SetLineToSpace( unsigned Handle,

unsigned SetLengthsAndParities( unsigned

unsigned SetBaudRate( unsigned Handle,

unsigned ResetStats( unsigned Handle )

unsigned DisableRTS( unsigned Handle )

unsigned EnableRTS( unsigned Handle )

unsigned DisableDTR( unsigned Handle )

unsigned EnableDTR( unsigned Handle )

unsigned DisableInts( unsigned Handle )

unsigned EnableInts( unsigned Handle )

unsigned GetMSR( unsigned Handle )

unsigned GetHandle_LSR( unsigned Handle )

unsigned GetHandle_LCR( unsigned Handle )

unsigned GetHandle_IER( unsigned Handle )

unsigned GetHandle_MCR( unsigned Handle )

unsigned GetHandle_MSR( unsigned Handle )

unsigned GetHandle_FIFO( unsigned Handle )

unsigned GetHandle_IIR( unsigned Handle )

unsigned UseStdInterrupts( unsigned Handle )

unsigned IsCTS_CHANGE( unsigned MSR )

unsigned IsDSR_CHANGE( unsigned MSR )

unsigned IsRI_CHANGE( unsigned MSR )

unsigned IsRLSD_CHANGE( unsigned MSR )

unsigned IsCTS_Active( unsigned MSR )

unsigned IsDSR_Active( unsigned MSR )

unsigned IsRI_Active( unsigned MSR )

unsigned IsRLSD_Active( unsigned MSR )

unsigned SetIntHandler( unsigned Handle

unsigned SerialWrite( unsigned Handle

unsigned SerialRead( unsigned Handle

unsigned int PollDevice( unsigned Device )

---PCI Support ---

unsigned int ReadConfig_DWORD( unsigned Device

--- YMODEM Support ---

unsigned int GetFile( unsigned Handle

unsigned int SendFile( unsigned Handle

--- MULTI-TASKING Support ---

void *Get_RTC_Func( void )

void Set_RTC_Func( unsigned *pRTC_Func )

unsigned TaskCreate( void *pTaskAddress,..

unsigned TaskRunNew( unsigned TaskID )

unsigned TaskKill( unsigned TaskID, unsigned Flags )

unsigned TaskSignal( unsigned TaskID,..

unsigned TaskRequestEvent( unsigned Event,..

unsigned TaskGetCurrent( void )

void TaskSetUserData1( unsigned uiUserData )

void TaskSetUserData2( unsigned uiUserData )

void TaskGetUserData1( void )

void TaskGetUserData2( void )

void TaskGiveUpSlice( void )

unsigned TaskTimerAlarm( unsigned uiTicks,...