PT_ wrote:
the only thing I need to do is doing weird stuff with C functions and get that working
After you finish off putting this in C, how easy would it be to add your own C (or ASM) functions to the ICE compiler?
minY : ExecHex(
maxY : DefineSprite(
: Call
Σy : CompilePrgm(
Σy² : SetBASICVar(
Sy : GetBASICVar(
[i]FAIL
(C*C)/(S*S)-(D*D)/(S*S)+(G*S)/(S*S)→E
2*C*D/SS+HS/SS→F
If (((E*E)+(F*F))/(S*S)))>4
det(2,1+remainder(θ,256)
det(6,A,B
100→θ
End
[i]FAIL
If L₆(2)≤L₂(2)
End
AAA
det(0)
det(5,255
det(2,100
det(42,0,0,100,100
det(2,20
det(43,0,0,10,10
det(36,0,0,10,10
0→G
Repeat G=15
getKey→G
If G=4
det(46,2
End
If G=1
det(45,2
End
If G=2
det(47,2
End
If G=3
det(48,2
End
End
det(1)
Lbl HIT
120->X
160->Y
remainder(rand,230)->V
0->Z
Y+10->L3(1)
Z+32->L3(2)
V+18->L3(3)
If L3(1)>=Z and L3(1)<=L3(2)
If X>=V and X<=L3(3)
det(18,"Hit!",70,180
End
End
Return
ClrHome
SetUpEditor ORG
ORG(1)->A
ORG(2)->H
ORG(3)->I
ORG(4)->J
ORG(5)->K
ORG(6)->L
ORG(7)->M
ORG(8)->N
ORG(9)->O
ORG(10)->S
Asm(prgmOREGON
Menu("Save Game?","Yes",A,"No",B)
Lbl A
Disp "SAVING..."
{A,H,I,J,K,L,M,N,O,S}->ORG
ClrHome
Disp "GAME SAVED!"
Lbl B
Disp "PRESS ANY KEY"
Pause
ClrHome
Disp "Thanks for playing!
Stop
[i]End Program
Lbl STOP
L1(1)->A
SetBASICVar(A,A
L1(2)->A
SetBASICVar(B,A
L1(3)->A
SetBASICVar(C,A
L1(4)->A
SetBASICVar(D,A
L1(5)->A
SetBASICVar(H,D
SetBASICVar(I,E
SetBASICVar(J,F
SetBASICVar(K,H
SetBASICVar(M,K
SetBASICVar(N,L
SetBASICVar(O,M
SetBASICVar(S,T
det(1
GetBASICVar(A,A
A->L1(1)
GetBASICVar(B,A
A->L1(2)
GetBASICVar(C,A
A->L1(3)
GetBASICVar(D,A
A->L1(4)
GetBASICVar(E,A
A->L1(5)
GetBASICVar(H,D
GetBASICVar(I,E
GetBASICVar(J,F
GetBASICVar(K,H
GetBASICVar(M,K
GetBASICVar(N,L
GetBASICVar(O,M
GetBASICVar(S,T
Goto SIZE
ClrHome
SetUpEditor ORG
ORG(1)->A
ORG(2)->H
ORG(3)->I
ORG(4)->J
ORG(5)->K
ORG(6)->L
ORG(7)->M
ORG(8)->N
ORG(9)->O
ORG(10)->S
Asm(prgmOREGON
Menu("Save Game?","Yes",A,"No",B)
Lbl A
Disp "SAVING..."
{A,H,I,J,K,L,M,N,O,S}->ORG
ClrHome
Disp "GAME SAVED!"
Lbl B
Disp "PRESS ANY KEY"
Pause
ClrHome
Disp "Thanks for playing!
Stop
[i]End Program
Lbl STOP
L1(1)->A
SetBASICVar(A,A
L1(2)->A
SetBASICVar(B,A
L1(3)->A
SetBASICVar(C,A
L1(4)->A
SetBASICVar(D,A
L1(5)->A
SetBASICVar(H,D
SetBASICVar(I,E
SetBASICVar(J,F
SetBASICVar(K,H
SetBASICVar(M,K
SetBASICVar(N,L
SetBASICVar(O,M
SetBASICVar(S,T
det(1
GetBASICVar(A,A
A->L1(1)
GetBASICVar(B,A
A->L1(2)
GetBASICVar(C,A
A->L1(3)
GetBASICVar(D,A
A->L1(4)
GetBASICVar(E,A
A->L1(5)
GetBASICVar(H,D
GetBASICVar(I,E
GetBASICVar(J,F
GetBASICVar(K,H
GetBASICVar(M,K
GetBASICVar(N,L
GetBASICVar(O,M
GetBASICVar(S,T
Goto SIZE
Advertisement