Join us on Discord!
You can help CodeWalrus stay online by donating here.

C SDK and Libraries for the TI84+CE/TI8PCE

Started by MateoConLechuga, January 29, 2016, 02:59:00 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

MateoConLechuga

Minor update to the toolchain that fixes some interrupt things: (Only really applicable if you downloaded 7.0 lol)

Toolchain: https://github.com/CE-Programming/toolchain/releases/latest

Dream of Omnimaga

Thanks for the update Mateo. I'll definitively update even if I didn't download 7.0, though, because I think my C libs are from around November or so <_<
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

TheMachine02

I did a very small C library for fixed 8.8 point format, https://github.com/TheMachine02/FixedPoint8/blob/master/fixedpoint.h . Should be quite fast (at least almost as integer and much better than float) although I guess it could be better and could  support 16.8 too  :P
There isn't all math functions either, so that will need to be coded  :)

Alvajoy123

Do you use the program on the calc or what ? :crazy:
  • Calculators owned: TI-84+CE
The maker of Xenon.

Dream of Omnimaga

No, TI-84+CE C is programmed on the computer.
Quote from: TheMachine02 on March 20, 2017, 03:28:37 PM
I did a very small C library for fixed 8.8 point format, https://github.com/TheMachine02/FixedPoint8/blob/master/fixedpoint.h . Should be quite fast (at least almost as integer and much better than float) although I guess it could be better and could  support 16.8 too  :P
There isn't all math functions either, so that will need to be coded  :)
Hm that might be handy for 3D stuff. It's not as accurate, but it's much faster than floating points.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Alvajoy123

we need to find a way to make everything compatible on the calc
  • Calculators owned: TI-84+CE
The maker of Xenon.

Dream of Omnimaga

Maybe one day that will come, since we can now program ASM on-calc with Mimas on the TI-83+/84+/SE, but it will most likely depend if there is enough demand.

Also, the calculator only has a small amount of user RAM and Flash, and the C code will take a considerable amount of space compared to the executable, especially with comments. Don't expect to make a large game directly on-calc, especially with good graphics (since an on-calc sprite maker would most likely take longer to use)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

MateoConLechuga

#112
Pretty awesome toolchain update! Installing on windows is probably the easiest toolchain installation in the entire world now. Lots of bug fixes and feature additions, keep reading for more or just get the download.

Toolchain: https://github.com/CE-Programming/toolchain/releases/latest
Libraries: https://github.com/CE-Programming/libraries/releases/latest

Note: Libraries are now included by using '#include <graphx.h>' rather than '#include <lib/ce/graphx.h>'. Also, if you are updating an older project, please use an updated makefile from the examples folder. These changes are important, so be sure to make them! :)

Things that have changed (there's more too, take a look at github):
    Able to build natively on any platform now simply by typing 'make'
    ConvPNG has been updated to fix a few memory issues (work goes on to add appvar support)
    Complete restructure of toolchain hierarchy; can now simply clone the repo and make. (see readme)
    Added gfx_FloodFill, gfx_ScaleSprite, and gfx_SetFontHeight, along with about a 5-9% speed increase in clipped sprite drawing.
    Optimized gfx_AllocSprite (Thanks Runer)
    Native convpng, convhex, and other programs for ease of use.

Also, jacobly is doing insane things with llvm, so feel free to give him some kudos whenever he's around :) Many thanks to jacobly and Adriweb for testing and telling me when I messed things up :P Enjoy everyone! Until next time.

xMarminq_

  • Calculators owned: Ti-84 Plus CE, Ti-84 Plus (can be borrowed from my school)
I don't associate with associations

kotu

__ @MateoConLechuga , dude


Originally in your first relase we had 2 folders,

#include <include/lib/ce/graphx.h>   
AND
#include <lib/ce/graphx.h>          which was used in some of the demos



Now you have just said

Quote from: MateoConLechuga
Libraries are now included by using '#include <lib/graphx.h>' rather than '#include <lib/ce/graphx.h>'.
Firstly, they were NEVER IN  <lib/ce/graphx.h> !!! AND
Secondly, they are not in your new '<lib/graphx.h>'

They are actually in <include/ce/lib>
ALSO there are only 3 in there - where are the others??!


Personally I consider EVER changing folder locations of include files to be abominable act.
PLEASE, PLEASE leave them in

AND LET THEM BE FOREVER! PLEASE!!

grr
  • Calculators owned: TI 84+CE-T
  • Consoles, mobile devices and vintage computers owned: Sega Master System, Sony PlayStation 3
SUBSCRIBE TO THE FUTURERAVE.UK MAILING LIST
http://futurerave.uk

MateoConLechuga

This is because of people who apparently need it for their online IDEs. But since you don't like it, I'm just going to scrap it and put everything in one folder if that is okay with you. Then it will just be #include <graphx.h>, which obviously will never be changed.

kotu

  • Calculators owned: TI 84+CE-T
  • Consoles, mobile devices and vintage computers owned: Sega Master System, Sony PlayStation 3
SUBSCRIBE TO THE FUTURERAVE.UK MAILING LIST
http://futurerave.uk

MateoConLechuga

Quote from: kotu on April 07, 2017, 05:18:26 AM
Good move
Trust me; I was going to do it this way in the beginning :P Anywho, the toolchain is updated again; now you just have to do #include <graphx.h>. No more worries about breaking future things I guess :P

Adriweb

#118
That said, I guess I'll commit some compatibility thing for the older paths to still work instead of possibly make people angry about the toolchain updates breaking their stuff.
*However* because things should still be updated, it will print an annoying deprecation warning message until their code gets fixed :P And eventually, I guess this compatibility layer may get removed.

This is the proper way to handle a graceful deprecation/removal for "breaking" changes (even if it's here a matter of removing just a few chars)

Edit: done https://git.io/vSwbz
  • Calculators owned: TI-Nspire CX CAS, TI-Nspire CX, TI-Nspire CAS (x3), TI-Nspire (x2), TI-Nspire CM-C CAS, TI-Nspire CAS+, TI-80, TI-82 Stats.fr, TI-82 Plus, TI-83 Plus, TI-83 Plus.fr USB, TI-84+, TI-84+ Pocket SE, TI-84+ C Silver Edition, TI-84 Plus CE, TI-89 Titanium, TI-86, TI-Voyage 200, TI-Collège Plus, TI-Collège Plus Solaire, 3 HP, some Casios
Co-founder & co-administrator of TI-Planet and Inspired-Lua

Dream of Omnimaga

IMHO, whenever possible, it would be good to keep things compatible as often as possible in the future, otherwise this will just prompt some coders to stop upgrading.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Powered by EzPortal