Author Topic: On-calc Nspire emulators  (Read 30310 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: On-calc Nspire emulators
« Reply #75 on: June 11, 2013, 03:56:47 am »
Wait, is it a typo? Earlier, I misread 128 bytes as 128K bytes. If it's 128 bytes, then now I see why Atari 2600 graphics often looked like this O.O



That's a Zelda hack, btw
http://atariage.com/hack_page.html?SystemID=5200&SoftwareHackID=139
« Last Edit: June 11, 2013, 03:57:08 am by DJ Omnimaga »

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: On-calc Nspire emulators
« Reply #76 on: June 11, 2013, 03:18:36 pm »
128 BYTES. Not KB. Not MB. Bytes.

Those 128 bytes of RAM were used for two things: Self-modifying code, and data storage. For example, Pitfall uses 2 bytes for the score, 2 bytes for the time, 2 bytes for the lives (2 lives, but it's faster than using an AND) ONE byte for the current area, etc.

However, they had a far more manageable 4 KB of ROM, so there was plenty of room for routines.

They had no framebuffer. The screen was drawn by hardcoded routines, with specific hardware support for certain registers.

There were 5 special display registers.

2 "Player" registers which were 8 bit, and would be automatically displayed at a certain portion of the scanline. (You chose location, color and graphics before the line drew)
2 "Missile" registers which were 1 bit. (Think 1-pixel bullets) also with configurable colors per-line.
1 "Ball" register. Effectively a missile register, but with more features. Player and Ball registers could be reflected or repeated in certain locations. Missiles could not. Balls could also be stretched in two directions so as to be on more scanlines without the effort of drawing them there.

Other than those, there were 40 playfield blocks, at 1/4 the resolution of the rest of the screen. These all had the same color, unless you changed it between each scanline, and when redrawing one, you had to redraw all of them. The purple and grey blocks on that image are playfield blocks.

If you want more info on this stuff watch this video. Very informative.



So, a quick explanation of EVERY graphic on that screenshot.

The background color is being changed every few scanlines, thus the shift from lighter to darker browns.

The Purple and grey blocks are Playfield blocks, with the playfield color changing occasionally.

The player, key, and little box thing are all drawn using the player registers. Between each scanline, the graphics are changed, and between each sprite, so are the colors. You will never see more than 2 unique 8*x sprites on any line, but space invaders for the atari shows how you can get multiple duplicated sprites.

The black lines at the edge are actually a bad thing. It means their routines took too long, and they missed part of the scanline.
« Last Edit: June 11, 2013, 03:22:35 pm by willrandship »

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: On-calc Nspire emulators
« Reply #77 on: June 11, 2013, 05:16:41 pm »
Darn that is crazy O.o

I did skim through an explanation of how graphics are done on AtariAge, but didn't have time to study it all.

One thing for sure, if a game like "Legand of Zelda: Sord of Atari" was ever made for the actual Atari 2600 console, there would most likely be little or no text. Not to mention I bet the game wouldn't be as long (although since dungeons are re-used over and over, but with different colors, maybe it could be possible).

Thanks for the explanation by the way.

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: On-calc Nspire emulators
« Reply #78 on: June 11, 2013, 07:57:41 pm »
No problem.

My favorite part about the pitfall video I linked: 256 bytes of level data stored in a 50 byte algorithm. He calls it a reversible polynomial counter. Basically, he can increment or decrement it and it becomes an apparently nonrelated number.

Best part: Since the counter only needs to store a byte in RAM at a time, the whole routine is in the 4 KB of ROM.

Offline Dapianokid

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 539
  • Rating: +46/-27
  • That one dude
    • View Profile
Re: On-calc Nspire emulators
« Reply #79 on: June 12, 2013, 05:24:55 pm »
I do like that algorithm. Crazy math geniuses.
The Atari was practically a joke played on developers. They could've done so much better back then.
Keep trying.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: On-calc Nspire emulators
« Reply #80 on: June 13, 2013, 11:45:06 pm »
I guess maybe they just didn't know how to do it right, but somehow knew it would work in that state and coders would just deal with it. I'M glad better stuff came out afterward, though.

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: On-calc Nspire emulators
« Reply #81 on: June 14, 2013, 02:26:06 pm »
The Atari 2600 hardware was mainly made to be cheap, and yet just good enough to run a few simple games. Compared to the NES, it was quite pathetic, but it was also much cheaper to manufacture.

Offline Augs

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 306
  • Rating: +30/-29
    • View Profile
Re: On-calc Nspire emulators
« Reply #82 on: June 14, 2013, 04:50:09 pm »
So, TheNlightenedOne, have you started to make something or are you planning to start?

Offline TheNlightenedOne

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 427
  • Rating: +16/-1
    • View Profile
Re: Re: On-calc Nspire emulators
« Reply #83 on: June 14, 2013, 05:21:48 pm »
Augs, I started but I now have MUCH larger projects, so I dropped it
"Eris" (Ndless 3.1)
"Keto" (Ndless 3.1)
"Luna" (AMS 3.10, HW4)
"Aurora" (2.55MP)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: On-calc Nspire emulators
« Reply #84 on: June 18, 2013, 01:59:29 am »
What are your projects? Are they calc-related too?

Btw we might have to live with the possibility that there will never ever be any other emulator released for the Nspire. Such project takes so much work. That's why since 1990 there have been only like 10 completed calculator RPGs that are not written in TI-BASIC or Axe and why there are only two people who ever released console emulators on the Nspire. To even stand a chance at having a SNES/Sega Genesis emu for the Nspire in the next decade, Omnimaga would need at least 1000 registered users logged in at once on a regular basis and 20K posts a day, then we could hopefully find one person in the member list who is interested and dedicated enough.
« Last Edit: June 18, 2013, 02:04:47 am by DJ Omnimaga »

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: On-calc Nspire emulators
« Reply #85 on: June 18, 2013, 02:32:52 am »
Well, now that Ndless officially supports C++ I think it is more likely. That gives a broader range of pre-existing emulators that can be ported as well. ;)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: On-calc Nspire emulators
« Reply #86 on: June 18, 2013, 02:45:23 pm »
True, but it seems that even then very few people seem to want to take on such task. D: The few who do usually cancel the project before a single line of code is written.

Offline Dapianokid

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 539
  • Rating: +46/-27
  • That one dude
    • View Profile
Re: On-calc Nspire emulators
« Reply #87 on: June 18, 2013, 05:09:50 pm »
I'll have you know, DJ_O, I wrote 7 lines of code when porting Genesis. That's 7 more than 0! That's infinitely more code than you give me credit for :P
The projects are overwhelming to tackle is the problem. Perhaps somebody could set up a "developer team" of Omnimagicians. :)
Keep trying.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: On-calc Nspire emulators
« Reply #88 on: June 18, 2013, 05:13:41 pm »
Oh lol ok then, 7 lines of code. :P But yeah people get the idea. And a developer team would still require good management. Most team projects tend to die more often than solo projects unless incredibly massive (by massive I mean commercial Playstation 3 games, for example).
« Last Edit: June 18, 2013, 05:14:16 pm by DJ Omnimaga »

Offline njaddison

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 176
  • Rating: +24/-27
    • View Profile
Re: On-calc Nspire emulators
« Reply #89 on: September 15, 2013, 03:18:01 pm »
Is this topic only for game system emulators? I voted for SNES, but it would be cool to have a TI-84 Plus SE emulator for the nspire grayscale and nspire CX, and maybe even a TI-84 CSE Emulator for the CX. But, since the CSE just came out a little while ago, I doubt any emulators have been made yet (Except the TI one that comes with most TI-calcs).
<a href="http://www.nerdtests.com/ft_nt2.php">
<img src="http://www.nerdtests.com/images/badge/nt2/5f42ec78e054645d.png" alt="NerdTests.com says I'm a Highly Dorky Nerd God.  Click here to take the Nerd Test, get geeky images and jokes, and talk to others on the nerd forum!">
</a>