Open programmer2514 opened 5 years ago
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.
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.
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.
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
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