Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"prgm" command causes all string variables to return null #129

Open
calclover2514 opened this issue Apr 22, 2019 · 4 comments

Comments

@calclover2514
Copy link

@calclover2514 calclover2514 commented Apr 22, 2019

When I run a program with prgmPROGRAM from ICE, all string-type variables return null.
If what I am running is BASIC, using Ans and Str1-Str0 causes the ERROR: Undefined error to be thrown.

If ASM is being run from the BASIC program (via the Asm(prgmPROGRAM)), I cannot access any AppVars at all, and though they do not return 0, they return null and the program suddenly exits.

I am not sure if this is an error with ICE, or if it is a problem with the C toolchain.
If it is an error with the C toolchain, just tell me and I will open this issue there.

This is a pretty big error, and it would be amazing if someone could fix it.

Thanks,
calclover2514

@beckadamtheinventor

This comment has been minimized.

Copy link
Contributor

@beckadamtheinventor beckadamtheinventor commented Apr 22, 2019

If you are trying to access the OS strings from ICE, you will need to open them as you would open a program in ICE, just use the variable type 4, using it's token name in single quotes.
The "OS strings" in ICE are actually just a way of allocating memory within the program, and have no effect on the actual OS strings.
As for the Appvars, that's probably a bug.

@calclover2514

This comment has been minimized.

Copy link
Author

@calclover2514 calclover2514 commented Apr 22, 2019

You misunderstand me.
Running TI-BASIC from ICE with the prgm modifier causes TI-BASIC not to be able to access OS strings.
The same is true with ASM.
If I have a BASIC program containing :Asm(prgmASM), and I run it from ICE with :prgmBASIC, it makes the ASM program unable to access AppVars.

EDIT: This apparently only affects programs written in C or ICE, not ASM. It must be a single routine that this is affecting.

@PeterTillema

This comment has been minimized.

Copy link
Owner

@PeterTillema PeterTillema commented Apr 22, 2019

You should not run C programs from ICE, that's asking for problems.

All C programs clears the free RAM, which ICE uses to store strings and variables too, thus clearing literally all the variables, lists and strings in ICE.

@calclover2514

This comment has been minimized.

Copy link
Author

@calclover2514 calclover2514 commented Apr 22, 2019

Is there a way to clear all these things before running the program?
I already set it up to re-declare all the variables after execution of the program

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.