📄 api.h
字号:
// unsigned int, char *); return ((void *) sysCall_3(_fnum_memoryRequestPhysicalBlock, (void *) size, (void *) align, (void *) desc));}static inline int memoryReleaseBlock(void *p){ // Proto: int kernelMemoryReleaseBlock(void *); return (sysCall_1(_fnum_memoryReleaseBlock, p));}static inline int memoryReleaseAllByProcId(int pid){ // Proto: int kernelMemoryReleaseAllByProcId(int); return (sysCall_1(_fnum_memoryReleaseAllByProcId, (void *) pid));}static inline int memoryChangeOwner(int opid, int npid, void *addr, void **naddr){ // Proto: int kernelMemoryChangeOwner(int, int, void *, void **); return (sysCall_4(_fnum_memoryChangeOwner, (void *) opid, (void *) npid, addr, (void *) naddr));}//// Multitasker functions//static inline int multitaskerCreateProcess(void *addr, unsigned size, const char *name, int numargs, void *args){ // Proto: int kernelMultitaskerCreateProcess(void *, unsigned int, // const char *, int, void *); return (sysCall_5(_fnum_multitaskerCreateProcess, addr, (void *) size, (void *) name, (void *) numargs, args));}static inline int multitaskerSpawn(void *addr, const char *name, int numargs, void *args){ // Proto: int kernelMultitaskerSpawn(void *, const char *, int, void *); return (sysCall_4(_fnum_multitaskerSpawn, addr, (void *) name, (void *) numargs, args));}static inline int multitaskerGetCurrentProcessId(void){ // Proto: int kernelMultitaskerGetCurrentProcessId(void); return (sysCall_0(_fnum_multitaskerGetCurrentProcessId));}static inline int multitaskerGetProcessOwner(int pid){ // Proto: int kernelMultitaskerGetProcessOwner(int); return (sysCall_1(_fnum_multitaskerGetProcessOwner, (void *) pid));}static inline const char *multitaskerGetProcessName(int pid){ // Proto: const char *kernelMultitaskerGetProcessName(int); return ((const char *) sysCall_1(_fnum_multitaskerGetProcessName, (void *) pid));}static inline int multitaskerGetProcessState(int pid, int *statep){ // Proto: int kernelMultitaskerGetProcessState(int, kernelProcessState *); return (sysCall_2(_fnum_multitaskerGetProcessState, (void *) pid, statep));}static inline int multitaskerSetProcessState(int pid, int state){ // Proto: int kernelMultitaskerSetProcessState(int, kernelProcessState); return (sysCall_2(_fnum_multitaskerSetProcessState, (void *) pid, (void *) state));}static inline int multitaskerGetProcessPriority(int pid){ // Proto: int kernelMultitaskerGetProcessPriority(int); return (sysCall_1(_fnum_multitaskerGetProcessPriority, (void *) pid));}static inline int multitaskerSetProcessPriority(int pid, int priority){ // Proto: int kernelMultitaskerSetProcessPriority(int, int); return (sysCall_2(_fnum_multitaskerSetProcessPriority, (void *) pid, (void *)priority));}static inline int multitaskerGetProcessPrivilege(int pid){ // Proto: kernelMultitaskerGetProcessPrivilege(int); return (sysCall_1(_fnum_multitaskerGetProcessPrivilege, (void *) pid));}static inline int multitaskerGetCurrentDirectory(char *buff, int buffsz){ // Proto: int kernelMultitaskerGetCurrentDirectory(char *, int); return (sysCall_2(_fnum_multitaskerGetCurrentDirectory, buff, (void *) buffsz));}static inline int multitaskerSetCurrentDirectory(char *buff){ // Proto: int kernelMultitaskerSetCurrentDirectory(char *); return (sysCall_1(_fnum_multitaskerSetCurrentDirectory, buff));}static inline int multitaskerGetProcessorTime(clock_t *clk){ // Proto: int kernelMultitaskerGetProcessorTime(clock_t *); return (sysCall_1(_fnum_multitaskerGetProcessorTime, clk));}static inline void multitaskerYield(void){ // Proto: void kernelMultitaskerYield(void); sysCall_0(_fnum_multitaskerYield);}static inline void multitaskerWait(unsigned ticks){ // Proto: void kernelMultitaskerWait(unsigned int); sysCall_1(_fnum_multitaskerWait, (void *) ticks);}static inline int multitaskerBlock(int pid){ // Proto: int kernelMultitaskerBlock(int); return (sysCall_1(_fnum_multitaskerBlock, (void *) pid));}static inline int multitaskerKillProcess(int pid, int force){ // Proto: int kernelMultitaskerKillProcess(int); return (sysCall_2(_fnum_multitaskerKillProcess, (void *) pid, (void *) force));}static inline int multitaskerTerminate(int code){ // Proto: int kernelMultitaskerTerminate(int); return (sysCall_1(_fnum_multitaskerTerminate, (void *) code));}static inline void multitaskerDumpProcessList(void){ // Proto: void kernelMultitaskerDumpProcessList(void); sysCall_0(_fnum_multitaskerDumpProcessList);}//// Loader functions//static inline int loaderLoadAndExec(const char *name, int privilege, int argc, char *argv[], int block){ // Proto: kernelLoaderLoadAndExec(const char *, int, char *[], int); return (sysCall_5(_fnum_loaderLoadAndExec, (void *) name, (void *) privilege, (void *) argc, argv, (void *) block));}//// Real-time clock functions//static inline int rtcReadSeconds(void){ // Proto: int kernelRtcReadSeconds(void); return (sysCall_0(_fnum_rtcReadSeconds));}static inline int rtcReadMinutes(void){ // Proto: int kernelRtcReadMinutes(void); return (sysCall_0(_fnum_rtcReadMinutes));}static inline int rtcReadHours(void){ // Proto: int kernelRtcReadHours(void); return (sysCall_0(_fnum_rtcReadHours));}static inline int rtcReadDayOfWeek(void){ // Proto: int kernelRtcReadDayOfWeek(void); return (sysCall_0(_fnum_rtcReadDayOfWeek));}static inline int rtcReadDayOfMonth(void){ // Proto: int kernelRtcReadDayOfMonth(void); return (sysCall_0(_fnum_rtcReadDayOfMonth));}static inline int rtcReadMonth(void){ // Proto: int kernelRtcReadMonth(void); return (sysCall_0(_fnum_rtcReadMonth));}static inline int rtcReadYear(void){ // Proto: int kernelRtcReadYear(void); return (sysCall_0(_fnum_rtcReadYear));}static inline unsigned rtcUptimeSeconds(void){ // Proto: unsigned kernelRtcUptimeSeconds(void); return (sysCall_0(_fnum_rtcUptimeSeconds));}static inline int rtcDateTime(struct tm *time){ // Proto: int kernelRtcDateTime(struct tm *); return (sysCall_1(_fnum_rtcDateTime, (void *) time));}//// Random number functions//static inline unsigned randomUnformatted(void){ // Proto: unsigned kernelRandomUnformatted(void); return (sysCall_0(_fnum_randomUnformatted));}static inline unsigned randomFormatted(unsigned start, unsigned end){ // Proto: unsigned kernelRandomFormatted(unsigned int, unsigned int); return (sysCall_2(_fnum_randomFormatted, (void *) start, (void *) end));}static inline unsigned randomSeededUnformatted(unsigned seed){ // Proto: unsigned kernelRandomSeededUnformatted(unsigned int); return (sysCall_1(_fnum_randomSeededUnformatted, (void *) seed));}static inline unsigned randomSeededFormatted(unsigned seed, unsigned start, unsigned end){ // Proto: unsigned kernelRandomSeededFormatted(unsigned int, // unsigned int, unsigned int); return (sysCall_3(_fnum_randomSeededFormatted, (void *) seed, (void *) start, (void *) end));}//// Environment functions//static inline int environmentGet(const char *var, char *buf, unsigned bufsz){ // Proto: int kernelEnvironmentGet(const char *, char *, unsigned int); return (sysCall_3(_fnum_environmentGet, (void *) var, buf, (void *) bufsz));}static inline int environmentSet(const char *var, const char *val){ // Proto: int kernelEnvironmentSet(const char *, const char *); return (sysCall_2(_fnum_environmentSet, (void *) var, (void *) val));}static inline int environmentUnset(const char *var){ // Proto: int kernelEnvironmentUnset(const char *); return (sysCall_1(_fnum_environmentUnset, (void *) var));}static inline void environmentDump(void){ // Proto: void kernelEnvironmentDump(void); sysCall_0(_fnum_environmentDump);}// Window manager functionsstatic inline int windowManagerStart(void){ // Proto: int kernelWindowManagerStart(void); return (sysCall_0(_fnum_windowManagerStart));}static inline int windowManagerNewWindow(int processId, char *title, int xCoord, int yCoord, int width, int height){ // Proto: int kernelWindowManagerNewWindow(int, const char *, int, int, // int, int); return (sysCall_6(_fnum_windowManagerNewWindow, (void *) processId, (void *) title, (void *) xCoord, (void *) yCoord, (void *) width, (void *) height));}static inline int windowSetTitle(int windowId, const char *title){ // Proto: int kernelWindowSetTitle(int, const char *); return (sysCall_2(_fnum_windowSetTitle, (void *) windowId, (void *) title));}static inline int windowSetSize(int windowId, int width, int height){ // Proto: int kernelWindowSetSize(int, int, int); return (sysCall_3(_fnum_windowSetSize, (void *) windowId, (void *) width, (void *) height));}static inline int windowSetLocation(int windowId, int xCoord, int yCoord){ // Proto: int kernelWindowSetLocation(int, int, int) return (sysCall_3(_fnum_windowSetLocation, (void *) windowId, (void *) xCoord, (void *) yCoord));}static inline int windowSetVisible(int windowId, int visible){ // Proto: int kernelWindowSetVisible(int, int); return (sysCall_2(_fnum_windowSetVisible, (void *) windowId, (void *) visible));}//// Miscellaneous functions//static inline int shutdown(int type, int nice){ // Proto: int kernelShutdown(kernelShutdownType, int); return (sysCall_2(_fnum_shutdown, (void *) type, (void *) nice));}static inline const char *version(void){ // Proto: const char *kernelVersion(void); return ((const char *) sysCall_0(_fnum_version));}#define _API_H#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -