TempleOSTS_130707.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:45:45 +02:00
1 parent 17b71f1a2d
commit 1343005a29
617 files changed
+14399 -25130

No files matched your search

-7
View File
@@ -1,7 +0,0 @@
$FG,5$After Egypt Help$FG$
----------------
$LK,"Part 1","FI:::/TempleOS/Apps/HolySpirit/HSNotes.TXT"$
$LK,"Part 2","FI:::/TempleOS/Apps/AfterEgypt/AENotesPart2.TXT"$
-51
View File
@@ -1,51 +0,0 @@
$WW,1$$FG,5$$TX+CX,"Using this Program, AfterEgypt"$$FG$
This game is not about leaving Egypt and it's not about leaving the wilderness. It's about being in the wilderness after Egypt. The whole point is they went from the frying-pan to the fire. $LK,"Numbers,11:1","BF:Numbers,11:1"$ People misrepresent Exodus when they claim it for liberation struggles. Actually, though, the wilderness generation was very blessed because they had first class entertainment -- miracles and excitement. As far as God's concerned, you need food, clothing and entertainment. Just imagine all the prehistoric and primiative people who have lived.
In this game, hold-up your end of the conversation and talk to God. When you pray try to put your best foot forward. God told me, "excessive contricians wearysome", for example, when I was worried about sin. I joke, don't remind Him of sins because He might have forgotten.
God loved Jacob and hated Esau. Jacob was like a little rascal. Ironically, holier-than-thou, do-gooder, attitudes are hated. Jesus was "meek and humble of heart", $LK,"Matthew,11:27","BF:Matthew,11:27"$. What does "humble of head" mean? To know God is to know justice. Everyone, rich and poor, has highs and lows. Do not covet. Get your eye off of money. Relax! Don't feel sorry for the poor and don't envy the rich. The poor are mostly lazy and rich suffer plenty. Chavez of Venezuala was fussing and God said, "Japan industrious". What planet do you live on, people! You wouldn't cannonize a ugly man for not committing adultery. When the poor get money, they make buffoons of themselves as nouveau riche. Proud of heart means you won't accept a gift from God, like your birthright being American and not a day laborer. Grace. $LK,"Ecclesiastes,2:24","BF:Ecclesiastes,2:24"$ Jesus' burden is light. He's meek. You don't have to save the world. The poor are richer than Jesus and there is justice. Everything is vanity and the sinner collects possessions for the just.
After the Haiti quake, I used my program to pick a random passage from some books. Adam Smith came-up:
$FG,2$The value of a free-stone quarry, for example, will necessarily increase
with the increasing improvement and population of the country round
about it, especially if it should be the only one in the neighbourhood.
But the value of a silver mine, even though there should not be another
within a thousand miles of it, will not necessarily increase with the
improvement of the country in which it is situated. The market for the
produce of a free-stone quarry can seldom extend more than a few miles
round about it, and the demand must generally be in proportion to the
improvement and population of that small district; but the market for
the produce of a silver mine may extend over the whole known world.$FG$
God's not a schmuck. God is just. If you are out of work, find anything productive to do. I'd go so far as to say, it's impossible not to be rewarded for honest work. I bank on that. I have an incredible entertainment budget ;-)
Sometimes, puppet-generated stuff will sound prophetic and relevant enough to scare you. In my experience it's not prophetic, but might be designed to get your attention. Focus on enjoying His company and growing.
Is this tongues program voodoo? How did they talk with God in the Bible? Did they hear voices? If animal sacrifices were not voodoo, this program is certainly not voodoo. Tongues is a perfectly acceptible Christian doctrine. In fact, $LK,"1 Corinthians,14:39","BF:1 Corinthians,14:39"$, says not to forbid tongues! It is common Christian belief that we are temples of the Holy Spirit, that God dwells in us. I figure idolatry is doing this and thinking the intelligence resides in the object instead of in the person consulting God.
If any preacher calls this witchcraft, let me retaliate by saying anyone who does not do miracles is not saved. $LK,"Matthew,17:19","BF:Matthew,17:19"$ "... with faith... say to this mountain..." Do a text search for "dumb ass" in the King James Bible. $LK,"2 Peter,2:16","BF:2 Peter,2:16"$ The king of Babylon was made crazy and restored. $LK,"Daniel,4:25","BF:Daniel,4:25"$ If you don't believe in omens, read $LK,"Matthew,26:74","BF:Matthew,26:74"$. If you don't believe in astrology, read $LK,"Matthew,2:10","BF:Matthew,2:10"$. God has a plan and clockwork for Creation. It's nothing to do with power of planets. This is voodoo -- $LK,"Leviticus,3:4","BF:Leviticus,3:4"$?
We are not to test God, and we are to "live on the word of God." $LK,"Matthew,4:3","BF:Matthew,4:3"$ Do not attempt to box God in a corner, attempting to force him to answer, as in, "should I do such and such, yes or no?" I think it is okay to meditate and offer God the option to comment.
Don't bug God too much, especially, don't enquire if you haven't offered any meditations or whatever. $LK,"Isaiah,7:13","BF:Isaiah,7:13"$ This, $LK,"Genesis,18:27","BF:Genesis,18:27"$, is funny, though.
I'll let you work-out how to interpret what you hear from God. It can be the start of a real, personal, relationship with the Father that even has a history. God gift-wraps His talk in riddles. Here's a hint: $LK,"Daniel,5:27","BF:Daniel,5:27"$. "It's mean to tickle the President or a person." God hides from the arrogant and reveals to the child-like. Don't feel foolish if you interpret based on what pops-into your head anagram-wise, analogy-wise or whatever. $LK,"1 Corinthians,2:13","BF:1 Corinthians,2:13"$
When God gives me a response in a random passage, it's like He picked a greeting card for me. That's love. I try to return love by being just as thoughtful.
$FG,5$$TX+CX,"This Game"$$FG$
This $FG,2$AfterEgypt$FG$ game is not really done.
I thought about a sucker option to $WW,1$take a census -- God say's "why have you done this? You want to battle... Fine. You must pick a penalty..." This is based on something king David did. $LK,"2 Samuel,24:10","BF:2 Samuel,24:10"$ My thinking is that God punished because the act of taking a census reflected a military inclination. Instead of census, you see a crowd of people and must guess how many. I wish not to turn this into another conquest game.
$FG,5$$TX+CX,"Parting Wisdom"$$FG$
The story of God asking Abraham to sacrifice his son, Issac, is deceptive. It turns-out that was actually God imposing justice on Abraham because he almost killed his other son, Ishmael. $LK,"Genesis,21:16","BF:Genesis,21:16"$
I just heard in the news that some woman starved her kids because she expected God to provide food. That's testing God. If you find yourself in need, God promises to help, but if you place yourself in need voluntarily, that's attempting to force God and is putting Him to the test. $LK,"Matthew,4:3","BF:Matthew,4:3"$ I gave all my possessions away, once, in 1996, quit my job and expected some mission from God to turn-up. Nothing happened and I was depressed. $LK,"Matthew,19:21","BF:Matthew,19:21"$ I just went back to doing my thing. I guess it eventually paid-off.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3 -2
View File
@@ -4,16 +4,17 @@ U0 ViewComics()
U8 *st;
CDirEntry *tempm,*tempm1;
CDoc *doc=DocNew;
DocPutS(doc,"$$FG,LTBLUE$$");
tempm=FilesFind("Comics/*.TXT*");
tempm1=tempm;
while (tempm1) {
if (!(i++&3))
DocPutS(doc,"\n");
st=StrNew(tempm1->name);
FileExtRem(st);
tempm1->user_data=DocPrintF(doc,"$$MU-UL,\"%-10ts\",%d$$ ",st,tempm1);
Free(st);
tempm1=tempm1->next;
if ((i++&3)==3)
DocPutS(doc,"\n");
}
while (TRUE) {
if ((tempm1=PopUpMenu(doc))>0)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1
View File
@@ -11,6 +11,7 @@ Cd("/TempleOS/Apps/AfterEgypt");;
#include "WaterRock"
#include "Quail"
#include "Horeb"
#include "GodTalking"
#include "AfterEgypt"
#help_index ""
Binary file not shown.
Binary file not shown.
Binary file not shown.
+12 -12
View File
@@ -4,14 +4,14 @@ This makes a mesh ball.
#define MAX_VERTICES 1024
#define MAX_TRIANGLES 1024
#define MAX_TRIS 1024
class Ball
{
I32 vertex_cnt;
I32 triangle_cnt;
I32 tri_cnt;
CD3I32 v[MAX_VERTICES];
CMeshTri t[MAX_TRIANGLES];
CMeshTri t[MAX_TRIS];
} *b;
@@ -50,9 +50,9 @@ I64 AddVertex(BallDefineStruct *,I64 x,I64 y,I64 z)
return i;
}
I64 AddTriangle(BallDefineStruct *,I64 c,I64 n0,I64 n1,I64 n2)
I64 AddTri(BallDefineStruct *,I64 c,I64 n0,I64 n1,I64 n2)
{
I64 result=b->triangle_cnt++;
I64 result=b->tri_cnt++;
b->t[result].color=c;
b->t[result].nums[0]=n0;
b->t[result].nums[1]=n1;
@@ -64,15 +64,15 @@ U8 *Ball2CSprite()
{
//See $LK,"::/TempleOS/Adam/Gr/GrSpritePlot.CPP","FL:::/TempleOS/Adam/Gr/GrSpritePlot.CPP,1"$ for how CSprite are stored.
U8 *result=MAlloc(sizeof(U8)+2*sizeof(I32)+
b->vertex_cnt*sizeof(CD3I32)+b->triangle_cnt*sizeof(CMeshTri)+gr_sprite_base_size[GRST_END]),
b->vertex_cnt*sizeof(CD3I32)+b->tri_cnt*sizeof(CMeshTri)+gr_sprite_base_size[GRST_END]),
*dst=result;
*dst(U8 *)++ =GRST_MESH;
*dst(I32 *)++ =b->vertex_cnt;
*dst(I32 *)++ =b->triangle_cnt;
*dst(I32 *)++ =b->tri_cnt;
MemCpy(dst,&b->v,b->vertex_cnt*sizeof(CD3I32));
dst+=b->vertex_cnt*sizeof(CD3I32);
MemCpy(dst,&b->t,b->triangle_cnt*sizeof(CMeshTri));
dst+=b->triangle_cnt*sizeof(CMeshTri);
MemCpy(dst,&b->t,b->tri_cnt*sizeof(CMeshTri));
dst+=b->tri_cnt*sizeof(CMeshTri);
*dst(U8 *)++ =GRST_END;
return result;
}
@@ -92,7 +92,7 @@ public U8 *BallGen()
MemCpy(&bd2,&bd1,sizeof(BallDefineStruct));
BDCorrect(&bd2);
c=PopUpLightingColor;
c=PopUpColorLighting;
if (c<0) return NULL;
b=CAlloc(sizeof(Ball));
@@ -111,8 +111,8 @@ public U8 *BallGen()
p2=AddVertex(&bd2,r1*Cos((2*i+2+j)*d_a2),r1*Sin((2*i+2+j)*d_a2),z1);
p3=AddVertex(&bd2,r2*Cos((2*i+1+j)*d_a2),r2*Sin((2*i+1+j)*d_a2),z2);
p4=AddVertex(&bd2,r2*Cos((2*i+3+j)*d_a2),r2*Sin((2*i+3+j)*d_a2),z2);
AddTriangle(&bd2,c,p1,p2,p3);
AddTriangle(&bd2,c,p3,p2,p4);
AddTri(&bd2,c,p1,p2,p3);
AddTri(&bd2,c,p3,p2,p4);
}
}
+25 -25
View File
@@ -4,14 +4,14 @@ This makes a mesh man.
#define MAX_VERTICES 1024
#define MAX_TRIANGLES 1024
#define MAX_TRIS 1024
class Man
{
I32 vertex_cnt;
I32 triangle_cnt;
I32 tri_cnt;
CD3I32 v[MAX_VERTICES];
CMeshTri t[MAX_TRIANGLES];
CMeshTri t[MAX_TRIS];
} *m;
@@ -126,9 +126,9 @@ I64 AddVertex(ManDefineStruct *md,I64 x,I64 y,I64 z)
return result;
}
I64 AddTriangle(ManDefineStruct *,I64 c,I64 n0,I64 n1,I64 n2)
I64 AddTri(ManDefineStruct *,I64 c,I64 n0,I64 n1,I64 n2)
{
I64 result=m->triangle_cnt++;
I64 result=m->tri_cnt++;
m->t[result].color=c;
m->t[result].nums[0]=n1;
m->t[result].nums[1]=n0;
@@ -158,24 +158,24 @@ U0 AddBox(ManDefineStruct *md,I64 c,I64 x1,I64 y1,I64 z1,F64 w,F64 h,F64 d,F64 h
p2a=AddVertex(md,x1+dx +wx+h2x,y1+dy +wy+h2y,z1+dz +wz+h2z);
p3a=AddVertex(md,x1+dx+hx-wx ,y1+dy+hy-wy ,z1+dz+hz-wz);
p4a=AddVertex(md,x1+dx+hx+wx ,y1+dy+hy+wy ,z1+dz+hz+wz);
AddTriangle(md,c,p1a,p2a,p3a);
AddTriangle(md,c,p4a,p3a,p2a);
AddTri(md,c,p1a,p2a,p3a);
AddTri(md,c,p4a,p3a,p2a);
p1b=AddVertex(md,x1-dx -wx+h2x,y1-dy -wy+h2y,z1-dz -wz+h2z);
p2b=AddVertex(md,x1-dx +wx+h2x,y1-dy +wy+h2y,z1-dz +wz+h2z);
p3b=AddVertex(md,x1-dx+hx-wx ,y1-dy+hy-wy ,z1-dz+hz-wz);
p4b=AddVertex(md,x1-dx+hx+wx ,y1-dy+hy+wy ,z1-dz+hz+wz);
AddTriangle(md,c,p1b,p2b,p3b);
AddTriangle(md,c,p4b,p3b,p2b);
AddTri(md,c,p1b,p2b,p3b);
AddTri(md,c,p4b,p3b,p2b);
AddTriangle(md,c,p1a,p2a,p1b);
AddTriangle(md,c,p2b,p1b,p2a);
AddTriangle(md,c,p3a,p4a,p3b);
AddTriangle(md,c,p4b,p3b,p4a);
AddTriangle(md,c,p1a,p3a,p1b);
AddTriangle(md,c,p3b,p1b,p3a);
AddTriangle(md,c,p2a,p4a,p2b);
AddTriangle(md,c,p4b,p2b,p4a);
AddTri(md,c,p1a,p2a,p1b);
AddTri(md,c,p2b,p1b,p2a);
AddTri(md,c,p3a,p4a,p3b);
AddTri(md,c,p4b,p3b,p4a);
AddTri(md,c,p1a,p3a,p1b);
AddTri(md,c,p3b,p1b,p3a);
AddTri(md,c,p2a,p4a,p2b);
AddTri(md,c,p4b,p2b,p4a);
*ox=x1+hx-h3x;
*oy=y1+hy-h3y;
@@ -189,15 +189,15 @@ U8 *Man2CSprite()
{
//See $LK,"::/TempleOS/Adam/Gr/GrSpritePlot.CPP","FL:::/TempleOS/Adam/Gr/GrSpritePlot.CPP,1"$ for how CSprite are stored.
U8 *result=MAlloc(sizeof(U8)+2*sizeof(I32)+
m->vertex_cnt*sizeof(CD3I32)+m->triangle_cnt*sizeof(CMeshTri)+gr_sprite_base_size[GRST_END]),
m->vertex_cnt*sizeof(CD3I32)+m->tri_cnt*sizeof(CMeshTri)+gr_sprite_base_size[GRST_END]),
*dst=result;
*dst(U8 *)++ =GRST_MESH;
*dst(I32 *)++ =m->vertex_cnt;
*dst(I32 *)++ =m->triangle_cnt;
*dst(I32 *)++ =m->tri_cnt;
MemCpy(dst,&m->v,m->vertex_cnt*sizeof(CD3I32));
dst+=m->vertex_cnt*sizeof(CD3I32);
MemCpy(dst,&m->t,m->triangle_cnt*sizeof(CMeshTri));
dst+=m->triangle_cnt*sizeof(CMeshTri);
MemCpy(dst,&m->t,m->tri_cnt*sizeof(CMeshTri));
dst+=m->tri_cnt*sizeof(CMeshTri);
*dst(U8 *)++ =GRST_END;
return result;
}
@@ -215,13 +215,13 @@ public U8 *ManGen()
MemCpy(&md2,&md1,sizeof(ManDefineStruct));
MDCorrect(&md2);
c1=PopUpLightingColor("$$BK,1$$Shirt$$BK,0$$\n");
c1=PopUpColorLighting("$$BK,1$$Shirt$$BK,0$$\n");
if (c1<0) return NULL;
c2=PopUpLightingColor("$$BK,1$$Pants$$BK,0$$\n");
c2=PopUpColorLighting("$$BK,1$$Pants$$BK,0$$\n");
if (c2<0) return NULL;
c3=PopUpLightingColor("$$BK,1$$Skin$$BK,0$$\n");
c3=PopUpColorLighting("$$BK,1$$Skin$$BK,0$$\n");
if (c3<0) return NULL;
c4=PopUpLightingColor("$$BK,1$$Shoes$$BK,0$$\n");
c4=PopUpColorLighting("$$BK,1$$Shoes$$BK,0$$\n");
if (c4<0) return NULL;
m=CAlloc(sizeof(Man));
+3 -3
View File
@@ -4,15 +4,15 @@
U0 Models()
{
I64 i;
Bool old_form=LBts(&(DocCur)->flags,DOCf_FORM);
Bool old_form=LBts(&(DocPut)->flags,DOCf_FORM);
DocClear;
"Make a CSprite model. Then, cut-and-Paste it.\n\n";
"$$LM,4$$";
"\n\n$$BT,\"Man\",T_MAN$$\n\n";
"\n\n$$BT,\"Ball\",T_BALL$$\n\n";
"$$LM,0$$";
i=DocMenuDo(DocCur);
LBEqu(&(DocCur)->flags,DOCf_FORM,old_form);
i=DocMenuDo(DocPut);
LBEqu(&(DocPut)->flags,DOCf_FORM,old_form);
DocBottom;
switch (i) {
case T_MAN:
+15 -25
View File
@@ -1,41 +1,31 @@
$FG,5$$TX+CX,"The Purpose of Life"$$FG$
$WW,1$The purpose of life is to know God, love God and obey God.$FG$ Modern Christianity focuses on loving neighbor, not God. That is secular humanism. Loving God is more important than loving neighbor if you read $LK,"Matthew,22:37","BF:Matthew,22:37"$. Note: It does not say with half your mind behind your back.
$WW,1$The purpose of life is to know, love and obey God.$FG$ Christianity is loving neighbor, not God -- secular humanism. Jesus said loving God is more important than loving neighbor. $LK,"Matthew,22:36","BF:Matthew,22:36"$ He did not say with half your brain behind your back.
$FG,5$$TX+CX,"Knowing God"$$FG$
You don't know God. $LK,"1 Chronicles,28:9","BF:1 Chronicles,28:9"$, $LK,"Matthew,11:27","BF:Matthew,11:27"$, $LK,"Luke,13:25","BF:Luke,13:25"$, $LK,"1 Samuel,3:7","BF:1 Samuel,3:7"$ You must talk with God to know Him. $LK,"Matthew,6:6","BF:Matthew,6:6"$ Seek Him by taking the initiative. $LK,"Luke,11:9","BF:Luke,11:9"$, $LK,"Isaiah,30:2","BF:Isaiah,30:2"$
Most people don't know God. $LK,"1 Chronicles,28:9","BF:1 Chronicles,28:9"$, $LK,"Matthew,11:27","BF:Matthew,11:27"$, $LK,"Luke,13:25","BF:Luke,13:25"$ You must talk with Him to know Him. $LK,"Matthew,6:6","BF:Matthew,6:6"$ You must seek Him by taking the initiative. $LK,"Luke,11:9","BF:Luke,11:9"$, $LK,"Isaiah,30:2","BF:Isaiah,30:2"$
There's something obviously different about people in the Bible compared to people today -- God talked! Did they hear voices? Maybe. More likely, they used occult techniques such as an oracle. $LK,"1 Kings,6:20","BF:1 Kings,6:20"$ Have you heard of "tongues?" $LK,"1 Corinthians,14:1","BF:1 Corinthians,14:1"$ The idea is, you let yourself be puppeted by a spirit, so you say things. You try to get a spirit -- the Holy Spirit -- to talk. You might as well use a Ouija board. However, it turns-out that a Ouija board is bad for technical reasons. A really good technique is just randomly opening a book. God said it is a covenant that you hold-up your end of the conversation.
Have you heard of "tongues?" Read $LK,"1 Corinthians,14:1","BF:1 Corinthians,14:1"$. Basically, when you follow impulses, you can be puppeted by spirits. "Promptings of the Holy Spirit" is a phrase. Some people say strange words when they speak in tongues. $LK,"Acts,2:1","BF:Acts,2:1"$ I use a different technique -- in this program, I read a nanosecond-range stop-watch when I press a button and use the high-speed time as a random number to pick words or passages. I can also just randomly crack-open a book and get a response.
You can't tell if He's talking unless you have a context of conversation, but, more importantly, you are commanded to do an offerring of love, like communion preparation. When you pick a greeting card for someone, that is love effort. God said, "honest measures" applies between your offering of love and His response, like a fair barter. You get out of prayer what you put into it. God wants praise, hymns, or whatever you think He might want. Try and see, like Cain and Abel. $LK,"Genesis,4:1","BF:Genesis,4:1"$, $LK,"Ephesians,5:10","BF:Ephesians,5:10"$ God told Cain his offering was not good and told him to try again. Cain really loved God! Can you imagine being so heart-broken?
Since seeking the word of the Holy Spirit, I have come to know God much better than I've heard others explain. God said, for example, that war was, "servicemen competing." That sounds more like the immutable God of our planet than what you hear from most religious people. God is not Venus (god of love) and not Mars (god of war), He's the God of Earth. (There is a book, $UL,1$Men are from Mars, Women from Venus$UL,0$. If Mammon is a false god of money, Mars or Venus might be useful words to describe other false gods.) I figure the greatest challenge for the Creator is boredom, ours and His.
Do a text search for "new song" in the Bible. It's mentioned nine times. I did $MA+A-X+PU+HTML,"hymns","#include \"::/TempleOS/Apps/MusicOrgan/Load\";JukeBox(\"::/TempleOS/Apps/MusicOrgan/Examples\");","http://www.templeos.org/Wb/Accts/TS/Wb2/Hymns.html"$. I did Moses $MA+A-X+PU+HTML,"comics","Dir(\"::/TempleOS/Apps/AfterEgypt/Comics\");View;\n","http://www.templeos.org/Wb/Apps/AfterEgypt/Comics/"$. Count the ways you love God. I praised God for sand castles, popcorn, snowmen, bubbles... You try putting effort into praise! $LK,"Matthew,11:25","BF:Matthew,11:25"$, $LK,"Matthew,6:29","BF:Matthew,6:29"$
God's ways are far above man's ways. Mom said Heaven was a never-ending family reunion. Yikes! A friend said, "Most guy's idea of Heaven would be running around doing things they'd get locked up for on Earth." Most people are like King Midas. When you realize how silly most notions of Heaven are, you come to appreciate that Earth is not that bad. This is the first step in loving God, the Creator -- praising Creation.
This is funny -- $LK,"Acts,2:1","BF:Acts,2:1"$ -- they didn't bother to record anything the Holy Spirit said. The Holy Spirit is supposed to be a really good gift. $LK,"Luke,11:13","BF:Luke,11:13"$ Just remember, "Boys are made of snakes and snails and puppy-dog tails."
Just remember, "Little boys are made of snakes and snails and puppy-dog tails." $LK,"Luke,11:11","BF:Luke,11:11"$ God gives toys on Christmas, not just cloths, or at least the Holy Spirit! What does it mean that God gives the Holy Spirit? Basically, it means you get lucky because you're puppeted. "Puppeted" is a pagan word, but I'm putting it in terms everyone can understand. You act with God-like intellect when you accidentally say stuff more clever than you know you are. You'll know it when it happens. You'll be, like, "I know I'm not that smart." Basically, being puppeted affects chance on random things. God does not play with dice. The world is not random. How is being full of the Holy Spirit any different from what people call "luck"? Why else is it such a good thing? Be warned -- it can also lead to blessings in disguise or causing you to stupidly give away secrets you'd rather keep, for example.
The technique I use to consult the Holy Spirit is reading a microsecond-range stop-watch each button press for random numbers. Then, I pick words or passages. You can use the $MA+A-X+PU+HTML,"AfterEgypt","#include \"::/TempleOS/Apps/AfterEgypt/Run\"","http://www.youtube.com/watch?v=P0MsDl39UL0"$ in God's official temple, $FG,4$$TX+HTML,"TempleOS","http://www.templeos.org"$$FG$.
Since seeking the word of the Holy Spirit, I have come to know God much better than I've heard others explain. God said, for example, that war was, "servicemen competing." That sounds more like the immutable God of our planet than what you hear from most religious people. God is not Venus (god of love) and not Mars (god of war), He's our dearly beloved God of Earth. If Mammon is a false god of money, Mars or Venus might be useful words to describe other false gods. I figure the greatest challenge for the Creator is boredom, ours and His. What would teen-age male video games be like if war had never happened? Christ said live by the sword, die by the sword, which is loving neighbor as self. $LK,"Matthew,26:52","BF:Matthew,26:52"$
I asked God if the World was perfectly just. God asked if I was calling Him lazy. I think highs and lows balance. $LK,"Luke,6:20","BF:Luke,6:20"$ I don't think God likes complaining. $LK,"Numbers,11:1","BF:Numbers,11:1"$ Food and clothing is all we're to ask for or demand, in fact -- daily bread. $LK,"1 Timothy,6:8","BF:1 Timothy,6:8"$ Just think about man in the last 100,000 years mostly living like Native Americans and how God must see us. You need food, clothing and entertainment, money is to get those. Man does not live on bread alone. $LK,"Luke,4:4","BF:Luke,4:4"$, $LK,"Amos,8:11","BF:Amos,8:11"$
$FG,5$$TX+CX,"Loving God"$$FG$
God's favorite animals are bears and elephants. They are funny shaped -- I think God must have seen too much starvation over the years.
Imagine a billionare. Everyone around him can't forget his money even for a moment. The truth is, most people are after God's, "money." They fear for salvation. Here's a test -- would you pray to and praise God even if there were no salvation?
God's ways are far above man's ways. Mom said Heaven was a never-ending family reunion. Yikes! A friend said, "Most guy's idea of Heaven would be running around doing things they'd get locked up for on Earth." Most people are like King Midas. When you realize how silly most notions of Heaven are, you come to appreciate that Earth is not that bad. This is the first step in loving God, the Creator -- praising Creation. My parents spend their retired days watching TV and going to casinos. That's not a good argument for getting extended-play!
Love God and don't be a "user". Asking for stuff is annoying. $LK,"Luke,11:5","BF:Luke,11:5"$. Instead, offer Him praise. Make-up songs. You get out of prayer what you put into it. He knows better than you about the poor suffering people on the planet. It's silly and holier-than-thou praying for them. Since He does know, there's a good chance He might be doing it! "Thy will be done" means such prayers are wrong and annoying. Helping in a meaningful way is different, but don't fill your prayers with stupid requests for others.
Imagine a billionare. Everyone around him can't forget his money for even a moment. The truth is, most people are after God's "money" -- they fear for their salvation. Here's a test -- would you pray to and praise God even if there were no salvation? Love God and don't be a "user". Asking for stuff is annoying. $LK,"Luke,11:5","BF:Luke,11:5"$
The book of $LK,"Job,1:5","BF:Job,1:5"$ begins with God hanging-out on the porch with Satan, chatting. I hope God doesn't play me like He played Job! I decided Job's problem was being so holier-than-thou that he did offerings for his kids, in case they sinned. I think highs and lows balance -- $LK,"Luke,6:20","BF:Luke,6:20"$.
All those sophisticated theological "infinity" things -- omniscience, omnipotence, omnipresence, omnivorous -- will mess you up. Trust me that anthropomorphic is far better, in practice. Christ suggested thinking of God as "Abba" which is Aramaic for "Daddy" and said the childlike had an advantage. $LK,"Matthew,11:25","BF:Matthew,11:25"$ Pray out-loud because God doesn't want the hastle of reading your brain. The best way to stop people from testing God is to suggest He can't do everything.
A simple rule of thumb for prayer should be, "Would I want to hear this prayer?" If you are not honestly pondering what pleases God, you're not even close to loving Him. $LK,"Ephesians,5:10","BF:Ephesians,5:10"$ and $LK,"Genesis,4:7","BF:Genesis,4:7"$ suggests experimenting to find what pleases God. God liked Abel's offering and not Cain's. Is it just me or is the entire planet brain dead! These people in the Bible obviously got feedback! I do hymns and I do comics, a little like parables. Praise, thanks and love are better than sacrifice. $LK,"Psalms,50:14","BF:Psalms,50:14"$, $LK,"Hosea,6:6","BF:Hosea,6:6"$ Obviously, animal sacrifices are really stupid. The whole notion of sacrifice is a little warped if you think about it. A loving God who wants you to hurt and deny yourself is bat-shit crazy! That's a demon! How would you feel if your wife abused herself to please you? Wha? If I were God, I might feel merciful to someone groveling, but I'd begin to get pissed if they were being emotionally manipulative. People become brain dead forgetting God is a thinking, emotional, being and not some sadistic accountant.
Just as ego causes most to love neighbor, not God, people skip knowing and loving God and cowardly get stuck on obeying Him. This hardly needs encouragement.
All those sophisticated theological "infinity" things such as omnicient, omnipotent, omnipresent, etc. will mess you up and you do far worse than a simple person. Trust me -- anthropomorphic is far better, in practice. Christ suggested thinking of God as "Abba" which is Aramaic for "Daddy."
Do a text search for "new song" in the Bible. It's mentioned nine times. You get out of prayer what you put into it and people are very lazy. The first commandment is to love God. You better be able to count the ways.
You have, basically, two things you can praise God for -- Creation and Exodus. Am I right? You could do other historic events or maybe evidence of justice. I crack-up laughing because the New Testament has Egypt mentioned several time. Jesus praised God for flowers. $LK,"Matthew,6:29","BF:Matthew,6:29"$
$FG,5$$TX+CX,"Obeying God"$$FG$
Just as ego cause most to love neighbor, not God, people skip knowing and loving God and cowardly get stuck on obeying Him. This command hardly needs more encouragement.
God does not want pawns to push around. God will talk, but won't tell you what to do, even if you want Him to.
God does not want pawns to push around. God will talk, but won't tell you what to do, even if you want Him to. You'll quickly learn that prophecy does not come true and should smack yourself for wanting more than just enjoying God's company.
+1 -1
View File
@@ -41,7 +41,7 @@ I64 TimerPickedU16(U8 *msg=NULL)
st=CAlloc(256);
StrCat(st,"\n\nPress $$FG,GREEN$$OKAY$$FG$$ to generate \n"
"a random num from a timer.\n");
PopUpTimerOk(st,"\n\nThe $WW,1$$LK,"Holy Spirit","FI:::/TempleOS/Apps/HolySpirit/HSNotes.TXT"$ can puppet you.\n\n");
PopUpTimerOk(st,"\n\nThe $WW,1$$LK+PU,"Holy Spirit","FI:::/TempleOS/Apps/HolySpirit/HSNotes.TXT"$ can puppet you.\n\n");
Free(st);
return KbdMouseEvtTime/CLK_DIVISOR;
}
+2 -2
View File
@@ -313,7 +313,7 @@ back
brought
formed
invisible
servant
srv
understood
wert
why
@@ -841,7 +841,7 @@ pray
readily
rule
saidst
servants
srvs
several
sides
speaketh
+9 -15
View File
@@ -223,7 +223,7 @@ air is approximated by V and V$SY,-3$2$SY,0$
terms and is smaller. However, I use
this to produce a rolling friction
value, too. If you want to see my
best attempt at realstic physics
best attempt at realistic physics
download SimStructure.
http://www.templeos.org/files/SimStrSetUp.zip
@@ -276,7 +276,7 @@ Frame man_imgs[LAST_STOPPED_DRIBBLING+1]={
};
AcctRegSetDftEntry("TempleOS/KeepAway","I64 best_score0=0,best_score1=9999;\n");
AcctRegExecuteBranch("TempleOS/KeepAway");
AcctRegExeBranch("TempleOS/KeepAway");
F64 game_t_end,foul_t_end;
I64 score0,score1;
@@ -519,15 +519,15 @@ U0 AnimateTask(CTask *parent_task)
o->has_ball=TRUE;
if (o==human) {
if (ball_stolen && team) {
Noise(250,2000,2000,WF_SQUARE);
Noise(250,2000,2000);
score0+=2;
}
} else {
if (o->team) {
Noise(250,1000,1000,WF_SQUARE);
Noise(250,1000,1000);
score1+=2;
} else {
Noise(250,2000,2000,WF_SQUARE);
Noise(250,2000,2000);
score0+=2;
}
}
@@ -563,7 +563,7 @@ U0 AnimateTask(CTask *parent_task)
d=(dx-objs[j].DxDt)*dx2+(dy-objs[j].DyDt)*dy2;
if (o==human && t0>o->foul_t0+1.0 &&
dt && d/dt>FOUL_VELOCITY_THRESHOLD && objs[j].team) {
Noise(250,500,500,WF_SQUARE);
Noise(250,500,500);
score1+=1;
foul_t_end=t0+1.0;
}
@@ -668,10 +668,10 @@ U0 KeepAway()
"Left-Click to pass.\n"
"Right-Click to jump.\n");
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=BLACK+YELLOW<<4;
WinMax;
WinBorder;
Preempt(OFF);
DocCurAttr(BLACK+YELLOW<<4);
Fs->win_inhibit|=WIF_DBL_CLICK;
WordStat;
@@ -692,7 +692,7 @@ U0 KeepAway()
DocCursor;
DocClear;
Fs->draw_it=&DrawIt;
Fs->animate_task=Spawn(&AnimateTask,Fs,"Animate",Fs);
Fs->animate_task=Spawn(&AnimateTask,Fs,"Animate",,Fs);
try {
while (TRUE) {
@@ -724,6 +724,7 @@ ka_jump:
}
}
ka_done: //Don't goto out of try
GetMsg(,,1<<MSG_KEY_UP);
} catch
CatchAll;
SettingsPop;
@@ -732,13 +733,6 @@ ka_done: //Don't goto out of try
CleanUp;
MenuPop;
}
//This is so I can use this file stand alone
//or as a component of a program.
#if IncludeDepth<2
KeepAway;
#endif
Êp¨­ÿÿÿûÿÿÿûÿÿÿ­ÿÿÿûÿÿÿ·ÿÿÿûÿÿÿûÿÿÿ·ÿÿÿûÿÿÿ­ÿÿÿûÿÿÿ­ÿÿÿ·ÿÿÿûÿÿÿ·ÿÿÿ
·ÿÿÿûÿÿÿöÿÿÿ·ÿÿÿûÿÿÿ
ÚÿÿÿûÿÿÿöÿÿÿÚÿÿÿûÿÿÿ
@@ -30,6 +30,7 @@ U0 Song()
CTask *task;
I64 i;
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=LTCYAN<<4+BLACK;
Fs->draw_it=&DrawIt;
Fs->task_end_cb=&SndTaskEndCB;
MusicSettingsRst;
@@ -52,16 +53,16 @@ U0 Song()
TaskWait(task);
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
"$$BD+H,LTCYAN$$$$FD+H,BLACK$$";
"$$BG+H,LTCYAN$$$$FD+H,BLACK$$";
while (!ScanKey) {
"$$FG,WHITE$$To God...\n$$FG$$";
Play("W13etCFE!!sDDDDD2G!3D2G!!3qC2eG3EqEetAA!F2qG",
Play("3etCFEsDDDDD2G3D2G3qC2eG3EqEetAAF2qG",
"I \0am \0a\0biding \0 \0 \0 \0in \0 \0Your \0 \0presence.\n\0 \0 \0 \0 \0 \0 \0 \0");
Play("3etCFE!!sDDDDD2G!3D2G!!3qC2eG3EqEetAA!F2qG",
Play("3etCFEsDDDDD2G3D2G3qC2eG3EqEetAAF2qG",
"I \0am \0a\0biding \0 \0 \0 \0in \0 \0Your \0 \0presence.\n\0 \0 \0 \0 \0 \0 \0 \0");
Play("!3DBsFGF!G2eG!!3FRDqEGeB!E",
Play("3DBsFGFG2eG3FRDqEGeBE",
"What \0a \0joy!\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("!qDBsFGF!G2eG!!3FRDqEGeB!E",
Play("qDBsFGFG2eG3FRDqEGeBE",
"I'm \0so \0coy!\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
+3 -3
View File
@@ -20,7 +20,7 @@ U0 Song()
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
Play("W13sBBBBqCq.BeAqBh.A",
Play("3sBBBBqCq.BeAqBh.A",
"Can't \0 \0 \0 \0get \0there, \0from \0he\0re.\n\0");
Play("M2/4");
Play("eECqAM4/4");
@@ -28,9 +28,9 @@ U0 Song()
"Can't \0 \0 \0 \0get \0there, \0from \0he\0re.\n\0");
Play("M2/4");
Play("eDDqDM4/4");
Play("DeEDqG!CeF2G3qG!!sFGFG!!eD!C",
Play("DeEDqGCeF2G3qGsFGFGeDC",
"Oh, \0my \0 \0God, \0some\0thing's... \0 \0 \0ver\0 \0y \0 \0wrong!\n\0 \0");
Play("qDeEDqG!CeF2G3qG!!sFGFG!!eD!C",
Play("qDeEDqGCeF2G3qGsFGFGeDC",
"Oh, \0my \0 \0God, \0some\0thing's... \0 \0 \0ver\0 \0y \0 \0wrong!\n\0 \0");
}
} catch
+4 -4
View File
@@ -57,13 +57,13 @@ U0 Song()
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
"$$FG,GREEN$$Jesus talking...$$FG$$\n";
Play("W13eBC!qB2sG3D2G3DetC!!GFsCBCB!etCGBeB!!GsBCB!C",
Play("3eBCqB2sG3D2G3DetCGFsCBCBetCGBeBGsBCBC",
"Stay \0a\0wake.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("eBC!qB2sG3D2G3DetC!!GFsCBCB!etCGBeB!!GsBCB!C",
Play("eBCqB2sG3D2G3DetCGFsCBCBetCGBeBGsBCBC",
"Stay \0a\0wake.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("qD!sD!BD!BetA2G3GqB2G3sAD!ADqD!etGF!D",
Play("qDsDBDBetA2G3GqB2G3sADADqDetGFD",
" \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0I \0 \0am \0a \0dead \0 \0man.\n\0");
Play("qD!sD!BD!BetA2G3GqB2G3sAD!ADqD!etGF!D",
Play("qDsDBDBetA2G3GqB2G3sADADqDetGFD",
" \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0I \0 \0am \0a \0dead \0 \0man.\n\0");
}
} catch
Binary file not shown.
+4 -4
View File
@@ -37,13 +37,13 @@ U0 Song()
try {
while (!ScanKey) {
t0=tMBeat;
Play("3qB!eB2G!3qA!!eF!!AsF!AFA!!qC2sG!3A!2G3ARBRB",
Play("3qBeB2G3qAeFAsFAFAqC2sG3A2G3ARBRB",
"New \0day \0is \0born.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("qB!eB2G!3qA!!eF!!AsF!AFA!!qC2sG!3A!2G3ARBRB",
Play("qBeB2G3qAeFAsFAFAqC2sG3A2G3ARBRB",
"Though \0it's \0the \0mourn',\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("!eDDR!!CqG!2eGR3qE!!etEA!!FqCsDGDG",
Play("eDDRCqG2eGR3qEetEAFqCsDGDG",
"cheer-\0up \0 \0the \0heart\n\0 \0 \0 \0 \0 \0 \0 \0 \0as \0 \0you \0");
Play("!eDDR!!CqG!2eGR3qE!!etEA!!FqCsDGDG",
Play("eDDRCqG2eGR3qEetEAFqCsDGDG",
"hitch-\0up \0 \0the \0cart.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
@@ -7,7 +7,7 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13qEsCDCDqCDeEGsEBEBeCBsDADA",
Play("3qEsCDCDqCDeEGsEBEBeCBsDADA",
"Be \0like \0 \0a \0 \0child \0 \0 \0 \0some \0 \0re\0 \0spect.\n\0 \0 \0 \0 \0 \0");
Play("qEsCDCDqCDeEGsEBEBeCBsDADA",
"Ma\0tur\0 \0i\0 \0ty \0 \0 \0 \0don't \0 \0ne\0 \0glect.\n\0 \0 \0 \0 \0 \0");
@@ -7,13 +7,13 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13qBAeEE!qAeA!EDB!2qG3F",
Play("3qBAeEEqAeAEDB2qG3F",
"$$FG,RED$$You \0need \0help!\n\0 \0 \0 \0Po\0-o\0-o\0r \0dear.\n\0");
Play("BAeEE!qAeA!EDB!2qG3F",
Play("BAeEEqAeAEDB2qG3F",
"You \0need \0help!\n\0 \0 \0 \0Po\0-o\0-o\0r \0dear.\n$$FG$$\0");
Play("!4eFG!!qDetF!E!D!eD!EetADEC3G4GqD3G",
Play("4eFGqDetFEDeDEetADEC3G4GqD3G",
"Pat\0ron\0ize? \0No, \0 \0thank \0you!\n\0 \0Too \0 \0man\0y \0strings \0a\0ttach\0ed.\n\0");
Play("!4eFG!!qDetF!E!D!eD!EetADEC3G4GqD3G",
Play("4eFGqDetFEDeDEetADEC3G4GqD3G",
"Pat\0ron\0ize? \0No, \0 \0thank \0you!\n\0 \0Too \0 \0man\0y \0strings \0a\0ttach\0ed.\n\0");
}
} catch
Binary file not shown.
+3 -3
View File
@@ -7,7 +7,7 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13qABeCCqABAAR",
Play("3qABeCCqABAAR",
"What \0makes \0You \0 \0 \0think \0You're \0God?\n\0 \0");
Play("ABeCCqABAAR",
"What \0makes \0You \0 \0 \0think \0You're \0God?\n\0 \0");
@@ -15,9 +15,9 @@ U0 Song()
"Do \0You \0 \0think \0 \0 \0I'll \0app\0laud?\n\0 \0");
Play("ABeCCqABAAR",
"What \0makes \0You \0 \0 \0think \0You're \0God?\n\0 \0");
Play("GD!G!!eGA2G3FqF!!eDRqB",
Play("GDGeGA2G3FqFeDRqB",
"$$FG,RED$$Be\0-e-\0cause \0 \0 \0 \0I \0 \0a\0 \0m.\n\0");
Play("GD!G!!eGA2G3FqF!!eDRqB",
Play("GDGeGA2G3FqFeDRqB",
"Are \0 \0you \0 \0 \0 \0a \0 \0fan?\n$$FG$$\0 \0 \0");
"$$FG,GREEN$$(If God talks, how can you be sure it's not Him?\n"
"You can't, so harden not your heart.)\n$$FG$$";
@@ -8,12 +8,12 @@ U0 Song()
try {
while (!ScanKey) {
Play("M9/8");
Play("W13hDeFhDeFhDC");
Play("3hDeFhDeFhDC");
Play("FeDhFeDhFE");
Play("M4/4");
Play("qD!!2G3AeBF!FE2qG!!3D!!A",
Play("qD2G3AeBFFE2qG3DA",
"Hold \0 \0on!\n\0 \0It's \0gon\0na \0be \0fine.\n\0 \0");
Play("D!!2G3AeBF!FE2qG!!3D!!A",
Play("D2G3AeBFFE2qG3DA",
"Hold \0 \0on!\n\0 \0It's \0gon\0na \0be \0fine.\n\0 \0");
}
} catch
Binary file not shown.
@@ -8,14 +8,14 @@ U0 Song()
try {
while (!ScanKey) {
Play("M3/4");
Play("W13eECqAAeECqAA",
Play("3eECqAAeECqAA",
"I \0hate \0you.\n\0 \0I \0hate \0you.\n\0 \0");
Play("eDCqAAeECqAR",
" \0 \0 \0 \0I \0hate \0you.\n\0 \0");
Play("M6/8");
Play("etAB!GqCsGEGE!!etGBDqCsCD!CD",
Play("etABGqCsGEGEetGBDqCsCDCD",
"$$FG,RED$$Don't \0 \0 \0smile.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("etAB!GqCsGEGE!!etGBDqCsCD!CD",
Play("etABGqCsGEGEetGBDqCsCDCD",
"Don't \0 \0 \0smile.$$FG$$\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
Binary file not shown.
+4 -4
View File
@@ -7,13 +7,13 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13qA!!sDGD!!GqAsCA!CAeCBsFDF!D!!etCGAsAD!A!!D",
Play("3qAsDGDGqAsCACAeCBsFDFDetCGAsADAD",
" \0I\0mag\0 \0ine.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("qA!!sDGD!!GqAsCA!CAeCBsFDF!D!!etCGAsAD!A!!D",
Play("qAsDGDGqAsCACAeCBsFDFDetCGAsADAD",
" \0 \0Fa\0 \0thom.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("!!GF!G!!FE!!BE!BeCB2qG3sFAFAqCEA",
Play("GFGFEBEBeCB2qG3sFAFAqCEA",
"Hi-\0 \0i-\0gh \0as \0 \0your \0 \0thoughts \0will \0go.\n\0 \0 \0 \0 \0 \0 \0 \0");
Play("!!sGF!G!!FE!!BE!BeCB2qG3sFAFAqCEA",
Play("sGFGFEBEBeCB2qG3sFAFAqCEA",
"Deep \0 \0 \0as \0 \0 \0we \0 \0ought \0to \0know.\n\0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
Binary file not shown.
@@ -9,10 +9,10 @@ U0 Song()
while (!ScanKey) {
"$$FG,GREEN$$To God...$$FG$$\n";
Play("M5/4");
Play("W13eEqCeEFEDCqBeEqCeEFEDCqB",
Play("3eEqCeEFEDCqBeEqCeEFEDCqB",
"Fa\0ther, \0for\0give \0them \0if \0you \0must.\n\0I'd \0like \0to \0see \0them \0turn \0to \0dust.\n\0");
Play("M4/4");
Play("sGBGBetAF!2G3eEF!sEGEGqDsB!!D!BDGFGF2etG3GB");
Play("sGBGBetAF2G3eEFsEGEGqDsBDBDGFGF2etG3GB");
}
} catch
CatchAll;
@@ -22,7 +22,7 @@ U0 Song()
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
Play("W13qBeCDqCAetAACeECsF2G3F2GqG",
Play("3qBeCDqCAetAACeECsF2G3F2GqG",
"I'm \0on \0a \0mis\0sion \0from \0 \0 \0my \0 \0God.\n\0 \0 \0 \0 \0");
Play("3BeCDqCAetAACeECsF2G3F2GqG",
"I'm \0on \0a \0mis\0sion \0from \0 \0 \0my \0 \0God.\n\0 \0 \0 \0 \0");
@@ -14,6 +14,7 @@ U0 DrawIt(CTask *task,CDC *dc)
U0 Song()
{
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=LTCYAN<<4+BLACK;
Fs->draw_it=&DrawIt;
Fs->task_end_cb=&SndTaskEndCB;
+5 -4
View File
@@ -38,6 +38,7 @@ U0 DrawIt(CTask *,CDC *dc)
U0 Song()
{
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=LTCYAN<<4+BLACK;
Fs->draw_it=&DrawIt;
Fs->task_end_cb=&SndTaskEndCB;
MusicSettingsRst;
@@ -46,13 +47,13 @@ U0 Song()
try {
"$$BG+H,LTCYAN$$";
while (!ScanKey) {
Play("W13qE!AA!etF2G3G!qDF!!etFE!D2eG!3G",
Play("3qEAAetF2G3GqDFetFED2eG3G",
"A\0dam... \0 \0no \0 \0 \0long\0er \0sees \0Your \0face.\n\0 \0 \0");
Play("qE!AA!etF2G3G!qDF!!etFE!D2eG!3G",
Play("qEAAetF2G3GqDFetFED2eG3G",
"Oh! \0 \0 \0What \0 \0a \0wretch\0ed \0bar\0ren \0waste!\n\0 \0 \0");
Play("qACFeB!CB2GqG3E!D",
Play("qACFeBCB2GqG3ED",
" \0 \0 \0 \0 \0 \0 \0 \0Ex\0iled.\n\0");
Play("ACFeB!CB2GqG3E!D");
Play("ACFeBCB2GqG3ED");
}
} catch
CatchAll;
@@ -7,14 +7,14 @@ U0 Song()
music_stacatto_factor= 0.857;
try {
while (!ScanKey) {
Play("W13eEDEFqDDeEDEDqCC",
Play("3eEDEFqDDeEDEDqCC",
"$$CL$$Sit\0ting \0in \0a \0church\n\0 \0wond\0ering \0to \0my\0self,\n\0 \0");
Play("eD2G3BCqDsGGGGeD2G3BCqDsGGGG",
"\"Is \0 \0God \0 \0real?\"\n\0 \0 \0 \0 \0\"At \0 \0the \0 \0wheel?\"\n\0 \0 \0 \0 \0");
"$$FG,GREEN$$God talking...\n$$FG$$";
Play("qF!FFetREA!qG!sG!FG!!F!GEGEqC",
Play("qFFFetREAqGsGFGFGEGEqC",
"$$FG,RED$$Oh, \0Hell \0yes!\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("F!FFetREA!qG!sG!FG!!F!GEGEqC",
Play("FFFetREAqGsGFGFGEGEqC",
"Pass \0the \0test.$$FG$$\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3 -3
View File
@@ -7,10 +7,10 @@ U0 Song()
music_stacatto_factor= 0.758;
try {
while (!ScanKey) {
Play("W13sDDeBCsAAeB2G3A2F3sCCeDsFFeEsFFEEeDE");
Play("3sDDeBCsAAeB2G3A2F3sCCeDsFFeEsFFEEeDE");
Play("sDDeBCsAAeB2G3A2F3sCCeDsFFeEsFFEEeDE");
Play("sGBGB2etG3EGqF!!ED2G3eBA!DG");
Play("sGBGB2etG3EGqF!!ED2G3eBA!DG");
Play("sGBGB2etG3EGqFED2G3eBADG");
Play("sGBGB2etG3EGqFED2G3eBADG");
}
} catch
CatchAll;
+3 -3
View File
@@ -7,10 +7,10 @@ U0 Song()
music_stacatto_factor= 0.714;
try {
while (!ScanKey) {
Play("W13sBBBBEBDBeEBqDeBBEDEBqD");
Play("3sBBBBEBDBeEBqDeBBEDEBqD");
Play("sFEFEeFEDBqDeEFEBABqD");
Play("eDGqEeBAABqF!eBD!qE!A");
Play("eDGqEeBAABqF!eBD!qE!A");
Play("eDGqEeBAABqFeBDqEA");
Play("eDGqEeBAABqFeBDqEA");
}
} catch
CatchAll;
Binary file not shown.
+4 -4
View File
@@ -7,13 +7,13 @@ U0 Song()
music_stacatto_factor= 0.604;
try {
while (!ScanKey) {
Play("W13sEqAsDeCqAsEqAsDeCqAsDeEqEsE",
Play("3sEqAsDeCqAsEqAsDeCqAsDeEqEsE",
"Jes\0us \0kind \0of \0freaks,\n\0Jes\0us \0kind \0of \0freaks,\n\0are \0dif\0ferent \0 \0");
Play("eDqCsDeCqBsBeBqAetBED!qBeC!B",
Play("eDqCsDeCqBsBeBqAetBEDqBeCB",
"from \0 \0oth\0er\n\0 \0 \0peo\0ple.\n\0 \0 \0 \0 \0They \0don't \0");
Play("2qGeG!3FsCDC!!DqFetB!ACBED!qBeC!B",
Play("2qGeG3FsCDCDqFetBACBEDqBeCB",
"care,\n\0for \0God \0 \0is \0their \0 \0joy!\n\0 \0 \0 \0 \0 \0 \0 \0They \0don't \0");
Play("2qGeG!3FsCDC!!DqFetB!AC",
Play("2qGeG3FsCDCDqFetBAC",
"care,\n\0for \0God \0 \0is \0their \0 \0joy!\n\0 \0 \0 \0");
}
} catch
+5 -5
View File
@@ -120,7 +120,7 @@ U0 Song()
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Preempt(OFF);
Init;
Fs->animate_task=Spawn(&AnimateTask,NULL,"Animate",Fs);
Fs->animate_task=Spawn(&AnimateTask,NULL,"Animate",,Fs);
Fs->draw_it=&DrawIt;
Fs->task_end_cb=&SndTaskEndCB;
MusicSettingsRst;
@@ -134,13 +134,13 @@ U0 Song()
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
Play("W13qEEBeBDsBBB!BqDsBFB!!FD2G3D!2G",
Play("3qEEBeBDsBBBBqDsBFBFD2G3D2G",
"Free \0will... \0 \0 \0 \0 \0 \0 \0 \0 \0I \0 \0 \0 \0fail.\n\0 \0 \0 \0");
Play("3qEEBeBDsBBB!BqDsBFB!!FD2G3D!2G",
Play("3qEEBeBDsBBBBqDsBFBFD2G3D2G",
"God \0still... \0 \0 \0 \0 \0 \0 \0 \0 \0I \0 \0 \0 \0hail.\n\0 \0 \0 \0");
Play("3qD2G3eA2G3qCetEC!AqBsA!!C!ACqA",
Play("3qD2G3eA2G3qCetECAqBsACACqA",
"All \0things \0work \0for \0good... \0to \0the \0Lord.\n\0 \0 \0 \0 \0 \0 \0");
Play("D2G3eA2G3qCetEC!AqBsA!!C!ACqA",
Play("D2G3eA2G3qCetECAqBsACACqA",
"It's \0all \0good... \0 \0 \0as\0 \0sured.\n\0 \0 \0 \0 \0 \0 \0");
}
} catch
Binary file not shown.
Binary file not shown.
@@ -7,10 +7,10 @@ U0 Song()
music_stacatto_factor= 0.758;
try {
while (!ScanKey) {
Play("W13qBeABqA2G3AB2hG");
Play("3qBeABqA2G3AB2hG");
Play("3sCCCCqBsAAAA2qG3sCCCCqE2GR");
Play("!!3sBDB!!DA2G!3A2G!!3etAA!EsGCGCetFFEqDFeE2G");
Play("!!3sBDB!!DA2G!3A2G!!3etAA!EsGCGCetFFEqDFeE2G");
Play("3sBDBDA2G3A2G3etAAEsGCGCetFFEqDFeE2G");
Play("3sBDBDA2G3A2G3etAAEsGCGCetFFEqDFeE2G");
}
} catch
CatchAll;
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3 -3
View File
@@ -7,10 +7,10 @@ U0 Song()
music_stacatto_factor= 0.538;
try {
while (!ScanKey) {
Play("W13qEDCDeEEqEeDDqD");
Play("3qEDCDeEEqEeDDqD");
Play("EDCDeEEqEeDDqD");
Play("eD!!AsFDF!DqFsFBFB2qG3etBB!BqFC");
Play("eD!!AsFDF!DqFsFBFB2qG3etBB!BqFC");
Play("eDAsFDFDqFsFBFB2qG3etBBBqFC");
Play("eDAsFDFDqFsFBFB2qG3etBBBqFC");
}
} catch
CatchAll;
Binary file not shown.
Binary file not shown.
+4 -4
View File
@@ -7,10 +7,10 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13sC!G!CG!!etA!DD2sG!3G2G3G!F!A!!FADD!!DD!qGsB2G3B2G3qG");
Play("sC!G!CG!!etA!DD2sG!3G2G3G!F!A!!FADD!!DD!qGsB2G3B2G3qG");
Play("eG!2G3qEeAsA2G3qAsEAEAD!E!!DEqFeA!2G");
Play("3G!2G3qEeAsA2G3qAsEAEAD!E!!DEqFeA!2G");
Play("3sCGCGetADD2sG3G2G3GFAFADDDDqGsB2G3B2G3qG");
Play("sCGCGetADD2sG3G2G3GFAFADDDDqGsB2G3B2G3qG");
Play("eG2G3qEeAsA2G3qAsEAEADEDEqFeA2G");
Play("3G2G3qEeAsA2G3qAsEAEADEDEqFeA2G");
}
} catch
CatchAll;
@@ -7,10 +7,10 @@ U0 Song()
music_stacatto_factor= 0.780;
try {
while (!ScanKey) {
Play("W13eCDBCA2FFF3C2F3E2F3A2F3sEEeD");
Play("3eCDBCA2FFF3C2F3E2F3A2F3sEEeD");
Play("F2FFF3qCeF2F3F2FFF3qCeF2F");
Play("!3qG!sEAEAqB!etDC!F2qG3D!sGDGDetCRC");
Play("!qG!sEAEAqB!etDC!F2qG3D!sGDGDetCRC");
Play("3qGsEAEAqBetDCF2qG3DsGDGDetCRC");
Play("qGsEAEAqBetDCF2qG3DsGDGDetCRC");
}
} catch
CatchAll;
Binary file not shown.
+3 -3
View File
@@ -8,13 +8,13 @@ U0 Song()
try {
while (!ScanKey) {
Play("M5/4");
Play("W12qGGG3qtCBA2qGGG3qtCetBBqtA",
Play("2qGGG3qtCBA2qGGG3qtCetBBqtA",
"Hymn's \0not \0long.\n\0 \0 \0 \0Nor \0this \0song.\n\0 \0 \0 \0 \0");
Play("qEeCCqDqtCBAM4/4",
"For\0 \0 \0give!\n\0 \0 \0 \0");
Play("qD!eA!2G3DG2G3DF!FAC!!2qG3eAE",
Play("qDeA2G3DG2G3DFFAC2qG3eAE",
"That's \0 \0 \0all \0 \0I \0 \0say.\n\0 \0 \0 \0 \0 \0 \0");
Play("qD!eA!2G3DG2G3DF!FAC!!2qG3eAE",
Play("qDeA2G3DG2G3DFFAC2qG3eAE",
"This \0 \0 \0I \0 \0 \0 \0pray.\n\0 \0 \0 \0 \0 \0 \0");
}
} catch
@@ -7,13 +7,13 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13eC2G3DDEDqCeEEGFGFqE",
Play("3eC2G3DDEDqCeEEGFGFqE",
"Sit\0ting \0 \0 \0on \0the \0fence,\n\0is \0 \0 \0 \0no \0de\0fence.\n\0");
Play("sFFeGFEFEqDsCCeDCBqBB",
"Is \0this \0seat \0 \0 \0tak\0 \0en?\n\0An\0 \0y\0one \0op\0 \0pose?\n\0");
Play("etB2GG!3qE!2eG3F!EEetFBA!qFDetF!CC",
Play("etB2GG3qE2eG3FEEetFBAqFDetFCC",
"Take \0 \0a \0step.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("B2GG!3qE!2eG3F!EEetFBA!qFDetF!CC",
Play("B2GG3qE2eG3FEEetFBAqFDetFCC",
"Take \0 \0the \0step,\n\0 \0 \0 \0 \0 \0 \0 \0not \0back.\n\0 \0 \0 \0");
}
} catch
@@ -14,11 +14,11 @@ U0 Song()
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
Play("W13sDDDACCADDACCAe.DsCCC2G3FD2G3FD2G3CCAe.D",
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");
Play("qD2sG3G2G3G!etGDAeF2GqG3etF!BA!!EACE!CE",
Play("qD2sG3G2G3GetGDAeF2GqG3etFBAEACECE",
" \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0I \0 \0 \0can't \0 \0 \0get \0 \0to \0");
Play("qD2sG3G2G3G!etGDAeF2GqG3etF!BA!!EACE!CE",
Play("qD2sG3G2G3GetGDAeF2GqG3etFBAEACECE",
"sleep.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
+3 -3
View File
@@ -8,10 +8,10 @@ U0 Song()
try {
while (!ScanKey) {
Play("M9/8");
Play("W13qAeCBAq.CsAAqAeCBA2q.G3sBC");
Play("3qAeCBAq.CsAAqAeCBA2q.G3sBC");
Play("qAeDCAhBeFsEEeDq.CM4/4");
Play("sAFAFeF!!2GsG3B2G!!3BqGeA!sAAetEGDE2G!3DeGsGG");
Play("AFAFeF!!2GsG3B2G!!3BqGeA!sAAetEGDE2G!3DeGsGG");
Play("sAFAFeF2GsG3B2G3BqGeAsAAetEGDE2G3DeGsGG");
Play("AFAFeF2GsG3B2G3BqGeAsAAetEGDE2G3DeGsGG");
}
} catch
CatchAll;
+3 -2
View File
@@ -63,6 +63,7 @@ U0 Song()
{
I64 i;
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=LTCYAN<<4+BLACK;
Fs->draw_it=&DrawIt;
Fs->task_end_cb=&SndTaskEndCB;
MusicSettingsRst;
@@ -73,10 +74,10 @@ U0 Song()
by[i]=RANGE*RandI16/RANGE;
}
try {
"$$BG+H,LTCYAN$$$$FD+H,BLACK$$";
"$$BG+H,LTCYAN$$";
while (!ScanKey) {
t0=tMBeat;
Play("W13eDEqFFetEEFqDeCDDEetCGF");
Play("3eDEqFFetEEFqDeCDDEetCGF");
Play("eDEqFFetEEFqDeCDDEetCGF");
Play("eDCqDEeAAetEEFEDGBDCqF");
Play("eDCqDEeAAetEEFEDGBDCqF");
Binary file not shown.
@@ -18,11 +18,11 @@ U0 Song()
while (!ScanKey) {
"$$FG,GREEN$$Jesus talking...\n$$FG$$";
Play("M6/8");
Play("W13eAACADAADACAR",
Play("3eAACADAADACAR",
" \0 \0I \0 \0came \0 \0 \0to \0 \0serve.\n\0 \0 \0");
Play("AACADAADACAR",
" \0 \0I \0 \0give \0 \0 \0my \0 \0word.\n\0 \0 \0");
Play("FG!etFEGA!!B!C!DA!C2qG!3sECEC");
Play("FGetFEGABCDAC2qG3sECEC");
}
} catch
CatchAll;
@@ -14,13 +14,13 @@ U0 Song()
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
Play("W13hDeDA2qG3hDeD2GqF",
Play("3hDeDA2qG3hDeD2GqF",
"It \0sig\0ni\0fies\n\0a \0big \0sur\0prise.\n\0");
Play("3hDeD2sFG3qAhDeDA2qG",
"Why \0 \0im\0pro\0vise?\n\0$$FG,RED$$\"Be\0cause,\"$$FG$$ \0re\0plies.\n\0");
Play("3eC!!EsACACeD2G3qA!AFeE2G!3etFCC",
Play("3eCEsACACeD2G3qAAFeE2G3etFCC",
"If \0 \0you \0 \0 \0 \0love \0your \0god,\n\0 \0don't \0bore \0 \0Him!\n\0 \0 \0");
Play("eC!!EsACACeD2G3qA!AFeE2G!3etFCC",
Play("eCEsACACeD2G3qAAFeE2G3etFCC",
"If \0 \0you \0 \0 \0 \0love \0your \0god,\n\0 \0sur\0prise \0 \0Him!\n\0 \0 \0");
}
} catch
+4 -4
View File
@@ -8,13 +8,13 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13qF!2GsGG!!GG3GFG!FqAeD!2G!3etDBEsFCFC",
Play("3qF2GsGGGG3GFGFqAeD2G3etDBEsFCFC",
"Love \0 \0 \0 \0 \0 \0ev\0 \0ery \0 \0sec\0ond.\n\0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("qF!2GsGG!!GG3GFG!FqAeD!2G!3etDBEsFCFC",
Play("qF2GsGGGG3GFGFqAeD2G3etDBEsFCFC",
"World -- \0 \0 \0 \0 \0 \0all \0 \0that \0 \0beck\0ons.\n\0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("qBG!!FsEAEAqEFGeF!C",
Play("qBGFsEAEAqEFGeFC",
" \0Life \0is \0too \0 \0 \0 \0prec\0i\0ous.\n\0 \0 \0");
Play("qBG!!FsEAEAqEFGeF!C",
Play("qBGFsEAEAqEFGeFC",
" \0Can \0be \0 \0 \0 \0 \0worr\0i\0ous.\n\0 \0 \0");
}
} catch
@@ -15,13 +15,13 @@ U0 Song()
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
while (!ScanKey) {
Play("W12eG3CD!AqE!!sACACG!EGEqDsAAA!AetCDD",
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");
Play("2eG3CD!AqE!!sACACG!EGEqDsAAA!AetCDD",
Play("2eG3CDAqEsACACGEGEqDsAAAAetCDD",
"Wa\0ter \0thi\0s \0tree.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("2qG!G3eEBqAGeFE!!sF!GFG!etD!BD",
Play("2qGG3eEBqAGeFEsFGFGetDBD",
" \0 \0$$FG,RED$$I \0will \0teach \0thee.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("2qG!G3eEBqAGeFE!!sF!GFG!etD!BD",
Play("2qGG3eEBqAGeFEsFGFGetDBD",
" \0 \0Wat\0er \0that \0tree.$$FG$$\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
}
} catch
@@ -30,6 +30,7 @@ U0 Song()
I64 i;
CTask *task;
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=LTCYAN<<4+BLACK;
Fs->draw_it=&DrawIt;
Fs->task_end_cb=&SndTaskEndCB;
MusicSettingsRst;
@@ -52,17 +53,17 @@ U0 Song()
TaskWait(task);
SetWinHorz(Fs->win_left,Fs->win_right,task);
SetWinVert(Fs->win_bottom+3,Fs->win_bottom+15,task);
"$$BD+H,LTCYAN$$$$FD+H,BLACK$$";
"$$BG+H,LTCYAN$$$$FG+H,BLACK$$";
while (!ScanKey) {
Play("W12qG3eCB2hGqG3eCB2qG3A",
Play("2qG3eCB2hGqG3eCB2qG3A",
"Umm... \0God?\n\0 \0 \0Let \0Your \0 \0 \0 \0");
Play("CeBA2G3DqEeDCBA2qG3A",
"face \0shine \0on \0down\n\0on \0us, \0Your \0 \0luck\0y \0 \0peo\0");
Play("eBA2h.G3qE!!CAF",
Play("eBA2h.G3qECAF",
" \0ple.\n\0 \0Fath\0e\0r \0a\0");
Play("FD!A!eEDqE!!CAF",
Play("FDAeEDqECAF",
"bove,\n\0 \0 \0I \0 \0feel \0 \0 \0Your \0");
Play("FD!A!eED",
Play("FDAeED",
"love.\n\0 \0 \0 \0 \0");
}
} catch
@@ -7,13 +7,13 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13sC#C#D#D#C#C#CCC#C#D#D#C#C#CCEEDDC#C#DDEEDDC#C#DD",
Play("3sC#C#D#D#C#C#CCC#C#D#D#C#C#CCEEDDC#C#DDEEDDC#C#DD",
"Still \0 \0 \0 \0there.\n\0 \0 \0 \0Still \0 \0 \0 \0there.\n\0 \0 \0 \0Not \0 \0 \0 \0fair.\n\0 \0 \0 \0Not \0 \0 \0 \0fair.\n\0 \0 \0 \0");
Play("C#C#D#D#C#C#CCC#C#D#D#C#C#CCEEDDC#C#DDEEDDC#C#DD",
"Un\0 \0 \0 \0aware!\n\0 \0 \0 \0Un\0 \0 \0 \0aware!\n\0 \0 \0 \0Every\0 \0 \0 \0where!\n\0 \0 \0 \0Every\0 \0 \0 \0where!\n\0 \0 \0 \0");
Play("eB!!DetFGAeF!EBE!etE!FEqCeFEDA",
Play("eBDetFGAeFEBEetEFEqCeFEDA",
"$$FG,RED$$Running \0 \0 \0a\0way \0 \0 \0 \0 \0 \0from \0the \0Lord \0won't \0 \0work.\n\0 \0");
Play("B!!DetFGAeF!EBE!etE!FEqCeFEDA",
Play("BDetFGAeFEBEetEFEqCeFEDA",
"Running \0 \0 \0a\0way \0 \0 \0 \0 \0 \0from \0the \0Lord \0won't \0 \0work.$$FG$$\n\0 \0");
}
} catch
+1 -1
View File
@@ -8,7 +8,7 @@ U0 Song()
try {
while (!ScanKey) {
"$$FG,GREEN$$As I look back on my sinful past...$$FG$$\n";
Play("W13qCAABAeAECEqB",
Play("3qCAABAeAECEqB",
"Who \0was \0that \0per\0son? \0 \0It \0wasn't \0 \0me?\n\0");
Play("CAABAeAECEqB",
"Who \0was \0that \0per\0son? \0 \0It \0wasn't \0 \0me?\n\0");
+3 -3
View File
@@ -16,7 +16,7 @@ U0 PutVerse()
U8 *ch;
I64 *start;
"$$CL$$";
DocClear;
start=GetTimeStamp/16%size;
if (start>size-LEN) start=size-LEN;
ch=bible[start+LEN-1];
@@ -38,12 +38,12 @@ U0 Song()
"$$WW,1$$This shows a random passage based on "
"the time at the moment this song was run. "
"Talk to God as an offering, then run $MA+A-X+PU,"AfterEgypt","Cd(\"::/TempleOS/Apps/AfterEgypt\");;#include \"Run\"\\n"$ if you "
"want God to talk some more. The $LK,"Holy Spirit","FI:::/TempleOS/Apps/HolySpirit/HSNotes.TXT"$ can "
"want God to talk some more. The $LK+PU,"Holy Spirit","FI:::/TempleOS/Apps/HolySpirit/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);
DocRecalc(DocCur(task)); //Reformat word-wrap with new window size.
DocRecalc(DocPut(task)); //Reformat word-wrap with new window size.
while (!ScanKey) {
PutVerse;
Play("3qAeABCBqCetABBqCetAAREE2G");
+3 -3
View File
@@ -7,12 +7,12 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W14etEEEqBetDDqtDqBetCCqtCqBhB");
Play("4etEEEqBetDDqtDqBetCCqtCqBhB");
Play("etEEEqBetDDqtDqBetCCqtCqBhB");
Play("etABCqDetBCCqDetDCBqAhA");
Play("etABCqDetBCCqDetDCBqAhA");
Play("!qAetC!!AEsG!!CGCetBC3G4ADAqAGetDAD");
Play("!qAetC!!AEsG!!CGCetBC3G4ADAqAGetDAD");
Play("qAetCAEsGCGCetBC3G4ADAqAGetDAD");
Play("qAetCAEsGCGCetBC3G4ADAqAGetDAD");
}
} catch
CatchAll;
@@ -7,12 +7,12 @@ U0 Song()
music_stacatto_factor= 0.902;
try {
while (!ScanKey) {
Play("W13qEDeCC!etEAAqEetCDCA!!GFqG",
Play("3qEDeCCetEAAqEetCDCAGFqG",
"I \0don't \0know \0 \0 \0 \0 \0 \0 \0 \0what \0 \0to \0 \0pray.\n\0");
Play("EDeCC!etEAAqEetCDCA!!GFqG");
Play("eGEetFDAqF!sGF!GF!G!!FG!F!etBGFqGeDE",
Play("EDeCCetEAAqEetCDCAGFqG");
Play("eGEetFDAqFsGFGFGFGFetBGFqGeDE",
"It's \0a \0blah \0 \0 \0day.\n\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0");
Play("GEetFDAqF!sGF!GF!G!!FG!F!etBGFqGeDE");
Play("GEetFDAqFsGFGFGFGFetBGFqGeDE");
}
} catch
CatchAll;
+3 -3
View File
@@ -8,14 +8,14 @@ U0 Song()
try {
while (!ScanKey) {
DocClear;
Play("W13qDsCCCCeBBCCqDsCCCCeBBCC",
Play("3qDsCCCCeBBCCqDsCCCCeBBCC",
"I'm \0 \0 \0 \0 \0on \0my \0way.\n\0 \0Got \0a \0 \0 \0 \0bus\0y \0day.\n\0 \0");
Play("sBBBBeAAsBA2G3AqAsBBBBeAAsBA2G3AqA",
"Woe, \0 \0 \0 \0I \0for\0got \0 \0to \0 \0pray.\n\0What's \0 \0 \0 \0God \0 \0have \0 \0to \0 \0say?\n\0");
"$$FG,GREEN$$God talking...\n$$FG$$";
Play("AeB2G3GGqE2etG3F!B!eFGqFeEC",
Play("AeB2G3GGqE2etG3FBeFGqFeEC",
"$$FG,RED$$Oh, \0 \0 \0hi-\0a \0you!\n\0What\0ch\0u \0been \0 \0do\0ing?\n\0 \0");
Play("qAeB2G3GGqE2etG3F!B!eFGqFeEC",
Play("qAeB2G3GGqE2etG3FBeFGqFeEC",
"Oh, \0 \0 \0hi-\0a \0you!\n\0What\0ch\0u \0been \0 \0do\0ing?$$FG$$\n\0 \0");
}
} catch
+3 -3
View File
@@ -4,9 +4,9 @@ $WW,1$$FG,5$$TX+CX,"Music Organ Help"$$FG$
* The clipboard can be used to cut and paste.
* $FG,2$MusicOrgan$FG$ uses $FG,2$C+$FG$ files as it's fmt! See $LK-A,"::/TempleOS/Apps/MusicOrgan/Examples/personal.CPP"$. It does not fully parse them when loading back in, so changes made outside $FG,2$MusicOrgan$FG$ can be lost.
* $FG,2$MusicOrgan$FG$ uses $LK,"Holy C","FI:::/TempleOS/Doc/HolyC.TXT"$ files as it's fmt! See $LK-A,"::/TempleOS/Apps/MusicOrgan/Examples/personal.CPP"$. It does not fully parse them when loading back in, so changes made outside $FG,2$MusicOrgan$FG$ can be lost.
* The first line of the $FG,2$C+$FG$ files has a comment with a category recognized by $LK,"JukeBox","FF:::/TempleOS/Apps/MusicOrgan/JukeBox.CPP,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 comment is a digit rating number.
* The first line of the $LK,"Holy C","FI:::/TempleOS/Doc/HolyC.TXT"$ files has a comment with a category recognized by $LK,"JukeBox","FF:::/TempleOS/Apps/MusicOrgan/JukeBox.CPP,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 comment is a digit rating number.
* You can take the $LK,"Play","MN:Play"$() statements 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>","2qG3ECB2eGG3qCeFDsBGBG2qG3ECB2eGG3qCeFDsBGBGqEeEFqEB2eG3FetCAGqFCEeEFqEB2eG3FetCAGqFC"$ after pressing $FG,2$<CTRL-T>$FG$, now.
@@ -22,5 +22,5 @@ $FG,5$U0 CtrlAltR(I64)
SetCtrlAltLetCB('R',&CtrlAltR,"Toggle snd_record");$FG$
* The note accent feature only works when exporting songs. When calling $LK,"SndFileCreate","MN:SndFileCreate"$() you can set a waveform. The PC speaker is $LK,"WF_SQUARE","MN:WF_SQUARE"$. You can select reverb and averaging, also.
* When calling $LK,"SndFileCreate","MN:SndFileCreate"$() you can set a waveform. The PC speaker is $LK,"WF_SQUARE","MN:WF_SQUARE"$. You can select reverb and averaging, also.
+11 -11
View File
@@ -1,15 +1,15 @@
CTask *SingleSong(U8 *msg,U8 *name)
{
Bool old_preempt=Preempt(OFF);
CTask *task=Spawn(&ServantUserCmdLine,NULL,name,Fs);
LBts(&task->task_flags,TASKf_LOCK_TITLE);
CTask *task=Spawn(&SrvUserCmdLine,NULL,name,,Fs);
StrCpy(task->task_title,name);
TaskRqstQue(task,Fs,";",1<<TASKCf_WAKE_MASTER);
task->title_src=TTS_LOCKED_CONST;
TaskExeStrQue(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);
Preempt(old_preempt);
TaskRqstQue(task,NULL,msg,1<<TASKCf_EXIT_ON_COMPLETE);
DocCur(task)->max_entries=100;
TaskExeStrQue(task,NULL,msg,1<<SVCf_EXIT_ON_COMPLETE|1<<SVCf_FREE_ON_COMPLETE);
DocPut(task)->max_entries=100;
return task;
}
@@ -93,15 +93,15 @@ public U0 JukeBox(U8 *dirname=NULL,U8 **_filename=NULL)
if ('0'<=doc_e->tag[2]<='9')
rating=doc_e->tag[2];
if (StrStr(doc_e->tag,"incomplete"))
DocPutS(doc,"$$FM,BLACK$$");
DocPutS(doc,"$$FG,BLACK$$");
else if (StrStr(doc_e->tag,"has graphics"))
DocPutS(doc,"$$FM,GREEN$$");
DocPutS(doc,"$$FG,GREEN$$");
else if (StrStr(doc_e->tag,"has words"))
DocPutS(doc,"$$FM,BLUE$$");
DocPutS(doc,"$$FG,BLUE$$");
else if (StrStr(doc_e->tag,"special"))
DocPutS(doc,"$$FM,CYAN$$");
DocPutS(doc,"$$FG,CYAN$$");
else if (StrStr(doc_e->tag,"no nothing")) {
DocPutS(doc,"$$FM,RED$$");
DocPutS(doc,"$$FG,RED$$");
if (FileOcc("\\0",tempm1->full_name,"")) {
s->cur_entry=doc_e->next;
s->cur_data_col=0;
@@ -118,7 +118,7 @@ public U0 JukeBox(U8 *dirname=NULL,U8 **_filename=NULL)
}
tempm1=tempm1->next;
}
DocPrintF(doc,"\n$$FM,CYAN$$$$MU-UL,\"DONE\",%d$$\n",DOCM_CANCEL);
DocPrintF(doc,"\n$$FG,CYAN$$$$MU-UL,\"DONE\",%d$$\n",DOCM_CANCEL);
while (TRUE) {
if (_filename)
tempm1=PopUpMenu(doc,DOF_INTERCEPT_TASK_END);
+2 -28
View File
@@ -4,9 +4,8 @@ class MakeSongSettings
Bool normal_rhythms fmtstr "$$CB,\"Normal Rhythms\"$$\n";
Bool complex_rhythms fmtstr "$$CB,\"Complex Rhythms\"$$\n";
Bool rests fmtstr "$$CB,\"Rests\"$$\n";
Bool change_waveforms fmtstr "$$CB,\"Change Waveforms\"$$\n";
Bool six_eight fmtstr "$$CB,\"Six Eight\"$$\n";
I64 octave fmtstr "$$DA-T,32,\"Octave:%d\"$$\n";
I64 octave fmtstr "$$DA-T,32,\"Octave:%d\"$$\n";
};
U0 InsNote(MakeSongSettings *mss,U8 *buf,I64 k,I64 *j)
@@ -60,14 +59,12 @@ U8 *MakeSong()
{
MakeSongSettings mss;
U8 *buf;
I64 i,j=0,k,n,k2,duration,last_duration=-1,
wf[2],w=0,len;
I64 i,j=0,k,n,k2,duration,last_duration=-1,len;
mss.simple_rhythms=FALSE;
mss.normal_rhythms=TRUE;
mss.complex_rhythms=FALSE;
mss.rests=FALSE;
mss.change_waveforms=FALSE;
mss.octave=music_octave;
if (!PopUpForm(&mss,"MakeSongSettings"))
@@ -81,18 +78,6 @@ U8 *MakeSong()
else
progress4_max=8;
n=TimerPickedNi$WW,0$bble/2;
if (WF_NULL<n<WF_NOISE)
wf[0]=n;
else
wf[0]=WF_SQUARE;
n=TimerPickedNibble/2;
if (WF_NULL<n<WF_NOISE)
wf[1]=n;
else
wf[1]=wf[0];
buf[j++]='0'+music_octave;
if (mss.six_eight) {
len=6;
@@ -102,18 +87,7 @@ U8 *MakeSong()
buf[j++]='8';
} else
len=8;
if (mss.change_waveforms) {
buf[j++]='W';
buf[j++]='0'+wf[w++&1];
}
for (i=0;i<len;i++) {
if (mss.change_waveforms) {
if (TimerPickedNibble<6) {
buf[j++]='W';
buf[j++]='0'+wf[w++&1];
}
}
n=TimerPickedNibble<<4+TimerPickedNibble;
if (mss.complex_rhythms)
duration=complex_songs[n%9];
+58 -175
View File
@@ -18,7 +18,7 @@ This uses four types of output
2) The Fs->draw_it() for the staff region, drawn every refresh.
3) The gr_dc2 persistent layer for the note chooser, meter chooser. The persistent layer is used during drag-and-drop.
3) The gr_dc persistent layer for the note chooser, meter chooser. The persistent layer is used during drag-and-drop.
4) The Fs->next_ctrl for the tempo/stacatto sliders.
@@ -60,7 +60,7 @@ class OrgNote
I64 octave;
I64 meter_bottom;
}
I64 duration,accent,width,waveform;
I64 duration,width;
U8 ascii[32];
};
@@ -143,16 +143,10 @@ U8 org_note_inverse_map[7]={10,8,7,5,3,2,0};
$SP,"<15>",15$
$SP,"<16>",16$
$SP,"<17>",17$
$SP,"<18>",18$
#define ORG_NOTE_SPACING 9
#define ORG_NUM_DURATIONS 12
@@ -349,9 +343,9 @@ U0 DrawNote(CDC *dc,I64 x,I64 y,I64 duration)
if (0<=duration<=ORG_NUM_DURATIONS) {
SpritePlot3(dc,x,y,0,org_duration_imgs[duration]);
if (org_triplet_durations[duration])
SpritePlot3(dc,x,y,0,$IB,"<18>",18$);
SpritePlot3(dc,x,y,0,$IB,"<16>",16$);
if (OrgIsDotted(duration))
SpritePlot3(dc,x,y,0,$IB,"<19>",19$);
SpritePlot3(dc,x,y,0,$IB,"<15>",15$);
}
}
@@ -416,18 +410,13 @@ U0 DrawIt(CTask *task,CDC *dc)
if (OrgHasWords(tempo->word))
dc->color=GREEN;
}
if (tempo->accent==1)
SpritePlot3(dc,x,y,0,$IB,"<20>",20$);
else if (tempo->accent==2)
SpritePlot3(dc,x,y,0,$IB,"<21>",21$);
DrawNote(dc,x,y,tempo->duration);
if (OrgIsDotted(tempo->duration))
x+=ORG_NOTE_SPACING/2;
if (Bt(&tempo->flags,Of_SHARP))
SpritePlot3(dc,x,y,0,$IB,"<22>",22$);
SpritePlot3(dc,x,y,0,$IB,"<13>",13$);
else if (Bt(&tempo->flags,Of_FLAT))
SpritePlot3(dc,x,y,0,$IB,"<23>",23$);
SpritePlot3(dc,x,y,0,$IB,"<14>",14$);
measure_left-=org_durations[tempo->duration];
}
tempo=tempo->next;
@@ -437,7 +426,7 @@ U0 DrawIt(CTask *task,CDC *dc)
dc->color=BROWN;
else
dc->color=BLACK;
SpritePlot3(dc,oc.root.x,50,0,$IB,"<24>",24$);
SpritePlot3(dc,oc.root.x,50,0,$IB,"<12>",12$);
Preempt(old_preempt);
}
@@ -456,7 +445,7 @@ F64 PopUpDuration()
{
I64 i;
CDoc *doc=DocNew;
DocPutS(doc,"$$FM,GREEN$$$$MU,\"Set Word\",ORGR_SET_WORD$$\n"
DocPutS(doc,"$$FG,GREEN$$$$MU,\"Set Word\",ORGR_SET_WORD$$\n"
"$$MU,\"Toggle Sharp\",ORGR_SHARP$$\n"
"$$MU,\"Toggle Flat\",ORGR_FLAT$$\n"
"$$MU,\"Toggle Tie\",ORGR_TIE$$\n"
@@ -479,7 +468,7 @@ U0 OrgRightClick(I64 x,I64 y)
U8 *st,*st2;
OrgNote *tempo,*tempo1;
I64 i,old_doc_flags;
if (DocCur) old_doc_flags=DocCur->flags;
if (DocPut) old_doc_flags=DocPut->flags;
oc.cur_note=tempo=OrgFindNote(x,y);
if (tempo!=&oc.root) {
Fs->win_inhibit=0;
@@ -493,8 +482,6 @@ U0 OrgRightClick(I64 x,I64 y)
if (tempo->type==OT_NOTE) {
tempo->octave=OCTAVE_REST;
tempo->note=NOTE_REST;
tempo->accent=0;
tempo->waveform=WF_SQUARE;
}
break;
case ORGR_SHARP:
@@ -537,7 +524,7 @@ U0 OrgRightClick(I64 x,I64 y)
break;
case ORGR_SET_WORD:
if (tempo->type==OT_NOTE) {
if (DocCur) DocCur->flags&=~DOCF_FORM;
if (DocPut) DocPut->flags&=~DOCF_FORM;
if (OrgHasWords(tempo->word))
st2=MSPrintF("\nWord(\"%Q\"):",tempo->word);
else
@@ -551,7 +538,7 @@ U0 OrgRightClick(I64 x,I64 y)
Free(st);
} else
tempo->word=StrNew(" ");
if (DocCur) DocCur->flags=DocCur->flags&~DOCF_FORM|old_doc_flags&DOCF_FORM;
if (DocPut) DocPut->flags=DocPut->flags&~DOCF_FORM|old_doc_flags&DOCF_FORM;
}
break;
case ORGR_INS_NOTE:
@@ -563,18 +550,6 @@ U0 OrgRightClick(I64 x,I64 y)
QueRem(tempo);
OrgNoteDel(tempo);
break;
case ORGR_NO_ACCENT:
if (tempo->type==OT_NOTE && tempo->octave!=OCTAVE_REST)
tempo->accent=0;
break;
case ORGR_ACCENT:
if (tempo->type==OT_NOTE && tempo->octave!=OCTAVE_REST)
tempo->accent=1;
break;
case ORGR_STRONG_ACCENT:
if (tempo->type==OT_NOTE && tempo->octave!=OCTAVE_REST)
tempo->accent=2;
break;
}
}
OrgSetWidth(oc.cur_note);
@@ -631,16 +606,16 @@ U0 DrawPickNoteBox()
U0 DrawPickTools()
{
if (oc.tool==OTT_BOX_TOOL)
oc.dc2->color=ROPF_DITHER+WHITE<<16+ROP_EQU+RED;
oc.dc2->color=ROPF_DITHER+WHITE<<16+RED;
else
oc.dc2->color=ROPF_DITHER+WHITE<<16+ROP_EQU+BLACK;
oc.dc2->color=ROPF_DITHER+WHITE<<16+BLACK;
GrLineRect4(oc.dc2,ORG_TOOLS_X,ORG_TOOLS_Y,
ORG_TOOLS_X+10,ORG_TOOLS_Y+10);
if (oc.tool==OTT_PTR_TOOL)
oc.dc2->color=ROP_EQU+RED;
oc.dc2->color=RED;
else
oc.dc2->color=ROP_EQU+BLACK;
oc.dc2->color=BLACK;
(*fp_draw_input_ptr)(oc.dc2,ORG_TOOLS_X+15,ORG_TOOLS_Y);
oc.dc2->color=BLACK;
}
@@ -728,7 +703,6 @@ U0 OrgLeftClickPickNoteBox(I64 duration)
tempo->note=n;
tempo->octave=o;
tempo->duration=duration;
tempo->waveform=tempo1->waveform;
OrgSetWidth(tempo);
QueIns(tempo,tempo1);
oc.cur_note=tempo->next;
@@ -758,7 +732,6 @@ U0 OrgLeftClickPickMeterBox(I64 top,I64 bottom)
tempo->type=OT_METER;
tempo->meter_top=top;
tempo->meter_bottom=bottom;
tempo->waveform=tempo1->waveform;
OrgSetWidth(tempo);
QueIns(tempo,tempo1);
oc.cur_note=tempo->next;
@@ -769,14 +742,12 @@ U0 OrgLeftClickPickMeterBox(I64 top,I64 bottom)
U0 OrgLeftClickStaffPtr(I64 x,I64 y)
{
OrgNote *tempo,*tempo1;
I64 o,n,msg_code,p1,p2,n_original,o_original,a_original,wf_original;
I64 o,n,msg_code,p1,p2,n_original,o_original;
oc.cur_note=tempo=OrgFindNote(x,y);
if (tempo!=&oc.root) {
if (tempo->type==OT_NOTE) {
n_original=tempo->note;
o_original=tempo->octave;
a_original=tempo->accent;
wf_original=tempo->waveform;
do {
msg_code=GetMsg(&p1,&p2,1<<MSG_IP_L_UP|1<<MSG_IP_MOVE);
if (msg_code==MSG_IP_L_UP) {
@@ -789,8 +760,6 @@ U0 OrgLeftClickStaffPtr(I64 x,I64 y)
tempo->word=NULL;
tempo->note=n_original;
tempo->octave=o_original;
tempo->accent=a_original;
tempo->waveform=wf_original;
}
} else {
move_note:
@@ -818,7 +787,7 @@ U0 OrgLeftClickStaffBox(I64 x,I64 y)
do {
msg_code=GetMsg(&p1,&p2,1<<MSG_IP_L_UP|1<<MSG_IP_MOVE);
DrawDC2;
oc.dc2->color=ROPF_DITHER+WHITE<<16+ROP_EQU+BLACK;
oc.dc2->color=ROPF_DITHER+WHITE<<16+BLACK;
GrLineRect4(oc.dc2,x,y,p1,p2);
if (msg_code==MSG_IP_L_UP) {
if (x>p1) SwapU64(&x,&p1);
@@ -866,7 +835,7 @@ U0 OrgPlayTask(I64)
case ORGPM_NORMAL:
if (org_play_f!=f) {
f=org_play_f;
Snd(f,music_waveform);
Snd(f);
}
break;
case ORGPM_REVERB1:
@@ -877,9 +846,9 @@ U0 OrgPlayTask(I64)
}
if (!(i&15)) {
if (i&16)
Snd(f,music_waveform);
Snd(f);
else
Snd(f2,music_waveform);
Snd(f2);
}
break;
}
@@ -932,15 +901,13 @@ U8 *OrgMusicSetNoteLen(U8 *st,F64 *org_duration)
U0 OrgLoadSongStr(U8 *st,I64 *org_octave,F64 *org_duration)
{
OrgNote *tempo,*tempo1;
I64 note,i=0,waveform=WF_SQUARE;
I64 note,i=0;
while (*st) {
tempo=CAlloc(sizeof(OrgNote));
tempo->waveform=WF_SQUARE;
while (*st && !('A'<=*st<='G') && *st!='R') {
if (*st=='M') {
tempo1=CAlloc(sizeof(OrgNote));
tempo1->type=OT_METER;
tempo1->waveform=tempo->waveform;
st++;
if ('1'<=*st<='9')
tempo1->meter_top=*st++-'0';
@@ -955,15 +922,6 @@ U0 OrgLoadSongStr(U8 *st,I64 *org_octave,F64 *org_duration)
OrgSetWidth(tempo1);
QueIns(tempo1,oc.root.last);
}
if (*st=='W') {
st++;
tempo->waveform=*st++-'0';
waveform=tempo->waveform;
}
while (*st=='!') {
tempo->accent++;
st++;
}
while (*st=='(') {
Bts(&tempo->flags,Of_TIE);
st++;
@@ -999,8 +957,6 @@ U0 OrgLoadSongStr(U8 *st,I64 *org_octave,F64 *org_duration)
} else {
tempo->note=NOTE_REST;
tempo->octave=OCTAVE_REST;
tempo->accent=0;
tempo->waveform=WF_SQUARE;
}
if (*org_duration<=2*.25/3)
i=0;
@@ -1037,7 +993,7 @@ U0 OrgLoadSong(U8 *filename,I64 *org_octave,F64 *org_duration)
{
U8 *st;
OrgNote *tempo;
CLex *lx=LexNew(TextFileRead(filename),0,StrNew(filename));
CLex *lx=LexNew(TextFileRead(filename),0,filename);
Lex(lx);
if (FileOcc("incomplete",filename,""))
oc.incomplete_entry->checked=TRUE;
@@ -1084,13 +1040,12 @@ U8 *OrgCvtSong()
{
OrgNote *tempo;
U8 *st,*src,*dst;
I64 i,note,octave,last_octave,last_duration,accent,waveform,last_waveform;
I64 i,note,octave,last_octave,last_duration;
i=0;
tempo=oc.root.next;
last_octave=OCTAVE_REST;
last_duration=-1;
last_waveform=-1;
while (tempo!=&oc.root) {
dst=&tempo->ascii;
if (tempo->type==OT_METER) {
@@ -1115,17 +1070,8 @@ U8 *OrgCvtSong()
}
note=music_note_map[*LstEntryPt(note,org_note_lst)-'A'];
}
accent=tempo->accent;
waveform=tempo->waveform;
if (waveform!=last_waveform && note!=NOTE_REST) {
*dst++='W';
*dst++=waveform+'0';
last_waveform=waveform;
}
if (Bt(&tempo->flags,Of_TIE))
*dst++='(';
while (accent--)
*dst++='!';
if (octave!=last_octave && note!=NOTE_REST) {
*dst++=octave+'0';
last_octave=octave;
@@ -1296,25 +1242,8 @@ U0 OrgSetOctave(I64 octave)
tempse->checked=org_play_mode==1;
}
U0 OrgSetWaveform(I64 waveform)
{
CMenuEntry *tempse;
if (tempse=MenuEntryFind(Fs->cur_menu,"Snd/Square"))
tempse->checked=waveform==WF_SQUARE;
if (tempse=MenuEntryFind(Fs->cur_menu,"Snd/Sine"))
tempse->checked=waveform==WF_SINE;
if (tempse=MenuEntryFind(Fs->cur_menu,"Snd/Triangle"))
tempse->checked=waveform==WF_TRIANGLE;
if (tempse=MenuEntryFind(Fs->cur_menu,"Snd/Sawtooth"))
tempse->checked=waveform==WF_SAWTOOTH;
if (tempse=MenuEntryFind(Fs->cur_menu,"Snd/Noise"))
tempse->checked=waveform==WF_NOISE;
}
$SP,"<25>",25$
$SP,"<17>",17$
@@ -1393,11 +1322,11 @@ U0 OrgUpKey(I64 x,I64 y)
}
}
U0 OrgMenu(I64 org_octave,I64 org_waveform)
U0 OrgMenu(I64 org_octave)
{
DocClear;
"$$BD,WHITE$$$$FD,GREEN$$$$FU,GREEN$$$$FM,GREEN$$$$CM,0,12$$\n";
PutSprite($IB,"<25>",25$);
"$$BD,WHITE$$$$FD,GREEN$$$$CM,0,12$$\n";
PutSprite($IB,"<17>",17$);
NewLine(5);
DrawDC2;
@@ -1422,15 +1351,14 @@ U0 OrgMenu(I64 org_octave,I64 org_waveform)
PutSprite($IB,"<7>",7$,"$$SP+LM+LA,\"\",\"Msg(MSG_KEY_DOWN,0,SCF_CTRL|SC_CURSOR_RIGHT);\",%d$$");
"$$CM+LX,0,6$$";
OrgSetOctave(org_octave);
OrgSetWaveform(org_waveform);
WinMgrSync(2);
}
U0 OrgPushMode(I64 org_octave,I64 org_waveform)
U0 OrgPushMode(I64 org_octave)
{
Fs->win_inhibit=WIF_ALL-WIF_BORDER-WIF_MENU-WIF_CTRLS;
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
}
U0 OrgPopMode()
@@ -1446,16 +1374,16 @@ U0 MusicOrgan(U8 *dirname=NULL)
{
Bool is_note,was_playing;
I64 p1,p2,ch,sc,msg_code=0,col,
note=NOTE_REST,octave=OCTAVE_REST,accent=0,org_waveform=WF_SQUARE,org_octave=3,timeout_val,timeout_val2,
note=NOTE_REST,octave=OCTAVE_REST,org_octave=3,timeout_val,timeout_val2,
old_doc_flags;
U8 *filename=NULL,*st,*st2;
CTask *play_task=Spawn(&OrgPlayTask,NULL,"Organ Play",Fs);
CTask *play_task=Spawn(&OrgPlayTask,NULL,"Organ Play",,Fs);
OrgNote *tempo;
F64 f=0,last_f=0,org_duration=1.0,
d,evt_time=tT,note_down_time=tT;
CCtrl *c=TempoNew;
if (DocCur) old_doc_flags=DocCur->flags;
if (DocPut) old_doc_flags=DocPut->flags;
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
WinBorder;
WordStat;
@@ -1466,13 +1394,12 @@ U0 MusicOrgan(U8 *dirname=NULL)
tempo_state.tempo=Round(TEMPO_RANGE*(music_tempo-0.5)/4.4);
tempo_state.stacatto=Round(TEMPO_RANGE*(music_stacatto_factor-0.12)/0.88);
if (DocCur) DocCur->flags|=DOCF_FORM;
if (DocPut) DocPut->flags|=DOCF_FORM;
MemSet(&oc,0,sizeof(OrgCtrl));
oc.screen_x=0;
oc.root.next=oc.root.last=&oc.root;
oc.clipboard.next=oc.clipboard.last=&oc.clipboard;
oc.root.waveform=WF_SQUARE;
oc.cur_note=&oc.root;
oc.dc2=DCAlias;
@@ -1505,11 +1432,6 @@ U0 MusicOrgan(U8 *dirname=NULL)
" MarkIncomplete(MSG_CMD,ORGF_INCOMPLETE);"
"}"
"Snd {"
" Square(,'!');"
" Sine(,'@');"
" Triangle(,'#');"
" Sawtooth(,'$$');"
" Noise(,'%');"
" Reverb(,'c');"
" Octave0(,'0');"
" Octave1(,'1');"
@@ -1532,7 +1454,7 @@ U0 MusicOrgan(U8 *dirname=NULL)
dirname=StrNew("HOME/MusicOrgan");
else
dirname=StrNew(dirname);
OrgPushMode(org_octave,org_waveform);
OrgPushMode(org_octave);
col=0;
Fs->draw_it=&DrawIt;
@@ -1556,8 +1478,8 @@ got_msg:
}
if (msg_code!=MSG_IP_MOVE) {
DocBottom;
if (was_playing || DocCur->cur_entry->y>=Fs->win_height-2) {
OrgMenu(org_octave,org_waveform);
if (was_playing || DocPut->cur_entry->y>=Fs->win_height-2) {
OrgMenu(org_octave);
col=0;
}
}
@@ -1579,7 +1501,7 @@ got_msg:
oc.incomplete_entry->checked=!oc.incomplete_entry->checked;
break;
}
OrgPushMode(org_octave,org_waveform);
OrgPushMode(org_octave);
is_note=FALSE;
col=0;
break;
@@ -1589,7 +1511,7 @@ got_msg:
sc=p2;
if ('0'<=ch<='9') {
org_octave=ch-'0';
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
col=0;
} else {
is_note=TRUE;
@@ -1647,7 +1569,7 @@ got_msg:
case SC_F1:
OrgPopMode;
PopUp("Ed(\"::/TempleOS/Apps/MusicOrgan/Help.TXT.Z\");",Fs);
OrgPushMode(org_octave,org_waveform);
OrgPushMode(org_octave);
col=0;
is_note=FALSE;
break;
@@ -1686,7 +1608,7 @@ got_msg:
OrgLoadSongStr(st2,&org_octave,&org_duration);
Free(st2);
}
OrgPushMode(org_octave,org_waveform);
OrgPushMode(org_octave);
is_note=FALSE;
col=0;
break;
@@ -1697,7 +1619,7 @@ got_msg:
"$$FG,GREEN$$<SHIFT-ESC>$$FG$$ to load it into MusicOrgan.\n\n"
ST_WARN_ST " Graphics and other embelishments\n"
"will be lost because MusicOrgan can't\n"
"parse C/C++ programs completely.\n");
"parse Holy C programs completely.\n");
Free(filename);
filename=NULL;
JukeBox(dirname,&filename);
@@ -1711,14 +1633,14 @@ got_msg:
oc.record_entry->checked=FALSE;
oc.cur_note=oc.root.next;
}
OrgPushMode(org_octave,org_waveform);
OrgPushMode(org_octave);
is_note=FALSE;
col=0;
break;
case CH_CTRLA:
OrgPopMode;
filename=OrgSaveSong(dirname,filename);
OrgPushMode(org_octave,org_waveform);
OrgPushMode(org_octave);
is_note=FALSE;
break;
case CH_CTRLC:
@@ -1734,7 +1656,7 @@ got_msg:
is_note=FALSE;
break;
case '.':
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
col=0;
Free(filename);
filename=NULL;
@@ -1757,7 +1679,7 @@ got_msg:
}
col=0;
oc.playing=TRUE;
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
tempo=oc.cur_note;
while (tempo!=&oc.root) {
if (tempo->type!=OT_METER) {
@@ -1783,8 +1705,6 @@ got_msg:
"" tempo->word;
note=tempo->note;
octave=tempo->octave;
accent=tempo->accent;
org_waveform=tempo->waveform;
if (note!=NOTE_REST)
f=Note2Freq(note,octave);
else
@@ -1797,7 +1717,6 @@ got_msg:
music_tempo=4.4*tempo_state.tempo/TEMPO_RANGE+0.5;
music_stacatto_factor=0.88*tempo_state.stacatto/TEMPO_RANGE+0.12;
music_waveform=org_waveform;
d=JIFFY_FREQ*org_durations[tempo->duration]/music_tempo;
if (Bt(&tempo->flags,Of_TIE)) {
timeout_val+=d;
@@ -1816,7 +1735,7 @@ got_msg:
oc.cur_note=&oc.root;
oc.screen_x+=oc.cur_note->x-GR_WIDTH/2;
oc.playing=FALSE;
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
col=0;
f=0;
org_play_f=0;
@@ -1838,7 +1757,7 @@ got_msg:
org_play_mode++;
if (org_play_mode>=ORGPM_NUM_PLAY_MODES) org_play_mode=0;
is_note=FALSE;
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
col=0;
break;
case 'z':
@@ -1850,44 +1769,14 @@ got_msg:
org_octave=3;
oc.screen_x=0;
}
OrgMenu(org_octave,org_waveform);
OrgMenu(org_octave);
col=0;
is_note=FALSE;
break;
case CH_ESC:
OrgPopMode;
filename=OrgSaveSong(dirname,filename);
OrgPushMode(org_octave,org_waveform);
break;
case '!':
music_waveform=org_waveform=WF_SQUARE;
OrgMenu(org_octave,org_waveform);
col=0;
is_note=FALSE;
break;
case '@':
music_waveform=org_waveform=WF_SINE;
OrgMenu(org_octave,org_waveform);
col=0;
is_note=FALSE;
break;
case '#':
music_waveform=org_waveform=WF_TRIANGLE;
OrgMenu(org_octave,org_waveform);
col=0;
is_note=FALSE;
break;
case '$$':
music_waveform=org_waveform=WF_SAWTOOTH;
OrgMenu(org_octave,org_waveform);
col=0;
is_note=FALSE;
break;
case '%':
music_waveform=org_waveform=WF_NOISE;
OrgMenu(org_octave,org_waveform);
col=0;
is_note=FALSE;
OrgPushMode(org_octave);
break;
default:
is_note=FALSE;
@@ -1946,8 +1835,6 @@ got_msg:
tempo->type=OT_NOTE;
tempo->note=note;
tempo->octave=octave;
tempo->accent=0;
tempo->waveform=org_waveform;
if (st[1]=='#')
Bts(&tempo->flags,Of_SHARP);
}
@@ -1961,6 +1848,7 @@ got_msg:
}
}
} while (ch!=CH_ESC && ch!=CH_SHIFT_ESC);
GetMsg(,,1<<MSG_KEY_UP);
} catch
CatchAll;
OrgPopMode;
@@ -1970,10 +1858,10 @@ got_msg:
Kill(play_task);
DCFill;
DCDel(oc.dc2);
DocClear;
SettingsPop;
if (DocCur) DocCur->flags=DocCur->flags&~DOCF_FORM|old_doc_flags&DOCF_FORM;
if (DocPut) DocPut->flags=DocPut->flags&~DOCF_FORM|old_doc_flags&DOCF_FORM;
Free(dirname);
"$$CL$$\n";
MenuPop;
}
"òÿÿÿñÿÿÿñÿÿÿ
@@ -2015,18 +1903,13 @@ got_msg:
 ?


 #þÿÿÿÖÿÿÿþÿÿÿ&Öÿÿÿ&␍Eúÿÿÿ úÿÿÿ
 ýÿÿÿ V ýÿÿÿ
 #þÿÿÿÖÿÿÿþÿÿÿ&Öÿÿÿ&␍Eúÿÿÿ úÿÿÿ
 ýÿÿÿ V ýÿÿÿ

␍␍

#ýÿÿÿýÿÿÿúÿÿÿúÿÿÿýÿÿÿEýÿÿÿýÿÿÿúÿÿÿúÿÿÿýÿÿÿýÿÿÿúÿÿÿ÷ÿÿÿ÷ÿÿÿúÿÿÿEþÿÿÿöÿÿÿöÿÿÿöÿÿÿòÿÿÿòÿÿÿþÿÿÿòÿÿÿôÿÿÿÿÿÿÿôÿÿÿò$ $ 0$0,444,,@$@<DDD<<|„„„||ltttll$À$ÄA$S4DDFTGdHtJ„K”L¤;´',E<RLTlU|IœP¬[¼]PPLTTTLL`$`p$p€$€�$� $ °$°À$Àœ¤¤¤œœ¬´´´¬¬¼ÄÄļ¼P$P0@Pp€ °À@
Eþÿÿÿöÿÿÿöÿÿÿöÿÿÿòÿÿÿòÿÿÿþÿÿÿòÿÿÿôÿÿÿÿÿÿÿôÿÿÿò$ $ 0$0,444,,@$@<DDD<<|„„„||ltttll$À$ÄA$S4DDFTGdHtJ„K”L¤;´',E<RLTlU|IœP¬[¼]PPLTTTLL`$`p$p€$€�$� $ °$°À$Àœ¤¤¤œœ¬´´´¬¬¼ÄÄļ¼P$P0@Pp€ °À@
~  
#ýÿÿÿýÿÿÿúÿÿÿúÿÿÿýÿÿÿEýÿÿÿýÿÿÿúÿÿÿúÿÿÿýÿÿÿýÿÿÿúÿÿÿ÷ÿÿÿ÷ÿÿÿúÿÿÿEúÿÿÿ úÿÿÿ
 ýÿÿÿ V ýÿÿÿ

␍␍

#þÿÿÿÖÿÿÿþÿÿÿ&Öÿÿÿ& P
 P

␍␍ 
-7
View File
@@ -1,7 +0,0 @@
#help_index "Games"
Cd("/TempleOS/Apps/Pilgrims");;
#include "Pilgrims"
#help_index ""
Binary file not shown.
-773
View File
@@ -1,773 +0,0 @@
/*
Ideas?
How about clouds and rain for crops?
How about achievement of Ben Franklin Almanac.
How about a shipping company office.
How about something like M.U.L.E.
How about turkey shoot.
Witch trials? Maybe, have God talk?
Seven Cities of Gold or the game, Civilization,
is what's expected but that's dull.
Rivals Spanish and French?
*/
$SP,"<1>",1$
$BG,14$
$SP,"<2>",2$
$SP,"<3>",3$
$SP,"<4>",4$
$SP,"<5>",5$
$BG,9$
$SP,"<6>",6$
$SP,"<7>",7$
$BG$
#define AFT_MAST 16
#define BOW_MAST 14
#define MAST_HEIGHT 20
#define AFT_LEN 36
#define BOW_LEN 43
#define BERTH 28
F64 screen_x,screen_y,d_screen_x,d_screen_y,
wind_speed,
//This is on a wave close to ship
//in world coordinates.
ship_wave_x,ship_wave_y,
church_x,church_y,
wave_speed,wave_é,d_wave_é,wave_period,
wave_amplitude;
Bool wave_sound,ship_landed;
F64 song_time,game_over_time;
F64 view_scale,new_view_scale;
CDC *master_map;
U8 *vm;
F64 men;
#define NUM_DOLPHINS 5
#define NUM_PIGRAIMS 10
class Obj
{
F64 x,y,radius,
é,d_é,
speed;
} ship,dolphins[NUM_DOLPHINS],pilgrims[NUM_PIGRAIMS];
#define MAX_BUBBLES 1024
class Bubble
{
I32 x,y;
} bubbles[MAX_BUBBLES];
#define MAX_GARDENS 128
class Garden
{
I32 x,y;
} gardens[MAX_GARDENS];
I64 num_gardens;
F64 WaterHeight(F64 x,F64 y)
{ //Returns wave height at world coordinate pt
F64 dxn=Cos(wave_é),
dyn=Sin(wave_é),é;
é=2*ã*((x-ship_wave_x)*dxn+(y-ship_wave_y)*dyn)/wave_period;
return wave_amplitude*Cos(é);
}
I64 *ShipMat()
{ //Returns rotation matrix for ship bobbing on waves
F64 x1,y1,z1,x2,y2,z2,a;
I64 *result;
x1=ship.x-AFT_LEN/2*Cos(ship.é)/view_scale;
y1=ship.y-AFT_LEN/2*Sin(ship.é)/view_scale;
z1=WaterHeight(x1,y1);
x2=ship.x+BOW_LEN/2*Cos(ship.é)/view_scale;
y2=ship.y+BOW_LEN/2*Sin(ship.é)/view_scale;
z2=WaterHeight(x2,y2);
a=ASin((z2-z1)/((AFT_LEN/2+BOW_LEN/2)/view_scale));
result=GrRotY(a);
z1=WaterHeight(ship.x,ship.y);
x2=ship.x-BERTH/2*Sin(ship.é)/view_scale;
y2=ship.y+BERTH/2*Cos(ship.é)/view_scale;
z2=WaterHeight(x2,y2);
a=ASin((z2-z1)/(BERTH/view_scale));
GrRotXEqu(result,a);
GrRotZEqu(result,ship.é);
return result;
}
U0 BubbleAdd(I64 x,I64 y)
{
I64 i=RandU16&(MAX_BUBBLES-1);
bubbles[i].x=x;
bubbles[i].y=y;
}
U0 PosChurch(F64 x,F64 y)
{
I64 i;
CDC *dc=DCAlias(master_map,Fs);
dc->color =ROP_COLLISION;
dc->bkcolor=BLACK;
while (x>0) {
dc->collision_cnt=0;
SpritePlot3(dc,x,y,0,$IB,"<2>",2$);
if (dc->collision_cnt>2000)
break;
x--;
}
church_x=x; church_y=y;
DCDel(dc);
for (i=0;i<NUM_PIGRAIMS;i++) {
pilgrims[i].x=church_x;
pilgrims[i].y=church_y;
pilgrims[i].é=2*ã*Rand;
pilgrims[i].d_é=0;
pilgrims[i].speed=10.0;
}
}
U0 DrawIt(CTask *task,CDC *dc)
{
I64 i,
w=task->win_pixel_width, cx=w>>1,
h=task->win_pixel_height,cy=h>>1,
c=1.05*(MaxI64(cx,cy)+wave_period),
*ship_r,x,y,z;
F64 d,xx,yy,dx,dy,dx2,dy2,wave_x,wave_y;
Bool bow_down;
task->text_attr=LTBLUE<<4;
//Draw Bubbles
dc->color=BLUE;
for (i=0;i<MAX_BUBBLES;i++)
GrPlot(dc,bubbles[i].x*view_scale-screen_x,bubbles[i].y*view_scale-screen_y);
//Draw Waves
wave_x=ship_wave_x*view_scale-screen_x;
wave_y=ship_wave_y*view_scale-screen_y;
dx=wave_period*Cos(wave_é)*view_scale;
dy=wave_period*Sin(wave_é)*view_scale;
dx2=-dy*c;
dy2=dx*c;
dc->color=BLUE;
if (Abs(dx)>Abs(dy)) {
xx=wave_x; yy=wave_y;
while (xx>-c) {
GrLine(dc,xx-dx2,yy-dy2,xx+dx2,yy+dy2);
if (dx>0) { xx-=dx; yy-=dy;
} else { xx+=dx; yy+=dy; }
}
xx=wave_x; yy=wave_y;
while (xx<w+c) {
GrLine(dc,xx-dx2,yy-dy2,xx+dx2,yy+dy2);
if (dx<0) { xx-=dx; yy-=dy;
} else { xx+=dx; yy+=dy; }
}
} else {
xx=wave_x; yy=wave_y;
while (yy>-c) {
GrLine(dc,xx-dx2,yy-dy2,xx+dx2,yy+dy2);
if (dy>0) { xx-=dx; yy-=dy;
} else { xx+=dx; yy+=dy; }
}
xx=wave_x; yy=wave_y;
while (yy<h+c) {
GrLine(dc,xx-dx2,yy-dy2,xx+dx2,yy+dy2);
if (dy<0) { xx-=dx; yy-=dy;
} else { xx+=dx; yy+=dy; }
}
}
//Draw Dolphins
for (i=0;i<NUM_DOLPHINS;i++)
SpritePlotRotZ3b(dc,dolphins[i].x*view_scale-screen_x,dolphins[i].y*view_scale-screen_y,0,$IB,"<7>",7$,dolphins[i].é);
//Draw Land
dc->color=ROP_MONO+YELLOW;
VectMapBlotMP(dc,-screen_x,-screen_y,vm,view_scale);
//Draw Ship
dc->color=ROP_EQU;
ship_r=ShipMat;
SpritePlotRotMat3b(dc,ship.x*view_scale-screen_x,ship.y*view_scale-screen_y,0,$IB,"<6>",6$,ship_r);
//Rudder
x=-AFT_LEN; y=0; z=0;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=BLACK;
dc->pen_width=2;
GrLine3(dc,x-screen_x,y-screen_y,0,x-8*Cos(ship.é-2.5*ship.d_é)-screen_x,y-8*Sin(ship.é-2.5*ship.d_é)-screen_y,0);
dc->pen_width=1;
//Wake
x=(-(AFT_LEN+2)+RandU16%13-6)/view_scale; y=(RandU16%13-6)/view_scale; z=0;
GrRot(ship_r,&x,&y,&z);
x+=ship.x; y+=ship.y;
BubbleAdd(x,y);
for (i=0;i<NUM_DOLPHINS;i++) {
if (!(RandU16&15)) {
x=dolphins[i].x-(7*Cos(dolphins[i].é)+RandU16%3-1)/view_scale;
y=dolphins[i].y-(7*Sin(dolphins[i].é)+RandU16%3-1)/view_scale;
BubbleAdd(x,y);
}
}
//Draw Sails
d=Wrap(ship.é-Wrap(wave_é,ship.é-ã));
if (Abs(d)<ã)
d=(Abs(d)-ã)*Sign(-d);
dx=-1.5*BERTH/2*Sin(ship.é+d/2);
dy= 1.5*BERTH/2*Cos(ship.é+d/2);
x=BOW_MAST; y=0; z=0;
GrRot(ship_r,&x,&y,&z);
if (z<0)
bow_down=TRUE;
else
bow_down=FALSE;
//Aft Sail
x=-AFT_MAST; y=0; z=0;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=BLACK;
GrLine3(dc,x-dx-screen_x,y-dy-screen_y,0,x+dx-screen_x,y+dy-screen_y,0);
xx=x-screen_x; yy=y-screen_y;
if (!bow_down) {
x=-AFT_MAST; y=0; z=MAST_HEIGHT;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=DKGRAY;
dc->pen_width=4;
GrLine3(dc,x-screen_x,y-screen_y,0,xx,yy,0);
}
dc->pen_width=2;
for (d=0;d<MAST_HEIGHT;d+=0.5) {
x=-AFT_MAST; y=0; z=d;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
x-=1.5*Cos(wave_é); y-=1.5*Sin(wave_é);
dc->color=WHITE;
GrLine3(dc,x-dx-screen_x,y-dy-screen_y,0,x+dx-screen_x,y+dy-screen_y,0);
}
dc->pen_width=1;
x=-AFT_MAST; y=0; z=MAST_HEIGHT;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=BLACK;
GrLine3(dc,x-dx-screen_x,y-dy-screen_y,0,x+dx-screen_x,y+dy-screen_y,0);
if (bow_down) {
x=-AFT_MAST; y=0; z=MAST_HEIGHT;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=DKGRAY;
dc->pen_width=4;
GrLine3(dc,x-screen_x,y-screen_y,0,xx,yy,0);
}
dc->color=BLACK;
dc->pen_width=1;
GrCircle3(dc,x-screen_x,y-screen_y,0,2);
//Bow Sail
x=BOW_MAST; y=0; z=0;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=BLACK;
GrLine3(dc,x-dx-screen_x,y-dy-screen_y,0,x+dx-screen_x,y+dy-screen_y,0);
xx=x-screen_x; yy=y-screen_y;
if (!bow_down) {
x=BOW_MAST; y=0; z=MAST_HEIGHT;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=DKGRAY;
dc->pen_width=4;
GrLine3(dc,x-screen_x,y-screen_y,0,xx,yy,0);
}
dc->pen_width=2;
for (d=0;d<MAST_HEIGHT;d+=0.5) {
x=BOW_MAST; y=0; z=d;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
x-=1.5*Cos(wave_é); y-=1.5*Sin(wave_é);
dc->color=WHITE;
GrLine3(dc,x-dx-screen_x,y-dy-screen_y,0,x+dx-screen_x,y+dy-screen_y,0);
}
dc->pen_width=1;
x=BOW_MAST; y=0; z=MAST_HEIGHT;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=BLACK;
GrLine3(dc,x-dx-screen_x,y-dy-screen_y,0,x+dx-screen_x,y+dy-screen_y,0);
if (bow_down) {
x=BOW_MAST; y=0; z=MAST_HEIGHT;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
dc->color=DKGRAY;
dc->pen_width=4;
GrLine3(dc,x-screen_x,y-screen_y,0,xx,yy,0);
}
dc->color=BLACK;
dc->pen_width=1;
GrCircle3(dc,x-screen_x,y-screen_y,0,2);
dc->color=BLACK;
GrPrintF(dc,0,0,"Speed:%5.1f Knots",ship.speed);
GrPrintF(dc,0,FONT_HEIGHT,"Men:%f",men);
//Check for wreck
x=BOW_LEN; y=0; z=0;
GrRot(ship_r,&x,&y,&z);
x+=ship.x*view_scale; y+=ship.y*view_scale;
if (!ship_landed && GrPeek(dc,x-screen_x,y-screen_y)==YELLOW) {
Noise(500,500,1000);
song_time =tT+0.5;
game_over_time=tT+1.0;
wave_sound=FALSE;
ship_landed=TRUE;
PosChurch(x/view_scale,y/view_scale);
}
if (ship_landed) {
//Draw Gardens
for (i=0;i<MAX_GARDENS;i++)
SpritePlot3(dc,gardens[i].x*view_scale-screen_x,gardens[i].y*view_scale-screen_y,0,$IB,"<5>",5$);
//Draw Church
SpritePlot3(dc,church_x*view_scale-screen_x,church_y*view_scale-screen_y,0,$IB,"<2>",2$);
//Draw Pilgrims
for (i=0;i<NUM_PIGRAIMS;i++)
SpritePlot3(dc,pilgrims[i].x*view_scale-screen_x,pilgrims[i].y*view_scale-screen_y,0,(i&1)?$IB,"<3>",3$:$IB,"<4>",4$);
if (tT>game_over_time && Blink) {
dc->color=LTRED;
GrPrintF(dc,(task->win_pixel_width-14*FONT_WIDTH)/2,
(task->win_pixel_height-FONT_HEIGHT)/2,"Game Completed");
}
}
Free(ship_r);
}
CColorROPU32 pray_colors[1]={RED};
CTask *pray_task;
U0 LeftClickPrayButton(CCtrl *,I64,I64,Bool down)
{ //$LK-A,"::/TempleOS/Apps/AfterEgypt/AENotes.TXT"$
I64 i,size,l=512;
U8 *bible_filename,*buf;
if (down && !TaskValidate(pray_task)) {
bible_filename=Define("ST_BIBLE_FILE");
if (buf=FileRead(bible_filename,&size)) {
i=GetTimeStamp>>4%(size-l);
buf[i+l]=0;
pray_task=PopUpViewStr(buf+i);
Free(buf);
}
}
}
U0 Init()
{
I64 i;
Fs->draw_it=NULL;
Kill(Fs->song_task);
Fs->song_task=NULL;
WinMgrSync;
men=102.0;
pray_task=NULL;
screen_x=400; d_screen_x=0;
screen_y=500; d_screen_y=0;
view_scale=1.0; new_view_scale=1.0;
MemSetU32(&bubbles,MAX_I32,sizeof(bubbles)/sizeof(U32));
num_gardens=0;
MemSetU32(&gardens,MAX_I32,sizeof(gardens)/sizeof(U32));
MemSet(&dolphins,0,sizeof(dolphins));
for (i=0;i<NUM_DOLPHINS;i++) {
dolphins[i].radius =5;
dolphins[i].x =screen_x+Rand*(GR_WIDTH-2*dolphins[i].radius)+dolphins[i].radius;
dolphins[i].y =screen_y+Rand*(GR_WIDTH-2*dolphins[i].radius)+dolphins[i].radius;
dolphins[i].é =Rand*2*ã;
dolphins[i].d_é=0;
dolphins[i].speed =15;
}
MemSet(&ship,0,sizeof(ship));
ship.radius =MaxI64(AFT_LEN,BOW_LEN);
ship.x =screen_x+GR_WIDTH/2-ship.radius;
ship.y =screen_y+GR_HEIGHT/2;
ship.é =ã;
ship.d_é=0;
ship.speed =1.0;
ship_wave_x=0; ship_wave_y=0;
wave_é=Rand*ã*2;
d_wave_é=0;
wave_amplitude=10;
wave_period=75;
wave_speed=20*2*ã/wave_period;
wind_speed=25;
wave_sound=TRUE;
ship_landed=FALSE;
song_time=0;
game_over_time=0;
Fs->draw_it=&DrawIt;
}
U0 AnimateObj(Obj *tempo,F64 dt)
{
tempo->x+=tempo->speed*dt*Cos(tempo->é);
tempo->y+=tempo->speed*dt*Sin(tempo->é);
tempo->é=Wrap(tempo->é+tempo->d_é*dt);
tempo->d_é=LowPass1(0.5,tempo->d_é,0,dt);
}
U0 SongTask(I64)
{
Fs->task_end_cb=&SndTaskEndCB;
MusicSettingsRst;
music_tempo= 2.480;
music_stacatto_factor= 0.902;
Play("M3/4");
Play("hRW13qDhG4eB3G");
Play("4hBqA3hGqE");
Play("hDqDhG4eB3G");
Play("4hBqAh.DhD");
Fs->parent_task->song_task=NULL;
}
#define SCREEN_BUMP 100
U0 AnimateTask(I64)
{
I64 i,j,
w=Fs->parent_task->win_pixel_width, cx=w/2,
h=Fs->parent_task->win_pixel_height, cy=h/2;
F64 die_timer=0,d,dx,dy,dx2,dy2,dxn,dyn,t0=tT,dt,old_view_scale;
while (TRUE) {
if (TaskValidate(pray_task)) {
while (TaskValidate(pray_task))
WinMgrSync;
pray_task=NULL;
t0=tT;
}
dt=tT-t0;
t0=tT;
for (die_timer+=dt;die_timer>0.1;die_timer-=0.1)
if (Rand<0.05)
men*=Exp(-0.05*(Rand+0.05)`20);
old_view_scale=view_scale;
view_scale=Exp(0.5*dt*(Ln(new_view_scale)-Ln(view_scale))+Ln(view_scale));
screen_x=(screen_x+cx)*view_scale/old_view_scale-cx;
screen_y=(screen_y+cy)*view_scale/old_view_scale-cy;
for (i=0;i<NUM_DOLPHINS;i++) {
dolphins[i].d_é+=10.0*(Rand-0.5)*dt;
AnimateObj(&dolphins[i],dt);
if (dolphins[i].x-screen_x<dolphins[i].radius)
dolphins[i].x+=(w-2*dolphins[i].radius)/view_scale;
if (dolphins[i].x-screen_x>w-1-dolphins[i].radius)
dolphins[i].x-=(w-2*dolphins[i].radius)/view_scale;
if (dolphins[i].y-screen_y<dolphins[i].radius)
dolphins[i].y+=(h-2*dolphins[i].radius)/view_scale;
if (dolphins[i].y-screen_y>h-1-dolphins[i].radius)
dolphins[i].y-=(h-2*dolphins[i].radius)/view_scale;
}
if (ship_landed) {
for (i=0;i<NUM_PIGRAIMS;i++) {
pilgrims[i].d_é+=10.0*(Rand-0.5)*dt;
AnimateObj(&pilgrims[i],dt);
if (GrPeek(master_map,pilgrims[i].x,pilgrims[i].y)!=1) {
pilgrims[i].speed=-pilgrims[i].speed;
AnimateObj(&pilgrims[i],dt);
} else if (!(ToI64(pilgrims[i].x)&15) && !(ToI64(pilgrims[i].y)&15)) {
for (j=0;j<MAX_GARDENS;j++)
if (gardens[j].x==ToI64(pilgrims[i].x)&&
gardens[j].y==ToI64(pilgrims[i].y))
break;
if (j==MAX_GARDENS) {
gardens[num_gardens &(MAX_GARDENS-1)].x=pilgrims[i].x;
gardens[num_gardens++&(MAX_GARDENS-1)].y=pilgrims[i].y;
}
}
}
if (church_x*view_scale-screen_x-0.9*d_screen_x<w/4)
d_screen_x-=SCREEN_BUMP;
if (church_x*view_scale-screen_x-0.9*d_screen_x>w-1-w/4)
d_screen_x+=SCREEN_BUMP;
if (church_y*view_scale-screen_y-0.9*d_screen_y<h/4)
d_screen_y-=SCREEN_BUMP;
if (church_y*view_scale-screen_y-0.9*d_screen_y>h-1-h/4)
d_screen_y+=SCREEN_BUMP;
} else {
d=Wrap(ship.é-Wrap(wave_é,ship.é-ã));
if (Abs(d)<ã)
d=(Abs(d)-ã)*Sign(-d);
d=wind_speed*Cos(d/2);
ship.speed=LowPass1(0.25,ship.speed,d,dt);
AnimateObj(&ship,dt);
if (ship.x*view_scale-screen_x-0.9*d_screen_x<w/4)
d_screen_x-=SCREEN_BUMP;
if (ship.x*view_scale-screen_x-0.9*d_screen_x>w-1-w/4)
d_screen_x+=SCREEN_BUMP;
if (ship.y*view_scale-screen_y-0.9*d_screen_y<h/4)
d_screen_y-=SCREEN_BUMP;
if (ship.y*view_scale-screen_y-0.9*d_screen_y>h-1-h/4)
d_screen_y+=SCREEN_BUMP;
if (ship.x<0) ship.x=0;
if (ship.y<0) ship.y=0;
}
if (screen_x<0) {
screen_x=0;
d_screen_x=0;
}
if (screen_y<0) {
screen_y=0;
d_screen_x=0;
}
wave_é=Wrap(wave_é+d_wave_é*dt);
d_wave_é=Limit(LowPass1(1.0,d_wave_é,
d_wave_é+1.0*(Rand-0.5),dt),-0.05,0.05);
screen_x+=0.9*d_screen_x*dt;
d_screen_x-=0.9*d_screen_x*dt;
screen_y+=0.9*d_screen_y*dt;
d_screen_y-=0.9*d_screen_y*dt;
dxn=Cos(wave_é);
dyn=Sin(wave_é);
dx=wave_period*dxn;
dy=wave_period*dyn;
ship_wave_x-=wave_speed*dt/(2*ã)*dx;
ship_wave_y-=wave_speed*dt/(2*ã)*dy;
if (Abs(dx)>Abs(dy)) {
i=(ship_wave_x-ship.x)/dx;
ship_wave_x-=i*dx;
ship_wave_y-=i*dy;
dx2=ship_wave_x-ship.x;
dy2=ship_wave_y-ship.y;
d=dyn*dx2-dxn*dy2;
ship_wave_x-=dyn*d;
ship_wave_y+=dxn*d;
} else {
i=(ship_wave_y-ship.y)/dy;
ship_wave_x-=i*dx;
ship_wave_y-=i*dy;
dx2=ship_wave_x-ship.x;
dy2=ship_wave_y-ship.y;
d=dyn*dx2-dxn*dy2;
ship_wave_x-=dyn*d;
ship_wave_y+=dxn*d;
}
if (wave_sound)
Snd(200+8*WaterHeight(ship.x,ship.y));
else if (song_time && tT>song_time) {
Kill(Fs->parent_task->song_task);
Fs->parent_task->song_task=Spawn(&SongTask,NULL,"Song",Fs->parent_task);
song_time=0;
}
WinMgrSync;
}
}
U0 Pilgrims()
{
I64 msg_code,ch,sc;
CCtrl *bt_pray;
"Initializing Maps...\n";
master_map=GRARead("NewEngland"); //See $LK,"Acknowledgements","FF:::/TempleOS/Doc/Acknowledgements.TXT,US Geological"$ (7).
vm=DC2VectMap(master_map);
PopUpOk("This is about the pilgrims who fled\n"
"religious persecution in England.\n"
"They sailed in 1620 on the Mayflower\n"
"and landed at Plymouth, Massachusetts.\n"
"\n"
"This game is comic, mostly. Be sure\n"
"to try 'z' or 'Z' for zooming.\n");
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
MenuPush(
"File {"
" Abort(,CH_SHIFT_ESC);"
" Exit(,CH_ESC);"
"}"
"Play {"
" Restart(,'\n');"
" Pray(,'p');"
" Port(,,SC_CURSOR_LEFT);"
" Starboard(,,SC_CURSOR_RIGHT);"
"}"
"View {"
" ZoomIn(,'z');"
" ZoomOut(,'Z');"
"}"
);
WordStat;
Preempt(OFF);
bt_pray=CtrlButtonNew(0,2.5*FONT_HEIGHT,,,,"Pray\0",pray_colors),
bt_pray->left_click=&LeftClickPrayButton;
WinMax;
DocCursor;
DocClear;
Fs->song_task=NULL;
Init;
Fs->animate_task=Spawn(&AnimateTask,NULL,"Animate",Fs);
try {
while (TRUE) {
switch (msg_code=GetMsg(&ch,&sc,1<<MSG_KEY_DOWN|1<<MSG_KEY_UP)) {
case MSG_KEY_DOWN:
switch (ch) {
case 0:
switch (sc.u8[0]) {
case SC_CURSOR_LEFT:
ship.d_é=Limit(ship.d_é-5*ã/180,-.5,.5);
break;
case SC_CURSOR_RIGHT:
ship.d_é=Limit(ship.d_é+5*ã/180,-.5,.5);
break;
}
break;
case 'p':
LeftClickPrayButton(NULL,0,0,TRUE);
break;
case 'z':
if (new_view_scale<10.0)
new_view_scale*=1.5;
break;
case 'Z':
if (new_view_scale>0.1)
new_view_scale/=1.5;
break;
case '\n':
Init;
break;
case CH_ESC:
case CH_SHIFT_ESC:
goto pilgrim_done;
}
break;
}
}
pilgrim_done:
} catch
CatchAll;
MenuPop;
SettingsPop;
CtrlButtonDel(bt_pray);
VectMapDel(vm);
DCDel(master_map);
}
 X#Õÿÿÿðÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
øÿÿÿúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿB/! êÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿJ1Aõÿÿÿ½ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿLine truncated
ÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿ

ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
-2
View File
@@ -1,2 +0,0 @@
#include "/TempleOS/Apps/Pilgrims/Load"
Pilgrims;
+1 -1
View File
@@ -51,4 +51,4 @@ class SpanAnimateStruct
extern MyMass PlaceMass(I64 x, I64 y);
extern F64 SpanTime(CTask *task);
extern F64 SpanTime();
+14 -22
View File
@@ -2,7 +2,7 @@
#define SPRING_SCALE 6.0e6
#define COST_SCALE 375.0
#define MASS_RADIUS 3.0
#define MASS_WEIGHT 10.0
#define MASS_MASS 10.0
#define WIRE_PERCENT 0.99
#define RIVER_BANK_COLS 5
@@ -44,28 +44,20 @@ U0 SpanBridge1Init(CMathODE *)
tempm->color=RED;
}
"$$CL$$$$BG,LTCYAN$$";
NewLine(SKY_LINES);
DocClear;
"$$BG,LTCYAN$$"; NewLine(SKY_LINES);
for (i=0;i<10;i++) {
"$$BG,BROWN$$";
Spaces(RIVER_BANK_COLS);
"$$BG,LTCYAN$$";
Spaces(TEXT_COLS-2*RIVER_BANK_COLS);
"$$BG,BROWN$$";
Spaces(RIVER_BANK_COLS);
"$$BG,BROWN$$"; Spaces(RIVER_BANK_COLS);
"$$BG,LTCYAN$$"; Spaces(TEXT_COLS-2*RIVER_BANK_COLS);
"$$BG,BROWN$$"; Spaces(RIVER_BANK_COLS);
NewLine;
}
for (i=0;i<5;i++) {
"$$BG,BROWN$$";
Spaces(RIVER_BANK_COLS+i);
"$$BG,BLUE$$";
Spaces(TEXT_COLS/2-RIVER_BANK_COLS-2*i);
"$$BG,BROWN$$";
Spaces(2*i);
"$$BG,BLUE$$";
Spaces(TEXT_COLS/2-RIVER_BANK_COLS-2*i);
"$$BG,BROWN$$";
Spaces(RIVER_BANK_COLS+i);
for (i=0;i<5;i++) {
"$$BG,BROWN$$"; Spaces(RIVER_BANK_COLS+i);
"$$BG,BLUE$$"; Spaces(TEXT_COLS/2-RIVER_BANK_COLS-2*i);
"$$BG,BROWN$$"; Spaces(2*i);
"$$BG,BLUE$$"; Spaces(TEXT_COLS/2-RIVER_BANK_COLS-2*i);
"$$BG,BROWN$$"; Spaces(RIVER_BANK_COLS+i);
NewLine;
}
}
@@ -73,7 +65,7 @@ U0 SpanBridge1Init(CMathODE *)
U0 AdjustLoads(CTask *task,CMathODE *ode)
{
MyMass *tempm=ode->next_mass;
F64 d,tt=SpanTime(task)/10.0;
F64 d,tt=SpanTime/10.0;
while (tempm!=&ode->next_mass) {
if (tempm->load_t) {
if (tt) {
@@ -81,7 +73,7 @@ U0 AdjustLoads(CTask *task,CMathODE *ode)
tempm->mass=100.0*Sqr(Sqr(d+1.0));
tempm->radius=7.0*d+2.0;
} else {
tempm->mass=MASS_WEIGHT;
tempm->mass=MASS_MASS;
tempm->radius=MASS_RADIUS;
}
}
+10 -13
View File
@@ -86,7 +86,7 @@ MyMass PlaceMass(I64 x, I64 y)
tempm->drag_profile_factor=1.0;
tempm->x=x;
tempm->y=y;
tempm->mass=MASS_WEIGHT;
tempm->mass=MASS_MASS;
tempm->radius=MASS_RADIUS;
tempm->cost=25.0*COST_SCALE;
tempm->color=YELLOW;
@@ -243,11 +243,11 @@ U0 AnimateTask(SpanAnimateStruct *a)
U0 Init(SpanAnimateStruct *a)
{
SpanDel(ode);
ode=SpanNew;
run_button.state=0;
WinMgrSync; //Allow stop to register in animate task.
WinMgrSync;
WinMgrSync(2); //Allow stop to register in animate task.
if (a->saved_ode)
SpanLoad(ode,a->saved_ode);
@@ -264,7 +264,7 @@ U0 SongTask(I64)
music_tempo= 3.636;
music_stacatto_factor= 0.902;
while (TRUE) {
Play("W13q.EeDqED2G3DhE");
Play("3q.EeDqED2G3DhE");
Play("q.EeDqED2G3DhE");
Play("q.FeEFEqF2G3EhF");
Play("q.FeEFEqF2G3EhF");
@@ -281,8 +281,9 @@ U0 Span()
CDC *dc=DCAlias;
SettingsPush; //See $LK,"SettingsPush","MN:SettingsPush"$
Fs->text_attr=BROWN<<4+BLACK;
WinMax;
Fs->song_task=Spawn(&SongTask,NULL,"Song",Fs);
Fs->song_task=Spawn(&SongTask,NULL,"Song",,Fs);
bt_run =CtrlButtonNew(0,0, 80,,2,"Stopped\0Running\0",run_colors,&run_button),
bt_snap=CtrlButtonNew(0,2.5*FONT_HEIGHT,80,,2,"Snap Off\0Snap On\0",snap_colors,&snap_button),
@@ -329,8 +330,9 @@ U0 Span()
"}"
);
ode=NULL;
Init(&a);
Fs->animate_task=Spawn(&AnimateTask,&a,"Animate",Fs);
Fs->animate_task=Spawn(&AnimateTask,&a,"Animate",,Fs);
Fs->draw_it=&DrawIt;
PopUpOk(
@@ -424,11 +426,9 @@ U0 Span()
Free(a.saved_ode);
a.saved_ode=SpanSave(ode);
}
SpanDel(ode);
Init(&a);
break;
case CH_CTRLN:
SpanDel(ode);
Free(a.saved_ode);
a.saved_ode=NULL;
Init(&a);
@@ -437,7 +437,6 @@ U0 Span()
if (src=SpanRead) {
Free(a.saved_ode);
a.saved_ode=src;
SpanDel(ode);
Init(&a);
}
break;
@@ -446,7 +445,6 @@ U0 Span()
Free(a.saved_ode);
a.saved_ode=SpanSave(ode);
}
SpanDel(ode);
Init(&a);
SpanWrite(ode);
break;
@@ -479,7 +477,6 @@ U0 Span()
Free(a.saved_ode);
a.saved_ode=SpanSave(ode);
}
SpanDel(ode);
Init(&a);
SpanWrite(ode);
case CH_SHIFT_ESC:
@@ -489,8 +486,10 @@ U0 Span()
}
}
span_done: //Don't goto out of try
GetMsg(,,1<<MSG_KEY_UP);
} catch
CatchAll;
DocClear;
SettingsPop;
CtrlButtonDel(bt_run);
CtrlButtonDel(bt_mode);
@@ -499,6 +498,4 @@ span_done: //Don't goto out of try
DCFill(dc);
DCDel(dc);
MenuPop;
DocBottom;
"$$CL$$$$BG$$\n";
}
+8 -8
View File
@@ -1,26 +1,26 @@
CMathODE *SpanNew()
{
ode=ODENew(0,1e-4,ODEF_HAS_MASSES|ODEF_PAUSED);
CMathODE *ode=ODENew(0,1e-4,ODEF_HAS_MASSES|ODEF_PAUSED);
ode->derivative=&MyDerivative;
ode->drag_v2=0.002;
ode->drag_v3=0.00001;
ode->acceleration_limit=5e3;
QueIns(ode,Fs->last_ode);
return ode;
}
U0 SpanDel(CMathODE *ode)
{
QueRem(ode);
QueDel(&ode->next_mass,TRUE);
QueDel(&ode->next_spring,TRUE);
ODEDel(ode);
if (ode) {
QueRem(ode);
QueDel(&ode->next_mass,TRUE);
QueDel(&ode->next_spring,TRUE);
ODEDel(ode);
}
}
#define M_SIZE (sizeof(MyMass)-offset(CMass.start_saved_area))
#define M_SIZE (sizeof(MyMass) -offset(CMass.start_saved_area))
#define S_SIZE (sizeof(MySpring)-offset(CSpring.start_saved_area))
U8 *SpanSave(CMathODE *ode,I64 *_size=NULL)
+1 -1
View File
@@ -74,7 +74,7 @@ U0 Zoom(F64 d)
d=Exp(Ln(d)/ZOOM_STEPS);
for (i=0;i<ZOOM_STEPS;i++) {
S2W(x,y,&wx,&wy);
zoom*=d;
zoom=Limit(zoom*d,0.02,50);
W2S(wx,wy,&sx,&sy);
task->win_scroll_x=ipx-sx-task->win_pixel_left;
task->win_scroll_y=ipy-sy-task->win_pixel_top;
-2
View File
@@ -1,2 +0,0 @@
MkDir("HOME/Tanks");
-1
View File
@@ -1 +0,0 @@
#include "/TempleOS/Apps/Tanks/Tanks"
-2
View File
@@ -1,2 +0,0 @@
#include "/TempleOS/Apps/Tanks/Load"
Tanks;
+4 -3
View File
@@ -1,5 +1,6 @@
MkDir("HOME/TimeClock");
"$$CL$$After Loading, type $$FG,GREEN$$PunchIn;$$FG$$, "
"$$FG,GREEN$$PunchOut;$$FG$$ or $$FG,GREEN$$TimeRep;$$FG$$"
" You might want to make PLUGINS for hot keys.\n\n\n";
DocClear;
"After Loading, type $$FG,GREEN$$PunchIn;$$FG$$, "
"$$FG,GREEN$$PunchOut;$$FG$$ or $$FG,GREEN$$TimeRep;$$FG$$\n"
"You might want to make PLUGINS for hot keys.\n\n\n";
+4 -4
View File
@@ -85,7 +85,7 @@ public Bool TimeRep(TimeEntry **_header=NULL)
if (week!=cur_week) {
if (!first) {
if (is_in)
week_total+=GetCurTimeCDate;
week_total+=GetCurTimeDate;
"Week Total:%h7T\n",week_total;
} else
first=FALSE;
@@ -107,7 +107,7 @@ public Bool TimeRep(TimeEntry **_header=NULL)
tempt=tempt->next;
}
if (is_in)
week_total+=GetCurTimeCDate;
week_total+=GetCurTimeDate;
"$$FG,RED$$Week Total:%h7T$$FG$$\n",week_total;
if (!_header)
TimeEntriesDel(header);
@@ -124,7 +124,7 @@ public U0 PunchOut()
else {
tempt=MAlloc(sizeof(TimeEntry));
tempt->type=TET_PUNCH_OUT;
tempt->datetime=GetCurTimeCDate;
tempt->datetime=GetCurTimeDate;
"\nEnter Description.\nPress <ESC> when done.\n";
if (!(tempt->desc=MGetS(GETSF_WITH_NEW_LINE)))
tempt->desc=CAlloc(1);
@@ -144,7 +144,7 @@ public U0 PunchIn()
else {
tempt=MAlloc(sizeof(TimeEntry));
tempt->type=TET_PUNCH_IN;
tempt->datetime=GetCurTimeCDate;
tempt->datetime=GetCurTimeDate;
"\nEnter Description.\nPress <ESC> when done.\n";
if (!(tempt->desc=MGetS(GETSF_WITH_NEW_LINE)))
tempt->desc=CAlloc(1);
+5
View File
@@ -0,0 +1,5 @@
#help_index "Games"
#include "/TempleOS/Apps/TimeOut/TimeOut"
#help_index ""
+2
View File
@@ -0,0 +1,2 @@
#include "/TempleOS/Apps/TimeOut/Load"
TimeOut;
Loaded 100 of 617 files, more files were not shown because too many files have changed in this diff. Show more