Team Ai
Datasetpublic

hschumann2/TempleOS-Source-Code

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes847downloads
TOSDistro.txt616 linesDownload Raw Back to TOS
1 2//The CFG defines are ~/TOS/TOSCfg.HC.3 4#help_index "Misc/TOS/Distro"5 6#define MAKE_STD        17#define MAKE_STD_RS     08#define MAKE_ULTRA      19#define MAKE_ULTRA_RS   010#define MAKE_SUP1       111#define MAKE_WEB        112#define MAKE_BOOKS1     013#define MAKE_BOOKS2     014#define MAKE_DBG        015#define MAKE_STAFF      116#define PROFANITY_CHK   017 18public U8 TOSGetDrv()19{//Pmt for drv let.20  I64 res;21  "Drive (%s):",TOS_HDS;22  res=Let2Let(GetChar);23  '\n';24  return res;25}26 27public U0 TOSBootHDIns(U8 drv_let=0)28{//Make Compiler and Kernel. Reinstall Kernel.29  drv_let=Let2Let(drv_let);30  In(TOS_CFG);31  BootHDIns(drv_let);32  if (StrOcc(TOS_MASTER_BOOT_DRVS,drv_let))33    BootMHDIns(drv_let);34}35 36public U0 TOSCopyDrv(U8 src,U8 dst)37{//Fmt dst and copy entire drv.38  U8 buf_s[STR_LEN],buf_d[STR_LEN];39  src=Let2Let(src);40  dst=Let2Let(dst);41 42  Fmt(dst,,FALSE,FSt_FAT32);43 44  StrPrint(buf_s,"%c:/",src);45  StrPrint(buf_d,"%c:/",dst);46  CopyTree(buf_s,buf_d);47 48  DocClear;49  Drv(dst);50  TOSBootHDIns(dst);51}52 53public U0 TOSPmtAndCopyDrv()54{//Pmt for drv lets. Then, Fmt dst and copy entire drv.55   I64 src,dst;56  "$RED$\nCopy Src Drive:\n$FG$";57  src=TOSGetDrv;58  "$RED$\nCopy Dst Drive:\n$FG$";59  dst=TOSGetDrv;60  TOSCopyDrv(src,dst);61}62 63U0 DistroSongsPrep(U8 threshold='7')64{65  CDoc *doc;66  CDocEntry *doc_e;67  CDirEntry *tmpde=FilesFind("/Home/Sup1/Sup1Hymns/*.HC*",68        FUF_CLUS_ORDER),*tmpde1=tmpde;69  DelTree("/Apps/Psalmody/Examples");70  DirMk("/Apps/Psalmody/Examples");71  while (tmpde) {72    doc=DocRead(tmpde->full_name);73    doc_e=doc->head.next;74    if (doc_e->type_u8==DOCT_TEXT && doc_e->tag[2]>=threshold)75      Copy(tmpde->full_name,"/Apps/Psalmody/Examples");76    DocDel(doc);77    tmpde=tmpde->next;78  }79  DirTreeDel(tmpde1);80}81 82U0 DistroPrep()83{84  AOnceFlush; //Don't want in Registry85  OnceFlush;86 87  Del("/Home/Demo*");88  DelTree("/Home/*Tmp.DD.Z");89  if (FileFind("/Home/Sup1/Sup1Hymns"))90    DistroSongsPrep;91 92  DelTree("/Tmp");93  DirMk("/Tmp");94  DirMk("/Tmp/ScrnShots");95 96  Touch("/PersonalMenu.DD.Z","+T");97  Touch("/Home/PersonalMenu.DD.Z","+T");98 99  DelTree("/Demo/AcctExample");100  CopyTree("/Home","/Demo/AcctExample");101  DelTree("/Demo/AcctExample/ALM");102  DelTree("/Demo/AcctExample/TAD");103  DelTree("/Demo/AcctExample/Sup1");104  DelTree("/Demo/AcctExample/Books1");105  DelTree("/Demo/AcctExample/Books2");106  DelTree("/Demo/AcctExample/Web");107  Del("/Demo/AcctExample/Test*");108  Copy("/Home/Web/index.DD.Z",109        "/Demo/ToHtmlToTXTDemo/DemoInPage.DD.Z");110  if (FileFind("~/Sup1/Sup1Utils/SortHeaders.HC.Z"))111    ExeFile("~/Sup1/Sup1Utils/SortHeaders.HC.Z");112 113  if (FileFind("~/Sup1/Sup1Blog/YouTube.DD.Z"))114    Sort("~/Sup1/Sup1Blog/YouTube.DD.Z",,2);115 116  //Once in a while, do ~/Sup1/Sup1Utils/DblSpaceScan.HC.117 118  CursorRem("/*");119  DelTree("/Demo/*.BI*");120  S2T("/*","+r+S");121  DocOpt("/*","+R");122  Move(ACD_DEF_FILENAME,ACD_DEF_FILENAME_Z);123}124 125U0 DbgDistroFilePrep()126{127  CBlkDev *bd;128  if (!Let2Drv('A',FALSE)) {129    In(CFG_DBG_DISTRO "\n");130    Mount;131  }132  bd=Let2BlkDev('A');133  Fmt('A',,FALSE,FSt_REDSEA);134 135  DirMk("A:/Compiler");136  Copy("C:/Compiler/Compiler.BIN.Z",    "A:/Compiler");137  Copy("C:/Compiler/OpCodes.DD.Z",      "A:/Compiler");138  Copy("C:/Compiler/CompilerA.HH.Z",    "A:/Compiler");139  Copy("C:/Compiler/CompilerB.HH.Z",    "A:/Compiler");140 141  DirMk("A:/Kernel");142  Copy("C:/Kernel/*.HH*",               "A:/Kernel");143  CopyTree("C:/Kernel/BlkDev",          "A:/Kernel/BlkDev");144 145  Copy("C:/Home/Sup1/Sup1Distro/DbgStartOS.HC.Z","A:/StartOS.HC.Z");146 147  DirMk("A:/Adam");148  Copy("C:/Home/Sup1/Sup1Distro/DbgMakeAdam.HC.Z","A:/Adam/MakeAdam.HC.Z");149  Copy("C:/Home/Sup1/Sup1Distro/DbgMount.HC.Z","A:/Adam");150  Copy("C:/Adam/AExts.HC.Z",    "A:/Adam");151  Copy("C:/Adam/AMath.HC.Z",    "A:/Adam");152  Copy("C:/Adam/Training.HC.Z","A:/Adam");153  Copy("C:/Adam/AMem.HC.Z",     "A:/Adam");154  Copy("C:/Adam/TaskRep.HC.Z",  "A:/Adam");155 156  FileWrite("C:" CFG_DBG_DISTRO_FILE,157        bd->RAM_dsk,(bd->max_blk+1)<<BLK_SIZE_BITS);158}159 160U0 MakeSymFiles()161{162  CDoc *doc;163  U8 *st;164 165  DocClear;166  DocMax;167  HashTablePurge(adam_task->hash_table);168  Who;169  if (doc=DocPut) {170    st=StrNew(doc->filename.name);171    StrCpy(doc->filename.name,"D:/Wb/Home/Web/SymsAlpha.DD.Z");172    DocWrite(doc);173    StrCpy(doc->filename.name,st);174    Free(st);175  }176  DocClear;177  DocMax;178  Who("+m");179  if (doc=DocPut) {180    st=StrNew(doc->filename.name);181    StrCpy(doc->filename.name,"D:/Wb/Home/Web/SymsAddress.DD.Z");182    DocWrite(doc);183    StrCpy(doc->filename.name,st);184    Free(st);185  }186  DocClear;187}188 189I64 MakeLineRepFile()190{191  U8 *st;192  CDoc *doc;193  I64 res,official;194 195  DocClear;196  Drv('C');197  DistroPrep;198 199  Cd("C:/");200  DelTree("B:/TOS/TOS");201  CopyTree("C:/Home","B:/TOS/TOS");202  DelTree("C:/Home");203 204  DocMax;205  DocClear;206  res=LineRep;207  if (doc=DocPut) {208    st=StrNew(doc->filename.name);209    StrCpy(doc->filename.name,"B:/TOS/TOS/Web/LineRep.DD.Z");210    DocWrite(doc);211    StrCpy(doc->filename.name,st);212    Free(st);213  }214  DocClear;215  official=LineRep("C:/*","-r")+216        LineRep("C:/Adam/*")+217        LineRep("C:/Compiler/*","-S+$")+218        LineRep("C:/Kernel/*");219  DocClear;220  CopyTree("B:/TOS/TOS","C:/Home");221  DelTree("B:/TOS/TOS");222 223  DocTreeFWrite("C:/Adam/ADefine.HC.Z","LineRep",224        "DefinePrint(\"DD_TEMPLEOS_LOC\",\"%,d\");\n",res);225  DocTreeFAppend("C:/Adam/ADefine.HC.Z","LineRep",226        "DefinePrint(\"DD_TEMPLEOS_LOC_OFFICIAL\",\"%,d\");\n",official);227 228  DefinePrint("DD_TEMPLEOS_LOC","%,d",res);229  DefinePrint("DD_TEMPLEOS_LOC_OFFICIAL","%,d",official);230 231  "Total LOC:%12,d\n\n",res;232  return res;233}234 235U0 StaffDistroPrep()236{237  Drv('C');238  DistroPrep;239  In(TOS_DVD_CFG);240  BootDVDIns('C');241  Fmt('B',,FALSE,FSt_REDSEA);242  DelTree(TOS_DISTRO_DIR);243  CopyTree("C:/",TOS_DISTRO_DIR "/");244  DelTree(TOS_DISTRO_DIR "/Home/Sup1");245  DelTree(TOS_DISTRO_DIR "/Home/Books1");246  DelTree(TOS_DISTRO_DIR "/Home/Books2");247  Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);248}249U0 MakeStaffDistro()250{251  StaffDistroPrep;252  ISO9660ISO(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,253        TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);254  DefinePrint("DD_TEMPLEOS_STAFF_SIZE",255        "Download TempleOS V5.03 - T.S. Company Internal Distro (%0.1fMB)",256        0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));257  Drv('C');258}259 260U0 DbgDistroPrep()261{262  Drv('C');263  DistroPrep;264  DbgDistroFilePrep;265  In(TOS_DVD_DBG_CFG);266  BootDVDIns('C');267  Fmt('B',,FALSE,FSt_REDSEA);268  DelTree(TOS_DISTRO_DIR);269  CopyTree("C:/",TOS_DISTRO_DIR "/");270  DelTree(TOS_DISTRO_DIR "/Home");271  DirMk(TOS_DISTRO_DIR "/Home");272  Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);273  Del(TOS_DISTRO_DIR BOOT_DIR "/OldMBR.BIN.C");274  Del(TOS_DISTRO_DIR BOOT_DIR "/BootMHD2.BIN.C");275}276U0 MakeDbgDistro()277{278  DbgDistroPrep;279  ISO9660ISO(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,280        TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);281  DefinePrint("DD_TEMPLEOS_DBG_SIZE",282        "Download TempleOS V5.03 - Debug Distro (%0.1fMB)",283        0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));284  Drv('C');285}286 287U0 StdDistroPrep()288{289  Drv('C');290  DistroPrep;291  In(STD_DISTRO_DVD_CFG);292  BootDVDIns('C');293  Fmt('B',,FALSE,FSt_REDSEA);294  DelTree(TOS_DISTRO_DIR);295  CopyTree("C:/",TOS_DISTRO_DIR "/");296  DelTree(TOS_DISTRO_DIR "/Home");297  DirMk(TOS_DISTRO_DIR "/Home");298  Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);299  Del(TOS_DISTRO_DIR BOOT_DIR "/OldMBR.BIN.C");300  Del(TOS_DISTRO_DIR BOOT_DIR "/BootMHD2.BIN.C");301}302U0 MakeStdDistro()303{304  StdDistroPrep;305  ISO9660ISO(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,306        TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);307  DefinePrint("DD_TEMPLEOSCD_SIZE",308        "Download TempleOS V5.03 - Standard Distro (%0.1fMB)",309        0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));310  Drv('C');311}312U0 MakeStdRedSeaDistro()313{314  StdDistroPrep;315  RedSeaISO(TOS_ISO_C_NAME,TOS_DISTRO_DIR,TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);316  DefinePrint("DD_TEMPLEOSCD_RS_SIZE",317        "Download TempleOS V5.03 - Standard RedSea Distro (%0.1fMB)",318        0.1*(10*Size(TOS_ISO_C_NAME,"+s")/1024/1024));319  Drv('C');320}321 322U0 UltraDistroPrep()323{324  StdDistroPrep;325  DelTree(TOS_DISTRO_DIR "/Linux");326  Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);327  Del(TOS_DISTRO_DIR "/Adam/AutoComplete/ACDefs.DATA*");328  Del(TOS_DISTRO_DIR "/Misc/PCIDevices.DD.Z");329  Del(TOS_DISTRO_DIR "/Misc/Bible.TXT.Z");330 331  DelTree(TOS_DISTRO_DIR "/Apps");332  DirMk(TOS_DISTRO_DIR "/Apps");333  DelTree(TOS_DISTRO_DIR "/Demo");334  DelTree(TOS_DISTRO_DIR "/Misc/Tour");335  Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);336  Del(TOS_DISTRO_DIR "/Adam/AutoComplete/ACWords.DATA*");337  Del(TOS_DISTRO_DIR "/Adam/God/Vocab.DD.Z");338  Del(TOS_DISTRO_DIR "/Misc/OSTestSuite.HC.Z");339  Copy("C:/Home/Sup1/Sup1Distro/UltraMenu.DD.Z",340        TOS_DISTRO_DIR "/PersonalMenu.DD.Z");341  Copy("C:/Demo/Games/Talons.HC.Z",342        TOS_DISTRO_DIR "/Misc");343}344U0 MakeUltraDistro()345{346  UltraDistroPrep;347  ISO9660ISO(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,348        TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);349  DefinePrint("DD_TEMPLEOS_ULTRA_SIZE",350        "Download TempleOS V5.03 - UltraSmall Distro (%0.2fMB)",351        0.01*(100*Size(TOS_ISO_NAME,"+s")/1024/1024));352  Drv('C');353}354U0 MakeUltraRedSeaDistro()355{356  UltraDistroPrep;357  RedSeaISO(TOS_ISO_C_NAME,TOS_DISTRO_DIR,TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);358  DefinePrint("DD_TEMPLEOS_ULTRA_RS_SIZE",359        "Download TempleOS V5.03 - UltraSmall RedSea Distro (%0.2fMB)",360        0.01*(100*Size(TOS_ISO_C_NAME,"+s")/1024/1024));361  Drv('C');362}363 364U0 UpdateISODocDefines()365{366  try {367#if MAKE_STD368    DefinePrint("DD_TEMPLEOSCD_SIZE",369          "Download TempleOS V5.03 - Standard Distro (%0.1fMB)",370          0.1*(10*Size("D:/Wb/TempleOSCD.ISO","+s")/1024/1024));371    DefinePrint("DD_TEMPLEOSCD_K_SIZE",372          "%dKB",Size("D:/Wb/TempleOSCD.ISO","+s")/1024);373#endif374#if MAKE_STD_RS375    DefinePrint("DD_TEMPLEOSCD_RS_SIZE",376          "Download TempleOS V5.03 - Standard RedSea Distro (%0.1fMB)",377          0.1*(10*Size("D:/Wb/TempleOSCDRS.ISO","+s")/1024/1024));378    DefinePrint("DD_TEMPLEOSCD_RS_K_SIZE",379          "%dKB",Size("D:/Wb/TempleOSCDRS.ISO","+s")/1024);380#endif381#if MAKE_ULTRA382    DefinePrint("DD_TEMPLEOS_ULTRA_SIZE",383          "Download TempleOS V5.03 - UltraSmall Distro (%0.2fMB)",384          0.01*(100*Size("D:/Wb/TempleOSUltra.ISO","+s")/1024/1024));385    DefinePrint("DD_TEMPLEOS_ULTRA_K_SIZE",386          "%dKB",Size("D:/Wb/TempleOSUltra.ISO","+s")/1024);387#endif388#if MAKE_ULTRA_RS389    DefinePrint("DD_TEMPLEOS_ULTRA_RS_SIZE",390          "Download TempleOS V5.03 - UltraSmall RedSea Distro (%0.2fMB)",391          0.01*(100*Size("D:/Wb/TempleOSUltraRS.ISO","+s")/1024/1024));392    DefinePrint("DD_TEMPLEOS_ULTRA_RS_K_SIZE",393          "%dKB",Size("D:/Wb/TempleOSUltraRS.ISO","+s")/1024);394#endif395  } catch396    Fs->catch_except=TRUE;397}398UpdateISODocDefines;399 400 401I64 tos_progress;402F64 tos_progress_t0;403 404U0 TOSProgress(U8 *st)405{406  U8 buf[STR_LEN];407  progress4=tos_progress;408  progress3_max=1;409  *progress4_desc=0;410  progress4_max=13+MAKE_STD+MAKE_STD_RS+MAKE_ULTRA+MAKE_ULTRA_RS+MAKE_SUP1+411        MAKE_WEB+MAKE_BOOKS1+MAKE_BOOKS2+MAKE_DBG+MAKE_STAFF+PROFANITY_CHK;412  progress4_t0=tos_progress_t0;413  StrPrint(buf,"%d. %s",++progress4,st);414  "$PURPLE$$TX+CX,\"%s\"$$FG$\n",buf;415  StrCpy(progress3_desc,buf);416  tos_progress=progress4;417}418 419I64 TOSProfanity()420{421  I64 res;422  if (res=Profanity(,"D:/Wb/*;"423        "!*/Misc/PCIDevices.DD*;!*/Misc/Bible.TXT*;"424        "!*/Books?/*;!*/Sup1/Sup1Words/*;!*/Sup1/Sup1Blog/Profanity.DD*;"425        "!*/Sup1/Sup1Blog/NumBible.TXT*;!*/God/Vocab.DD*")) {426    while (PressAKey!=CH_SHIFT_ESC) {427      ProgressBarsRst;428      if (Profanity(,"C:/Home/*;"429            "!*/Misc/PCIDevices.DD*;!*/Misc/Bible.TXT*;"430            "!*/Books?/*;!*/Sup1/Sup1Words/*;!*/Sup1/Sup1Blog/Profanity.DD*;"431            "!*/Sup1/Sup1Blog/NumBible.TXT*;!*/God/Vocab.DD*")) {432        "\n\nEdit profanity and press ESC.\n";433        if (!View)434          break;435        DocBottom;436      } else437        break;438    }439  }440  return res;441}442 443U0 TOSRegen3()444{445  I64 slash_home=0;446  SettingsPush; //See SettingsPush447  tos_progress=-1;448  tos_progress_t0=tS;449  RegExe("TempleOS/TOSRegen");450 451  TOSProgress("DskChk All");452  AutoComplete;453  WinBorder;454  WinMax;455  DskChkAll;456 457  TOSProgress("Make LineRep");458  MakeLineRepFile;459 460  TOSProgress("Copy C to D");461  TOSCopyDrv('C','D');462 463  TOSProgress("Del D:/Wb");464  DelTree ("D:/Wb");465 466  TOSProgress("Copy C to D:/Wb");467  CopyTree("C:/","D:/Wb");468  DocClear;469 470#if MAKE_STD471  TOSProgress("Make Standard Distro ISO");472  MakeStdDistro;473  DocClear;474  Move(TOS_ISO_NAME,"D:/Wb/TempleOSCD.ISO");475#endif476#if MAKE_STD_RS477  TOSProgress("Make Standard RedSea Distro ISO");478  MakeStdRedSeaDistro;479  DocClear;480  Move(TOS_ISO_C_NAME,"D:/Wb/TempleOSCDRS.ISO");481#endif482#if MAKE_ULTRA483  TOSProgress("Make Ultra Distro ISO");484  MakeUltraDistro;485  DocClear;486  Move(TOS_ISO_NAME,"D:/Wb/TempleOSUltra.ISO");487#endif488#if MAKE_ULTRA_RS489  TOSProgress("Make Ultra RedSea Distro ISO");490  MakeUltraRedSeaDistro;491  DocClear;492  Move(TOS_ISO_C_NAME,"D:/Wb/TempleOSUltraRS.ISO");493#endif494#if MAKE_DBG495  TOSProgress("Make Dbg Distro ISO");496  MakeDbgDistro;497  DocClear;498  Move(TOS_ISO_NAME,"D:/Wb/TempleOSDbg.ISO");499#endif500#if MAKE_STAFF501  TOSProgress("Make Staff Distro ISO");502  MakeStaffDistro;503  DocClear;504  Move(TOS_ISO_NAME,"D:/Wb/TempleOSStaff.ISO");505#endif506 507#if MAKE_SUP1508  TOSProgress("Make Supplemental #1 ISO");509  RedSeaISO("D:/Wb/TempleOSSup1","C:/Home/Sup1");510#endif511#if MAKE_WEB512  TOSProgress("Make www.templeos.org ISO");513  RedSeaISO("D:/Wb/TempleOSWeb","C:/Home/Web");514#endif515#if MAKE_BOOKS1516  TOSProgress("Make Books #1 ISO");517  RedSeaISO("D:/Wb/TempleOSBooks1","C:/Home/Books1");518#endif519#if MAKE_BOOKS2520  TOSProgress("Make Books #2 ISO");521  RedSeaISO("D:/Wb/TempleOSBooks2","C:/Home/Books2");522#endif523 524  UpdateISODocDefines;525  Cd("C:/");526  DocClear;527 528  TOSProgress("Check for Long Lines");529  if (LongLines)530    throw;531 532  DocClear;533  TOSProgress("Check for Broken DolDoc Links");534  if (LinkChk)535    throw;536 537  DocClear;538  TOSProgress("Make Symbol Files");539  MakeSymFiles;540 541  DocClear;542  TOSProgress("Freshen WebSite");543  FreshenSite;544 545#if PROFANITY_CHK546  DocClear;547  TOSProgress("Check WebSite for Profanity");548  if (TOSProfanity)549    throw;550#endif551 552  TOSProgress("Find /Home");553  slash_home=F2("/Home","-i+la");554 555  TOSProgress("DskChk All");556  Drv('C');557  DskChkAll;558 559  TOSProgress("Done");560  SettingsPop;561  "F2(\"/Home\") Cnt\t:%d\n",slash_home;562  "Elapsed Time\t:%5.3fs\n",tS-progress4_t0;563  ProgressBarsRst("TempleOS/TOSRegen");564}565 566public U0 TOSPreRegen()567{//Copy bookmarks and bins from D:/Home/Sup1 to C:/Home/Sup1568  Copy("D:/Home/" INS_REG_PERSONAL_INITIALS "/*",569        "C:/Home/" INS_REG_PERSONAL_INITIALS);570  Copy("D:/Home/Sup1/Sup1Blog/Bookmarks.html","C:/Home/Sup1/Sup1Blog");571  DelTree("C:/Home/Sup1/Sup1Bin");572  CopyTree("D:/Home/Sup1/Sup1Bin","C:/Home/Sup1/Sup1Bin");573  Copy("D:/Home/Sup1/Sup1CodeScraps/Comm/TOSSocket*",574        "C:/Home/Sup1/Sup1CodeScraps/Comm");575  Copy("D:/Home/Sup1/Sup1Bin/God*","C:/Linux");576}577 578public U0 TOSHomeIn()579{//Copy D:/Home to C:/Home580  DelTree("C:/Home");581  CopyTree("D:/Home","C:/Home");582}583 584public U0 TOSHomeOut()585{//Copy C:/Home to D:/Home586  DelTree("D:/Home");587  CopyTree("C:/Home","D:/Home");588}589 590public U0 TOSSongsIn()591{//Copy songs from D:/Home/Sup1 to C:/Home/Sup1592  Del("C:/Home/Sup1/Sup1Hymns/*");593  Copy("D:/Home/Sup1/Sup1Hymns/*","C:/Home/Sup1/Sup1Hymns");594}595 596public U0 TOSSongsOut()597{//Copy songs from C:/Home/Sup1 to D:/Home/Sup1598  Del("D:/Home/Sup1/Sup1Hymns/*");599  Copy("C:/Home/Sup1/Sup1Hymns/*","D:/Home/Sup1/Sup1Hymns");600}601 602U0 TOSRegen2()603{604  TOSChgLog; //::/Doc/ChgLog.DD datetime matches Kernel sys_compile_time.605  TOSBootHDIns('C');606  Once("TOSRegen3;");607  BootRAM("C:/Kernel/" KERNEL_BIN_C); //Boot new Kernel and Compiler.608}609 610public U0 TOSRegen()611{//Generate distro ISO's and website image, D:/Wb.612  TOSBootHDIns('C');613  Once("TOSRegen2;");614  BootRAM("C:/Kernel/" KERNEL_BIN_C); //Boot to load TOS_CFG.615}616