TempleOSCDV4.11.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:47:50 +02:00
1 parent 9206246147
commit 93ca216483
662 files changed
+6431 -7369

No files matched your search

@@ -3,9 +3,9 @@
//This file is executed by the
//first terminal window upon start-up.
//See $LK,"DoOnce",A="FF:/Home/HomeSys.CPP,DoOnce"$ and $LK,"Home Files",A="FF:::/Doc/GuideLines.TXT,/Home Files"$.
//See $LK,"DoOnce",A="FF:/Home/HomeSys.HC,DoOnce"$ and $LK,"Home Files",A="FF:::/Doc/GuideLines.DD,/Home Files"$.
// Type("::/Doc/Customize.TXT");
// Type("::/Doc/Customize.DD");
U0 DoOnce()
{
@@ -28,8 +28,8 @@ U0 DoOnce()
);
break;
}
Del("C:/Home/DoDistro.CPP.Z");
Del("D:/Home/DoDistro.CPP.Z");
Del("C:/Home/DoDistro.HC.Z");
Del("D:/Home/DoDistro.HC.Z");
"\n\n\nAfter Reboot be sure to run MakeDistrosAndBackUp.\n\n";
PressAKey;
Reboot; //Too dangerous for amateurs until reboot.
@@ -40,7 +40,7 @@ U0 DoOnce()
if (FileFind("D:/Temp/Logs/access.log")) {
Auto("\n\n%C",CH_ESC);
RunFile("::/Demo/WebLogDemo/WebLogRep",,
"D:/Temp/Logs/*.log","D:/Temp/LogRep.TXT");
"D:/Temp/Logs/*.log","D:/Home/WebLogRep.DD");
Del("D:/Temp/Logs/*.log");
}
}
@@ -58,7 +58,7 @@ Bool MyPutKey(I64 ch,I64 sc)
{//ch=ASCII; sc=scan_code
//See $LK,"Char",A="HI:Char"$ for definition of scan codes.
//See $LK,"Key Allocations",A="FI:::/Doc/KeyAlloc.TXT"$.
//See $LK,"Key Allocations",A="FI:::/Doc/KeyAlloc.DD"$.
//See $LK,"Keyboard Devices",A="HI:Keyboard Devices/System"$.
//You can customize keys. This routine
@@ -147,9 +147,9 @@ Bool MyPutKey(I64 ch,I64 sc)
case SC_F6:
if (sc&SCF_SHIFT) {
if (sc&SCF_KEY_DESC)
KeyDescSet("Cmd /Ins My URL");
KeyDescSet("Cmd /Ins Misc");
else
InsMyURL;
TOSInsMisc;
} else {
if (sc&SCF_KEY_DESC)
KeyDescSet("Cmd /Ins Datetime");
@@ -158,15 +158,11 @@ Bool MyPutKey(I64 ch,I64 sc)
}
return TRUE;
case SC_F7:
//$LK,"::/Adam/God/HSNotes.TXT"$
if (sc&SCF_SHIFT) {
if (sc&SCF_KEY_DESC)
KeyDescSet("Cmd /God Book Passage");
else {
FifoU8Flush(god.fifo);
GodBitsIns(GOD_GOOD_BITS,KbdMouseEvtTime>>GOD_BAD_BITS);
GodBooksPassage("C:/Home/Sup1/Sup1Texts/*");
}
KeyDescSet("Cmd /God Misc");
else
GodMisc;
} else {
if (sc&SCF_KEY_DESC)
KeyDescSet("Cmd /God Doodle File");
@@ -308,8 +304,8 @@ Bool MyPutKey(I64 ch,I64 sc)
case 'b':
if (sc&SCF_KEY_DESC)
KeyDescSet("Cmd /Jump to Bad Code");
else //$LK,"::/Adam/God/HSNotes.TXT"$
BadCodeJump;
else //$LK,"::/Adam/God/HSNotes.DD"$
GodCodeJmp;
return TRUE;
case 'g':
if (sc&SCF_KEY_DESC)
File renamed without changes.
@@ -4,12 +4,12 @@
U0 UserStartUp()
{//Run each time a user a spawned
DocTermNew;
Type("::/Doc/Start.TXT");
Type("::/Doc/Start.DD");
LBts(&Fs->display_flags,DISPLAYf_SHOW);
WinToTop;
WinZBufUpdate;
Dir;
"$TX,"81,125",D="DD_TEMPLEOS_LOC_OFFICIAL"$LOC:";
"$TX,"81,208",D="DD_TEMPLEOS_LOC_OFFICIAL"$LOC:";
CPURep;
}
@@ -32,7 +32,7 @@ U0 StartUpTasks()
"Boot Time:%7.3fs\n",tS;
XTalk(user1,"Cd;#include \"DoOnce\";\n");
Silent;
ACInit("/*;!*/Bible.TXT*;!*.TXT*"); //No Bible, no uncompressed TXT.
ACInit("/*;!*/Bible.TXT*;!*.TXT"); //No Bible, no uncompressed DD.
Silent(OFF);
"AutoComplete Time:%7.3fs\n",tS;
}
@@ -1,8 +1,8 @@
#help_index "Cmd Line (Typically)"
#define FILEMASK_OFF_LIMITS "!*/Misc/PCIDevices.TXT*;!*/Misc/Bible.TXT*;"\
#define FILEMASK_OFF_LIMITS "!*/Misc/PCIDevices.DD*;!*/Misc/Bible.TXT*;"\
"!*/Sup1/Sup1Texts/*;!*/Sup1/Sup1Words/*;!*/Sup1/Sup1Bin/*;"\
"!*/God/Vocab.TXT*"
"!*/God/Vocab.DD*"
public I64 F(U8 *needle_str,U8 *fu_flags=NULL)
{//Find text in all text files.
File renamed without changes.
@@ -2,16 +2,16 @@ $MA,"Cd ",LM="Cd;Dir;\n"$$MA,"DrvC ",LM="Drv('C');\n"$$MA,"DrvD ",LM=
$MA,"MakeC ",LM="TOSBootHDIns('C');\n"$$MA+PU,"BootC ",LM="BootRAM(\"C:/Kernel.BIN.C\");"$$MA,"MakeBack",LM="MakeDistrosAndBackUp;\n"$$MA,"PreBack ",LM="PreBackUp;\n"$$MA,"MakeD ",LM="TOSBootHDIns('D');\n"$$MA+PU,"BootD ",LM="BootRAM(\"D:/Kernel.BIN.C\");"$$MA,"CopyDrv ",LM="TOSPromptAndCopyDrv;\n"$$MA,"MakeWeb ",LM="MakeWebSitePartial;\n"$
$MA,"Kernel ",LM="Cd(\"/Kernel\");Dir;\n"$$MA,"Compiler",LM="Cd(\"/Compiler\");Dir;\n"$$MA,"BlkDev ",LM="Cd(\"/Kernel/BlkDev\");Dir;\n"$$MA,"Mem ",LM="Cd(\"/Kernel/Mem\");Dir;\n"$$MA,"Serial ",LM="Cd(\"/Kernel/SerialDev\");Dir;\n"$$MA,"Bin ",LM="Cd(\"/Home/Sup1/Sup1Bin\");Dir;\n"$$MA,"HDAudio ",LM="Cd(\"/Home/Sup1/Sup1HDAudio\");Dir;\n"$$MA,"Examples",LM="Cd(\"/Home/Sup1/Sup1HDAudio/Examples\");Dir;\n"$
$MA,"Adam ",LM="Cd(\"/Adam\");Dir;\n"$$MA,"AutoComp",LM="Cd(\"/Adam/AutoComplete\");Dir;\n"$$MA,"Ctrls ",LM="Cd(\"/Adam/Ctrls\");Dir;\n"$$MA,"ABlkDev ",LM="Cd(\"/Adam/ABlkDev\");Dir;\n"$$MA,"DolDoc ",LM="Cd(\"/Adam/DolDoc\");Dir;\n"$$MA,"Gr ",LM="Cd(\"/Adam/Gr\");Dir;\n"$$MA,"God ",LM="Cd(\"/Adam/God\");Dir;\n"$$MA,"Snd ",LM="Cd(\"/Adam/Snd\");Dir;\n"$$MA,"Boot ",LM="Cd(\"/Adam/Opt/Boot\");Dir;\n"$$MA,"Utils ",LM="Cd(\"/Adam/Opt/Utils\");Dir;\n"$
$LK+X,"ChangeLg",A="FI:::/Doc/ChangeLog.TXT"$$MA,"Blog ",LM="Blog;\n"$$MA,"EdGod ",LM="Ed(\"D:/Home/God.TXT\");\n"$$MA,"BlogDir ",LM="Cd(\"/Home/Web/TAD/BlogDir\");Dir;\n"$$MA,"Partial ",LM="MakeWebSitePartial;\n"$$MA,"CodeWalk",LM="CodeWalkThru;\n"$$MA,"AfterEgp",LM="AfterEgyptInAction;\n"$$MA,"TOSTheme",LM="TempleOSTheme;\n"$$MA,"Sup1Vids",LM="Cd(\"/Home/Sup1/Sup1Videos\");Dir;\n"$
$MA,"Web ",LM="Cd(\"/Home/Web\");Dir;\n"$$MA,"TAD ",LM="Cd(\"/Home/Web/TAD\");Dir;\n"$$MA,"Sup1 ",LM="Cd(\"/Home/Sup1\");Dir;\n"$$MA,"Blog ",LM="Cd(\"/Home/Sup1/Sup1Blog\");Dir;\n"$$MA,"Code ",LM="Cd(\"/Home/Sup1/Sup1CodeScraps\");Dir;\n"$$MA,"Dist ",LM="Cd(\"/Home/Sup1/Sup1Distro\");Dir;\n"$$MA,"Game ",LM="Cd(\"/Home/Sup1/Sup1Games\");Dir;\n"$$MA,"Graphics",LM="Cd(\"/Home/Sup1/Sup1Graphics\");Dir;\n"$$MA,"Psalmody",LM="Cd(\"/Home/Sup1/Sup1Psalmody\");Dir;\n"$$MA,"Utils ",LM="Cd(\"/Home/Sup1/Sup1Utils\");Dir;\n"$
$LK+X,"ChangeLg",A="FI:::/Doc/ChangeLog.DD"$$MA,"Blog ",LM="Blog;\n"$$MA,"EdGod ",LM="Ed(\"D:/Home/God.DD\");\n"$$MA,"BlogDir ",LM="Cd(\"/Home/Web/TAD/BlogDir\");Dir;\n"$$MA,"Partial ",LM="MakeWebSitePartial;\n"$$MA,"CodeWalk",LM="CodeWalkThru;\n"$$MA,"AfterEgp",LM="AfterEgyptInAction;\n"$$MA,"TOSTheme",LM="TempleOSTheme;\n"$$MA,"Videos ",LM="Cd(\"/Home/Sup1/Sup1Videos\");Dir;\n"$
$MA,"Web ",LM="Cd(\"/Home/Web\");Dir;\n"$$MA,"TAD ",LM="Cd(\"/Home/Web/TAD\");Dir;\n"$$MA,"Sup1 ",LM="Cd(\"/Home/Sup1\");Dir;\n"$$MA,"Blog ",LM="Cd(\"/Home/Sup1/Sup1Blog\");Dir;\n"$$MA,"Code ",LM="Cd(\"/Home/Sup1/Sup1CodeScraps\");Dir;\n"$$MA,"Dist ",LM="Cd(\"/Home/Sup1/Sup1Distro\");Dir;\n"$$MA,"Games ",LM="Cd(\"/Home/Sup1/Sup1Games\");Dir;\n"$$MA,"Graphics",LM="Cd(\"/Home/Sup1/Sup1Graphics\");Dir;\n"$$MA,"Psalmody",LM="Cd(\"/Home/Sup1/Sup1Psalmody\");Dir;\n"$$MA,"Utils ",LM="Cd(\"/Home/Sup1/Sup1Utils\");Dir;\n"$
$MA,"Apps ",LM="Cd(\"/Apps\");Dir;\n"$$MA,"AfterEgp",LM="Cd(\"/Apps/AfterEgypt\");Dir;\n"$$MA,"Budget ",LM="Cd(\"/Apps/Budget\");Dir;\n"$$MA,"GrModels",LM="Cd(\"/Apps/GrModels\");Dir;\n"$$MA,"KeepAway",LM="Cd(\"/Apps/KeepAway\");Dir;\n"$$MA,"Logic ",LM="Cd(\"/Apps/Logic\");Dir;\n"$$MA,"Psalmody",LM="Cd(\"/Apps/Psalmody\");Dir;\n"$$MA,"Span ",LM="Cd(\"/Apps/Span\");Dir;\n"$$MA,"Strut ",LM="Cd(\"/Apps/Strut\");Dir;\n"$$MA,"TimeClk ",LM="Cd(\"/Apps/TimeClock\");Dir;\n"$
$MA,"TimeOut ",LM="Cd(\"/Apps/TimeOut\");Dir;\n"$$MA,"ToTheFrt",LM="Cd(\"/Apps/ToTheFront\");Dir;\n"$$MA,"Vocab ",LM="Cd(\"/Apps/Vocabulary\");Dir;\n"$$MA,"XCaliber",LM="Cd(\"/Apps/X-Caliber\");Dir;\n"$$SP,"",BI=1$
$MA,"Demo ",LM="Cd(\"/Demo\");Dir;\n"$$MA,"AcctEmpl",LM="Cd(\"/Demo/AcctExample\");Dir;\n"$$MA,"Asm ",LM="Cd(\"/Demo/Asm\");Dir;\n"$$MA,"AutoFile",LM="Cd(\"/Demo/AutoFile\");Dir;\n"$$MA,"DocDoc ",LM="Cd(\"/Demo/DolDoc\");Dir;\n"$$MA,"Dsk ",LM="Cd(\"/Demo/Dsk\");Dir;\n"$$MA,"Games ",LM="Cd(\"/Demo/Games\");Dir;\n"$$MA,"Graphics",LM="Cd(\"/Demo/Graphics\");Dir;\n"$$MA,"Lectures",LM="Cd(\"/Demo/Lectures\");Dir;\n"$$MA,"MultCore",LM="Cd(\"/Demo/MultiCore\");Dir;\n"$
$MA,"RevFile ",LM="Cd(\"/Demo/RevFileDemo\");Dir;\n"$$MA,"Snd ",LM="Cd(\"/Demo/Snd\");Dir;\n"$$MA,"SortFile",LM="Cd(\"/Demo/SortFileDemo\");Dir;\n"$$MA,"Template",LM="Cd(\"/Demo/Templates\");Dir;\n"$$MA,"HtmlTXT ",LM="Cd(\"/Demo/ToHtmlToTXTDemo\");Dir;\n"$$MA,"WebLog ",LM="Cd(\"/Demo/WebLogDemo\");Dir;\n"$$MA,"Stadium ",LM="Cd(\"/Demo/Games/Stadium\");Dir;\n"$
$MA,"Doc ",LM="Cd(\"/Doc\");Dir;\n"$$MA,"Misc ",LM="Cd(\"/Misc\");Dir;\n"$$MA,"Tour ",LM="Cd(\"/Misc/Tour\");Dir;\n"$$MA,"Temp ",LM="Cd(\"/Temp\");Dir;\n"$$MA,"ScrnShot",LM="Cd(\"/Temp/ScreenShots\");Dir;\n"$$MA,"DelScrSt",LM="Del(\"D:/Temp/*.SND\");DelTree(\"D:/Temp/ScreenShots\");MkDir(\"D:/Temp/ScreenShots\");Del(\"C:/Temp/*.SND\");DelTree(\"C:/Temp/ScreenShots\");MkDir(\"C:/Temp/ScreenShots\");\n"$$MA,"0000Boot",LM="Cd(\"/0000Boot\");Dir;\n"$$MA,"Linux ",LM="Cd(\"/Linux\");Dir;\n"$
$MA,"LinxDict",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/LinuxDict.TXT**\\\");\");\n"$$MA,"August ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/AugustWords.TXT**\\\");\");\n"$$MA,"Happy ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/HappyWords.TXT*\\\");\");\n"$$MA,"Bible ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/BibleWords.TXT*\\\");\");\n"$$MA,"Huck ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/HuckWords.TXT*\\\");\");\n"$$MA,"Ingreds ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/Ingredients.TXT*\\\");\");\n"$$MA,"Chess ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/Chess.TXT*\\\");\");\n"$$MA,"Texts ",LM="Cd(\"/Home/Sup1/Sup1Texts\");Dir;\n"$$MA,"Words ",LM="Cd(\"/Home/Sup1/Sup1Words\");Dir;\n"$
$MA,"MakeStd ",LM="MakeStdDistro; MkDir(\"D:/Wb\"); Move(TOS_ISO_NAME,\"D:/Wb/TempleOSCD.ISO\");\n"$$MA,"MakeStRS",LM="MakeStdRedSeaDistro; MkDir(\"D:/Wb\"); Move(TOS_ISO_C_NAME,\"D:/Wb/TempleOSCDRS.ISO\");\n"$$MA,"MakeUlt ",LM="MakeUltraDistro; MkDir(\"D:/Wb\"); Move(TOS_ISO_NAME,\"D:/Wb/TempleOSUltra.ISO\");\n"$$MA,"MakeUtRS",LM="MakeUltraRedSeaDistro; MkDir(\"D:/Wb\"); Move(TOS_ISO_C_NAME,\"D:/Wb/TempleOSUltraRS.ISO\");\n"$$MA,"MakeStaf",LM="MakeStaffDistro; MkDir(\"D:/Wb\"); Move(TOS_ISO_NAME,\"D:/Wb/TempleOSStaff.ISO\");\n"$$MA,"MakeDbg ",LM="MakeDbgDistro; MkDir(\"D:/Wb\"); Move(TOS_ISO_NAME,\"D:/Wb/TempleOSDbg.ISO\");\n"$
$MA,"BurnStd ",LM="MakeStdDistro; DVDImageWrite('T',TOS_ISO_NAME);\n"$$MA,"BurnStRS",LM="MakeStdRedSeaDistro; DVDImageWrite('T',TOS_ISO_C_NAME);\n"$$MA,"BurnUlt ",LM="MakeUltraDistro;DVDImageWrite('T',TOS_ISO_NAME);\n"$$MA,"BurnUtRS",LM="MakeUltraRedSeaDistro;DVDImageWrite('T',TOS_ISO_C_NAME);\n"$$MA,"BurnStaf",LM="MakeAStaffDistro; DVDImageWrite('T',TOS_ISO_NAME);\n"$$MA,"BurnDbg ",LM="MakeDbgDistro; DVDImageWrite('T',TOS_ISO_NAME);\n"$
$MA,"LinxDict",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/LinuxDict.TXT**\\\");\");\n"$$MA,"August ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/AugustWords.TXT**\\\");\");\n"$$MA,"Happy ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/HappyWords.TXT*\\\");\");\n"$$MA,"Bible ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/BibleWords.TXT*\\\");\");\n"$$MA,"Huck ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/HuckWords.TXT*\\\");\");\n"$$MA,"Ingreds ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/Ingredients.TXT*\\\");\");\n"$$MA,"Chess ",LM="Adam(\"GodInit(\\\"~/Sup1/Sup1Words/Chess.DD*\\\");\");\n"$$MA,"Texts ",LM="Cd(\"/Home/Sup1/Sup1Texts\");Dir;\n"$$MA,"Words ",LM="Cd(\"/Home/Sup1/Sup1Words\");Dir;\n"$
$MA,"MakeStd ",LM="MakeStdDistro;MkDir(\"D:/Wb\");Move(TOS_ISO_NAME,\"D:/Wb/TempleOSCD.ISO\");\n"$$MA,"MakeStRS",LM="MakeStdRedSeaDistro;MkDir(\"D:/Wb\");Move(TOS_ISO_C_NAME,\"D:/Wb/TempleOSCDRS.ISO\");\n"$$MA,"MakeUlt ",LM="MakeUltraDistro;MkDir(\"D:/Wb\");Move(TOS_ISO_NAME,\"D:/Wb/TempleOSUltra.ISO\");\n"$$MA,"MakeUtRS",LM="MakeUltraRedSeaDistro;MkDir(\"D:/Wb\");Move(TOS_ISO_C_NAME,\"D:/Wb/TempleOSUltraRS.ISO\");\n"$$MA,"MakeStaf",LM="MakeStaffDistro;MkDir(\"D:/Wb\");Move(TOS_ISO_NAME,\"D:/Wb/TempleOSStaff.ISO\");\n"$$MA,"MakeDbg ",LM="MakeDbgDistro;MkDir(\"D:/Wb\");Move(TOS_ISO_NAME,\"D:/Wb/TempleOSDbg.ISO\");\n"$
$MA,"BurnStd ",LM="MakeStdDistro;DVDImageWrite('T',TOS_ISO_NAME);\n"$$MA,"BurnStRS",LM="MakeStdRedSeaDistro;DVDImageWrite('T',TOS_ISO_C_NAME);\n"$$MA,"BurnUlt ",LM="MakeUltraDistro;DVDImageWrite('T',TOS_ISO_NAME);\n"$$MA,"BurnUtRS",LM="MakeUltraRedSeaDistro;DVDImageWrite('T',TOS_ISO_C_NAME);\n"$$MA,"BurnStaf",LM="MakeStaffDistro;DVDImageWrite('T',TOS_ISO_NAME);\n"$$MA,"BurnDbg ",LM="MakeDbgDistro;DVDImageWrite('T',TOS_ISO_NAME);\n"$
@@ -73,7 +73,7 @@ $SP+PU,"JukeBox",LM="#include \"::/Apps/Psalmody/Load\";JukeBox(\"::/Apps/Psalmo
$SP+PU,"BigGuns",LM="#include \"::/Demo/Games/BigGuns\"",BI=27$ $SP+PU,"Budget",LM="#include \"::/Apps/Budget/Run\"",BI=28$ $SP+PU,"Digits",LM="#include \"::/Demo/Games/Digits\"",BI=29$ $SP+PU,"Checkers",LM="#include \"::/Demo/Games/TreeCheckers.CPP.Z\"",BI=30$
$SP+PU,"BigGuns",LM="#include \"::/Demo/Games/BigGuns\"",BI=27$ $SP+PU,"Budget",LM="#include \"::/Apps/Budget/Run\"",BI=28$ $SP+PU,"Digits",LM="#include \"::/Demo/Games/Digits\"",BI=29$ $SP+PU,"Checkers",LM="#include \"::/Demo/Games/TreeCheckers.HC.Z\"",BI=30$
$MA,"TestSuit",LM="#include \"::/Misc/OSTestSuite\";\n"$$MA,"TakeTour",LM="Cd(\"::/Misc/Tour\");;AutoFile(\"Tour\");\n"$$MA+PU,"PsalSup1",LM="#include \"::/Apps/Psalmody/Load\";Psalmody(\"~/Sup1/Sup1Psalmody\");"$$MA,"Comics ",LM="Cd(\"/Home/Sup1/Sup1Comics\");Dir;\n"$$MA-X+PU,"SymAlpha",LM="DocMax;Who;View;"$$MA-X+PU,"SymNum ",LM="DocMax;Who(\"+m\");View;"$
yÓÿÿÿÜÿÿÿ<H÷ÿÿÿ'ûÿÿÿ÷ÿÿÿõÿÿÿüÿÿÿ õÿÿÿ'ûÿÿÿ '
@@ -405,7 +405,7 @@ $MA,"TestSuit",LM="#include \"::/Misc/OSTestSuite\";\n"$$MA,"TakeTour",LM="Cd(\"
 
  
      ! ""#!%$&&'%! $$%!#"&&'#" $$&"#!%%'#)(**+)-,../-)(,,-)+*../+*(,,.*+)--/+10223154667510445132667320446231557398::;9=<>>?=98<<=9;:>>?;:8<<>:;9==?;A@BBCAEDFFGEA@DDEACBFFGCB@DDFBCAEEGCIHJJKIMLNNOMIHLLMIKJNNOKJHLLNJKIMMOKQPRRSQUTVVWUQPTTUQSRVVWSRPTTVRSQUUWSYXZZ[Y]\^^_]YX\\]Y[Z^^_[ZX\\^Z[Y]]_[a`bbcaedffgea`ddeacbffgcb`ddfbcaeegcihjjkimlnnomihllmikjnnokjhllnjkimmok ęâ˙˙˙Đ˙˙˙%%˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙  ˙˙˙  ˙˙  ˙˙ ˙ ˙        ˙˙   ˙˙  ˙˙  ˙˙  ˙˙˙  ˙˙˙˙  ˙˙˙˙ ˙˙˙  ˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ĺ˙˙˙ř˙˙˙Flap „Ő˙˙˙á˙˙˙*˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙  ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙  ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙    ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙  ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙      ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙   ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙     ˙˙˙˙˙˙˙˙˙˙˙˙        ˙˙˙˙˙˙˙˙˙      ˙˙˙˙˙˙    ˙˙˙      ˙  ˙˙    ˙˙  ˙  ˙˙˙˙˙  ˙˙˙˙˙  ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ Ń˙˙˙ř˙˙˙BomberŇŇ˙˙˙Ű˙˙˙0$˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Line truncated
’ ÁÿÿÿÑÿÿÿ>.                                                             B¹ÿÿÿÉÿÿÿF6 ÿ ÿÿÿ ÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 
’ ÁÿÿÿÑÿÿÿ>.                                                            B¹ÿÿÿÉÿÿÿF6 ÿ ÿÿÿ ÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
@@ -1,30 +1,32 @@
$WW,1$$FG,5$$TX+CX,"TODO"$$FG$
* Cursor in $LK,"::/Home/TOSToHtml.CPP"$.
* Cursor in $LK,"::/Home/TOSToHtml.HC"$.
* Investigate why packet loss $LK,"Training Sleep(1)",A="FF:::/Adam/Training.CPP,Sleep(1)"$.
* Investigate why packet loss $LK,"Training Sleep(1)",A="FF:::/Adam/Training.HC,Sleep(1)"$.
* Add AVL or red/black binary tree library support. We have fixed-size stack. Auto-balancing binary tree is very needed. I've done everything myself. I don't want to ruin a perfect record. I'm in no hurry.
* $LK,"SpriteEd",A="FI:::/Adam/Gr/SpriteEd.CPP"$ shift pts, Ctrl pt for ellipse/polygon w,h is off when rotated.
* $LK,"SpriteEd",A="FI:::/Adam/Gr/SpriteEd.HC"$ shift pts, Ctrl pt for ellipse/polygon w,h is off when rotated.
* God said this is bad. $LK,"FL:::/Adam/DolDoc/DocFind.CPP,41"$
* God said this is bad. $LK,"FL:::/Adam/DolDoc/DocFind.HC,41"$
* Backward <SHIFT-F3> is broken?
* Cannot include ':' in $LK,"Document Links",A="FF:::/Adam/DolDoc/DocLink.CPP,AD"$ search string.
* Cannot include ':' in $LK,"Document Links",A="FF:::/Adam/DolDoc/DocLink.HC,AD"$ search string.
* $$DA fixed width string: <Del> or <BACKSPACE> permanently shortens.
* Editor overstrike mode at cmd line with menu macro? Probably, many other overstrike issues.
* $LK,"DOCT_HEX_ED",A="MN:DOCT_HEX_ED"$ with odd size, ASCII cannot be edited.
* $LK,"FL:::/Adam/Gr/SpriteEd.CPP,789"$ Resize bitmap?
* $LK,"FL:::/Adam/Gr/SpriteEd.HC,789"$ Resize bitmap?
* $LK,"DOCEF_REMALLOC_DATA",A="FF:::/Adam/DolDoc/DocChar.CPP,DOCEF_REMALLOC_DATA"$ HexEdit Remalloc.
* $LK,"DOCEF_REMALLOC_DATA",A="FF:::/Adam/DolDoc/DocChar.HC,DOCEF_REMALLOC_DATA"$ HexEdit Remalloc.
* $LK,"DOCF_DBL_DOLLARS",A="MN:DOCF_DBL_DOLLARS"$ in $LK,"Reindention",A="MN:EdCodeTools2"$.
* Compiler Optimization: Local array vars --> reg. Might exist.
* Make function as a better word processor. Justify text. Page numbers. Header and footer templates?
* Compiler Optimization: heap_glbls with added offset. Might exist.
* AfterEgypt: $LK,"Numbers,13:33",A="BF:Numbers,13:33"$ scouts? $LK,"Numbers,21:8",A="BF:Numbers,21:8"$ snakes?
@@ -43,13 +45,13 @@ $WW,1$$FG,5$$TX+CX,"TODO"$$FG$
* Bible ranges in $LK,"BibleVerse",A="MN:BibleVerse"$().
* $LK,"::/Demo/Games/FlatTops.CPP"$ is torpedo, not bombs.
* $LK,"::/Demo/Games/FlatTops.HC"$ is torpedo, not bombs.
* Reset MPs with $LK,"Core0StartMP",A="MN:Core0StartMP"$() after boot. Free old task memory?
* Use pen_width and pen_height when clipping with pen_width>1.
* $LK,"~/Sup1/Sup1Games/Rocks.CPP"$.
* $LK,"~/Sup1/Sup1Games/Rocks.HC"$.
* Asm LIST NOLIST bugs.
@@ -66,7 +68,7 @@ $WW,1$$FG,5$$TX+CX,"TODO"$$FG$
* $LK,"GrLineFat3",A="MN:GrLineFat3"$() needs a little work.
* $LK,"GrFillTri0",A="MN:GrFillTri0"$() with both $LK,"GrHLine",A="MN:GrHLine"$() and $LK,"GrVLine",A="MN:GrVLine"$() don't match in $LK,"::/Demo/Games/CastleFrankenstein.CPP"$ causing wall spot pixels.
* $LK,"GrFillTri0",A="MN:GrFillTri0"$() with both $LK,"GrHLine",A="MN:GrHLine"$() and $LK,"GrVLine",A="MN:GrVLine"$() don't match in $LK,"::/Demo/Games/CastleFrankenstein.HC"$ causing wall spot pixels.
$FG,5$$TX+CX,"TODO? Meh"$$FG$
@@ -78,13 +80,13 @@ $FG,5$$TX+CX,"TODO? Meh"$$FG$
* $LK,"Mem32DevAlloc",A="MN:Mem32DevAlloc"$() is broken. Devices should be in free spot of E820 report.
* $LK,"SpriteEd",A="FI:::/Adam/Gr/SpriteEd.CPP"$: Strip $LK,"SPT_SHIFT",A="MN:SPT_SHIFT"$ origin cmds?
* $LK,"SpriteEd",A="FI:::/Adam/Gr/SpriteEd.HC"$: Strip $LK,"SPT_SHIFT",A="MN:SPT_SHIFT"$ origin cmds?
* Clean-up ASCII #127 delete char? (No. Maybe, we want a new usage for 127 in future centuries.)
* Compiler: Exceptions don't free $LK,"CCmpCtrl",A="MN:CCmpCtrl"$ stuff.
* $LK,"::/Adam/DolDoc/DocHighlight.CPP"$ for code comments at top of documents.
* $LK,"::/Adam/DolDoc/DocHighlight.HC"$ for code comments at top of documents.
* Unhandled exception msgs from MP's get overwritten by WinMgr.
@@ -101,7 +103,7 @@ $FG,5$$TX+CX,"TODO? Meh"$$FG$
$FG,5$$TX+CX,"TODO: Too Hard, or Not Worth Doing."$$FG$
* AutoComplete/$LK,"Man",A="MN:Man"$() Jmp for user code.
* $LK,"Bible sized nodes",A="FF:::/Adam/DolDoc/DocRecalc.CPP,->tag+i"$
* $LK,"Bible sized nodes",A="FF:::/Adam/DolDoc/DocRecalc.HC,->tag+i"$
* $LK,"FileMgr",A="MN:FileMgr"$() is bad with lots of files.
@@ -109,7 +111,7 @@ $FG,5$$TX+CX,"TODO: Too Hard, or Not Worth Doing."$$FG$
* Log-to-file is inefficient because we load and save whole file.
* $LK,"ICMov",A="MN:ICMov"$() $LK,"PUSH_CMP",A="FF:::/Compiler/BackLib.CPP,PUSH_CMP"$ and $LK,"MDf_STK",A="MN:MDf_STK"$? Perhaps, it's okay.
* $LK,"ICMov",A="MN:ICMov"$() $LK,"PUSH_CMP",A="FF:::/Compiler/BackLib.HC,PUSH_CMP"$ and $LK,"MDf_STK",A="MN:MDf_STK"$? Perhaps, it's okay.
* Short FAT32 ~ names.
@@ -121,17 +123,17 @@ $ID,5$$HL,1$U0 Main()
U0 (*fp_old_draw_input_ptr)(CDC *dc,I64 x,I64 y)=gr.fp_draw_input_ptr;
}
$ID,-5$$HL,0$
* Compiler: Get rid of $LK,"0x20000",A="FF:::/Compiler/CMain.CPP,0x20000"$ limit.
* Compiler: Get rid of $LK,"0x20000",A="FF:::/Compiler/CMain.HC,0x20000"$ limit.
* $LK,"GrFloodFillRay",A="MN:GrFloodFillRay"$: Get rid of $LK,"0x80000",A="FF:::/Adam/Gr/GrPrimatives.CPP,0x80000"$ limit.
* $LK,"GrFloodFillRay",A="MN:GrFloodFillRay"$: Get rid of $LK,"0x80000",A="FF:::/Adam/Gr/GrPrimatives.HC,0x80000"$ limit.
$FG,5$$TX+CX,"Bugs"$$FG$
* 1/28/16 $LK,"::/Demo/Graphics/Pick3D.CPP"$ crashed in TestSuite.
* 1/28/16 $LK,"::/Demo/Graphics/Pick3D.HC"$ crashed in TestSuite.
* 1/12/16 make RAM drive 2288 blks, $FG,2$CopyTree("C:/Home","B:/Home"); $FG$ Disk runs-out of space and hangs instead of reporting errors.
* Bug introduced around 11/1/15. Changed $LK,"::/Kernel/Sched.CPP"$ and now $LK,"WinToTop",A="MN:WinToTop"$ is called on Adam task at start-up, sometimes. Might be user's fault because of bad keys pressed during VMware power-on init. Might be fixed by $LK,"ACf_INIT_IN_PROGRESS",A="MN:ACf_INIT_IN_PROGRESS"$.
* Bug introduced around 11/1/15. Changed $LK,"::/Kernel/Sched.HC"$ and now $LK,"WinToTop",A="MN:WinToTop"$ is called on Adam task at start-up, sometimes. Might be user's fault because of bad keys pressed during VMware power-on init. Might be fixed by $LK,"ACf_INIT_IN_PROGRESS",A="MN:ACf_INIT_IN_PROGRESS"$.
* 1/12/16 $LK,"ATARepEntry",A="MN:ATARepEntry"$ shows corrupted buttons. Weird. Perhaps, my imagination.
@@ -140,7 +142,7 @@ $FG,5$$TX+CX,"3rd Party Bugs"$$FG$
* VMware: Stretch to full screen
* VMware: PC speaker sound distorted.
* VMware: 8/2/2015 start-up. Probably multicore.
* VMware: $LK,"CtrlAltDel",A="FF:::/Kernel/SerialDev/Keyboard.CPP,CtrlAltDel"$ on <CTRL-ALT-INS>
* VMware: $LK,"CtrlAltDel",A="FF:::/Kernel/SerialDev/Keyboard.HC,CtrlAltDel"$ on <CTRL-ALT-INS>
* VMware: Size zero files don't copy out of mounted disk? (Might be fixed.)
@@ -158,8 +160,8 @@ $FG,5$$TX+CX,"Bugs? Not really sure."$$FG$
* 1/?/2015,8/10/2015 Macro sel in Menu did not go to shell? No, I think just <CTRL-m> twice. Not a bug.
* 5/7/14:Something like $LK,"AFSetIP",A="MN:AFSetIP"$ caused hang, then reboot in TestSuite.
* 5/7/14:#63 Maybe, $LK,"::/Demo/Graphics/Pick3D.CPP"$ crashed in TestSuite.
* 6/8/14:After or in $LK,"PageTableEntries",A="FF:::/Misc/OSTestSuite.CPP,PageTableEntries"$ in TestSuite crash.
* 5/7/14:#63 Maybe, $LK,"::/Demo/Graphics/Pick3D.HC"$ crashed in TestSuite.
* 6/8/14:After or in $LK,"PageTableEntries",A="FF:::/Misc/OSTestSuite.HC,PageTableEntries"$ in TestSuite crash.
* $LK,"StrPrintJoin",A="MN:StrPrintJoin"$(,st); With st="\n\\"; (Forgot what this is talking about.)
@@ -185,9 +187,9 @@ $ID,-5$
* $LK,"U",A="MN:U"$() negative byte displacement, neg 32-bit disp.
* Race condition in $LK,"::/Demo/Games/FlatTops.CPP"$ torpedo.
* Race condition in $LK,"::/Demo/Games/FlatTops.HC"$ torpedo.
* Links to self document if empty file name? $LK,"Document Links",A="FF:::/Adam/DolDoc/DocLink.CPP,AD"$
* Links to self document if empty file name? $LK,"Document Links",A="FF:::/Adam/DolDoc/DocLink.HC,AD"$
* $LK,"FUF_RECURSE",A="MN:FUF_RECURSE"$ would be nice if capital "+R".
@@ -208,7 +210,7 @@ $ID,-5$
$FG,5$$TX+CX,"Committee Needed"$$FG$
* Make binary tree look-up using FUN_SEG symbol addresses, so we can eliminate fun_seg cache and wall-paper kludge? All HolyC functions and glbl vars would have left-right for address search.
* $LK,"MP DepthBuf",A="FF:::/Adam/Gr/SpriteMesh.CPP,dc->depth_buf=e->"$ is a kludge because of dc->depth_buf=NULL in various graphics routines.
* $LK,"MP DepthBuf",A="FF:::/Adam/Gr/SpriteMesh.HC,dc->depth_buf=e->"$ is a kludge because of dc->depth_buf=NULL in various graphics routines.
* Improve editor undo, add redo.
@@ -225,8 +227,8 @@ $FG,5$$TX+CX,"Committee Needed"$$FG$
* $LK,"GrPutChar3",A="MN:GrPutChar3"$() with depth buf?
* Eliminate? $LK,"::/Adam/Ctrls/CtrlsA.CPP"$?
* Eliminate? $LK,"::/Adam/AMathODE.CPP"$?
* Eliminate? $LK,"::/Adam/Ctrls/CtrlsA.HC"$?
* Eliminate? $LK,"::/Adam/AMathODE.HC"$?
* Eliminate? $LK,"Complex",A="MN:Complex"$?
* Eliminate? $LK,"CDC",A="MN:CDC"$.brush?
* Eliminate? $LK,"Mat4x4MulXYZ",A="MN:Mat4x4MulXYZ"$() change to 3x3?
@@ -236,9 +238,9 @@ $FG,5$$TX+CX,"Committee Needed"$$FG$
* Should Msgs in PopUp queue get fwded to parent when task dies?
* Import Intel datasheets so we can use links in $LK,"Code",A="FI:::/Kernel/Mem/PageTables.CPP"$ for documentation. I tried a PDF-to-text convertor and it wasn't acceptible.
* Import Intel datasheets so we can use links in $LK,"Code",A="FI:::/Kernel/Mem/PageTables.HC"$ for documentation. I tried a PDF-to-text convertor and it wasn't acceptible.
* Why are BMP file $LK,"CBGR24",A="MN:CBGR24"$'s wrong? $LK,"::/Adam/Opt/Utils/FileBMP.CPP"$.
* Why are BMP file $LK,"CBGR24",A="MN:CBGR24"$'s wrong? $LK,"::/Adam/Opt/Utils/FileBMP.HC"$.
* Switch stmt with sparse cases? Maybe, ban sparse switch stmts.
@@ -252,21 +254,17 @@ $FG,5$$TX+CX,"Committee Needed"$$FG$
* Compiler: &=, |= can overflow with Bts Btr on small data types?
* Since no true preprocessor, $LK,"R",A="MN:R"$("#define","StrMap"); $LK,"R",A="MN:R"$("#include",...); also?
* Compiler: $LK,"sys_var_init_flag",A="MN:sys_var_init_flag"$ for local vars?
* Implement $LK,"RS_ATTR_FIXED",A="MN:RS_ATTR_FIXED"$ fixed pos files?
* Editor page formatting is FUBAR.
* SIMD in $LK,"Mat4x4MulXYZ",A="MN:Mat4x4MulXYZ"$?
* I use fixed-point in $LK,"Circle",A="MN:Circle"$(), $LK,"Ellipse",A="MN:Ellipse"$(), $LK,"Mat4x4MulXYZ",A="MN:Mat4x4MulXYZ"$(), $LK,"Mat4x4MulMat4x4New",A="MN:Mat4x4MulMat4x4New"$() and others. God says I might want to change to float. $LK,"::/Demo/Lectures/FixedPoint.CPP"$ $LK,"::/Demo/Lectures/FixedPointAdvanced.CPP"$.
* I use fixed-point in $LK,"Circle",A="MN:Circle"$(), $LK,"Ellipse",A="MN:Ellipse"$(), $LK,"Mat4x4MulXYZ",A="MN:Mat4x4MulXYZ"$(), $LK,"Mat4x4MulMat4x4New",A="MN:Mat4x4MulMat4x4New"$() and others. God says I might want to change to float. $LK,"::/Demo/Lectures/FixedPoint.HC"$ $LK,"::/Demo/Lectures/FixedPointAdvanced.HC"$.
* Note: We will never put multiple $LK,"Keyboard Tables",A="FI:::/Kernel/SerialDev/Keyboard.CPP"$. Each country must make their own version of TempleOS. The $LK,"Intel Factory ROM",A="FF:::/Doc/Demands.TXT,English"$ will have just English. Our $LK,"Charter",A="FI:::/Doc/Charter.TXT"$ bans multiple country or architectures in the same version.
* Note: We will never put multiple $LK,"Keyboard Tables",A="FI:::/Kernel/SerialDev/Keyboard.HC"$. Each country must make their own version of TempleOS. The $LK,"Intel Factory ROM",A="FF:::/Doc/Demands.DD,English"$ will have just English. Our $LK,"Charter",A="FI:::/Doc/Charter.DD"$ bans multiple country or architectures in the same version.
* 12 border chars in screen font codes 0x02-0x0D. $LK,"TextBorder",A="MN:TextBorder"$() $LK,"RawDr",A="MN:RawDr"$() $LK,"::/Demo/Games/CharDemo.CPP"$. LineFeed shows-up in $FG,2$<CTRL-m>$FG$ PersonalMenu.
* 12 border chars in screen font codes 0x02-0x0D. $LK,"TextBorder",A="MN:TextBorder"$() $LK,"RawDr",A="MN:RawDr"$() $LK,"::/Demo/Games/CharDemo.HC"$. LineFeed shows-up in $FG,2$<CTRL-m>$FG$ PersonalMenu.
* Super-simple high speed serial needs flow control. $FG,2$<CTRL-s>$FG$ and $FG,2$<CTRL-q>$FG$?
@@ -291,7 +289,7 @@ $FG,5$$TX+CX,"Inspirational Ideas"$$FG$
* Make use of flag potential in $LK,"FilesFind",A="MN:FilesFind"$() and possibly $LK,"DirContextNew",A="MN:DirContextNew"$().
* Sort options for $LK,"FilesFind",A="MN:FilesFind"$()?
* New $LK,"HolyC",A="FI:::/Doc/HolyC.TXT"$ language features?
* New $LK,"HolyC",A="FI:::/Doc/HolyC.DD"$ language features?
* Better $LK,"Debugging",A="HI:Debugging"$?
@@ -303,7 +301,7 @@ $FG,5$$TX+CX,"Inspirational Ideas"$$FG$
* Move stuff out of $LK,"Kernel",A="FI:::/Kernel/Kernel.PRJ"$ module.
* $$LK,L="FL:D:/Kernel/File.CPP"$$ instead of A=
* $$LK,L="FL:D:/Kernel/File.HC"$$ instead of A=
* $$SP,B=1$$ instead of $$SP,BI=1$$
* $$CM+LE+RE is nasty
@@ -315,7 +313,7 @@ $FG,5$$TX+CX,"Inspirational Ideas"$$FG$
* Compiler: More aggressive in $LK,"CmpF2PushPop",A="MN:CmpF2PushPop"$() with types besides MOV and F64.
* Playing with $LK,"::/Demo/Lectures/NegDisp.CPP"$ on $LK,"CTask",A="MN:CTask"$?
* Playing with $LK,"::/Demo/Lectures/NegDisp.HC"$ on $LK,"CTask",A="MN:CTask"$?
$ID,5$$$=-CTASK_NEG_OFFSET
offset(CTask.addr)==0
Spawn(): CAlloc()
@@ -327,14 +325,14 @@ $ID,-5$
$FG,5$$TX+CX,"Test"$$FG$
* $LK,"SpriteBitMap",A="FI:::/Adam/Gr/SpriteBitMap.CPP"$: Grabscroll?
* $LK,"SpriteBitMap",A="FI:::/Adam/Gr/SpriteBitMap.HC"$: Grabscroll?
* $LK,"DrvMap",A="MN:DrvMap"$() in $LK,"MountFile",A="MN:MountFile"$().
* Return ress for $LK,"GrBlot",A="MN:GrBlot"$, $LK,"GrRect",A="MN:GrRect"$, $LK,"GrPutChar",A="MN:GrPutChar"$?
* Collision cnts for $LK,"GrBlot",A="MN:GrBlot"$, $LK,"GrRect",A="MN:GrRect"$, $LK,"GrPutChar",A="MN:GrPutChar"$?
* $LK,"GetStr",A="MN:GetStr"$() or $LK,"GetChar",A="MN:GetChar"$() in $LK,"OSInstall",A="FI:::/Misc/OSInstall.CPP"$ didn't like focus change.
* $LK,"GetStr",A="MN:GetStr"$() or $LK,"GetChar",A="MN:GetChar"$() in $LK,"OSInstall",A="FI:::/Misc/OSInstall.HC"$ didn't like focus change.
* Test on Dad's computer or other people's?
@@ -344,7 +342,7 @@ $FG,5$$TX+CX,"Test"$$FG$
* $LK,"FileMgr",A="MN:FileMgr"$() help link scrolls out of window.
* $LK,"MouseDriverInstall",A="MN:MouseDriverInstall"$() throws exceptions? Doesn't work? Why mouse $LK,"0x9FC30",A="FF:::/Kernel/SerialDev/Mouse.CPP,9FC"$?
* $LK,"MouseDriverInstall",A="MN:MouseDriverInstall"$() throws exceptions? Doesn't work? Why mouse $LK,"0x9FC30",A="FF:::/Kernel/SerialDev/Mouse.HC,9FC"$?
* VirtualBox MP reboot?
@@ -365,7 +363,7 @@ $FG,5$$TX+CX,"Uncategorized"$$FG$
>Might want to do ZOOM in U8 graphics and convert screen capture to U8
>Might want to rev bit order
* This $LK,"Fs->catch_except=TRUE",A="FF:::/Kernel/SrvCmd.CPP,Fs->catch_except=TRUE"$ causes problems because it
* This $LK,"Fs->catch_except=TRUE",A="FF:::/Kernel/SrvCmd.HC,Fs->catch_except=TRUE"$ causes problems because it
catches divide and out-of-mem. Not sure what to do, yet.
* Release semaphores or break lock sema,usb_td
@@ -373,7 +371,7 @@ catches divide and out-of-mem. Not sure what to do, yet.
* Might make CSprite flood fill operate on a separate bitmap
and blotted at the end.
* <CTRL-r> delete subsprite in menu near others
* make better heapwalk, do something with $LK,"_CFG_HEAP_DBG",A="FF:::/Kernel/KernelA.HPP,_CFG_HEAP_DBG"$.
* make better heapwalk, do something with $LK,"_CFG_HEAP_DBG",A="FF:::/Kernel/KernelA.HH,_CFG_HEAP_DBG"$.
* static var off of data heap.
* could add "const" to not set CCF_NOT_CONST flag for trig, etc.
@@ -402,13 +400,17 @@ Moses gets Aaron $TX,"Exodus 4:10-16",HTML="http://www.biblegateway.com/passag
There is no council against the Lord $TX,"Proverbs 21:30",HTML="http://www.biblegateway.com/verse/en/Proverbs%2021:30"$
Human help is worthless $TX,"Psalm 108:12",HTML="http://www.biblegateway.com/verse/en/Psalm%20108:12"$
Do not seek your own wealth $TX,"1 Corinthians 10:24",HTML="http://www.biblegateway.com/verse/en/1%20Corinthians%2010:24"$
Abundance of Spirits $TX,"1 Corinthians 14:12",HTML="http://www.usccb.org/bible/1corinthians/14:12"$
The stone rejected is cornerstone $TX,"Matthew 21:42",HTML="http://www.biblegateway.com/verse/en/Matthew%2021:42"$
Egypt rise like flood $TX,"Jeremiah 46:7-8",HTML="http://www.biblegateway.com/passage/?search=Jeremiah%2046:7-8&version=NIV"$
New wineskins $TX,"Mark 2:22",HTML="http://www.biblegateway.com/verse/en/Mark%202:22"$
Thousand songs of Solomon $TX,"1 Kings 4:30-32",HTML="http://www.biblegateway.com/passage/?search=1%20Kings%204:30-32&version=NIV"$
$FG,5$$TX+CX,"Misc Notes"$$FG$
Erik van der Karbargenbok: $LK,"TempleBot",A="PI:::/Home/Sup1/Sup1Bin/TempleBot"$.
Intel CEO's name: Brian Krzanich
>$FG,2$lspci -v$FG$
Size:$TX,"17422 KB",D="DD_TEMPLEOSCD_K_SIZE"$
Size:$TX,"20932 KB",D="DD_TEMPLEOSCD_K_SIZE"$
$FG,5$$TX+CX,"My Web Bookmarks"$$FG$$WW,0$
$TX,"My FireFox Bookmarks",HTML="http://www.templeos.org/Wb/Home/Sup1/Sup1Blog/Bookmarks"$
@@ -442,12 +444,13 @@ $TX,"The sins of Newton",HTML="https://www.brainpickings.org/2012/01/04/isaac-ne
$TX,"Stalin's Tanks",HTML="https://boardgamegeek.com/boardgame/5198/stalins-tanks"$
$TX,"Lamp shades",HTML="http://www.lampsplus.com/products/lamp-shades"$
$TX,"The Original Jewish Temple",HTML="http://www.jewishvirtuallibrary.org/jsource/Judaism/The_Temple.html"$
$TX,"KingJamesBible with LineNums",HTML="http://www.templeos.org/Wb/Home/Sup1/Sup1Blog/NumBible.TXT"$
$TX,"KingJamesBible with LineNums",HTML="http://www.templeos.org/Wb/Home/Sup1/Sup1Blog/NumBible.DD"$
$TX,"Higgs 5-Sigma Proof",HTML="http://understandinguncertainty.org/explaining-5-sigma-higgs-how-well-did-they-do"$
$TX,"The Number Bleem",HTML="http://www.strangehorizons.com/2000/20001120/secret_number.shtml"$
$TX,"Dwight: Nerd torture",HTML="http://www.noob.us/humor/the-office-dwight-faces-nerd-torture-of-the-highest-form"$
$TX,"TOSZ Compression",HTML="http://www.templeos.org/Wb/Linux/TOSZ.CPP"$
$TX,"ATA/ATAPI spec",HTML="http://www.t13.org/Documents/UploadedDocuments/docs2007/D1532v1r4b-AT_Attachment_with_Packet_Interface_-_7_Volume_1.pdf"$
$TX,"Patton Prayer",HTML="http://www.pattonhq.com/prayer.html"$
$TX,"Streaming Terry A. Davis",HTML="https://www.youtube.com/channel/UCdX4uJUwSFwiY3XBvu-F_-Q/live"$
$TX,"WWW.OSDEV.ORG",HTML="http://www.osdev.org"$
@@ -2,7 +2,7 @@ $TR-UL,"Adam"$
$ID,2$$TR,"SysMsgFlags"$
$ID,2$sys_msg_flags[0]=0xFF;
$ID,-2$$TR,"SysRegVer"$
$ID,2$registry_version=4.100;
$ID,2$registry_version=4.110;
$ID,-2$$ID,-2$$TR-UL,"TempleOS"$
$ID,2$$TR,"TOS"$
$ID,2$I64 tos_code_walk_thru=105,tos_after_egypt_in_action=46;
@@ -10,40 +10,40 @@ $ID,-2$$TR,"CircleTrace"$
$ID,2$F64 best_score=4.9425;
$ID,-2$$TR,"DiningStars"$
$ID,2$F64 best_score=9999.0000;
$ID,-2$$TR,"Staff"$
$ID,2$#define PERSONAL_INITIALS "TAD"
#define MACHINE_CFG 0
$ID,-2$$TR,"KeepAway"$
$ID,2$I64 best_score0=68,best_score1=30;
$ID,-2$$TR,"BlackDiamond"$
$ID,2$I64 best_score=1;
$ID,-2$$TR,"EagleDive"$
$ID,2$F64 best_score=147.6932;
$ID,-2$$TR,"DunGen"$
$ID,2$F64 best_score=20.5295;
$ID,-2$$TR,"CastleFrankenstein"$
$ID,2$F64 best_score=33.8405;
$ID,-2$$TR,"ZoneOut"$
$ID,2$F64 best_score=8.1373;
$ID,-2$$TR,"DunGen"$
$ID,2$F64 best_score=20.5295;
$ID,-2$$TR,"Wenceslas"$
$ID,2$F64 best_score=43.9944;
$ID,-2$$TR,"FlapBat"$
$ID,2$F64 best_score=16.3077;
$ID,-2$$TR,"RawHide"$
$ID,2$F64 best_score=96.1279;
$ID,-2$$TR,"Varoom"$
$ID,2$F64 best_score=46.2643;
$ID,-2$$TR,"FlapBat"$
$ID,2$F64 best_score=16.3077;
$ID,-2$$TR,"TimeOut"$
$ID,2$I64 best_score=22202;
$ID,-2$$TR,"BlackDiamond"$
$ID,2$I64 best_score=9;
$ID,-2$$TR,"BomberGolf"$
$ID,2$I64 best_score=175;
$ID,-2$$TR,"RawHide"$
$ID,2$F64 best_score=96.1279;
$ID,-2$$TR,"KeepAway"$
$ID,2$I64 best_score0=68,best_score1=30;
$ID,-2$$TR,"XCaliber"$
$ID,2$I64 best_score=248;
I64 msg_flags=1;
$ID,-2$$TR,"EagleDive"$
$ID,2$F64 best_score=147.6932;
$ID,-2$$TR,"Wenceslas"$
$ID,2$F64 best_score=43.9944;
$ID,-2$$TR,"BomberGolf"$
$ID,2$I64 best_score=175;
$ID,-2$$TR,"Staff"$
$ID,2$#define PERSONAL_INITIALS "TAD"
#define MACHINE_CFG 0
$ID,-2$$ID,-2$$TR,"DemoCompany"$
$ID,2$
$TR,"Game1"$
$ID,2$F64 best_score=388.68032;
$ID,2$F64 best_score=197.62089;
$TR,"SimpleVal"$
$ID,2$1332;
$ID,2$1344;
$ID,-2$$ID,-2$
@@ -17,7 +17,7 @@ U8 *BlogLocalFile(CDate cdt=0)
CDateStruct ds;
if (!cdt) cdt=Now+local_time_offset;
Date2Struct(&ds,cdt);
StrPrint(file,"%s/" PERSONAL_INITIALS "%02d%02d%02d.TXT.Z",
StrPrint(file,"%s/" PERSONAL_INITIALS "%02d%02d%02d.DD.Z",
BlogLocalDir(cdt),ds.year%100,ds.mon,ds.day_of_mon);
return file;
}
@@ -39,7 +39,7 @@ U8 *BlogWebFile(CDate cdt=0)
CDateStruct ds;
if (!cdt) cdt=Now+local_time_offset;
Date2Struct(&ds,cdt);
StrPrint(file,"%s/" PERSONAL_INITIALS "%02d%02d%02d.TXT.Z",
StrPrint(file,"%s/" PERSONAL_INITIALS "%02d%02d%02d.DD.Z",
BlogWebDir(cdt),ds.year%100,ds.mon,ds.day_of_mon);
return file;
}
@@ -100,7 +100,7 @@ public U0 MakeWebSitePartial()
public U0 Blog()
{
if (!FileFind(BlogLocalFile,,FUF_JUST_FILES))
Copy("~/Web/" PERSONAL_INITIALS "/DailyBlogHeader.TXT.Z",
Copy("~/Web/" PERSONAL_INITIALS "/DailyBlogHeader.DD.Z",
BlogLocalFile);
AutoComplete;
WinBorder;
@@ -110,9 +110,9 @@ public U0 Blog()
Msg(MSG_KEY_DOWN_UP,'\n',0);
if (Ed(BlogLocalFile,EDF_WAS_WRITE)) {
DocOpt(BlogLocalFile,"-r");
Copy(BlogLocalFile,"::" DAILY_BASE ".TXT.Z");
Copy(BlogLocalFile,"D:" DAILY_BASE ".TXT.Z");
Copy(BlogLocalFile,"D:/Wb" DAILY_BASE ".TXT.Z");
TOSWebFile("D:/Wb" DAILY_BASE ".TXT.Z");
Copy(BlogLocalFile,"::" DAILY_BASE ".DD.Z");
Copy(BlogLocalFile,"D:" DAILY_BASE ".DD.Z");
Copy(BlogLocalFile,"D:/Wb" DAILY_BASE ".DD.Z");
TOSWebFile("D:/Wb" DAILY_BASE ".DD.Z");
}
}
File renamed without changes.
@@ -1,4 +1,4 @@
//The CFG defines are $LK,"~/TOSCfg.CPP",A="FI:::/Demo/AcctExample/TOSCfg.CPP"$.
//The CFG defines are $LK,"~/TOSCfg.HC",A="FI:::/Demo/AcctExample/TOSCfg.HC"$.
#help_index "TOS"
@@ -51,7 +51,7 @@ public U0 CopySongs(U8 threshold='7')
{
CDoc *doc;
CDocEntry *doc_e;
CDirEntry *tempde=FilesFind("/Home/Sup1/Sup1Psalmody/*.CPP*",
CDirEntry *tempde=FilesFind("/Home/Sup1/Sup1Psalmody/*.HC*",
FUF_CLUSTER_ORDER),*tempde1=tempde;
DelTree("/Apps/Psalmody/Examples");
MkDir("/Apps/Psalmody/Examples");
@@ -69,7 +69,7 @@ public U0 CopySongs(U8 threshold='7')
U0 DistroPrep()
{
Del("/Home/Demo*");
DelTree("/Home/*Temp.TXT.Z");
DelTree("/Home/*Temp.DD.Z");
if (FileFind("/Home/Sup1/Sup1Psalmody"))
CopySongs;
@@ -77,8 +77,8 @@ U0 DistroPrep()
MkDir("/Temp");
MkDir("/Temp/ScreenShots");
Touch("/PersonalMenu.TXT.Z","+T");
Touch("/Home/PersonalMenu.TXT.Z","+T");
Touch("/PersonalMenu.DD.Z","+T");
Touch("/Home/PersonalMenu.DD.Z","+T");
DelTree("/Demo/AcctExample");
CopyTree("/Home","/Demo/AcctExample");
@@ -87,15 +87,15 @@ U0 DistroPrep()
DelTree("/Demo/AcctExample/Sup1");
DelTree("/Demo/AcctExample/Web");
Del("/Demo/AcctExample/Test*");
Copy("/Home/Web/index.TXT.Z",
"/Demo/ToHtmlToTXTDemo/DemoInPage.TXT.Z");
if (FileFind("/Home/Sup1/Sup1Utils/SortHeaders.CPP.Z"))
ExeFile("/Home/Sup1/Sup1Utils/SortHeaders.CPP.Z");
Copy("/Home/Web/index.DD.Z",
"/Demo/ToHtmlToTXTDemo/DemoInPage.DD.Z");
if (FileFind("/Home/Sup1/Sup1Utils/SortHeaders.HC.Z"))
ExeFile("/Home/Sup1/Sup1Utils/SortHeaders.HC.Z");
if (FileFind("/Home/Sup1/Sup1Blog/YouTube.TXT.Z"))
Sort("/Home/Sup1/Sup1Blog/YouTube.TXT.Z",,2);
if (FileFind("/Home/Sup1/Sup1Blog/YouTube.DD.Z"))
Sort("/Home/Sup1/Sup1Blog/YouTube.DD.Z",,2);
//Once in a while, do $LK,"~/Sup1/Sup1Utils/DblSpaceScan.CPP"$.
//Once in a while, do $LK,"~/Sup1/Sup1Utils/DblSpaceScan.HC"$.
CursorRem("/*");
DelTree("/Demo/*.BI*");
@@ -116,25 +116,25 @@ U0 MakeBootRescueDrvFile()
MkDir("A:/Compiler");
Copy("C:/Compiler/Compiler.BIN.Z", "A:/Compiler");
Copy("C:/Compiler/OpCodes.TXT.Z", "A:/Compiler");
Copy("C:/Compiler/CompilerA.HPP.Z", "A:/Compiler");
Copy("C:/Compiler/CompilerB.HPP.Z", "A:/Compiler");
Copy("C:/Compiler/OpCodes.DD.Z", "A:/Compiler");
Copy("C:/Compiler/CompilerA.HH.Z", "A:/Compiler");
Copy("C:/Compiler/CompilerB.HH.Z", "A:/Compiler");
MkDir("A:/Kernel");
Copy("C:/Kernel/*.HPP*", "A:/Kernel");
Copy("C:/Kernel/*.HH*", "A:/Kernel");
CopyTree("C:/Kernel/BlkDev", "A:/Kernel/BlkDev");
Copy("C:/Home/Sup1/Sup1Distro/DbgStartOS.CPP.Z","A:/StartOS.CPP.Z");
Copy("C:/Home/Sup1/Sup1Distro/DbgStartOS.HC.Z","A:/StartOS.HC.Z");
MkDir("A:/Adam");
Copy("C:/Home/Sup1/Sup1Distro/DbgMakeAdam.CPP.Z","A:/Adam/MakeAdam.CPP.Z");
Copy("C:/Home/Sup1/Sup1Distro/DbgMount.CPP.Z","A:/Adam");
Copy("C:/Adam/AExts.CPP.Z", "A:/Adam");
Copy("C:/Adam/AMath.CPP.Z", "A:/Adam");
Copy("C:/Adam/Training.CPP.Z","A:/Adam");
Copy("C:/Adam/AMem.CPP.Z", "A:/Adam");
Copy("C:/Adam/TaskRep.CPP.Z", "A:/Adam");
Copy("C:/Adam/AMathODE.CPP.Z","A:/Adam");
Copy("C:/Home/Sup1/Sup1Distro/DbgMakeAdam.HC.Z","A:/Adam/MakeAdam.HC.Z");
Copy("C:/Home/Sup1/Sup1Distro/DbgMount.HC.Z","A:/Adam");
Copy("C:/Adam/AExts.HC.Z", "A:/Adam");
Copy("C:/Adam/AMath.HC.Z", "A:/Adam");
Copy("C:/Adam/Training.HC.Z","A:/Adam");
Copy("C:/Adam/AMem.HC.Z", "A:/Adam");
Copy("C:/Adam/TaskRep.HC.Z", "A:/Adam");
Copy("C:/Adam/AMathODE.HC.Z","A:/Adam");
FileWrite("C:" CFG_BOOT_RESCUE_DRV_FILE,
bd->RAM_dsk,(bd->max_blk+1)<<BLK_SIZE_BITS);
@@ -151,7 +151,7 @@ U0 MakeSymFiles()
Who;
if (doc=DocPut) {
st=StrNew(doc->filename.name);
StrCpy(doc->filename.name,"D:/Wb/Home/Web/SymsAlpha.TXT.Z");
StrCpy(doc->filename.name,"D:/Wb/Home/Web/SymsAlpha.DD.Z");
DocWrite(doc);
StrCpy(doc->filename.name,st);
Free(st);
@@ -161,7 +161,7 @@ U0 MakeSymFiles()
Who("+m");
if (doc=DocPut) {
st=StrNew(doc->filename.name);
StrCpy(doc->filename.name,"D:/Wb/Home/Web/SymsAddress.TXT.Z");
StrCpy(doc->filename.name,"D:/Wb/Home/Web/SymsAddress.DD.Z");
DocWrite(doc);
StrCpy(doc->filename.name,st);
Free(st);
@@ -190,7 +190,7 @@ I64 MakeLineRepFile()
res=LineRep;
if (doc=DocPut) {
st=StrNew(doc->filename.name);
StrCpy(doc->filename.name,"B:/TOS/Web/LineRep.TXT.Z");
StrCpy(doc->filename.name,"B:/TOS/Web/LineRep.DD.Z");
DocWrite(doc);
StrCpy(doc->filename.name,st);
Free(st);
@@ -204,7 +204,7 @@ I64 MakeLineRepFile()
CopyTree("B:/TOS","C:/Home");
DelTree("B:/TOS");
doc=DocRead("C:/Adam/ADefine.CPP.Z");
doc=DocRead("C:/Adam/ADefine.HC.Z");
DocTreeFind(doc,"LineRep",&tree_branch,&start_indent,&end_indent);
DocCut(doc,start_indent->next,end_indent->last);
doc->cur_entry=start_indent->next;
@@ -312,7 +312,7 @@ U0 UltraDistroPrep()
DelTree(TOS_DISTRO_DIR "/Linux");
Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);
Del(TOS_DISTRO_DIR "/Adam/AutoComplete/ACDefs.DAT*");
Del(TOS_DISTRO_DIR "/Misc/PCIDevices.TXT.Z");
Del(TOS_DISTRO_DIR "/Misc/PCIDevices.DD.Z");
Del(TOS_DISTRO_DIR "/Misc/Bible.TXT.Z");
DelTree(TOS_DISTRO_DIR "/Apps");
@@ -321,11 +321,11 @@ U0 UltraDistroPrep()
DelTree(TOS_DISTRO_DIR "/Misc/Tour");
Del(TOS_DISTRO_DIR "/" KERNEL_BIN_C);
Del(TOS_DISTRO_DIR "/Adam/AutoComplete/ACWords.DAT*");
Del(TOS_DISTRO_DIR "/Adam/God/Vocab.TXT.Z");
Del(TOS_DISTRO_DIR "/Misc/OSTestSuite.CPP.Z");
Copy("C:/Home/Sup1/Sup1Distro/UltraMenu.TXT.Z",
TOS_DISTRO_DIR "/PersonalMenu.TXT.Z");
Copy("C:/Demo/Games/EagleDive.CPP.Z",
Del(TOS_DISTRO_DIR "/Adam/God/Vocab.DD.Z");
Del(TOS_DISTRO_DIR "/Misc/OSTestSuite.HC.Z");
Copy("C:/Home/Sup1/Sup1Distro/UltraMenu.DD.Z",
TOS_DISTRO_DIR "/PersonalMenu.DD.Z");
Copy("C:/Demo/Games/EagleDive.HC.Z",
TOS_DISTRO_DIR "/Misc");
}
U0 MakeUltraDistro()
@@ -470,6 +470,5 @@ public U0 PreBackUp()
Copy("D:/Home/Sup1/Sup1Blog/Bookmarks.html","C:/Home/Sup1/Sup1Blog");
Del("C:/Home/Sup1/Sup1Bin/*");
Copy("D:/Home/Sup1/Sup1Bin/*","C:/Home/Sup1/Sup1Bin");
Copy("D:/Home/Sup1/Sup1Bin/TempleBot","C:/Linux");
Copy("D:/Home/Sup1/Sup1Bin/God*","C:/Linux");
}
-765
View File
@@ -1,765 +0,0 @@
#help_index "TOS"
U0 BadCodeJump()
{//$LK,"::/Adam/God/HSNotes.TXT"$
CDirEntry *tempde1=FilesFind("/*",
FUF_JUST_FILES|FUF_RECURSE|FUF_JUST_SRC|FUF_CLUSTER_ORDER),
*tempde=tempde1;
I64 cnt=0,num;
CDoc *doc;
U8 *st;
while (tempde) {
doc=DocRead(tempde->full_name);
tempde->user_data=doc->head.y;
cnt+=doc->head.y;
DocDel(doc);
tempde=tempde->next;
}
FifoU8Flush(god.fifo);
GodBitsIns(GOD_GOOD_BITS,KbdMouseEvtTime>>GOD_BAD_BITS);
num=GodBits(GOD_GOOD_BITS)%cnt;
tempde=tempde1;
while (tempde) {
num-=tempde->user_data;
if (num<0) {
st=MStrPrint("FL:%s,%d",tempde->full_name,-num);
break;
}
tempde=tempde->next;
}
DirTreeDel(tempde1);
Ed(st);
Free(st);
}
U8 *WebBookMarks(U8 *filename="~/Sup1/Sup1Blog/Bookmarks.html")
{
U8 *st;
CDocEntry *doc_e;
CDoc *doc=DocNew;
CCmpCtrl *cc=CmpCtrlNew(MStrPrint("#include \"%s\"",filename));
while (Lex(cc))
if (cc->token==TK_STR && *cc->cur_str(U32 *)=='http') {
DocPrint(doc,"$$MU-UL,\"%$$Q\",LE=0x%X$$\n",cc->cur_str,cc->cur_str);
cc->cur_str=NULL;
}
CmpCtrlDel(cc);
if ((st=PopUpMenu(doc))!=DOCM_CANCEL)
st=StrNew(st);
else
st=NULL;
doc_e=doc->head.next;
while (doc_e!=doc) {
if (doc_e->type_u8==DOCT_MENU_VAL)
Free(doc_e->left_exp);
doc_e=doc_e->next;
}
DocDel(doc);
return st;
}
U8 *YouTubeGet(U8 *filename="C:/Home/Sup1/Sup1Blog/YouTube.TXT.Z",U8 *needle)
{
I64 i=0,line=MIN_I64;
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR),
*doc2=DocNew;
U8 *title,*code,*res;
while (DocFind(doc,line,needle)) {
if (!(doc->cur_entry->y&1)) {
title=doc->cur_entry->tag;
DocLineNumGoTo(doc,doc->cur_entry->y+2);
if (doc->cur_entry->type_u8==DOCT_TEXT) {
code=doc->cur_entry->tag;
DocPrint(doc2,"$$MU-UL,\"%s\",LE=0x%X$$\n",title,code);
i++;
}
}
line=doc->cur_entry->y+2;
}
switch (i) {
case 0:
res=NULL;
break;
case 1:
res=StrNew(code);
break;
default:
res=PopUpMenu(doc2);
if (res==DOCM_CANCEL)
res=NULL;
else
res=StrNew(res);
}
DocDel(doc);
DocDel(doc2);
return res;
}
U0 YouTubeAdd(U8 *filename="C:/Home/Sup1/Sup1Blog/YouTube.TXT.Z",
U8 *title,U8 *code)
{
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR);
if (!DocFind(doc,,title)) {
DocBottom(doc);
DocPrint(doc,"%s\n%s\n",title,code);
DocTop(doc);
DocWrite(doc);
Sort(filename,,2);
}
DocDel(doc);
}
class CTopMoviesForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,"
"A=\"Movie #1-100 (2 Decimal Digits from Hex):%s\"$$\n";
I64 timestamp fmtstr "$$DA,A=\"TimeStamp :%d\"$$\n";
I64 cert;
I64 min;
I64 sec;
};
class CMetallicaForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,"
"A=\"Song #1-99 (2 Decimal Digits from Hex):%s\"$$\n";
I64 timestamp fmtstr "$$DA,A=\"TimeStamp :%d\"$$\n";
I64 cert;
I64 min;
I64 sec;
};
class CWebBookMarkForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Tag Text:%s\"$$\n";
U8 special[STR_LEN];
I64 timestamp;
I64 cert;
I64 min;
I64 sec;
};
class CWebBibleForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Tag Text:%s\"$$\n";
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"Bible Passage:%s\"$$\n";
I64 timestamp;
I64 cert;
I64 min;
I64 sec;
};
class CYouTubeForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Title:%s\"$$\n";
U8 special[STR_LEN] fmtstr "$$DA-P-TRM,LEN=11,A=\"SerialNum:%11s\"$$\n";
I64 timestamp;
I64 cert;
I64 min fmtstr "$$DA,A=\"Minutes :%d\"$$\n";
I64 sec fmtstr "$$DA,A=\"Seconds :%d\"$$\n";
};
class CImgurForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"SerialNum:%s\"$$\n";
I64 timestamp;
I64 cert;
I64 min fmtstr "$$DA,A=\"Width :%d\"$$\n";
I64 sec fmtstr "$$DA,A=\"Height :%d\"$$\n";
};
class CWikipediaForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Tag Text:%s\"$$\n";
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"Index :%s\"$$\n";
I64 timestamp;
I64 cert;
I64 min;
I64 sec;
};
class CRandDecForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"Line (Dec):%s\"$$\n";
I64 timestamp;
I64 cert;
I64 min;
I64 sec;
};
class CRandHex5Form
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P-TRM,LEN=5,"
"A=\"Line (5-Digit Hex):%5s\"$$\n";
I64 timestamp;
I64 cert;
I64 min;
I64 sec;
};
class CRandCertForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"Line (Dec) :%s\"$$\n";
I64 timestamp;
I64 cert fmtstr "$$DA,A=\"Certificate:%d\"$$\n";
I64 min;
I64 sec;
};
class CRandHex5BeaconForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P-TRM,LEN=5,"
"A=\"Line (5-Digit Hex):%5s\"$$\n";
I64 timestamp fmtstr "$$DA,A=\"TimeStamp :%d\"$$\n";
I64 cert;
I64 min;
I64 sec;
};
class CRandHex8BeaconForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P-TRM,LEN=8,"
"A=\"Line (8-Digit Hex):%8s\"$$\n";
I64 timestamp fmtstr "$$DA,A=\"TimeStamp :%d\"$$\n";
I64 cert;
I64 min;
I64 sec;
};
class CRandExtDec5Form
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"5 Decimal Digits from Hex:%s\"$$\n";
I64 timestamp;
I64 cert;
I64 min;
I64 sec;
};
class CRandExtDec5BeaconForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"5 Decimal Digits from Hex:%s\"$$\n";
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
I64 cert;
I64 min;
I64 sec;
};
U8 *URLPercentSpaces(U8 *src)
{
U8 buf[2048],*dst=buf;
while (*src) {
if (*src==CH_SPACE) {
*dst++='%';
*dst++='%';
*dst++='2';
*dst++='0';
src++;
} else
*dst++=*src++;
}
*dst=0;
return StrNew(buf);
}
U8 *URLPlusSpaces(U8 *src)
{
U8 buf[2048],*dst=buf;
while (*src) {
if (*src==CH_SPACE) {
*dst++='+';
src++;
} else
*dst++=*src++;
}
*dst=0;
return StrNew(buf);
}
I64 ExtDecFromHex(U8 *st,I64 digits)
{
I64 res=0,ch;
do {
if (!(ch=*st++))
throw;
if ('0'<=ch<='9') {
res=10*res+ch-'0';
digits--;
}
} while (digits);
return res;
}
U8 *RandVideoRead(U8 *filename,I64 line)
{
U8 *res=NULL;
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR);
if (DocLineNumGoTo(doc,line-1) && doc->cur_entry->type_u8==DOCT_TEXT)
res=StrNew(doc->cur_entry->tag);
DocDel(doc);
return res;
}
U8 *RandVideoWrite(U8 *filename,I64 line,U8 *st)
{
U8 *res=NULL;
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR);
if (DocLineNumGoTo(doc,line-1)) {
if (doc->cur_entry->type_u8==DOCT_TEXT) {
Free(doc->cur_entry->tag);
doc->cur_entry->tag=StrNew(st);
} else
DocPrint(doc,"%s",st);
DocTop(doc);
DocWrite(doc);
}
DocDel(doc);
return res;
}
U0 RandVideo(U8 *title,U8 *webpage,CTopMoviesForm *url,I64 digits,U8 *filename)
{
U8 *st,*st2;
I64 i=ExtDecFromHex(url->special,digits);
if (st=RandVideoRead(filename,i*2)) {
StrCpy(url->tag,st);
Free(st);
if (!(st=RandVideoRead(filename,i*2+1))||!*st) {
Free(st);
*url->special=0;
if (DocForm(url(CYouTubeForm *)) && *url->special) {
if (url->min || url->sec)
st=MStrPrint("%s&hl=enUS&start=%d",
url->special,url->min*60+url->sec);
else
st=StrNew(url->special);
RandVideoWrite(filename,i*2+1,st);
} else
st=NULL;
}
if (StrIMatch("Metallica",filename)) {
st2=URLPlusSpaces(url->tag+3);
"God's response:\n"
"$$TX,\"%s\",HTML=\"%s\"$$\n"
"$$TX,\"%s (Lyrics)\","
"HTML=\"http://lmgtfy.com/?q=Metallica+lyrics+%s\"$$\n",
title,webpage,url->tag,st2;
Free(st2);
} else
"God's response:\n"
"$$TX,\"%s\",HTML=\"%s\"$$\n"
"#%s\n",title,webpage,url->tag;
if (st) {
"$$HC,\"<object width=\\\"640\\\" height=\\\"520\\\">"
"<param name=\\\"movie\\\" "
"value=\\\"http://www.youtube.com/v/%s\\\"></param><param "
"name=\\\"allowscriptaccess\\\" "
"value=\\\"always\\\"></param><embed "
"src=\\\"http://www.youtube.com/v/%s\\\" "
"type=\\\"application/x-shockwave-flash\\\" "
"allowscriptaccess=\\\"always\\\" "
"width=\\\"640\\\" height=\\\"520\\\">"
"</embed></object>\"$$\n",st,st;
Free(st);
}
}
}
U0 MyBibleLines(U8 *st,I64 num_lines,I64 radix,Bool modulo,Bool plus_one)
{//Radix<0 means extract N dec digits from hex.
CDoc *doc_out,*doc_in;
CDocEntry *doc_e;
I64 i,start;
U8 *verse;
if (*st && (doc_out=DocPut)) {
if (radix<0)
i=ExtDecFromHex(st,-radix);
else
i=Str2I64(st,radix);
if (radix<0)
DocPrint(doc_out,"'%s'-->(Taking first %d decimal digits)",st,-radix);
else if (radix==16)
DocPrint(doc_out,"0x%s-->",st);
if (modulo) {
DocPrint(doc_out,"(%d remainder when divided by %d)",
i,ST_BIBLE_LINES-(num_lines-1));
start=i%(ST_BIBLE_LINES-(num_lines-1));
} else {
if (radix>=0 || plus_one)
DocPrint(doc_out,"%d",i);
start=i;
}
if (plus_one) {
start++;
DocPrint(doc_out,"+1");
}
DocPrint(doc_out,"-->Line:%d\n",start);
verse=BibleLine2Verse(start);
DocPrint(doc_out,"$TX,"KingJamesBible",HTML="http://www.templeos.org/Wb/Home/Sup1/Sup1Blog/NumBible.TXT"$ (%s)\n\nGod says...\n$$RED$$",verse);
Free(verse);
doc_in=DocNew;
BibleLines(doc_in,start,num_lines,"::/Home/Sup1/Sup1Blog/NumBible.TXT");
while (TRUE) {//Del leading blanks
doc_e=doc_in->head.next;
if (doc_e==doc_in)
break;
else {
if (doc_e->type_u8==DOCT_NEW_LINE)
DocEntryDel(doc_in,doc_e);
else
break;
}
}
while (TRUE) {//Del trailing blanks
doc_e=doc_in->cur_entry->last;
if (doc_e==doc_in)
break;
else {
if (doc_e->type_u8==DOCT_NEW_LINE)
DocEntryDel(doc_in,doc_e);
else
break;
}
}
DocPrint(doc_in,"$$FG$$\n");
DocInsDoc(doc_out,doc_in);
DocDel(doc_in);
}
}
#define GBP_SHORT 0
#define GBP_MEDIUM 1
#define GBP_LONG 2
public U0 GodBooksPassage(U8 *files_find_mask,I64 len=512,
I64 rand_i32=MIN_I64,I64 verbosity=GBP_SHORT)
{//Make God pick a book passage. $LK+PU,"Holy Spirit Instructions",A="FI:::/Adam/God/HSNotes.TXT"$
CDirEntry *tempde=FilesFind(files_find_mask,
FUF_RECURSE|FUF_JUST_FILES|FUF_JUST_TXT),
*tempde1=tempde;
I64 i=0;
U8 *st,*st2=NULL;
while (tempde) {
st=FileRead(tempde->full_name);
tempde->user_data=StrLen(st);
if (verbosity==GBP_LONG)
"%08X-",i;
if (tempde->user_data>=len)
i+=tempde->user_data+1-len;
if (verbosity==GBP_LONG)
"%08X:$$LK,\"%s\",A=\"FI:%s\"$$\n",
i-1,tempde->full_name+2,tempde->full_name;
Free(st);
tempde=tempde->next;
}
if (rand_i32<0)
rand_i32=GodBits(32);
if (verbosity==GBP_LONG)
'\n';
if (verbosity>=GBP_MEDIUM)
"%08X*%08X",rand_i32,i;
i*=rand_i32;
if (verbosity>=GBP_MEDIUM)
"=%08X.%08X\n",i.u32[1],i.u32[0];
i=i.u32[1];
tempde=tempde1;
while (tempde) {
if (!st2 && tempde->user_data>=len) {
i-=tempde->user_data+1-len;
if (i<0) {
st=FileRead(tempde->full_name);
st2=st+(tempde->user_data+1-len)+i;
st2[len]=0;
"%s\nGod says...\n$$RED$$%s$$FG$$\n",tempde->full_name,st2;
Free(st);
}
}
tempde=tempde->next;
}
DirTreeDel(tempde1);
}
#define NIST_TIME_OFFSET (-7976-local_time_offset/CDATE_FREQ)
#define NIST_TIME_TO_SWITCH 3
public U0 NISTSync()
{
I64 i,j;
CDate d;
CDateStruct ds;
while (!ScanChar) {
d=Now;
Date2Struct(&ds,d);
i=ToI64((d-Str2Date("1/1/1970"))/CDATE_FREQ+NIST_TIME_OFFSET);
j=FloorI64(i,60);
"%d %d %02d %02d\n",i,j,ds.sec,(60+ds.sec-(i-j))%60;
Sleep(100);
}
}
U0 NISTBeaconURL(I64 timestamp)
{
U8 *tag;
CDateStruct ds;
CDate dt=(timestamp-NIST_TIME_OFFSET)*CDATE_FREQ+Str2Date("1/1/1970");
Date2Struct(&ds,dt+local_time_offset);
"$$TX,\"NIST Beacon Date:%D Time:%02d:%02d Unix TimeStamp:%u\","
"HTML=\"https://beacon.nist.gov/home\"$$\n",dt,ds.hour,ds.min,timestamp;
tag=MStrPrint("https:/beacon.nist.gov/rest/record/%d",timestamp);
"$$TX,\"NIST Beacon Record:%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
Free(tag);
}
U0 InsMyURL()
{
U8 *tag,*st,*st2;
CWebBibleForm *url=CAlloc(sizeof(CWebBibleForm));
url->timestamp=
FloorI64((Now-Str2Date("1/1/1970"))/CDATE_FREQ+NIST_TIME_OFFSET-
NIST_TIME_TO_SWITCH,60);
try {
switch (PopUpPickLst("NISTExtDec5Bible\0NISTHex5Bible\0NISTHex8Passage\0"
"BibleGatewaySearch\0BibleGatewayVerse\0"
"YouTube\0Imgur\0Wikipedia\0ExtDec5Bible\0Random.org\0"
"RandomNumbers.info\0PassWord\0VirtualNotary\0ANU_NIST\0HotBits\0"
"GenerateData\0WebBookMark\0Roulette\0NISTMovie\0NISTMetallica\0")) {
case:
if (DocForm(url(CRandExtDec5BeaconForm *))) {
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\t";
NISTBeaconURL(url->timestamp);
MyBibleLines(url->special,20,-5,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandHex5BeaconForm *))) {
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\t";
"$$TX,\"How this random Bible passage was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/NISTPassage.html\"$$\n";
NISTBeaconURL(url->timestamp);
MyBibleLines(url->special,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(url(CRandHex8BeaconForm *))) {
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\t";
"$$TX,\"How this random book pick was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/NISTPick001.html\"$$\n";
NISTBeaconURL(url->timestamp);
GodBooksPassage("C:/Home/Sup1/Sup1Texts/*",,
Str2I64(url->special,16),GBP_MEDIUM);
}
break;
case:
if (DocForm(url(CWebBibleForm *))) {
tag=url->special;
st2=URLPercentSpaces(url->special);
st=MStrPrint("http://www.biblegateway.com/passage/"
"?search=%s&version=NIV",st2);
Free(st2);
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CWebBibleForm *))) {
tag=url->special;
st2=URLPercentSpaces(url->special);
st=MStrPrint(
"http://www.biblegateway.com/verse/en/%s",st2);
Free(st2);
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CYouTubeForm *))) {
if (*url->special==CH_SPACE)
st2=YouTubeGet(,url->tag);
else
st2=StrNew(url->special);
if (st2 && *st2!=CH_SPACE) {
if (url->min || url->sec)
st=MStrPrint("%s&hl=enUS&start=%d",st2,url->min*60+url->sec);
else
st=StrNew(st2);
if (*url->special!=CH_SPACE && *url->tag)
YouTubeAdd(,url->tag,st);
"$$HC,\"<object width=\\\"640\\\" "
"height=\\\"520\\\"><param name=\\\"movie\\\" "
"value=\\\"http://www.youtube.com/v/%s\\\"></param><param "
"name=\\\"allowscriptaccess\\\" "
"value=\\\"always\\\"></param><embed "
"src=\\\"http://www.youtube.com/v/%s\\\" "
"type=\\\"application/x-shockwave-flash\\\" "
"allowscriptaccess=\\\"always\\\" "
"width=\\\"640\\\" height=\\\"520\\\">"
"</embed></object>\"$$\n",st,st;
Free(st);
Free(st2);
}
}
break;
case:
if (DocForm(url(CImgurForm *))) {
"$$HC,\"<center><img src=\\\"http://i.imgur.com/%s\\\" "
"width=\\\"%d\\\" height=\\\"%d\\\" "
"alt=\\\"\\\"></center>\"$$\n",
url->special,url->min,url->sec;
}
break;
case:
if (DocForm(url(CWikipediaForm *))) {
tag=url->special;
st=MStrPrint("http://en.wikipedia.org/wiki/%s",url->special);
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CRandExtDec5Form *))) {
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
MyBibleLines(url->special,20,-5,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://www.random.org";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://www.randomnumbers.info";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,TRUE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="https://passed.pw";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandCertForm *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://virtual-notary.org";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
tag="Here is the certificate";
st=MStrPrint("http://www.templeos.org/Certs/virtual-notary-cert"
"-randomnum-%d.p12",url->cert);
"\n$$TX,\"%$$Q: %d\",HTML=\"%$$Q\"$$.\n",tag,url->cert,st;
Free(st);
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandHex5Form *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://qrng.anu.edu.au/NIST.php";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(url(CRandHex5Form *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="https://www.fourmilab.ch/hotbits/secure_generate.html";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://www.generatedata.com";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CWebBookMarkForm *))) {
tag=st=WebBookMarks;
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="https://www.dublinbet.com";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CTopMoviesForm *))) {
NISTBeaconURL(url->timestamp);
RandVideo("Top 100 Movies",
"http://www.afi.com/100years/movies10.aspx",
url,2,"C:/Home/Sup1/Sup1Blog/Movies.TXT.Z");
}
break;
case:
if (DocForm(url(CMetallicaForm *))) {
NISTBeaconURL(url->timestamp);
RandVideo("Metallica Song","http://home.hccnet.nl/a.r.adams/lyrics/"
"metallica/songindex.html",
url,2,"C:/Home/Sup1/Sup1Blog/Metallica.TXT.Z");
}
break;
}
} catch {
Fs->catch_except=TRUE;
Beep; Beep;
}
Free(url);
}
//if (FileFind("~/Sup1/Sup1Words/LinuxDict.TXT"))
// GodInit("~/Sup1/Sup1Words/LinuxDict.TXT");
if (FileFind("~/Sup1/Sup1Words/HappyWords.TXT"))
GodInit("~/Sup1/Sup1Words/HappyWords.TXT");
+854
View File
@@ -0,0 +1,854 @@
#help_index "TOS"
U8 *URLPercentSpaces(U8 *src)
{
U8 buf[2048],*dst=buf;
while (*src) {
if (*src==CH_SPACE) {
*dst++='%';
*dst++='%';
*dst++='2';
*dst++='0';
src++;
} else
*dst++=*src++;
}
*dst=0;
return StrNew(buf);
}
U8 *URLPlusSpaces(U8 *src)
{
U8 buf[2048],*dst=buf;
while (*src) {
if (*src==CH_SPACE) {
*dst++='+';
src++;
} else
*dst++=*src++;
}
*dst=0;
return StrNew(buf);
}
I64 ExtDecFromHex(U8 *st,I64 digits)
{
I64 res=0,ch;
while (digits) {
if (!(ch=*st++))
break;
if ('0'<=ch<='9') {
res=10*res+ch-'0';
digits--;
}
}
return res;
}
U0 TOSBibleLines(U8 *st,I64 num_lines,I64 radix,Bool modulo,Bool plus_one)
{//Radix<0 means extract N dec digits from hex.
CDoc *doc_out,*doc_in;
CDocEntry *doc_e;
I64 i,start;
U8 *verse;
if (*st && (doc_out=DocPut)) {
if (radix<0)
i=ExtDecFromHex(st,-radix);
else
i=Str2I64(st,radix);
if (radix<0)
DocPrint(doc_out,"'%s'-->(Taking first %d decimal digits)",st,-radix);
else if (radix==16)
DocPrint(doc_out,"0x%s-->",st);
if (modulo) {
DocPrint(doc_out,"(%d remainder when divided by %d)",
i,ST_BIBLE_LINES-(num_lines-1));
start=i%(ST_BIBLE_LINES-(num_lines-1));
} else {
if (radix>=0 || plus_one)
DocPrint(doc_out,"%d",i);
start=i;
}
if (plus_one) {
start++;
DocPrint(doc_out,"+1");
}
DocPrint(doc_out,"-->Line:%d\n",start);
verse=BibleLine2Verse(start);
DocPrint(doc_out,"$TX,"KingJamesBible",HTML="http://www.templeos.org/Wb/Home/Sup1/Sup1Blog/NumBible.DD"$ (%s)\n\nGod says...\n$$RED$$",verse);
Free(verse);
doc_in=DocNew;
BibleLines(doc_in,start,num_lines,"::/Home/Sup1/Sup1Blog/NumBible.DD");
while (TRUE) {//Del leading blanks
doc_e=doc_in->head.next;
if (doc_e==doc_in)
break;
else {
if (doc_e->type_u8==DOCT_NEW_LINE)
DocEntryDel(doc_in,doc_e);
else
break;
}
}
while (TRUE) {//Del trailing blanks
doc_e=doc_in->cur_entry->last;
if (doc_e==doc_in)
break;
else {
if (doc_e->type_u8==DOCT_NEW_LINE)
DocEntryDel(doc_in,doc_e);
else
break;
}
}
DocPrint(doc_in,"$$FG$$\n");
DocInsDoc(doc_out,doc_in);
DocDel(doc_in);
}
}
#define GBP_SHORT 0
#define GBP_MEDIUM 1
#define GBP_LONG 2
public U0 GodBooksPassage(U8 *files_find_mask,I64 len=512,
I64 rand_i32=MIN_I64,I64 verbosity=GBP_SHORT)
{//Make God pick a book passage. $LK+PU,"Holy Spirit Instructions",A="FI:::/Adam/God/HSNotes.DD"$
CDirEntry *tempde=FilesFind(files_find_mask,
FUF_RECURSE|FUF_JUST_FILES|FUF_JUST_TXT),
*tempde1=tempde;
I64 i=0;
U8 *st,*st2=NULL;
while (tempde) {
st=FileRead(tempde->full_name);
tempde->user_data=StrLen(st);
if (verbosity==GBP_LONG)
"%08X-",i;
if (tempde->user_data>=len)
i+=tempde->user_data+1-len;
if (verbosity==GBP_LONG)
"%08X:$$LK,\"%s\",A=\"FI:%s\"$$\n",
i-1,tempde->full_name+2,tempde->full_name;
Free(st);
tempde=tempde->next;
}
if (rand_i32<0)
rand_i32=GodBits(32);
if (verbosity==GBP_LONG)
'\n';
if (verbosity>=GBP_MEDIUM)
"%08X*%08X",rand_i32,i;
i*=rand_i32;
if (verbosity>=GBP_MEDIUM)
"=%08X.%08X\n",i.u32[1],i.u32[0];
i=i.u32[1];
tempde=tempde1;
while (tempde) {
if (!st2 && tempde->user_data>=len) {
i-=tempde->user_data+1-len;
if (i<0) {
st=FileRead(tempde->full_name);
st2=st+(tempde->user_data+1-len)+i;
st2[len]=0;
"%s\nGod says...\n$$RED$$%s$$FG$$\n",tempde->full_name,st2;
Free(st);
}
}
tempde=tempde->next;
}
DirTreeDel(tempde1);
}
U8 *GodVideoRead(U8 *filename,I64 line)
{
U8 *res=NULL;
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR);
if (DocLineNumGoTo(doc,line-1) && doc->cur_entry->type_u8==DOCT_TEXT)
res=StrNew(doc->cur_entry->tag);
DocDel(doc);
return res;
}
U8 *GodVideoWrite(U8 *filename,I64 line,U8 *st)
{
U8 *res=NULL;
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR);
if (DocLineNumGoTo(doc,line-1)) {
if (doc->cur_entry->type_u8==DOCT_TEXT) {
Free(doc->cur_entry->tag);
doc->cur_entry->tag=StrNew(st);
} else
DocPrint(doc,"%s",st);
DocTop(doc);
DocWrite(doc);
}
DocDel(doc);
return res;
}
class CGodVideoForm
{
U8 title[STR_LEN] fmtstr "$$DA-P,A=\"Title:%s\"$$\n";
U8 serial[STR_LEN] fmtstr "$$DA-P-TRM,LEN=11,A=\"SerialNum:%11s\"$$\n";
I64 min fmtstr "$$DA,A=\"Minutes:%d\"$$\n";
I64 sec fmtstr "$$DA,A=\"Seconds:%d\"$$\n";
};
U0 GodVideo(U8 *title,U8 *webpage,U8 *rnd,I64 digits,U8 *filename)
{
U8 *st,*st2;
CGodVideoForm *gvf=CAlloc(sizeof(CGodVideoForm));
I64 i=ExtDecFromHex(rnd,digits);
if (st=GodVideoRead(filename,i*2)) {
StrCpy(gvf->title,st);
Free(st);
if (!(st=GodVideoRead(filename,i*2+1))||!*st) {
Free(st);
if (DocForm(gvf) && *gvf->serial) {
if (gvf->min || gvf->sec)
st=MStrPrint("%s&hl=enUS&start=%d",
gvf->serial,gvf->min*60+gvf->sec);
else
st=StrNew(gvf->serial);
GodVideoWrite(filename,i*2+1,st);
} else
st=NULL;
}
if (StrIMatch("Metallica",filename)) {
st2=URLPlusSpaces(gvf->title+3);
"God's response:\n"
"$$TX,\"%s\",HTML=\"%s\"$$\n"
"$$TX,\"%s (Lyrics)\","
"HTML=\"http://lmgtfy.com/?q=Metallica+lyrics+%s\"$$\n",
title,webpage,gvf->title,st2;
Free(st2);
} else
"God's response:\n"
"$$TX,\"%s\",HTML=\"%s\"$$\n"
"#%s\n",title,webpage,gvf->title;
if (st) {
"$$HC,\"<object width=\\\"640\\\" height=\\\"520\\\">"
"<param name=\\\"movie\\\" "
"value=\\\"http://www.youtube.com/v/%s\\\"></param><param "
"name=\\\"allowscriptaccess\\\" "
"value=\\\"always\\\"></param><embed "
"src=\\\"http://www.youtube.com/v/%s\\\" "
"type=\\\"application/x-shockwave-flash\\\" "
"allowscriptaccess=\\\"always\\\" "
"width=\\\"640\\\" height=\\\"520\\\">"
"</embed></object>\"$$\n",st,st;
Free(st);
}
}
Free(gvf);
}
class CRandExtDec5Form
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P,A=\"5 Decimal Digits from Hex:%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CNISTBeaconRandExtDec5Form
{
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
U8 rnd0[512] fmtstr "$$DA-P,A=\"5 Decimal Digits from Hex:%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CHexWordForm
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P,A=\"Hex Word Indices#0:%s\"$$\n";
U8 rnd1[512] fmtstr "$$DA-P,A=\"Hex Word Indices#1:%s\"$$\n";
U8 rnd2[512] fmtstr "$$DA-P,A=\"Hex Word Indices#2:%s\"$$\n";
U8 rnd3[512] fmtstr "$$DA-P,A=\"Hex Word Indices#3:%s\"$$\n";
I64 cert;
};
class CNISTBeaconHexWordForm
{
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
U8 rnd0[512] fmtstr "$$DA-P,A=\"Hex Word Indices#0:%s\"$$\n";
U8 rnd1[512] fmtstr "$$DA-P,A=\"Hex Word Indices#1:%s\"$$\n";
U8 rnd2[512] fmtstr "$$DA-P,A=\"Hex Word Indices#2:%s\"$$\n";
U8 rnd3[512] fmtstr "$$DA-P,A=\"Hex Word Indices#3:%s\"$$\n";
I64 cert;
};
class CRandHex5Form
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P-TRM,LEN=5,"
"A=\"Line (5-Digit Hex):%5s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CNISTBeaconRandHex5Form
{
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
U8 rnd0[512] fmtstr "$$DA-P-TRM,LEN=5,"
"A=\"Line (5-Digit Hex):%5s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CRandHex8Form
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P-TRM,LEN=8,"
"A=\"Line (8-Digit Hex):%8s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CNISTBeaconRandHex8Form
{
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
U8 rnd0[512] fmtstr "$$DA-P-TRM,LEN=8,"
"A=\"Line (8-Digit Hex):%8s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CMoviesForm
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P,"
"A=\"Movie #1-100 (2 Decimal Digits from Hex):%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CNISTMoviesForm
{
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
U8 rnd0[512] fmtstr "$$DA-P,"
"A=\"Movie #1-100 (2 Decimal Digits from Hex):%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CMetallicaForm
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P,"
"A=\"Song #1-99 (2 Decimal Digits from Hex):%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CNISTMetallicaForm
{
I64 timestamp fmtstr "$$DA,A=\"TimeStamp:%d\"$$\n";
U8 rnd0[512] fmtstr "$$DA-P,"
"A=\"Song #1-99 (2 Decimal Digits from Hex):%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert;
};
class CCertRandDec5Form
{
I64 timestamp;
U8 rnd0[512] fmtstr "$$DA-P,A=\"Line (Dec):%s\"$$\n";
U8 rnd1[512];
U8 rnd2[512];
U8 rnd3[512];
I64 cert fmtstr "$$DA,A=\"Certificate:%d\"$$\n";
};
U0 GodWordBatch(CHexWordForm *url)
{
I64 i=0;
CDirEntry *tempde,*tempde1;
FifoU8Flush(god.fifo);
GodHexIns(url->rnd0);
GodHexIns(url->rnd1);
GodHexIns(url->rnd2);
GodHexIns(url->rnd3);
tempde=tempde1=FilesFind(god.word_file_mask,god.word_fuf_flags);
while (tempde) {
PutFileLink(tempde->full_name);
'\n';
tempde=tempde->next;
}
DirTreeDel(tempde1);
"\n$$RED$$";
if (*url->rnd0)
"%s\n",url->rnd0;
if (*url->rnd1)
"%s\n",url->rnd1;
if (*url->rnd2)
"%s\n",url->rnd2;
if (*url->rnd3)
"%s\n",url->rnd3;
'\n';
while (FifoU8Cnt(god.fifo)>20) {
GodBits(3);
"%02d: ",i++;
GodWord(TRUE);
}
FifoU8Flush(god.fifo);
"$$FG$$\n";
}
#define NIST_TIME_OFFSET (-7998-local_time_offset/CDATE_FREQ)
#define NIST_TIME_TO_SWITCH 3
public U0 NISTSync()
{
I64 i,j;
CDate d;
CDateStruct ds;
while (!ScanChar) {
d=Now;
Date2Struct(&ds,d);
i=ToI64((d-Str2Date("1/1/1970"))/CDATE_FREQ+NIST_TIME_OFFSET);
j=FloorI64(i,60);
"%d %d %02d %02d\n",i,j,ds.sec,(60+ds.sec-(i-j))%60;
Sleep(100);
}
}
U0 NISTBeaconURL(I64 timestamp)
{
U8 *tag;
CDateStruct ds;
CDate dt=(timestamp-NIST_TIME_OFFSET)*CDATE_FREQ+Str2Date("1/1/1970");
Date2Struct(&ds,dt+local_time_offset);
"$$TX,\"NIST Beacon Date:%D Time:%02d:%02d Unix TimeStamp:%u\","
"HTML=\"https://beacon.nist.gov/home\"$$\n",dt,ds.hour,ds.min,timestamp;
tag=MStrPrint("https:/beacon.nist.gov/rest/record/%d",timestamp);
"$$TX,\"NIST Beacon Record:%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
Free(tag);
}
U0 GodMisc()
{
U8 *st,*tag;
CRandExtDec5Form *gm=CAlloc(sizeof(CRandExtDec5Form));
I64 i=PopUpPickLst("NISTBeacon\0HotBits\0Random.org\0RandomNumbers.info\0"
"ANU_NIST\0Password\0GenerateData\0VirtualNotary\0Timer\0");
if (i>=0) {
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
switch (i) {
case:
gm->timestamp=FloorI64((Now-Str2Date("1/1/1970"))/CDATE_FREQ+
NIST_TIME_OFFSET-NIST_TIME_TO_SWITCH,60);
switch (PopUpPickLst("ExtDec5Bible\0HexWordBatch\0Hex5Bible\0"
"Hex8Books\0Movie\0Metallica\0")) {
case:
if (DocForm(gm(CNISTBeaconRandExtDec5Form *))) {
NISTBeaconURL(gm->timestamp);
TOSBibleLines(gm->rnd0,20,-5,FALSE,FALSE);
}
break;
case:
if (DocForm(gm(CNISTBeaconHexWordForm *))) {
NISTBeaconURL(gm->timestamp);
GodWordBatch(gm);
}
break;
case:
if (DocForm(gm(CNISTBeaconRandHex5Form *))) {
"$$TX,\"How this random Bible passage was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/NISTPassage.html\"$$\n";
NISTBeaconURL(gm->timestamp);
TOSBibleLines(gm->rnd0,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(gm(CNISTBeaconRandHex8Form *))) {
"$$TX,\"How this random book pick was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/NISTPick001.html\"$$\n";
NISTBeaconURL(gm->timestamp);
GodBooksPassage("C:/Home/Sup1/Sup1Texts/*",,
Str2I64(gm->rnd0,16),GBP_MEDIUM);
}
break;
case:
if (DocForm(gm(CNISTMoviesForm *))) {
NISTBeaconURL(gm->timestamp);
GodVideo("Top 100 Movies",
"http://www.afi.com/100years/movies10.aspx",
gm->rnd0,2,"C:/Home/Sup1/Sup1Blog/Movies.DD.Z");
}
break;
case:
if (DocForm(gm(CNISTMetallicaForm *))) {
NISTBeaconURL(gm->timestamp);
GodVideo("Metallica Song",
"http://home.hccnet.nl/a.r.adams/lyrics/"
"metallica/songindex.html",
gm->rnd0,2,"C:/Home/Sup1/Sup1Blog/Metallica.DD.Z");
}
break;
}
break;
start:
case:
tag="https://www.fourmilab.ch/hotbits/secure_generate.html";
break;
case:
tag="http://www.random.org";
break;
case:
tag="http://www.randomnumbers.info";
break;
case:
tag="http://qrng.anu.edu.au/NIST.php";
break;
case:
tag="https://passed.pw";
break;
case:
tag="http://www.generatedata.com";
break;
end:
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
switch (PopUpPickLst("ExtDec5Bible\0HexWordBatch\0Hex5Bible\0"
"Hex8Books\0Movie\0Metallica\0")) {
case:
if (DocForm(gm(CRandExtDec5Form *)))
TOSBibleLines(gm->rnd0,20,-5,FALSE,FALSE);
break;
case:
if (DocForm(gm(CHexWordForm *)))
GodWordBatch(gm);
break;
case:
if (DocForm(gm(CRandHex5Form *))) {
"$$TX,\"How this random Bible passage was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/Passage.html\"$$\n";
TOSBibleLines(gm->rnd0,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(gm(CRandHex8Form *))) {
"$$TX,\"How this random book pick was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/Pick001.html\"$$\n";
GodBooksPassage("C:/Home/Sup1/Sup1Texts/*",,
Str2I64(gm->rnd0,16),GBP_MEDIUM);
}
break;
case:
if (DocForm(gm(CMoviesForm *)))
GodVideo("Top 100 Movies",
"http://www.afi.com/100years/movies10.aspx",
gm->rnd0,2,"C:/Home/Sup1/Sup1Blog/Movies.DD.Z");
break;
case:
if (DocForm(gm(CMetallicaForm *)))
GodVideo("Metallica Song",
"http://home.hccnet.nl/a.r.adams/lyrics/"
"metallica/songindex.html",
gm->rnd0,2,"C:/Home/Sup1/Sup1Blog/Metallica.DD.Z");
break;
}
break;
case:
if (DocForm(gm(CCertRandDec5Form *))) {
tag="http://virtual-notary.org";
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$\n",tag,tag;
tag="Here is the certificate";
st=MStrPrint("http://www.templeos.org/Certs/virtual-notary-cert"
"-randomnum-%d.p12",gm->cert);
"\n$$TX,\"%$$Q: %d\",HTML=\"%$$Q\"$$.\n",tag,gm->cert,st;
Free(st);
TOSBibleLines(gm->rnd0,20,-5,FALSE,FALSE);
}
break;
case:
FifoU8Flush(god.fifo);
GodBitsIns(GOD_GOOD_BITS,KbdMouseEvtTime>>GOD_BAD_BITS);
GodBooksPassage("C:/Home/Sup1/Sup1Texts/*");
break;
}
}
Free(gm);
}
U8 *YouTubeGet(U8 *filename="C:/Home/Sup1/Sup1Blog/YouTube.DD.Z",U8 *needle)
{
I64 i=0,line=MIN_I64;
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR),
*doc2=DocNew;
U8 *title,*code,*res;
while (DocFind(doc,line,needle)) {
if (!(doc->cur_entry->y&1)) {
title=doc->cur_entry->tag;
DocLineNumGoTo(doc,doc->cur_entry->y+2);
if (doc->cur_entry->type_u8==DOCT_TEXT) {
code=doc->cur_entry->tag;
DocPrint(doc2,"$$MU-UL,\"%s\",LE=0x%X$$\n",title,code);
i++;
}
}
line=doc->cur_entry->y+2;
}
switch (i) {
case 0:
res=NULL;
break;
case 1:
res=StrNew(code);
break;
default:
res=PopUpMenu(doc2);
if (res==DOCM_CANCEL)
res=NULL;
else
res=StrNew(res);
}
DocDel(doc);
DocDel(doc2);
return res;
}
U0 YouTubeAdd(U8 *filename="C:/Home/Sup1/Sup1Blog/YouTube.DD.Z",
U8 *title,U8 *code)
{
CDoc *doc=DocRead(filename,DOCF_PLAIN_TEXT_TABS|DOCF_NO_CURSOR);
if (!DocFind(doc,,title)) {
DocBottom(doc);
DocPrint(doc,"%s\n%s\n",title,code);
DocTop(doc);
DocWrite(doc);
Sort(filename,,2);
}
DocDel(doc);
}
U8 *WebBookMarks(U8 *filename="~/Sup1/Sup1Blog/Bookmarks.html")
{
U8 *st;
CDocEntry *doc_e;
CDoc *doc=DocNew;
CCmpCtrl *cc=CmpCtrlNew(MStrPrint("#include \"%s\"",filename));
while (Lex(cc))
if (cc->token==TK_STR && *cc->cur_str(U32 *)=='http') {
DocPrint(doc,"$$MU-UL,\"%$$Q\",LE=0x%X$$\n",cc->cur_str,cc->cur_str);
cc->cur_str=NULL;
}
CmpCtrlDel(cc);
if ((st=PopUpMenu(doc))!=DOCM_CANCEL)
st=StrNew(st);
else
st=NULL;
doc_e=doc->head.next;
while (doc_e!=doc) {
if (doc_e->type_u8==DOCT_MENU_VAL)
Free(doc_e->left_exp);
doc_e=doc_e->next;
}
DocDel(doc);
return st;
}
class CWebBibleForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Tag Text:%s\"$$\n";
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"Bible Passage:%s\"$$\n";
I64 min;
I64 sec;
};
class CYouTubeForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Title:%s\"$$\n";
U8 special[STR_LEN] fmtstr "$$DA-P-TRM,LEN=11,A=\"SerialNum:%11s\"$$\n";
I64 min fmtstr "$$DA,A=\"Minutes:%d\"$$\n";
I64 sec fmtstr "$$DA,A=\"Seconds:%d\"$$\n";
};
class CImgurForm
{
U8 tag[STR_LEN];
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"SerialNum:%s\"$$\n";
I64 min fmtstr "$$DA,A=\"Width :%d\"$$\n";
I64 sec fmtstr "$$DA,A=\"Height :%d\"$$\n";
};
class CWikipediaForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Tag Text:%s\"$$\n";
U8 special[STR_LEN] fmtstr "$$DA-P,A=\"Index :%s\"$$\n";
I64 min;
I64 sec;
};
class CWebBookMarkForm
{
U8 tag[STR_LEN] fmtstr "$$DA-P,A=\"Tag Text:%s\"$$\n";
U8 special[STR_LEN];
I64 min;
I64 sec;
};
U0 TOSInsMisc()
{
CWebBibleForm *url=CAlloc(sizeof(CWebBibleForm));
U8 *tag,*st,*st2;
switch (PopUpPickLst("BiblePassage\0BibleVerse\0"
"YouTube\0Imgur\0Wikipedia\0WebBookMark\0")) {
case:
if (DocForm(url(CWebBibleForm *))) {
tag=url->special;
st2=URLPercentSpaces(url->special);
st=MStrPrint("http://www.biblegateway.com/passage/"
"?search=%s&version=NIV",st2);
Free(st2);
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CWebBibleForm *))) {
tag=url->special;
st2=URLPercentSpaces(url->special);
st=MStrPrint(
"http://www.biblegateway.com/verse/en/%s",st2);
Free(st2);
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CYouTubeForm *))) {
if (*url->special==CH_SPACE)
st2=YouTubeGet(,url->tag);
else
st2=StrNew(url->special);
if (st2 && *st2!=CH_SPACE) {
if (url->min || url->sec)
st=MStrPrint("%s&hl=enUS&start=%d",st2,url->min*60+url->sec);
else
st=StrNew(st2);
if (*url->special!=CH_SPACE && *url->tag)
YouTubeAdd(,url->tag,st);
"$$HC,\"<object width=\\\"640\\\" "
"height=\\\"520\\\"><param name=\\\"movie\\\" "
"value=\\\"http://www.youtube.com/v/%s\\\"></param><param "
"name=\\\"allowscriptaccess\\\" "
"value=\\\"always\\\"></param><embed "
"src=\\\"http://www.youtube.com/v/%s\\\" "
"type=\\\"application/x-shockwave-flash\\\" "
"allowscriptaccess=\\\"always\\\" "
"width=\\\"640\\\" height=\\\"520\\\">"
"</embed></object>\"$$\n",st,st;
Free(st);
Free(st2);
}
}
break;
case:
if (DocForm(url(CImgurForm *))) {
"$$HC,\"<center><img src=\\\"http://i.imgur.com/%s\\\" "
"width=\\\"%d\\\" height=\\\"%d\\\" "
"alt=\\\"\\\"></center>\"$$\n",
url->special,url->min,url->sec;
}
break;
case:
if (DocForm(url(CWikipediaForm *))) {
tag=url->special;
st=MStrPrint("http://en.wikipedia.org/wiki/%s",url->special);
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
case:
if (DocForm(url(CWebBookMarkForm *))) {
tag=st=WebBookMarks;
if (*url->tag)
tag=url->tag;
"$$TX,\"%$$Q\",HTML=\"%$$Q\"$$",tag,st;
Free(st);
}
break;
}
Free(url);
}
U0 GodCodeJmp()
{//$LK,"::/Adam/God/HSNotes.DD"$
CDirEntry *tempde1=FilesFind("/*",
FUF_JUST_FILES|FUF_RECURSE|FUF_JUST_SRC|FUF_CLUSTER_ORDER),
*tempde=tempde1;
I64 cnt=0,num;
CDoc *doc;
U8 *st;
while (tempde) {
doc=DocRead(tempde->full_name);
tempde->user_data=doc->head.y;
cnt+=doc->head.y;
DocDel(doc);
tempde=tempde->next;
}
FifoU8Flush(god.fifo);
GodBitsIns(GOD_GOOD_BITS,KbdMouseEvtTime>>GOD_BAD_BITS);
num=GodBits(GOD_GOOD_BITS)%cnt;
tempde=tempde1;
while (tempde) {
num-=tempde->user_data;
if (num<0) {
st=MStrPrint("FL:%s,%d",tempde->full_name,-num);
break;
}
tempde=tempde->next;
}
DirTreeDel(tempde1);
Ed(st);
Free(st);
}
if (FileFind("~/Sup1/Sup1Words/LinuxDict.TXT"))
GodInit("~/Sup1/Sup1Words/LinuxDict.TXT");
//if (FileFind("~/Sup1/Sup1Words/HappyWords.TXT"))
// GodInit("~/Sup1/Sup1Words/HappyWords.TXT");
@@ -40,7 +40,7 @@ public U0 Uncollapse(U8 *files_find_mask="*",U8 *fu_flags=NULL)
DirTreeDel(tempde1);
}
#define VIDEO_FRAME_RATE 8
#define VIDEO_FRAME_RATE 30
#define FG_JUST_AUDIO 0
#define FG_BOOT_DRV 1
@@ -200,9 +200,9 @@ public U0 BMP2TXT(U8 *_in_name,U8 *_out_name=NULL)
CDoc *doc;
in_name=DftExt(_in_name,"BMP");
if (_out_name)
out_name=DftExt(_out_name,"TXT.Z");
out_name=DftExt(_out_name,"DD.Z");
else
out_name=ChgExt(_in_name,"TXT.Z");
out_name=ChgExt(_in_name,"DD.Z");
if (dc=BMPRead(in_name)) {
for (dy=-3;dy<=4;dy++)
for (dx=-3;dx<=4;dx++) {
@@ -266,13 +266,13 @@ U8 *TOSYouTube()
U0 AfterEgyptInAction()
{
SettingsPush; //See $LK,"SettingsPush",A="MN:SettingsPush"$
Adam("GodInit(\"/Adam/God/Vocab.TXT*\");");
Adam("GodInit(\"/Adam/God/Vocab.DD*\");");
AutoComplete;
WinBorder;
WinMax;
if (!fg_on)
PopUp("Sleep(50);FrameGrabberToggle;");
Ed("~/Videos/AfterEgypt.TXT.Z");
Ed("~/Videos/AfterEgypt.DD.Z");
Msg(MSG_KEY_DOWN_UP,CH_SPACE,0x3900000039); //<SPACE>
ExeFile("::/Apps/AfterEgypt/Run");
SettingsPop;
@@ -288,7 +288,7 @@ U0 CodeWalkThru()
WinMax;
if (!fg_on)
PopUp("Sleep(50);FrameGrabberToggle;");
Ed("~/Videos/RandomCode.TXT.Z");
Ed("~/Videos/RandomCode.DD.Z");
SettingsPop;
Msg(MSG_KEY_DOWN_UP,'b',0x83000000830); //<ALT-b>
tos_code_walk_thru++;
@@ -299,7 +299,7 @@ U0 TempleOSTheme()
{
if (!fg_on)
PopUp("Sleep(50);FrameGrabberToggle;");
ExeFile("~/Sup1/Sup1Graphics/TempleOSTheme.CPP");
ExeFile("~/Sup1/Sup1Graphics/TempleOSTheme.HC");
DocClear;
}
@@ -1,7 +1,7 @@
//This is a customized version of $LK,"::/Demo/ToHtmlToTXTDemo/ToHtml.CPP"$.
//This is a customized version of $LK,"::/Demo/ToHtmlToTXTDemo/ToHtml.HC"$.
#help_index "DolDoc/Conversion"
//See $LK,"::/Doc/Credits.TXT"$.
//See $LK,"::/Doc/Credits.DD"$.
U0 HtmlPutS(CDoc *doc,I64 u32_attr,I64 *_old_u32_attr,
U8 *st,I64 *_col,U8 *style_bitmap=NULL)
@@ -144,7 +144,7 @@ U8 *TOSLinkCvt1(U8 *link_st)
public CDoc *Doc2Html(CDoc *doc_in,U8 *html_header=NULL,U8 *body_header=NULL,
U8 *body_footer=NULL,U8 *html_footer=NULL,Bool line_anchors=TRUE,
U8 (*link_cvt)(U8 *link_st)=&TOSLinkCvt1)
{//Cvt $LK,"DolDoc",A="FI:::/Doc/DolDocOverview.TXT"$doc to HTML file.
{//Cvt $LK,"DolDoc",A="FI:::/Doc/DolDocOverview.DD"$doc to HTML file.
CDocEntry *doc_e,*style,*doc_e2;
I64 i,y,old_y=MIN_I64,col,old_u32_attr=-1,old_attr;
U32 *hl,*src;
@@ -335,7 +335,7 @@ public U0 TOSToHtml(U8 *_in_name,U8 *_out_name=NULL,U8 *html_header=NULL,
U8 *body_header=NULL,U8 *body_footer=NULL,U8 *html_footer=NULL,
I64 width=80,Bool line_anchors=TRUE,
U8 (*link_cvt)(U8 *link_st)=&TOSLinkCvt1)
{//Convert $LK,"DolDoc",A="FI:::/Doc/DolDocOverview.TXT"$file to HTML.
{//Convert $LK,"DolDoc",A="FI:::/Doc/DolDocOverview.DD"$file to HTML.
//Supply your own link_cvt routine.
U8 *in_name,*out_name;
CDoc *doc_in,*doc_out;
@@ -343,7 +343,7 @@ public U0 TOSToHtml(U8 *_in_name,U8 *_out_name=NULL,U8 *html_header=NULL,
SettingsPush; //See $LK,"SettingsPush",A="MN:SettingsPush"$
WinHorz(0,width-1); //Sets doc width for word wrap.
in_name=DftExt(_in_name,"CPP.Z");
in_name=DftExt(_in_name,"HC.Z");
if (_out_name)
out_name=DftExt(_out_name,"html");
else
@@ -416,20 +416,15 @@ public U0 MakeWebSite()
DelTree("D:/Wb/Home/Budget");
DelTree("D:/Wb/Home/Private");
Del("D:/Wb/Home/*");
Touch("D:/Wb/Home/Web/index.TXT.Z","");
Touch("D:/Wb/Home/Web/DownloadOS.TXT.Z","");
Touch("D:/Wb/Home/Web/TempleOS.TXT.Z","");
Touch("D:/Wb/Home/Web/index.DD.Z","");
Touch("D:/Wb/Home/Web/DownloadOS.DD.Z","");
Touch("D:/Wb/Home/Web/TempleOS.DD.Z","");
tempde=tempde1=FilesFind("*",
FUF_RECURSE|FUF_JUST_FILES|FUF_JUST_TXT|FUF_CLUSTER_ORDER);
while (tempde) {
TOSWebFile(tempde->full_name);
tempde=tempde->next;
}
Copy( "D:/Wb/Home/Sup1/Sup1Bin/TempleBot",
"D:/Wb/Home/Sup1/Sup1Bin/TempleBot.TXT");
ToDolDoc("D:/Wb/Home/Sup1/Sup1Bin/TempleBot.TXT");
TOSToHtml("D:/Wb/Home/Sup1/Sup1Bin/TempleBot.TXT");
Del("D:/Wb/Home/Sup1/Sup1Bin/TempleBot.TXT");
DirTreeDel(tempde1);
Drv('C');
}