TempleOSTS_130707.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:45:45 +02:00
1 parent 17b71f1a2d
commit 1343005a29
617 files changed
+14399 -25130

No files matched your search

+81 -88
View File
@@ -1,13 +1,8 @@
#help_index "Time/CDate"
#help_file "::/TempleOS/Doc/TimeDate"
public extern CDate local_time_offset;
#help_index "Time/Jiffies"
//18.33333*65536Hz (SYS_TIMER_FREQ)
public extern I64 SysTimerRead();
#help_index "Task"
extern U8 *sys_acct;
extern CTask *sys_winmgr_task,*sys_task_being_screen_updated;
public extern CTask *adam_task;
public extern I64 sys_num_spawned_users,sys_num_task_inits;
@@ -37,22 +32,14 @@ public extern F64 tS(); //From SysTimerFreq.
public extern Bool Blink(F64 Hz=2.5);
#help_index "Snd"
#help_file "::/TempleOS/Doc/Snd"
public extern I64 snd_dev;
public extern F64 snd_vol,snd_reverb_intensity,snd_reverb_delay;
public extern U0 Snd(F64 freq,I64 waveform=WF_SQUARE,F64 amp=1.0);
public extern U0 Snd(F64 freq);
public extern Bool Mute(Bool val);
public extern Bool IsMute();
public extern F64 snd_freq;
public extern U0 Beep(I64 freq=500,Bool busy=FALSE);
public extern Bool IOSnd(Bool val);
#help_index "Snd/Snd Files"
public extern Bool snd_record;
extern U0 (*fp_snd_record)(F64 freq,I64 waveform,F64 amp);
#help_index "Snd/HDAudio"
public extern U0 (*fp_snd)(F64 freq,I64 waveform,F64 amp);
public extern U0 (*fp_snd_fill_buf)(SND_OUT_CONTAINER *buf,I64 buf_num);
public extern U0 (*fp_snd_copy_buf)(SND_IN_CONTAINER *buf,I64 buf_num);
extern CSndData snd_record_root;
#help_index "Processor"
extern U8 *sys_fault_handlers_code;
@@ -82,6 +69,7 @@ public extern Bool IsSysDeterministic();
public extern Bool SysDbg(Bool val);
public extern Bool SysDeterministic(Bool val);
public extern Bool ChkPtr(U8 *ptr);
public extern Bool ChkCodePtr(U8 *ptr);
public extern Bool ChkOnStk(U8 *ptr,CTask *task=NULL);
public extern I64 UnusedStk(CTask *task=NULL);
public extern U8 *Caller(I64 num=1);
@@ -133,7 +121,7 @@ extern U0 (**fp_ctrl_alt_let_cbs)(I64 sc);
extern I64 ctrl_alt_let_in_irq_flags;
extern U8 **ctrl_alt_let_descs;
extern I64 **ctrl_alt_let_ret_addr; //addr of ret add on stack in kbd irq
extern CTaskCmd sys_macro_root;
extern CSrvCmd sys_macro_root;
extern CKeyDev sys_put_key_root;
extern CTask *sys_macro_util_task;
extern I64 sys_raw_dc_col,sys_raw_dc_flags;
@@ -164,7 +152,7 @@ public extern U0 Spaces(I64 cnt=1);
public extern U0 PutErr(U8 *st=NULL);
public extern U0 PutWarn(U8 *st=NULL);
public extern U0 PutKey(I64 ch,I64 scancode);
public extern U0 PutChar(I64 ch);
public extern U0 PutChar(U64 ch);
public extern U0 PutS(U8 *st);
public extern U8 *Bin2Hex(U8 *dst,I64 n;I64 width);
public extern U0 PutHex(I64 n,I64 width);
@@ -180,7 +168,6 @@ extern I64 mouse_pkt_size;
public extern I64 kbd_evt_time;
extern Bool kbd_irqs_working;
public extern Bool PressAKey();
public extern Bool ExitAllApplications();
public extern Bool AreYouSure();
public extern I64 GetKey(I64 *_scancode=NULL,Bool echo=FALSE,Bool raw_cursor=FALSE);
public extern I64 GetChar(I64 *_scancode=NULL,Bool echo=TRUE,Bool raw_cursor=FALSE);
@@ -231,7 +218,6 @@ public extern I64 DefineMatch(U8 *src,U8 *lst_name,I64 flags=0,I64 *_ambiguity_o
#help_index "Memory"
#help_file "::/TempleOS/Doc/Mem"
public _extern _MEMCMP I64 MemCmp(U8 *ptr1,U8 *ptr2,I64 cnt);
public extern I64 MemPageSize(U8 *a)
public extern Bool MemPagePresentMark(U8 *a,Bool val);
public extern Bool MemLowPagesProtect(Bool val);
@@ -240,7 +226,7 @@ public extern U8 *MemBlksUncachedAlloc(I64 *_pages2Meg,CBlkPool *bp=NULL);
public extern U8 *MemBlksWriteThroughAlloc(I64 *_pages2Meg,CBlkPool *bp=NULL);
public extern U0 MemBlks2MegFree(CMemBlk *m,I64 pages2Meg,CBlkPool *bp=NULL);
public extern U8 *MemBlksNonTaskAlloc(I64 *_pages512,CBlkPool *bp=NULL);
public extern I64 *MemPtAtPageTableEntry(U8 *a);
public extern I64 *MemPageTable(U8 *a);
public extern U0 MemBlksNonTaskFree(CMemBlk *m,I64 pages512,CBlkPool *bp=NULL);
public _extern _MALLOC U8 *MAlloc(I64 size,CTask *mem_task=NULL);
public _extern _FREE U0 Free(U8 *add);
@@ -251,16 +237,7 @@ public extern U8 *CAlloc(I64 size,CTask *mem_task=NULL);
public extern U8 *MAllocIdentical(U8 *src,CTask *mem_task=NULL);
public extern U8 *MAllocAligned(I64 size,I64 alignment,CTask *mem_task=NULL,I64 misalignment=0);
public extern U8 *CAllocAligned(I64 size,I64 alignment,CTask *mem_task=NULL,I64 misalignment=0);
public extern U0 LinkedLstDel(U8 **_lst);
public extern U8 *LinkedLstCopy(U8 **_lst,CTask *mem_task=NULL);
public extern I64 LinkedLstCnt(U8 **_lst);
public extern I64 LinkedLstSize(U8 **_lst);
public extern I64 Scale2Mem(I64 min,I64 max,I64 limit=2*1024*1024*1024);
#help_index "Memory;Circular Queue"
public extern U0 QueDel(CQue *root,Bool querem=FALSE);
public extern CQue *QueCopy(CQue *root,CTask *mem_task=NULL);
public extern I64 QueCnt(CQue *root);
public extern I64 QueSize(CQue *root);
#help_index "Memory/Heap Ctrl"
public extern U0 BlkPoolAdd(CBlkPool *bp,CMemBlk *m,I64 pages512);
public extern U0 BlkPoolInit(CBlkPool *bp,I64 pages512);
@@ -290,10 +267,6 @@ public extern U0 Kill(CTask *task,Bool wait=TRUE);
public extern Bool Suspend(CTask *task=NULL,Bool state=TRUE);
public extern Bool IsSuspended(CTask *task=NULL);
public extern Bool TaskValidate(CTask *task);
public extern CTask *Spawn(U0 (*fp_add)(U8 *data),U8 *data=NULL,
U8 *task_name=NULL,
CTask *parent=NULL, //NULL means adam
I64 stk_size=0,I64 flags=SPAWNF_ADD_TO_QUE);
public extern U0 TaskQueIns(CTask *task,CTask *pred=NULL);
public extern U0 TaskQueRem(CTask *task);
public extern U0 TaskWait(CTask *task=NULL);
@@ -305,27 +278,31 @@ extern U0 (*fp_update_ctrls)(CTask *task);
public extern CTask *SpawnUser(U8 *fmt=NULL,...);
extern U0 TaskFinishOff(CTask *task);
public extern U0 OverRideSingleUserSwap();
#help_index "Task;MultiCore"
public extern CTask *Spawn(U0 (*fp_add)(U8 *data),U8 *data=NULL,
U8 *task_name=NULL,
I64 target_cpu=-1, //-1 means current CPU
CTask *parent=NULL, //NULL means adam
I64 stk_size=0,I64 flags=1<<SVCf_ADD_TO_QUE);
#help_index "Task/Requests"
public extern U0 SrvCmdDel(CSrvCmd *tempc);
public extern U0 TaskRstAwaitingMsg(CTask *task=NULL);
public extern CTaskCmd *
TaskRqstQue(CTask *servant,CTask *master,
U8 *data,I64 flags);
public extern I64 ServantCmdsHandler(CTask *task=NULL);
public extern I64 ServantUser(U8 *fmt,...);
extern U0 ServantUserCmdLine();
public extern Bool GetRqstResult(CTaskCmd *rqst=NULL,I64 *_result=NULL);
public extern U0 ServantTaskCont();
public extern CSrvCmd *TaskExeStrQue(CTask *srv,CTask *master,U8 *data,I64 flags);
public extern I64 SrvCmdsHandler(CTask *task=NULL);
public extern I64 SrvUser(U8 *fmt,...);
extern U0 SrvUserCmdLine();
public extern U0 SrvTaskCont();
public extern I64 Adam(U8 *fmt,...);
public extern U0 AdamLogExcept(I64 argc,I64 *argv);
public extern U0 AdamLog(U8 *fmt,...);
public extern U0 AdamErr(U8 *fmt,...);
#help_index "Task/Text Input"
public extern CTaskCmd *
TextInputQue(CTask *servant,CTask *master,
public extern CSrvCmd *
TaskTextInputQue(CTask *srv,CTask *master,
U8 *data,I64 flags);
#help_index "Task/Text Input;Messages"
public extern CTaskCmd *QueMsg(CTask *servant,CTask *master,
public extern CSrvCmd *TaskMsgQue(CTask *srv,CTask *master,
I64 msg_code,I64 p1,I64 p2,I64 flags);
public extern U0 PostMsg(CTask *task,I64 msg_code,I64 p1,I64 p2,I64 flags=0);
public extern U0 SendMsg(CTask *task,I64 msg_code,I64 p1,I64 p2,I64 flags=0);
@@ -410,44 +387,41 @@ public extern U8 *reverse_bits_table,*set_bits_table;
#help_index "Doc/Clipboard"
public extern CDoc *sys_clipboard_doc;
#help_index "Time/CDate"
#help_index "Time/Date;Date"
#help_file "::/TempleOS/Doc/TimeDate"
public extern CDate local_time_offset;
public extern U16 mon_start_days1[12];
public extern U16 mon_start_days2[12];
public extern I64 YearStartDate(I64 year);
public extern CDate CDateStruct2CDate(CDateStruct *_ds);
public extern U0 CDate2CDateStruct(CDateStruct *_ds,CDate spdt);
public extern CDate DateStruct2Date(CDateStruct *_ds);
public extern U0 Date2DateStruct(CDateStruct *_ds,CDate cdt);
public extern I64 FirstDayOfMon(I64 i);
public extern I64 LastDayOfMon(I64 i);
public extern I64 FirstDayOfYear(I64 i);
public extern I64 LastDayOfYear(I64 i);
public extern I64 DayOfWeek(I64 i);
public extern CDate GetCurTimeCDate();
public extern U0 CDate2ISO1(CISO1Date *dst,CDate spdt);
public extern CDate GetCurTimeDate();
public extern U0 Date2ISO1(CISO1Date *dst,CDate cdt);
public extern U8 *date_fmt_map,*time_fmt_map;
public extern U0 DateTimeFmtMapsRst();
#help_index "File/System"
extern U8 sys_temp_filename[136];
extern I64 sys_dsk_reads,sys_dsk_writes;
#help_index "File/System/Cache"
extern CCacheBlk *sys_dsk_cache_base,*sys_dsk_cache_ctrl;
extern CCacheBlk **sys_dsk_cache_hash_table;
extern I64 sys_dsk_cache_size;
extern U0 DskCacheInit(I64 size_in_U8s);
public extern U0 DskCacheInvalidate(CPrt *p);
#help_index "File/System/BlkDev"
public extern CBlkDev *sys_blkdevs;
#help_index "File/System/Partitions"
public extern CPrt *sys_prts;
extern CPrt *drv_to_prt[32];
#help_index "PCI;Info;File/System/Hardware;Device"
#help_index "PCI;Info;File/System;Device"
public extern I64 ATARep(Bool pmt=TRUE,Bool just_ide=FALSE,CATARep **_root=NULL);
#help_index "File/System/Hardware"
public extern CATARep *ATAIDDrvs(CATARep *root,U8 _dft_drv,CATARep **_ata_drv,CATARep **_atapi_drv);
#help_index "File/System"
public extern CATARep *ATAIDDrvs(CATARep *root,U8 _sys_acct_drv,CATARep **_ata_drv,CATARep **_atapi_drv);
extern CBlkDev *ATAMount(U8 first_drv_let,I64 type,I64 base0,I64 base1,I64 unit);
public extern I64 sys_auto_mount_ide_cnt;
public extern I64 AutoMountIDE();
@@ -467,7 +441,7 @@ public extern U0 Dir(U8 *wild="*",Bool full=FALSE);
public extern I64 Del(U8 *wild,Bool print_msg=TRUE);
public extern Bool MkDir(U8 *filename);
#help_index "Info;File/Cmd Line (Typically);Cmd Line (Typically);File/Install Related;Install"
#help_index "Info;File/Cmd Line (Typically);Cmd Line (Typically);Install"
public extern U0 PrtRep();
#help_index "File/Program Routines/Low Level"
@@ -476,7 +450,7 @@ extern I64 SysDel(U8 *wild,Bool make_mask); //this is dangerous
extern Bool CopySingle(U8 *f1,U8 *f2); //Just one file
extern U0 CleanMAPBuf(CPrt *p);
extern U0 FAT32FreeClusters(CPrt *p,I64 c);
extern U0 NativeFSFreeClusters(CPrt *p,I64 c,I64 cnt);
extern U0 RedSeaFSFreeClusters(CPrt *p,I64 c,I64 cnt);
public extern Bool BlkDevLock(CBlkDev *bdev);
public extern Bool PrtLock(CPrt *p);
public extern Bool BlkDevUnlock(CBlkDev *bdev,Bool rst=FALSE);
@@ -519,6 +493,7 @@ public extern U0 CDImageWrite(U8 cd_drv_let,U8 *in_name=NULL,I64 media_type=MT_C
public extern U8 *sys_dft_iso_name;
#help_index "File/FileNames"
public extern U8 *sys_acct;
public extern Bool FilesFindMatch(U8 *files_find_mask,U8 *filename,I64 fuf_flags=0);
public extern Bool IsDotZ(U8 *filename);
public extern Bool IsDotC(U8 *filename);
@@ -536,7 +511,8 @@ public extern U8 *ChgExt(U8 *filename,U8 *extension);
public extern U8 *DftExt(U8 *filename,U8 *extension);
public extern Bool IsDir(U8 *dir_name);
public extern Bool IsDrvWritable(U8 drv_let=0);
extern CDirEntry *CdDir(CDirEntry *tempm,U8 *abs_name);
extern CDirEntry *Cd2DirEntry(CDirEntry *tempm,U8 *abs_name);
public extern U0 ToFileLine(U8 *_fl_file_line,U8 **_filename,I64 *_linenum);
#help_index "File/Program Routines/Utils"
public extern U0 GetFFlags(U8 *f,U8 *lst,U8 *st);
@@ -558,19 +534,20 @@ public extern Bool FileFind(U8 *filename,CDirEntry *de=NULL,I64 fuf_flags=0);
public extern U8 *FileRead(U8 *filename,I64 *_size=NULL,I64 *_attr=NULL,Bool raw=FALSE);
public extern U8 *TextFileRead(U8 *filename,I64 *_attr=NULL);
public extern I64 FileWrite(U8 *filename,U8 *fbuf,
I64 size,CDate spdt=0,I64 attr=0,Bool raw=FALSE);
I64 size,CDate cdt=0,I64 attr=0,Bool raw=FALSE);
public extern U0 TextFileWrite(U8 *filename,U8 *st,I64 attr=0);
#help_index "Install;File/Install Related;File/Cmd Line (Typically);Cmd Line (Typically);"
#help_index "Install;File/Cmd Line (Typically);Cmd Line (Typically);"
public extern U0 Mount(Bool repartition=FALSE);
public extern U0 Fmt(U8 drv_let,Bool quick=TRUE,Bool confirm=TRUE,I64 type=PT_FAT32);
#help_index "Install;File/Install Related"
#help_index "Install"
#help_file "::/TempleOS/Doc/Install"
extern CATARep *ATARepFind(CATARep *root,I64 num);
public extern Bool DrvEnable(U8 drv_let,Bool val);
public extern U0 Fmt(U8 drv_let,Bool quick=TRUE,Bool confirm=TRUE,I64 type=PT_FAT32);
extern U0 DrvDftSelect();
public extern U8 dft_drv,sys_first_hd_drv_let,sys_first_cd_drv_let;
extern Bool boot_drv_pmt;
public extern U8 sys_first_hd_drv_let,sys_first_cd_drv_let;
extern Bool boot_drv_pmt,cdrom_boot_is_good;
#help_index "Hash"
#help_file "::/TempleOS/Doc/Hash"
@@ -611,27 +588,31 @@ extern I64 sys_num_installed_compilers;
extern U0 (*fp_prs_stream_blk)(CLex *lx);
#help_index "Boot"
#help_file "::/TempleOS/Doc/Boot"
public extern U0 Reboot();
#help_index "MultiCore;Task/Requests"
public extern CSrvCmd *JobQue(I64 (*fp_add)(U8 *data),U8 *data=NULL,
I64 target_cpu=1,I64 flags=1<<SVCf_FREE_ON_COMPLETE,
I64 cmd_code=SVCT_CALL,U8 *aux_str=NULL,I64 aux1=0,I64 aux2=0);
#help_index "MultiCore"
extern CMPCmdCtrl *mp_ctrl;
extern U8 mp_apic_ids[MP_MAX_PROCESSORS];
extern CMPCrash *mp_crash;
public extern U0 MPInt(U8 num,I64 cpu_num=1);
public extern U0 IntEOI(); //signal end of interrupt
public extern U0 MPIntAll(U8 num);
public extern U0 MPWake(I64 target_cpu_mask);
public extern U0 MPWake(I64 target_cpu);
extern U0 MPSethServerTask();
extern CMPCmd *MPQueJob(I64 (*fp_add)(U8 *data),U8 *data=NULL,
U8 *desc=NULL,
I64 flags=1<<MPCf_FREE_ON_COMPLETE,
Bool spawn=FALSE,I64 target_cpu_mask=ALL_MASK);
public extern CMPCmd *MPJob(I64 (*fp_add)(U8 *data),U8 *data=NULL,
I64 target_cpu=1,I64 flags=1<<MPCf_FREE_ON_COMPLETE);
public extern I64 MPJobResult(CMPCmd *tempm);
public extern CTask *MPSpawn(U0 (*fp_add)(U8 *data),U8 *data=NULL,U8 *name=NULL,I64 target_cpu=1);
extern CTask *SpawnQue(U0 (*fp_add)(U8 *data),U8 *data=NULL,
U8 *task_name=NULL,
I64 target_cpu,
CTask *parent=NULL, //NULL means adam
I64 stk_size=0,I64 flags=1<<SVCf_ADD_TO_QUE);
public extern U0 MPNMInt();
public extern U0 MPStart();
#help_index "Task/Requests;MultiCore"
public extern Bool ScanResult(CSrvCmd *rqst=NULL,I64 *_result=NULL);
public extern I64 GetResult(CSrvCmd *rqst=NULL);
#help_index "MultiCore;Boot"
public extern U0 MPHalt();
@@ -669,7 +650,23 @@ public _extern _FAR_CALL32 Bool FarCall32(U0 (*fp_add)());
//fp_add can have any fixed number of arguments.
public argpop extern I64 CallStkGrow(I64 stk_size_threshold,I64 stk_size,/*argpop*/I64 (*fp_add)(...),...);
#help_index "Fifo"
#help_index "Data Types/Circular Queue"
public extern U0 QueDel(CQue *root,Bool querem=FALSE);
public extern CQue *QueCopy(CQue *root,CTask *mem_task=NULL);
public extern I64 QueCnt(CQue *root);
public extern I64 QueSize(CQue *root);
#help_index "Data Types"
public extern U0 LinkedLstDel(U8 **_lst);
public extern U8 *LinkedLstCopy(U8 **_lst,CTask *mem_task=NULL);
public extern I64 LinkedLstCnt(U8 **_lst);
public extern I64 LinkedLstSize(U8 **_lst);
public extern CQueVectU8 *QueVectU8New(I64 min_index=0);
public extern U0 QueVectU8Put(CQueVectU8 *v,I64 index,U8 ch);
public extern U0 QueVectU8Del(CQueVectU8 *v);
public extern I64 QueVectU8Get(CQueVectU8 *v,I64 index);
public extern CFifoU8 *FifoU8New(I64 size,CTask *mem_task=NULL);
public extern U0 FifoU8Del(CFifoU8 *f);
public extern Bool FifoU8Ins(CFifoU8 *f,U8 b);
@@ -699,7 +696,7 @@ public _extern _STRCAT U0 StrCat(U8 *dst,U8 *src);
public extern I64 sys_key_cnt;
public extern U0 SetTypeMatic(U8 delay);
extern U0 KbdInit();
extern I64 KbdQueMsgs();
extern I64 KbdMsgsQue();
extern U0 KbdMouseVarsInit();
extern Bool MouseDriverInstall();
extern U0 KbdMouseHandler(Bool poll_kbd,Bool poll_mouse);
@@ -787,17 +784,13 @@ public extern I64 ScanChar();
public extern I64 sys_cur_scan_code;
#help_index "Doc/Task"
extern CDoc *(*fp_doc_cur)(CTask *task=NULL);
extern CDoc *(*fp_doc_put)(CTask *task=NULL);
#help_index "Char/Conversion"
public extern F64 A2F64(U8 *src,U8 **_end_ptr=NULL);
#help_index "Time/CDate"
public extern U8 *date_fmt_map,*time_fmt_map;
public extern U0 DateTimeFmtMapsRst();
#help_index "Char/Conversion;Time/CDate"
public extern CDate A2CDate(U8 *src);
#help_index "Char/Conversion;Time/Date"
public extern CDate A2Date(U8 *src);
#help_index "Debugging/PSect;Hash"
public extern CHash *PSectFind(U8 *add,I64 *_offset);
@@ -813,8 +806,8 @@ public extern Bool PutSrcLink(U8 *add,I64 cnt=1,U8 *buf=NULL);
public extern U0 EdLite(U8 *filename,I64 num=1);
extern U8 *sys_fix_file_line;
public extern U0 SetFix(U8 *filename,I64 line);
extern U0 EdLiteFileLine(U8 *fl_file_line);
public extern U0 Fix();
extern U0 EdLiteFileLine(U8 *_fl_file_line);
#help_index "Debugging/Debugger;Doc/Cmd Line (Typically);Cmd Line (Typically);Training"
public extern U0 Man(U8 *st);