Author Topic: TI-84 Plus C: new photos reveal more than 3MB archive space  (Read 27621 times)

0 Members and 1 Guest are viewing this topic.

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #30 on: November 16, 2012, 01:25:28 pm »
If it maintains the same speed having only a z80 we are extremely lucky.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #31 on: November 16, 2012, 05:56:55 pm »
If the screen driver is much better than the older calcs ones, then the speed loss might not be signifiant. However if the screen driver sucks, then some BASIC game types, along with ASM raycasters, might be in deep trouble.
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #32 on: November 16, 2012, 10:17:47 pm »
Even if the display is as fast as possible, the Z80 will be a bottleneck.  Assuming the screen is 8 bits per pixel (a 256-color palette) and assuming a 20 MHz clock rate, the fastest possible drawing algorithms would be on the order of one pixel per microsecond (except, perhaps, to fill the screen with a solid color or pattern.)  If you're redrawing the entire screen for every frame, one pixel per microsecond translates to about 13 FPS (and remember, that's if the CPU is doing nothing else.)

Programmers will need to be very clever in order to get decent performance from this thing.  That said, the programmers in this community are pretty clever. :D

(Just had a fun thought that contradicts what I said above: executable sprites.  If you're willing to reduce your palette to 3 colors at full resolution, or 10 colors at half resolution, you could encode your sprites as Z80 machine code and draw about 1 pixel for every ~6-8 clock cycles.  So, like I said, clever hacks.)

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #33 on: November 16, 2012, 10:27:08 pm »
(Just had a fun thought that contradicts what I said above: executable sprites.  If you're willing to reduce your palette to 3 colors at full resolution, or 10 colors at half resolution, you could encode your sprites as Z80 machine code and draw about 1 pixel for every ~6-8 clock cycles.  So, like I said, clever hacks.)
I don't quite understand what you mean by this. First of all, how do you port output in 6-8 clock cycles, and secondly, why the 3/10 color limit (and what is "half resolution"?)
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #34 on: November 16, 2012, 10:27:15 pm »
If there are no wait states, OTIR becomes a possibility. Of course, only if we can scrape together enough RAM for that to be useful.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #35 on: November 16, 2012, 10:28:15 pm »
If there are no wait states, OTIR becomes a possibility. Of course, only if we can scrape together enough RAM for that to be useful.
Even better, unrolled OUTI. OTIR is 21 cycles per byte, OUTI is 16 cycles per byte.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #36 on: November 16, 2012, 10:28:56 pm »
Hmm, that could be very useful in sprite routines.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #37 on: November 16, 2012, 10:34:27 pm »
I was assuming it was memory-mapped (that was part of my assumption that "the display is as fast as possible.")  If everything has to be done with Z80 I/O instructions like on the older calcs, performance is obviously going to be atrocious.

To elaborate on the idea of "executable sprites" I mentioned, a sprite would be written as a series of PUSH instructions; you would load the desired pixel colors into registers before "calling" the sprite.  There are ten 16-bit registers that can be used this way (although actually, you'd probably want to reserve one or two to use for moving from one row to the next), and each push instruction takes 11 or 15 clock cycles and outputs two bytes.  Of course, you can get more creative if you want to use more colors at the expense of speed.
« Last Edit: November 16, 2012, 10:42:43 pm by FloppusMaximus »

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #38 on: November 16, 2012, 10:43:38 pm »
FloppusMaximus is quite the optimist.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #39 on: November 16, 2012, 10:46:10 pm »
Well, I think that if it is memory-mapped, handling page mapping and boundaries will be atrocious (as well as pointer calculation). If you can set the X and Y position directly with the driver and use auto-increment, it may not be too awful. You could still encode sprites as sequences of instructions, too, with a bunch of out (c),reg instructions (which would allow 7 colors), and assuming that inputting will also increment, you could implement transparent pixels as an in (c) instruction.

Edit: With out (c),0, you could actually have 8 colors.
« Last Edit: November 16, 2012, 10:47:17 pm by calc84maniac »
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #40 on: November 16, 2012, 10:47:12 pm »
I'm sure TI had the same thoughts and decided not to use a memory-mapped solution, because who cares if it flickers whenever the screen is updated? Besides, it's a real snub to those awful game coders.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #41 on: November 16, 2012, 11:03:00 pm »
True. :P

I did notice that in the photos we've seen, the graph screen appears to be 256 pixels wide - that would be convenient if it could be mapped to a memory buffer with 256 bytes per row.  But if that were the case, where would the left and right "margins" be stored?  Perhaps it's just that the OS has a graph buffer that is a convenient size for drawing, and it adds padding when copying that image to the actual framebuffer.

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #42 on: November 17, 2012, 03:00:26 am »
We've counted the pixels in this photo and it appears that the graph size is 265x165 pixels (which goes along with TI tradition of having an odd number of pixels for symmetry reasons).

I feel like the LCD driver probably has its own internal RAM and you output to that somehow (once the borders are initialized you never need to worry about them again)
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline aeTIos

  • Nonbinary computing specialist
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3915
  • Rating: +184/-32
    • View Profile
    • wank.party
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #43 on: November 17, 2012, 03:54:38 am »
Would that be good or bad? (I feel like it's good but not sure...)
eg, when you have to send an "update" command it's fine, but not when it updates automagically (knowing TI, it will do that D:)
« Last Edit: November 17, 2012, 03:55:18 am by aeTIos »
I'm not a nerd but I pretend:

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: TI-84 Plus C: new photos reveal more than 3MB archive space
« Reply #44 on: November 17, 2012, 05:11:20 am »
if this unti has it's own "video ram" for displaying pictures that would be excellent. We wouldn't have to worry about putting them in user ram. It seems that would make the most sense.