Author Topic: zStart - an app that runs on ram clears  (Read 340504 times)

0 Members and 1 Guest are viewing this topic.

Offline thepenguin77

  • z80 Assembly Master
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1594
  • Rating: +823/-5
  • The game in my avatar is bit.ly/p0zPWu
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #855 on: January 24, 2013, 01:59:00 pm »
well, this is by far the most useful app I've ever used! finally i'm not wasting time putting every setting back in place when I want to go RAM clear, I'm actually encouraging myself to do that more often now :P

one thing though, I can't seem to get custom fonts working with programs? if I go make a new custom font in zstart it'll find that, but it won't find any font existing as a program, archived or not.
I also setup symgraph as a part of startup for zStart, but after that, the run from home option seems to be failing ._.?

Are you talking about Omnicalc fonts? Those aren't perfectly compatible with zStart fonts (for meh reasons) but if you look back far enough in this thread, I believe DrDnar made an Axe program to convert them. It's at least 10 pages back though.


I came across this "bug" multiple times now:
When you turn off the calculator while you're editing an archived program (the copy of one), and zStart wants to store the edited version and GarbageCollect appears, the LCD turns off and and it doesn't react on any key presses (calc behaves like turned off, but it isn't) before you can do a GarbageCollect. You need to remove the batteries and lose the current progress which is kinda annoying :/
Is there someway you can prevent the calc (or its peripherals) from turning off when the program isn't saved yet?

Well that's a super specific bug. Garbage collect is sketchy as it is, and then throwing in the shutdown sequence just makes it more confusing. I'll try to figure out what I can do, but that doesn't sound easy to fix.
zStart v1.3.013 9-20-2013 
All of my utilities
TI-Connect Help
You can build a statue out of either 1'x1' blocks or 12'x12' blocks. The 1'x1' blocks will take a lot longer, but the final product is worth it.
       -Runer112

Offline Freyaday

  • The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1970
  • Rating: +128/-15
  • I put on my robe and pixel hat...
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #856 on: January 24, 2013, 03:26:24 pm »
Can we have find|replace?
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names


I'm a performer at heart; I stole it last week.
My Artwork!

Offline Sorunome

  • Fox Fox Fox Fox Fox Fox Fox!
  • Support Staff
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 7920
  • Rating: +374/-13
  • Derpy Hooves
    • View Profile
    • My website! (You might lose the game)
Re: zStart - an app that runs on ram clears
« Reply #857 on: January 24, 2013, 08:24:43 pm »
That is axctually a pretty awesome idea but how should it be handled? Like find promps a input, and if you input plain text instead of tokens, will it tokenize that etc?

THE GAME
Also, check out my website
If OmnomIRC is screwed up, blame me!
Click here to give me an internet!

Offline shmibs

  • しらす丼
  • Administrator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2132
  • Rating: +281/-3
  • try to be ok, ok?
    • View Profile
    • shmibbles.me
Re: zStart - an app that runs on ram clears
« Reply #858 on: January 25, 2013, 12:48:04 am »
it seems like it would be a lot easier to just insert a line wherever you are in the program, write whatever you want to find/replace on that, and then press some key combo. it wouldn't take up nearly as much space, either.

Offline thepenguin77

  • z80 Assembly Master
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1594
  • Rating: +823/-5
  • The game in my avatar is bit.ly/p0zPWu
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #859 on: January 25, 2013, 07:26:45 pm »
it seems like it would be a lot easier to just insert a line wherever you are in the program, write whatever you want to find/replace on that, and then press some key combo. it wouldn't take up nearly as much space, either.

Yeah, I would think that it would search for whatever is in the clip board. You would have one combo that is strictly find, and another that is find/replace. The find would simply find, and the find/replace would find on the first press, and replace if it was sitting directly on the specific string.

Well, I made that easy enough that it might get implemented some day. Well see.
zStart v1.3.013 9-20-2013 
All of my utilities
TI-Connect Help
You can build a statue out of either 1'x1' blocks or 12'x12' blocks. The 1'x1' blocks will take a lot longer, but the final product is worth it.
       -Runer112

Offline Hayleia

  • Programming Absol
  • Coder Of Tomorrow
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3367
  • Rating: +393/-7
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #860 on: February 04, 2013, 01:53:23 am »
I had some stupid ideas you could implement if you get bored some day :P
-Add an APD function to zStaxe. It would obviously turn on APD then return to the program where it left.
-Add a turn calc off function to zStaxe. It would quit the program then turn the calc off "completely" and "truly". I mean not an APD and not a low-battery trick, but a power down that would trigger the 8scale picture and the startup program at startup.
-Add a still screenshot function (this one is really if you get really bored :P). Pressing ON+whatever would copy the "screen" to zStart's clipboard (the same clipboard as the copy-paste function in the editor) in hex format (hoping the clipboard supports 1536 bytes).
I own: 83+ ; 84+SE ; 76.fr ; CX CAS ; Prizm ; 84+CSE
Sorry if I answer with something that seems unrelated, English is not my primary language and I might not have understood well. Sorry if I make English mistakes too.

click here to know where you got your last +1s

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #861 on: February 04, 2013, 02:36:58 am »
-Add a turn calc off function to zStaxe. It would quit the program then turn the calc off "completely" and "truly". I mean not an APD and not a low-battery trick, but a power down that would trigger the 8scale picture and the startup program at startup.
The only to truly turn off a calculator is to remove all four AAAs and the backup battery. The calculator requires about 70 microamps to maintain RAM contents and to be able to sense when the ON key is pressed. The OS itself uses the same "low-battery trick" you speak of. Some really old programs may not do it correctly, but I doubt that's a problem anymore. (The correct code should be located on WikiTI.)

More technical information: During a normal power-down, writing to a port configures the ASIC to enter a special low-power mode when it sees the CPU core enter the HALT state. Hardware-wise, there is no difference between the OS doing it and a RAM program or application doing it. In both cases, pressing ON issues an interrupt that terminates the HALT state, and the ASIC exits low-power mode. The CPU then continues executing instructions from where ever it left off.

So why does removing a battery when in a RAM program cause a RAM reset, but no reset happens when the OS does it? It's a bit of a long story: Disconnecting the main AAAs will cause the ASIC and the CPU to hard-reset---except for RAM, which continues to be powered from the backup battery. When power is restored, the CPU is immediately hard-reset, and the boot code boots. It sees that the OS is valid, and transfers control to the OS after initializing some hardware. Now, when the OS turns off normally or APDs, it calculates a checksum for RAM. So, after you reinsert the AAAs, the OS sees that the RAM checksum is still valid, and that RAM should not be reset.

Cool fact: The calculator boots immediately after restoring main power. The OS (or boot code, if no OS is present) checks the state of the ON key after booting; if it isn't being pressed, it immediately does a normal power-off, as mentioned above.

Also, if you remove a battery at the homescreen with the blinking cursor, the calculator actually stays on for a split second, during which time an interrupt (HW timer 2) fires. The OS, seeing the power outage, changes the RAM checksum to a special value to signal that a RAM reset should be not performed after power is restored. This behavior is activated by a particular flag, which assembly programs should not normally use due to a memory-leak issue. (Specifically, CPU control is not returned to the running program; it's just like doing JForceCmdNoChar.) Although, I suppose a custom OS could take a few microseconds to save the CPU state. Actually, that should be a zStart feature: improved RAM-reset prevention for compatible programs. (It won't work if the interrupt handler is not called, which can be either because interrupts are disabled or the current program is using a custom interrupt.)
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline thepenguin77

  • z80 Assembly Master
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1594
  • Rating: +823/-5
  • The game in my avatar is bit.ly/p0zPWu
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #862 on: February 04, 2013, 01:06:49 pm »
I had some stupid ideas you could implement if you get bored some day :P
-Add an APD function to zStaxe. It would obviously turn on APD then return to the program where it left.
-Add a turn calc off function to zStaxe. It would quit the program then turn the calc off "completely" and "truly". I mean not an APD and not a low-battery trick, but a power down that would trigger the 8scale picture and the startup program at startup.
-Add a still screenshot function (this one is really if you get really bored :P). Pressing ON+whatever would copy the "screen" to zStart's clipboard (the same clipboard as the copy-paste function in the editor) in hex format (hoping the clipboard supports 1536 bytes).

Well, I'm not going to to add those functions to zStaxe because zStaxe is simply a way to call zStart's assembly API from Axe programs.


APD inside a program really isn't APD at all, it's just turning the calculator off temporarily and it looks like this:
Code: [Select]
ld a, 1
out (03), a
ei
halt

 Asm(3E01D303FB76)

Which, as DrDnar wanted me to remind you, is just as good as turning the calculator off with 2nd+ON as far as power is concerned. This is actually the exact same code the OS runs to turn the calculator off.


Properly doing an OS turn off is a bit more challenging. You have to deallocate your program from memory and then run bcall(_powerOff). This one would be a bit much to give you the Asm( for so I guess it should go in an Axiom. The only problem with this is that it doesn't play nicely with shells. Shells do their own thing. A good example would be if you were running your program from RAM. The shell would copy the program to $9D95 and then when you deallocate it, you would delete it. The end result is that you no longer have that program.


And the screenshot thing I could actually do and I don't think it would be that hard.

Edit:
   Optimized
« Last Edit: February 04, 2013, 01:18:40 pm by thepenguin77 »
zStart v1.3.013 9-20-2013 
All of my utilities
TI-Connect Help
You can build a statue out of either 1'x1' blocks or 12'x12' blocks. The 1'x1' blocks will take a lot longer, but the final product is worth it.
       -Runer112

Offline Hayleia

  • Programming Absol
  • Coder Of Tomorrow
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3367
  • Rating: +393/-7
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #863 on: February 05, 2013, 01:06:32 am »
Ok, thanks both of you for your explanations and your time :)
I own: 83+ ; 84+SE ; 76.fr ; CX CAS ; Prizm ; 84+CSE
Sorry if I answer with something that seems unrelated, English is not my primary language and I might not have understood well. Sorry if I make English mistakes too.

click here to know where you got your last +1s

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #864 on: February 05, 2013, 02:44:37 pm »
FYI: I think the zstart on Ticalc.org has two of the 83+ version. When I send either to my calc they're named zstart83.

I'm using the link from here now :P lesson learned, but you might want to fix that.

Offline TheNlightenedOne

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 427
  • Rating: +16/-1
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #865 on: February 13, 2013, 09:20:19 pm »
How do you enable running a program on startup? ???
"Eris" (Ndless 3.1)
"Keto" (Ndless 3.1)
"Luna" (AMS 3.10, HW4)
"Aurora" (2.55MP)

Offline Sorunome

  • Fox Fox Fox Fox Fox Fox Fox!
  • Support Staff
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 7920
  • Rating: +374/-13
  • Derpy Hooves
    • View Profile
    • My website! (You might lose the game)
Re: zStart - an app that runs on ram clears
« Reply #866 on: February 13, 2013, 10:06:50 pm »
in the program menu hit [ON]+(one of the three keys . (-) 0, which one i don't remember)

THE GAME
Also, check out my website
If OmnomIRC is screwed up, blame me!
Click here to give me an internet!

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #867 on: February 14, 2013, 02:08:31 am »
The zHelp program that comes with zStart gives documentation of all those shortcuts on-calc.

Offline Hayleia

  • Programming Absol
  • Coder Of Tomorrow
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3367
  • Rating: +393/-7
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #868 on: February 17, 2013, 05:08:40 am »
Not really on topic, but do you have any plans to port it to the 84+CSE ?
I can understand it would take some time for the Run On RAM Clear function to be ported, but I'd still like to see the label menu, the homerun, the program on startup and picture on startup (even if this one is not going to be hard to do in an external program now that there will be native support for colors) options on the 84+CSE :)
« Last Edit: February 17, 2013, 11:56:19 am by Hayleia »
I own: 83+ ; 84+SE ; 76.fr ; CX CAS ; Prizm ; 84+CSE
Sorry if I answer with something that seems unrelated, English is not my primary language and I might not have understood well. Sorry if I make English mistakes too.

click here to know where you got your last +1s

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: zStart - an app that runs on ram clears
« Reply #869 on: February 17, 2013, 05:22:44 am »
Even those could be substantially different. They all rely heavily on OS hooks, which are not even close to guaranteed. If TI drops assembly compatibility (which they did) then there's no reason to preserve hooks either.