TempleOSCDV4.09.ISO
This commit is contained in:
1 parent
2d56cda5f3
commit
353eac0dbe
88 files changed
+2449
-2043
No files matched your search
+1
-1
@@ -4,4 +4,4 @@ When an $FG,2$AutoFile$FG$ runs, a child task is $LK,"Spawn",A="MN:Spawn"$()ed w
|
||||
|
||||
See $LK,"::/Demo/AutoFile/AFDir.AUT"$.
|
||||
|
||||
Note: $LK,"Auto",A="MN:Auto"$("") can be used if all you need is to send ASCII characters. It differs from $LK,"AutoStr",A="MN:AutoStr"$(). You'll probably use $LK,"Auto",A="MN:Auto"$() a lot and not $LK,"AutoStr",A="MN:AutoStr"$(). With $LK,"Auto",A="MN:Auto"$(), for example, you can place answers to the prompts for recompiling the $FG,2$Kernel$FG$ module during $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$().
|
||||
Note: $LK,"Auto",A="MN:Auto"$("") can be used if all you need is to send ASCII characters. It differs from $LK,"AutoStr",A="MN:AutoStr"$(). You'll probably use $LK,"Auto",A="MN:Auto"$() a lot and not $LK,"AutoStr",A="MN:AutoStr"$(). With $LK,"Auto",A="MN:Auto"$(), for example, you can place answers to the prompts for recompiling the $FG,2$Kernel$FG$ module during $LK,"BootHDIns",A="MN:BootHDIns"$().
|
||||
Binary file not shown.
+22
-3
@@ -2,7 +2,26 @@ $WW,1$$FG,5$$TX+CX,"Change Log"$$FG$
|
||||
|
||||
Use $LK,"R",A="MN:R"$() to rename if I change a label.
|
||||
|
||||
$IV,1$----06/24/16 21:56:10----$IV,0$
|
||||
$IV,1$----07/04/16 14:13:54----$IV,0$
|
||||
* $BK,1$TempleOS version 4.09 Released$BK,0$
|
||||
* Improved $LK,"::/Demo/Games/EagleDive.CPP"$.
|
||||
* Improved $LK,"GrFillTri0",A="MN:GrFillTri0"$().
|
||||
|
||||
$IV,1$----07/03/16 04:30:05----$IV,0$
|
||||
* Added $LK,"Unmount",A="MN:Unmount"$().
|
||||
* Made BootLoader mandatory in $LK,"RedSeaISO",A="MN:RedSeaISO"$().
|
||||
* Added $LK,"BDT_FILE_READ",A="MN:BDT_FILE_READ"$.
|
||||
|
||||
$IV,1$----07/01/16 05:29:08----$IV,0$
|
||||
* Made underscore mandatory on $LK,"HolyC",A="FI:::/Doc/HolyC.TXT"$ callable asm functions.
|
||||
|
||||
$IV,1$----06/28/16 13:15:08----$IV,0$
|
||||
* Changed $LK,"TaskRep",A="MN:TaskRep"$() and $LK,"MemRep",A="MN:MemRep"$().
|
||||
* Changed $LK,"::/Adam/WallPaper.CPP"$.
|
||||
|
||||
$IV,1$----06/26/16 14:01:16----$IV,0$
|
||||
* Added $LK,"LastFun",A="MN:LastFun"$(), $LK,"RunFile",A="MN:RunFile"$(), $LK,"RunFile2",A="MN:RunFile2"$() and $LK,"PopUpRunFile",A="MN:PopUpRunFile"$().
|
||||
* Made boot code modular.
|
||||
|
||||
$IV,1$----06/24/16 14:15:13----$IV,0$
|
||||
* Added A.I. to $LK,"::/Apps/KeepAway/KeepAway.CPP"$ and changed scoring.
|
||||
@@ -48,7 +67,7 @@ $IV,1$----05/23/16 01:30:28----$IV,0$
|
||||
* $LK,"R",A="MN:R"$("ISOFileCreate","$LK,"ISO9660ISO",A="MN:ISO9660ISO"$");
|
||||
|
||||
$IV,1$----05/19/16 02:16:09----$IV,0$
|
||||
* Added $LK,"BDT_FILE",A="MN:BDT_FILE"$.
|
||||
* Added $LK,"BDT_FILE_WRITE",A="MN:BDT_FILE_WRITE"$.
|
||||
|
||||
$IV,1$----05/17/16 07:16:38----$IV,0$
|
||||
* Worked on compiler $LK,"CICArg",A="MN:CICArg"$.a1_type_pointed_to.
|
||||
@@ -246,7 +265,7 @@ $IV,1$----01/12/16 19:17:12----$IV,0$
|
||||
|
||||
$IV,1$----01/12/16 10:06:18----$IV,0$
|
||||
* $BK,1$TempleOS version 4.01 Released$BK,0$
|
||||
* Standardized drive letters. Your $LK,"Auto",A="MN:Auto"$() config scripts for compiling the kernel with $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$() must be changed.
|
||||
* Standardized drive letters. Your $LK,"Auto",A="MN:Auto"$() config scripts for compiling the kernel with $LK,"BootHDIns",A="MN:BootHDIns"$() must be changed.
|
||||
* Added $LK,"CCF_QUESTION_HELP",A="MN:CCF_QUESTION_HELP"$.
|
||||
|
||||
$IV,1$----01/11/16 00:04:38----$IV,0$
|
||||
|
||||
+1
-1
@@ -39,4 +39,4 @@ $ID,-2$
|
||||
|
||||
* You can define handler functions for $FG,2$<CTRL-ALT-letter>$FG$ keys with $LK,"CtrlAltCBSet",A="MN:CtrlAltCBSet"$(). They operate either in a interrupt environment or in the window mgr when it queues kbd msgs. You can do $LK,"Raw",A="MN:Raw"$() output. $FG,2$<CTRL-ALT-letter>$FG$ handlers take a scan_code as an arg.
|
||||
|
||||
* If you recompile $FG,2$Kernel$FG,2$$FG$ with $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$(), you can set the $FG,4$MemInit$FG$, option to initialize memory to a value at boot, the $FG,4$HeapInit$FG$ option to cause mem alloced off the heap to be initialized or $FG,4$VarInit$FG$ option so both global and local vars will be initialized to a value. Pick a non-zero value to discover uninitialized var bugs. You can set $LK,"sys_var_init_flag",A="MN:sys_var_init_flag"$, and $LK,"sys_heap_init_flag",A="MN:sys_heap_init_flag"$ directly after booting.
|
||||
* If you recompile $FG,2$Kernel$FG,2$$FG$ with $LK,"BootHDIns",A="MN:BootHDIns"$(), you can set the $FG,4$MemInit$FG$, option to initialize memory to a value at boot, the $FG,4$HeapInit$FG$ option to cause mem alloced off the heap to be initialized or $FG,4$VarInit$FG$ option so both global and local vars will be initialized to a value. Pick a non-zero value to discover uninitialized var bugs. You can set $LK,"sys_var_init_flag",A="MN:sys_var_init_flag"$, and $LK,"sys_heap_init_flag",A="MN:sys_heap_init_flag"$ directly after booting.
|
||||
+3
-3
@@ -1,8 +1,8 @@
|
||||
$HL,1$$WW,0$#define __DATE__ #exe{StreamPrint("\"%D\"",Now);}
|
||||
#define __TIME__ #exe{StreamPrint("\"%T\"",Now);}
|
||||
#define __LINE__ #exe{StreamPrint("%d",Fs->last_lex->lex_include_stk->line_num);}
|
||||
#define __CMD_LINE__ #exe{StreamPrint("%d",Fs->last_lex->flags&CCF_CMD_LINE && Fs->last_lex->lex_include_stk->depth<2);}
|
||||
#define __FILE__ #exe{StreamPrint("\"%s\"",Fs->last_lex->lex_include_stk->full_name);}
|
||||
#define __LINE__ #exe{StreamPrint("%d",Fs->last_cc->lex_include_stk->line_num);}
|
||||
#define __CMD_LINE__ #exe{StreamPrint("%d",Fs->last_cc->flags&CCF_CMD_LINE && Fs->last_cc->lex_include_stk->depth<2);}
|
||||
#define __FILE__ #exe{StreamPrint("\"%s\"",Fs->last_cc->lex_include_stk->full_name);}
|
||||
#define __DIR__ #exe{StreamDir;}
|
||||
|
||||
See $LK,"::/Demo/Directives.CPP"$.$HL,0$$WW,1$
|
||||
+2
-2
@@ -31,7 +31,7 @@ $ID,2$The term $LK,"JIT Compile Mode",A="FF:::/Doc/Glossary.TXT,JIT Compile Mode
|
||||
$ID,-2$$TR,"Why do files end in .Z? Are they encrypted?"$
|
||||
$ID,2$Files with names ending in $FG,2$.Z$FG$ are individually compressed using $LK,"TempleOS Compression",A="FI:::/Kernel/Compress.CPP"$. They are not encrypted. $LK,"Copy",A="MN:Copy"$() or rename them with $LK,"Move",A="MN:Move"$() to a name without $FG,2$.Z$FG$ and they will be stored in an uncompressed form. See $LK,"TOSZ",A="FI:::/Doc/TOSZ.TXT"$ for Linux or Windows uncompress C/C++ code.
|
||||
$ID,-2$$TR,"Is it open source? How do I build it?"$
|
||||
$ID,2$TempleOS is 100% open src. All the src code is included in the distro. Use $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$() to compile the kernel and compiler. The rest is $LK,"JIT Compiled",A="FF:::/Doc/Glossary.TXT,JIT Compile Mode"$ during boot. See $LK,"::/StartOS.CPP"$.
|
||||
$ID,2$TempleOS is 100% open src. All the src code is included in the distro. Use $LK,"BootHDIns",A="MN:BootHDIns"$() to compile the kernel and compiler. The rest is $LK,"JIT Compiled",A="FF:::/Doc/Glossary.TXT,JIT Compile Mode"$ during boot. See $LK,"::/StartOS.CPP"$.
|
||||
$ID,-2$$TR,"Where are object files? How do I link?"$
|
||||
$ID,2$TempleOS does not use object files or a linker. $LK,"AOT Compile Mode",A="FF:::/Doc/Glossary.TXT,AOT Compile Mode"$ is used to directly create flat binary files, $FG,2$/Kernel.BIN.C$FG$ and $FG,2$/Compiler/Compiler.BIN.Z$FG$ with no object files and linking.$FG$ $LK,"JIT Compile Mode",A="FF:::/Doc/Glossary.TXT,JIT Compile Mode"$ place code in memory, ready to run, with no object files or linking. Linking is done when $FG,2$BIN$FG$ modules are $LK,"Load",A="MN:Load"$()ed.
|
||||
$ID,-2$$TR,"What is the FPS refresh rate?"$
|
||||
@@ -57,7 +57,7 @@ $ID,2$There is no $FG,2$PATH$FG$. You do not enter filenames at the command-lin
|
||||
$ID,-2$$TR,"How do I boot it with Grub?"$
|
||||
$ID,2$If you use $LK,"Grub",A="FI:::/Doc/Grub.TXT"$, you $FG,2$chain-load$FG$ like Windows. See $LK,"Boot",A="FI:::/Doc/Boot.TXT"$. You can use the TempleOS boot-loader. $LK,"Master-Boot-Loader-Stage1",A="FI:::/Adam/Opt/Boot/BootMHD.CPP"$, $LK,"Master-Boot-Loader-Stage2",A="FI:::/Adam/Opt/Boot/BootMHD2.CPP"$, $LK,"Partition-Boot-Loader",A="FI:::/Adam/Opt/Boot/BootHD.CPP"$, $LK,"CD-DVD-Boot-Loader",A="FI:::/Adam/Opt/Boot/BootDVD.CPP"$.
|
||||
$ID,-2$$TR,"How do I get Kernel.BIN to boot?"$
|
||||
$ID,2$The boot-loaders must be patched by you running $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$() or $LK,"MasterBootInstall",A="MN:MasterBootInstall"$(). Those will write the block address into the boot-loader because the boot-loaders do not navigate file systems to find the $LK,"Stage2",A="FI:::/Kernel/KStart.CPP"$ if you relocate it.
|
||||
$ID,2$The boot-loaders must be patched by you running $LK,"BootHDIns",A="MN:BootHDIns"$() or $LK,"BootMHDIns",A="MN:BootMHDIns"$(). Those will write the block address into the boot-loader because the boot-loaders do not navigate file systems to find the $LK,"Stage2",A="FI:::/Kernel/KStart.CPP"$ if you relocate it.
|
||||
$ID,-2$$TR,"Why is there some 16-Bit code?"$
|
||||
$ID,2$TempleOS is 64-bit. Like all PC operating systems, the boot-loader starts in 16-bit real-mode. TempleOS calls a few $FG,2$BIOS$FG$ info routines, switches to VGA-640x480x4bit, switches to 32-bit, then, 64-bit mode. There is an odd thing called a $FG,2$$TX,"PCI BIOS",HTML="http://www.o3one.org/hwdocs/bios_doc/pci_bios_21.pdf"$$FG$ which is 32-bit used for $FG,2$PCI$FG$ config space access. TempleOS calls $LK,"that",A="FI:::/Kernel/PCIBIOS.CPP"$ a couple times. It must temporarily drop-out-of 64-bit mode for that and stop multi-tasking.
|
||||
$ID,-2$$TR,"Why are you pushing 32-bit values on the stack?"$
|
||||
|
||||
@@ -42,6 +42,12 @@ $ID,-2$
|
||||
$FG,2$'f'$FG$
|
||||
$ID,2$Format drive.
|
||||
$ID,-2$
|
||||
$FG,2$'i'$FG$
|
||||
$ID,2$Mount ISO.C file.
|
||||
$ID,-2$
|
||||
$FG,2$'u'$FG$
|
||||
$ID,2$Unmount drive(s).
|
||||
$ID,-2$
|
||||
$FG,2$'M'$FG$
|
||||
$ID,2$Make CD/DVD ISO file. This creates a file image of the dir the cursor is on. The name of the ISO file is $LK,"blkdev.dft_iso_filename",A="MN:CBlkDevGlbls"$ and can be redefined in your start-up scripts. You may wish to place it on a different drive.
|
||||
$ID,-2$
|
||||
|
||||
+4
-4
@@ -66,7 +66,7 @@ $FG,2$Ident$FG$ Identifier, Identity, Identical
|
||||
$FG,2$IDT$FG$ Interrupt Descriptor Table
|
||||
$FG,2$Idx$FG$ Index
|
||||
$FG,2$Init$FG$ Initialize
|
||||
$FG,2$Ins$FG$ Insert
|
||||
$FG,2$Ins$FG$ Insert, Install
|
||||
$FG,2$Inst$FG$ Instruction
|
||||
$FG,2$Int$FG$ Interrupt, Integer
|
||||
$FG,2$ip_$FG$ Input Pointer. See $LK,"InputPointer.CPP",A="FI:::/Kernel/SerialDev/InputPointer.CPP"$.
|
||||
@@ -165,7 +165,7 @@ $ID,2$$FG,2$Ahead-of-Time$FG$ compiling is conventional compilation mode. Do no
|
||||
|
||||
In $FG,2$AOT$FG$ mode, $FG,2$.PRJ$FG$ files are compiled to $FG,2$.BIN$FG$ files, skipping $FG,2$.OBJ$FG$ files. After compiling, $FG,2$.BIN$FG$ files are $LK,"Load",A="MN:Load"$()ed.
|
||||
|
||||
There is no $FG,2$main()$FG$ routine. Instead, stmts outside functions are automatically executed upon loading. There is no way to unload except by killing the task. To invoke $FG,2$AOT Compiled Mode$FG$, $LK,"Cmp",A="MN:Cmp"$() is used. The $FG,2$Kernel$FG$ module and compiler are made in $FG,2$AOT$FG$ compiled mode. See $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$() which calls $LK,"MakeAll",A="MN:MakeAll"$() where $FG,2$Kernel.BIN.C$FG$ and $FG,2$Compiler.BIN.Z$FG$ are created.
|
||||
There is no $FG,2$main()$FG$ routine. Instead, stmts outside functions are automatically executed upon loading. There is no way to unload except by killing the task. To invoke $FG,2$AOT Compiled Mode$FG$, $LK,"Cmp",A="MN:Cmp"$() is used. The $FG,2$Kernel$FG$ module and compiler are made in $FG,2$AOT$FG$ compiled mode. See $LK,"BootHDIns",A="MN:BootHDIns"$() which calls $LK,"MakeAll",A="MN:MakeAll"$() where $FG,2$Kernel.BIN.C$FG$ and $FG,2$Compiler.BIN.Z$FG$ are created.
|
||||
$ID,-2$$TR,"JIT Compile Mode"$
|
||||
$ID,2$In $FG,2$just-in-time$FG$ mode, the compiler places code and data in memory alloced from the heap, incrementally, making them immediately ready for in-place execution. This mode is used during cmd line operations. When you $FG,2$#include$FG$ a file, it is compiled function by function and code ends-up all over in the memory, at least in the first 2Gig of memory. The $LK,"ExeFile",A="MN:ExeFile"$() routine is the same as $FG,2$#include$FG$ but can be used in programs. $LK,"ExePrint",A="MN:ExePrint"$() routine will compile and run a string.
|
||||
$ID,-2$$TR,"Compiler Intermediate Code"$
|
||||
@@ -222,14 +222,14 @@ $LK,"FILEMASK_SRC",A="MN:FILEMASK_SRC"$
|
||||
$LK,"FILEMASK_AOT",A="MN:FILEMASK_AOT"$
|
||||
$LK,"FILEMASK_JIT",A="MN:FILEMASK_JIT"$
|
||||
$LK,"FILEMASK_GRA",A="MN:FILEMASK_GRA"$
|
||||
$ID,-2$$TR,"Naming Convention"$
|
||||
$ID,-2$$TR-C,"Naming Convention"$
|
||||
$ID,2$Since there are no $FG,2$namespaces$FG$ and I don't plan to implement name spaces, I highly recommend putting a 2-3 character module code prefix on syms. e.g. $FG,2$WS$FG$, $FG,2$Doc$FG$, $FG,2$Lex$FG$
|
||||
|
||||
$FG,5$ALL_CAPS$FG$
|
||||
Assembly Language labels are capitalized with underscores between words. So are $FG,2$#define$FG$'s.
|
||||
|
||||
$FG,5$_ALL_CAPS$FG$
|
||||
Asm routines which are $LK,"HolyC",A="FI:::/Doc/HolyC.TXT"$ callible should have a leading underscore.
|
||||
Asm routines which are $LK,"HolyC",A="FI:::/Doc/HolyC.TXT"$ callable must have a leading underscore.
|
||||
|
||||
$FG,5$MixedCaps$FG$
|
||||
$LK,"HolyC",A="FI:::/Doc/HolyC.TXT"$ Functions and class names are MixedCaps.
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@ $FG,5$$TX+CX,"The Grub Master Bootloader"$$FG$
|
||||
|
||||
$WW,1$Here are my $FG,2$grub.cfg$FG$ file entries for my TempleOS partitions. I don't have the patience to do it correctly and GRUB obfuscates. Chain loading is just the normal way an operating system like Windows boots. They do drives, zero-based, and partitions on drives, one-based. They call traditional partitioning a "msdos" partition and I presume, if there is a new way to partition drives, it has a new name.
|
||||
|
||||
In addition to a Windows and a Linux partition, I have a Primary TempleOS $FG,2$'D'$FG$, Backup TempleOS $FG,2$'E'$FG$ and a Transfer $FG,2$'I'$FG$ partition for transferring between Windows and TempleOS. "hd0" is 1st hard drive, zero-based numbering. "msdos1" is partition #1, traditional msdos partitioning. I keep $FG,2$'D'$FG$, $FG,2$'E'$FG$, and $FG,2$'I'$FG$ ident by frequently copying all files and I use $FG,2$'I'$FG$ to transfer files. They only need to be a couple Gig in size. Every time I copy files, use $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$() to $LK,"MakeAll",A="MN:MakeAll"$ and prepare the partition $LK,"boot sector",A="FI:::/Adam/Opt/Boot/BootHD.CPP"$ for chainloading by patching the new block address and size of $FG,2$Kernel.BIN.C$FG$.
|
||||
In addition to a Windows and a Linux partition, I have a Primary TempleOS $FG,2$'D'$FG$, Backup TempleOS $FG,2$'E'$FG$ and a Transfer $FG,2$'I'$FG$ partition for transferring between Windows and TempleOS. "hd0" is 1st hard drive, zero-based numbering. "msdos1" is partition #1, traditional msdos partitioning. I keep $FG,2$'D'$FG$, $FG,2$'E'$FG$, and $FG,2$'I'$FG$ ident by frequently copying all files and I use $FG,2$'I'$FG$ to transfer files. They only need to be a couple Gig in size. Every time I copy files, use $LK,"BootHDIns",A="MN:BootHDIns"$() to $LK,"MakeAll",A="MN:MakeAll"$ and prepare the partition $LK,"boot sector",A="FI:::/Adam/Opt/Boot/BootHD.CPP"$ for chainloading by patching the new block address and size of $FG,2$Kernel.BIN.C$FG$.
|
||||
|
||||
menuentry "TempleOS D" {
|
||||
insmod chain
|
||||
|
||||
+2
-2
@@ -8,9 +8,9 @@ $FG,2$/Demo$FG$ Here you can find lots of sample code to do various things.
|
||||
|
||||
$FG,2$/Doc$FG$ Here you can find documentation.
|
||||
|
||||
$FG,2$/Kernel$FG$ The core of the operating system is found here. Since priviledge levels are not used, calling it a $FG,2$kernel$FG$ is deceptive. It is $FG,2$AOT$FG$ compiled by $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$(). It is loaded by the boot loader and must fit in 640K.
|
||||
$FG,2$/Kernel$FG$ The core of the operating system is found here. Since priviledge levels are not used, calling it a $FG,2$kernel$FG$ is deceptive. It is $FG,2$AOT$FG$ compiled by $LK,"BootHDIns",A="MN:BootHDIns"$(). It is loaded by the boot loader and must fit in 640K.
|
||||
|
||||
$FG,2$/Compiler$FG$ The compiler module src code is found here. The compiler is $FG,2$AOT$FG$ compiled to produce a binary file which is loaded at boot. It, too, is $FG,2$AOT$FG$ compiled by $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$().
|
||||
$FG,2$/Compiler$FG$ The compiler module src code is found here. The compiler is $FG,2$AOT$FG$ compiled to produce a binary file which is loaded at boot. It, too, is $FG,2$AOT$FG$ compiled by $LK,"BootHDIns",A="MN:BootHDIns"$().
|
||||
|
||||
$FG,2$/Adam$FG$ The non-kernel part of the operating system is found here. It is $FG,2$JIT$FG$ compiled during boot. The $LK,"Adam Task",A="FF:::/Doc/Glossary.TXT,Adam Task"$ is the father of all tasks, like Adam and Eve.
|
||||
|
||||
|
||||
Binary file not shown.
+4
-4
@@ -21,7 +21,7 @@ $ID,2$This will perform a special $LK,"Mount",A="MN:Mount"$() automatically.
|
||||
$BK,1$WARNING:$BK,0$ This command erases everything on a hard drive. It repartitions a whole drive and formats the partitions$FG$. This command should be skipped if you already have your hard drive partitioned.
|
||||
|
||||
|
||||
$BK,1$WARNING:$BK,0$ This command doesn't play well with other operating systems. You'll need to do a $LK,"MasterBootZero",A="MN:MasterBootZero"$() to restore your drive to a state where other operating systems can partition it.
|
||||
$BK,1$WARNING:$BK,0$ This command doesn't play well with other operating systems. You'll need to do a $LK,"BootMHDZero",A="MN:BootMHDZero"$() to restore your drive to a state where other operating systems can partition it.
|
||||
$ID,-2$
|
||||
$ID,-2$2) $LK,"Fmt",A="MN:Fmt"$($FG,2$'D'$FG$,$FG,2$TRUE,FALSE,FSt_FAT32$FG$)
|
||||
$ID,2$This command formats a drive with $FG,2$FAT32$FG$ or the $LK,"RedSea",A="FI:::/Doc/RedSea.TXT"$ file system type. Use the drive letter of the partition in place of $FG,2$'D'$FG$.
|
||||
@@ -31,12 +31,12 @@ $BK,1$WARNING:$BK,0$ If you are upgrading, be sure not to lose the file, $FG,2$
|
||||
$ID,-2$3) $LK,"CopyTree",A="MN:CopyTree"$($FG,2$"T:/"$FG$,$FG,2$"D:/"$FG$)
|
||||
$ID,2$This command is used to copy files onto a hard drive partition from the CD/DVD. Use the drive letter of the partition in place of $FG,2$'D'$FG$.
|
||||
|
||||
$ID,-2$4) $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$($FG,2$'D'$FG$)
|
||||
$ID,-2$4) $LK,"BootHDIns",A="MN:BootHDIns"$($FG,2$'D'$FG$)
|
||||
$ID,2$This command recompiles the source code on a drive and writes to the $UL,1$drive's$UL,0$ boot record. You'll need to reenter the $LK,"Mount",A="MN:Mount"$ information so it can be stored in the kernel.
|
||||
|
||||
$ID,-2$5) Use Linux's $LK,"Grub",A="FI:::/Doc/Grub.TXT"$ or TempleOS' $LK,"MasterBootInstall",A="MN:MasterBootInstall"$($FG,2$'D'$FG$)
|
||||
$ID,-2$5) Use Linux's $LK,"Grub",A="FI:::/Doc/Grub.TXT"$ or TempleOS' $LK,"BootMHDIns",A="MN:BootMHDIns"$($FG,2$'D'$FG$)
|
||||
$ID,2$
|
||||
The $LK,"MasterBootInstall",A="MN:MasterBootInstall"$() command places a boot loader on a drive. It saves the old master boot record to $FG,2$/0000Adam/Opt/Boot/OldMBR.BIN.C$FG$ and replaces it. When you boot, you will have the option of booting the old master boot record. This command can be skipped if you already have a boot loader. Be sure not to lose the copy of the old boot record, like if you reformat the drive.
|
||||
The $LK,"BootMHDIns",A="MN:BootMHDIns"$() command places a boot loader on a drive. It saves the old master boot record to $FG,2$/0000Adam/Opt/Boot/OldMBR.BIN.C$FG$ and replaces it. When you boot, you will have the option of booting the old master boot record. This command can be skipped if you already have a boot loader. Be sure not to lose the copy of the old boot record, like if you reformat the drive.
|
||||
|
||||
Delete $FG,2$/0000Adam/Opt/Boot/OldMBR.BIN.C$FG$ if you want to get a fresh copy of a mbr, like if installing from your own custom CD containing it's own $FG,2$/0000Adam/Opt/Boot/OldMBR.BIN.C$FG$ onto a system with a non-TempleOS boot loader.
|
||||
|
||||
|
||||
+2
-2
@@ -29,9 +29,9 @@ $FG,2$Merge(\"C:/*\",\"D:/*\",\"+r+d\");$FG$ to check my changes.
|
||||
|
||||
* You can use $FG,2$filter_lines$FG$ in the editor text search form ($FG,2$<CTRL-f>$FG$) to temporarily display just lines near each match. A value of $FG,2$filter lines$FG$ set to $FG,2$5$FG$ will display lines within 5 lines of matches. Then, you can do another find to a different string and achieve a $FG,2$AND$FG$ search. When finished, press $FG,2$<ESC>$FG$.
|
||||
|
||||
* You can recompile and reinstall the kernel with $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$(). You'll probably want to make a function for recompiling that uses the $LK,"Auto",A="MN:Auto"$() function to answer the cfg questions. See my technique $LK,"Cfg Strs",A="FL:::/Demo/AcctExample/TOSCfg.CPP,1"$, $LK,"Update Funs",A="FL:::/Demo/AcctExample/TOSDistro.CPP,1"$.
|
||||
* You can recompile and reinstall the kernel with $LK,"BootHDIns",A="MN:BootHDIns"$(). You'll probably want to make a function for recompiling that uses the $LK,"Auto",A="MN:Auto"$() function to answer the cfg questions. See my technique $LK,"Cfg Strs",A="FL:::/Demo/AcctExample/TOSCfg.CPP,1"$, $LK,"Update Funs",A="FL:::/Demo/AcctExample/TOSDistro.CPP,1"$.
|
||||
|
||||
* $LK,"Scale2Mem",A="MN:Scale2Mem"$(min,max,limit=2*1024*1024*1024) can be used for cfg questions when recompiling. The $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$() cfg prompts accept expressions, not just numbers. The dft disk cache is $FG,2$Scale2Mem(0x80000,0x8000000)$FG$.
|
||||
* $LK,"Scale2Mem",A="MN:Scale2Mem"$(min,max,limit=2*1024*1024*1024) can be used for cfg questions when recompiling. The $LK,"BootHDIns",A="MN:BootHDIns"$() cfg prompts accept expressions, not just numbers. The dft disk cache is $FG,2$Scale2Mem(0x80000,0x8000000)$FG$.
|
||||
|
||||
* You can permanently disable $FG,2$AutoComplete$FG$ commenting-out $LK,"ACInit",A="FF:/Home/HomeSys.CPP,ACInit"$() in $LK,"~/HomeSys.CPP",A="FF:/Home/HomeSys.CPP,ACInit"$.
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
$WW,1$$FG,5$$TX+CX,"Upgrading TempleOS"$$FG$
|
||||
|
||||
To upgrade, you generally boot the new TempleOS CD/DVD, install on top of your drive, modify your files and set it to boot your account by executing $LK,"MakeOSDrvBootInstall",A="MN:MakeOSDrvBootInstall"$(). Often, your code will have to be modified to work with the new version. See $LK,"Change Log",A="FI:::/Doc/ChangeLog.TXT"$. You might have to boot an alternate drive or the CD and modify your code until it boots okay.
|
||||
To upgrade, you generally boot the new TempleOS CD/DVD, install on top of your drive, modify your files and set it to boot your account by executing $LK,"BootHDIns",A="MN:BootHDIns"$(). Often, your code will have to be modified to work with the new version. See $LK,"Change Log",A="FI:::/Doc/ChangeLog.TXT"$. You might have to boot an alternate drive or the CD and modify your code until it boots okay.
|
||||
|
||||
See the $LK,"Installing",A="FI:::/Doc/Install.TXT"$ documentation.
|
||||
Reference in new issue
Block a user