I went back a few weeks and the dll worked. I am doint tests for the new goto gosub!
It seems to work!
I can now jump inside blocks... but i found an issue. Well... not an issue, just maybe something that is not
entirely compatible with it.
I have this code (pluribasic, untranslated, but you get the idea):
int i = 0 ' initialize the variable manually
'goto manual ' manually initialized! jump in!
for (i = 0; i < 10; i++) {
stdout "normal: " + str$(i)
manual:
stdout "manual: " + str$(i)
}
stdout "done."
This code (correctly) outputs this:
normal: 0
manual: 0
normal: 1
manual: 1
normal: 2
manual: 2
normal: 3
manual: 3
normal: 4
manual: 4
normal: 5
manual: 5
normal: 6
manual: 6
normal: 7
manual: 7
normal: 8
manual: 8
normal: 9
manual: 9
done.
If i un-remark the GOTO assuming the i variable has been correctly initialized, and jump in the loop, it outputs this:
manual: 0
done.
But i was expecting this:
manual: 0
normal: 1
manual: 1
normal: 2
manual: 2
normal: 3
manual: 3
normal: 4
manual: 4
normal: 5
manual: 5
normal: 6
manual: 6
normal: 7
manual: 7
normal: 8
manual: 8
normal: 9
manual: 9
done.
How does for/next blocks work? Is the condition checked at th beggining or at the end of the for/next block? or both?
P.S. I understand that i am doing the equivalent of a 360 Inward Heelflip, but please bear with me.