You can help CodeWalrus stay online by donating here. | New CodeWalrus | Old (dark mode) | Old (light) | Discord server

[TI-84+CE] ICE Compiler

b/Software Downloads Started by PT_, March 25, 2016, 08:14:17 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

u/Dream of Omnimaga May 30, 2016, 03:59:50 AM
So how exactly will math operations be done? I mean, will it be like Axe, where they are done one after another regardless of if it's + or * or will it be like the TI-OS where multiplications are done first?
u/PT_ May 30, 2016, 08:14:15 AM
Quote from: DJ Omnimaga on May 30, 2016, 03:59:50 AM
So how exactly will math operations be done? I mean, will it be like Axe, where they are done one after another regardless of if it's + or * or will it be like the TI-OS where multiplications are done first?
Exactly. It runs the operators just like the OS does. So 3+A*B would be 3+(A*B) and not (3+A)*B. This makes it very hard to implement, but I thought people are used with it, and it has no advantages to delete the precedence (first * /, then + -).
u/Snektron May 30, 2016, 04:42:39 PM
Can't wait to stress test it  >:D
u/Dream of Omnimaga May 30, 2016, 04:45:35 PM
Quote from: PT_ on May 30, 2016, 08:14:15 AM
Quote from: DJ Omnimaga on May 30, 2016, 03:59:50 AM
So how exactly will math operations be done? I mean, will it be like Axe, where they are done one after another regardless of if it's + or * or will it be like the TI-OS where multiplications are done first?
Exactly. It runs the operators just like the OS does. So 3+A*B would be 3+(A*B) and not (3+A)*B. This makes it very hard to implement, but I thought people are used with it, and it has no advantages to delete the precedence (first * /, then + -).
I would have been fine with both, but of course you would need to warn users in the readme about order of operations clearly, like with Axe Parser.
u/aetios May 31, 2016, 12:01:58 PM
To be honest I'd prefer left to right order of operations, except of course for parentheses.
u/PT_ May 31, 2016, 12:25:49 PM
Quote from: aeTIos on May 31, 2016, 12:01:58 PM
To be honest I'd prefer left to right order of operations, except of course for parentheses.
That means I need to rewrite the whole first part of the parser. I think people are used with the normal order of operations, like the OS does, so why not in ICE?
u/Snektron May 31, 2016, 12:49:06 PM
I think order of operations will be better. Btw, i had an idea a while ago for something like c arrays, where you can basically do

A[10]->B
L1[A]->B
1000[A]->B

To read from an offset. You can even do something with r to multiply the offset with 2/3, for 2 or 3 byte elements.
u/Dream of Omnimaga May 31, 2016, 09:52:55 PM
Quote from: PT_ on May 31, 2016, 12:25:49 PM
Quote from: aeTIos on May 31, 2016, 12:01:58 PM
To be honest I'd prefer left to right order of operations, except of course for parentheses.
That means I need to rewrite the whole first part of the parser. I think people are used with the normal order of operations, like the OS does, so why not in ICE?
Yeah I am ok with TI-OS order of operation personally. I think aeTIos' point is for the many people used to Axe Parser who are seeing ICE as Axe's successor for them to transition easier from monochrome to color calcs. But it would be better to keep things consistent with the TI-OS (except maybe how Output(), Text() and Pxl-???() switched the X/Y coordinates around.)
u/Snektron June 01, 2016, 07:02:53 AM
Quote from: DJ Omnimaga on May 31, 2016, 09:52:55 PM
(except maybe how Output(), Text() and Pxl-???() switched the X/Y coordinates around.)

I really wonder how TI ever got the insane idea to use (Y, X) as coordinates. Do they literally hate everyone?
u/PT_ June 01, 2016, 05:12:07 PM
I DID IT!!!!!!!!!

I'm so happy now :) I succesfully compiled a normal program, without any errors :D

Ofc, I've finally a gif for you guys!


The program is still far from perfect, but I'm more than happy with this now :D

EDIT:

Last Edit: June 01, 2016, 05:24:57 PM by PT_
u/Dream of Omnimaga June 01, 2016, 06:59:57 PM
Very nice to see ICE finally in action :3=
u/PT_ June 11, 2016, 10:56:15 AM
ICE v1.0 is ready!!!



ICE Compiler is a program that compiles TI-BASIC-like language to ASM, the machine code. Create insane games, use the color screen, and make the step to ASM smaller! Speed up your BASIC programs and it's super easy to use! Type your program in the normal editor, compile it within seconds, and you have hours of fun! It doesn't require any shell.

Download is at the first post of this topic  >:D
Please, please read the README and DOCUMENTATION...
Last Edit: June 11, 2016, 05:57:32 PM by PT_
u/Dream of Omnimaga June 11, 2016, 04:40:33 PM
Wait, you completed the entire language? Or is it a demo? I am surprised that it came out in v1.0 this fast O.O

I'll download it soon and give it a try. You should put the download link (https://codewalr.us/index.php?action=dlattach;topic=1234.0;attach=1032 ) in the first post of this topic so people can find it faster. :)
u/PT_ June 14, 2016, 05:30:20 AM
Version 1.1 June XX, 2016
☐ Lbl/Goto
☐ Display strings
☐ getKey
☐ Use ix for accessing variables
☐ Input
☐ rand
u/Dream of Omnimaga June 14, 2016, 07:18:04 AM
Nice to see getKey and string display addition! :)
Website statistics


MyCalcs | Ticalc.org | Cemetech | Omnimaga | TI-Basic Developer | MaxCoderz | TI-Story | Casiocalc.org | Casiopeia | The Museum of HP Calculators | HPCalc.org | CnCalc.org | Music 2000 Community | TI Education | Casio Education | HP Calcs | NumWorks | SwissMicros | Sharp Calculators
Powered by EzPortal