Author Topic: Looking for grayscale packages  (Read 14038 times)

0 Members and 1 Guest are viewing this topic.

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Looking for grayscale packages
« Reply #15 on: June 02, 2009, 09:00:36 am »
ok, you're welcome, even though all i did was give you a link... can someboy write an xlib source code for 3level grayscale, 62x94, pics 1 through 3? its for a flag that is red white blue and black (white as level 0, all pics, red as level 1, pic 3, blue as level 2, pic 2 and 3, black as level 3, all pics)
There is a tutorial like that.
See ti-freakware.

Iambian, if you are interest I have a bunch of related links like that.
Hobbing in calculator projects.

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: Looking for grayscale packages
« Reply #16 on: June 02, 2009, 12:55:04 pm »
Well assuming you mean the guide to TI-83+SE BASIC grayscale, the issue is that this tutorial is for Omnicalc (and now Celtic III, as Celtic does Omnicalc Sprite( command) and the way it does it is pretty much slower than if we used xLIB Real(3 function. But back then xLIB APP didn't even existed at all (if you download the tutorial from Omnimaga, you will notice it even uses a 8xp version of xLIB)
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Looking for grayscale packages
« Reply #17 on: June 02, 2009, 03:56:55 pm »
Well assuming you mean the guide to TI-83+SE BASIC grayscale, the issue is that this tutorial is for Omnicalc (and now Celtic III, as Celtic does Omnicalc Sprite( command) and the way it does it is pretty much slower than if we used xLIB Real(3 function. But back then xLIB APP didn't even existed at all (if you download the tutorial from Omnimaga, you will notice it even uses a 8xp version of xLIB)
http://tifreakware.net/tutorials/83p/b/cdi/l3.htm
Grayscale using xLib
And it has the real( thing intercept... I think it is the app version...
Hobbing in calculator projects.

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: Looking for grayscale packages
« Reply #18 on: June 02, 2009, 04:25:19 pm »
Oh that one, I thought you meant mine from 2004. Actually despite having it in our archives, I think I will repost it directly on forums at one point
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline skuller972

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 335
  • Rating: +11/-4
  • BEAST MODE
    • View Profile
Re: Looking for grayscale packages
« Reply #19 on: June 02, 2009, 05:58:30 pm »
thanks guys! im making the american flag, which is hard to combat, seeing as the canadian flag is two colors!! muahahaha!! lol... :p i dont care, i just made it cuz it seemed cool, not to combat any canadians

EDIT: uh... this tutorial is for 255 pics, and i really am not comfortable with 255 pics, so can somebody link me a new tutorial, or just write a source? i got pic 1 2 and 3 all set up, like the tutorial said, but i dont like using their source... its a great tutorial though!
« Last Edit: June 02, 2009, 06:23:51 pm by skuller972 »
Then again, maybe not...
<a href="http://www.nerdtests.com/ft_nt2.php">
<img src="http://www.nerdtests.com/images/badge/nt2/bc7bf8e12353f09e.png" alt="NerdTests.com says I'm a Cool Non-Nerd.  Click here to take the Nerd Test, get nerdy images and jokes, and talk to others on the nerd forum!">
</a>

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: Looking for grayscale packages
« Reply #20 on: June 02, 2009, 07:43:03 pm »
Information is already down, and I'm done with what I needed. From the stuff found on this site (linked to by a much earlier post) http://www.junemann.nl/maxcoderz/viewtopic.php?f=5&t=2692
 , I've built a custom 4lv grayscale routine. It actually works out *very* well, on both the emulator and the hardware.

Unfortunately, there was some kind of bug that screwed up the OS in a very subtle way. The kind of problem that I'm at the moment trying to solve via OS reinstallation.
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline skuller972

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 335
  • Rating: +11/-4
  • BEAST MODE
    • View Profile
Re: Looking for grayscale packages
« Reply #21 on: June 02, 2009, 07:46:27 pm »
i am not that good at asm to do that, as in a previous post, i said that all i could do was .db and bcalls
Then again, maybe not...
<a href="http://www.nerdtests.com/ft_nt2.php">
<img src="http://www.nerdtests.com/images/badge/nt2/bc7bf8e12353f09e.png" alt="NerdTests.com says I'm a Cool Non-Nerd.  Click here to take the Nerd Test, get nerdy images and jokes, and talk to others on the nerd forum!">
</a>

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: Looking for grayscale packages
« Reply #22 on: June 02, 2009, 08:15:42 pm »
Information is already down, and I'm done with what I needed. From the stuff found on this site (linked to by a much earlier post) http://www.junemann.nl/maxcoderz/viewtopic.php?f=5&t=2692
 , I've built a custom 4lv grayscale routine. It actually works out *very* well, on both the emulator and the hardware.

Unfortunately, there was some kind of bug that screwed up the OS in a very subtle way. The kind of problem that I'm at the moment trying to solve via OS reinstallation.
ouch I do hope a OS reinstall fixes it x.x
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Looking for grayscale packages
« Reply #23 on: June 04, 2009, 05:06:27 pm »
I didn't resist to ask. Iambian did you use interlacing in the routine?

If one day I get very high, I will try to do a 8lvl gray interlace routine :o Discovering a better rearrange of the logic to buffers to a more z80 efficient way would be fun. Figuring that out is only the easy part. :P
Also I need to understand one thing. GGP has the active buffer and the other where you plot things. (actually RGP mimics that but the libs available aren't meant to be the real release) Wouldn't just using the active buffers do the same job?

Well for this question, I should go to revsoft, maxcoderz or UnitedTI... But I am also curious to know how your routines will come out.

And I hope too that the OS reinstall works.
« Last Edit: June 05, 2009, 02:28:03 pm by Galandros »
Hobbing in calculator projects.

Offline SolusIpse

  • LV2 Member (Next: 40)
  • **
  • Posts: 35
  • Rating: +1/-0
    • View Profile
Re: Looking for grayscale packages
« Reply #24 on: June 04, 2009, 08:35:28 pm »
it's for double buffering, which offers advantages like artifact reduction and being "smoother"  Keep in mind the active buffers MUST be together.  when the app was originally written, it was realized that 768x2 and some extra bytes were needed straight out of RAM.  RGP is good enough for almost anything you'd normally write.  heck, with a little ingenuity, you can make a game that's looks good and has a lot of action.  but for things like SSB, it's reasonable that tr1p1ea made his own (other than the fact he's a genius). 

I suggest you keep the double buffering unless you really want to allocate plotsscreen and appbackupscreen for other variables. 

blame the LCD controller on all calcs except 86s for not being able to do good gs.  memory mapping would eliminated the port communication that makes gs such a drag.

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: Looking for grayscale packages
« Reply #25 on: June 04, 2009, 10:41:21 pm »
Doesn't the TI-85, TI-92 and the old TI-89s and 92s also does good grayscale? I do remember some quite nice looking grayscale games on my TI-85, altough it seemed a bit slow.

the LCD on lower number models calcs is a serious issue, though. Even BASIC programmers using libraries to do grayscale has trouble keeping the grayscale from showing a checkered pattern (3 level) because the checkered pattern areas are either inverted too quickly or too slow. A long while ago I had an xLIB routine doing 3 level grayscale and it looked better on my regular TI-83+ than my TI-83+SE.
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Looking for grayscale packages
« Reply #26 on: June 05, 2009, 02:33:28 pm »
Doesn't the TI-85, TI-92 and the old TI-89s and 92s also does good grayscale? I do remember some quite nice looking grayscale games on my TI-85, altough it seemed a bit slow.

the LCD on lower number models calcs is a serious issue, though. Even BASIC programmers using libraries to do grayscale has trouble keeping the grayscale from showing a checkered pattern (3 level) because the checkered pattern areas are either inverted too quickly or too slow. A long while ago I had an xLIB routine doing 3 level grayscale and it looked better on my regular TI-83+ than my TI-83+SE.
BASIC doesn't help much for reducing the check effect... It is hard to update the screen enough and in the right timing.
Nor the lcd that really sucks.
« Last Edit: June 05, 2009, 02:36:46 pm by Galandros »
Hobbing in calculator projects.

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: Looking for grayscale packages
« Reply #27 on: June 05, 2009, 05:40:05 pm »
True. You got to add basic commands to slow it down a bit or put less grayscale commands, but sometimes it's still crappy quality cuz the grayscale scanlines won't move at a constant speed
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: Looking for grayscale packages
« Reply #28 on: June 05, 2009, 11:27:11 pm »
I didn't resist to ask. Iambian did you use interlacing in the routine?
[...]
And I hope too that the OS reinstall works.
When you say "interlacing", are you referring to the method that the information is written to the screen or the form the data takes in the buffer? If you are talking about how it's drawn on the screen, yah. That's where the "wavy" effect comes from.

The issue about the OS was resolved. Apparently, doing a "RAM Reset" doesn't do something important to the flag, which was being screwed up. Specifically, IY wasn't being set back to the correct value. In PTI, the RAM reset resolves the issue, so I'm guessing it either might be how the real calc initializes, or that the newer TI-OSes are being made crappier and crappier.

On something similar, the RAM usage reflects that of CaDan, in which the RAM is rearranged such that the strip of RAM between $8000 and $8E00 is free for scratch work. This method works incredibly well for grayscale, since I can flip a bit to refer to the other buffer (with a 256 byte gap in between since the bit flip occurs as 1024 chunks). I do plan on interleaving the data so I can go with a straight 1536 byte buffer so I can completely avoid having to switch buffers. I have the option now of going ahead to vertically align the buffer, which would make tilemapping much easier to speed up.

To avoid mentioned "artifacts", all the tilemapping updates are going to be done in the interrupt between gray drawing cycles. Sure, it *might* be a little slow, but I believe this will work out wonderfully. Since the game's text and menus occur on a grid divisible by 4, that, too, will be handled by an "aligned" 4x4 tilemapper. The timings have already been worked out for that, and I expect it to work great.

EDIT: Just realized that I forgot which thread I was posting in. Since I'm not going to move it, I'll just link to where it was supposed to go: http://ourl.ca/3383/62977
« Last Edit: June 05, 2009, 11:31:21 pm by Iambian »
A Cherry-Flavored Iambian draws near... what do you do? ...