LTCD_070816.ISO
This commit is contained in:
1 parent
d14bbc24f9
commit
0e9364ff4c
506 files changed
+157705
-41812
No files matched your search
@@ -0,0 +1,82 @@
|
||||
//Change anything you want in this
|
||||
//account file or others.
|
||||
|
||||
local_time_offset=-7*60*60*LTDATE_FREQ;
|
||||
|
||||
//$AN,"","mouse_move_scale"$adjust these to set mouse move scale
|
||||
mxx_scale=1.0;
|
||||
myy_scale=1.0;
|
||||
mzz_scale=1.0; //wheel
|
||||
|
||||
//don't change these
|
||||
mxx_prescale=mxx/mxx_scale;
|
||||
myy_prescale=myy/myy_scale;
|
||||
mzz_prescale=mzz/mzz_scale;
|
||||
|
||||
|
||||
MPStart;
|
||||
Cd("/LT/Adam");;
|
||||
#include "PicWords2"
|
||||
#include "HOME/PicWords3"
|
||||
Cd("/LT/Utils/Boot");;
|
||||
#include "InsBoot"
|
||||
Cd("/LT/Utils");;
|
||||
#include "Disk20"
|
||||
#include "Diff"
|
||||
#include "Grep"
|
||||
#include "Merge"
|
||||
#include "S2T"
|
||||
#include "IDE"
|
||||
#include "LinkChk"
|
||||
#include "HeapLog"
|
||||
#include "ListFile"
|
||||
LoadMapFile("::/LT/OSMain/OS.MPZ"); //Enable Man()
|
||||
LoadMapFile("::/LT/Compiler/Compiler.MPZ"); //Enable Man()
|
||||
LoadMapFile("::/LT/Adam/GrAsm/GrAsm.MPZ"); //Enable Man()
|
||||
Cd("/LT/Apps");;
|
||||
#include "TimeClock/Load.CPZ"
|
||||
#include "MusicOrgan/Load.CPZ"
|
||||
|
||||
Cd("/LT/Accts/TAD");;
|
||||
#include "HOME/Private/Adam4"
|
||||
#include "TADAdam"
|
||||
#include "Distribute"
|
||||
#include "PlugIns"
|
||||
Cd("/LT/Accts/TAD/Testing");;
|
||||
#include "Compiler5"
|
||||
Cd("/LT/Accts/TAD/BenchMarks");;
|
||||
#include "CompareCmp"
|
||||
|
||||
Del("::/Temp/ScreenShots/*");
|
||||
|
||||
void StartUpTsks()
|
||||
{
|
||||
I1 buf[80];
|
||||
TssStruct *tss,*tss1;
|
||||
|
||||
InitLocalTask; //needed for disk access
|
||||
Preempt(ON); //off by default
|
||||
Silent(ON); //no output to screen
|
||||
|
||||
try {
|
||||
tss1=SpawnUser;
|
||||
tss=SpawnUser;
|
||||
WinToTop(tss1);
|
||||
WinTileVert;
|
||||
PopUp("#include \"::/LT/Doc/StartSong.CPZ\";");
|
||||
|
||||
SPrintF(buf,"Boot Time:%h17Ts\r\n",BootTime);
|
||||
AdamLog(buf);
|
||||
XTalk(tss1,"#include \"DoIt\";\r");
|
||||
|
||||
WsInit("/LT");
|
||||
WordStat;
|
||||
AdamLog("WordStat Time:%7.3f\r\n",BootTime*1.0/LTDATE_FREQ);
|
||||
} catch
|
||||
CatchAll;
|
||||
}
|
||||
|
||||
//This must be spawned because start-up files
|
||||
// may invoke the Adam() cmd.
|
||||
Spawn(&StartUpTsks,"Spawn Users");
|
||||
PrintF("\r\nOS Compile Time:%D %T\r\n",sys_compile_time,sys_compile_time);
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,170 @@
|
||||
$WW,1$You can access your own TODO/favorites file with CTRL-SHIFT-F.
|
||||
|
||||
$TX+TR,""$$BK,1$$FG,4$LEGAL STUFF:$BK,0$$FG$
|
||||
$ID,2$ This file is where I set my plans. There are no guarentees. I work "iteratively" when programming--often writing bad code to experiment with and later changing it on a priority basis. The order things are listed does not necessarily reflect the order they will be done, if at all--I often do stuff when I'm in the mood.
|
||||
|
||||
$ID,-2$$TR-C,"HANDY FILE LINKS"$
|
||||
$ID,2$
|
||||
$LK+S,"Goto OS Systext","FA:::/LT/OSMain/SysText.CPZ,OS_SYSTEXT"$
|
||||
$LK+S,"Goto Compiler Systext","FA:::/LT/Compiler/CmpInit.CPZ,COMPILE_SYSTEXT"$
|
||||
|
||||
$LK+S,"::/LT/Doc/News.TXZ","FI:::/LT/Doc/News.TXZ"$
|
||||
$ID,-2$$TR-C,"THINGS WHICH MIGHT CHANGE"$
|
||||
$ID,2$
|
||||
$ID,-2$$TR-C,"HIGH PRIORITY"$
|
||||
$ID,2$
|
||||
* document internals of keyboard processing
|
||||
|
||||
* I think a partition was left locked after pressing ctrl-alt-c in a copy.
|
||||
|
||||
* Dasm OR mode 0D
|
||||
* Ln(-1.0);
|
||||
|
||||
* inline functions?
|
||||
|
||||
* Document start,step on clipped lines.
|
||||
* Penwidth or brush with clipped line
|
||||
|
||||
* make popuppickfile/dir with default dir? in registry?
|
||||
|
||||
* fix %g, not sure it's worth it--standard seems dumb.
|
||||
|
||||
* efficient line clipping
|
||||
* clipping bug--draw pen_width pixel near border.
|
||||
* with pen_width of, say, 2... blots a width 8 and checks too far over (IsPixelCovered)
|
||||
|
||||
* Better single step--already have $LK,"DasmIns","MN:DasmIns"$() set to return branch offsets. Needs to put breakpoints on all branches outside the current C/C+ source code line. Problem is calls--should open files... whatever
|
||||
|
||||
* add compact to ltz--low priority
|
||||
|
||||
* Word Wrap has some bugs
|
||||
* perhaps store ltfentry.display length--low priority (Significant profile time is spent on the StrLen instruction and it could be stored for each text entry.
|
||||
|
||||
* fix LTFile with alloccluster. Sorta fixed it--made all LT filesystem files marked contiguous, since they are. Should check what happens when you attempt to $LK,"FWBlks","MN:FWBlks"$() to acluster past the end.
|
||||
|
||||
* add compiler routine which you can pass a local-variable list, to provide locals which are globals, for stuff like a spread sheet or something. Might do this to facilitate spread-sheet type applications and things like SimStructure. Might do my budget program. low priority
|
||||
|
||||
* Fix dictionary--not sure it's broken, but it's missing words and definitions ?
|
||||
|
||||
* log to file--would be ineffecient--load-in whole file, modify and write out. Useful, but not very effecient
|
||||
|
||||
* test dvd burning-- It might put CD-ROM format on DVD. I probably need to use DMA, though, to prevent underflow when mutlitasking, but I don't feel like it. Headaches with dma involving compatibility. Missing documentation on DMA.
|
||||
|
||||
* CD boots--limit retry, seems to fail sometimes.
|
||||
|
||||
* make partitioner round to 63 blks
|
||||
* make editable partitioner
|
||||
* Make driveutil with maps and adddrive and partition report
|
||||
|
||||
* prtscrn--printer support... is PortNop() a problem?
|
||||
|
||||
* rename command
|
||||
* log filename generator--pick next larger than last logfilenamenum found
|
||||
|
||||
* SprintF NaN,Inf; GetF Inf
|
||||
* GetF date codes
|
||||
|
||||
* make grelem insert use l->mem_tss?
|
||||
* Ltf's not using mem_tss?
|
||||
|
||||
$ID,-2$$TR,"DOCUMENTATION"$
|
||||
$ID,2$
|
||||
$ID,-2$$TR,"PERPETUAL TASKS"$
|
||||
$ID,2$* Change hardcoded stuff to SysText
|
||||
* Too much preemption turned off?
|
||||
* Look for mem leaks.
|
||||
* Move stuff out of OSmain.
|
||||
$TR-C,"COMPATIBILITY"$
|
||||
$ID,2$* TAD4 CD-ROM doesn't close
|
||||
* mouse IRQ doesn't work on TAD5.
|
||||
$ID,-2$$ID,-2$$TR-C,"GRAPHICS"$
|
||||
$ID,2$* Do something about extended ASCII in fonts.
|
||||
* skip redundant clipping, line and plot
|
||||
* SIMD transformation
|
||||
$ID,-2$$TR,"MULTICORE"$
|
||||
$ID,2$* move GrElem draw to CPU1?
|
||||
|
||||
$ID,-2$$TR,"DISK"$
|
||||
$ID,2$* Improve ATAPI read-ahead
|
||||
* Clear unused portion of clusters on disk writes
|
||||
* try not using FDCreadtrack on Mom's computer
|
||||
* removable media id (critical for resident files)
|
||||
* Flash cards: Flash mem cards might offer a removable, bootable media which will enable people to run without repartitioning--floppy is kinda small. DVD doesn't allow writing. Problem with flash is it is not standard equipment on computers. Would be very convenient for developing and distributing operating systems. I think LILO will allow Flash booting.
|
||||
* Report just one error per read track (Floppy)
|
||||
$ID,-2$$TR,"FILE"$
|
||||
$ID,2$* CurDir per partition? Path?
|
||||
* Make use of flag potential in SysFindFiles and possibly LTFileAccess
|
||||
* make contiguous flag right
|
||||
* implement fixed position files
|
||||
$ID,-2$$TR,"C+ LIBRARY"$
|
||||
$ID,2$* Improve Random number generator.
|
||||
* add field overflow I1 "t='*'"
|
||||
* Integer Money value for printf/getf--in pennies
|
||||
* Implement format codes into GetF
|
||||
* Date Input
|
||||
* flag for comma's in numeric output (printf). eg "1,000,000" instead of "1000000".
|
||||
$ID,-2$$TR,"APPLICATIONS"$
|
||||
$ID,2$$ID,-2$$TR,"EDITOR"$
|
||||
$ID,2$* Might allow constantly centered mode--cursor stays centered on screen(vertically).
|
||||
* Find jumps past current line
|
||||
* Make editor find command take dollar signs
|
||||
* Maybe allow SearchStr flags in Links
|
||||
* Link Type for SysText document? problem would be differnet needs for indexing into books. Bible uses book,chapter:verse, others are different. Already have links.
|
||||
* Generalize book links
|
||||
* HASHTYPE for Book? Index?
|
||||
* Add write protect mode with indicator and toggle
|
||||
$ID,-2$$TR,"IDE"$
|
||||
$ID,2$$ID,-2$$TR,"DEBUGGING"$
|
||||
$ID,2$* Improve fault handling--has inaccuracies--would be nice to display mem access violation addresses.
|
||||
$ID,-2$$TR,"ASSEMBLER"$
|
||||
$ID,2$* 16 bit Dasm is bad--very low priority
|
||||
* support r4u1 by adding 0x40 byte
|
||||
$ID,-2$$TR,"COMPILER"$
|
||||
$ID,2$* something makes $LK,"OptEnd","MN:OptEnd"$ not right
|
||||
* More RCX_CMPs, check existing
|
||||
* do r,rm IcCmp like IcBrCmp
|
||||
* PUSH_CMP allocs reg R9 or whatever
|
||||
* Might be problem with NOP in OPT pass1 for NO_PUSH in expressions besides assignments. Is ShiftNoPush fully implemented?
|
||||
$TR,"Check for problems"$
|
||||
$ID,2$* NOP1 might need to have diff ic_data's
|
||||
* in divequal, it assumes about ebx
|
||||
* check union return_class.
|
||||
$ID,-2$* error/warning line nums
|
||||
* ASM branch out of range off by 1 line--use lx->lag_line_num
|
||||
* Switch statement with sparse cases (low priority)
|
||||
* arbitrary named attributes like "fmtdata" or "fmtstr". Might allow arbitrary supplimental data in class definitions.
|
||||
* goto labels scope issues?
|
||||
* No str default function parameters inside $LK,"Static Compiled Mode","FF:::/LT/Doc/OSGlossary.GLZ,Static Compiled Mode"$.
|
||||
* var declarations after class definitions (Not a priority)
|
||||
* glbl vars--&function ptrs
|
||||
$TR,"Optimizations"$
|
||||
$ID,2$* push pop
|
||||
* maybe improve floating point compilation.
|
||||
* new TY_ mode SIB and reg extensions
|
||||
$ID,-2$$TR,"Picky"$
|
||||
$ID,2$* !double ~double
|
||||
* assign I2, etc. should sign extend copyleft
|
||||
$ID,-2$$ID,-2$$TR,"MEM"$
|
||||
$ID,2$* Redo mem Garbage collection on task and do one on system... but these don't help, so probably won't do it.
|
||||
$ID,-2$$TR,"LOW PRIORITY"$
|
||||
$ID,2$* num lock comes on with break key
|
||||
* sort options for findfiles
|
||||
$ID,-2$$TR,"TESTING"$
|
||||
$ID,2$* Tabs2Spaces
|
||||
$ID,-2$$TR,"INVESTIGATE"$
|
||||
$ID,2$*
|
||||
$ID,-2$$TR,"BUGS"$
|
||||
$ID,2$
|
||||
$ID,-2$$TR,"NASTY BUGS"$
|
||||
$ID,2$*
|
||||
$ID,-2$$TR,"BUGS WHICH MIGHT EXIST"$
|
||||
$ID,2$*
|
||||
$ID,-2$$TR,"BUGS WHICH MIGHT BE FIXED"$
|
||||
$ID,2$*
|
||||
$ID,-2$$TR,"MIGHT BE BUGS"$
|
||||
$ID,2$* recalc_start probably needs to be more accurate before recalculating.
|
||||
* In LtfPutSExt, might need to alloc extendstr, ect from different heap.
|
||||
$ID,-2$
|
||||
|
||||
$LK,"Bible","BF:Genesis,"$
|
||||
|
||||
@@ -0,0 +1,254 @@
|
||||
void InsertSong()
|
||||
{
|
||||
I1 *s1,*s2;
|
||||
s1=MakeSong;
|
||||
s2=MakeSong;
|
||||
PrintF("$$SO,\"\",\"%s%s%s%s\"$$",s1,s1,s2,s2);
|
||||
Free(s1);
|
||||
Free(s2);
|
||||
}
|
||||
|
||||
|
||||
void FillinTime()
|
||||
{
|
||||
LTDate ltdt;
|
||||
ltdt=GetCurTimeLTDate;
|
||||
PrintF("$$IV 1$$----%D %T----$$IV 0$$\r",ltdt,ltdt);
|
||||
}
|
||||
|
||||
class RenameSymbolStruct
|
||||
{
|
||||
I1 find[256] fmtstr "$$DA -P ,255 \"Find :%s\"$$\r\n";
|
||||
I1 replace[256] fmtstr "$$DA -P ,255 \"Replace:%s\"$$\r\n";
|
||||
};
|
||||
|
||||
void RenameCurSymbol()
|
||||
{
|
||||
I1 *buf;
|
||||
RenameSymbolStruct r;
|
||||
BoolU4 old_preempt=Preempt(OFF);
|
||||
StrCpy(r.find,ws_cur_word);
|
||||
StrCpy(r.replace,ws_cur_word);
|
||||
Preempt(old_preempt);
|
||||
if (PopUpDoForm(&r,"RenameSymbolStruct")) {
|
||||
buf=MSPrintF("R(\"%s\",\"%s\",\"+r+l+a\");",r.find,r.replace);
|
||||
PopUp(buf,Fs);
|
||||
Free(buf);
|
||||
}
|
||||
}
|
||||
|
||||
void RenameFile()
|
||||
{
|
||||
I1 *buf;
|
||||
RenameSymbolStruct r;
|
||||
BoolU4 old_preempt=Preempt(OFF);
|
||||
StrCpy(r.find,ws_cur_word);
|
||||
StrCpy(r.replace,ws_cur_word);
|
||||
Preempt(old_preempt);
|
||||
if (PopUpDoForm(&r,"RenameSymbolStruct")) {
|
||||
buf=MSPrintF("R(\"%s\",\"%s\",\"+r+l+a\");",r.find,r.replace);
|
||||
PopUp(buf,Fs);
|
||||
Free(buf);
|
||||
}
|
||||
Move(r.find,r.replace);
|
||||
}
|
||||
|
||||
void MyScreenShot()
|
||||
{
|
||||
I1 *st;
|
||||
LTDirEntry *tempm;
|
||||
U8 cnt=0;
|
||||
tempm=FindFiles("::/Temp/ScreenShots/*.BMP");
|
||||
while (tempm) {
|
||||
cnt++;
|
||||
tempm=tempm->next;
|
||||
}
|
||||
st=MSPrintF("::/Temp/ScreenShots/SCRN%04d.BMP",cnt);
|
||||
CaptureScreen4(st);
|
||||
Free(st);
|
||||
Beep;
|
||||
}
|
||||
|
||||
BoolU4 frame_grabber_paused=FALSE;
|
||||
TssStruct *my_frame_grabber=NULL;
|
||||
|
||||
void EndFrameGrabberCB()
|
||||
{
|
||||
my_frame_grabber=NULL;
|
||||
Exit;
|
||||
}
|
||||
|
||||
void FrameGrabberTsk()
|
||||
{
|
||||
I8 frame_num=0;
|
||||
I8 buf[80];
|
||||
U8 i,
|
||||
end_time=0,
|
||||
time_stamp=0;
|
||||
Fs->end_task_cb=&EndFrameGrabberCB;
|
||||
InitLocalTask;
|
||||
Silent(ON); //no output to screen
|
||||
while (my_frame_grabber) {
|
||||
SPrintF(buf,"::/Temp/ScreenShots/VID%05d.BMP",frame_num++);
|
||||
CaptureScreen4(buf);
|
||||
do {
|
||||
i=GetTimeStamp;
|
||||
if (i>end_time) {
|
||||
end_time=i+time_stamp_freq/4;
|
||||
break;
|
||||
} else {
|
||||
SwapInNext;
|
||||
while (sys_cur_scan_code&SCF_NUM)
|
||||
SwapInNext;
|
||||
}
|
||||
} while (TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
void ToggleFrameGrabber()
|
||||
{
|
||||
if (my_frame_grabber) {
|
||||
my_frame_grabber=NULL;
|
||||
kbd_display_special_keys=FALSE;
|
||||
} else {
|
||||
my_frame_grabber=Spawn(&FrameGrabberTsk,"Frame Grabber");
|
||||
kbd_display_special_keys=TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
BoolU8 MyPutKey(I8 ch,U8 sc)
|
||||
{ //ch=ASCII; sc=scancode
|
||||
|
||||
//You can customize keys. This routine
|
||||
//is called before the main editor
|
||||
//key handler $LK,"LtfPutKeyExt","MN:LtfPutKeyExt"$().
|
||||
//You can intercept any key.
|
||||
|
||||
//Return TRUE if you completely
|
||||
//handled the key.
|
||||
|
||||
nounusedwarn ch;
|
||||
U8 sc2=sc.u1[0];
|
||||
|
||||
if (sc2>=SC_F1 && sc2<=SC_F10 &&
|
||||
(sc & SCF_ALT) &&
|
||||
!(sc & SCF_CTRL)) {
|
||||
switch (sc2) {
|
||||
case SC_F1:
|
||||
if (sc & SCF_SHIFT)
|
||||
PutS("$$FG LTPURPLE$$");
|
||||
else
|
||||
PutS("$$FG PURPLE$$");
|
||||
break;
|
||||
case SC_F2:
|
||||
if (sc & SCF_SHIFT)
|
||||
PutS("$$FG LTRED$$");
|
||||
else
|
||||
PutS("$$FG,RED$$");
|
||||
break;
|
||||
case SC_F3:
|
||||
if (sc & SCF_SHIFT)
|
||||
PutS("$$FG LTGREEN$$");
|
||||
else
|
||||
PutS("$$FG,GREEN$$");
|
||||
break;
|
||||
case SC_F4:
|
||||
if (sc & SCF_SHIFT)
|
||||
PutS("$$FG LTBLUE$$");
|
||||
else
|
||||
PutS("$$FG$$");
|
||||
break;
|
||||
case SC_F5:
|
||||
if (sc & SCF_SHIFT)
|
||||
RandQuote;
|
||||
else
|
||||
RandWord;
|
||||
break;
|
||||
case SC_F6:
|
||||
if (sc & SCF_SHIFT)
|
||||
PopUp("WsInit(\"/Text/Brief\");");
|
||||
else
|
||||
PopUp("WsInit(\"/LT\");");
|
||||
break;
|
||||
case SC_F7:
|
||||
if (sc & SCF_SHIFT)
|
||||
LtfSafeInsert(Fs->cur_ltf,
|
||||
"$$HS+C$$$$FG$$$$HE$$");
|
||||
else
|
||||
FillinTime();
|
||||
break;
|
||||
case SC_F8:
|
||||
if (sc & SCF_SHIFT)
|
||||
RenameFile();
|
||||
else
|
||||
RenameCurSymbol();
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
} else {
|
||||
if (!(sc & SCF_CTRL)) {
|
||||
if (ch=='S' && sc & SCF_ALT) {
|
||||
InsertSong;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
if (ch=='p' && sc & SCF_ALT) {
|
||||
JukeBox("/LT/Apps/MusicOrgan/Examples");
|
||||
return TRUE;
|
||||
}
|
||||
if (ch=='P' && sc & SCF_ALT) {
|
||||
JukeBox("HOME/BTracks");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
if (ch=='f' && sc & SCF_ALT) {
|
||||
ProfAll;
|
||||
return TRUE;
|
||||
}
|
||||
if (ch=='F' && sc & SCF_ALT) {
|
||||
ProfRep;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
if (ch=='h' && sc & SCF_ALT) {
|
||||
WinTileHorz; //This is handy
|
||||
return TRUE;
|
||||
}
|
||||
if (ch=='v' && sc & SCF_ALT) {
|
||||
WinTileVert; //So is this
|
||||
return TRUE;
|
||||
}
|
||||
if (ch=='V' && sc & SCF_ALT) {
|
||||
ToggleFrameGrabber;
|
||||
return TRUE;
|
||||
}
|
||||
if (ch=='m' && sc & SCF_ALT) {
|
||||
WinMax;
|
||||
WinBorder(OFF);
|
||||
return TRUE;
|
||||
}
|
||||
if (ch=='k' && sc & SCF_ALT) {
|
||||
if (kbd_display_special_keys)
|
||||
kbd_display_special_keys=FALSE;
|
||||
else
|
||||
kbd_display_special_keys=TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
} else {
|
||||
if (sc2==SC_PRTSCRN2) {
|
||||
MyScreenShot();
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BoolU8 MyPutS(I1 *st)
|
||||
{
|
||||
nounusedwarn st;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
AddKeyDev(&MyPutKey,&MyPutS,0x20000000);
|
||||
|
||||
@@ -0,0 +1,202 @@
|
||||
#define CID_TAD7 7
|
||||
|
||||
I8 IdComputer()
|
||||
{
|
||||
return CID_TAD7;
|
||||
}
|
||||
|
||||
I8 computer_id=IdComputer;
|
||||
|
||||
|
||||
void SysTaskRepTask(TssStruct *tss,I8 indent)
|
||||
{
|
||||
TssStruct *tss1;
|
||||
I1 desc[TSS_DESC_LENGTH+1];
|
||||
if (!ValidateTss(tss)) return;
|
||||
SPrintF(desc,"%Q",tss->task_descriptor);
|
||||
PrintF("%*s%08X %-20ts ",indent,"",tss,desc);
|
||||
PrintF("Mem:%08X\r\n",TaskAllocatedMem(tss));
|
||||
PrintF("%*s Flags:%04X:%04X %02X\r\n",
|
||||
indent+2,"",tss->task_flags,tss->crt_flags,
|
||||
ExceptDepth(tss));
|
||||
if (tss==sys_update_screen_tss) {
|
||||
CallerRep(tss->rbp,tss);
|
||||
StackRep(tss->rsp);
|
||||
}
|
||||
tss1=tss->next_child_tss;
|
||||
while (tss1!=&tss->next_child_tss-offset(TssStruct.next_sibling_tss)) {
|
||||
if (ValidateTss(tss1))
|
||||
SysTaskRepTask(tss1,indent+2);
|
||||
tss1=tss1->next_sibling_tss;
|
||||
}
|
||||
}
|
||||
|
||||
public void SysTaskRep()
|
||||
{
|
||||
U8 i;
|
||||
CPUStruct *c;
|
||||
for (i=0;i<mp_cnt;i++) {
|
||||
c=mp_cpu_structs+sizeof(CPUStruct)*i;
|
||||
coutln "CPU:",i;
|
||||
SysTaskRepTask(c->cain_tss,2);
|
||||
}
|
||||
}
|
||||
|
||||
void CtrlAltT()
|
||||
{
|
||||
BoolU4 old_raw=Raw(ON);
|
||||
dc_col=0;
|
||||
SysTaskRep;
|
||||
Raw(old_raw);
|
||||
}
|
||||
ctrl_alt_letter_routines['T'-'A']=&CtrlAltT;
|
||||
|
||||
void CtrlAltF()
|
||||
{
|
||||
I1 *st;
|
||||
st=MSPrintF("%P",sys_update_screen_tss->rip);
|
||||
RemoveLastSeg(st,",");
|
||||
RawClassRep(st,sys_update_screen_tss->rbp,1,TRUE);
|
||||
Free(st);
|
||||
}
|
||||
ctrl_alt_letter_routines['F'-'A']=&CtrlAltF;
|
||||
|
||||
void CtrlAltZ()
|
||||
{
|
||||
BoolU4 old_raw=Raw(ON);
|
||||
coutln "0:",sysdbg0," 1:",sysdbg1;
|
||||
coutln "2:",sysdbg2," 3:",sysdbg3;
|
||||
Raw(old_raw);
|
||||
}
|
||||
ctrl_alt_letter_routines['Z'-'A']=&CtrlAltZ;
|
||||
|
||||
void CtrlAltE()
|
||||
{
|
||||
RawClassRep("TssStruct",sys_update_screen_tss,1,FALSE);
|
||||
}
|
||||
ctrl_alt_letter_routines['E'-'A']=&CtrlAltE;
|
||||
|
||||
void CtrlAltD()
|
||||
{
|
||||
Debugger;
|
||||
}
|
||||
ctrl_alt_letter_routines['D'-'A']=&CtrlAltD;
|
||||
|
||||
|
||||
extern void MyScreenShot();
|
||||
|
||||
void PrintScreenTsk()
|
||||
{
|
||||
InitUserTask;
|
||||
MyScreenShot;
|
||||
}
|
||||
|
||||
void CtrlAltP()
|
||||
{
|
||||
Spawn(&PrintScreenTsk);
|
||||
}
|
||||
ctrl_alt_letter_routines['P'-'A']=&CtrlAltP;
|
||||
|
||||
#define COMM_BAUD 38400*3
|
||||
|
||||
void Tx(I1 *filename)
|
||||
{
|
||||
LTChnl *chnl;
|
||||
CommClose(1);
|
||||
chnl=CommOpen8N1(1,COMM_BAUD);
|
||||
if (chnl) {
|
||||
RmtTxFile(chnl,filename);
|
||||
CommClose(1);
|
||||
}
|
||||
}
|
||||
|
||||
void Rx(I1 *filename)
|
||||
{
|
||||
LTChnl *chnl;
|
||||
CommClose(1);
|
||||
chnl=CommOpen8N1(1,COMM_BAUD);
|
||||
if (chnl) {
|
||||
RmtRxFile(chnl,filename);
|
||||
CommClose(1);
|
||||
}
|
||||
}
|
||||
|
||||
void Host()
|
||||
{
|
||||
LTChnl *chnl;
|
||||
CommClose(1);
|
||||
chnl=CommOpen8N1(1,COMM_BAUD);
|
||||
if (chnl)
|
||||
TelnetHostOpen(chnl);
|
||||
}
|
||||
|
||||
void CloseHost()
|
||||
{
|
||||
TelnetHostClose;
|
||||
CommClose(1);
|
||||
}
|
||||
|
||||
void Guest()
|
||||
{
|
||||
LTChnl *chnl;
|
||||
CommClose(1);
|
||||
chnl=CommOpen8N1(1,COMM_BAUD);
|
||||
if (chnl) {
|
||||
TelnetGuestOpen(chnl);
|
||||
CommClose(1);
|
||||
}
|
||||
}
|
||||
|
||||
void RmtSync()
|
||||
{
|
||||
LTChnl *chnl;
|
||||
CommClose(1);
|
||||
chnl=CommOpen8N1(1,COMM_BAUD);
|
||||
if (chnl) {
|
||||
RmtMergeChk(chnl);
|
||||
CommClose(1);
|
||||
}
|
||||
}
|
||||
|
||||
void RmtSyncDrive(I1 drive=0)
|
||||
{
|
||||
LTChnl *chnl;
|
||||
Drive(drive);
|
||||
CommClose(1);
|
||||
chnl=CommOpen8N1(1,COMM_BAUD);
|
||||
if (chnl) {
|
||||
RmtMergeChk(chnl,"/LT/*","/LT/*",
|
||||
"+r+t+a");
|
||||
CommClose(1);
|
||||
}
|
||||
}
|
||||
|
||||
I1 *TADPickFile(I1 *msg,I1 *mask,I8 prefix_len=0)
|
||||
{
|
||||
I8 i=0;
|
||||
LTDirEntry *tempm,*tempm1;
|
||||
Ltf *l=LtfNew;
|
||||
I1 *st;
|
||||
tempm=FindFiles(mask);
|
||||
tempm1=tempm;
|
||||
if (msg)
|
||||
LtfPutSExt(l,msg);
|
||||
while (tempm1) {
|
||||
if ((i++%5)==0)
|
||||
LtfPutSExt(l,"\r\n");
|
||||
st=NewStr(tempm1->name);
|
||||
RemoveLastSeg(st,".");
|
||||
LtfPrintF(l,"$$MU,\"%-8ts\",%d$$ ",st+prefix_len,tempm1);
|
||||
Free(st);
|
||||
tempm1=tempm1->next;
|
||||
}
|
||||
tempm1=PopUpMenu(l);
|
||||
LtfDel(l);
|
||||
if (tempm1<0)
|
||||
st=NULL;
|
||||
else
|
||||
st=NewStr(tempm1->full_name);
|
||||
DelLTDirList(tempm);
|
||||
return st;
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in new issue
Block a user