* WalrusIRC

You need to have 5 posts and not be part of restricted usergroups in order to use the WalrusIRC embedded shoutbox. However, you can also access our IRC channel called #CodeWalrus via EFnet.

Author Topic: ICE Compiler  (Read 19265 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 17835
  • Post Rating Ratio: +89/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #75 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?
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline PT_

  • Full User
  • Join Date: Mar 2016
  • Location:
  • Posts: 232
  • Post Rating Ratio: +8/-0
    • View Profile
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #76 on: May 30, 2016, 08:14:15 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 + -).

Offline Snektron

  • Lvl 69 Russian Snake
  • CodeWalrus Staff
  • Super User
  • Topic Management
  • Join Date: Dec 2014
  • Location: Netherlands
  • Posts: 3150
  • Post Rating Ratio: +31/-0
  • SSSssssss.....
    • RobinDeWalvis
    • Kzyrox
    • RobinDeWalvis
    • View Profile
    • quantuminfinity
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #77 on: May 30, 2016, 04:42:39 pm »
Can't wait to stress test it  >:D
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Offline DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 17835
  • Post Rating Ratio: +89/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #78 on: May 30, 2016, 04:45:35 pm »
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.
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline aeTIos

  • Dabbler in C
  • CodeWalrus Staff
  • Super User
  • Server Maintenance
  • Moderator
  • Original 5
  • Join Date: Nov 2014
  • Location: Ede, NL
  • Posts: 1013
  • Post Rating Ratio: +12/-0
  • hi
    • r_vdijk
    • /u/aetios
    • aetios
    • View Profile
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #79 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.
ceci n'est pas une signature

Offline PT_

  • Full User
  • Join Date: Mar 2016
  • Location:
  • Posts: 232
  • Post Rating Ratio: +8/-0
    • View Profile
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #80 on: May 31, 2016, 12:25:49 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?

Offline Snektron

  • Lvl 69 Russian Snake
  • CodeWalrus Staff
  • Super User
  • Topic Management
  • Join Date: Dec 2014
  • Location: Netherlands
  • Posts: 3150
  • Post Rating Ratio: +31/-0
  • SSSssssss.....
    • RobinDeWalvis
    • Kzyrox
    • RobinDeWalvis
    • View Profile
    • quantuminfinity
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #81 on: 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
Code: [Select]
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.
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Offline DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 17835
  • Post Rating Ratio: +89/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #82 on: May 31, 2016, 09:52:55 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.)
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Snektron

  • Lvl 69 Russian Snake
  • CodeWalrus Staff
  • Super User
  • Topic Management
  • Join Date: Dec 2014
  • Location: Netherlands
  • Posts: 3150
  • Post Rating Ratio: +31/-0
  • SSSssssss.....
    • RobinDeWalvis
    • Kzyrox
    • RobinDeWalvis
    • View Profile
    • quantuminfinity
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #83 on: June 01, 2016, 07:02:53 am »
(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?
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Offline PT_

  • Full User
  • Join Date: Mar 2016
  • Location:
  • Posts: 232
  • Post Rating Ratio: +8/-0
    • View Profile
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #84 on: 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_ »

Offline DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 17835
  • Post Rating Ratio: +89/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #85 on: June 01, 2016, 06:59:57 pm »
Very nice to see ICE finally in action :3=
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline PT_

  • Full User
  • Join Date: Mar 2016
  • Location:
  • Posts: 232
  • Post Rating Ratio: +8/-0
    • View Profile
Re: ICE - an interpreter/compiler of CE-BASIC
« Reply #86 on: 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_ »

Offline DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 17835
  • Post Rating Ratio: +89/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: ICE Compiler
« Reply #87 on: 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. :)
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline PT_

  • Full User
  • Join Date: Mar 2016
  • Location:
  • Posts: 232
  • Post Rating Ratio: +8/-0
    • View Profile
Re: ICE Compiler
« Reply #88 on: 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

Offline DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 17835
  • Post Rating Ratio: +89/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: ICE Compiler
« Reply #89 on: June 14, 2016, 07:18:04 am »
Nice to see getKey and string display addition! :)
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

 


You can also use the following HTML or bulletin board code to share it on your page or forum signature!


Also do not forget to check our affiliates below.
Planet Casio TI-Planet Calc.news BroniesQC BosaikNet Velocity Games