Author Topic: Is it possible to run a TI-84+ OS on a TI-84+CSE?  (Read 18299 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Now active at https://codewalr.us
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55821
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #15 on: January 17, 2014, 11:25:40 am »
xLIBC is part of Doors CSE 8 along with Celtic 2 CSE. xLIBC/Celtic2CSE are both designed to enhance the capabilities of the TI-BASIC calculator programming language (basically, they let you do stuff that is normally impossible in TI-BASIC, without forcing you to learn Z80 assembly). However, it can be tricky to use and you really need to practice and read the doc on the DCS wiki. It requires you to have some will to learn how to program, though, because other people who also have limited free time are definitively not gonna want to do the job for you.
okay FINE. x.x
no emulate!  <_<
my original question was this:
can i run a ti84 os on a ti84 +c se directly? :hyper:

[can someone please scratch my back?!?!?]
That would require a modified OS updating all of the graphics of the OS. This is essentially what the CSE OSes are ;)
Added to that: Once you have a modded 84+ OS that works on the CSE, It will only be able to run BASIC programs correctly, and it will still run slower than the 84+ because it has to send more data to the screen. Assembly, axe, hybrid basic and probably also grammmar programs will still display garbage because they use their own routines to display stuff.
Actually it depends. If you make the calculator in 160x240 mode and only display stuff every two line without stretching anything horizontally, the speed drop might not be that bad. However, the very small display might be annoying and since the CSE LCD only supports 16-bit data, there would still be the issue about every pixel containing 16 times more data than their 83+/84+ counterpart.



Also, in addition to drawing pixels being 16 times slower, the emulator would need to emulate motion blur as well (for grayscale), adding even more strain on CPU resources. EDIT: Nvm, it seems to be three times slower, since there's no more LCD delay.

EDIT: Not sure how this ended up as double-post, but I guess I forgot I already replied to something else then clicked post instead of edit x.x. Fixed.
« Last Edit: January 18, 2014, 12:42:58 am by DJ Omnimaga »
In case you are wondering where I went, I left Omni back in 2015 to form CodeWalrus due to various reasons explained back then, but I stopped calc dev in 2016 and am now mostly active on the CW Discord server at https://discord.gg/cuZcfcF


Bandcamp|Reverbnation|Facebook|Youtube|Twitter

Offline Lunar Fire

  • LV3 Member (Next: 100)
  • ***
  • Posts: 66
  • Rating: +7/-1
  • I'll be watching you from the shadows
    • View Profile
    • My Tumblr
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #16 on: January 17, 2014, 12:01:38 pm »
Correct me if I'm wrong, but it seems that the bottleneck here is the serial communication interface with the LCD display, over which we have no control. If we want the CSE to run an OS that would be fully compatible with games from the TI-84+, we would need to replace the screen with another one.

In this regard, it would be impossible to install an OS on the CSE that would fully support the TI-84+ and all of its programs.
Your drill is the drill that will pierce the heavens!

Offline DJ Omnimaga

  • Now active at https://codewalr.us
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55821
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #17 on: January 17, 2014, 12:07:21 pm »
From what I remember, the bottleneck is really the LCD itself. The CPU is only capable of updating 4 LCDs worth of data every second because there's just too much data to update. Of course the LCD driver might be at cause too, but since the CPU is too slow for the large LCD itself to begin with, it barely makes a difference. On the older models, there is barely any data to send to the LCD so yes the slow LCD driver can make a noticeable difference. It's possible that the CSE has no LCD driver delay, though.

I think DrDnar once posted the t-states calculations showing the max possible frame rate on the CSE. Kerm's ball program also demonstrates how slow it can be by changing the entire LCD color before the ball animation starts.

EDIT: Ok I found it: http://ourl.ca/18368/338852

Quote from: DrDnar
More technically, the controller only accepts 16- or 18-bit color, meaning 2 to 3 writes per pixel. Outputting a single pixel takes at least 29 clock cycles (for filling the screen with a single color). By contrast, the old controller needed about 100 clock cycles per write, but each write could send 8 pixels, so each pixel only averaged 12 clock cycles. So it takes three times as long to write a single pixel (if you want actual graphics), and the screen has 12.5 times as many pixels. The old controller can accept 120 96x64 frames per second (but it only displays at 60 fps); the new one, displaying only a shrunken 96x64 subsection, can only manage 60 fps. So, the maximum frame rate for full-screen display is 7 fps (0.15 sec/frame), and that's only possible if you're filling the screen with a single color. In practice, 5-6 fps (about 0.2 s/f) is the best you can possibly get for full screen graphics.
« Last Edit: January 17, 2014, 12:15:09 pm by DJ Omnimaga »
In case you are wondering where I went, I left Omni back in 2015 to form CodeWalrus due to various reasons explained back then, but I stopped calc dev in 2016 and am now mostly active on the CW Discord server at https://discord.gg/cuZcfcF


Bandcamp|Reverbnation|Facebook|Youtube|Twitter

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4607
  • Rating: +716/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #18 on: January 17, 2014, 12:13:51 pm »
Well, yeah, but that's not what you asked. Literally, here are the differences:
-There is more Flash
-The LCD is changed
-The OS code was changed accordingly

Nothing else has changed. In fact, the LCD uses the same two ports as before. The processor didn't change, and the memory map didn't change, so you can definitely put any monochrome OS on the color calc. It would still read keys, work with flash, the USB and I/O port would work (you could still send stuff to it or get stuff off of it with TI-Connect or TILP). You could even send an assembly program that does work properly with the LCD.

But otherwise, yes, it would be impossible to use an unmodified monochrome OS and fully support monochrome programs or apps. They have to be manually ported.

Offline DJ Omnimaga

  • Now active at https://codewalr.us
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55821
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #19 on: January 17, 2014, 12:17:11 pm »
Actually, didn't some RAM/Flash memory areas like BCalls location move around a little bit too?
« Last Edit: January 17, 2014, 12:17:24 pm by DJ Omnimaga »
In case you are wondering where I went, I left Omni back in 2015 to form CodeWalrus due to various reasons explained back then, but I stopped calc dev in 2016 and am now mostly active on the CW Discord server at https://discord.gg/cuZcfcF


Bandcamp|Reverbnation|Facebook|Youtube|Twitter

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4607
  • Rating: +716/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #20 on: January 17, 2014, 12:18:14 pm »
Yeah, but those are all part of the OS.

Offline dreamdragon

  • LV3 Member (Next: 100)
  • ***
  • Posts: 71
  • Rating: +6/-19
  • Dragon born and Dragon raised.
    • View Profile
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #21 on: January 26, 2014, 06:15:05 pm »
From what I remember, the bottleneck is really the LCD itself. The CPU is only capable of updating 4 LCDs worth of data every second because there's just too much data to update. Of course the LCD driver might be at cause too, but since the CPU is too slow for the large LCD itself to begin with, it barely makes a difference. On the older models, there is barely any data to send to the LCD so yes the slow LCD driver can make a noticeable difference. It's possible that the CSE has no LCD driver delay, though.

I think DrDnar once posted the t-states calculations showing the max possible frame rate on the CSE. Kerm's ball program also demonstrates how slow it can be by changing the entire LCD color before the ball animation starts.

EDIT: Ok I found it: http://ourl.ca/18368/338852

Quote from: DrDnar
More technically, the controller only accepts 16- or 18-bit color, meaning 2 to 3 writes per pixel. Outputting a single pixel takes at least 29 clock cycles (for filling the screen with a single color). By contrast, the old controller needed about 100 clock cycles per write, but each write could send 8 pixels, so each pixel only averaged 12 clock cycles. So it takes three times as long to write a single pixel (if you want actual graphics), and the screen has 12.5 times as many pixels. The old controller can accept 120 96x64 frames per second (but it only displays at 60 fps); the new one, displaying only a shrunken 96x64 subsection, can only manage 60 fps. So, the maximum frame rate for full-screen display is 7 fps (0.15 sec/frame), and that's only possible if you're filling the screen with a single color. In practice, 5-6 fps (about 0.2 s/f) is the best you can possibly get for full screen graphics.

woah woah.
why would they put a slow cpu to run a bigger screen?

Offline ordelore

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 168
  • Rating: +7/-0
  • Genius and Friend
    • View Profile
    • ordelore8x
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #22 on: January 26, 2014, 06:51:59 pm »
Because TI-CARESTM.
Anyway, as anyone who has seen a TI calculator at full retail price can attest to, TI wants to squeeze as much of our money as they can while also increasing their own profits. Look at the TI-84+, it used to come with extra Flash but then TI cut it to save ~$0.05. Still confused?
[xkcd=768]Explained[/xkcd]
I am a friend.
I mine Bitcoins.

Offline DJ Omnimaga

  • Now active at https://codewalr.us
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55821
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #23 on: January 26, 2014, 07:07:19 pm »
Because TI-CARESTM.

They care?? O.O

From what I remember, the bottleneck is really the LCD itself. The CPU is only capable of updating 4 LCDs worth of data every second because there's just too much data to update. Of course the LCD driver might be at cause too, but since the CPU is too slow for the large LCD itself to begin with, it barely makes a difference. On the older models, there is barely any data to send to the LCD so yes the slow LCD driver can make a noticeable difference. It's possible that the CSE has no LCD driver delay, though.

I think DrDnar once posted the t-states calculations showing the max possible frame rate on the CSE. Kerm's ball program also demonstrates how slow it can be by changing the entire LCD color before the ball animation starts.

EDIT: Ok I found it: http://ourl.ca/18368/338852

Quote from: DrDnar
More technically, the controller only accepts 16- or 18-bit color, meaning 2 to 3 writes per pixel. Outputting a single pixel takes at least 29 clock cycles (for filling the screen with a single color). By contrast, the old controller needed about 100 clock cycles per write, but each write could send 8 pixels, so each pixel only averaged 12 clock cycles. So it takes three times as long to write a single pixel (if you want actual graphics), and the screen has 12.5 times as many pixels. The old controller can accept 120 96x64 frames per second (but it only displays at 60 fps); the new one, displaying only a shrunken 96x64 subsection, can only manage 60 fps. So, the maximum frame rate for full-screen display is 7 fps (0.15 sec/frame), and that's only possible if you're filling the screen with a single color. In practice, 5-6 fps (about 0.2 s/f) is the best you can possibly get for full screen graphics.

woah woah.
why would they put a slow cpu to run a bigger screen?

The color screen was added as a gimmick to attract customers. Today, most kids are attracted by color screens, not monochrome screens that are hard to read. However, they decided to stick with the same hardware because they're greedy enough to save $0.05, as ordelore says.

If they replaced the Z80 CPU with an EZ80, I bet they would use this as an excuse to increase the price by $30-40. Just remember how the TI-83+SE costed $30-40 higher than the 83+ even though it only had an extra 1.3 MB of archive and a twice faster CPU.


Because TI-CARESTM.
Anyway, as anyone who has seen a TI calculator at full retail price can attest to, TI wants to squeeze as much of our money as they can while also increasing their own profits. Look at the TI-84+, it used to come with extra Flash but then TI cut it to save ~$0.05. Still confused?
[xkcd=768]Explained[/xkcd]
Actually, it's RAM that was cut down (from 128 KB to 48). Flash remained intact. However, in the color model, RAM went back to 128 KB (for now).
« Last Edit: January 26, 2014, 07:08:57 pm by DJ Omnimaga »
In case you are wondering where I went, I left Omni back in 2015 to form CodeWalrus due to various reasons explained back then, but I stopped calc dev in 2016 and am now mostly active on the CW Discord server at https://discord.gg/cuZcfcF


Bandcamp|Reverbnation|Facebook|Youtube|Twitter

Offline fb39ca4

  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1749
  • Rating: +60/-3
    • View Profile
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #24 on: January 26, 2014, 07:55:41 pm »
I wouldn't call it greedy so much as doing business. They know the customer is willing to pay these prices for outdated hardware because of their near-monopoly in schools, so they can get away with it. Yes, the cost of production might not be much higher to add more flash memory, but like any sensible business, they set their prices to make the most profit. We will only see change if there is more significant competition from other companies.

Offline jmd514

  • LV1 Newcomer (Next: 20)
  • *
  • Posts: 6
  • Rating: +0/-0
    • View Profile
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #25 on: May 18, 2014, 11:04:36 am »
Is it possible to run TI-84 CSE on the Nspire?

Offline ben_g

  • Hey cool I can set a custom title now :)
  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1002
  • Rating: +125/-4
  • Asm noob
    • View Profile
    • Our programmer's team: GameCommandoSquad
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #26 on: May 18, 2014, 11:13:47 am »
I don't think that is currently possible. However, the nspire's hardware should be powerfull enough. There is already a z80 emulator for the nspire (for the monochrome models). Adding the bigger flash should be easy as the nspire has plenty of memory. Adding support for the screen would probably be a bit harder, but it should still be possible.
My projects
 - The Lost Survivors (Unreal Engine) ACTIVE [GameCommandoSquad main project]
 - Oxo, with single-calc multiplayer and AI (axe) RELEASED (screenshot) (topic)
 - An android version of oxo (java)  ACTIVE
 - A 3D collision detection library (axe) RELEASED! (topic)(screenshot)(more recent screenshot)(screenshot of it being used in a tilemapper)
Spoiler For inactive:
- A first person shooter with a polygon-based 3d engine. (z80, will probably be recoded in axe using GLib) ON HOLD (screenshot)
 - A java MORPG. (pc) DEEP COMA(read more)(screenshot)
 - a minecraft game in axe DEAD (source code available)
 - a 3D racing game (axe) ON HOLD (outdated screenshot of asm version)

This signature was last updated on 20/04/2015 and may be outdated

Offline Streetwalrus

  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3820
  • Rating: +80/-8
    • View Profile
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #27 on: May 18, 2014, 11:21:41 am »
Yeah the screen will most likely need to be implemented via HLE for speed. The Nspire is able to emulate the ASIC accurately enough at full speed though.
send it

Offline superloach

  • LV1 Newcomer (Next: 20)
  • *
  • Posts: 8
  • Rating: +0/-0
  • I do lots of things.
    • View Profile
    • Superloa.ch
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #28 on: August 14, 2017, 08:35:54 pm »
I know this topic is SO old, but do you think anyone could assist pulling together a TI 83+ emu for nspire?

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6167
  • Rating: +318/-36
  • C'est la vie
    • View Profile
    • Eeems
Re: Is it possible to run a TI-84+ OS on a TI-84+CSE?
« Reply #29 on: August 15, 2017, 12:27:34 pm »
I know this topic is SO old, but do you think anyone could assist pulling together a TI 83+ emu for nspire?
Sounds like you should start your own topic instead of using this one.
/e