TempleOSCDV5.02.ISO
This commit is contained in:
1 parent
320c7ee98a
commit
4b32f058d5
137 files changed
+3474
-3293
No files matched your search
@@ -35,11 +35,11 @@ U0 BgtIns(CBgtEntry *tmpb)
|
||||
|
||||
class CBgtEntryForm
|
||||
{
|
||||
U8 date[512] fmtstr "$$DA-P,A=\"Date :%s\"$$\n";
|
||||
F64 amount fmtstr "Amount $$$$$$DA,A=\"%8.2f\"$$\n";
|
||||
U8 credit[512] fmtstr "$$DA-P,A=\"Credit Acct:%s\"$$\n";
|
||||
U8 debit [512] fmtstr "$$DA-P,A=\"Debit Acct:%s\"$$\n";
|
||||
U8 desc [512] fmtstr "$$DA-P,A=\"Desc :%s\"$$\n";
|
||||
U8 date[512] fmtstr "$$DA-P,A=\"Date :%s\"$$\n";
|
||||
F64 amount fmtstr "Amount $$$$$$DA,A=\"%10.2f\"$$\n";
|
||||
U8 credit[512] fmtstr "$$DA-P,A=\"Credit (from) Acct:%s\"$$\n";
|
||||
U8 debit [512] fmtstr "$$DA-P,A=\"Debit (to) Acct:%s\"$$\n";
|
||||
U8 desc [512] fmtstr "$$DA-P,A=\"Desc :%s\"$$\n";
|
||||
};
|
||||
|
||||
CBgtEntry *BgtEntryPmt(CBgtEntry *dft=NULL)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Cd(__DIR__);;
|
||||
if (!FileFind("~/Budget",,FUF_JUST_DIRS)) {
|
||||
MkDir("~/Budget");
|
||||
DirMk("~/Budget");
|
||||
Copy("Accts.DD.Z","~/Budget");
|
||||
}
|
||||
@@ -2,13 +2,13 @@ $WW,1$$FG,5$$TX+CX,"Psalmody Help"$$FG$
|
||||
|
||||
* The keyboard can be used as an organ by typing letter keys or clicking the mouse on the keyboard diagram$FG$. You can "record" notes by pressing the red bttn and typing letters. They will appear on the musical staff. You can edit and save them.
|
||||
|
||||
* The clipboard can be used to cut and paste.
|
||||
* The clip can be used to cut and paste.
|
||||
|
||||
* $FG,2$Psalmody$FG$ uses $LK,"HolyC",A="FI:::/Doc/HolyC.DD"$ files as the song format! See $LK,"::/Apps/Psalmody/Examples/prosper.HC"$. The $FG,2$Psalmody$FG$ program does not fully parse the songs when loading them back in, so changes made outside $FG,2$Psalmody$FG$ will be lost, like if you add graphics.
|
||||
|
||||
* The first line of the $LK,"HolyC",A="FI:::/Doc/HolyC.DD"$ song files is a comment with a category recognized by $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$(). The categories are $FG,2$"no nothing"$FG$, $FG,2$"has words"$FG$, $FG,2$"has graphics"$FG$, or $FG,2$"special"$FG$. The third character in the song comment is a digit rating number, shown in $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$(). You can set the song rating in $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$() by pressing $FG,2$0$FG$-$FG,2$9$FG$. You can press $FG,2$<DELETE>$FG$ to delete songs.
|
||||
* The first line of the $LK,"HolyC",A="FI:::/Doc/HolyC.DD"$ song files is a comment with a category recognized by $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$(). The categories are $FG,2$"no nothing"$FG$, $FG,2$"has words"$FG$, $FG,2$"has graphics"$FG$, or $FG,2$"special"$FG$. The third character in the song comment is a digit rating number, shown in $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$(). You can set the song rating in $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$() by pressing $FG,2$0$FG$-$FG,2$9$FG$. You can request your reward from God by pressing $FG,2$r$FG$. You can press $FG,2$<DEL>$FG$ to delete songs.
|
||||
|
||||
* You can take the $LK,"Play",A="MN:Play"$() stmts out of a song file and place them in your programs. You can also add a song to a document with $FG,2$<CTRL-l>$FG$, but you should do it after pressing $FG,2$<CTRL-t>$FG$ because the clipboard-insert in $FG,2$<CTRL-l>$FG$ is screwy. See this $SO,"<Song>",A="4qG5EC4BeGG5qCeFD4sB5G4B5G4qG5EC4BeGG5qCeFD4sB5G4B5GqEeEFqE4BeG5FetC4A5GqFCEeEFqE4BeG5FetC4A5GqFC"$ after pressing $FG,2$<CTRL-t>$FG$, now.
|
||||
* You can take the $LK,"Play",A="MN:Play"$() stmts out of a song file and place them in your programs. You can also add a song to a document with $FG,2$<CTRL-l>$FG$, but you should do it after pressing $FG,2$<CTRL-t>$FG$ because the clip-insert in $FG,2$<CTRL-l>$FG$ is screwy. See this $SO,"<Song>",A="4qG5EC4BeGG5qCeFD4sB5G4B5G4qG5EC4BeGG5qCeFD4sB5G4B5GqEeEFqE4BeG5FetC4A5GqFCEeEFqE4BeG5FetC4A5GqFC"$ after pressing $FG,2$<CTRL-t>$FG$, now.
|
||||
|
||||
* You can call $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.HC,JukeBox"$("~/Psalmody"); to play your songs.
|
||||
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
if (!FileFind("~/Psalmody",,FUF_JUST_DIRS))
|
||||
MkDir("~/Psalmody");
|
||||
DirMk("~/Psalmody");
|
||||
+142
-80
@@ -1,3 +1,30 @@
|
||||
CTask *JukeReward(U8 *msg)
|
||||
{
|
||||
U8 *buf;
|
||||
CDoc *doc;
|
||||
CTask *res=Spawn(&SrvCmdLine,NULL,"Reward",,Fs);
|
||||
StrCpy(res->task_title,"Reward");
|
||||
res->title_src=TTS_LOCKED_CONST;
|
||||
|
||||
doc=DocNew(,res);
|
||||
DocPrint(doc,"$$WW+H,1$$%s",msg);
|
||||
|
||||
buf=MStrPrint("DocEd(0x%X);",doc);
|
||||
TaskExe(res,NULL,buf,1<<JOBf_EXIT_ON_COMPLETE|1<<JOBf_FREE_ON_COMPLETE);
|
||||
Free(buf);
|
||||
TaskWait(res);
|
||||
|
||||
res->border_src =BDS_CONST;
|
||||
res->border_attr=LTGRAY<<4+DrvTextAttrGet(':')&15;
|
||||
res->text_attr =LTGRAY<<4+BLUE;
|
||||
res->win_inhibit=WIG_NO_FOCUS_TASK_DFT;
|
||||
WinHorz(Fs->win_right+2,TEXT_COLS-2,res);
|
||||
WinVert(2,TEXT_ROWS-2,res);
|
||||
|
||||
WinFocus(Fs->parent_task);
|
||||
return res;
|
||||
}
|
||||
|
||||
CTask *SingleSong(U8 *msg,U8 *name)
|
||||
{
|
||||
CTask *task=Spawn(&SrvCmdLine,NULL,name,,Fs);
|
||||
@@ -6,6 +33,7 @@ CTask *SingleSong(U8 *msg,U8 *name)
|
||||
TaskExe(task,Fs,";",1<<JOBf_WAKE_MASTER|1<<JOBf_FREE_ON_COMPLETE);
|
||||
WinHorz(task->win_left,task->win_left+50,task);
|
||||
WinVert(2,2+8,task);
|
||||
task->win_inhibit=WIG_NO_FOCUS_TASK_DFT;
|
||||
TaskExe(task,NULL,msg,1<<JOBf_EXIT_ON_COMPLETE|1<<JOBf_FREE_ON_COMPLETE);
|
||||
DocPut(task)->max_entries=100;
|
||||
return task;
|
||||
@@ -19,7 +47,9 @@ Bool JBPutKey(CDoc *doc,U8 *,I64 ch,I64 sc)
|
||||
{//ch=ASCII; sc=scan_code
|
||||
CDocEntry *doc_ce=doc->cur_entry,*doc_e;
|
||||
CDirEntry *tmpde;
|
||||
CDoc *s;
|
||||
I64 i;
|
||||
U8 *st;
|
||||
CDoc *doc2;
|
||||
if (!(sc&(SCF_ALT|SCF_CTRL|SCF_SHIFT))
|
||||
&& doc_ce->type_u8==DOCT_MENU_VAL && doc_ce->left_exp>=0) {
|
||||
tmpde=doc_ce->left_exp;
|
||||
@@ -31,20 +61,45 @@ Bool JBPutKey(CDoc *doc,U8 *,I64 ch,I64 sc)
|
||||
} else if ('0'<=ch<='9') {
|
||||
if (StrLen(doc_ce->tag)>1)
|
||||
doc_ce->tag[0]=ch;
|
||||
s=DocRead(tmpde->full_name);
|
||||
doc_e=s->head.next;
|
||||
while (doc_e!=s && doc_e->type_u8!=DOCT_TEXT)
|
||||
doc_e=doc_e->next;
|
||||
if (doc_e!=s && doc_e->type_u8==DOCT_TEXT && StrLen(doc_e->tag)>=3) {
|
||||
doc2=DocRead(tmpde->full_name);
|
||||
DocGoToLine(doc2,1);
|
||||
doc_e=doc2->cur_entry;
|
||||
if (doc_e!=doc2 && doc_e->type_u8==DOCT_TEXT && StrLen(doc_e->tag)>=3) {
|
||||
doc_e->tag[2]=ch;
|
||||
DocWrite(s);
|
||||
DocWrite(doc2);
|
||||
}
|
||||
DocDel(doc2);
|
||||
return TRUE;
|
||||
} else if (ch=='r') {
|
||||
if (!DocTreeFFind(tmpde->full_name,"Reward1")) {
|
||||
doc2=DocRead(tmpde->full_name);
|
||||
DocGoToLine(doc2,2);
|
||||
DocPrint(doc2,
|
||||
"\n$$TR,\"Reward1\"$$\n"
|
||||
"$$ID,2$$CallExtStr(\"JukeReward\",\"\"\n"
|
||||
"$$TR,\"Reward2\"$$\n"
|
||||
"$$ID,2$$\n"
|
||||
"$$ID,-2$$\n"
|
||||
");\n$$ID,-2$$\n"
|
||||
);
|
||||
DocWrite(doc2);
|
||||
DocDel(doc2);
|
||||
}
|
||||
if (DocTreeFFind(tmpde->full_name,"Reward1/Reward2")) {
|
||||
for (i=0;i<5;i++) {
|
||||
st=MStrPrint("%s %s %s %s ",
|
||||
GodWordStr,GodWordStr,GodWordStr,GodWordStr);
|
||||
DocTreeFAppend(tmpde->full_name,"Reward1/Reward2",
|
||||
"\"%s\"\n",st);
|
||||
Free(st);
|
||||
}
|
||||
In(" ");
|
||||
}
|
||||
DocDel(s);
|
||||
return TRUE;
|
||||
} else if (ch==CH_SPACE||ch==CH_ESC)
|
||||
tmpde->user_data++; //JB_RUN_LEVEL++
|
||||
//<SPACE> is followed by <ESC> --> JB_RUN_LEVEL_TWO
|
||||
//Actual <ESC> just exits --> JB_RUN_LEVEL_ONE
|
||||
//Actual <ESC> just exits --> JB_RUN_LEVEL_ONE
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
@@ -59,80 +114,87 @@ public U0 JukeBox(U8 *dirname="~/Psalmody",U8 **_filename=NULL)
|
||||
CTask *task=NULL;
|
||||
if (_filename)
|
||||
*_filename=NULL;
|
||||
dirname=StrNew(dirname);
|
||||
st=MStrPrint("%s/*.HC.Z",dirname);
|
||||
tmpde=tmpde1=FilesFind(st);
|
||||
Free(st);
|
||||
Free(dirname);
|
||||
doc->user_put_key=&JBPutKey;
|
||||
DocPrint(doc,
|
||||
"Key: $$GREEN$$Graphics $$BLUE$$Words $$RED$$No Nothing "
|
||||
"$$BLACK$$Incomplete $$CYAN$$Special$$FG$$\n\n"
|
||||
"$$GREEN$$<DELETE>$$FG$$ to delete a song.\n"
|
||||
"Press a number to rate a song.\n");
|
||||
while (tmpde) {
|
||||
if (!(i++%5))
|
||||
DocPrint(doc,"\n");
|
||||
if (FileOcc("Play(",tmpde->full_name,"")) {
|
||||
st=StrNew(tmpde->name);
|
||||
FileExtRem(st);
|
||||
s=DocRead(tmpde->full_name);
|
||||
doc_e=s->head.next;
|
||||
while (doc_e!=s && doc_e->type_u8!=DOCT_TEXT)
|
||||
doc_e=doc_e->next;
|
||||
rating='0';
|
||||
if (doc_e!=s && doc_e->type_u8==DOCT_TEXT) {
|
||||
if ('0'<=doc_e->tag[2]<='9')
|
||||
rating=doc_e->tag[2];
|
||||
if (StrMatch("incomplete",doc_e->tag))
|
||||
DocPrint(doc,"$$BLACK$$");
|
||||
else if (StrMatch("has graphics",doc_e->tag))
|
||||
DocPrint(doc,"$$GREEN$$");
|
||||
else if (StrMatch("has words",doc_e->tag))
|
||||
DocPrint(doc,"$$BLUE$$");
|
||||
else if (StrMatch("special",doc_e->tag))
|
||||
DocPrint(doc,"$$CYAN$$");
|
||||
else if (StrMatch("no nothing",doc_e->tag)) {
|
||||
DocPrint(doc,"$$RED$$");
|
||||
if (FileOcc("\\0",tmpde->full_name,"")) {
|
||||
s->cur_entry=doc_e->next;
|
||||
s->cur_col=0;
|
||||
DocEntryDel(s,doc_e);
|
||||
DocPrint(s,"//0 has words\n");
|
||||
DocWrite(s);
|
||||
SettingsPush; //See $LK,"SettingsPush",A="MN:SettingsPush"$
|
||||
AutoComplete;
|
||||
try {
|
||||
dirname=StrNew(dirname);
|
||||
st=MStrPrint("%s/*.HC.Z",dirname);
|
||||
tmpde=tmpde1=FilesFind(st);
|
||||
Free(st);
|
||||
Free(dirname);
|
||||
doc->user_put_key=&JBPutKey;
|
||||
DocPrint(doc,
|
||||
"Key: $$GREEN$$Graphics $$BLUE$$Words $$RED$$No Nothing "
|
||||
"$$BLACK$$Incomplete $$CYAN$$Special$$FG$$\n\n"
|
||||
"$$GREEN$$<DEL>$$FG$$\tto delete a song.\n"
|
||||
"'$$GREEN$$0$$FG$$'-'$$GREEN$$9$$FG$$'\tto rate a song.\n"
|
||||
"'$$GREEN$$r$$FG$$'\tto get your reward from God.\n");
|
||||
while (tmpde) {
|
||||
if (!(i++%5))
|
||||
DocPrint(doc,"\n");
|
||||
if (FileOcc("Play(",tmpde->full_name,"")) {
|
||||
st=StrNew(tmpde->name);
|
||||
FileExtRem(st);
|
||||
s=DocRead(tmpde->full_name);
|
||||
doc_e=s->head.next;
|
||||
while (doc_e!=s && doc_e->type_u8!=DOCT_TEXT)
|
||||
doc_e=doc_e->next;
|
||||
rating='0';
|
||||
if (doc_e!=s && doc_e->type_u8==DOCT_TEXT) {
|
||||
if ('0'<=doc_e->tag[2]<='9')
|
||||
rating=doc_e->tag[2];
|
||||
if (StrMatch("incomplete",doc_e->tag))
|
||||
DocPrint(doc,"$$BLACK$$");
|
||||
else if (StrMatch("has graphics",doc_e->tag))
|
||||
DocPrint(doc,"$$GREEN$$");
|
||||
else if (StrMatch("has words",doc_e->tag))
|
||||
DocPrint(doc,"$$BLUE$$");
|
||||
else if (StrMatch("special",doc_e->tag))
|
||||
DocPrint(doc,"$$CYAN$$");
|
||||
else if (StrMatch("no nothing",doc_e->tag)) {
|
||||
DocPrint(doc,"$$RED$$");
|
||||
if (FileOcc("\\0",tmpde->full_name,"")) {
|
||||
s->cur_entry=doc_e->next;
|
||||
s->cur_col=0;
|
||||
DocEntryDel(s,doc_e);
|
||||
DocPrint(s,"//0 has words\n");
|
||||
DocWrite(s);
|
||||
}
|
||||
}
|
||||
DocPrint(doc,"$$MU-UL,\"%c%-8ts\",LE=%d$$ ",rating,st,tmpde);
|
||||
tmpde->user_data=JB_RUN_LEVEL_NULL;
|
||||
}
|
||||
DocPrint(doc,"$$MU-UL,\"%c%-8ts\",LE=%d$$ ",rating,st,tmpde);
|
||||
tmpde->user_data=JB_RUN_LEVEL_NULL;
|
||||
DocDel(s);
|
||||
Free(st);
|
||||
}
|
||||
DocDel(s);
|
||||
tmpde=tmpde->next;
|
||||
}
|
||||
DocPrint(doc,"\n$$CYAN$$$$MU-UL,\"DONE\",LE=%d$$\n",DOCM_CANCEL);
|
||||
while (TRUE) {
|
||||
if (_filename)
|
||||
tmpde=PopUpMenu(doc,DOF_INTERCEPT_TASK_END);
|
||||
else
|
||||
tmpde=PopUpMenu(doc);
|
||||
if (task)
|
||||
Kill(task);
|
||||
if (tmpde<=0) break;
|
||||
st2=StrNew(tmpde->name);
|
||||
if (_filename) {
|
||||
Free(*_filename);
|
||||
*_filename=StrNew(tmpde->full_name);
|
||||
}
|
||||
if (tmpde->user_data==JB_RUN_LEVEL_ONE) break; //<ESC>
|
||||
tmpde->user_data=JB_RUN_LEVEL_NULL; //Rst from <SPACE>
|
||||
FileExtRem(st2);
|
||||
st=MStrPrint("ExeFile(\"%s\");",tmpde->full_name);
|
||||
MusicSettingsRst;
|
||||
task=SingleSong(st,st2);
|
||||
Free(st2);
|
||||
Free(st);
|
||||
}
|
||||
tmpde=tmpde->next;
|
||||
}
|
||||
DocPrint(doc,"\n$$CYAN$$$$MU-UL,\"DONE\",LE=%d$$\n",DOCM_CANCEL);
|
||||
while (TRUE) {
|
||||
if (_filename)
|
||||
tmpde=PopUpMenu(doc,DOF_INTERCEPT_TASK_END);
|
||||
else
|
||||
tmpde=PopUpMenu(doc);
|
||||
if (task)
|
||||
Kill(task);
|
||||
if (tmpde<=0) break;
|
||||
st2=StrNew(tmpde->name);
|
||||
if (_filename) {
|
||||
Free(*_filename);
|
||||
*_filename=StrNew(tmpde->full_name);
|
||||
}
|
||||
if (tmpde->user_data==JB_RUN_LEVEL_ONE) break; //<ESC>
|
||||
tmpde->user_data=JB_RUN_LEVEL_NULL; //Rst from <SPACE>
|
||||
FileExtRem(st2);
|
||||
st=MStrPrint("ExeFile(\"%s\");",tmpde->full_name);
|
||||
MusicSettingsRst;
|
||||
task=SingleSong(st,st2);
|
||||
Free(st2);
|
||||
Free(st);
|
||||
}
|
||||
DocDel(doc);
|
||||
DirTreeDel(tmpde1);
|
||||
DocDel(doc);
|
||||
DirTreeDel(tmpde1);
|
||||
} catch
|
||||
PutExcept;
|
||||
SettingsPop;
|
||||
}
|
||||
@@ -50,7 +50,7 @@ class PsmNote
|
||||
class PsmCtrl
|
||||
{
|
||||
PsmNote head;
|
||||
PsmNote clipboard;
|
||||
PsmNote clip;
|
||||
CMenuEntry *incomplete_entry,*record_entry;
|
||||
I64 scrn_x,tool;
|
||||
PsmNote *cur_note;
|
||||
|
||||
@@ -26,10 +26,10 @@ U0 PsmSongDel(PsmNote *head)
|
||||
QueInit(head);
|
||||
}
|
||||
|
||||
U0 PsmCutToClipboard()
|
||||
U0 PsmCutToClip()
|
||||
{
|
||||
PsmNote *tmpn,*tmpn1;
|
||||
PsmSongDel(&psm.clipboard);
|
||||
PsmSongDel(&psm.clip);
|
||||
tmpn=psm.head.next;
|
||||
while (tmpn!=&psm.head) {
|
||||
tmpn1=tmpn->next;
|
||||
@@ -38,33 +38,33 @@ U0 PsmCutToClipboard()
|
||||
psm.cur_note=tmpn->next;
|
||||
QueRem(tmpn);
|
||||
tmpn->flags&=~PSMF_SEL;
|
||||
QueIns(tmpn,psm.clipboard.last);
|
||||
QueIns(tmpn,psm.clip.last);
|
||||
}
|
||||
tmpn=tmpn1;
|
||||
}
|
||||
}
|
||||
|
||||
U0 PsmPasteClipboard()
|
||||
U0 PsmPasteClip()
|
||||
{
|
||||
PsmNote *tmpn,*tmpn1;
|
||||
tmpn=psm.clipboard.next;
|
||||
while (tmpn!=&psm.clipboard) {
|
||||
tmpn=psm.clip.next;
|
||||
while (tmpn!=&psm.clip) {
|
||||
tmpn1=PsmNoteCopy(tmpn);
|
||||
QueIns(tmpn1,psm.cur_note->last);
|
||||
tmpn=tmpn->next;
|
||||
}
|
||||
}
|
||||
|
||||
U0 PsmCopyToClipboard()
|
||||
U0 PsmCopyToClip()
|
||||
{
|
||||
PsmNote *tmpn,*tmpn1;
|
||||
PsmSongDel(&psm.clipboard);
|
||||
PsmSongDel(&psm.clip);
|
||||
tmpn=psm.head.next;
|
||||
while (tmpn!=&psm.head) {
|
||||
if (tmpn->flags&PSMF_SEL) {
|
||||
tmpn->flags&=~PSMF_SEL;
|
||||
tmpn1=PsmNoteCopy(tmpn);
|
||||
QueIns(tmpn1,psm.clipboard.last);
|
||||
QueIns(tmpn1,psm.clip.last);
|
||||
}
|
||||
tmpn=tmpn->next;
|
||||
}
|
||||
|
||||
@@ -369,7 +369,7 @@ U0 Psalmody(U8 *dirname="~/Psalmody")
|
||||
MemSet(&psm,0,sizeof(PsmCtrl));
|
||||
psm.scrn_x=0;
|
||||
psm.head.next=psm.head.last=&psm.head;
|
||||
psm.clipboard.next=psm.clipboard.last=&psm.clipboard;
|
||||
psm.clip.next=psm.clip.last=&psm.clip;
|
||||
psm.cur_note=&psm.head;
|
||||
psm.dc2=DCAlias;
|
||||
|
||||
@@ -543,7 +543,7 @@ mo_got_msg:
|
||||
break;
|
||||
case SC_DELETE:
|
||||
if (arg2&SCF_SHIFT)
|
||||
PsmCutToClipboard;
|
||||
PsmCutToClip;
|
||||
else {
|
||||
tmpn=psm.cur_note;
|
||||
psm.cur_note=tmpn->next;
|
||||
@@ -555,9 +555,9 @@ mo_got_msg:
|
||||
break;
|
||||
case SC_INS:
|
||||
if (arg2&SCF_SHIFT)
|
||||
PsmPasteClipboard;
|
||||
PsmPasteClip;
|
||||
else if (arg2&SCF_CTRL)
|
||||
PsmCopyToClipboard;
|
||||
PsmCopyToClip;
|
||||
break;
|
||||
case SC_F1:
|
||||
PsmPopMode;
|
||||
@@ -609,13 +609,13 @@ mo_got_msg:
|
||||
PsmPushMode(psm_octave);
|
||||
break;
|
||||
case CH_CTRLC:
|
||||
PsmCopyToClipboard;
|
||||
PsmCopyToClip;
|
||||
break;
|
||||
case CH_CTRLV:
|
||||
PsmPasteClipboard;
|
||||
PsmPasteClip;
|
||||
break;
|
||||
case CH_CTRLX:
|
||||
PsmCutToClipboard;
|
||||
PsmCutToClip;
|
||||
break;
|
||||
case '.':
|
||||
PsmMenu(psm_octave);
|
||||
@@ -786,7 +786,7 @@ mo_done:
|
||||
PutExcept;
|
||||
PsmPopMode;
|
||||
PsmSongDel(&psm.head);
|
||||
PsmSongDel(&psm.clipboard);
|
||||
PsmSongDel(&psm.clip);
|
||||
TempoDel(c);
|
||||
DCFill;
|
||||
DCDel(psm.dc2);
|
||||
|
||||
@@ -1 +1 @@
|
||||
MkDir("~/Span");
|
||||
DirMk("~/Span");
|
||||
@@ -69,7 +69,7 @@ Bool SpanWrite(CMathODE *ode)
|
||||
U8 *name,*buf;
|
||||
I64 size;
|
||||
Bool res=FALSE,old_silent=Silent;
|
||||
MkDir("~/Span");
|
||||
DirMk("~/Span");
|
||||
Silent(old_silent);
|
||||
if (name=PopUpFileName("~/Span/Game.DATA")) {
|
||||
if (buf=SpanSave(ode,&size)) {
|
||||
@@ -115,7 +115,7 @@ U8 *SpanRead()
|
||||
{
|
||||
U8 *src=NULL,*name;
|
||||
Bool old_silent=Silent;
|
||||
MkDir("~/Span");
|
||||
DirMk("~/Span");
|
||||
Silent(old_silent);
|
||||
if (name=PopUpPickFile("~/Span")) {
|
||||
src=FileRead(name);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
if (!FileFind("~/TimeClock",,FUF_JUST_DIRS)) {
|
||||
MkDir("~/TimeClock");
|
||||
DirMk("~/TimeClock");
|
||||
DocClear;
|
||||
"After Loading, type $$GREEN$$PunchIn;$$FG$$, "
|
||||
"$$GREEN$$PunchOut;$$FG$$ or $$GREEN$$TimeRep;$$FG$$\n"
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
MkDir("~/ToTheFront");
|
||||
DirMk("~/ToTheFront");
|
||||
|
||||
@@ -71,13 +71,13 @@ U0 DrawHexes()
|
||||
}
|
||||
}
|
||||
|
||||
U0 MakeTerrain(U8 color,I64 cnt,I64 cluster_lo,I64 cluster_hi)
|
||||
U0 MakeTerrain(U8 color,I64 cnt,I64 clus_lo,I64 clus_hi)
|
||||
{
|
||||
I64 i,j,l,row,col;
|
||||
for (i=0;i<cnt;i++) {
|
||||
col=RandU32%map_cols;
|
||||
row=RandU32%map_rows;
|
||||
l=cluster_lo+RandU16%(cluster_hi-cluster_lo+1);
|
||||
l=clus_lo+RandU16%(clus_hi-clus_lo+1);
|
||||
for (j=0;j<l;j++) {
|
||||
terrain[row][col]=color;
|
||||
Toward(&row,&col,RandU16%6);
|
||||
|
||||
Reference in new issue
Block a user