Omnimaga

Calculator Community => TI Calculators => Axe => Topic started by: Yeong on September 12, 2011, 05:05:46 pm

Title: Can Axe mess with Group files?
Post by: Yeong on September 12, 2011, 05:05:46 pm
can axe ungroup the group by itself?
if it can, how do I do it?
Title: Re: Can Axe mess with Group files?
Post by: Runer112 on September 12, 2011, 05:06:41 pm
Nope. And I'd personally stay away from group files as much as possible, they're made of pure evil.
Title: Re: Can Axe mess with Group files?
Post by: Yeong on September 12, 2011, 05:08:03 pm
aw. I was hoping that I could make a installer that takes the lots of appvars from groups and archive those.
Title: Re: Can Axe mess with Group files?
Post by: Ashbad on September 12, 2011, 05:09:38 pm
aw. I was hoping that I could make a installer that takes the lots of appvars from groups and archive those.

Even better, perhaps play with compression algorithms and make your own grouping system based on Appvars solely?  It'd be easier to work with and could be rather custom and cool.  TI groups *are* pure evil.
Title: Re: Can Axe mess with Group files?
Post by: thepenguin77 on September 12, 2011, 05:12:55 pm
Ungrouping stuff is really easy. The group is just a whole bunch of programs stored back to back.

However, creating a group is messy. You have to make a group in ram then call bcall(_archiveVar), which is the only bcall out of them all that can corrupt your flash. And most likely, you'll corrupt your archive several times during development.

So I say, it's possible, but you should definitely do it in assembly instead.
Title: Re: Can Axe mess with Group files?
Post by: Yeong on September 12, 2011, 05:16:19 pm
oh, that was not what I was asking for XP
I probably had to mention that the group will only contain appvars
so basically my question was: Is it possible to create program with axe that ungroup the group files for me without having to go to memory menu.
Title: Re: Can Axe mess with Group files?
Post by: Ashbad on September 12, 2011, 05:20:12 pm
oh, that was not what I was asking for XP
I probably had to mention that the group will only contain appvars
so basically my question was: Is it possible to create program with axe that ungroup the group files for me without having to go to memory menu.

Well, deriving from TP77's knowledge, yes, but have fun with a ton of inline assembly.
Title: Re: Can Axe mess with Group files?
Post by: Yeong on September 12, 2011, 05:21:04 pm
ASM? :o
*Yeong gives up :P
then I guess I'll make a readme file of how to install it XP
Title: Re: Can Axe mess with Group files?
Post by: Ashbad on September 12, 2011, 05:23:56 pm
ASM? :o
*Yeong gives up :P
then I guess I'll make a readme file of how to install it XP

Again, why not just condense the smaller appvars into larger ones and chunk those apart?
Title: Re: Can Axe mess with Group files?
Post by: Yeong on September 12, 2011, 05:26:38 pm
issa pic files (All 780 bytes and I won't know how to use it if I merged it)
Title: Re: Can Axe mess with Group files?
Post by: thepenguin77 on September 12, 2011, 05:29:08 pm
That should be possible. Here's how the groups are stored:

Code: [Select]
{standard flash header}
bytes descriptions
1 [Valid flag == FC]
2 [size of entire flash variable]

{standard program header}
1 [group == 17h]
5 [garbage (for you)]
1 [size of program name]
1-8 [program name]
2 [size of group data]

And now the fun part. You have a whole bunch of programs right after each other:

Code: [Select]
{standard program header}
1 [type, 5 = prog, 6 = prot prog, = 15h = appvar]
5 [garbage again]
1 [size of program name]
1-8 [program name]
2 [program size]
0-big [program data]

So, what you'd do is make your way though the group header, figure out what type the first program is, make a program of that type in ram, then copy the data into it. Just repeat that until you reach the end of the group.

That simple ;)