The shoutbox is currently out of service. Join us on Discord instead.
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 1 Guest 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

DJ 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 <_<

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:
The maker of Xenon.

DJ 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.

Alvajoy123

we need to find a way to make everything compatible on the calc
The maker of Xenon.

DJ 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)

MateoConLechuga

April 07, 2017, 01:47:35 am #112 Last Edit: April 07, 2017, 05:36:55 am by MateoConLechuga
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_

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
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

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

April 07, 2017, 03:39:08 pm #118 Last Edit: April 07, 2017, 05:04:41 pm by Adriweb
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
Co-founder & co-administrator of TI-Planet and Inspired-Lua

DJ 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.

Powered by EzPortal