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

Getting started with TI-84 Plus CE Programming [ASM] [ICE] [BASIC] [emulator]

Started by Dream of Omnimaga, March 25, 2015, 10:36:41 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Duke "Tape" Eiyeron

There was an attempt to make a common langue between Casio and TI : the MLC. It didn't got very popular though...
  • Calculators owned: A lot.

Dream of Omnimaga

Actually it was somewhat popular back then. It's just that the project founder quit calc stuff early in the project, which pretty much led to its demise. Also, the one in charge of the TI-86 version ran into issues with memory constraints (such as a 8 KB executable limit)

A lot of the MLC discussion was on Epic Programming Studio programming team forums, which I was staff at. But that team disbanded in late 2005.
  • 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

tr1p1ea

It's amazing how much of this stuff you remember :).

Another parser test, this time TIOS getKey vs ASM lib getkey. All code is the same besides the key function:



I believe the TIOS getKey actually isnt slow, rather its the key-repeat.

Duke "Tape" Eiyeron

Meeeh, I want to get back on game programming! When I seee such graphisms, I'm amazed by the richness of details of this spritesheet.
  • Calculators owned: A lot.

Dream of Omnimaga

Lol tr1p1ea thanks. I even remember some exact community event dates or member nicks from the old MC board. O.O

And woah BASIC getkey is so slow compared to ASM. That makes me want to investigate in FF to see if dungeon movements aren't actually throttled by getKey XD.
  • 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

Snektron

But everything is faster in ASM so that's not really a surprise :P
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Duke "Tape" Eiyeron

Yeah, but the result is still pretty pretty, so, whatever the language to make this, it's cool.
  • Calculators owned: A lot.

Dream of Omnimaga

^this. As long as the code is optimized whenever possible and isn't slower than what the BASIC language is capable of.
  • 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

Snektron

  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Dream of Omnimaga

Can we even display anything other than text in brainc, such as sprites?
  • 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

Snektron

Yeah, you'd have to add some instructions (like pixel-on or something) or define a specific location in the ram as the screen (kinda like PlotSScreen)
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Duke "Tape" Eiyeron

Better : you map some sort of opcode parser in the BF memory, like the first 8 bytes to detect the operation and the arguments of the operation.
  • Calculators owned: A lot.

Snektron

  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Dream of Omnimaga

#43
We should stick to C and ASM I think. Let's not make stuff even more complicated for people who have troubles learning low-level languages. :P


Also @tr1p1ea, For xLIBC, I think there should be an extra option allowing you to use map data made of tiles from 0 to F instead of 00 to FF. The 16 tiles you would be able to use would either be defined in a list before launching the real command, a much slower string or if none is specified, then only tile 0 through 15 in tilepic 0 or 1 would be used. I'm thinking that a list would be better because TI-BASIC string storage (even in Ans) is very slow.
{tile1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16:real(3,0,X,Y,MAPWIDTH,MAPSTRING,XSTART,YSTART,XEND,YEND,UPDATELCD,TILEMODE

Axe Parser had ways to use such map data and it was much smaller in size. It could be handy for people who have simpler tilemap data who wants to save space.
  • 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

Duke "Tape" Eiyeron

Yeah, you mean using 4 bytes for each tile? YEah that could be feasible as even Axe Parser does have a function for dat "nibble{}"
  • Calculators owned: A lot.

Powered by EzPortal