TempleOSCD_150216.ISO
This commit is contained in:
1 parent
64f679eeb9
commit
401601816c
531 files changed
+23341
-22071
No files matched your search
@@ -1,72 +0,0 @@
|
||||
//9 has graphics
|
||||
#define X 330
|
||||
#define Y 15
|
||||
|
||||
#define NUM_BEAMS 256
|
||||
|
||||
F64 beams_r[NUM_BEAMS],beams_é[NUM_BEAMS];
|
||||
|
||||
U0 DrawIt(CTask *,CDC *dc)
|
||||
{
|
||||
I64 i;
|
||||
F64 r,x1,y1,x2,y2;
|
||||
dc->color=YELLOW;
|
||||
GrCircle(dc,X,Y,10);
|
||||
GrFloodFill(dc,X,Y,10);
|
||||
dc->color=BROWN;
|
||||
GrCircle(dc,X,Y,10);
|
||||
dc->color=YELLOW;
|
||||
for (i=0;i<NUM_BEAMS;i++) {
|
||||
r=125.0*((0.25*Beat+beams_r[i])%1.0);
|
||||
P2R(&x1,&y1,r ,beams_é[i]);
|
||||
P2R(&x2,&y2,r+10.0,beams_é[i]);
|
||||
GrLine(dc,x1+X,y1+Y,x2+X,y2+Y);
|
||||
}
|
||||
}
|
||||
|
||||
U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
I64 i;
|
||||
SettingsPush; //See $LK,"SettingsPush",A="MN:SettingsPush"$
|
||||
Fs->text_attr=LTCYAN<<4+BLACK;
|
||||
Fs->draw_it=&DrawIt;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo= 2.480;
|
||||
music.stacatto_factor= 0.902;
|
||||
for (i=0;i<NUM_BEAMS;i++) {
|
||||
beams_r[i]=Rand;
|
||||
beams_é[i]=2*ã*Rand;
|
||||
}
|
||||
try {
|
||||
task=PopUpViewPrint(
|
||||
"$LK,"Numbers,6:25",A="BF:Numbers,6:25"$\n"
|
||||
"$LK,"Psalms,31:16",A="BF:Psalms,31:16"$\n"
|
||||
"$LK,"Psalms,67:1",A="BF:Psalms,67:1"$\n"
|
||||
"$LK,"Psalms,80:3",A="BF:Psalms,80:3"$\n"
|
||||
"$LK,"Psalms,80:19",A="BF:Psalms,80:19"$\n"
|
||||
"$LK,"Psalms,119:135",A="BF:Psalms,119:135"$\n"
|
||||
"$LK,"Daniel,9:17",A="BF:Daniel,9:17"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
"$$BG+H,LTCYAN$$$$FD+H,BLACK$$";
|
||||
while (!ScanKey) {
|
||||
"$$WHITE$$To God...\n$$FG$$";
|
||||
Play("3etCFEsDDDDD2G3D2G3qC2eG3EqEetAAF2qG",
|
||||
"I \0am \0a\0biding \0 \0 \0 \0in \0 \0Your \0 \0presence.\n\0 \0 \0 \0 \0 \0 \0 \0");
|
||||
Play("3etCFEsDDDDD2G3D2G3qC2eG3EqEetAAF2qG",
|
||||
"I \0am \0a\0biding \0 \0 \0 \0in \0 \0Your \0 \0presence.\n\0 \0 \0 \0 \0 \0 \0 \0");
|
||||
Play("3DBsFGFG2eG3FRDqEGeBE",
|
||||
"What \0a \0joy!\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
|
||||
Play("qDBsFGFG2eG3FRDqEGeBE",
|
||||
"I'm \0so \0coy!\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
|
||||
}
|
||||
} catch
|
||||
PutExcept;
|
||||
SettingsPop;
|
||||
}
|
||||
|
||||
Song;
|
||||
@@ -17,8 +17,8 @@ U0 Song()
|
||||
"barrier. ($LK,"Deuteronomy,4:22",A="BF:Deuteronomy,4:22"$)\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3sBBBBqCq.BeAqBh.A",
|
||||
"Can't \0 \0 \0 \0get \0there, \0from \0he\0re.\n\0");
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
@@ -49,8 +49,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"Mark,14:37",A="BF:Mark,14:37"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
"$$GREEN$$Jesus talking...$$FG$$\n";
|
||||
Play("3eBCqB2sG3D2G3DetCGFsCBCBetCGBeBGsBCBC",
|
||||
|
||||
Binary file not shown.
@@ -16,6 +16,7 @@ U0 Song()
|
||||
CTask *task;
|
||||
SettingsPush; //See $LK,"SettingsPush",A="MN:SettingsPush"$
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
DocCursor;
|
||||
DocClear;
|
||||
@@ -23,8 +24,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"BF:Acts,9:3"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
t0=Beat;
|
||||
Play("3qEeACA2G3qCEC2G3E",
|
||||
|
||||
@@ -3,12 +3,13 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"BF:Luke,12:16"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3etGREqDDBRGCB",
|
||||
"It \0 \0de\0pends \0 \0on \0 \0the \0wea\0ther.\n\0");
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
Binary file not shown.
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
while (TRUE) {
|
||||
Play("et2G32G3Gq2G3qCq2G3sFAFAq2G3etGDAqA",
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
Binary file not shown.
@@ -19,8 +19,8 @@ U0 Song()
|
||||
"$LK,"John,16:24",A="BF:John,16:24"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
DocRecalc(DocPut(task)); //Reformat word-wrap with new window size.
|
||||
while (!ScanKey) {
|
||||
Play("3qBeCDqCAetAACeECsF2G3F2GqG",
|
||||
|
||||
@@ -16,6 +16,7 @@ U0 Song()
|
||||
Fs->draw_it=&DrawIt;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
Binary file not shown.
@@ -3,6 +3,7 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
task=PopUpViewPrint(
|
||||
@@ -12,8 +13,8 @@ U0 Song()
|
||||
"$LK,"BF:Luke,15:21"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
"$$WW+H,1$$";
|
||||
while (!ScanKey) {
|
||||
Play("3qGGsEAEAqAsF2G3F2G3qCeEFqD",
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -144,8 +144,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"Romans,8:28",A="BF:Romans,8:28"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3qEEBeBDsBBBBqDsBFBFD2G3D2G",
|
||||
"Free \0will... \0 \0 \0 \0 \0 \0 \0 \0 \0I \0 \0 \0 \0fail.\n\0 \0 \0 \0");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -3,6 +3,7 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
task=PopUpViewPrint(
|
||||
@@ -12,8 +13,8 @@ U0 Song()
|
||||
"$LK,"BF:Luke,11:5"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3qBBE2GG3FFC",
|
||||
"We \0are \0in \0the \0image \0of \0God.\n\0 \0");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -3,11 +3,12 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"BF:Matthew,19:16"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
"$$WW+H,1$$";
|
||||
while (!ScanKey) {
|
||||
Play("3eGAetCCCFFDqAeAAFAAFqG",
|
||||
|
||||
@@ -13,7 +13,7 @@ U0 Song()
|
||||
Play("qBsEGeBDe.AsCeA2qF3sBBeACBBsBB",
|
||||
"I'm \0not \0 \0 \0spry.\n\0 \0 \0 \0 \0 \0 \0 \0I \0best \0chill.\n\0 \0 \0");
|
||||
Play("eDDsGFGFeEBqGM5/4",
|
||||
"If \0 \0God \0 \0 \0 \0 \0 \0ask,\n\0");
|
||||
"If \0 \0God \0 \0 \0 \0 \0 \0asked,\n\0");
|
||||
Play("eBGF4A3e.FsEqAAM4/4",
|
||||
" \0\"$$RED$$Can \0 \0 \0you \0 \0Kill?$$FG$$\"\n\0 \0");
|
||||
Play("eDDsGFGFeEBqGM5/4",
|
||||
|
||||
@@ -28,6 +28,7 @@ U0 DrawIt(CTask *task,CDC *dc)
|
||||
U0 Song()
|
||||
{
|
||||
SettingsPush; //See $LK,"SettingsPush",A="MN:SettingsPush"$
|
||||
MusicSettingsRst;
|
||||
Fs->draw_it=&DrawIt;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
|
||||
|
||||
Binary file not shown.
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
"$$WW+H,1$$";
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
while (TRUE) {
|
||||
Play("qCqAqAsEDEDqBqBetGGEs2G3C2G3C");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -2,6 +2,7 @@
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
|
||||
@@ -3,6 +3,7 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
task=PopUpViewPrint(
|
||||
@@ -16,8 +17,8 @@ U0 Song()
|
||||
"am I worth?\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
DocRecalc(DocPut(task)); //Reformat word-wrap with new window size.
|
||||
while (!ScanKey) {
|
||||
Play("3qGsB2G3B2G3eF2G3sGGGGeRFC2G3qFC",
|
||||
|
||||
@@ -9,8 +9,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"Ecclesiastes,5:12",A="BF:Ecclesiastes,5:12"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3sDDDACCADDACCAe.DsCCC2G3FD2G3FD2G3CCAe.D",
|
||||
"I \0 \0 \0 \0got \0 \0 \0paid, \0 \0 \0to\0 \0 \0day.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
//7 has words
|
||||
U0 Song()
|
||||
{
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo= 2.480;
|
||||
music.stacatto_factor= 0.902;
|
||||
try {
|
||||
while (!ScanKey) {
|
||||
Play("3qFCeEAEAqDeCEqBA",
|
||||
"This \0 \0 \0 \0 \0 \0sand\0wich \0is \0bland.\n\0 \0");
|
||||
Play("eCCqDeDDqEeAECECEqA",
|
||||
"God \0 \0damn, \0my \0 \0tastes \0 \0 \0 \0sure \0 \0are \0grand.\n\0");
|
||||
Play("M6/8");
|
||||
Play("FEB2G3sAGeCqE",
|
||||
"Ho \0hum. \0 \0 \0 \0How \0 \0rude!\n\0");
|
||||
Play("FEB2G3sAGeCqE",
|
||||
"That \0bum \0 \0 \0 \0likes \0his \0food.\n\0");
|
||||
Play("2G3sAGeDqGFEB",
|
||||
" \0 \0Likes \0his \0food!\n\0 \0 \0 \0");
|
||||
Play("2G3sAAeEqD2G3sDBDB2eGG");
|
||||
Play("3AsEDqAeAsBGEBEB2qG3sDBDB");
|
||||
Play("2eGG3AsEDqAeAsBGEBEB");
|
||||
}
|
||||
} catch
|
||||
PutExcept;
|
||||
Snd(0);
|
||||
}
|
||||
|
||||
Song;
|
||||
Binary file not shown.
@@ -13,8 +13,8 @@ U0 Song()
|
||||
"$LK,"John,13:14",A="BF:John,13:14"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
"$$GREEN$$Jesus talking...\n$$FG$$";
|
||||
Play("M6/8");
|
||||
|
||||
Binary file not shown.
@@ -9,8 +9,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"Luke,12:12",A="BF:Luke,12:12"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3hDeDA2qG3hDeD2GqF",
|
||||
"It \0sig\0ni\0fies\n\0a \0big \0sur\0prise.\n\0");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -9,8 +9,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"Proverbs,11:25",A="BF:Proverbs,11:25"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("2eG3CDAqEsACACGEGEqDsAAAAetCDD",
|
||||
"Ple\0ase \0te\0ach \0me.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
|
||||
|
||||
@@ -50,8 +50,8 @@ U0 Song()
|
||||
"$LK,"Daniel,9:17",A="BF:Daniel,9:17"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
"$$BG+H,LTCYAN$$$$FG+H,BLACK$$";
|
||||
while (!ScanKey) {
|
||||
Play("2qG3eCB2hGqG3eCB2qG3A",
|
||||
|
||||
@@ -9,8 +9,8 @@ U0 Song()
|
||||
try {
|
||||
task=PopUpViewPrint("$LK,"Luke,17:36",A="BF:Luke,17:36"$\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("3qABeCq.AqCDeEq.A",
|
||||
"Pile \0of \0clo\0ths.\n\0Pile \0of \0clo\0ths.\n\0");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -3,6 +3,7 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
task=PopUpViewPrint(
|
||||
@@ -12,8 +13,8 @@ U0 Song()
|
||||
"want God to talk some more. The $LK+PU,"Holy Spirit",A="FI:::/Adam/God/HSNotes.TXT"$ can "
|
||||
"puppet you.\n");
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
"$$WW+H,1$$";
|
||||
DocRecalc(DocPut(task)); //Reformat word-wrap with new window size.
|
||||
while (!ScanKey) {
|
||||
|
||||
Binary file not shown.
@@ -3,6 +3,7 @@ U0 Song()
|
||||
{
|
||||
CTask *task;
|
||||
Fs->task_end_cb=&SndTaskEndCB;
|
||||
MusicSettingsRst;
|
||||
music.tempo=2.5;
|
||||
try {
|
||||
task=PopUpViewPrint(
|
||||
@@ -11,8 +12,8 @@ U0 Song()
|
||||
"$LK,"Matthew,25:18",A="BF:Matthew,25:18"$\n"
|
||||
);
|
||||
TaskWait(task);
|
||||
SetWinHorz(Fs->win_left,Fs->win_right,task);
|
||||
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
WinHorz(Fs->win_left,Fs->win_right,task);
|
||||
WinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
|
||||
while (!ScanKey) {
|
||||
Play("2qG3sFEFEqDBEetCB2G3qFsBDBD",
|
||||
" \0Damn \0 \0 \0 \0 \0 \0fig \0 \0 \0 \0tree.\n\0 \0 \0 \0 \0");
|
||||
|
||||
Binary file not shown.
@@ -10,15 +10,15 @@ $WW,1$$PURPLE$$TX+CX,"Psalmody Help"$$FG$
|
||||
|
||||
* You can take the $LK,"Play",A="MN:Play"$() statements out of a song file and place them in your programs. You can also add a song to a document with $GREEN$<CTRL-l>$FG$, but you should do it after pressing $GREEN$<CTRL-t>$FG$ because the clipboard-insert in $GREEN$<CTRL-l>$FG$ is screwy. See this $SO,"<Song>",A="2qG3ECB2eGG3qCeFDsBGBG2qG3ECB2eGG3qCeFDsBGBGqEeEFqEB2eG3FetCAGqFCEeEFqEB2eG3FetCAGqFC"$ after pressing $GREEN$<CTRL-t>$FG$, now.
|
||||
|
||||
* You can call $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.CPP,JukeBox"$("HOME/Psalmody"); to play your songs.
|
||||
* You can call $LK,"JukeBox",A="FF:::/Apps/Psalmody/JukeBox.CPP,JukeBox"$("::/Home/Psalmody"); to play your songs.
|
||||
|
||||
* To create a $GREEN$.SND$FG$ file which can be exported and played under Windows, set the $GREEN$Bool$FG$ $LK,"snd.record",A="MN:CSndGlbls"$ to $GREEN$TRUE$FG$, play music, and set it to $GREEN$FALSE$FG$. Then, call $LK,"SndFileCreate",A="MN:SndFileCreate"$(). You might wish to make a $GREEN$<CTRL-ALT-key>$FG$ to toggle this system level recording feat. See $LK,"Snd",A="MN:Snd"$(). Add this code to your $LK,"HOME/Adam3cKeyPlugIns.CPP"$ file.
|
||||
* To create a $GREEN$.SND$FG$ file which can be exported and played under Windows, set the $GREEN$Bool$FG$ $LK,"snd.record",A="MN:CSndGlbls"$ to $GREEN$TRUE$FG$, play music, and set it to $GREEN$FALSE$FG$. Then, call $LK,"SndFileCreate",A="MN:SndFileCreate"$(). You might wish to make a $GREEN$<CTRL-ALT-key>$FG$ to toggle this system level recording feat. See $LK,"Snd",A="MN:Snd"$(). Add this code to your $LK,"::/Home/AdamKeyPlugIns.CPP"$ file.
|
||||
|
||||
$PURPLE$U0 CtrlAltR(I64)
|
||||
{
|
||||
snd.record=!snd.record;
|
||||
}
|
||||
SetCtrlAltLetCB('R',&CtrlAltR,"Toggle snd.record");$FG$
|
||||
CtrlAltLetCBSet('R',&CtrlAltR,"Toggle snd.record");$FG$
|
||||
|
||||
* When calling $LK,"SndFileCreate",A="MN:SndFileCreate"$() you can set a waveform. The PC speaker is $LK,"WF_SQUARE",A="MN:WF_SQUARE"$. You can select reverb and averaging, also.
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
if (!FileFind("HOME/Psalmody",,FUF_JUST_DIRS)) {
|
||||
MkDir("HOME/Psalmody");
|
||||
}
|
||||
if (!FileFind("::/Home/Psalmody",,FUF_JUST_DIRS))
|
||||
MkDir("::/Home/Psalmody");
|
||||
@@ -1,12 +1,12 @@
|
||||
CTask *SingleSong(U8 *msg,U8 *name)
|
||||
{
|
||||
Bool old_preempt=Preempt(OFF);
|
||||
CTask *task=Spawn(&SrvUserCmdLine,NULL,name,,Fs);
|
||||
CTask *task=Spawn(&SrvCmdLine,NULL,name,,Fs);
|
||||
StrCpy(task->task_title,name);
|
||||
task->title_src=TTS_LOCKED_CONST;
|
||||
TaskExe(task,Fs,";",1<<SVCf_WAKE_MASTER|1<<SVCf_FREE_ON_COMPLETE);
|
||||
SetWinHorz(task->win_left,task->win_left+50,task);
|
||||
SetWinVert(2,2+8,task);
|
||||
WinHorz(task->win_left,task->win_left+50,task);
|
||||
WinVert(2,2+8,task);
|
||||
Preempt(old_preempt);
|
||||
TaskExe(task,NULL,msg,1<<SVCf_EXIT_ON_COMPLETE|1<<SVCf_FREE_ON_COMPLETE);
|
||||
DocPut(task)->max_entries=100;
|
||||
@@ -27,7 +27,7 @@ Bool JBPutKey(CDoc *doc,U8 *,I64 ch,I64 sc)
|
||||
tempde=doc_ce->left_exp;
|
||||
if (sc.u8[0]==SC_DELETE ) {
|
||||
Beep;
|
||||
Silent(ON);
|
||||
Silent;
|
||||
Del(tempde->full_name);
|
||||
Silent(OFF);
|
||||
} else if ('0'<=ch<='9') {
|
||||
@@ -62,7 +62,7 @@ public U0 JukeBox(U8 *dirname=NULL,U8 **_filename=NULL)
|
||||
if (_filename)
|
||||
*_filename=NULL;
|
||||
if (!dirname)
|
||||
dirname=StrNew("HOME/Psalmody");
|
||||
dirname=StrNew("::/Home/Psalmody");
|
||||
else
|
||||
dirname=StrNew(dirname);
|
||||
st=MStrPrint("%s/*.CPP.Z",dirname);
|
||||
|
||||
@@ -72,12 +72,12 @@ U0 JukeSongPuppet(CTask *juke_task,I64 passes,I64 song_num,U8 *name)
|
||||
Kill(task);
|
||||
}
|
||||
|
||||
public U0 JukeSongsPuppet(U8 *dir="HOME/Psalmody",I64 passes=2,
|
||||
public U0 JukeSongsPuppet(U8 *dir="::/Home/Psalmody",I64 passes=2,
|
||||
I64 start_song=0,I64 end_song=MAX_I64)
|
||||
{//Help make music video by puppeting JukeBox task.
|
||||
I64 i;
|
||||
CDirEntry *tempde,*tempde1;
|
||||
CTask *juke_task=SpawnUser("JukeBox(0x%X);\n",dir);
|
||||
CTask *juke_task=User("JukeBox(0x%X);\n",dir);
|
||||
Cd(dir);
|
||||
tempde1=FilesFind("*",FUF_RECURSE|FUF_JUST_TXT|FUF_JUST_FILES);
|
||||
for (tempde=tempde1,i=0;tempde && i<start_song;i++)
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
#help_index "Snd"
|
||||
|
||||
#include "/Apps/Psalmody/JukeBox"
|
||||
#include "/Apps/Psalmody/JukePuppet"
|
||||
#include "/Apps/Psalmody/PsalmodyCtrls"
|
||||
#include "/Apps/Psalmody/Psalmody"
|
||||
Cd(__DIR__);;
|
||||
#include "JukeBox"
|
||||
#include "JukePuppet"
|
||||
#include "Psalmody"
|
||||
#include "PsalmodyCtrls"
|
||||
#include "PsalmodyDraw"
|
||||
#include "PsalmodyFile"
|
||||
#include "PsalmodyMain"
|
||||
|
||||
#help_index ""
|
||||
+10
-1911
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,599 @@
|
||||
|
||||
$ID,8$
|
||||
$SP,"<1>",BI=1$
|
||||
|
||||
$SP,"<2>",BI=2$
|
||||
|
||||
$SP,"<3>",BI=3$
|
||||
|
||||
$SP,"<4>",BI=4$
|
||||
|
||||
$SP,"<5>",BI=5$
|
||||
|
||||
$SP,"<6>",BI=6$
|
||||
|
||||
|
||||
$SP,"<7>",BI=7$
|
||||
|
||||
|
||||
$SP,"<8>",BI=8$
|
||||
|
||||
|
||||
$SP,"<9>",BI=9$
|
||||
|
||||
|
||||
$SP,"<10>",BI=10$
|
||||
|
||||
|
||||
$SP,"<11>",BI=11$
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
$SP,"<12>",BI=12$
|
||||
|
||||
|
||||
|
||||
|
||||
$SP,"<13>",BI=13$
|
||||
|
||||
$SP,"<14>",BI=14$
|
||||
|
||||
$SP,"<15>",BI=15$
|
||||
|
||||
|
||||
$SP,"<16>",BI=16$
|
||||
$ID,-8$
|
||||
#define PSM_NOTE_SPACING 9
|
||||
#define PSM_NUM_DURATIONS 12
|
||||
|
||||
F64 psm_durations[PSM_NUM_DURATIONS+1]={
|
||||
2*.25/3,.25,2*.5/3,.5,2.0/3.0,0.5*1.5,1.0,1.5,2.0,3.0,4.0,6.0,1000000.0};
|
||||
U8 *psm_duration_lst="st\0s\0et\0e\0qt\0e.\0q\0q.\0h\0h.\0w\0w.\0";
|
||||
CSprite *psm_duration_imgs[PSM_NUM_DURATIONS]={$IB,"<1>",BI=1$,$IB,"<1>",BI=1$,$IB,"<2>",BI=2$,
|
||||
$IB,"<2>",BI=2$,$IB,"<3>",BI=3$,$IB,"<2>",BI=2$,$IB,"<3>",BI=3$,$IB,"<3>",BI=3$,
|
||||
$IB,"<4>",BI=4$,$IB,"<4>",BI=4$,$IB,"<5>",BI=5$,$IB,"<5>",BI=5$};
|
||||
Bool psm_triplet_durations[PSM_NUM_DURATIONS]={TRUE,FALSE,TRUE,
|
||||
FALSE,TRUE,FALSE,FALSE,FALSE,
|
||||
FALSE,FALSE,FALSE,FALSE};
|
||||
|
||||
|
||||
Bool PsmBlink()
|
||||
{
|
||||
if (Blink || oc.playing)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
Bool PsmHasWords(U8 *st)
|
||||
{
|
||||
if (st && *st && (StrLen(st)>1 || *st!=CH_SPACE && *st!=CH_SHIFT_SPACE))
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
Bool PsmIsDotted(I64 duration)
|
||||
{
|
||||
U8 *st=LstSub(duration,psm_duration_lst);
|
||||
if (st[1]=='.')
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
U0 PsmMarkSelected(I64 x1,I64 x2,Bool sel)
|
||||
{
|
||||
PsmNote *tempo=oc.root.next;
|
||||
while (tempo!=&oc.root) {
|
||||
if (sel) {
|
||||
if (x1<=tempo->x<=x2)
|
||||
tempo->flags|=PSMF_SELECTED;
|
||||
} else
|
||||
tempo->flags&=~PSMF_SELECTED;
|
||||
tempo=tempo->next;
|
||||
}
|
||||
}
|
||||
|
||||
U0 PsmSetWidth(PsmNote *tempo)
|
||||
{
|
||||
if (tempo->type==PSMT_METER)
|
||||
tempo->width=12;
|
||||
else {
|
||||
tempo->width=PSM_NOTE_SPACING;
|
||||
if (PsmIsDotted(tempo->duration))
|
||||
tempo->width+=PSM_NOTE_SPACING/2;
|
||||
if (Bt(&tempo->flags,PSMf_SHARP) || Bt(&tempo->flags,PSMf_FLAT))
|
||||
tempo->width+=PSM_NOTE_SPACING;
|
||||
}
|
||||
}
|
||||
|
||||
U0 PsmSetOctave(I64 octave)
|
||||
{
|
||||
I64 i;
|
||||
U8 buf[136];
|
||||
CMenuEntry *tempse;
|
||||
for (i=0;i<=6;i++) {
|
||||
StrPrint(buf,"Snd/Octave%d",i);
|
||||
if (tempse=MenuEntryFind(Fs->cur_menu,buf)) {
|
||||
if (i==octave)
|
||||
tempse->checked=TRUE;
|
||||
else
|
||||
tempse->checked=FALSE;
|
||||
}
|
||||
}
|
||||
if (tempse=MenuEntryFind(Fs->cur_menu,"Snd/Reverb"))
|
||||
tempse->checked=psm_play_mode==1;
|
||||
}
|
||||
|
||||
U0 DrawNote(CDC *dc,I64 x,I64 y,I64 duration)
|
||||
{
|
||||
if (0<=duration<=PSM_NUM_DURATIONS) {
|
||||
Sprite3(dc,x,y,0,psm_duration_imgs[duration]);
|
||||
if (psm_triplet_durations[duration])
|
||||
Sprite3(dc,x,y,0,$IB,"<16>",BI=16$);
|
||||
if (PsmIsDotted(duration))
|
||||
Sprite3(dc,x,y,0,$IB,"<15>",BI=15$);
|
||||
}
|
||||
}
|
||||
|
||||
U0 DrawTimeSignature(CDC *dc,I64 x,I64 y,I64 top,I64 bottom)
|
||||
{
|
||||
GrPrint(dc,x,y,"%d",top);
|
||||
GrPrint(dc,x,y+FONT_HEIGHT,"%d",bottom);
|
||||
}
|
||||
|
||||
U0 PsmRecalcNoteXY()
|
||||
{
|
||||
F64 measure_len=4,measure_left=measure_len;
|
||||
PsmNote *tempo=oc.root.next;
|
||||
I64 x=8-oc.screen_x,note,octave;
|
||||
while (TRUE) {
|
||||
tempo->x=x;
|
||||
tempo->y=50;
|
||||
if (tempo==&oc.root)
|
||||
break;
|
||||
else {
|
||||
if (tempo->type!=PSMT_METER) {
|
||||
octave=tempo->octave;
|
||||
if (octave!=OCTAVE_REST) {
|
||||
note=tempo->note;
|
||||
if (Bt(&tempo->flags,PSMf_SHARP))
|
||||
note--;
|
||||
if (Bt(&tempo->flags,PSMf_FLAT))
|
||||
note++;
|
||||
if (note<0) {
|
||||
note=11;
|
||||
octave--;
|
||||
} else if (note>11) {
|
||||
note=0;
|
||||
octave++;
|
||||
}
|
||||
note=music.note_map[*LstSub(note,psm_note_lst)-'A'];
|
||||
tempo->y=(15+(psm_note_map[note]-7*(octave-2)))*4;
|
||||
}
|
||||
}
|
||||
x+=tempo->width;
|
||||
if (tempo->type==PSMT_METER) {
|
||||
measure_len=tempo->meter_top*4.0/tempo->meter_bottom;
|
||||
measure_left=0;
|
||||
} else
|
||||
measure_left-=psm_durations[tempo->duration];
|
||||
if (measure_left<0.001) {
|
||||
x+=PSM_NOTE_SPACING;
|
||||
measure_left=measure_len;
|
||||
}
|
||||
}
|
||||
tempo=tempo->next;
|
||||
}
|
||||
}
|
||||
|
||||
U0 DrawIt(CTask *task,CDC *dc)
|
||||
{
|
||||
PsmNote *tempo;
|
||||
I64 i,x,y,
|
||||
w=task->pix_width;
|
||||
F64 measure_len=4,measure_left=measure_len;
|
||||
Bool old_preempt=Preempt(OFF);
|
||||
|
||||
dc->color=BLACK;
|
||||
for (i=1;i<6;i++)
|
||||
GrLine(dc,0,i*8,w,i*8);
|
||||
for (i=7;i<12;i++)
|
||||
GrLine(dc,0,i*8,w,i*8);
|
||||
|
||||
PsmRecalcNoteXY;
|
||||
if (oc.cur_note->x<64) {
|
||||
oc.screen_x-=128;
|
||||
PsmRecalcNoteXY;
|
||||
}
|
||||
if (oc.cur_note->x>=GR_WIDTH-64) {
|
||||
oc.screen_x+=128;
|
||||
PsmRecalcNoteXY;
|
||||
}
|
||||
|
||||
tempo=oc.root.next;
|
||||
while (tempo!=&oc.root) {
|
||||
x=tempo->x;
|
||||
y=tempo->y;
|
||||
if (measure_left<0.001) {
|
||||
dc->color=BLACK;
|
||||
GrLine(dc,x-PSM_NOTE_SPACING,8,x-PSM_NOTE_SPACING,11*8);
|
||||
measure_left=measure_len;
|
||||
}
|
||||
if (tempo->type==PSMT_METER) {
|
||||
if (tempo==oc.cur_note && PsmBlink)
|
||||
dc->color=BROWN;
|
||||
else
|
||||
dc->color=BLACK;
|
||||
DrawTimeSignature(dc,x,5*8,tempo->meter_top,tempo->meter_bottom);
|
||||
measure_len=tempo->meter_top*4.0/tempo->meter_bottom;
|
||||
measure_left=0;
|
||||
} else {
|
||||
if (tempo==oc.cur_note && PsmBlink) {
|
||||
dc->color=BROWN;
|
||||
GrPrint(dc,x+8,y,"%s",tempo->word);
|
||||
} else if (tempo->flags&PSMF_SELECTED)
|
||||
dc->color=RED;
|
||||
else {
|
||||
if (tempo->note!=NOTE_REST)
|
||||
dc->color=BLACK;
|
||||
else
|
||||
dc->color=LTGRAY;
|
||||
if (PsmHasWords(tempo->word))
|
||||
dc->color=GREEN;
|
||||
}
|
||||
DrawNote(dc,x,y,tempo->duration);
|
||||
if (PsmIsDotted(tempo->duration))
|
||||
x+=PSM_NOTE_SPACING/2;
|
||||
if (Bt(&tempo->flags,PSMf_SHARP))
|
||||
Sprite3(dc,x,y,0,$IB,"<13>",BI=13$);
|
||||
else if (Bt(&tempo->flags,PSMf_FLAT))
|
||||
Sprite3(dc,x,y,0,$IB,"<14>",BI=14$);
|
||||
measure_left-=psm_durations[tempo->duration];
|
||||
}
|
||||
tempo=tempo->next;
|
||||
}
|
||||
|
||||
if (oc.cur_note==&oc.root && PsmBlink)
|
||||
dc->color=BROWN;
|
||||
else
|
||||
dc->color=BLACK;
|
||||
Sprite3(dc,oc.root.x,50,0,$IB,"<12>",BI=12$);
|
||||
Preempt(old_preempt);
|
||||
}
|
||||
|
||||
#define PSM_NOTE_BOX_X 220
|
||||
#define PSM_NOTE_BOX_Y (13*FONT_HEIGHT+14)
|
||||
U0 PsmSetPickNoteBoxX(I64 duration,I64 *x)
|
||||
{
|
||||
I64 i;
|
||||
*x=PSM_NOTE_BOX_X;
|
||||
for (i=0;i<duration;i++) {
|
||||
if (PsmIsDotted(i))
|
||||
*x+=PSM_NOTE_SPACING/2;
|
||||
*x+=PSM_NOTE_SPACING+4;
|
||||
}
|
||||
}
|
||||
|
||||
I64 PsmGetPickNoteBoxDuration(I64 xx,I64 yy)
|
||||
{
|
||||
I64 i,x1,x2;
|
||||
if (PSM_NOTE_BOX_Y-14<=yy<PSM_NOTE_BOX_Y+6) {
|
||||
for (i=0;i<PSM_NUM_DURATIONS;i++) {
|
||||
PsmSetPickNoteBoxX(i,&x1);
|
||||
PsmSetPickNoteBoxX(i+1,&x2);
|
||||
if (x1<=xx+PSM_NOTE_SPACING/2<x2)
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
U0 DrawPickNoteBox()
|
||||
{
|
||||
I64 i,x;
|
||||
for (i=0;i<PSM_NUM_DURATIONS;i++) {
|
||||
PsmSetPickNoteBoxX(i,&x);
|
||||
if (PsmIsDotted(i))
|
||||
oc.dc2->color=RED;
|
||||
else if (psm_triplet_durations[i])
|
||||
oc.dc2->color=LTRED;
|
||||
else
|
||||
oc.dc2->color=BLACK;
|
||||
DrawNote(oc.dc2,x,PSM_NOTE_BOX_Y,i);
|
||||
}
|
||||
}
|
||||
|
||||
#define PSM_TOOLS_X 450
|
||||
#define PSM_TOOLS_Y 13*FONT_HEIGHT
|
||||
|
||||
U0 DrawPickTools()
|
||||
{
|
||||
if (oc.tool==PSMTT_BOX_TOOL)
|
||||
oc.dc2->color=ROPF_DITHER+WHITE<<16+RED;
|
||||
else
|
||||
oc.dc2->color=ROPF_DITHER+WHITE<<16+BLACK;
|
||||
GrBorder(oc.dc2,PSM_TOOLS_X,PSM_TOOLS_Y,
|
||||
PSM_TOOLS_X+10,PSM_TOOLS_Y+10);
|
||||
|
||||
if (oc.tool==PSMTT_PTR_TOOL)
|
||||
oc.dc2->color=RED;
|
||||
else
|
||||
oc.dc2->color=BLACK;
|
||||
(*gr.fp_draw_input_ptr)(oc.dc2,PSM_TOOLS_X+15,PSM_TOOLS_Y);
|
||||
oc.dc2->color=BLACK;
|
||||
}
|
||||
|
||||
Bool PsmGetPickToolBox(I64 xx,I64 yy)
|
||||
{
|
||||
if (PSM_TOOLS_X<=xx<PSM_TOOLS_X+27 &&
|
||||
PSM_TOOLS_Y<=yy<PSM_TOOLS_Y+15) {
|
||||
PsmMarkSelected(0,0,FALSE);
|
||||
if (xx<PSM_TOOLS_X+13)
|
||||
oc.tool=PSMTT_BOX_TOOL;
|
||||
else
|
||||
oc.tool=PSMTT_PTR_TOOL;
|
||||
return TRUE;
|
||||
} else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#define PSM_NUM_METERS 7
|
||||
I64 meter_tops[PSM_NUM_METERS] ={2,3,4,5,6,7,9},
|
||||
meter_bottoms[PSM_NUM_METERS]={4,4,4,4,8,8,8};
|
||||
|
||||
#define PSM_METER_X 485
|
||||
#define PSM_METER_Y 13*FONT_HEIGHT
|
||||
#define PSM_METER_W 12
|
||||
Bool PsmGetPickMeterBox(I64 xx,I64 yy,I64 *top,I64 *bottom)
|
||||
{
|
||||
I64 i;
|
||||
if (PSM_METER_X<=xx<PSM_METER_X+PSM_METER_W*PSM_NUM_METERS &&
|
||||
PSM_METER_Y<=yy<PSM_METER_Y+2*FONT_HEIGHT) {
|
||||
i=(xx-PSM_METER_X)/PSM_METER_W;
|
||||
*top=meter_tops[i];
|
||||
*bottom=meter_bottoms[i];
|
||||
return TRUE;
|
||||
} else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
U0 DrawPickMeterBox()
|
||||
{
|
||||
I64 i;
|
||||
oc.dc2->color=BLACK;
|
||||
for (i=0;i<PSM_NUM_METERS;i++)
|
||||
DrawTimeSignature(oc.dc2,PSM_METER_X+i*PSM_METER_W,PSM_METER_Y,meter_tops[i],meter_bottoms[i]);
|
||||
}
|
||||
|
||||
U0 DrawDC2()
|
||||
{
|
||||
DCFill;
|
||||
DrawPickNoteBox;
|
||||
DrawPickMeterBox;
|
||||
DrawPickTools;
|
||||
}
|
||||
|
||||
|
||||
$SP,"<17>",BI=17$
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
U0 PsmMenu(I64 psm_octave)
|
||||
{
|
||||
DocClear;
|
||||
"$$BD,WHITE$$$$FD,GREEN$$$$CM,0,12$$\n";
|
||||
Sprite($IB,"<17>",BI=17$);
|
||||
'\n\n\n\n\n';
|
||||
|
||||
DrawDC2;
|
||||
|
||||
"$$LTGREEN$$<SPACE>$$FG$$\t\tRest\n"
|
||||
"$$LTGREEN$$<BACKSPACE>$$FG$$\tDeletes Last Note\n"
|
||||
"$$LTGREEN$$Left Mouse$$FG$$\tDrag note or shift word\n"
|
||||
"$$LTGREEN$$Right Mouse$$FG$$\tChange duration or set word\n";
|
||||
Sprite($IB,"<6>",BI=6$,"$$SP+LA,\"\",LM=\"Msg(MSG_KEY_DOWN,0,SCF_CTRL|SC_CURSOR_LEFT);\",BI=%d$$");
|
||||
" ";
|
||||
if (oc.playing)
|
||||
Sprite($IB,"<9>",BI=9$,"$$SP,\"\",LM=\"x\",BI=%d$$");
|
||||
else
|
||||
Sprite($IB,"<8>",BI=8$,"$$SP,\"\",LM=\"x\",BI=%d$$");
|
||||
" ";
|
||||
if (oc.record_entry->checked) {
|
||||
oc.record_entry->checked=TRUE;
|
||||
Sprite($IB,"<10>",BI=10$,"$$SP,\"\",LM=\"z\",BI=%d$$");
|
||||
} else
|
||||
Sprite($IB,"<11>",BI=11$,"$$SP,\"\",LM=\"z\",BI=%d$$");
|
||||
" ";
|
||||
Sprite($IB,"<7>",BI=7$,"$$SP+LA,\"\",LM=\"Msg(MSG_KEY_DOWN,0,SCF_CTRL|SC_CURSOR_RIGHT);\",BI=%d$$");
|
||||
"$$CM+LX,0,6$$";
|
||||
PsmSetOctave(psm_octave);
|
||||
WinMgrSync(2);
|
||||
}
|
||||
| ||||