CoolFace
Datasetpublic

hschumann2/TempleOS-Source-Code

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes838downloads
KExts.txt111 linesDownload Raw Back to Kernel
1 2/*3If you are sure a fun won't be called4before import is resolved, you can use5"import".  Otherwise, use a fun pointer6var and check it before calling.7*/8import U8 *DocSave(CDoc *doc,I64 *_size=NULL);9import Bool DocUnlock(CDoc *doc);10import Bool Ed(U8 *link_st,I64 edf_dof_flags=0);11extern U0 AdamErr(U8 *fmt,...);12extern U0 AdamLog(U8 *fmt,...);13extern I64 BIOSTotalMem();14extern I64 BlkDevAdd(CBlkDev *bd,I64 prt_num=I64_MIN,15        Bool whole_drv,Bool make_free);16extern CBlkDev *BlkDevChk(CBlkDev *bd,Bool except=TRUE);17extern Bool BlkDevLock(CBlkDev *bd);18extern CBlkDev *BlkDevNextFreeSlot(U8 first_drv_let,I64 type);19extern Bool BlkDevUnlock(CBlkDev *bd,Bool rst=FALSE);20extern U0 BlkDevsRelease();21extern Bool BlkRead(CDrv *dv,U8 *buf, I64 blk, I64 cnt);22extern Bool BlkWrite(CDrv *dv,U8 *buf, I64 blk, I64 cnt);23extern U8 *Caller(I64 num=1);24extern U8 *CatPrint(U8 *_dst,U8 *fmt,...);25extern Bool Cd(U8 *dirname=NULL,Bool make_dirs=FALSE);26extern U0 DbgHelp();27extern U8 *Define(U8 *dname);28extern I64 DefineMatch(U8 *needle,U8 *haystack_lst_dname,I64 flags=0);29extern U8 *DefineSub(I64 sub,U8 *dname);30extern I64 Del(U8 *files_find_mask,Bool make_mask=FALSE,31        Bool del_dir=FALSE,Bool print_msg=TRUE);32extern Bool DirMk(U8 *filename,I64 entry_cnt=0);33extern Bool Drv(U8 drv_let);34extern U8 Drv2Let(CDrv *dv=NULL);35extern U0 DrvBlkDevDel(CBlkDev *bd);36extern CDrv *DrvChk(CDrv *dv,Bool except=TRUE);37extern U8 DrvTextAttrGet(U8 drv_let=0);38extern Bool DrvTypeSet(U8 drv_let,I64 type=FSt_REDSEA);39extern U0 DrvsRelease();40extern U0 DskCacheInvalidate(CDrv *dv);41extern U0 Exit();42extern U8 *ExtDft(U8 *filename,U8 *extension);43extern I64 FAT32AllocClus(CDrv *dv,I64 c,I64 cnt);44extern I64 FAT32AllocContiguousClus(CDrv *dv,I64 cnt);45extern Bool FAT32DirNew(CDrv *dv,U8 *cur_dir,CDirEntry *tmpde,46        Bool free_old_chain);47extern Bool FAT32FileFind(CDrv *dv,I64 cur_dir_clus,U8 *name,48        CDirEntry *_res,I64 fuf_flags=0);49extern U0 FAT32Init(CDrv *dv);50extern Bool FBlkRead(CFile *f,U8 *buf,I64 blk=FFB_NEXT_BLK,I64 cnt=1);51extern Bool FBlkWrite(CFile *f,U8 *buf,I64 blk=FFB_NEXT_BLK,I64 cnt=1);52extern U0 FClose(CFile *f);53extern CFile *FOpen(U8 *filename,U8 *flags,I64 cnt=0);54extern U8 *FileExtRem(U8 *src,U8 *dst=NULL);55extern Bool FileFind(U8 *filename,CDirEntry *_de=NULL,I64 fuf_flags=0);56extern U8 *FileNameAbs(U8 *_filename,I64 fuf_flags=0);57extern U8 *FileRead(U8 *filename,I64 *_size=NULL,I64 *_attr=NULL);58extern I64 FileWrite(U8 *filename,U8 *fbuf,I64 size,CDate cdt=0,I64 attr=0);59extern I64 FlushMsgs(CTask *task=NULL);60extern I64 GetChar(I64 *_scan_code=NULL,Bool echo=TRUE,Bool raw_cursor=FALSE);61extern I64 GetS(U8 *buf,I64 size,Bool allow_ext=TRUE);62extern CHeapCtrl *HeapCtrlInit(CHeapCtrl *hc=NULL,63        CTask *task=NULL,CBlkPool *bp);64extern Bool ISO1FileFind(CDrv *dv,I64 cur_dir_clus,U8 *name,65        CDirEntry *_res,I64 fuf_flags=0);66extern Bool ISOInit(CDrv *dv,I64 blk);67extern Bool IsDbgMode();68extern Bool IsDir(U8 *dir_name);69extern Bool IsRaw();70extern U0 JobCtrlInit(CJobCtrl *ctrl);71extern U0 JobDel(CJob *tmpc);72extern U0 JobQueDel(CJob *head);73extern I64 JobsHndlr(I64 run_flags,CTask *task=NULL);74extern CBlkDev *Let2BlkDev(U8 drv_let=0,Bool except=TRUE);75extern I64 Let2BlkDevType(U8 drv_let);76extern CDrv *Let2Drv(U8 drv_let=0,Bool except=TRUE);77extern U8 Let2Let(U8 drv_let=0);78extern U0 MPInt(U8 num,I64 cpu_num=1);79extern U8 *MStrPrint(U8 *fmt,...);80extern U0 MsHardSet(I64 x,I64 y,I64 z,I64 l,I64 r);81extern U0 Msg(I64 msg_code,I64 arg1,I64 arg2,I64 flags=0);82extern U0 Panic(U8 *msg=NULL,I64 msg_num=0,Bool panic=TRUE);83extern I64 PopUp(U8 *buf,CTask *parent=NULL,CTask **_pu_task=NULL);84extern U0 Print(U8 *fmt,...);85extern U0 PutChars(U64 ch);86extern U0 PutS(U8 *st); //Use Print()87extern I64 RedSeaAllocClus(CDrv *dv,I64 cnt);88extern Bool RedSeaDirNew(CDrv *dv,U8 *cur_dir,CDirEntry *tmpde,89        Bool free_old_chain);90extern Bool RedSeaFileFind(CDrv *dv,I64 cur_dir_clus,U8 *name,91        CDirEntry *_res,I64 fuf_flags=0);92extern U0 RedSeaFmt(U8 drv_let,Bool quick=TRUE);93extern U0 RedSeaFreeFreeLst(CDrv *dv);94extern U0 RedSeaInit(CDrv *dv);95extern Bool RedSeaValidate(U8 drv_let);96extern CTask *SpawnQue(U0 (*fp_addr)(U8 *data),U8 *data=NULL,97    U8 *task_name=NULL,I64 target_cpu,CTask *parent=NULL, //NULL means adam98    I64 stk_size=0,I64 flags=1<<JOBf_ADD_TO_QUE);99extern U8 *StrPrint(U8 *dst,U8 *fmt,...);100extern U0 StrPrintFunSeg(U8 *buf,I64 addr,I64 field_len,I64 flags);101extern Bool Suspend(CTask *task=NULL,Bool state=TRUE);102extern CJob *TaskMsg(CTask *_srv,CTask *master,103        I64 msg_code,I64 arg1,I64 arg2,I64 flags);104extern U0 TaskRstAwaitingMsg(CTask *task=NULL);105extern Bool TaskValidate(CTask *task);106extern U0 TaskWait(CTask *task=NULL,Bool cmd_line_pmt=FALSE);107extern CTask *User(U8 *fmt=NULL,...);108extern U0 UserTaskCont();109extern U0 XTalk(CTask *task,U8 *fmt,...);110extern U0 throw(I64 ch=0,Bool no_log=FALSE);111