Author Topic: Breaking the 8K limit  (Read 11149 times)

0 Members and 1 Guest are viewing this topic.

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Breaking the 8K limit
« on: June 12, 2017, 06:12:10 pm »
Quick question: Is there any way to disable the 8K code limit and still use interrupts?
Thanks
I'm still around... kind of.

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: Breaking the 8K limit
« Reply #1 on: June 13, 2017, 05:49:33 pm »
IIRC, forum members Hotdog and thepenguin came up with solutions to breaking the 8k limit. I'm not sure if either required interupts to be disabled.Hotdog's was called Crabcake, I think it may have had some stability issues though. I think matrefeytontias, had a hackish way to use multiple app pages. Finally, Both Runer112 and BrandonW might be good people to ask. Runer, since he maintains axe, and Brandon W since he's just incredibly knowledgeable about the hardware from working with it for years.

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6267
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Breaking the 8K limit
« Reply #2 on: June 13, 2017, 05:59:45 pm »
@Runer112 @BrandonW
Just going to highlight them so they are more likely to view this thread.
/e

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Breaking the 8K limit
« Reply #3 on: June 13, 2017, 06:06:28 pm »
The axiom Fullrene should allow you to bypass the 8KB program code limit. There are mixed reports of its efficacy, though. Also, the program needs to be launched from a shell, as the OS simply refuses to launch programs this large.

Alternatively, compile your code as an application to get a bit under 16KB of room, although this may not be desirable for other reasons.

Interrupts being enabled or not should have no bearing on this.

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: Breaking the 8K limit
« Reply #4 on: June 13, 2017, 06:16:47 pm »
Thanks for the link to fullrene. I couldn't remember what it was called.

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Breaking the 8K limit
« Reply #5 on: June 15, 2017, 06:23:07 pm »
The axiom Fullrene should allow you to bypass the 8KB program code limit. There are mixed reports of its efficacy, though. Also, the program needs to be launched from a shell, as the OS simply refuses to launch programs this large.

Alternatively, compile your code as an application to get a bit under 16KB of room, although this may not be desirable for other reasons.

Interrupts being enabled or not should have no bearing on this.
Fullrene uses interrupts to disable the limit. If you read the source, you will see that it uses the I register for interrupts. I know that zStart has a hack to disable the limit, but I don't know if it simply removes the limit firm the OS itself. I don't know about crabcake. I couldn't find a download for it anywhere. Compiling as an app is not an option for me currently for various reasons.
I'm still around... kind of.

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Breaking the 8K limit
« Reply #6 on: June 16, 2017, 04:26:13 pm »
The axiom Fullrene should allow you to bypass the 8KB program code limit. There are mixed reports of its efficacy, though. Also, the program needs to be launched from a shell, as the OS simply refuses to launch programs this large.

Alternatively, compile your code as an application to get a bit under 16KB of room, although this may not be desirable for other reasons.

Interrupts being enabled or not should have no bearing on this.
Fullrene uses interrupts to disable the limit. If you read the source, you will see that it uses the I register for interrupts. I know that zStart has a hack to disable the limit, but I don't know if it simply removes the limit firm the OS itself. I don't know about crabcake. I couldn't find a download for it anywhere. Compiling as an app is not an option for me currently for various reasons.

It uses the i register as part of the logic to disable the code limit, but it doesn't use interrupts or the i register after that. The limit is not removed permanently; it is only removed for the remainder of the program's execution.


Important edit: doesdoen't
« Last Edit: June 17, 2017, 10:23:33 am by Runer112 »

Offline c4ooo

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 252
  • Rating: +10/-1
  • The impossible chemical compound.
    • View Profile
Re: Breaking the 8K limit
« Reply #7 on: June 16, 2017, 11:56:56 pm »
The axiom Fullrene should allow you to bypass the 8KB program code limit. There are mixed reports of its efficacy, though. Also, the program needs to be launched from a shell, as the OS simply refuses to launch programs this large.

Alternatively, compile your code as an application to get a bit under 16KB of room, although this may not be desirable for other reasons.

Interrupts being enabled or not should have no bearing on this.
Fullrene uses interrupts to disable the limit. If you read the source, you will see that it uses the I register for interrupts. I know that zStart has a hack to disable the limit, but I don't know if it simply removes the limit firm the OS itself. I don't know about crabcake. I couldn't find a download for it anywhere. Compiling as an app is not an option for me currently for various reasons.

It uses the i register as part of the logic to disable the code limit, but it does use interrupts or the i register after that. The limit is not removed permanently; it is only removed for the remainder of the program's execution.
I thought it sent some magical number to some magical port? I remember a really old news article about this by 'thepenguin' (?).
-German Kuznetsov
The impossible chemical compound.

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: Breaking the 8K limit
« Reply #8 on: June 17, 2017, 11:07:00 am »
The axiom Fullrene should allow you to bypass the 8KB program code limit. There are mixed reports of its efficacy, though. Also, the program needs to be launched from a shell, as the OS simply refuses to launch programs this large.

Alternatively, compile your code as an application to get a bit under 16KB of room, although this may not be desirable for other reasons.

Interrupts being enabled or not should have no bearing on this.
Fullrene uses interrupts to disable the limit. If you read the source, you will see that it uses the I register for interrupts. I know that zStart has a hack to disable the limit, but I don't know if it simply removes the limit firm the OS itself. I don't know about crabcake. I couldn't find a download for it anywhere. Compiling as an app is not an option for me currently for various reasons.

It uses the i register as part of the logic to disable the code limit, but it does use interrupts or the i register after that. The limit is not removed permanently; it is only removed for the remainder of the program's execution.
I thought it sent some magical number to some magical port? I remember a really old news article about this by 'thepenguin' (?).
You are probably talking about

http://wikiti.brandonw.net/index.php?title=83Plus:Ports:25
http://wikiti.brandonw.net/index.php?title=83Plus:Ports:26

Which limit the CPU execution in the upper and the lower direction. Now, as you can see on wikiti, both ports are protected. That means that you can't simply change their value, you first have to "unlock" your calculator, so-to-say. The TIOS itself can unlock the calculator but, well, re-locks it before a program has control again.
Crabcake, zstart and thelike use TIOS bugs to gain access to the protected ports while running.

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

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: Breaking the 8K limit
« Reply #9 on: June 19, 2017, 05:55:40 pm »
The axiom Fullrene should allow you to bypass the 8KB program code limit. There are mixed reports of its efficacy, though. Also, the program needs to be launched from a shell, as the OS simply refuses to launch programs this large.

Alternatively, compile your code as an application to get a bit under 16KB of room, although this may not be desirable for other reasons.

Interrupts being enabled or not should have no bearing on this.
Fullrene uses interrupts to disable the limit. If you read the source, you will see that it uses the I register for interrupts. I know that zStart has a hack to disable the limit, but I don't know if it simply removes the limit firm the OS itself. I don't know about crabcake. I couldn't find a download for it anywhere. Compiling as an app is not an option for me currently for various reasons.
Zstart is by the same author, so I'd imagine it functions similarly. Shouldn't matter according to Runer's post though.