Omnimaga

Calculator Community => TI Calculators => TI-BASIC => Topic started by: Potato on March 31, 2011, 08:37:20 pm

Title: Quick Question
Post by: Potato on March 31, 2011, 08:37:20 pm
[Ugh sorry for new post...This isn't really worth of it but I don't have enough posts for shoutbox yet]

How do you unarchive/archive programs inside of programs, or is it even possible?

I have this little organizer I made for all the programs I have.  The main idea was so that I can keep all my things archived and still be able to access them.  Only problem is that it won't let me unarchive/archive them.

The way I had it set up was

:If z=34
:Then
:unarchive PRGMprogramname
:PRGMprogramname
:archive PRGMprogramname
:end
Title: Re: Quick Question
Post by: Michael_Lee on March 31, 2011, 08:39:00 pm
Sadly, unless you use an assembly library, it is impossible to archive or unarchive programs inside another one.
Title: Re: Quick Question
Post by: Potato on March 31, 2011, 08:39:31 pm
Sadly, unless you use an assembly library, it is impossible to archive or unarchive programs inside another one.

Ugh.  I should move to Assembly soon then -.-
Title: Re: Quick Question
Post by: Deep Toaster on March 31, 2011, 08:40:00 pm
xLIB and some other libraries for BASIC allow you to do it.
Title: Re: Quick Question
Post by: Michael_Lee on March 31, 2011, 08:42:55 pm
Yup.  The only downside is that it's another file that the user has to download if they don't have it already.

Of course, most people who know about the existence of calculator games already have xLIB, Celtic, etc. on their calc already :)

Edit: Also, I moved this thread to the TI-Basic Programming and Support section.  We generally use the 'Other Calc-Related Projects and Ideas' to announce projects and such.
Title: Re: Quick Question
Post by: Potato on March 31, 2011, 08:44:24 pm
Yup.  The only downside is that it's another file that the user has to download if they don't have it already.

Of course, most people who know about the existence of calculator games already have xLIB, Celtic, etc. on their calc already :)

Not me :D

I lost my wire so I can't do it now but I suppose I can steal a wire from my friend.

Now question about Assembly:

How exactly does it work? (Do I code it on the calc or computer, do i have to download anything etc)
Title: Re: Quick Question
Post by: turiqwalrus on March 31, 2011, 08:46:05 pm
I'd recommend getting Doors. That way, you can get lots of asm libraries in one package.
the command for CelticIII/Doors to Archive or unarchive is det(0,"PROGNAME",0)
Title: Re: Quick Question
Post by: Yeong on March 31, 2011, 08:46:50 pm
z80ASM itself is fairly difficult to learn and it requires computer.
Title: Re: Quick Question
Post by: Potato on March 31, 2011, 08:46:52 pm
I'd recommend getting Doors. That way, you can get lots of asm libraries in one package.
the command for CelticIII/Doors to Archive or unarchive is det(0,"PROGNAME",0)

Doors I do have.  Thanks :D


Title: Re: Quick Question
Post by: Deep Toaster on March 31, 2011, 08:49:02 pm
Yep, Doors pretty much replaces xLIB, Omnicalc, and Celtic III.
Title: Re: Quick Question
Post by: Ashbad on March 31, 2011, 08:49:54 pm
z80ASM itself is fairly difficult to learn and it requires computer.

not exclusively ;D there is the mimas on-calc converter, but it's too similar to TASM for my tastes (though I use it anyways in contempt for TASM's style (I'm a brass boy ;D))
Title: Re: Quick Question
Post by: Michael_Lee on March 31, 2011, 08:50:08 pm
Most people code then test assembly on their computer (they would test by using a calculator emulator, like Wabbitemu).

You could code it on-calc, either directly in hex (which is really hard - only one or two people on this forum have the fortitude to regularly attempt such a thing) using a program like Mimas (which is a text-editor that converts text to hex).  It's better to program and test on computer.  Assembly code can get really long, and because it's so powerful, it has the potential to seriously screw up your calc (maybe even brick it).

Hot Dog, an admin on this forum, made a really good introduction to assembly, if you wanted to learn.  Here: http://www.omnimaga.org/index.php?action=downloads;sa=view;down=594 (http://www.omnimaga.org/index.php?action=downloads;sa=view;down=594)
Title: Re: Quick Question
Post by: Potato on March 31, 2011, 08:53:46 pm
I'd recommend getting Doors. That way, you can get lots of asm libraries in one package.
the command for CelticIII/Doors to Archive or unarchive is det(0,"PROGNAME",0)



Doors I do have.  Thanks :D



Although Now i am confused.  is it

:det(0,"PROGNAME",0)
:PROGNAME
:det(0,"PROGNAME",0)

to unarchive, run and archive
Title: Re: Quick Question
Post by: meishe91 on March 31, 2011, 08:55:38 pm
Xeda also has a hex subroutine in her PDF of hex codes that allows you to do it I believe. (Finale, didn't you use it in Fullmetal?)

Also, I'm going to suggest not do Assembly until you have a good grasp on TI-BASIC, unless you have other programming knowledge (preferably low-level languages since that is what Z80 Assembly is). Its not a requirement by any means but it can just help.
Title: Re: Quick Question
Post by: turiqwalrus on March 31, 2011, 09:15:39 pm
I'd recommend getting Doors. That way, you can get lots of asm libraries in one package.
the command for CelticIII/Doors to Archive or unarchive is det(0,"PROGNAME",0)


Doors I do have.  Thanks :D

You mught want to read through the documentation to find the codes 'n' stuff
and yes. that is the format
Title: Re: Quick Question
Post by: ztrumpet on March 31, 2011, 09:18:49 pm
You could create a new program with this in it:
Code: [Select]
:AsmPrgm21F8893E02AE77C9To unarchive/archive in a program just run the new program around the statements. :)
Example:
Code: [Select]
:Asm(prgmNEWPROG (Whatever you name the hex program)
:UnArchive prgmTETRIS
:Archive prgmTESTRUN
:Asm(prgmNEWPROG
Good luck! ;D